Add symlink that points to the latest codemodule version

Description
Jira
With this a symlink is added at the location: /data/<tenantUUID>/<dk>/latest-codemule that points to the codemodule directory (/data/codemodules/<base64encodedImage>) in the provisioner container.
It is maintained in a way that the symlink is always removed and immediatly after created again if:

agent is being newly installed
csi driver pod starts but agent is already installed from previous runs

This is done in order to update the codemodule directory and with that also the symlink and to avoid errors because of a mismatch between symlink and codemodule dir (happened to me! I updated the codeModulesImage -> the directory got "updated" accordingly, but the symlink still pointed to the old directory).
I added no unit tests as I do not think the things I introduced are properly unit testable, the other method in symlink.go is also not unit tested and installAgent also isn't.

How can this be tested?
Deploy operator with codeModulesImage set.
shell into the provisioner container and run:
bash-5.1# ls -lR /data | grep '^l'
The result should contain this line which indicates that there is a symlink from latest-codemodule to the dir:
lrwxrwxrwx 1 root root  114 Oct 16 11:26 latest-codemodule -> /data/codemodules/cHVibGljLmVjci5hd3MvZHluYXRyYWNlL2R5bmF0cmFjZS1jb2RlbW9kdWxlczoxLjMwMS40OC4yMDI0MTAwNy0xMDMzMzY=
Update the codeModulesImage and when the agent is installed run the command again. The symlink should be updated accordingly.
You can also cd into latest-codemodule and look if the linking works. You should see the same directory as under the codemodules directory. You can move into the /agent/bin/ dir and check the version there.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 48.14815% with 14 lines in your changes missing coverage. Please review.

Project coverage is 64.39%. Comparing base (9c4d4f5) to head (9d36d9a).

Files with missing lines
Patch %
Lines

.../injection/codemodule/installer/symlink/symlink.go
41.17%
9 Missing and 1 partial :warning:

pkg/controllers/csi/provisioner/install.go
60.00%
2 Missing and 2 partials :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3940      +/-   ##
==========================================
- Coverage   64.42%   64.39%   -0.03%
==========================================
  Files         381      381
  Lines       20616    20640      +24
==========================================
+ Hits        13281    13291      +10
- Misses       6044     6055      +11
- Partials     1291     1294       +3

Flag
Coverage Δ

unittests
64.39% <48.14%> (-0.03%)
:arrow_down:

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

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


Channel connect with tls with IP address will failed with InvalidDNSNameError

Bug Report

Version 0.1.1

└── tonic v0.1.1

Platform
Linux SherlockHolo 5.5.7-arch1-1 #1 SMP PREEMPT Sat, 29 Feb 2020 19:06:02 +0000 x86_64 GNU/Linux

Description

my dependencies is
http = "0.2"
tonic = { version = "0.1", features = ["transport", "tls"] }
tokio = { version = "0.2", features = ["rt-core", "macros", "sync", "time", "rt-util", "fs"] }

I try
use std::str::FromStr;
use std::time::Duration;

use http::Uri;
use tokio::fs;
use tonic::transport::{Certificate, Channel, ClientTlsConfig, Identity};

#[tokio::main]
async fn main() {
    let uri = Uri::from_str("https://<IP_ADDRESS>:9876").unwrap();

    let ca = fs::read("ca.pem").await.unwrap();

    let ca = Certificate::from_pem(ca);

    let key = fs::read("key.pem").await.unwrap();
    let cert = fs::read("cert.pem").await.unwrap();

    let identity = Identity::from_pem(cert, key);

    let tls_config = ClientTlsConfig::new()
        .ca_certificate(ca)
        .identity(identity);

    let channel = Channel::builder(uri)
        .tls_config(tls_config)
        .tcp_keepalive(Some(Duration::from_secs(5)))
        .connect()
        .await.unwrap();
}

and use nc -l <IP_ADDRESS> 9876 to listen, it should connect success and nc will print something aboult tls handshake, but it failed with thread 'main' panicked at 'called Result::unwrap()on anErr value: tonic::transport::Error(Transport, hyper::Error(Connect, InvalidDNSNameError))', src/libcore/result.rs:1188:5.
If I use https://localhost:9876 it connects successfully and nc print something about tls handshake messages. It should not happen.

This is a limitation with rustls https://github.com/ctz/hyper-rustls/issues/84
If this is a problem then I suggest switching to openssl via using hyper manually.

so if I want to do this maybe I can replace channel with my implement？or perhaps just use my connector？

@Sherlock-Holo correct I would try to use https://docs.rs/hyper-openssl/0.8.0/hyper_openssl/ with https://github.com/hyperium/tonic/tree/master/examples/src/hyper_warp example which shows how to use hyper directly :) Feel free to join the discord if you have any questions.


Sid tryout create org in gray theme

Added Landing page for Organization
Create and Get Organization from API
Delete Organization by entering org id

TODO Update organization

Yes Michael I will pick up update next.
On Sun, 23 Jun, 2024, 05:00 Michael Gokey, @.***> wrote:

Merged #8
https://github.com/michael-gokey-architect/connections.biotool.me/pull/8
into main.
—
Reply to this email directly, view it on GitHub
https://github.com/michael-gokey-architect/connections.biotool.me/pull/8#event-13252041180,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AO5YFLI4TPWEVQQYIJX5NLTZIYCLDAVCNFSM6AAAAABJWWC77SVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJTGI2TEMBUGEYTQMA
.
You are receiving this because you were mentioned.Message ID:
<michael-gokey-architect/connections.biotool.
@.***>


Add test to validate runtime/compiletime interfaces

A simple test to validate that the runtime variables actually match up with the compile time interfaces.

I've been playing around with this idea... and i think it might make more sense to seperate the interfaces from the run-time variables, or rename the vars accordingly. Reason being we can't import both, and to make tests for them makes it quite difficult..

why are there 3 of us assigned to this?

I can take this if yall want.
Unfortunately, a real solution is a little hairy, but I'm prototyping something now.
Typescript doesn't exist at runtime, so unless we want to separately write a test for each type by hand (we don't), you can't just do something like:
// file 1
export interface a {}

export interface a {}

@ansermino No idea how/why i did that.

I was playing around with this @wemeetagain https://stackoverflow.com/questions/14425568/interface-type-check-with-typescript


Feature request: Rotate icon

Allow user to manually rotate an image by adding and tapping an icon which provides that feature. Every time the user keeps tapping on that rotate icon, the image should rotate another 90 degrees (per click/tap)
Thanks
Good luck!

no one is working on this project

Sadly no 👎


Scala3

Goodbye Scala 2.12, welcome Scala 3

@amir @barambani can you take a look at this? I'd like to merge this in first and then rebase the codec improvements one on this.


feat: introduce queue ✨

Description
This PR introduces the queue feature

Each symbol has its own queue
Fix #463
Fix order update from WebSocket by checking orderId

Related Issue
#451
#463
Motivation and Context
After moving to WebSocket we encounter some small issues regarding the trailingTrade execution, we start thinking about using a queue to improve the bot #448
How Has This Been Tested?
Screenshots (if appropriate):

@chrisleekr
It would be nice if you can test the performance of this PR in your Rasberry Pi because I don't have one xD
@uhliksk
I added a fix for #463, you can test and check if it's solved.

@habibalkhabbaz Nice job. I'll try. Thank you.
@chrisleekr Please merge this #464 before my #462 as I can use this queueing mechanism instead of my simple queueing to solve #398 and #457. Thank you.

@habibalkhabbaz Logging is working fine.

@habibalkhabbaz Logging is working fine.

Perfect!

@habibalkhabbaz Is this because of racing the queue?
{"name":"binance-api","version":"0.0.88","hostname":"f545a1de3f6a","pid":46,"gitHash":"unspecified","server":"cronjob","job":"trailingTradeIndicator","uuid":"b8a528ad-2651-492e-bf4f-4b7c7870bb75","level":50,"tag":"job-timeout","msg":"Failed to run the job within 20000ms.","time":"2022-08-11T15:00:13.013Z","v":0}

@habibalkhabbaz Is this because of racing the queue?

{"name":"binance-api","version":"0.0.88","hostname":"f545a1de3f6a","pid":46,"gitHash":"unspecified","server":"cronjob","job":"trailingTradeIndicator","uuid":"b8a528ad-2651-492e-bf4f-4b7c7870bb75","level":50,"tag":"job-timeout","msg":"Failed to run the job within 20000ms.","time":"2022-08-11T15:00:13.013Z","v":0}

Hello @uhliksk
I see it's happening to me too.
Let me check.
I think the problem coming from locking the symbol.
I am testing without locking now. If it's fine then I can solve it.

@uhliksk
Done. Pushed a fix.
Let me know if it's solved.
After implementing the queue, we don't need to do the trick of locking symbol in trailingTrade.
The queue will do the job.
@chrisleekr let me know if you confirm me on this too.

@habibalkhabbaz I found it was actually redis-server consuming too many resources. Even after the fix applied I had to restart redis-server manually.

@uhliksk
Yes, there is a way to improve this. We have to re-use Redis connections based on the documentation:
https://github.com/OptimalBits/bull/blob/master/PATTERNS.md#reusing-redis-connections
By doing this it will decrease the usage of Redis too much.

However, this will report the following to Node.js process
Possible EventEmitter memory leak detected. 11 error listeners added to [Commander]. Use emitter.setMaxListeners() to increase limit�

This is not a real memory leak and we can ignore it using the following, which will make the listeners unlimited:
require('events').EventEmitter.defaultMaxListeners = 0;

Important note: using the above will make us sacrifice by the memory leak warnings because we may don't see any real memory leak warnings in future.
What do you think @uhliksk ?
I think @chrisleekr can help us in this too.

@habibalkhabbaz I didn't analyzed this yet but I see CPU usage of redis-server is raising again and it's consuming same %CPU even after binance-bot is restarted. To reduce %CPU back to almost zero I have to restart binance-redis itself. This looks like the issue is something persistent on redis-server. Isn't the database on redis-server just growing without removing the old records?

@habibalkhabbaz It is growing fast.

@uhliksk
Ignore my last message.
Thanks for the info. It helps me to debug.
I found the issue. Going to push a fix.

@uhliksk
Done.
Now the Redis CPU usage must be better and the keys will not increase horribly.

