"TimeoutException after 0:00:05.000000: No stream event"

I am getting this error on some networks. specially when I submit the app to app store for review they rejected my app 5 times  , because this plugin. It does not respond for infinite time until I have set an timeout of 5 seconds.
I am not getting any issue in my network and it worked well.
below is my code can you please check the issue and resolve it. i have tried time.google.com, time.windows.com but nothing works for app store review.
var networkDate = await NTP.now(lookUpAddress: "time.windows.com", timeout: Duration(seconds: 5));

@uc-dve which version are you using?

I am using version NTP 2.0.0

How often are you calling this?

I am calling it only once while trying to login

hello
Any update on the issue?

Hey sorry for delay. Hmm not really sure, you could try with time.apple.com? Not sure what could cause that since I didn't have problem with app store and this lib.

I am getting this error on some networks. specially when I submit the app to app store for review they rejected my app 5 times , because this plugin. It does not respond for infinite time until I have set an timeout of 5 seconds.
I am not getting any issue in my network and it worked well.
below is my code can you please check the issue and resolve it. i have tried time.google.com, time.windows.com but nothing works for app store review.
var networkDate = await NTP.now(lookUpAddress: "time.windows.com", timeout: Duration(seconds: 5));

Omg! Same with me! My app got rejected as well more than 5 times and i am using this package for all my apps (which are like 5 apps in total). They send me screenshots that they are getting the network error but on my side it works fine. Please let me know if you have found an alternative.

Hey sorry for delay. Hmm not really sure, you could try with time.apple.com? Not sure what could cause that since I didn't have problem with app store and this lib.

time.apple.com does not work on my side.

I am getting this error on some networks. specially when I submit the app to app store for review they rejected my app 5 times , because this plugin. It does not respond for infinite time until I have set an timeout of 5 seconds.
I am not getting any issue in my network and it worked well.
below is my code can you please check the issue and resolve it. i have tried time.google.com, time.windows.com but nothing works for app store review.
var networkDate = await NTP.now(lookUpAddress: "time.windows.com", timeout: Duration(seconds: 5));

Omg! Same with me! My app got rejected as well more than 5 times and i am using this package for all my apps (which are like 5 apps in total). They send me screenshots that they are getting the network error but on my side it works fine. Please let me know if you have found an alternative.

I didn't get any alternative yet I am using my website API to get current time.
Just wrap it with try-catch block and implement your own logic on catch block when timeout exception.
try {
      var networkDate = await NTP.now(
          lookUpAddress: "time.windows.com", timeout: Duration(seconds: 3));
  } catch (err) {
    print("NTP time err $err");
   // I caught this issue by uploading the error and device, info to the firebase.
    return false;
    // throw "Unable to get NTP time.";
  }

Hey sorry for delay. Hmm not really sure, you could try with time.apple.com? Not sure what could cause that since I didn't have problem with app store and this lib.

Hey, still facing this issue with ntp 2.0.0. Is there a fix?

So I can confirm this package is causing the iOS version to be rejected.
I use this package for my API Validations. They weren't able to login into it and rejected the app.
This time, I submitted the app again and used http://worldtimeapi.org/api/timezone/Africa/Nairobi to get my time when i was calling my login API and they were able to log in.
But it still got rejected because when they were going through the app, they weren't able to get access of some sections where the API was called using this package..
Plz let us know if this bug is on your side or not?
I am in a very big dilemma!

@knezzz ??

Not sure why this is happening to you.
I have multiple apps on appStore and know of few apps (Some apps that use it for 2FA) that use this lib and they never had any problems nor were they ever rejected because they used this lib.
My suggestion for now would be to call NTP offset and remember offset locally, don't call NTP.now() since that will return DateTime and you cannot reuse that, but you can reuse offset. Then handle timeout and when offset is fetched just apply it to current DateTime.

I have the same problem: my app got rejected twice on the App Store.
I've been using the approach you have just recommanded @knezzz: fetching the offset once in a while and storing it locally to use it when needed (I had to do it because I need true utc time while in offline mode). I am also calling NTP.getNtpOffset() from inside a try/catch block.
As for @uc-dve, the NTP request didn't seem to ever end when apple reviewers were testing the app and setting the timeout parameter in getNtpOffset solved it.
Thoughts:

May be a timeout value should be set by default to avoid this? Nobody wants a request to run forever.
#16  seems to be a duplicate of this issue, but the OP says that the error occurs when the device is connected on IPv6 only. It might be the explanation of the problem described here.

#36 may also be a duplicate as the OP talks about a NTP.now() request that never ends.

@mr-mmmmore Yeah fix with default timeout seems like best option. I will add default timeout to NTP.now() and that should fix few issues.
But yeah, this is imagined as low level library just to fetch the NTP time. Keeping time synced, managing timeout and possibly saving it to local database is left to the user. Since this will work in pure dart on all platforms, and adding such functionality can only limit the package.

I will add default timeout to NTP.now()

You mean to NTP.getNtpOffset() isn't it? Since now() uses getNtpOffset().

hey, any news about this? I'm facing with this error in some specific devices. cc @knezzz

explaning, in certain devices in certain network the flow is as expected, but in specific devices (as J600GT), this appears.


DocumentView not scrolling

Using the library TextJustify-Android I am not able to make the DocumentView scrollable. The text is shown correctly, justified, however the lower part is cut of instead of making it scrollable. I tried to put the DocumentView in ScrollView but then the text was not even shown...

Can you post some more code please? Your full XML and activity.
—
Sent from Mailbox
On Mon, Jan 26, 2015 at 8:57 AM, Martins Eglitis<EMAIL_ADDRESS>wrote:

Using the library TextJustify-Android I am not able to make the DocumentView scrollable. The text is shown correctly, justified, however the lower part is cut of instead of making it scrollable. I tried to put the DocumentView in ScrollView but then the text was not even shown...

Reply to this email directly or view it on GitHub:
https://github.com/bluejamesbond/TextJustify-Android/issues/60

@sitilge Remove the maxLines attribute

@bluejamesbond Still not working... Updated SO: http://stackoverflow.com/questions/28065571/textjustify-android-not-loading-and-scrolling

Remove the maxLines attribute from the XML layout. Currently you are setting the maxLines which seems to limit the content to just 100 lines. And don't put DocumentView inside a ScrollView because DocumentView is actually a subclass of ScrollView.
As a sidenote, I recommend you check out the SqueezeHyphenator which will hyphenate your text inside DocumentView
UPDATE: It works fine for me. You can see my demo. I can post my demo on Github upon request.
It is possible that you are not calling documentView.requestLayout() after you set the text.

The link to your demo is broken, can you please fix it? I'm having the same issue as OP, but only on devices below API 14.


[FE] Stop project

Vote against the project by transferring investor vote tokens to the governance pool contract. Caller - Investor. which have voting tickets. You will need to call a set function in Governance SC:

voteAgainst(address _investmentPool, uint256 _amount)

@input _investmentPool investment pool address, to which investor transfers tokens by voting against it.
@input _amount tokens amount investor wants to vote with.
Before calling this function investor needs to approve spender with votingToken.setApprovalForAll(governancePoolAddress, true).

Vote against the project by transfering investor vote tokens to the governance pool contract (set function, which requires transaction confirmation, in governance pool contract).
Before calling this function investor needs to approve the spender with votingToken.setApprovalForAll(address governancePoolAddress, bool true), where votingToken is an object of the contract (get from abi and address), governancePoolAddress is the address of GP and true, which indicates that the investor approves the spender.
voteAgainst(address _investmentPool, uint256 _amount)
@input _investmentPool address of the investment pool
@input _amount tokens amount investor wants to vote with
At the end VoteAgainstProject() event is emitted with the investment pool (address) as 1st argument, investor address, who called the function (address) as 2nd and the number of votes the investor transferred (uint256) as 3rd.
If a threshold of 51% was reached, FinishVoting() event is also emmited with the investment pool (address) as argument.
NOTE: Reverts if status is not active voting, if amount is zero, if investor doesn't own any tokens, if amount is greater than token balance.
Usage in Website


hexo-theme-wang

A minimalist Hexo dark theme providing basic functionalities such as comments, copyright information, footer, and social links and more...
一个简约的hexo暗色主题，提供基本功能：评论，版权信息，页脚，社交链接等。
Check List
Please read and check followings before submitting a PR.

[ √ ] I want to publish my theme on Hexo official website.

[ √ ] I have read the theme publishing doc.
[ √ ] name is unique.
[ √ ] link URL is correct.
[ √ ] preview URL is correct.
[ √ ] preview URL web site is rendered correctly.
[ √ ] Add a screenshot to source/themes/screenshots.
[ √ ] Screenshot filename is same as value of name.
[ √ ] Screenshot size is 800 * 500.
[ √ ] Screenshot file format is png.

[ √ ] I want to publish my plugin on Hexo official website.

[ √ ] I have read the plugin publishing doc.
[ √ ] name is unique.
[ √ ] link URL is correct.

[ √ ] Others (Update, fix, translation, etc...)

Languages:
[√ ] en English

fun


--watch

Should poll the status at regular interval (default of 5mn) and update the list of statuses

Should also open the PR in the browser (we'll need a way to find a PR associated with this ref)
Should also display a notification (growl-like) when finished


Documentation: Deploying and Maintaining Infrastructure

As a user of bedrock, I would like documentation that explains how Bedrock makes it easier for me to deploy and maintain K8s one or many clusters at an infrastructure level with Terraform.
This item covers:

[ ] Pattern: Multiple nearly identical clusters differentiated by only small config changes.
[ ] Pattern: Separating template from implementation and how that enables centralized updates and local applications.
[ ] Practice: Scaffolding
[ ] Practice: Generating
[ ] Practice: Versioning and upgrading underlying templates.

related work: https://github.com/microsoft/bedrock/issues/735


Fix errors under pep8 1.6.1.

Only surfaced on Travis, or with 'tox --recreate -e lint'.

Coverage remained the same at 100.0% when pulling f32a2a0af566f2a45e3b75955e2b2a21bfec4446 on tseaver:fix-new_pep8_errors into b6162035482eed4b778e7ba406826eb247fcb224 on GoogleCloudPlatform:master.

LGTM


brew search take 30+ seconds

A Brew search takes 30+ seconds, which seems strangely long.
$ time brew search urlwatch
No formula found for "urlwatch".

real	0m37.175s
user	0m35.039s
sys	0m0.718s

I noticed traceroute struggles. Is there a problem in the Github server park? (However, searches and updates have been slow for as long as I can remember, so it doesn't seem like a temporary issue.)
$ time traceroute github.com
traceroute: Warning: github.com has multiple addresses; using <IP_ADDRESS>
traceroute to github.com (<IP_ADDRESS>), 64 hops max, 52 byte packets
 6  <IP_ADDRESS> (<IP_ADDRESS>)  7.791 ms
    <IP_ADDRESS> (<IP_ADDRESS>)  7.955 ms
    <IP_ADDRESS> (<IP_ADDRESS>)  7.351 ms
 7  <IP_ADDRESS> (<IP_ADDRESS>)  7.161 ms  7.898 ms  6.843 ms
 8  * * *
 9  github-inc.bear1.washington111.level3.net (<IP_ADDRESS>)  114.132 ms  118.557 ms
    github-inc.bear1.washington111.level3.net (<IP_ADDRESS>)  118.196 ms
10  * * *
11  * * *
12  lb-192-30-253-112-iad.github.com (<IP_ADDRESS>)  118.241 ms  119.489 ms  117.420 ms

real  0m45.922s
user  0m0.007s
sys 0m0.011s
$

[x] Confirmed this is a problem with running a brew command?
[x] Ran brew update and retried your prior step?
[x] Ran brew doctor, fixed all issues and retried your prior step?
[x] Ran brew config and brew doctor and included their output with your issue?

HOMEBREW_VERSION: 1.3.1
ORIGIN: https://github.com/Homebrew/brew.git
HEAD: 69799d97b1e7314912b2ee234dec2c179c5fb969
Last commit: 7 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 945239ea8908a69dc1466c85fbf61a929becc416
Core tap last commit: 42 minutes ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: quad-core 64-bit haswell
Homebrew Ruby: 2.0.0-p648
Clang: 8.1 build 802
Git: 2.11.0 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Perl: /usr/bin/perl
Python: /usr/local/opt/python/libexec/bin/python => /usr/local/Cellar/python/2.7.13_1/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
Java: N/A
macOS: 10.12.6-x86_64
Xcode: 8.3.3
CLT: <IP_ADDRESS>.1.1492020469
X11: 2.7.11 => /opt/X11

Don't create duplicate issues, please: https://github.com/Homebrew/homebrew-core/issues/16783

You haven't said anything about why the search is taking so long. Is it because Homebrew has to make a roundtrip to thousands of repositories to retrieve information?

I've opened https://github.com/Homebrew/brew/pull/3059 to add output which will explain why it takes the time it does. In short: it's searching local taps, then remote taps on GitHub using their API then blacklisted formulae, then formulae migrated to other taps and finally (if it can't find any results anywhere else) checking the entire history of the Homebrew project to see if this formula was ever present.

Shouldn't this be cached in a central place, even possibly locally, since Homebrew is updated on a daily basis, and a database table representing relevant search data couldn't take up much space.

Perhaps it should but it currently isn't and implementing this would be a non-trivial task (that we'd welcome pull requests for).

It's not uncommon for successful projects to run into issues where optimisation is needed. I understand that fixing it is not trivial.
How long does each phase take (local, remote, blacklisted, migrated, history)?
If most of the formulae most people are interested in are in the first couple of categories, and these are quick compared to the latter, could a workaround be a command line controlling the search depth?
brew search popular-brew
brew search --deep obscure-brew

Another could be to interactively inform the user about each new search stage, so you can Ctrl+C when find you deem it unlikely you'll find what you were looking for, but I think I would find that annoying.
The ideal situation is a search that returns results and the command prompt as soon as possible.

Another could be to interactively inform the user about each new search stage, so you can Ctrl+C when you deem it unlikely you'll find what you were looking for, but I think I would find that annoying.

This now happens.

Well, you're right, but for the novel user the output is not very intuitive (though brevity is mostly a good thing!) Anyway, I hope searches (and updates, since they started happening daily some time ago) will be blazingly fast some day soon. Homebrew is impressively smooth and problem-free, but this is a bit of sirup in the cogwheels.

We've tried to make both as fast as possible. Any additional work will need to come from the community.


⚠ Bofrost.lu has degraded performance

In 065d719, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1159 ms

Resolved: Bofrost.lu performance has improved in 56f6704 after 7 minutes.


Cli freezing without any strange activity

I'm submitting a ...
[X] bug report
[ ] question about the decisions made in the repository
Action taken
I have run the cli in papertrader mode with one of default strategies (CCI) with ticketrate set to 5 seconds on kraken.
My gekko version is 0.6.8
my node version is v.11.0.0
Operation system is OSX Mojave
Expected result (what you hoped would happen)
Every 5 seconds i should see something in the cli.
Actual result (unexpected outcome)
From 18:25 until 18:30 of the same day i see:
Requested BSV/USD trade data from Kraken
No new trades.
but after that 5 minutes everything freezes, and no more activity from the cli.
I'm writing only to understand how can i debug and provide more informations, since i haven't got nothing in the logs, or maybe i'm seeing wrong logs.
In the pasts issues there is nothing about this.

I add: the node process is reaching 99,6% of cpu everytime when stucks happens.

Ok, i have made some progresses.
I have disabled telegram plugin, and at the moment i wasn't still able to make the app freeze again, so we need to understand what is causing the issue and avoid this freeze, even if the plugin will not reply correctly.
I have done some searching in the history and i have found these two issues which are related and never continued:  #1031 #639

Kraken's API is very unstable, polling it every 5 seconds is definitely not recommended. I will try to replicate.
Note that Gekko batches all trades in 1 minute candles anyway, there is little benifit in polling that quickly.


updated the anker with a new Hyper-Reference

old: ./opensource_programs/index.html
new: ./pages/open-source-programs/index.html
Description
Chore: Fix 'Open Source Programs' Link in Landing Page Footer #386
We need to fix a broken link in the landing page footer that heads to the 'Open Source Programs' page.
Step 1: Go to client/components/footer.js
Step 2: Find the following link under ...
Open Source Programs
Step 3: Change it to
Open Source Programs
Exactly what I fixed.
Category

[ ] Documentation
[ ] Resource Addition
[X] Codebase
[ ] User Interface
[ ] Feature Request

Related Issue
Fixes #386

Hi Sriparno, I noticed that the dark mode on the landing page is not very easy to read. The cards that are used are displayed in a light blue color and the font changes to white as soon as the dark mode is activated. This means that you can no longer read the information on the cards. If you want I can take care of it and create a new issue.
Best regards

Hey @MrVioz, I get your point. However, the cards on the landing page currently look like the following:

In my opinion, it looks easy enough to read. So, I guess we don't need a new issue on this topic for now.

No, sorry. I made a mistake in the description of the page. I meant the page "Beginner-friendly-Repos". I've added a screenshot for you.

Got it. For this one, you can create an issue. I'd prefer the container background color to be white and the text color to be black. I tested it and it looks good.


Endpoint /v1/users/adw0rd/usernameinfo/ does not exists

when running the sample script:
from instagrapi import Client

cl = Client()
cl.login(ACCOUNT_USERNAME, ACCOUNT_PASSWORD)

user_id = cl.user_id_from_username("adw0rd")
medias = cl.user_medias(user_id, 20)

getting and error started with this error:
Endpoint /v1/users/adw0rd/usernameinfo/ does not exists

the eror was :
instagrapi.exceptions.UserNotFound: User not found


CB-7956 Add cordova-plugin-file support for browser platform

Added Firefox and IE support via IndexedDB
Updated the docs
Updated the tests

Rebase please

@purplecabbage Done.

@purplecabbage Ping.

Thanks!


Decorations offset horizontally after zooming in

Test item #19061

VSCode Version: Code - Insiders 1.9.0-insider (4265f5e35cb3ea8ba7e0cf6b14ec606b6f8647ea, 2017-01-24T10:37:36.620Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions: None

Steps to Reproduce:

Arial, zoom 0
Select some css property
Zoom in one step
Decorations are offset horizontally:

Also when zooming out. Here's the cursor movement when I repeatedly press arrow-right.

Marking as important for awareness.

Yes, lines are not repainted when changing zoom level, which leads to their previous offset caches being used. Scrolling the line up and back down in the viewport is a possible workaround or typing, etc.


refactor(social-image): Replace dynamic social image with static image

This PR replaces the dynamic social image with a static image.

Not super necessary, but maybe the new social image could be compressed a bit (currently it's 800KB)?

True! I exported it to jpg and the file now weights 244kb


Compile failures with -fno-lax-vector-conversions

Command: clang simde/arm/neon/qsub.h  -Werror -O0 -Wno-c++11-narrowing -I.
Seems like there is an issue here:
https://github.com/simd-everywhere/simde/blob/master/simde/arm/neon/qsub.h#L331
simde/arm/neon/qsub.h:331:17: error: cannot convert between vector type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values) and vector type '__attribute__((__vector_size__(2 * sizeof(uint32_t)))) uint32_t' (vector of 2 'uint32_t' values) as implicit conversion would cause truncation
      r_.values &= (r_.values <= a_.values);
                ^
simde/arm/neon/qsub.h:360:17: error: cannot convert between vector type '__attribute__((__vector_size__(1 * sizeof(long long)))) long long' (vector of 1 'long long' value) and vector type '__attribute__((__vector_size__(1 * sizeof(uint64_t)))) uint64_t' (vector of 1 'uint64_t' value) as implicit conversion would cause truncation
      r_.values &= (r_.values <= a_.values);
                ^
simde/arm/neon/qsub.h:666:17: error: cannot convert between vector type '__attribute__((__vector_size__(2 * sizeof(long long)))) long long' (vector of 2 'long long' values) and vector type '__attribute__((__vector_size__(2 * sizeof(uint64_t)))) uint64_t' (vector of 2 'uint64_t' values) as implicit conversion would cause truncation
      r_.values &= (r_.values <= a_.values);

Do we need a reinterpret cast here?

I would like to reopen this, I found more compilation issues in simde_vcvtq_u64_f64:
arm_neon.h:30267:99: error: cannot convert between vector type '__attribute__((__vector_size__(2 * sizeof(const double)))) const double' (vector of 2 'const double' values) and vector type '__
attribute__((__vector_size__(2 * sizeof(simde_float64)))) simde_float64' (vector of 2 'simde_float64' values) as implicit conversion would cause truncation
      int64_t max_mask SIMDE_VECTOR(16) = HEDLEY_REINTERPRET_CAST(__typeof__(max_mask), a_.values > max_representable)

I also have a small repro case here: https://godbolt.org/z/7zfvYavGv
The "fix" seems to be adding a const? Is this a bug in the compiler?

How do you feel about removing "const" from the various constants so that I can get this into Emscripten first, It doesn't feel like a good fix, but it can unblock merging into Emscripten. I can also add a comment referring to this bug in all those places. (IIRC there's not a lot of them, maybe ~8 functions in total.)

No need.  After a bit of playing around, I figured out that the problem only occurs when the vectors are declared like this:
const int32_t v __attribute__((__vector_size__(16)));

Instead of;
const int32_t __attribute__((__vector_size__(16))) v;

So if we just move the SIMDE_VECTOR(x) to before the name it works as intended everywhere.

I fixed most of these issues over the weekend with what is in staging right now.  There are still some failures on drone (arm), but I'll try to resolve those soon

Done.


Update props

[x] Add prop for autolinking in applicable elements such as <Text> and <Paragraph>
[x] Add ...rest to all existing components props
[ ] Check all applicable props for React and add custom checking for each one if/as necessary
[x] Use forward refs whenever possible
[ ] Add generic props for most components with text (fontFamily, fontSize, fontWeight)
[ ] Add generic props for most components with color and background color (foreColor, backColor)
[ ] Add generic props for most components for padding and margins, if possible
[ ] Add style props to all components
[ ] Clean up docs and reference common API at the top
[ ] Check HTMLreference for component-specific props

TODO: Check usage of ..rest and if it should always apply to top-level DOM element. Evaluate for all components.

**CHECK: ** forwardRef has only been used in the components where it is absolutely necessary as to not overcomplicate the API.

CHECK: Nothing left over in HTMLReference.
CHECK: style is part of ...rest, nothing to do there.


Custom data and Custom Training

Hi,
Thanks for your great work. I was wondering if you any comments/ code for these points below:

Custom data preprocessing: I wanted to know how did you come up with npy files for train and test for both RGB and Depth splits? Can you please share the preprocessing code for the same with some clear instructions?
Custom Training: If we have to custom train on our own datasets, how do we come up with the files for training from custom data?
Visualization: It looks like visualization code is missing in the current repo. Can you please let me know how can I get access to the visualization code?

Looking forward to your help and thanks in advance.
Best.

The npy files are only used in NYUv2 dataset, provided by DKN. Thus, we do not have the processing code.
But don't worry! The npy files just aim to save the maximums and minimums of depth maps, for normalization. If you need to train on your own datasets, please refer to https://github.com/yanzq95/SGNet/blob/7830cf7d2dba83f6d6f0e20f3b8973d0bcdc2cbd/data/rgbdd_dataloader.py#L106. Feel free to build your own dataloader based on the the rgbdd_dataloader.py file.
In several days, we will update the train.py and test.py for all datasets, and add the codes of saving depth & visualization in test.py.
Thanks for your valuable comments!

The npy files are only used in NYUv2 dataset, provided by DKN. Thus, we do not have the processing code.
But don't worry! The npy files just aim to save the maximums and minimums of depth maps, for normalization. If you need to train on your own datasets, please refer to
https://github.com/yanzq95/SGNet/blob/7830cf7d2dba83f6d6f0e20f3b8973d0bcdc2cbd/data/rgbdd_dataloader.py#L106
. Feel free to build your own dataloader based on the the rgbdd_dataloader.py file.
In several days, we will update the train.py and test.py for all datasets, and add the codes of saving depth & visualization in test.py.
Thanks for your valuable comments!

Thank you @yanzq95  for the response. I look forward to any additional code you can provide.

Visualization code:
https://github.com/yanzq95/SGNet/blob/0aba40f0214898dd841cbbddf0d267ea473d6841/test.py#L133


E2E Encryption: Support more keyring strategies

We have a platform which runs a WAMP router, that system also has a secure element. each user (mobile phone / website) has their own public/private key generated on login. The current implementation in autobahn ties the Key (mix of originator and responder keys) to a URI.
This is mostly fine however in our case it is desired to have 1 responder and multiple originators, the originators can dynamically change as people are added/removed from the system.
From the look of it, it is currently not possible with the autobahn-python API. There are two changes that I think will make the above possible

The Key object should support multiple originators (a list)
the enc_key in the Invocation should be used to determine if the originator is "expected"

pls see my comments https://github.com/crossbario/autobahn-python/issues/1586#issuecomment-1198653850 - which roughly apply here as well. "E2Ev2" is the way forward, not "E2Ev1" ... but even more so, we need to have a proper design and spec first (eg https://github.com/wamp-proto/wamp-proto/pull/417) before jumping into moving code around ...


Keep special workspace open when toggle scratchpads

Hi.
Currently toggling scratchpads will close the opening special workspace. I think it's unexpected?
And this feature need Hyprland version >= 0.39.0 due to:

https://github.com/hyprwm/Hyprland/issues/4803

Maybe need to add an extra parameter in config file for compatibility.

Hi, @fdev31.
I update the code.  Please take a look.

Looks good, would have been easier if you use "rebase" instead of "merge" for the integration of it but thank you for this contribution with a great respect of the style!

Rebased, available in version 2.2.8-10

I had more thoughts about it and will change it slightly:

option name is now "allow_special_workspaces"
I am wondering if it's good to enable it by default, I don't have the right Hyprland version yet to test it... there are no quirks when randomly toggling the special workspace & some scratchpad ?

I am wondering if it's good to enable it by default, I don't have the right Hyprland version yet to test it... there are no quirks when randomly toggling the special workspace & some scratchpad ?

I think it works well when version is < 0.39.0. I test it in my local device with version 0.35 and the behavior is as expected. I am using arch Linux, and spend almost whole afternoon to install the latest version of Hyprland but fail. According to the behavior in lower version, if the bug is fixed well, I think it will work well.

yes, <0.39 are "protected" anyway... but do you have doubts about 0.39+ ?
Can you please tell me what went wrong installing pyprland ?
The pyprland-git in AUR didn't work ?
I'm also using Archlinux & maintaining the AUR packages so I can probably help here...

Can you please tell me what went wrong installing pyprland ? The pyprland-git in AUR didn't work ? I'm also using Archlinux & maintaining the AUR packages so I can probably help here...

The pyprland-git is good for me. I just cannot install hyprland-git 0.39.1 which require hyprcursor. However the hyprcursor require hyprlang >= 0.4.2 and hyprlang in the extra source is 0.4.1. I tried to complie on my local device but it cannot be recognized.


Added new CC. Fixes #13129

Please check why the src/ontology/imports/ncbitaxon_import.owl  file is change (and reject changes if possible!).
Thanks, Pascale

I am closing this pull request since the taxon file got unintentionally (and incorrectly) changed.


Add the possibility to prefill the answer

Is your feature request related to a problem? Please describe.
When creating prompts for editing a file for example, some values may already have been filled previously. Instead of only showing it as placeholder and needing the user to retype it, it would be great if it was there and editable.
Describe the solution you'd like
An option on input to add a string as a default value that will be prefilled in the input

Hey @Iilun, this is possible if you set the variable to the default value you want:
value := "default value"

huh.NewInput().Value(&value).Run()

The field will be pre-filled with the value ("default value")

@maaslalani All the fields can be prefilled with Value(&value), except Select and MultiSelect. I know I can achieve the same behavior with huh.NewOption(...).Selected(true), but not with huh.NewOptions. Is this on purpose? Using Value(&value) would be interesting in scenarios when editing existing data and keeping consistency with other field types.
If this behavior is not intended, I'd love to open a PR fixing it!

@maaslalani before moving forward with the fix, what should happen if I have both value and Selected(true)? Eg
huh.NewMultiSelect().
    Options(
        huh.NewOption("lettuce", "lettuce"),
        huh.NewOption("tomatoes", "tomatoes").Selected(true),
        huh.NewOption("cheese", "cheese").Selected(true),
    ).
    Value(&toppings).
    Run()

I think the correct solution here would be to take the union of the two defaults. In this case all three would be selected as lettuce is in the toppings and the other two are selected.


chore: add markdown linters

Signed-off-by: bitliu<EMAIL_ADDRESS>

Codecov Report

Merging #572 (7d56fdd) into main (39456ca) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #572   +/-   ##
=======================================
  Coverage   60.63%   60.63%
=======================================
  Files          46       46
  Lines        5576     5576
=======================================
  Hits         3381     3381
- Misses       1985     1988    +3
+ Partials      210      207    -3

Impacted Files
Coverage Δ

internal/provider/kubernetes/tlsroute.go
53.02% <0.00%> (-6.05%)
:arrow_down:

internal/provider/kubernetes/gatewayclass.go
68.84% <0.00%> (-1.45%)
:arrow_down:

internal/provider/kubernetes/gateway.go
51.74% <0.00%> (+2.62%)
:arrow_up:

internal/provider/kubernetes/helpers.go
80.43% <0.00%> (+6.52%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Is the race condition still happening with ekco?

As per here: https://kurl.sh/docs/add-ons/ekco#reboot
"The shutdown script may fail to complete because it depends on services running on the node to be available to delete pods, but these services may already be shutting down. To avoid race conditions, manually run the ekco-reboot service's shutdown script prior to proceeding with system shutdown or reboot"
Just aware having to manually run a shutdown script is problematic if you accidentally do something like rebooting the kurl server.
And I noticed this pull request: https://github.com/replicatedhq/kURL/pull/1560
Does that fix it?

Just checking up on this, is this still an ongoing issue?

Yes, the script must still be run before shutdown to safely unmount PVCs.

Yes, the script must still be run before shutdown to safely unmount PVCs.

Is there a timeline on a fix for this, or is it a gradual kind of thing?
Thanks.

There's no timeline because there's no known fix.

Could part of getting stuck be that the service doesn't have enough time to perform all shutdowns? Services have a 90s timeout for ExecStop on shutdown.

Hi @evilmonkeyslayer,
This one is very old and is possible that the behaviours are changed in the latest versions.
So, I am closing this one. However, if you check that the latest version still requiring address something related to this topic please feel free to re-open and let us know from the current state what would still missing and what should be done instead.
Thank you for your attention.


Azure Bastion with UDR VNet Peering override

Hi,
Azure Bastion works fine in Peered Virtual Networks in a Hub-and-Spoke configuration, even with an User Defined Default Route (UDR) to send traffic over a Network Virtual Appliance (NVA) acting as firewall (UDR: <IP_ADDRESS>/0 -> NVA). However to control the traffic between spokes, the System Route between peered networks must be overriden by another UDR send traffic to the firewall first, rather than directly to the peered network (UDR: HubVNET -> NVA). Once this override UDR is in place, Bastions do not work any more between these (formely) peered networks. Would there be an hidden private IP address space that need to be added to the UDR in order to make this work?

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

ID: e03fe8f3-cb91-cb10-8e72-5e6c6270f644
Version Independent ID: c11d8e02-48e2-9250-fa59-3f00114c765c
Content: VNet peering and Azure Bastion architecture
Content Source: articles/bastion/vnet-peering.md
Service: bastion
GitHub Login: @cherylmc
Microsoft Alias: cherylmc

@aggerritsen , thank you for your query. We'll investigate this and get back to you shortly!

It turns out that adding Longest Prefix match for all individual subnets in the VNet rather then the entire VNet IP address space works very well. It is however quiet a lot of work and when subnets evolve, like when adding AKS subnets, every time the Route Table needs adjustment. Is there an alternative way around this?

@aggerritsen , I checked with the Azure Bastion Product Group team and they mentioned there is no other alternative as of yet but they are working on supporting the UDR scenarios for Azure Bastion (No ETA as of today).
Either: You have to add Longest Prefix match for all individual subnets in the VNet rather than the entire VNet IP address space.
OR: I have seen a similar scenario where the customer was able to solve this by just using an entirely different address space for Bastion (dedicated Vnet and subnet) and peering this dedicated Bastion Vnet to the other Vnets in the hub-spoke model.
Reference : https://docs.microsoft.com/en-us/answers/questions/929048/azure-bastion-and-hubspoke-with-udrs.html
You could give this workaround a try.
We are closing this issue for now. If there are further questions regarding this matter, please reply and we will gladly continue the discussion.


Fix filter display value

References [link the ticket here]
Motivation and context
[Describe the problem we're solving and lay out the solution]
Before
[Describe the current behavior and / or add a screenshot of the current state]
After
[Describe the new behavior and / or add a screenshot of the new state]
How to test
[Add a deep link and instructions how to verify the new behavior]

Created new PR with different approach to this problem.


fix: get 'GET' variables

Redirection to url with language, GET params are lost.

Hey @pronikell, thank you for spotting and fixing this error 👍


Upgrade to Manifest 2.0

Getting this warning:
julia> using PkgTemplates

julia> t =<EMAIL_ADDRESS>
Template:
...

julia> t("GraphSignalProcess")
[ Info: Running prehooks
[ Info: Running hooks
  Activating project at `~/.julia/dev/GraphSignalProcess`
    Updating registry at `~/.julia/registries/General.toml`
┌ Warning: The active manifest file at `/Users/vp/.julia/dev/GraphSignalProcess/Manifes
t.toml` has an old format that is being maintained.
│ To update to the new format, which is supported by Julia versions ≥ 1.6.2, run `Pkg.u
pgrade_manifest()` which will upgrade the format without re-resolving.
│ To then record the julia version re-resolve with `Pkg.resolve()` and if there are res
olve conflicts consider `Pkg.update()`.

Had the same Warning Message today using interactive mode. Using Julia 1.8.3


[Bug] WADO call instead of QIDO

Describe the Bug
Hello👋
I'm observing strange behavior on the new OHIF version.
I'm using the viewer setup by overriding the default configuration. I set the default.js file with wadoUriRoot and wadoRoot to my wado endpoint, and qidoRoot to my qido endpoint.
However, when I load a series in the viewer, I'm facing a strange call:
https://hostname/my_wado_endpoint/studies/<IP_ADDRESS>5769650.1.49565750525656/series?SeriesInstanceUID=<IP_ADDRESS>.1<IP_ADDRESS>.1103.2.201005141318130750
Here the call looks like a QIDO call, not a WADO one.

It would be constructive to give me feedback on this analysis.
Steps to Reproduce

Load a series via a direct URL to the viewer: https://hostname/.../ohif/viewer?StudyInstanceUIDs=<IP_ADDRESS>5769650.3317998548.3382173681&SeriesInstanceUIDs=1.2.840.113619.2.278.3.655633.665.1340370393.118.3

The current behavior
The call https://hostname/my_wado_endpoint/studies/<IP_ADDRESS>5769650.1.49565750525656/series?SeriesInstanceUID=<IP_ADDRESS>.1<IP_ADDRESS>.1103.2.201005141318130750
is targeting WADO url
The expected behavior
https://hostname/my_WADO_endpoint/studies/<IP_ADDRESS>5769650.1.49565750525656/series?SeriesInstanceUID=<IP_ADDRESS>.1<IP_ADDRESS>.1103.2.201005141318130750
Must be:
https://hostname/my_QIDO_endpoint/studies/<IP_ADDRESS>5769650.1.49565750525656/series?SeriesInstanceUID=<IP_ADDRESS>.1<IP_ADDRESS>.1103.2.201005141318130750
This WADO URL must target the QIDO endpoint !
OS
Windows 10 Professionnel
Node version
16.19.0
Browser
Chrome Version 118.0.5993.89 (Build officiel) (64 bits)

Unfortunately, on the demo server, all the calls QIDO and WADO are sending to the same URL

This is because of this default configuration in the default.js file:

Can someone test with different endpoints for QIDO and WADO to confirm, or reject, the issue please?

@nicoesiea Do you have a demo server with different QIDO and WADO?

I'm sorry @sedghi but I do not have a public server.
However, you can start a local instance and easily verify

what do you mean a local instance. Local instance of what?

A local instance of OHIF viewer running with a local instance of a backend server (like orthanc, or your own PACS system) in my case, I'm creating the backend responding for WADO and QIDO query returning the data from my file + my database

This is related to #2711

Yes true, this is exactly the same bug
Remember:

I let you define the new status of this issue, should probably be closed, or marked as duplicated

I like to keep this one open too since it has a lot of useful details, but we will look

@nicoesiea would you be able to take a look at @sedghi comment above and help with response? We are looking to clarify to include bug fix in the next version. Thanks

@nicoesiea can you let us know which branch were you seeing this issue on?

This is still an issue with latest app docker image (so v3.8 series). If the qido and wado URLs are identical (e.g Orthanc) then there is no issue. When they are not identical, then this becomes a problem with the call going to wado endpoint.
For me this happens only with enableStudyLazyLoad true. My hypotheses is that this is thrown in RetrieveMetadataLoaderAsync. There is a search for series in the getPreloaders function. I am assuming the client passed to this is the wado client and the search calls made on lines 111 and 114 would be using the Wado client when they should be the qido client.
Fix would be to pass both clients to any functions doing search and load.

hey @parneshraniga can you share with us some reproducible steps that we can take a look please?

Running standard docker app container with dicomweb pointing to an inhouse dicomweb pacs which has separate URLs for wad, qido and stow. If enableStudyLazyLoad is true, a qido call is made to wadoRoot/studies/{study_uid}/series. This is not path that is the spec for WADO. Moreover the accept type is application/dicom+json or application/octet-string. On our server this fails as it's not a path we support and the application hangs.
I looked into the Viewer code to get an idea of where this might be coming from I suspect that this is because the qido call to get all instances "metadata" for the series is being made using the wado client.
This seems to be a known issue. https://github.com/OHIF/Viewers/issues/1163#issuecomment-553771840


url has port，how to do it.

I want to run with my server,but i  can`t to get picture from url.i think maybe url has  port is the problem。

I found this is not question about url contain port not to get information .this question is url contain special characters


Retrieve AddDevice result

As a grid operator, after a request to AddDevice from the SmartMeteringInstallation service, I want to be able to retrieve the result by issuing an AsyncRequest using the correlation UID from the initial call.

User story
As a Grid Operator,
I want to  retrieve the result for an addDevice request from the SmartMeteringInstallation service by issuing an AsyncRequest,
so I have a consistent way of retrieving the results for asynchronous calls
Scenarios
Retrieve result
Given I have sent an addDevice request to the SmartMeteringInstallation
When the device has been added
Then I get a notification containing the Correlation UID
and I can retrieve the result by issuing an AsyncRequest using the Correlation UID
Removal of result
Given a device has been added for an addDevice request
When I have retrieved the result for the addDevice call
Then the result of the addDevice call is no longer stored in the platform

@elhachhouchi should this be in the current sprint or not? @rudidevries picked it up, because there was no other work at that time.

I have worked in a branch called "feat-retrieve-device-result".  I have added changes to store the result type in the database, and added this to two of the webservice methods. So this story is not completed, but the changes could be merged without problems.
I have merged the pull request of "feat-smartmeter-set-tariff" because this has some overlapping changes. As this pull request is not yet merged, I will not create a pull request at this time. I will merge with development later.

Current status: OSGP part of retrieve AddDevice result is completed, and has been merged to development. It has not been added to the demo app, as this is waiting for other changes related to device management.


Add ability to include other toml buildscripts into a build script

A Toml buildscript can define an array of relative path to other Toml buildscripts which will be recursively parsed depth first and applied to extension objects. The paths are relative to the current buildscript. Processing a Toml buildscript creates a side effect in form of cached extension objects. All build script parsing now shares the same cache. The scripts are processed in the order they are declared in the array and the nested file is processed before the file that includes it. Plugins are applied first to make the extension objects available to configure before the nested file processing ensue. The result of this order of processing is that the declarations in the included file are overriden by the file that includes it. Similarly, the files that precedes in the incude array have it's declarations overriden by the files that are at the higer index in the include array in case of conflict. Current test include loading a single library project with the nested buildscripts without verification. More tests will be added as we build our test infrastructure for verifying whether the DSL is applied correctly or not.

I mistakenly updated the commits instead of submitting incremental commits. I'll make sure that this does not happen in future.


Added Contact Section

Issue Title: Back to Top Button
Issue Number: #16
Close #16
Checklist:

[x] I have mentioned the issue number in my Pull Request.
[x] I have commented on my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy-to-understand README.md
[x] The Contact Us works well on different devices.

A small Description of the project :
Description:
This pull request enhances the functionality of the "Contact Us" Section in the HTML document by adding smooth scrolling behavior and dynamic visibility based on the user's scroll position. Here are the key changes:
CSS:
Improved the styling of the button for better user experience.
Added a smooth transition effect on hover to make the button more interactive.
Here is the Video Illustration of the Feature:
https://github.com/divyanshudhruv/Minifolio/assets/129049677/64d70138-70f0-4f76-8fea-d2804cf6cfb6

@divyanshudhruv Check this Section, Sir... And Merge it and  about the bug will fix it..If you just find after which commit this type of error comes it will be better... You Can Check the bug by just Cloning your own repo to local..

@Kapileswar-Moharana Ok, but Please change the merging branch to divyanshudhruv:changes

@divyanshudhruv Aree Bhai Kya Seen haii appka Ak barrr main nahii bol sakte... fir see code deletee krke issues banaoo...


Eclipse support

Will be good.

+1

+1
Thanks
Rajesh Battala
On Apr 22, 2016 7:04 PM, "Nikita Volkov"<EMAIL_ADDRESS>wrote:

+1
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/kiteco/plugins/issues/26#issuecomment-213430144

I interrested too i will do it and let you know

Eclipse support is not in our near term plans unfortunately!


chrome console the error:this.pluginApi.pauseMedia is not a function

After I initialized the player,it can play the video.But then I hide the video player.While I show the player and give another url to the video player,the chrome console the error:this.pluginApi.pauseMedia is not a function.I guess I must initialize the video player again,but I can't find the method.

@yang06061079 we are releasing tomorrow the new version of the player. Once it's out, can you check if it's still an issue, please? This new version has rewritten the core package and fixed at the same time many bugs

I will try.Thank you!

@ron666 I will try.Thank you!

You can check it now

This issue will be closed since the pluginApi variable doesn't exist anymore on the current version


Example?

Any example on how to use this?  I'd like to use JWT for my services.  Looking at the Auth from Vapor itself, I don't know why they have their own login with Vapor auth header.  Kinda defeats the purpose.  I'm just looking for an example that will pull a User on each request and attach to the request.
Also, why would the secrets not be added to source control?  ALL configuration should be under source control, period.  And configuring JWT is - well - configuration.

This is a very new package. Please bear with us while we flesh out the API and provide documentation. Here's an example of how to use it:
import Auth
import Vapor
import VaporJWT

// use Ints as ids
extension Int: Credentials {}

// conform Node to payload
extension Node: Payload {
    public func makeCredentials() throws -> Credentials {
        guard let id = self["id"]?.int else {
            throw Abort.custom(
                status: .badRequest,
                message: "missing id")
        }
        return id
    }
}

let drop = Droplet()
try drop.addProvider(VaporJWT.Provider.self)

// pass all requests through our JWT login middleware
let loginMiddleware = LoginMiddleware(
    signer: try drop.jwtSigner(),
    payloadType: Node.self)
drop.middleware.append(loginMiddleware)

// use protect middleware to check for valid user
let credentialError = Abort.custom(
    status: .forbidden,
    message: "Invalid credentials")
let protect = ProtectMiddleware(error: credentialError)

// require valid user for requests to "/"
drop.grouped(protect).get { req in
    "Protected"
}

drop.run()

If used with the following (not-recommended!) jwt.json:
{
    "signer": {
        "type": "unsigned"
    }
}

and a request with Authorization header: Bearer eyJhbGciOiAibm9uZSIsInR5cCI6ICJKV1QifQ==.eyJpZCI6ICIxIiwibmFtZSI6ICJKb2huIERvZSJ9.ZTUwYWQ2Mzg4NDU0MmYzNWJkMWM0YjVkNjlkYWYxODFiYWZlZTA5MjBmOGM3MGEyMTEwYWU3NGM3ODFkMzRhOQ== this will use Turnstile to try to authenticate using the credential 1. This will fail but is outside the scope of JWT.
The jwt.json file contains the key which which JWTs can be read and/or signed. This is way too sensitive information to be left under source control in plain text where it will be shared with GitHub and any collaborators on your project.
See: https://vapor.github.io/documentation/guide/config.html.

@treaves once the 1.0 tag is released we will put up the documentation under docs.vapor.codes.

Any timeline for this ? I'm building an API that require son token and this provider seems to be a nice way to start !

@Alex293 no timeline unfortunately (that I know of) but you're welcome to ask to join us on Slack if you have any questions


Font size dropdown not defaulting to "normal" with manual HTML toolbar

Expected:
When you select a text with "normal" font size, the dropdown should reflect that selection.
Actual:
Dropdown shows "large" or "small" but never goes back to "normal". It looks to be only happening with manually created HTML toolbar and only with React. Tired modding official Quill codepen to manual toolbar and it works there with plain HTML.

I assume this is because of the way React handles select tags - https://facebook.github.io/react/docs/forms.html#the-select-tag
I have tried using defaultValue on select etc. but no luck.
http://codepen.io/kamas06/pen/EWLpKm
Quill version:

[x] 1.0.0-beta-3

I'm seeing this for your Codepen on macOS Sierra, Google Chrome. What are you using?

Here's a side-by-side of the different toolbar options: https://codepen.io/alexkrolick/pen/BWVNYx?editors=0010
The JSX custom toolbar option is definitely doing something a little differently than the uncontrolled way - note extra bottom border between the elements.

@alexkrolick Nice side-by-side, shows the problem really well. I got hit by #147 too at some point but moved away to JSX toolbar which sorted it. Had to move anyway to get more control over it as I am placing some custom markers/icons inside it.

Note that is possible to have some control over the appearance of the icons Quill creates with the toolbar prop. Use CSS to target ql-<format>: https://codepen.io/alexkrolick/pen/qryGQd
Will continue looking into the issue.

Some additional debugging notes:
This line requires one of the <option> tags to have the selected attribute: https://github.com/quilljs/quill/blob/develop/ui/picker.js#L46
If it is missing, the default item will not get the ql-selected class here: https://github.com/quilljs/quill/blob/develop/ui/picker.js#L73
And finally, the defaultItem will not exist here: https://github.com/quilljs/quill/blob/develop/ui/icon-picker.js#L11-L18

Demo: https://codepen.io/alexkrolick/pen/qjMrEN?editors=0010
Note that setting THEME to false at the top actually works better when it comes to dropdowns than the themes that extend base (ie Snow and Bubble) because it only uses HTML selects, rather than the "fake" select from icon-picker.js
So... it seems the main thing to do is figure out a way to 1) get React to stop swallowing the selected attribute on options in selects or 2) add an alternate identifier for Quill to use to determine the selected state, that still emits the right change events

So... it seems the main thing to do is figure out a way to 1) get React to stop swallowing the selected attribute on options in selects or 2) add an alternate identifier for Quill to use to determine the selected state, that still emits the right change events

@alexkrolick  I am coming from another project since your change seems broke our code (https://github.com/primefaces/primefaces/issues/2802), and I have raised another ticket in quill https://github.com/quilljs/quill/issues/1762

💯 I think this can be fixed by adding some hints for React's event system:
<select defaultValue={""} onChange={e => e.persist()}>

Hi @alexkrolick - I'm trying to wrap Quill in a React component for my own custom implementation and I cannot cannot figure out why react-quill is working with a defaultValue, but mine is not (the onChange doesn't appear to be necessary in your example above).
Here's a streamlined example demonstrating the bug: https://codepen.io/coxandrew/pen/xjxXmy?editors=1011
I've tried with and without jsx toolbar components and about every combination of selected or value={""} within the option tag and cannot get it to work with my simple example.
I have another CodePen that uses a forked version of Quill with this attempted fix, but that doesn't work with my React version either: https://codepen.io/coxandrew/pen/YLzvwJ?editors=0011
Any ideas on what might be different about react-quill's implementation?

@coxandrew seems to work when I upgrade your Pen to React 16: https://codepen.io/alexkrolick/pen/KRKYLw?editors=1011

@alexkrolick Aha! Thanks for the quick response! We may not be able to upgrade to React 16 immediately, but at least we have a path forward.


Scalameta parsers more than three ??? in line as ApplyInfix

Related https://github.com/scalameta/metals/pull/4877
From scalameta 4.7.2, Scala3 dialect parses the following program as
def foo =
  ???
  ???
  ???

Defn.Def(
  Nil,
  Term.Name("foo"),
  Nil,
  None,
  Term.ApplyInfix(
    Term.Name("???"),
    Term.Name("???"),
    Type.ArgClause(Nil),
    Term.ArgClause(List(Term.Name("???")), None)
  )
)

but it should be
Defn.Def(
  Nil,
  Term.Name("foo"),
  Nil,
  None,
  Term.Block(List(
    Term.Name("???"),
    Term.Name("???"),
    Term.Name("???")
  ))
)

scala> import scala.meta._
import scala.meta._

scala> val program = """
     | def foo =
     |   ???
     |   ???
     |   ???
     | """
val program: String =
"
def foo =
  ???
  ???
  ???
"

scala> dialects.Scala3(program).parse[Source].get.structure
val res9: String = Source(List(Defn.Def(Nil, Term.Name("foo"), Nil, None, Term.ApplyInfix(Term.Name("???"), Term.Name("???"), Type.ArgClause(Nil), Term.ArgClause(List(Term.Name("???")), None)))))

Interestingly,
def foo =
  x
  x
  x

will be parsed as
Defn.Def(
  Nil,
  Term.Name("foo"),
  Nil,
  None,
  Term.Block(List(
    Term.Name("x"),
    Term.Name("x"),
    Term.Name("x")
  ))
)

@tanishiking here's why: https://docs.scala-lang.org/scala3/reference/changed-features/operators.html#syntax-change
in scalameta, withAllowInfixOperatorAfterNL was set to true in scala 3.0; if it should be in some other version (perhaps the not-yet-released 3.3), we should move the flag setting.
cc @tgodzik

Oh, I didn't know this syntax change in Scala3, thank you for the info.
However, it seems that the Scala3 compiler (3.2.2) parses the following code snippet as three different statements.
def foo =
  ???
  ???
  ???

while the following one is parsed as infix
def foo =
  ???
  ???
  x

I think this is because the third ??? is not recognized as "token that can start an expression" in https://docs.scala-lang.org/scala3/reference/changed-features/operators.html#syntax-change 🤔 (while I'm not sure what the "token that can start an expression" means...)

is followed by at least one whitespace character and a token that can start an expression.

scalameta on  main [!?] via ☕ v17.0.6 via 🆂 took 6s
❯ scala-cli repl -S 3.2.2 --dep org.scala-lang::scala3-compiler:3.2.2 --dep org.scala-lang::scala3-library:3.2.2
Welcome to Scala 3.2.2 (17.0.6, Java OpenJDK 64-Bit Server VM).
Type in expressions for evaluation. Or try :help.

scala> import dotty.tools.dotc.core.Contexts._

scala> given Context = (new ContextBase).initialCtx
lazy val given_Context: dotty.tools.dotc.core.Contexts.Context

scala> import dotty.tools.dotc.parsing.Parsers

scala> import dotty.tools.dotc.util.SourceFile

scala> val program = """
     | def foo =
     |   ???
     |   ???
     |   ???
     | """
val program: String = "
def foo =
  ???
  ???
  ???
"

scala> val parser = new Parsers.Parser(SourceFile.virtual("<meta>", program))
val parser: dotty.tools.dotc.parsing.Parsers.Parser = dotty.tools.dotc.parsing.Parsers$Parser@70d28000

scala> parser.parse()
val res19: dotty.tools.dotc.ast.untpd.Tree = PackageDef(Ident(<empty>),List(DefDef(foo,List(),TypeTree,Block(List(Ident(???), Ident(???)),Ident(???)))))

scala> val program = """
     | def foo =
     |   ???
     |   ???
     |   x
     | """
val program: String = "
def foo =
  ???
  ???
  x
"

scala> val parser = new Parsers.Parser(SourceFile.virtual("<meta>", program))
val parser: dotty.tools.dotc.parsing.Parsers.Parser = dotty.tools.dotc.parsing.Parsers$Parser@7ac47e87

scala> parser.parse()
val res20: dotty.tools.dotc.ast.untpd.Tree = PackageDef(Ident(<empty>),List(DefDef(foo,List(),TypeTree,InfixOp(Ident(???),Ident(???),Ident(x)))))

I think this is because the third ??? is not recognized as "token that can start an expression" in https://docs.scala-lang.org/scala3/reference/changed-features/operators.html#syntax-change 🤔 (while I'm not sure what the "token that can start an expression" means...)

Nor I. The first of them does start an expression so how's the third different?
@tgodzik who can help clarify? perhaps even @odersky?

To cite Martin:
Martin Odersky:
It's on line 435ff in Scanners.scala

Martin Odersky:
def assumeStartsExpr(lexeme: TokenData) =
        (canStartExprTokens.contains(lexeme.token) || lexeme.token == COLONeol)
          && (!lexeme.isOperator || nme.raw.isUnary(lexeme.name))

Martin Odersky: The !lexeme.isOperator is the crucial part. So, the second ??? is treated as an infix operator only if the next token can follow an infix operator, which means the next token cannot be an infix operator again.

To cite Martin:
Martin Odersky:
It's on line 435ff in Scanners.scala

Martin Odersky:
def assumeStartsExpr(lexeme: TokenData) =
        (canStartExprTokens.contains(lexeme.token) || lexeme.token == COLONeol)
          && (!lexeme.isOperator || nme.raw.isUnary(lexeme.name))

Martin Odersky: The !lexeme.isOperator is the crucial part. So, the second ??? is treated as an infix operator only if the next token can follow an infix operator, which means the next token cannot be an infix operator again.

does that mean that anything that looks like an operator (and what does that mean, specifically?) cannot start an expression? does that mean that ??? foo bar is also impossible (since ??? cannot start an expression)? and can ??? be the entire expression (which means it starts and ends it)?

These things are simply heuristics that define when an operator on a new line is treated as one. That's as far as it goes.

These things are simply heuristics that define when an operator on a new line is treated as one. That's as far as it goes.

@odersky If you could help review the fix, to make sure I understood it correctly, would really appreciate it, as we have gone through a few iterations.

Thank you all for you efforts! :tada:

Thank you all for you efforts! 🎉

Dozo :)


opencolorio-2.3.2 fails compile with gcc:15 error: ‘uint8_t’ was not declared

OpenColorIO.h needs to include cstdint to build with gcc version 15.0.0 20240804
reported downstream as https://bugs.gentoo.org/937478
installation

from source
opencolorio-2.3.2
compiler: 15.0.0_pre20240804

small patch to correct
OpenColorIO.h2-gcc15-fix.patch
Error Encountered
FAILED: src/OpenColorIO/CMakeFiles/OpenColorIO.dir/Config.cpp.o
/usr/bin/x86_64-pc-linux-gnu-g++ -DOpenColorIO_EXPORTS -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/include/OpenColorIO/.. -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/include/OpenColorIO -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/src/OpenColorIO -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2_build/include/OpenColorIO -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2_build/src/OpenColorIO -I/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2_build/generated_include -isystem /usr/include/Imath -isystem /usr/include/pystring -isystem /var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/ext/sampleicc/src/include -isystem /var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/src/utils/.. -isystem /var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/ext/xxHash/src/include -isystem /usr/include/minizip-ng  -march=native -O3 -flto=jobserver -mprefer-vector-width=512 -fno-vect-cost-model -pipe -std=c++14 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -DUSE_GCC -Wall -Wextra -Wswitch-enum -MD -MT src/OpenColorIO/CMakeFiles/OpenColorIO.dir/Config.cpp.o -MF src/OpenColorIO/CMakeFiles/OpenColorIO.dir/Config.cpp.o.d -o src/OpenColorIO/CMakeFiles/OpenColorIO.dir/Config.cpp.o -c /var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/src/OpenColorIO/Config.cpp
In file included from /var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/src/OpenColorIO/Config.cpp:17:
/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/include/OpenColorIO/../OpenColorIO/OpenColorIO.h:3276:10: error: use of enum ‘TextureDimensions’ without previous declaration
 3276 |     enum TextureDimensions : uint8_t {
      |          ^~~~~~~~~~~~~~~~~
/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/include/OpenColorIO/../OpenColorIO/OpenColorIO.h:3276:30: error: ‘uint8_t’ was not declared in this scope
 3276 |     enum TextureDimensions : uint8_t {
      |                              ^~~~~~~
/var/tmp/portage/media-libs/opencolorio-2.3.2/work/OpenColorIO-2.3.2/include/OpenColorIO/../OpenColorIO/OpenColorIO.h:20:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
''''

Fix suggested looks correct, as the type is used directly in that header.
We may also want to look at all the headers for similar errors - looks like we should also add <functional>  to OpenColorIO.h
OpenColorTransforms.h should include <cstddef> for size_t and it may need to do something like <iosfwd> for the uses of std::ostream
etc.
Kevin


Fix prometheus_scrape integration by adding prometheus_alert_rules

Overview
If there is no prometheus_alert_rules the charm fails with "Invalid Prometheus alert rules folder at /var/lib/juju/agents/unit-github-actions-exporter-0/charm/src/prometheus_alert_rules: directory does not exist"
This PR fixes it, update the library and add a temporary docs field to charmcraft run as expected.
Rationale
This way the charm can integrate with the Prometheus charm as expected.
Juju Events Changes
N/A
Module Changes
N/A
Library Changes
N/A
Checklist

[x] The charm style guide was applied
[x] The contributing guide was applied
[x] The changes are compliant with ISD054 - Manging Charm Complexity
[ ] The documentation is generated using src-docs
[ ] The documentation for charmhub is updated.
[x] The PR is tagged with appropriate label (urgent, trivial, complex)

Please provide an explanation for anything that is not checked on the checklist


Waiting for serverbrowser.dll...

Hello,
which language does your Windows have?

对的

yes

It doesn't support perfectworld CS:GO.
sorry.
If somebody knows what is different they can open a pull request to fix.


Add pagination to authors and categories pages

This needs to be done ASAP so we can reduce the data requested for each author/category page and allow users to go back to old articles in a specific category.


Allow disabling test target

FetchContent requires networking, which I don't have when building a Flatpak package, as disabling networking is a Flathub policy, so I suggest making the test target optional.

Fcitx5 has a dedicated Flatpak repository that is independent and unaffiliated with Flathub, so the packaging does not need to follow Flathub's policies, and can build with networking enabled.
There's also a Flathub app, which must be able to be built using cached sources and networking disabled.
@wengxt maintains the packaging of both apps.
This patch here is part of my suggested changes for the Flathub packaging, which I'm not sure if they will be adopted.
Adapting some of these changes to the dedicated Fcitx5 Flatpak repository is in my todo list, but I might not get to it this week.
Note that test build 81986 from the link doesn't have McBopomofo working as I forgot to keep libfmt in the built app, but the next build will work, as it's working nicely over here.


Crypto price tracker GUI

Description
This scripts shows top-100 cryptocurrency prices and other statistics related to them in a GUI , scraped from cointracker.io
Fixes #1124

Type of change

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

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] My documentation follows Template for README.md
[x] I have added the project meta data in the PR template.
[x] I have created the requirements.txt file if needed.

Project Metadata
If there is no-file/nothing to fill the below fields with, then type: none
Example: If no requirements.txt needed/present, then type none in Requirments.
Category:

[ ] Calculators
[ ] AI/ML
[x] Scrappers
[ ] Social_Media
[ ] PDF
[ ] Image_Processing
[ ] Video_Processing
[ ] Games
[ ] Networking
[ ] OS_Utilities
[ ] Automation
[ ] Cryptography
[ ] Computer_Vision
[ ] Fun
[ ] Others

Title: Cryptocurrency Price Checker
Folder: Crypto-price-checker
Requirements: requirements.txt
Script: crypto.py
Arguments: none
Contributor: Ayushjain2205
Description: This scripts shows top-100 cryptocurrency prices and other statistics related to them in a GUI

@kaustubhgupta changes made


Svc network update on network change, and handle required resources when the namespace is selected

Please provide a description of this PR:
This situation is similar to what I observed in https://github.com/istio/istio/pull/47574, where the service network config in ztunnel was not updated upon a network change. However, it seems that this currently don't break the traffic though.
Right now service update is only triggered in the service handler(service add/update/delete).

@hanxiaop: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-istiodremote-mc_istio
a10aace5025ee42bb4d260021c75227ea4662e45
link
true
/test integ-pilot-istiodremote-mc

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

LGTM. But (a *AmbientIndexImpl) HandleSelectedNamespace is also called when a new namepace selected, so should resync all the resoyrces in the namespace. Refer to setupIndex, still missing authorizationPolicy and Authentication

Makes sense, I'll look into the logic.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-istiodremote-mc_istio
a10aace5025ee42bb4d260021c75227ea4662e45
link
true
/test integ-pilot-istiodremote-mc

unit-tests-arm64_istio
e323b6a1f99649e9bc3858b63e06bd176f17f722
link
true
/test unit-tests-arm64

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-istiodremote-mc_istio
a10aace5025ee42bb4d260021c75227ea4662e45
link
true
/test integ-pilot-istiodremote-mc

unit-tests-arm64_istio
e323b6a1f99649e9bc3858b63e06bd176f17f722
link
true
/test unit-tests-arm64

unit-tests_istio
e323b6a1f99649e9bc3858b63e06bd176f17f722
link
true
/test unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests_istio
e323b6a1f99649e9bc3858b63e06bd176f17f722
link
true
/test unit-tests

unit-tests-arm64_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests-arm64

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests-arm64

unit-tests_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests-arm64

unit-tests_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests

integ-ambient_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test integ-ambient

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

unit-tests-arm64_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests-arm64

unit-tests_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test unit-tests

integ-ambient_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test integ-ambient

integ-telemetry-discovery_istio
4e96131b10860a208feb7927cb6ed565e49caf45
link
true
/test integ-telemetry-discovery

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hanxiaop: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
0a105e72f39965036e77e2802c91a16a96925622
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


[Bug]: Using extends: [] in tsconfig.json cause error "invalid type: sequence, expected a string"

Version
System:
    OS: macOS 14.0
    CPU: (12) arm64 Apple M2 Max
    Memory: 6.91 GB / 96.00 GB
    Shell: 3.7.0 - /opt/homebrew/bin/fish
  Browsers:
    Chrome: 122.0.6261.94
    Firefox Nightly: 115.0
    Safari: 17.0
  npmPackages:
    @rsbuild/core: ^0.4.12 => 0.4.12
    @rsbuild/plugin-react: ^0.4.12 => 0.4.12

Details
I upgraded the rsbuild packages recently and an error showed up:
start   Compiling...
error   Compile error:
Failed to compile, check the errors for troubleshooting.
× JSONError { path: "<root>/rsbuild-app/tsconfig.json", message: "invalid type: sequence, expected a string at line 2 column 13", line: 2, column: 13 }

It is complaining about my "extends": ["../../tsconfig.json"].
I also made some breakpoints. It shows that the error is emitted here:
https://github.com/web-infra-dev/rsbuild/blob/c6020c420ae6c8c76a5c6085c769c20c8fd6372f/packages/core/src/provider/build.ts#L53-L56
And the err is null, and the stats contains the previous error message. I'm not sure if this is an issue of rspack or rsbuild, since directly using rspack does not give this error.
Reproduce link
https://github.com/colinaaa/rsbuild-repro-tsconfig-extends
Reproduce Steps

pnpm install
npm run build

https://github.com/oxc-project/oxc-resolver/issues/101 🥲


Add null check in DelegatingBlockReader#toString() and unit tests

What changes are proposed in this PR?
This PR adds a null check in the DelegatingBlockReader#toString() method to handle cases where the underlying BlockReader is null. This prevents potential NullPointerException during the toString() call.
Additionally, unit tests were added to verify this new behavior.
Why are the changes needed?
The change ensures that the DelegatingBlockReader can gracefully handle cases where the underlying BlockReader is null, which improves robustness.
Does this PR introduce any user-facing changes?
No.
How was this patch tested?
Unit tests have been added and verified with the current testing framework.

alluxio-bot, check this please.


[card] Floor balance instead of rounding

Describe the bug
It's confusing if the user's balance is 1.495, it'll display as "1.50" but the user won't actually be able to send "1.50" dai. We should floor instead of rounding the display to avoid these cases.

#437


Unable to download JSON metadata: [Errno 104]

Checklist

[ ] I'm reporting a broken site support issue
[X] I've verified that I'm running youtube-dl version 2021.06.06
[X] I've checked that all provided URLs are alive and playable in a browser
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar bug reports including closed ones
[X] I've read bugs section in FAQ

Verbose log
youtube-dl -o "%(playlist_index)s-%(title)s.%(ext)s" https://www.youtube.com/playlist?list=PL2140A0411C65DD13 --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-o', u'%(playlist_index)s-%(title)s.%(ext)s', u'https://www.youtube.com/playlist?list=PL2140A0411C65DD13', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2021.06.06
[debug] Python version 2.7.18 (CPython) - Linux-5.4.0-80-generic-x86_64-with-Ubuntu-20.04-focal
[debug] exe versions: none
[debug] Proxy map: {}
[youtube:tab] PL2140A0411C65DD13: Downloading webpage
[download] Downloading playlist: Blues & Blues-Rock Best Of Playlist | Don's Tunes
[youtube:tab] Downloading page 1
ERROR: Unable to download JSON metadata: [Errno 104] Connection reset by peer (caused by error(104, 'Connection reset by peer')); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 634, in _request_webpage
return self._downloader.urlopen(url_or_request)
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2288, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python2.7/urllib2.py", line 435, in open
response = meth(req, response)
File "/usr/local/bin/youtube-dl/youtube_dl/utils.py", line 2625, in http_response
content = resp.read()
File "/usr/lib/python2.7/socket.py", line 355, in read
data = self._sock.recv(rbufsize)
File "/usr/lib/python2.7/httplib.py", line 587, in read
return self._read_chunked(amt)
File "/usr/lib/python2.7/httplib.py", line 656, in _read_chunked
value.append(self._safe_read(chunk_left))
File "/usr/lib/python2.7/httplib.py", line 702, in _safe_read
chunk = self.fp.read(min(amt, MAXAMOUNT))
File "/usr/lib/python2.7/socket.py", line 384, in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/ssl.py", line 754, in recv
return self.read(buflen)
File "/usr/lib/python2.7/ssl.py", line 641, in read
v = self._sslobj.read(len)
Description
Trying to dl a playlist from YouTube through that error.

Works for me (258 videos in playlist, fails with age-gated at 216).
Might there be a network issue?
With Ubuntu 20.04, you should have Python 3: why is yt-dl installed as a Python 2 package?


Update base image to be Debian 11 Bullseye

Fixes issue #11

So I need to update debian such that all tests should pass right?
Have I understood it properly if not please tell what I am missing?

Yes, if you take a look at the detailed error message of this last CI build, it runs into an error on the line that does an apt install. This needs to be diagnosed and fixed.
The image needs to:

build properly
run without bugs

I tried running the tests locally and they are failing without even modifying the code i.e. with detain:10

Should I try to resolve the errors there so that test works fine and then work on the updating Debian base image or I am doing any mistake in running the tests locally?

Please ignore previous comment I found solution of that error

I am not able to get why this test is failing during apt-install Can you help me by pointing to the specific thing due to which this error is occurring so that I can fix it

I am guessing your computer has ran out of memory. Two things point me to this hypothesis:

The exit code is 137. https://www.google.com/search?q=exit+code+137&oq=exit+code+137&aqs=chrome.0.0i512l10.4103j0j1&sourceid=chrome&ie=UTF-8
It says it was "killed".

Thanks for your reply
I have resolved Storage error by increasing storage
but I am getting this error of Failure Login

Hi, please use Google for these sorts of questions. https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry

Sorry for that but I googled and I did not got the solution
I will not repeat this mistake in future

It is not able to find the git version in tests when I changed debian:10 to debian:bullseye
#7 9.006 Unable to find a version "1:2.20.1-2+deb10u3" for the package "git"

I think for debian 11 bullseye the version of git needs to be changed to 1:2.30.2-1 here
Am I going in right direction or there may be some other cause of failure of the test?

@shreyaansjain06 Yeah the version will definitely need to be changed. Notice how the current version used has +deb10u3 appended afterwards. Bullseye won't recognize this because its packages would need to contain deb11 in the version.

There is  python3-pygments in debian bullseye instead of python-pygment should I replace it?

Thanks for your reply Jefrey

I googled about this and found that this error is due to permissions of github token
Either write permission can be given by UI or by Yaml file I have updated the file Should I push if you agree?
Below are the links supporting my point
link1
link2

That's fine, one of the contributors to Canasta who has repo write access will have the ability to run the tests.

Some packages version were updated, which was causing problem so I fixed them


proc: better error message when running dlv debug when there is no main

Fixes #509

This doesn't include Windows. Maybe instead we should perform this check in cmd/dlv/cmds/commands.go, right after we run gocommand and ensure that the binary we expected to have been created exists, or check return code of the go command (will it return non-zero if it doesn't produce a binary?).

The binary is always created, it's just that sometimes it's not an executable (and, of course, it doesn't return an error).

@aarzilli got it. We still need to account for Windows. Also, I think we should still catch this error earlier, and consolidate the logic for checking this consdition into a single location if we can.

@aarzilli any update on this? I'd like to merge this, but we must account for Windows.

I'm don't know how to solve this on windows (I don't even know how this problem manifests on windows)

I don't think it's going to be very useful (especially on OS X) but it couldn't hurt.

@alexbrainman: I've added your changes but rewrote the test to use one of the existing fixtures.

LGTM. Thank you.
Alex

nit: Can you switch any message with ${OS}-${ARCH} to be ${OS]/${ARCH} for consistency (all other references generally include a slash, not hyphen.


API: When FFmpeg encounters a blockage, the HTTP callback functionality ceases to operate.

Note: Please read FAQ before file an issue, see #2716

Description
Please description your issue here
通过ingest 取RTSP取流，http_hooks回调，当摄像头网线插拔以后，不能正常回调，推流失败，把http_hooks enabled   改为off,再reload,可以正常恢复推流

SRS Version:  XCORE-SRS/5.0.152(Bee)

SRS Log:

[2023-06-08 11:32:14.891][ERROR][27701][qh1k4460][11] serve error code=4005(HttpStatus)(Invalid HTTP status code) : service cycle : rtmp: stream service : rtmp: callback on publish : rtmp on_publish http://<IP_ADDRESS>:8082/vod/live-room-webrtc/push-stream-start : http: on_publish failed, client_id=qh1k4460, url=http://<IP_ADDRESS>:8082/vod/live-room-webrtc/push-stream-start, request={"server_id":"vid-10545y5","service_id":"0j3592l1","action":"on_publish","client_id":"qh1k4460","ip":"<IP_ADDRESS>","vhost":"__defaultVhost__","app":"live","tcUrl":"rtmp://<IP_ADDRESS>:1935/live","stream":"rtsp-1","param":"","stream_url":"/live/rtsp-1","stream_id":"vid-9g30x7b"}, response={"requestId":"1ca7308c37704a839fa9847317f1d99c","status":999,"message":"Incorrect result size: expected 1, actual 3","path":"/vod/live-room-webrtc/push-stream-start","data":null,"timestamp":"2023-06-08 11:32:14"}, code=500 : http: status 500

ffmpeg log
Input #0, rtsp, from 'rtsp://admin:1370176lkW@<IP_ADDRESS>:554/cam/realmonitor?channel=1&subtype=0':
  Metadata:
    title           : Media Server
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709, progressive), 1920x1080, 90k tbr, 90k tbn
Output #0, flv, to 'rtmp://<IP_ADDRESS>:1935/live/rtsp-1':
  Metadata:
    title           : Media Server
    encoder         : Lavf59.27.100
  Stream #0:0: Video: h264 (Main) ([7][0][0][0] / 0x0007), yuvj420p(pc, bt709, progressive), 1920x1080, q=2-31, 90k tbr, 1k tbn
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[flv @ 0x56202617ea00] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
av_interleaved_write_frame(): Broken pipe
[flv @ 0x56202617ea00] Failed to update header with correct duration.65360.0kbits/s speed=N/A
[flv @ 0x56202617ea00] Failed to update header with correct filesize.
Error writing trailer of rtmp://<IP_ADDRESS>:1935/live/rtsp-1: Broken pipe
frame=    1 fps=0.0 q=-1.0 Lsize=      45kB time=00:00:00.00 bitrate=365520.0kbits/s speed=10.9x
video:44kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.676465%
Error closing file rtmp://<IP_ADDRESS>:1935/live/rtsp-1: Broken pipe
Conversion failed!

SRS Config:

     ingest rtsp-1 {
        enabled      on;
        input {
            type    stream;
            url     rtsp://admin:1370176lkW@<IP_ADDRESS>:554/cam/realmonitor?channel=1&subtype=0;
        }
        ffmpeg      /usr/bin/ffmpeg;
        engine {
            enabled          on;
            perfile {
                rtsp_transport tcp;
                timeout 30000;
            }
            vcodec copy;
            acodec copy;
            output          rtmp://<IP_ADDRESS>:1935/live/rtsp-1;
        }
    }

     http_hooks {
        # default off.
        enabled   on;
        #on_publish      http://<IP_ADDRESS>:7999/publish.json;
        #on_unpublish    http://<IP_ADDRESS>:7999/unpublish.json;
        on_publish      http://<IP_ADDRESS>:8082/vod/live-room-webrtc/push-stream-start;
        on_unpublish    http://<IP_ADDRESS>:8082/vod/live-room-webrtc/push-stream-end;
        on_play         http://<IP_ADDRESS>:7999/play.json;
        on_stop         http://<IP_ADDRESS>:7999/stop.json;
        on_dvr          http://<IP_ADDRESS>:7999/recorddone;

     }

Replay
Please describe how to replay the bug?
1、通过ingest 取RTSP取流，http_hooks回调，正常推流
2、当摄像头网线插拔以后，不能正常回调，推流失败，
3、把http_hooks enabled   改为off,再reload,可以正常恢复推流
Expect
当摄像头网线插拔以后，能正常回调，推流成功

FFmpeg processes an RTSP stream from a camera. However, when a user disconnects the camera's network cable, FFmpeg may become unresponsive or freeze, potentially causing the HTTP callback to malfunction.
However, it appears that this should not have happened, as FFmpeg is an isolated process that should not obstruct or influence the HTTP callback of SRS.
It is necessary to conduct some research and replicate this issue.

FFmpeg 从摄像头拉 RTSP 流，然后推给SRS。然而，当用户断开摄像头的网络线时，FFmpeg 可能变得无响应，从而可能导致 HTTP 回调出现故障。
然而，这似乎不应该发生，因为 FFmpeg 是一个独立的进程，不应该影响 SRS 的 HTTP 回调。
需要花时间复现这个问题。

I confirm witnessing this bug as well, here are my logs
[2023-07-08 13:37:10.024][Warn][212][6692248x][104] client disconnect peer. ret=1008
[2023-07-08 13:37:10.024][Trace][212][65891n6r] TCP: clear zombies=1 resources, conns=4, removing=0, unsubs=0
[2023-07-08 13:37:10.024][Trace][212][6692248x] TCP: disposing #0 resource(RtmpConn)(0x555e1df0ad80), conns=4, disposing=1, zombies=0
[2023-07-08 13:37:11.081][Trace][212][66y15z81] TCP: before dispose resource(RtmpConn)(0x555e1decde50), conns=3, zombies=0, ign=0, inz=0, ind=0
[2023-07-08 13:37:11.081][Error][212][66y15z81][62] serve error code=1011 : service cycle : rtmp: stream service : rtmp: callback on publish : rtmp on_publish http://<IP_ADDRESS>:8085/api/v1/streams/publish : http: on_publish failed, client_id=66y15z81, url=http://<IP_ADDRESS>:8085/api/v1/streams/publish, request={"server_id":"vid-gk40023","action":"on_publish","client_id":"66y15z81","ip":"<IP_ADDRESS>","vhost":"__defaultVhost__","app":"live","tcUrl":"rtmp://live.eyon.tv/live","stream":"oyo1QizEf-gGc_Yj4IYz","param":""}, response=, code=0 : http: client post : http: parse response : parse message : grow buffer : read bytes : timeout 30000 ms
thread [212][66y15z81]: do_cycle() [src/app/srs_app_rtmp_conn.cpp:217][errno=62]
thread [212][66y15z81]: service_cycle() [src/app/srs_app_rtmp_conn.cpp:414][errno=62]
thread [212][66y15z81]: publishing() [src/app/srs_app_rtmp_conn.cpp:830][errno=62]
thread [212][66y15z81]: http_hooks_on_publish() [src/app/srs_app_rtmp_conn.cpp:1338][errno=62]
thread [212][66y15z81]: on_publish() [src/app/srs_app_http_hooks.cpp:147][errno=62]
thread [212][66y15z81]: do_post() [src/app/srs_app_http_hooks.cpp:505][errno=62]
thread [212][66y15z81]: post() [src/protocol/srs_service_http_client.cpp:349][errno=62]
thread [212][66y15z81]: parse_message() [src/protocol/srs_service_http_conn.cpp:100][errno=62]
thread [212][66y15z81]: parse_message_imp() [src/protocol/srs_service_http_conn.cpp:163][errno=62]
thread [212][66y15z81]: grow() [src/protocol/srs_protocol_stream.cpp:162][errno=62]
thread [212][66y15z81]: read() [src/protocol/srs_service_st.cpp:507][errno=62](Timer expired)

going to investigate on my end, but it seems to be a race condition or something on the hooks

OK upon further investigation, the on_publish on my end has an authentication logic that calls a server to authenticate, and if authentication fails then I reject the stream.
The problem, it turns out, is that some streaming software continually retries, and that continuous retry is causing a memory leak and an eventual blowup. So we can solve the problem at the firewall level, but it would be great to identify and solve the problem at the server level of SRS


Desktop view - logo and title placement & pixel size

Please move the logo and title higher on the page.
Make title 60 px for desktop view

Screenshots

@daisyxrincon What do you mean Make the Title 60px for desktop view?

Check my latest PR if you want to see the changes.


Bug?: Doesn't seem to work with mypy at all

$ mypy --version
mypy 0.620

$ cat dialogue/kappa/minimal.py
import pydantic

class Response(pydantic.BaseModel):
    body: str

test1 = Response()
test2 = Response(body=1)

$ mypy --ignore-missing-imports --follow-imports=skip --strict-optional dialogue/kappa/minimal.py

I expected mypy to raise errors. Am I missing something?

duplicate of #245?

I don't know enough to really say if its related but certainly could be! I'll track that one for now... thanks!

i'll add a note with my understanding on that issue to keep things in one place.


Refuse to create an XFS volume smaller than 300 MiB

Which issue(s) this PR fixes:
longhorn/longhorn#8488
What this PR does / why we need it:
Prevent the creation of Longhorn PersistentVolumes with fstype: xfs smaller than 300 MiB.

Before the PR
Create an XFS PV with a small filesystem using the UI

Create a 200 MiB volume in the UI.
Use the Create PV/PVC functionality with File System: XFS in the UI.
There is no creation error.
Create a pod that consumes the PVC.

apiVersion: v1
kind: Pod
metadata:
  name: test-too-small
  namespace: default
spec:
  restartPolicy: Always
  containers:
  - name: test-too-small
    image: alpine:latest
    imagePullPolicy: IfNotPresent
    volumeMounts:
    - name: test-too-small
      mountPath: /data
  volumes:
  - name: test-too-small
    persistentVolumeClaim:
      claimName: test-too-small

See mount failures with kubectl describe test-too-small.

  Warning  FailedMount             0s (x2 over 1s)  kubelet                  MountVolume.MountDevice failed for volume "test-too-small" : rpc error: code = Internal desc = format of disk "/dev/longhorn/test-too-small" failed: type:("xfs") target:("/var/lib/kubelet/plugins/kubernetes.io/csi/driver.longhorn.io/adb2186f0495712f277ed452e4ccdc61ce885def092e02059606a93459df3699/globalmount") options:("defaults") errcode:(exit status 1) output:(Filesystem must be larger than 300MB.

Create an XFS PC with a small file system using kubectl

Create a StorageClass/PVC/Pod that uses a 200 MiB XFS volume.

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: test-too-small
provisioner: driver.longhorn.io
allowVolumeExpansion: true
reclaimPolicy: Delete
volumeBindingMode: Immediate
parameters:
  fsType: "xfs"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-too-small
  namespace: default
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: test-too-small
  resources:
    requests:
      storage: 200Mi
---
apiVersion: v1
kind: Pod
metadata:
  name: test-too-small
  namespace: default
spec:
  restartPolicy: Always
  containers:
  - name: test-too-small
    image: alpine:latest
    imagePullPolicy: IfNotPresent
    volumeMounts:
    - name: test-too-small
      mountPath: /data
  volumes:
  - name: test-too-small
    persistentVolumeClaim:
      claimName: test-too-small

See mount failures with kubectl describe test-too-small.

  Warning  FailedMount             2s (x5 over 12s)  kubelet                  MountVolume.MountDevice failed for volume "pvc-2ed690a4-e82c-451f-b9d1-85f6109d108b" : rpc error: code = Internal desc = format of disk "/dev/longhorn/pvc-2ed690a4-e82c-451f-b9d1-85f6109d108b" failed: type:("xfs") target:("/var/lib/kubelet/plugins/kubernetes.io/csi/driver.longhorn.io/5211b7954bbe197f895895ced365ea02bf667e4710d7c99d73eba147868488e0/globalmount") options:("defaults") errcode:(exit status 1) output:(Filesystem must be larger than 300MB.

After the PR
Create an XFS PV with a small filesystem using the UI

Create a 200 MiB volume in the UI.
Use the Create PV/PVC functionality with File System: XFS in the UI.
See an understandable creation error. (The wording in the screenshot is slightly wrong. See the PR for updated wording.)

Create an XFS PC with a small file system using kubectl

Create a StorageClass/PVC/Pod that uses a 200 MiB XFS volume.
See PV creation failures with kubectl describe pvc test-too-small.

  Warning  ProvisioningFailed    1s (x2 over 2s)  driver.longhorn.io_csi-provisioner-57b9f8ff9c-ltmkb_794104e5-79fa-4a7d-869f-567d8173f0b7  failed to provision volume with StorageClass "test-too-small": rpc error: code = Unknown desc = XFS filesystems with size 209715200, smaller than 314572800, are not supported

Snapshots and clones

Create an "illegal" StorageClass/PVC/Pod in an old version of Longhorn (use the template from above).
Ensure the pod starts running (so an XFS filesystem is definitely created).
Create a backup of the PVC using the CSI flow.

kind: VolumeSnapshotClass
apiVersion: snapshot.storage.k8s.io/v1
metadata:
  name: longhorn-snap
driver: driver.longhorn.io
deletionPolicy: Delete
parameters:
  type: snap
---
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
  name: test-too-small
spec:
  volumeSnapshotClassName: longhorn-snap
  source:
    persistentVolumeClaimName: test-too-small

Upgrade to a branch with this PR.
Restore the snapshot.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-too-small-restore
  namespace: default
spec:
  storageClassName: test-too-small
  dataSource:
    name: test-too-small
    kind: VolumeSnapshot
    apiGroup: snapshot.storage.k8s.io
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 200Mi

The new logic does not prevent the restore.
Clone the PVC.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test-too-small-clone
  namespace: default
spec:
  storageClassName: test-too-small
  dataSource:
    name: test-too-small
    kind: PersistentVolumeClaim
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 200Mi

The new logic does not prevent the clone.

@Mergify backport v1.5.x

@mergify backport v1.6.x


Adds auto_updates true to Ubersicht

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} reports no offenses.
[x] The commit message includes the cask’s name and version

Ubersicht auto-updates. Here are screenshots:


⚠ ClamAV has degraded performance

In 22d7218, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 204 ms

Resolved: ClamAV performance has improved in f1bfdce.


How does this look like?

I would like to see some screenshots of a sample CRUD generated with this package

This is the main screen of a little user administration facility in the example site provided. However, the big caveat is that virtually all of the styling is provided by Lucius code in the example site definition, rather than by the library on its own. The example site also incorporates bootstrap.

Great, thanks :+1:

By the way, if you don't want to maintaining bothersome Cascading Style Sheets, a good idea could be to change the markup in order to match the Bootstrap style. That way, you would get high-quality style and a lot of themes for free!