@habibalkhabbaz Great job! Thank you.

@uhliksk
If everything goes well, I think this PR will be ready to be reviewed by @chrisleekr 💪

Hello @habibalkhabbaz, there is no issue since last commit on my side. I think this PR is ready to be reviewed by @chrisleekr.

@habibalkhabbaz @uhliksk
Hi guys,
It is great. :)
I will review/test it this weekend.

Guys,
I've added Bull Board to the stack.
You can now access Bull Board /queue.
To be saving space, I limit it to keeping 100 completed tasks.
As the job is fast, you won't see much in the Active tab.
As this board does not have authentication, I think we can add in later on.
So far the changes look good. I will continue to review/test.

Nice update @chrisleekr 🎉

@habibalkhabbaz
Yeah, that would be a good addition. :+1:
Although, I think we can add that later on, not with this PR.
We can even save the result of the job to debug.
This queue implementation is pretty stable. I can see a lot of benefits.
Let's give one or two days more and see whether we can find any bug.

I reviewed the code @habibalkhabbaz
Looks good. I think we are good to merge.
I will merge in tomorrow if there is no issue found.

Thank you @chrisleekr
It seems good, there is no issue in my side till now.

@habibalkhabbaz @uhliksk
It's merged. Thanks for your contributions guys.
I have a few things to fix before releasing a new version.
Once all is resolved, I will release it today.


[CodeClean] fix typo

Code clean, fix typo in internal header file.

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #558. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/.


Simple Tester UI

Hi Nat...
this week I played around a little bit with Java Swing in order to create a small and simple "Tester UI" for JSONata4Java.
It is far from being as mighty as the original JSONata Exerciser UI but nevertheless I think it is much more pleasant to play around with JSONata4Java by means of this UI than the command line based Tester we have so far.
If you like to have a try:

check out my new branch "tester-ui"
build the project (mvn clean install)
start the UI with ./testerui.sh (or testerui.cmd on Windows) and play around a little bit

If you like it I could polish it a bit and we could add it to the system instead or in addition to the command line based Tester.
Looking forward to your feedback to this tiny 280 LOC Java Swing hack.
BR
Martin

Another nice feature that you could apply a transformation not only to JSON input but also to XML input. I simply applied Jackson's XmlMapper in order to get a JSON-Node to process.

Thank you again. This is very nice. I have a few suggestions if you are open:

Rather than showing null for missing information, show ** no match ** as is done at https://try.jsonata.org/Z0MZ2NQrI
Rename to TesterUI.java or TesterUX.java or TryJSONata4Java.java (your choice). Since UI is an acronym it seems odd to see Ui...
Consider making the default test resource JSON and the test expression the same as the default at https://try.jsonata.org but allow a command line parameter to specify the JSON filename to be opened if supplied. This would make it more like the try.jsonata.org site.
Not important, but using white background for the JSON and expression and grey for the result would also seem more familiar to jsonata users...
Nice but not required, add a file picker to allow selection of files from the "new" testfiles directory... this has lots of other files that people have submitted for testing. Or, perhaps better, default to the src/test/resources where you've put some examples for testing (but add the original JSON file from try.jsonata.org there). I know people can just select all then paste in the JSON they want to test with so this really isn't required at all.

This is a really nice addition. Thanks again.

and 2. are already implemented. For 3., 4. and 5. I need some more time.

Concerning the examples: I already took one of the test examples of the original JSONata Exerciser (try.jsonata.org) but instead of the "Invoice" example (which is the default example in the original JSONata Exerciser) I took the "Address" example because it generates a bit more output and it generates JSON output. I could also add a combo box like they have in the original JSONata Exerciser in order to switch between several examples but might restrict to the test examples that are currently working out well with JSONata4Java (Invoice, Address, Schema). Please note that the examples "Library" and "Bindings" are currently not working out in JSONata4Java.
By the way concerning "Bindings": I've not made any thought about the "Bindings" concept so far and would postpone this to a later point of time but might like to ask if JSONata4Java anyhow supports "Bindings" at all.
Concerning the background colors: of course we could make the whole look and feel a bit more similar to the original JSONata Exerciser. Maybe we could make the colors adjustable by the user and start with (white | white | grey) as the default. Fonts and font sizes might be also wished to be adjustable.
Concerning a file chooser: simply copy and paste some content like supported by the original JSONata Exerciser might be sufficient. Maybe what might I personally miss more in the original JSONata Exerciser is kind of app memory, so that the last "input" and "expression" you worked on is automatically present, when you start the UI again. This could be relatively easily implemented togheter with a memory of the colors and fonts.

With a bit more work we have now a lot of possibilities:
We can choose know between 3 JSONata Exerciser standard examples ("Invoice", "Address" and "Schema") and it's very easy to add more examples.
We can choose colors either from predefinded color schemas (also easily extendable) or even freely choos any color we like.
We can also tweak the Font used... and the UI alwas stores not only the UI settings but also the last status of your work.

Sounds great -- look forward to merging your work.

Pull request merged. New version 2.1.0 will provide the UI


[BUG] -help command line option shouldn't be ignored

Preconditions:
Sparrow 1.7.1 portable, Windows 11
Steps:

PS C:\Sparrow> .\Sparrow.exe -h

Expected result:
Description of command line options is displayed (https://sparrowwallet.com/docs/faq.html#how-can-i-run-testnet).
Actual result:
Description of command line options is not displayed.

It appears this only occurs when executing Sparrow in a cmd.exe shell. It does not occur for example when using a Git Bash for Windows shell.
Unfortunately it does not appear to be easily fixable. It is possible to change the build configuration to make the usage information print to sysout in this scenario, but then Sparrow is always launched with a background cmd window, which is not desirable. I'm uncertain, but from the jpackage tooling documentation it appears this may be a native Windows limitation.


Change Razor component route syntax to use option

https://github.com/dotnet/razor/pull/6997 added string syntaxes to Razor pages and component page routes. This PR changes the string syntax for components to Route,Component so the same integration can be used for both.

@razor-compiler Could someone please take a look at this PR? It's really just a one-line change.

@dotnet/razor-compiler Could someone please take a look at this PR? It's really just a one-line change.


fix virtualization detection

Fix virtualization detection behavior: When CpuType is equal to Physical, ret.Virtualization should be an empty string.

原因？


Remove slot offset from labware offset when saving new calibration data

overview
Save correct offset data when calibrating labware using new definitions (this functionality is still behind a feature flag, and there may be issues with aspirate and dispense default target locations). Fixes #704, fixes #1142, and relates to #1143
changelog

(fix) Subtract slot offset from well offset when saving labware offset data

review requests
Set the feature flag on a robot, and run protocols to see that calibrations behave as expected (the first pass for each labware will be like calibrating from a completely fresh machine)

[x] Once you've calibrated a labware in the new system, does the calibration persist into runs and the next calibration session?
[x] Does the pipette go to the calibrated top of the well on a pipette.move_to(plate[0])?
[x] Does it go to the correct point at the bottom of the well for aspirate/dispense (likely to fail)

Only weird behavior I saw from the following protocol (tested on Young-Moon)
was that the pipette would not drop tip until I specified the plunger position to be lower than default.
`from opentrons import containers, instruments, robot
rack1 = containers.load('tiprack-200ul', '3')
trough = containers.load('trough-12row', '2')
plate = containers.load('96-flat', '1')
p300_single = instruments.P300_Single(
mount='right',
tip_racks=[rack1]
)
p300_single .plunger_positions['drop_tip'] = -4.5
p300_single .pick_up_tip()
p300_single .aspirate(200, trough.wells('A1'))
p300_single .dispense(200, plate.wells('B1'))
p300_single .move_to(plate.wells('B5'))
p300_single .move_to(plate[0])
p300_single .drop_tip()`


Add vs-api endpoint for indexing the products

What is the motivation for adding / enhancing this feature?

Currently vue-storefront-api is accessing ElasticSearch just in read-only mode. The src/api/catalog.js is not accepting any other endpoints than _search. This is good approach regarding the security, however with new magento2-vsbridge-indexer and magento1-vsbrdige-indexer users must connect these modules directly to Elastic without the vs-api in the middle. It won't work with cloud deployments (like storefrontcloud.io) where there is no public access to Elasticsearch instance.
We should extend the catalog.js:

add htaccess authorization over ElasticSearch

add the following endpoints:

bulk

create

refresh

exists

delete

putMapping

deleteByQuery

Details: https://github.com/DivanteLtd/magento2-vsbridge-indexer/blob/master/src/module-vsbridge-indexer-core/Elasticsearch/Client.php
What are the acceptance criteria

native indexer could be connected to vue-storefront-api
authorization works

In my opinion, we should create new microservice that will be a connection interface to ES. Then we will be able to secure connections by IP checking etc.


Update link for Bootstrap modal guide

[ X ] I have read freeCodeCamp's contribution guidelines.
[ X ] My pull request has a descriptive title (not a vague title like Update index.md)
[ X ] My pull request targets the master branch of freeCodeCamp.
[ X ] None of my changes are plagiarized from another source without proper attribution.
[ X ] My article does not contain shortened URLs or affiliate links.

@chillieguy Good eye!
Congrats on your first-time contribution!


run snarkyjs integeration test entirely in-script

https://github.com/MinaProtocol/mina/issues/11248

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me


axes convention in mudata

notebook covers the usage of mudata with axes=-1

@bio-la @gtca it should work now if you merge in main

Opened https://github.com/scverse/scverse-tutorials/pull/37 instead, because I don't have write permissions to your fork and would like to fix the env.


perf: optimize minor codes

Description
This PR optimizes codes a little bit.

@chokobole Isn't unbounded array -> fixed size array correct for 952a373's commit message?

@chokobole Isn't unbounded array -> fixed size array correct for 952a373's commit message?

I corrected it to bounded_array!
#include <iostream>
#include <type_traits>

int main() {
  int arr[] = {1, 2, 3};
  std::cout << std::is_bounded_array_v<decltype(arr)> << std::endl; // this prints 1
  return 0;
}


fcft: 2.3.3 -> 2.4.0

https://codeberg.org/dnkl/fcft/releases/tag/2.4.0

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

[ ] 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
[x] Fits CONTRIBUTING.md.

@ofborg build foot fuzzel

Result of nixpkgs-review pr 123571 at 738ec84b run on aarch64-linux 1

5 packages built successfully:

fcft
foot
fuzzel
wbg
yambar


Cannot find module './src/common' only in npm version 2

I recently changed npm version from 3 to 2 in order to use google app engine.
I could successfully install packages when i was using npm3, but after i changed to npm2, this error happens. I don't use this package directly. It is installed via dependencies.
I think it's related to the way npm installs packages. I heard that npm3 differently installs its packages than npm2.
><EMAIL_ADDRESS>postinstall C:\Users\ZeroCho\WebstormProjects\zerocho-home\node_modules\caniuse-api
> node generator.js

module.js:338
    throw err;
    ^

Error: Cannot find module './src/common'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:286:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (C:\Users\ZeroCho\WebstormProjects\zerocho-home\node_modules\shelljs\shell.js:9:14)
    at Module._compile (module.js:434:26)
    at Object.Module._extensions..js (module.js:452:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)

and the strange thing is, after failing npm install, I tried to run that command again, then it succeeded. First install always fails and second install succeeds.

@MoOx i have above error with caniuse-api which is a dependency of postcss-cssnext

There is no such file as src/common. The issue seems to be a shelljs issue.

@MoOx Thank you! I'll make an issue at that repository

Additional error message
Linux 3.16.0-4-amd64
npm ERR! argv "/usr/local/nvm/versions/node/v4.1.2/bin/node" "/usr/local/nvm/versions/node/v4.1.2/bin/npm" "i" "--production"
npm ERR! node v4.1.2
npm ERR! npm  v2.14.4
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>postinstall: `node generator.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script 'node generator.js'.
npm ERR! This is most likely a problem with the caniuse-api package,
npm ERR! not with npm itself.
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node generator.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls caniuse-api
npm ERR! There is likely additional logging output above.

Sorry the this message doesn't help at all. Nothing is interesting here...

Should be closed by #47


Add peers bootstrapper integration tests

cc @xichen2020 @cw9 @martin-mao

Coverage increased (+0.009%) to 79.991% when pulling d06247dd920166f240621e355b1084411c99e6c8 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage increased (+0.009%) to 79.991% when pulling d06247dd920166f240621e355b1084411c99e6c8 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage increased (+0.2%) to 80.136% when pulling e9be73d72ded9fead5b04cc70869d9a64f6ffda1 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage increased (+0.2%) to 80.136% when pulling e9be73d72ded9fead5b04cc70869d9a64f6ffda1 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage decreased (-0.02%) to 79.957% when pulling 3801934caf41acc0fc93702a9f0205ac41fdc627 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage decreased (-0.02%) to 79.957% when pulling 3801934caf41acc0fc93702a9f0205ac41fdc627 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage increased (+0.02%) to 80.002% when pulling c57973ddff6239a360a92f3becee7c9700970d13 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

Coverage increased (+0.02%) to 80.002% when pulling c57973ddff6239a360a92f3becee7c9700970d13 on peer-streaming-integration-tests into 1d38439dbf76c8cc821a3651111b9b0960b12808 on master.

LGTM


[AutoPR logic/resource-manager] Add 2 missing endpoints to newest versions Microsoft.Logic

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/4332

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/2782


add dominant-baseline attribute support for Text

Description
SVG file
https://wos2.58cdn.com.cn/DeFazYxWvDti/frsupload/14f68e2c98275b0e1078ca1e45b89ce5_line-stack.svg
sample code
<Canvas style={{ width, height }}>
  <ImageSVG
    svg={Skia.SVG.MakeFromString(svgString)}
    x={0}
    y={0}
    width={width}
    height={height}
  />
</Canvas>

rendered by react-native-skia

related issue
https://github.com/react-native-svg/react-native-svg/issues/872

There are also a few strange border, I do not know where it came from

strokeWidth set to 0 is not supported
<path xmlns="http://www.w3.org/2000/svg" d="M-5 -5l341.4078 0l0 46.4l-341.4078 0Z" transform="translate(27.2961 5)" fill="rgb(0,0,0)" fill-opacity="0" stroke="#ccc" stroke-width="0"/>

https://github.com/Shopify/react-native-skia/issues/888
skia's stroke-width attribute is different with svg when set to 0, so there is a thin line.

This is not something we plan to support nor would be able to support unfortunately.
Is there something we should add on the documentation at https://shopify.github.io/react-native-skia/docs/images-svg/#svg-support regarding this?


Magic Trees

Could you add an option to mute the humming/whirring that magic trees produce? I love hearing my character chopping, but can't stand the sound those trees make.

It's a bit tricker than the other sounds I currently have muted in the plugin, but know it is being looked into. Thanks for the suggestion.

I appreciate your willingness to look into it though! It'd be so cool if you managed to make it happen.

Hi, just voicing that this is literally the only sound I'm interested in muting. Would greatly appreciate you finding a way to get rid of it. <3

Runelite's mute ambient sound will mute magic trees, it's implemented in this commit:
https://github.com/runelite/runelite/commit/099221993ab8802993acf4ffccb4ba19a9b5a2c9
Also see: https://github.com/runelite/runelite/issues/12526
Hope this helps implementing the mute magic tree sound loop

Runelite's mute ambient sound will mute magic trees, it's implemented in this commit: runelite/runelite@0992219 Specifically client.getAmbientSoundEffects().clear(); maybe you can discover the IDs in getAmbientSoundEffects()
Also see: runelite/runelite#12526
Hope this helps implementing the mute magic tree sound loop

https://oldschool.runescape.wiki/w/List_of_in-game_sound_IDs the IDs according to this list are 3134, 3135, 3136 (possibly 3137 not sure)

Closed in https://github.com/Broooklyn/runelite-external-plugins/commit/bda54623af1a75e0fbf8b1e9577708e1ce7f7524


Feature: Make system log text copyable to clipboard/selectable

Settings
View system log
Attempt to copy to clipboard (because you'd like to make a higher quality bug report with reproduce steps, screenshots, etc)
Expected:
It's fairly easy
Actual:
Can't (though the message directly feature is a very nice alternative)

Fixed with #629.


#17_Show_event_details_view

add event_details view  + basic template

Current coverage is 80.74% (diff: 0.00%)

Merging #62 into master will decrease coverage by 3.10%

@@             master        #62   diff @@
==========================================
  Files            19         19
  Lines           260        270    +10
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            218        218
- Misses           42         52    +10
  Partials          0          0

Powered by Codecov. Last update 7313772...4ba3ba0

Please rebase your project so there aren't 11 commits (9 already merged) in PR.

I have explained it in CONTRIBUTING.rst, but probably should be more specific... To avaoid sytuations like this you should do following:

You create a fork of the project (you do this only once, and you already have it,it is your repo in which you are working)
You pick up a issue, and make a comment that you are working on it
in your local git copy you create a branch: git checkout -b XX-new-feature (where XX is issue number)
you do the work:

you can commit how many time you want
you can push to server how many times you want git push origin XX-new-feature
you can also pull from upstream how many times you want (at this point we dont care about merge message, or rebase to get rid of it as we will do squish merge -> in upstream master it will looks like one commit)

once you are ready you click on pull request button, and select master branch in upstream and XX-new-feature branch from your repo.

if reviewer asks for changes you can do all the things mentioned in point 3
Once happy with the changes make a note in PR to review again

your feature is approved and merged to master of upstream, so you can check out master at your local copy: git checkout master and pull the newly approved changes from upstream git pull upstream master
once done you work in branch came to your master from upstream as a one commit and you can delete your local branch git branch --delete XX-new-feature

Just to explain what has happend (it also happend to me and @ZoltanOnody couple of days ago)...
You are working in master branch of your fork, and you do multiple commits to fix an issue and once you request PR, it is reviewed and squashed merged into master of upstream repo.
Resul of this action is that in upstream master all your code is there, but it went there from a single commit, however your local copy has all the code but it is in several commits and when trying to pull from upstream you are downloading the same code but from one (different commit) that makes git confused, as a result in this PR there is code, that was already approved and merged into master of upstream.
It is possible to fix in cmd line of git, but my guess is that the quickest way for you is to delete the fork on github and create a new one, same on you local machine. Otherwise you need to fech the upstream code, do the rebase (where will be conflicts, resolve them) and force push to your fork on github.

PR can be discarded.


add a common windows lfi path

These paths are already present in
/Fuzzing/Windows-Attacks.fuzzdb.txt,
however I think they should also be in here.

Thank you!


pb.auth_store.clear() doesn't seem to be clearing the session

Hi
Just want a bit more insight into how pb.auth_store.clear() should be working. I seem clear the session down but never seems to logout correctly. I have been calling it and just doesn't want to work correctly.
Thanks everyone 😄

@obxjames could you describe why you think it

just doesn't want to work correctly.

pb.auth_store.clear() just set the token to an empty string. It doesn't execute any call to the sever.

Sorry I should explain, I'm using python reflex, when using the authstore it doesn't want to set the token in local storage, I've created my own function to add the cookie however I wanted to see how others were collecting and terminating the session.

@obxjames you could decode the JWT token to see which token belongs to which users.


README URLs to package documentation should be relative, rather than absolute

Checklist

Please ensure the following tasks are completed before filing a bug report.

[x] Read and understood the Code of Conduct.
[x] Searched for existing issues and pull requests.

Description

Description of the issue.

When we generate the HTML fragments, we transform the project links to absolute URLs; e.g.,
https://stdlib.io/docs/api/v0.0.90/@stdlib/array

Preferably, we'd have the ability to generate relative URLs; e.g.,
/docs/api/v0.0.90/@stdlib/array

To support this, instead of a version option which is set during the build process, we'd provide a base option, defining the "base" URL; e.g.,
var opts = {
    'base': '/docs/api/v0.0.90/'
}

Hence, a base URL would supplant the need for a version option. This would also allow providing an absolute URL; e.g.,
var opts = {
    'base': 'https://stdlib.io/docs/api/v0.0.90/'
}

Related Issues

Does this issue have any related issues?

No.
Questions

Any questions for reviewers?

No.
Other

Any other information relevant to this issue? This may include screenshots, references, stack traces, sample output, and/or implementation notes.

Demo

If relevant, provide a link to a live demo.

For a live demo of the issue, see

N/A

Reproduction

What steps are required to reproduce the unexpected output?

In order to reproduce this bug, do the following:

N/A

Expected Results

What are the expected results?

The following results are expected:
N/A
Actual Results

What are the actual results?

The following are the actual results:
N/A
Environments

What environments are affected (e.g., Node v0.4.x, Chrome, IE 11)? If Node.js, include the npm version, operating system, and any other potentially relevant platform information.

The following environments are affected:

(all)

The relevant packages have been updated to support a base option instead of version (https://github.com/stdlib-js/stdlib/compare/409778fae194...de5acbb9d938). Also updated the script at https://github.com/stdlib-js/www/compare/47bfcbdf76c4...670748f10060.

Awesome! Thanks!


How can I get the name of a playlist?

I'm trying to get tracks from a playlist using user_playlist() (or user_playlist_tracks()) but I also want to get the name of the playlist. As far as I can tell there doesn't seem to be a name for the playlist anywhere in the returned JSON however. So I'm just wondering where I can get the name of a playlist (if all I have is the Spotify URI)? Is there another function I can use?
When looking at the Spotify API, I noticed this function in the docs returns a playlist object that has a lot of information (like name, description, href, etc.) that doesn't seem to be included in user_playlist():
https://developer.spotify.com/documentation/web-api/reference/playlists/get-playlist/
Is there a way to get this using Spotipy?

Thank you! :)


Update index.md - Added Gradle to the first lines of the home page to promote this build tool.

I just added the Gradle way of adding Unirest as a dependency in the home page. Effectively, this build tool is very popular and maven not used that much nowadays.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

hey @RedsTom thanks for the contribution! it looks like your fork is a little behind still has refs to a version of javalin that pulled in some CVEs. It's not a big deal, it's a test dependency, but could you please rebase or merge master into your branch so CI passes?


Variable Query is not a valid name. Please use CamelCase or underscores.

When using one of the below statements, it is being listed under VAR_INVALID_NAME however this is not the case because both Query and PDF are components.
var objQuery= new Query();
var objPdf= new Pdf();
Should the VAR_INVALID_NAME plugin check if the "variable" is after the new command?

Fixed in dev for 1.3.0.  Thanks @isaac-mercieca


Launch util fix

Fixed a behavior in launch_util that wouldn't respond to CTRL-C and go into a loop if there is a bug in the integration script.

This was accidentally merged with the arithmetic intensity integration PR. I will re-open.


[Menu] Fix disabled MenuItem with props.menuItemStyle

Hi,
I've fixed the issue that Menu.props.menuItemStyle not merged with disabled MenuItem children. I also added a failing test case first:

Checklist

[x] PR has tests / docs demo, and is linted.
[x] Commit and PR titles begin with [ComponentName], and are in imperative form: "[Component] Fix leaky abstraction".
[x] Description explains the issue / use-case resolved, and auto-closes the related issue(s) (http://tr.im/vFqem).

Thanks for the test!


AMCBLDC – Complete the online documentation

So far, we have just published the webview of the architectural model at https://robotology.github.io/icub-firmware-models.

Alos, @valegagge raised the point that it may be somewhat beneficial to make available some documentation addressing the need for detailing the steps required to prepare, run and validate:

the board per se
the setup like the wrist mk2

When we're happy with the model we've updated/modified, it's always a good rule to give a look at the codegen options and check if the C-mapping is ok.
Related to C-mapping, here's a quite enlightening resource. https://www.mathworks.com/help/rtw/ref/single-outputupdate-function.html.
Essentially, we can try to force the compiler to yield a single step function, but this choice may be overridden when we're dealing with multi-rate systems. As a result, the step function can be replaced by the pair update+output. The latter has something to do with the feed-through output signals.


Ignore errors in coords. read from file

Ignores errors when reading node & link vertex coordinates from an input file. Also when saving a project to an input file, the [DEMANDS] section only includes non-zero demands. See issues #603 and #174 .

@LRossman, this applies to the first base demand only, right? If there is a second demand category with zero demand, it will be written.

I made some tests and looks ok for all demand categories (non-zero demands).

Thanks @Mariosmsk . For @eladsal , here is the result of a test I made: The original input file had the following [DEMANDS] section:
;Junction        Demand    Pattern   Category
;--------------------------------------------
J1               0                   ;Domestic

J2               0                   ;Domestic
J2               10                  ;School

J3               2                   ;Domestic
J3               0                   ;Factory

J4               0                   ;Domestic
J4               0                   ;School
J4               0                   ;Factory

The [DEMANDS] section in the file created by calling ENsaveinpfile looks as follows:
[DEMANDS]
 J2              10.000000        ;School
 J3               2.000000        ;Domestic

Thanks @LRossman , I think we are good to go.


Doesn't match Rust expressions when using trailing commas

Minimal repro:
foobar(
  1,
  2,
);

In the original, more complex example, it took some time to figure out why it wasn't matching against a pattern
foobar($X, $Y)

While eventually I found out that adding explicit comma helps.
I know that comma is parsed as a separate token, but AST-wise both should be semantically equivalent and ideally should match in patterns.

Thanks for reporting!
This is actually a known issue because, under the hood, ast-grep is using tree-sitter's CST(concrete syntax tree) to match the pattern and code. I admit ast is a little bit misnomer.
I think I have earned enough knowledge about how to convert a CST to AST so the match against the expression will succeed. The strategy is to ignore trivia node (that is, nameless and not field-less node).
I will experiment more to see if using last will have unexpected fallout. If no bad impact is found, I will implement a true AST matching algorithm.

I see, thanks!

The strategy is to ignore trivia node (that is, nameless and not field-less node).

Wouldn't that accidentally skip meaningful commas as well? Or is that not a problem because those commas are mandatory and can be implied, as without them code would be invalid anyway?

Let me clarify. Suppose we have a code like f(a, b) now.
The CST and AST will look like the following table. See the playground link.

CST
AST

We are using CST now so the parentheses are also considered during matching. Though they do not affect the matching result anyway.

Wouldn't that accidentally skip meaningful commas

If we match code by AST, the tree structure will already imply meaningful commas and we are safe to skip them.
However, the prerequisite is that the tree-sitter grammar should be well-formed so that any meaningful trivia nodes are indeed trivial.
I'm not sure if all grammars obey such rules...

AST is not sufficient though... For example the following JS code are decoded as the same AST....
AST:

CST:

get keyword is only encoded in CST....

However, the prerequisite is that the tree-sitter grammar should be well-formed so that any meaningful trivia nodes are indeed trivial.

Ah yeah that's the bit I was trying to clarify. Makes sense to assume it's already well-formed - that does make matching easier.

I have come up with a smarter algorithm to match pattern and code. However, I think this will make ast-grep's pattern matching harder to learn.
named nodes vs unnamed nodes
The story starts with the difference between named node and unnamed node.
In tree-sitter, a node with kind is a named node. A node without kind is unnamed node. Conceptually, tree-sitter's output of all named nodes is equivalent to the source code's AST. If we add back unnamed node to tree-sitter's output, it becomes the full CST of the code.
ast-grep's algorithm now
Currently, ast-grep matches the full CST: we matches all named nodes and unnamed nodes in the pattern with those in the source code.
However, this makes bad cases like trailing commas mentioned above.
Maybe we can make ast-grep smarter by only looking at named node?  Unfortunately, this also does not work because most tree-sitter's parsers will not encode all semantics in named nodes. For example, these two pieces of code has exactly the same named node structure (a.k.a. AST.)
class A { method() {} }
class A { get method() {} }

The critical token get is parsed as an unnamed node. It is not trivial though!
We can alleviate this problem by counting more nodes as significant. A possible way is that a node is significant if a node is named node or is an unnamed node with field relative to its parent.
Example:
a + b

will be encoded as

Note a and b are named nodes, identifier. + is an unnamed node, but it is at the op field of binary_expression.
improved algorithm by skipping insignificant nodes in source
Ok, we have a lot of background knowledge here. Now we can state our improved algorithm
We can match all nodes in pattern, but if the source has redundant insignificant node (unnamed nodes without field information). We can skip them.

A possible way is that a node is significant if a node is named node or is an unnamed node with field relative to its parent.

That's exactly what I'm doing here: https://github.com/cshuaimin/ssr.nvim/blob/main/lua/ssr/search.lua#L60-L70

Thanks for the input @cshuaimin
But I think it will fail the example of JavaScript getter?

Yes it also fails on JavaScript getter. It's the same case as Rust underscore.

It is fixed in 0.5.7!


add ppa support

Currently, the salt repos and bootstrap script don't have support for vivid -- However, they do have deb's built and available in the official saltstack PPA.  This PR adds salt_ppa to the provisioner options and will default to using it if salt_install is set to ppa.

Looks good, thank you!


Track titles containing slashes create a new directory

For example, if I try downloading this track:
$ python3 spotdl.py -s "nightcore - darkside - alan walker"
INFO: Nightcore - Darkside - (Alan Walker / Lyrics) (http://www.youtube.com/watch?v=8N_aay0ddcY)
WARNING: Could not find metadata
  2,943,243 Bytes [100.00%] received. Rate: [  140 KB/s].  ETA: [0 secs]
INFO: Converting Nightcore - Darkside - (Alan Walker / Lyrics).m4a to mp3

It ends up creating a new directory in the target directory with the name Nightcore - Darkside - (Alan Walker  and the mp3 is stored in this newly created directory with filename as  Lyrics).mp3. Not so cool.
(I think there was a similar issue reported in the past but I couldn't find it)
This is on the latest commit (5b4efa05b68e6e00ecc1852ebb2e7d5c3ca3b2e9). There maybe a similar problem on Windows (with backslashes?) but haven't tried yet.
We should probably replace these special characters to avoid creating a new directory.

Closed by #402.


API Validation error for Dictionary with null value since Preview 8

Describe the bug
API validation of model with Dictionary containing null value is not correct and return this error  "The Value field is required" since Preview 8.
To Reproduce
Steps to reproduce the behavior:

Using this version of ASP.NET Core 3.0 Preview 8
Post a json to a web api controler taking from body model containing a dictionary with null value.
My model :

public enum ADSyncObjectType
    {
        User,
        Contact,
        Computer,
        Group
    }

    public class ADSyncObject
    {
        public ADSyncObjectType Type { get; set; }
        public Dictionary<string, object> Attributes { get; set; } = new Dictionary<string, object>();
        public List<string> Members { get; set; }
    }

    public class ADSyncFullRequest
    {
        public string IdentityAttribute { get; set; }
        public List<ADSyncObject> MonitoredObjects { get; set; }
    }

And my JSON
{
   "identityAttribute":"mail",
   "monitoredObjects":[
      {
         "type":0,
         "attributes":{
            "sAMAccountName":"marie.duchatel",
<EMAIL_ADDRESS>            "sn":"Duchatel",
            "givenName":"Marie",
            "displayName":"Marie Duchatel",
            "initials":"MD",
            "proxyAddresses":[

            ],
            "userAccountControl":"66048",
            "physicalDeliveryOfficeName":"Porte d'entrée 56",
            "department":"Egouts",
<EMAIL_ADDRESS>            "description":[
               "Plomp"
            ],
            "telephoneNumber":"0122523252",
            "wWWHomePage":"http://lol.com1",
            "company":"Carglass",
            "co":"France",
            "streetAddress":"Porte blanche 22",
            "postOfficeBox":[
               "192"
            ],
            "l":"Paris",
            "st":"IDF",
            "postalCode":"75017",
            "homePhone":null,
            "pager":null,
            "mobile":null,
            "facsimileTelephoneNumber":null,
            "ipPhone":null,
            "title":"Plombier"
         },
         "members":null
      }
   ]
}

Expected behavior
No validation error.
Screenshots

First occurence is  "homePhone":null but every field with value null give me the error.
Additional context
I use NewtonSoft.Json 12.0.2 in my API with .AddNewtonsoftJson(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); })
I haven't this error before Preview 8.

Hi @pranavkm, I don't think that I have enabled C# 8.0 nullability on my project.
It is a set in the .csproj ? Because I haven't see anything about this in my project .csproj :
Does  VisualStudio 2019 16.3.0 Preview 2 enable it by default ?

Ok, I have reproduced the bug with the default .Net Core Web Project Template.

Here is the project (I have just add a TestModel and a TestController) :
DictionaryBugDemo.zip
I post this json on https://localhost:44395/test with PostMan
{
 "dic":{
 	"ok": "ok",
 	"oktoo": 5,
        "ko": null
 }
}

Like this :

@Safirion you can unblock yourself in the meanwhile by setting MvcOptions.SuppressImplicitRequiredAttributeForNonNullableReferenceTypes = true in your startup code:
services.AddMvc(options => options.SuppressImplicitRequiredAttributeForNonNullableReferenceTypes = true);

@pranavkm Thank you for the workaround. It works perfectly now 👍

From a very quick look, it seems that the demo project indeed doesn't turn on non-nullable references in any way. However, if it did, then Dictionary<string, object> would indeed mean that there can be no null keys or values.


chore: update develop

JaCoCo Code Coverage 76.92% :white_check_mark:

Class
Covered
Meta
Status

  Generated by :no_entry_sign: Danger

Snapshot diff report

File name
Image


error in issue template

Mountpoint for Amazon S3 version
current
AWS Region
github
Describe the running environment
code error
Mountpoint options
code error

What happened?
this line in the ISSUE_TEMPLATE/bug-report.yml does not work:
        * Have you checked if the issue/error you are facing is mentioned in our [troubleshooting documentation](../../doc/TROUBLESHOOTING.md)?
When I click on it while filing an issue, it send me to https://github.com/awslabs/doc/TROUBLESHOOTING.md, which does not exist. It's one directory too high.
Relevant log output
No response

Thanks! It looks like a couple of these links were broken. #772 will fix it.


[Language support] Italian

This PR adds Italian translations for my fellow pizza comrades.

Thank you!


Upgrade to prebuild-install 6.0.0

Adds support for npm 7; see release notes for 6.0.0.
See discussion at #2415 for stack traces, examples, etc.

Coverage remained the same at 100.0% when pulling 366f90cf997e58c8f180b51d4868a3bdbdcbd2bf on medianick:master into e6a035e57571ff4261fac00c9ddd014773792ab3 on lovell:master.

Hello, when will version 0.27 be released please I need this MR ;)

@lovell Would you consider doing a v0.26.3 patch release?

@nstepien Quite possibly, this PR will be included if so.

Thanks, this will be in v0.26.3.

v0.26.3 now available


Implement Mooland support

It's a single tameable, saddle-able, rideable cow! What's not to love about it?

Disregard. It cannot be tamed, and I refuse to implement something else similar to Animania.


Allow CLI like input from web interface

Is your feature request related to a problem? Please describe.
Currently can not just copy paste the command from log file or other place in web interface
Describe the solution you'd like
Ideally a checkbox which let us write the command in the same format as CLI. Marking this checkbox can disable other dropdowns. We can keep browse image enabled.
As an added benefit, this will allow having any new functionality immediately available in webui without any modification.
Describe alternatives you've considered
Additional context
It should allow something like this

absolutely agree. When I used the web interface I liked everything except there is no --grid and --upscale I can't add them myself because I don't understand how the program interacts in html


Kubectl not working in new vagrant environment

Expected Behavior
kubectl can be used in a freshly set up vagrant environment
Current Behavior
Starting in Chapter 6 I get the error The connection to the server localhost:8080 was refused - did you specify the right host or port? when I try to use any kubectl commands.
Possible Solution
I could get kubectl running by using cp -i /etc/kubernetes/admin.conf /root/.kube/config to copy the config file to /root/.kube/
Command found here
Steps to Reproduce

vagrant up
vagrant ssh host01
sudo su
kubectl get pods

Context (Environment)
OS: Ubuntu
Version: 20.04.5 LTS (Focal Fossa)
Ansible core version: 2.13.7 (installed via pip, since the official apt ansible 2.9.6 package failed to execute some of the previous play books)
Vagrant version: 2.3.4
Detailed Description
The Issue appeared consistently for me, even when destroying and re-provisioning the environment. The vagrant up command to create the environments finished successfully.
The issue appeared first in chapter 6, up to chapter 8. Since I didn't progress further I can't say if it also affects all the chapters after. The /root/.kube/ directory only contained a directory named cache and nothing else before I copied the config.
Edit: The $KUBECONFIG environment variable is empty, which explains the error.

If you add a hyphen - to the end of the sudo command it should pick up the correct KUBECONFIG variable.
Unfortunately, when you run sudo su without the hyphen - you are still operating with the environment of the vagrant user.
Apologies for the issue and for the pickiness of the command. I may try to think of a way to simplify that. If you have any ideas please share.

Thanks for the solution, somehow I totally missed the hyphen at the end.
An alternative could be sudo -i, it worked for me in the couple chapters I tried it out, but since it's not doing exactly the same as sudo su -  it might not be suitable for all chapters.


Something went wrong Unexpected token '<', " <h"... is not valid JSON

When using CPU as a device, after trying various prompts, gradio returns with the following error when running generate.py:

Something went wrong
Unexpected token '<', "<html> <h"... is not valid JSON

Interestingly I do not see any errors in the console log, it seems to be a formatting issue with the gradio ui.
the prompts I tried:
Write a Python program that prints the first 10 Fibonacci numbers.
write python code that renames all files starting with "mleml" in the current folder to "kek".

could it be a server timeout ? how long did the task take ?

Change run type type as GPU and try.

I do that have enough VRAM for the larger models, hence why trying with CPU.

demo = gr.Interface(
fn=process_document,
inputs="image",
outputs="json",
# live = True,
title=" OCR",
enable_queue=True,
cache_examples=False,
debug=True,
)
demo.launch(share=True)
This is my gradio API function code. Previously I had the same issue. But after I change to GPU in colab It's working.
and it's not for this repository. It's for other different type.

https://github.com/gradio-app/gradio/issues/3185
change
demo.launch(share=True)
to
demo.queue().launch(share=True)
Enabling the queue is required for inference times > 60 seconds: https://gradio.app/key-features/#queuing

gradio-app/gradio#3185 change demo.launch(share=True) to demo.queue().launch(share=True) Enabling the queue is required for inference times > 60 seconds: https://gradio.app/key-features/#queuing

fix my same problem

I have changed to demo.queue().launch(share=True), but still cannot fix my problem

gradio-app/gradio#3185 추론 시간 > 60초에 대기열 활성화가 필요함 으로 변경 : https://gradio.app/key-features/#queuing demo.launch(share=True) demo.queue().launch(share=True)

thanks for your comments

Hi @DanqingZ, I'm running gradio Application with FastAPI, how to handle it in such cases?
Following is the configuration of my gradio application:
from fastapi import FastAPI
import gradio as gr

app = FastAPI()
app = gr.mount_gradio_app(app, demo, path="/my_custom_route")

Getting following error:
Connection errored out.

How to handle requests which take more than 60s in case of using gradio with FastAPI?

Hi @DanqingZ, I'm running gradio Application with FastAPI, how to handle it in such cases?
Following is the configuration of my gradio application:
from fastapi import FastAPI
import gradio as gr

app = FastAPI()
app = gr.mount_gradio_app(app, demo, path="/my_custom_route")

Getting following error:
Connection errored out.

How to handle requests which take more than 60s in case of using gradio with FastAPI?

I am experiencing the same issue. I tried passing in the gradio instance as queue:
app = gr.mount_gradio_app(app, demo.queue(), path="/my_custom_route")
but is not working


Archive logs and fetch on-demand

Description

Packages log files into a tar file before fetching.
Adds a playbook to gather log files on demand.

Resulting directory:
$ ls error_files/
ip-172-30--148.-west-1.compute.internal.tar.gz  ip-172-30--77.-west-1.compute.internal.tar.gz
ip-172-30--51.-west-1.compute.internal.tar.gz   ip-172-30--232.-west-1.compute.internal.tar.gz
$ cd error_files/
$ tar -xf ip-172-30--148.-west-1.compute.internal.tar.gz
$ cd ip-172-30--148.-west-1.compute.internal/
$ ls
zookeeper-gc.log    zookeeper-gc.log.2  zookeeper-gc.log.5  zookeeper-gc.log.8    zookeeper-server.log
zookeeper-gc.log.0  zookeeper-gc.log.3  zookeeper-gc.log.6  zookeeper-gc.log.9
zookeeper-gc.log.1  zookeeper-gc.log.4  zookeeper-gc.log.7  zookeeper.properties

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Any dependent changes have been merged and published in downstream modules
[ ] Any variable changes have been validated to be backwards compatible

Just bc I'm curious, can you update the description to do ls -lat?


Support for Apple Silicon

Description
I'd love to see native Apple Silicon (M1) support in fgh. This won't be realistic until Go 1.16 is released (probably sometime in February), but here are (untested) instructions for how you can build fgh for Apple Silicon:
Requires a working Go installation, as well as an M1 machine.

Clone fgh with git clone https://github.com/Matt-Gleich/fgh
go get golang.org/dl/go1.16beta1 to install the latest Go 1.16 beta (will be safely installed alongside your current installation)
Run go1.16beta1 build . in the fgh directory
Observe the fgh binary that has been compiled into existence!

Thanks for the info @cjdenio! We also need to wait for homebrew to support and goreleaser support.

Thanks for the info @cjdenio! We also need to wait for homebrew to support and goreleaser support.


if does not handle comparison with bottom well in the presence of cycles

With master (9c5489f):
import "regexp"

X: #aux.message

#aux: {
    if Y.message == _|_ {
        message: ""
    }
    if Y.message != _|_ {
        message: "message: " + Y.message
    }
}

Y: regexp.FindNamedSubmatch(#"^(message: (?P<message>.*))?$"#, X)

X: "message: hello"

Y.message == _|_ evaluates to true.
In this larger example:
import (
    "strconv"
    "regexp"
)

X: #X.userinfo + #X.host + #X.port

#X: {
    if Y.userinfo == _|_ {
        userinfo: ""
    }
    if Y.userinfo != _|_ {
        userinfo: Y.userinfo + "@"
    }

    host: Y.host

    if Y.port == _|_ {
        port: ""
    }
    if Y.port != _|_ {
        port: ":" + strconv.FormatInt(Y.port, 10)
    }
}

Y: {
    if #Y.userinfo != _|_ {
        userinfo: #Y.userinfo
    }

    host: #Y.host

    if #Y.port != _|_ {
        port: strconv.Atoi(#Y.port)
    }
}

#Y: regexp.FindNamedSubmatch(
    #"^((?P<userinfo>[[:alnum:]]*)@)?(?P<host>[[:alnum:].]+)(:(?P<port>\d+))?$"#,
    X,
)

if is order-dependent. If I put:
Y: {
    userinfo: "user"
    host: "example.com"
}

At the top, cue will incorrectly derive X as example.com. If I put at the bottom, cue will correctly derive X<EMAIL_ADDRESS>

If I create an intermediary value, for example Y.message | null and then test if that field is null instead of bottom, cue works as expected regardless of order:
import "regexp"

X: #aux.message

#aux: {
    #message: Y.message | null
    if #message == null {
        message: ""
    }
    if #message != null {
        message: "message: " + Y.message
    }
}

Y: regexp.FindNamedSubmatch(#"^(message: (?P<message>.*))?$"#, X)

If I create an intermediary value, for example Y.message | null and then test if that field is null instead of bottom, cue works as expected regardless of order:
import "regexp"

X: #aux.message

#aux: {
    #message: Y.message | null
    if #message == null {
        message: ""
    }
    if #message != null {
        message: "message: " + Y.message
    }
}

Y: regexp.FindNamedSubmatch(#"^(message: (?P<message>.*))?$"#, X)

The above workaround does not work in the larger example, I just get lots of:
unresolved disjunction _|_(cycle error (and 5 more errors)) | null (type null)

The above workaround does not work in the larger example, I just get lots of:
unresolved disjunction _|_(cycle error (and 5 more errors)) | null (type null)

This is an interesting one. Officially, comparing against bottom is not supported by the CUE specification. And it shows: it is not very well thought out. There are two use cases for it in the wild: check whether a field exists, or check whether a value is valid. The latter requires a full recursive evaluation of the value, the former not. Doing the latter would trigger a cycle in the examples of this issue, as it would recursively unify. In practice people use more the former, or to verify that a scalar value is valid.
Either way, there were a couple of subtle bugs that would cause cycle errors to be introduced too early. These have been fixed in an upcoming CL. The code could use an overhaul in this matter, though: with the new data structures this could all be a lot simpler.
Either way, it works now, making comparing against bottom without recursively checking (so with a semantics in-between the two above cases). The plan is to remove comparing against bottom and replace it with the two aforementioned builtins.

This is an interesting one. Officially, comparing against bottom is not supported by the CUE specification. And it shows: it is not very well thought out. There are two use cases for it in the wild: check whether a field exists, or check whether a value is valid. The latter requires a full recursive evaluation of the value, the former not. Doing the latter would trigger a cycle in the examples of this issue, as it would recursively unify. In practice people use more the former, or to verify that a scalar value is valid.
Either way, there were a couple of subtle bugs that would cause cycle errors to be introduced too early. These have been fixed in an upcoming CL. The code could use an overhaul in this matter, though: with the new data structures this could all be a lot simpler.
Either way, it works now, making comparing against bottom without recursively checking (so with a semantics in-between the two above cases). The plan is to remove comparing against bottom and replace it with the two aforementioned builtins.

@mpvl I might be wrong and I can't find a practical example where the following issue blocks functionality, but I have a nagging feeling that conflating the lattice minima with legitimate errors into a single bottom entity may cause some issues for users too (looks like it already causes issues in the code). if x == _|_ might be interpreted as:

x is the lattice minima, which is a valid value
x is an invalid value due builtins returning an error or cycle errors

@mpvl I might be wrong and I can't find a practical example where the following issue blocks functionality, but I have a nagging feeling that conflating the lattice minima with legitimate errors into a single bottom entity may cause some issues for users too (looks like it already causes issues in the code). if x == _|_ might be interpreted as:

x is the lattice minima, which is a valid value
x is an invalid value due builtins returning an error or cycle errors

also my interpretation is that the language specification allows comparing with bottom:
"Implementations may associate error strings with different instances of bottom; logically they all remain the same value."
Seems to imply that bottoms are comparable in a well defined way.

also my interpretation is that the language specification allows comparing with bottom:
"Implementations may associate error strings with different instances of bottom; logically they all remain the same value."
Seems to imply that bottoms are comparable in a well defined way.

The conflation is not too much of an error, I believe, as all treated as errors after finalization. So in the end it is just an implementation detail. There would be an issue if bottom also a valid "concrete" configuration value, but it isn't. (null serves that purpose if one would need such a value.)
But indeed there is an issue with the fact that comparing against bottom has different kind of uses. Getting rid of comparing against bottom and replacing it with the builtins exists and isvalid would be sufficient. I simulated such builtins while creating a fix for this issue, and depending on the interpretation it would indeed switch between reporting cycles vs allowing cycle breaking.  While we are at it, we are even thinking of deprecating _|_ altogether and replacing it with error(msg), also allowing users to generate custom error messages.
In the end, the biggest complication for the implementation is the existence of two interpretations of the current data structure. The new data structure now enables values per node to be accumulated in any order, making nodes increasingly more specific. Much of the old implementation still assumes this is not possible and jumps through all kinds of hoops. At some point I need to clean this up by replacing all logic to use the new model.

The conflation is not too much of an error, I believe, as all treated as errors after finalization. So in the end it is just an implementation detail. There would be an issue if bottom also a valid "concrete" configuration value, but it isn't. (null serves that purpose if one would need such a value.)
But indeed there is an issue with the fact that comparing against bottom has different kind of uses. Getting rid of comparing against bottom and replacing it with the builtins exists and isvalid would be sufficient. I simulated such builtins while creating a fix for this issue, and depending on the interpretation it would indeed switch between reporting cycles vs allowing cycle breaking.  While we are at it, we are even thinking of deprecating _|_ altogether and replacing it with error(msg), also allowing users to generate custom error messages.
In the end, the biggest complication for the implementation is the existence of two interpretations of the current data structure. The new data structure now enables values per node to be accumulated in any order, making nodes increasingly more specific. Much of the old implementation still assumes this is not possible and jumps through all kinds of hoops. At some point I need to clean this up by replacing all logic to use the new model.

also my interpretation is that the language specification allows comparing with bottom:

I guess it is more subtle: the section discussing comparison operators (https://cuelang.org/docs/references/spec/#comparison-operators) defines that only "comparable" values can be compared and lists the types. Technically, bottom is an instance of all types and values, so that indeed means it is comparable, but only with other values that are one of these types.
But that is not how it is implemented right now. Right now a literal bottom (and literal bottom only) may be compared against any other value. So technically this by itself is not correct.
Also, comparison of two computed bottoms will always result in an error. If this weren't the case, and a == b could result in true if both a and b result in an error, which is unexpected to say the least. The spec is indeed unclear about that, but it is really nasty to allow this.
Overall, the best solution is to ban _|_ from the language altogether and use builtins (could still be an easter egg for backwards compatibility). It looks more friendly to not have it, for one. But it also solves a host of issues (for instance, it kind of looks like _  | _).

also my interpretation is that the language specification allows comparing with bottom:

I guess it is more subtle: the section discussing comparison operators (https://cuelang.org/docs/references/spec/#comparison-operators) defines that only "comparable" values can be compared and lists the types. Technically, bottom is an instance of all types and values, so that indeed means it is comparable, but only with other values that are one of these types.
But that is not how it is implemented right now. Right now a literal bottom (and literal bottom only) may be compared against any other value. So technically this by itself is not correct.
Also, comparison of two computed bottoms will always result in an error. If this weren't the case, and a == b could result in true if both a and b result in an error, which is unexpected to say the least. The spec is indeed unclear about that, but it is really nasty to allow this.
Overall, the best solution is to ban _|_ from the language altogether and use builtins (could still be an easter egg for backwards compatibility). It looks more friendly to not have it, for one. But it also solves a host of issues (for instance, it kind of looks like _  | _).

This issue has been migrated to https://github.com/cue-lang/cue/issues/667.
For more details about CUE's migration to a new home, please see https://github.com/cue-lang/cue/issues/1078.


[New Game]: Guess the colour by RGB.

PR Description 📜
Guess the colour by RGB.
Fixes #127

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have added entries for my game in main README.md
[x] I have added README.md in my folder
[x] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @singh-anushka ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Hey @singh-anushka 👋!
@kunjgit here,
We have this annoucement to make 📢!!
During the time of PR don't alter main index file ! 🙂
In main Readme file just use * as a game number during the time we are merging we will add number !! 👀
Make sure you join our Discord🕹 if you haven't 😇
Thank you 💗!

make entry in main README file

@kunjgit made the entry into main README.md file. Kindly merge it with the label of 'GSSOC23' and 'level 3'. Thank you! : )

Thank you  @singh-anushka , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


MNT: fix compatibility with Python 3.14

The ast.Str class was deprecated in 3.8 and will be removed in 3.14

Thanks, nice catch! flit_core still supports Python down to 3.6, so could I ask you to do a little bit of compatibility code here? Something simple like if sys.version_info >= (3, 8) should be fine.
I know I'm pretty weirdly conservative on this. In most projects I'd have dropped such old Python versions some time ago. But flit_core is kind of in a special position, being used to build a whole lot of other packages, including key packaging tools like build & installer. Python 3.6 is still accounting for 2-3% of downloads from PyPI, so I'd rather keep it compatible than have some users getting an older version of flit_core.

Thanks Tom!

Sorry to be one of those people, but would it be possible to have a release with this commit? I'm currently unable to test with Python 3.14 in CI as pip is failing with this error.
A

Sorry to be one of those people too, but please would it be possible to have a release with this commit? I'm currently unable to test with Python 3.14 in CI as pip is failing with this error.
please.

Thanks @takluyver! We run Sphinx on the tip of CPython for doctests so testing the latest release is useful, but I agree perhaps less so in the general case.
A


Error exporting with --exiftool: 'NoneType' object has no attribute 'replace'

Thank you for this wonderful app. Testing with >30k imported photos from iOS and a few other sources, I came across this error message for 32 of these 32k photos:
Error exporting photo (...) as ...: 'NoneType' object has no attribute 'replace'
I could not determine what causes the error message, other than that it appears only for these 32pics and with option --exiftool as in
UB@Mac ~ % osxphotos export --folder work --name 20181112 --exiftool /Volumes/photo/test
The affected files are being exported fine, however with original file creation date. The other files have creation date = now instead.
When I omit the --exiftool option, the error does not appear.  Happy to send the photos over for debugging if necessary.
ExifTool is on the most recent version, 12.23. Previously I was on an older version, 11.10, but the error was the same.

Thanks for the bug report -- this should be enough to get me pointed to the right spot: 'NoneType' object has no attribute 'replace'
I'll post back here if I need any additional info.

Try version v0.41.9 and let me know if you are still having problems.  You can download from the github release page or python3 -m pip install --upgrade osxphotos if you installed with pip originally.

Thank you for the quick response, Rhet.
I had originally installed osxphotos with pipx, so I ran pipx upgrade osxphotos now.
=> upgraded package osxphotos from 0.41.8 to 0.41.9
=> re-ran osxphotos export --dry-run --folder work --name 20181112 --exiftool /Volumes/photo/test
The problem seems fixed.  No more of these errors.  Thank you!  This was very quick :)

Am 05.04.2021 um 22:20 schrieb Rhet Turnbull @.***>:
Try version v0.41.9 and let me know if you are still having problems. You can download from the github release page or python3 -m pip install --upgrade osxphotos if you installed with pip originally.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


[sqllab] Fix sqllab limit regex issue with sqlparse

This PR fixes the sqllab regex issues with Offset. In particular, the queries below failed before but now they are successful. Fixes https://github.com/apache/incubator-superset/issues/5272
select * from table where a=True limit 1, 2
select * from table where a=True limit 1 offset 10

@conglei @timifasubaa sqlparse could probably be leveraged to deal with the word LIMIT outside of the LIMIT clause.

@john-bodley @conglei I tried out sqlparse and it worked fine for our concerns. Feel free to suggest any extra cases you want me to cover with tests.

Codecov Report

Merging #5295 into master will increase coverage by 0.05%.
The diff coverage is 95.45%.

@@            Coverage Diff             @@
##           master    #5295      +/-   ##
==========================================
+ Coverage   61.33%   61.39%   +0.05%
==========================================
  Files         369      369
  Lines       23484    23519      +35
  Branches     2713     2713
==========================================
+ Hits        14405    14439      +34
- Misses       9067     9068       +1
  Partials       12       12

Impacted Files
Coverage Δ

superset/sql_parse.py
99.15% <100%> (+0.36%)
:arrow_up:

superset/db_engine_specs.py
54.05% <75%> (-0.24%)
:arrow_down:

Continue to review full report at Codecov.

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

@timifasubaa this is generally the right approach but I sense there could be some additional simplification, i.e., I don't think we need to first i) find (and store) the limit and then go through and then ii) re-find the limit and replace it. It seems that this could all happen in the same function which would reduce the need to repeat code.

I will reexamine the usage of limit in the query table in another PR and potentially further simplify the code.


⚠ Bofrost.es has degraded performance

In 68016ea, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1530 ms

Resolved: Bofrost.es performance has improved in 65527b1 after 6 minutes.


chore: add api token

Signed-off-by: Firas Qutishat<EMAIL_ADDRESS>

Codecov Report

Merging #94 (216ae9f) into main (700fc75) will decrease coverage by 0.67%.
The diff coverage is 34.48%.

@@            Coverage Diff             @@
##             main      #94      +/-   ##
==========================================
- Coverage   85.50%   84.83%   -0.68%
==========================================
  Files          13       13
  Lines        2222     2249      +27
==========================================
+ Hits         1900     1908       +8
- Misses        187      204      +17
- Partials      135      137       +2

Impacted Files
Coverage Δ

cmd/vct/startcmd/start.go
81.15% <33.33%> (-1.90%)
:arrow_down:

pkg/client/vct/client.go
89.05% <37.50%> (-3.32%)
:arrow_down:

Continue to review full report at Codecov.

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


feat: add web support (#1)

Rationale
We want to support the web platform, to have one library for all platforms.
Related issues
https://github.com/Expensify/App/issues/26871
Testing checklist

[x] Run a .lottie animation
[x] Run a .json Lottie animation
[x] Test play(), pause(), reset(), resume() methods.
[x] Test source, speed, loop, autoPlay props.
[x] Test onAnimationLoop, onAnimationFinish, onAnimationFailure events.
[x] Test hover and direction new props.

Demo video
https://github.com/lottie-react-native/lottie-react-native/assets/104823336/65ef2de6-e274-4780-9050-0f22b700e38b

It is ready for the review 😇
cc @roryabraham, @matinzd

An edge case here:
It seems there is something wrong when the source is invalid then switching to local json file. The lib cannot recover the new source.
If I switch from invalid URL to dot lottie the source can recover an it starts playing.

Are we going to have a second PR for this? e.g #2? If not please remove "(#1)" from the title.
Thanks for your help and your contribution!

An edge case here:
It seems there is something wrong when the source is invalid then switching to local json file. The lib cannot recover the new source. If I switch from invalid URL to dot lottie the source can recover an it starts playing.
d.mov

I added a solution to that. But it might be better to solve this problem in the used library.

🥳


Corrections in Capture doc

A formatting correction and a code example correction.
I'm new to Perl 6, Pods and git so let me know if I could do any of these things better.

Thanks @parabolize. I've invited you to the perl6 github organisation, so that you can push directly (or merge yourself) in the future, if you want.
Also while you are at Capture.pod, I've noticed a small grammar error: Capture with one positional parts should be "part". Maybe you want to fix that too.


Slices package not found in release builds

Describe the bug
The release build fails with an error suggesting that the slices package can't be found. This should not be the case foe Go 1.20.
https://github.com/dnnrly/layli/actions/runs/6318613274/job/17157967569#step:4:3
Obviously, this shouldn't happen.

Fixed in #27


Is this project dead?

There's been no commit activity in nearly 3 months despite several pending pull requests and a number of issues raised. Would be good to hear from one of the maintainers if this is just a temporary pause and if not, when commit activity is expected to resume.

Hello @jgilfillan , sorry for the delay in getting back to you. The project isn't dead, it's just been temporarily paused whilst other things were being worked on. We are going to put a concerted effort into addressing the open PRs and issues, but any contributions to achieve this would also be welcomed.
Thanks for reaching out, and sorry that it's been a while since the project has seen some ❤


Enhancement - Time delay, process after time, or peek,  function for queue.

Would love to see a feature that would allow a "process after" setting. This would be similar to the "peek" issue https://github.com/firebase/firebase-queue/issues/28 that asks for some sort of pre-check to see if it can be fired off to a worker.
@drtriumph  (Chris) I came across your other post in the google group, and i'd have to say i'm VERY interested in this! Any idea where on the feature bored this one may fall????
(https://groups.google.com/forum/#!msg/firebase-talk/suJTZXG3CgU/wNjfw3ZnCQAJ)
I'm a big fan of the queue, its an awesome addition to the firebase stack!

Your vote has very much been counted. For now the work-around for a delayed job is a 'waiting room' style task that claims a job, resolves it if the condition is met, or delays before rejecting it if not - with a high enough number of retries it should achieve what you need, and you can customize the granularity by changing the delay / number of retries.
I can't promise any changes in the near-term as things are pretty busy here at Firebase HQ, but I do accept PRs ;-)

Response appreciated, i'll give it a look!

This does sound like a great feature - originally I was considering using something like SQS for this, but thought, "wait, shouldn't firebase be able to do this?"

I created firebase-cron to try to solve this. I had been looking for a way to do job scheduling and I think this matches up with firebase-queue pretty well.
I first tried to see if there was a good way to incorporate the cron jobs into firebase-queue so I could just do a PR, but since this is requiring polling the data (due to timestamps changing), I didn't find a suitable place to put this. A separate library also keeps the concerns separate and allows running just the cron scheduling on a server by itself, while still scaling out queue workers.
I'd appreciate any feedback, bug reports, and/or PRs

@doowb Thanks for doing this.  I've been looking for something like this.  Going to take a peek at your examples to understand how to use it.  Will it only push data onto a queue at a specific time or does it also allow running some code at a specific time as well?

It only pushes data into a queue at a specific time (based on the cron pattern). The idea is that you would setup your queue code to run the job when the data is added. This lets you push in any data object and use the same conventions as firebase-queue without firebase-cron needing to know anything about the data.
One feature I'd like to add is a run once method that just takes a time in the future and runs once and removes the object so it doesn't run again. I haven't implemented this yet, but it would be something that would solve some of the use cases discussed here.

I would like to see this feature integrated. Scheduling, delaying, timeouts when workers becomes unresponsive, deadlines. I understand a worker could handle this with custom code, but it's much nicer to have one solution we can all use for such a general feature.

Couldnt we define a spec of a given timeout/2 +retry 1 and let the worker do nothing? so that the next spec starts from the failure of this?

See also this discussion on Google Groups; covers using a tiny worker to query based on timestamp and inject items into the queue at scheduled times.

@drtriumph Regarding your workaround, does a delay then reject() + retries make the queue not FIFO? Does a rejected task get put at the bottom of the queue?


policy errors with polymorphic models

My zmodels are:
abstract model BaseAuth {
    id             String        @id @default(uuid())
    dateCreated    DateTime      @default(now())
    dateUpdated    DateTime      @updatedAt @default(now())

    organizationId String?
    organization   Organization? @relation(fields: [organizationId], references: [id], name: "organization")

    @@allow('all', organization.users?[user == auth()])
}

enum ResourceType {
    Personnel
}

model Resource extends BaseAuth {
    name     String?
    type     ResourceType?
    costRate Int?

    budgets  ResourceBudget[]

    @@delegate(type)
}

model Personnel extends Resource {
}

I get this error when trying to query a resource:
Invalid `prisma.resource.findMany()` invocation:

{
  where: {
    OR: [
      {
        OR: [
          {
            organization: {
              users: {
                some: {
                  user: {
                    is: {
                      id: "553a6c87-3a77-475b-8f56-f5fb59f92630"
                    }
                  }
                }
              }
            }
          }
        ]
      }
    ]
  },
  include: {
    delegate_aux_personnel: {
      where: {
        OR: [
          {
            OR: [
              {
                organization: {
                  users: {
                    some: {
                      user: {
                        is: {
                          id: "553a6c87-3a77-475b-8f56-f5fb59f92630"
                        }
                      }
                    }
                  }
                }
              }
            ]
          }
        ]
      },
      include: {
        delegate_aux_resource: {}
      }
    }
  }
}

Unknown argument `organization`. Available options are marked with ?.

Originally posted by @j0rdanba1n in https://github.com/zenstackhq/zenstack/issues/1734#issuecomment-2404568533

@ymc9 - happy to help fix this if it's a bug - I might just need some pointers

Thanks for filing this @j0rdanba1n . Is this with the latest version? I'll check it and update back here.

Yes - it is with latest version :)

@ymc9 do you have any idea what the problem is? This is currently blocking me. Thank you :)

abstract model BaseAuth {
id             String        @id @default(uuid())
dateCreated    DateTime      @default(now())
dateUpdated    DateTime      @updatedAt @default(now())
organizationId String?
organization   Organization? @relation(fields: [organizationId], references: [id], name: "organization")

@@allow('all', organization.users?[user == auth()])

}
enum ResourceType {
Personnel
}
model Resource extends BaseAuth {
name     String?
type     ResourceType?
costRate Int?
budgets  ResourceBudget[]

@@delegate(type)

}
model Personnel extends Resource {
}

Hey, I can reproduce the issue now. Will try to make a fix in the upcoming v2.7 release.

omg! thank you for such a quick fix <3 when do you expect to release v2.7.0?

Hello, I also have a problem when adding an index on model Resource
@@index([organizationId])
Does not compile for prisma because it copies the index to the delegated model

https://github.com/zenstackhq/zenstack/issues/1786


Add documentation on the process to update weights table.

Hi @ateucher. I started working through the PR function and it is nice - although the values also dont match... hmmm.
I think part of this might be to do with this issue.
Also -  I updated an error in the weights table and realised I cant tell where this is getting called as part of the wesp site object. I think we should make this more explicit with defaults so users can update weights (and perform sensitivity analysis as needed. Would you be able to add this documentation in the new year. Thanks!

@gcperk sorry I didn't come to this until now! To update the weights table in the package, make the edits in the google doc, and then run the data-raw/internal-data.R script. This downloads the data from google docs and and saves the question_metadat and indicator_weightings as internal data objects in the package. After that, reinstalling/reloading the package should make those data objects up to date. I'll add those instructions to the README.
Re making the weights user-editable on the fly, that would require a different infrastructure set up. So let's chat about what that should look like... most people will just do remotes::install_github("BCWF-Wetlands/wespr") and so the workflow above won't work in that case.

@ateucher - Thanks for the update. I am having issues getting this fix to work as it times out while using xl <- drive_find (). I think this is due to my large no of files on gdrive. I think we will need to update this to a separate sheet for future users anyway so perhaps this can be a priority. Happy to chat when you are back on deck.

I think we can replace drive_find() with drive_get() which should help with the search timeout. I can make this change (and update the internal weights data at the same time)?


minimize x2 open of same file and race condition

file was already open when we reopen waste of filehandles
race condition between initial open and reopen to write that could
be used to alter file destination
have to alter human_dump to allow for filehandle so it can also eliminate
x2 open and race for that case
still has race condition between file being written and editor opening it
some editors can read the data 'stdin', skipping the tempfile, but it makes it awkward for user to save normally

Also related to https://github.com/ansible/ansible-navigator/issues/499

@bcoca Can you please rebase the PR and looks into the review comments?


ci: Fix on_release target repositories

:tada: This PR is included in version 1.0.0-beta.47 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


document null return case from User::GetPictureAsync()

the samples, and much of the code in the OS repo, show that this can be null

@ChrisGuzak : Thanks for your contribution! The author(s) have been notified to review your proposed change.


My Actions page tabs look like headers

The tabs on the My Actions page look like they cannot be selected. They need to look like tabs or people will not understand how to navigate the website.

This has been on BETA env. (https://sancho.constitution.gov.tools/).


Requests take too long due to reverse DNS

Hi. I am using jolokia 1.1.2 but I think this applies to latest HEAD as well:
When I issue curl requests from localhost, everything works fine.
When I connect from remote machine, each response has a noticable delay of ~5 seconds. I made a thread dump and it looks like address.getHostName() in JolokiaHttpHandler is taking most of that time - seems like a request for reverse DNS is made there. Is there a way to avoid this?
  java.lang.Thread.State: RUNNABLE
at java.net.Inet6AddressImpl.getHostByAddr(Native Method)
at java.net.InetAddress$1.getHostByAddr(InetAddress.java:898)
at java.net.InetAddress.getHostFromNameService(InetAddress.java:583)
at java.net.InetAddress.getHostName(InetAddress.java:525)
at java.net.InetAddress.getHostName(InetAddress.java:497)
at java.net.InetSocketAddress$InetSocketAddressHolder.getHostName(InetSocketAddress.java:82)
at java.net.InetSocketAddress$InetSocketAddressHolder.access$600(InetSocketAddress.java:56)
at java.net.InetSocketAddress.getHostName(InetSocketAddress.java:345)
at org.jolokia.jvmagent.JolokiaHttpHandler.handle(JolokiaHttpHandler.java:119)
at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77)
at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83)
at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:80)
at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:668)
at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:77)
at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:640)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)

I see you point but this is currently not possible.
The reason why a reverse DNS lookup happens is that the hostname can be configured in a policy file to restrict the access only from certain hosts. In the policy file you can set either the IP or the hostname.
In order to keep backwards compatibility the check against the hostname can not be removed by default but I could imagine to introduce a property noDnsReverseLookup to switch off this particular check (and anything which would do a reverse lookup, too.

I agree with your proposal, thanks

Fixed in 1.3.3


Accept prettier configuration for formatters

Can we expose the ability to configure prettier, which is used in the javascript/esm and javascript/commonJs formatters? This would allow consumers of your library to define the output format of generated files in order to ensure compliance with individual project constraints.
https://github.com/lukasoppermann/style-dictionary-utils/blob/f4f8aded5a89887a54f1f994dadf70888d1111f1/src/format/javascript-esm.ts#L15
https://github.com/lukasoppermann/style-dictionary-utils/blob/f4f8aded5a89887a54f1f994dadf70888d1111f1/src/format/javascript-commonJs.ts#L22

Hey, are you saying you would like to pass the options to prettier?
Like
  return format(output, {parser: 'typescript', printWidth: 500, ...options.prettier})

Which would be provided to the formatter as an argument?

Yeah exactly @lukasoppermann -- Sorry for the late response.


sap.m.Button press event fired twice

OpenUI5 version:
1.40.10
Browser/version (+device/version):
Chrome/Version 56.0.2897.0 (64-bit)
Steps to reproduce the problem:

Press and hold left mouse on button and move the cursor away from the button.
Release left mouse.
Press the button normally.

What is the expected result?
Press event fired once.
What happens instead?
Press event fired twice.

Hi @henrikyt ,
Thanks for reporting that issue.
Internal incident<PHONE_NUMBER> has been opened for this issue.

Hi henrikyt,
we fixed the issue in master branch. Since it's not a severe issue we decided not to downport it to the released branches. So the fix will be available with openui5 version 1.46.
Best regards,
Jiawei

You can use openui5 nightly to test the fix.
https://openui5nightly.hana.ondemand.com/resources/sap-ui-core.js


File list is not displayed on Android 6.0 and targetSdkVersion < 23

hi,
I'm using your library within an application that runs on Android 6.0 but has an older targetSdkVersion=21. When I send the intent to open FilePickerActivity it is displayed empty with no files or folders in the list.
Some debugging showed that FilePickerActivity.init() method is not being called on my device. Looks like this method is responsible for setting this.curDirectory to list files from.
After some googling I found the root cause of the issue here:

If the device is running Android 5.1 (API level 22) or lower, or the app's targetSdkVersion is 22 or lower, the system asks the user to grant the permissions at install time.

Hmm this is an interesting issue. Since your target sdk version is less than 23 the app should be requesting the permissions at install time as you said. That means the permissions should be in the manifest. Are the WRITE_EXTERNAL_STORAGE and READ_EXTERNAL_STORAGE permissions in your app manifest?
I'll definitely have to look into this more.

yep. I have both permissions in my manifest.

This simple fix worked for me: #34

I just merged it and will make a new release. Thanks for this!