KeyError: 'CONVERSATION_GENERATION'

Hi, I cloned and installed the requirements, but when I run the run_augmentoolkit.py I get this error.
I am using a conda env, in a windows os
(augmentoolkit) E:\Software\AI\Text\augmentoolkit>python run_augmentoolkit.py
Augmentoolkit is starting to run! If this is your first time running this it might take a few moments to start due to imports and such.
Traceback (most recent call last):
File "E:\Software\AI\Text\augmentoolkit\original\processing.py", line 422, in
asyncio.run(main())
File "C:\Users\lufas\anaconda3\envs\augmentoolkit\Lib\asyncio\runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "C:\Users\lufas\anaconda3\envs\augmentoolkit\Lib\asyncio\runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\lufas\anaconda3\envs\augmentoolkit\Lib\asyncio\base_events.py", line 654, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "E:\Software\AI\Text\augmentoolkit\original\processing.py", line 42, in main
from original import steps
File "E:\Software\AI\Text\augmentoolkit\original\steps.py", line 66, in
SKIP_CONVERSATION_GENERATION = parse_bool(obj_conf["SKIP"]["CONVERSATION_GENERATION"]) # useful if you're generating "tight" data only.
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'CONVERSATION_GENERATION'

Can I see your config.yaml? It might be missing a required key, I just checked the default config and confirmed it's there so maybe something's wrong with a customization of it?

Yes of course, as a side note I followed the video "Generating LLM Data on Your Computer"
https://www.youtube.com/watch?v=_jA4gRFvZ9o
I haven't modified the files yet, I did it at first but found an error so I tried with the unmodified files.
super_config.yaml
pipeline_order:

folder: "original"
config: "config_overrides/text-generation-webui/tgen-config-normal.yaml"

tgen-config-normal.yaml
API:
API_KEY: your-key-here
BASE_URL: http://<IP_ADDRESS>:5000/v1
LARGE_LOGICAL_MODEL: meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo
LOGICAL_MODEL: meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo
HUGGINGFACE:
HUB_PATH: yourusername/your-path-here
PRIVATE: False
PUSH_TO_HUB: False
PATH:
DEFAULT_PROMPTS: ./prompts
INPUT: ./input
OUTPUT: ./output
PROMPTS: ./prompts
PHASE:
PHASE_INDEX: 3
WORK_IN_PHASES: False
SKIP:
ANSWER_RELEVANCY_CHECK: False
FILTER_CHUNKS: False
QUESTION_CHECK: False
SYSTEM:
CHUNK_SIZE: 1900
COMPLETION_MODE: False
CONCURRENCY_LIMIT: 3
CONVERSATION_INSTRUCTIONS: For this conversation, you are generating a chat between
a generalist, generic AI assistant, and a human.
DOUBLE_CHECK_COUNTER: 1
DO_NOT_USE_SYSTEM_PROMPTS: True
FINAL_ASSISTANT_PROMPT_NO_RAG: 'You are a helpful AI assistant.
'

FINAL_ASSISTANT_PROMPT_RAG: 'You are a helpful AI assistant.
Context information is below:

----------------------

{data}

'

MODE: api
STOP: True
SUBSET_SIZE: 15
USE_FILENAMES: False
USE_SUBSET: False

I just had time to check this, you were very right @e-p-armstrong it was an issue with missing keys, I copied the missing ones from the original config file.
Again thanks you!


PHP 8.2 deprecations

Not sure what the right format for issues is. Let me know if you need more/different information.
What's the issue?
When using this package with PHP 8.2, I get the following E_DEPRECATED notices:

Creation of dynamic property WhichBrowser\Analyser\Header\Useragent::$data is deprecated
Creation of dynamic property WhichBrowser\Analyser\Header\Useragent::$options is deprecated

How can this be fixed?
It should be as easy as adding the $data and $options to the class definition. There might be other classes that need to be updated despite the WhichBrowser\Analyser\Header\Useragentone.
Do you want me to send a pull request or is an update for 8.2 already in the works?

Same issue here

Any update? Thanks!

since php 8.2 is getting more and more attention in the real world (https://packagist.org/php-statistics) it would be nice to see this merged. We have built and open source CMS which where the user login process relays on the verification of user agents using this library, so all the projects can not upgrade to php 8.2.
@NielsLeenheer maybe there is someone you could add as maintain user, in order to help whenever there is no or less time. This is something i would recommend any open source library which is a certain amount of downloads and is therefore relevant for the php eco system. :pray:
Thanks for the great library and your time spending on this.

any update on this?

I've found a note about adding #[AllowDynamicProperties] (https://php.watch/versions/8.2/dynamic-properties-deprecated) before classes where they are encountered.  But if WhichBrowser no longer being updated....

Tested on
PHP v8.2
whichbrowser/parser v2.1.7
file: vendor\whichbrowser\parser\src\Analyser\Header\Useragent.php
Change
class Useragent
{
use Useragent\Os, Useragent\Device, Useragent\Browser, Useragent\Application, Useragent\Using, Useragent\Engine, Useragent\Bot;
// Initialize $data and $options properties
public function __construct($header, &$data, &$options)
{

To
class Useragent
{
use Useragent\Os, Useragent\Device, Useragent\Browser, Useragent\Application, Useragent\Using, Useragent\Engine, Useragent\Bot;
// Initialize $data and $options properties
private $data;
private $options;

public function __construct($header, &$data, &$options)
{

Fixed in the latest release


Team RAC in Superblock/NN suddenly dropped

In last superblock today the team RAC that are included in the block has suddenly dropped.
CSG dropped from ~300.000 to 26.000.
GPUGrid dropped from ~5.500.000 to 290.000
It seems to be over all projects. The RAC seems to have been cut by a factor of 5-8. This has affected the rewards calculation on Gridcoinstats since its stats are based on data from each BOINC projects directly. I assume this will be corrected in the next superblock.

Update: It also seems like the wallet is rewarding based on these new Mag calculations as well
See this CPID
I haven't been able to look in the NN report in the wallet, but it looks like just a handful of users where included in the last Superblocks calculation. This would account for the low RAC score. See the following screenshot if miners since yesterday.

thats messed up even noticed in cpids on gridstats that a test-grcpool.com is included in it, is that normal? didnt know testnet stats were on gridcoinstats.eu and alot of info seems to be out of whack. hopefully it corrects itself or maybe it needs sum encouragement.

a user/person/entity can name their user what ever they wish , in that list that is what it shows... for example for example my cpid is associated with the user name jamezz , as that is what I set for my " user name " on my first project... you could be " swimming.pool.webcam " if you had the domain or even if you didn't or you/they could even name themselves " pool  . Testnet is separate and our testnet clients are on a different block chain at a much lower block like around/just passed 275000 and testnet doesn't use B.O.I.N.C. and is even more " dummy wallet " than an investor/bank wallet. That user name could be someone possibly but not limited to someone testing the new Open-source Gridcoin pool software https://github.com/bryhardt/grcpool or someone designing another pool under different code. Pool's are not limited to certain community members , as any Gridcoin related project or idea anything is open and anyone is more than welcome to contribute.  I hope that helps , looks like from what I read we forked on the last superblock , having multiple nodes I hope this sorts itself out without a wallet client upgrade due to forgotten code timers along with additional replacement and re-downloading of a newly signed blockchain and syncing everything up.

thanks i learn something new everyday :) and i agree lets hope for the best.

The !stats data shows 56% cpids who are usually in there, are missing now

I am affected. Startail's site shows crazy mag=133 but wallet show mag=0. I am on the same chain as gridcoinstats.eu (verfied now), so If there was a fork, we are all on a fork. I  believe this is caused by the neural network.
"CPID" : "46f64d69eb8c5ee9cd24178b589af83f",
"Beacon Exists" : "Yes",
"Magnitude (As of last superblock)" : 0.00000000,
"Warning" : "Your magnitude is 0 as of the last superblock: this may keep you from staking POR blocks.",
"Block Signing Test Results" : true,
"Configuration Status" : "SUCCESSFUL"

getblockhash 849323
eb93b91f8955a4efaf32a16e201c0c1a36861feee0e1ece34849d23e3b6bf523

Why Gridcoinstats shows other Mag than Wallet
The site takes the RAC from each project and then calculates the Mag based on the projects Team RAC in the last Superblock. It doesn't know who is in the NN, it doesn't read that information since NN isn't available on Linux. The calculations of Mag are correct, but only if you are in the NN, that is why the % share is way off today. If you are not in the NN, ie your wallet sais 0 Mag, this means the CPIS was not included and the Est. Mag isn't valid that the page displays.
I will see if I can find a good way to determine or at least display a warning message in the future.

startailcoon the premise that "If you are not in the NN, ie your wallet sais 0 Mag, this means the CPIS was not included and the Est. Mag isn't valid that the page displays" certainly does not follow for me as I'm a Windows user and I can see my CPID in the NN with what should be my correct mag.
There seems to be a disconnect between the client and the NN which is causing the abberation. I'm hoping that a new superblock will sort it out, if it doesn't we are in new territory.

Just to followup on "test-grcpool.com" in the stats. That userid is primarily for the testnet pool. However, since it uses production BOINC,  I run a production GRC client with it. Therefore that node can earn some POR for using its resources instead of just earning testnet GRC.

User who staked the superblock: https://www.gridcoinstats.eu/cpid.php?a=view&id=0b5ef259411ec18e8dac2be0b732fd23 (Gained 8100 Mag due to this superblock).
SuperBlock in question: https://www.gridcoinstats.eu/block.php?id=848820 http://www.gridresearchcorp.com/gridcoin/?777fed9bda70e13cb7f50ce9186408a03213c42962c21e24f058409a146ba1d4
Run the following two commands and we'll all compare the results:
'execute  neuralreport' https://github.com/gridcoin/Gridcoin-Research/blob/941eb66862134292f342fd1bf0c0b0ed370874dd/src/rpcblockchain.cpp#L2167
'execute  currentneuralreport' https://github.com/gridcoin/Gridcoin-Research/blob/941eb66862134292f342fd1bf0c0b0ed370874dd/src/rpcblockchain.cpp#L2172
In between the time where the bad superblock was created and the two new superblocks were created, myself and a couple other users had completely different results for the above commands.
How secure from Sybil attack is the neuralhash voting?

neuralreport
{
"Neural Hash" : "Popularity,Percent %",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 14.78%",
"903127e8ba59972bce2e1fd6503758df" : "24; 85.19%",
"Pending" : "849742",
"Superblock Age" : 2501
}
currentneuralreport
{
"Neural Hash" : "Popularity,Percent %",
"541770e136f3ec8fda759afcdd1a2dee" : "2; 2.22%",
"5e7a73e2998dd73f664c8cbf4d1c04e7" : "2; 2.93%",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 4.90%",
"72b2ace21029a57cc7a19c69f8e798f3" : "33; 39.99%",
"903127e8ba59972bce2e1fd6503758df" : "24; 28.23%",
"cafc8fad8f8b2e16caabb96bfe574fef" : "16; 19.20%",
"cf906a1cae8538381e978f55308ed5be" : "2; 2.53%",
"Pending" : "849742",
"Superblock Age" : 2524
}

{
"Neural Hash" : "Popularity,Percent %",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 14.78%",
"903127e8ba59972bce2e1fd6503758df" : "24; 85.19%",
"Pending" : "849742",
"Superblock Age" : 2693
}

{
"Neural Hash" : "Popularity,Percent %",
"541770e136f3ec8fda759afcdd1a2dee" : "2; 2.22%",
"5e7a73e2998dd73f664c8cbf4d1c04e7" : "2; 2.93%",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 4.90%",
"72b2ace21029a57cc7a19c69f8e798f3" : "33; 39.99%",
"903127e8ba59972bce2e1fd6503758df" : "24; 28.23%",
"cafc8fad8f8b2e16caabb96bfe574fef" : "16; 19.20%",
"cf906a1cae8538381e978f55308ed5be" : "2; 2.53%",
"Pending" : "849742",
"Superblock Age" : 2734
}

[
{
"Neural Hash" : "Popularity,Percent %",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 14.78%",
"903127e8ba59972bce2e1fd6503758df" : "24; 85.19%",
"Pending" : "849742",
"Superblock Age" : 2666
}
]

[
{
"Neural Hash" : "Popularity,Percent %",
"541770e136f3ec8fda759afcdd1a2dee" : "2; 2.22%",
"5e7a73e2998dd73f664c8cbf4d1c04e7" : "2; 2.93%",
"6fdf0e63ecd93129341ad38d2163591b" : "4; 4.90%",
"72b2ace21029a57cc7a19c69f8e798f3" : "33; 39.99%",
"903127e8ba59972bce2e1fd6503758df" : "24; 28.23%",
"cafc8fad8f8b2e16caabb96bfe574fef" : "16; 19.20%",
"cf906a1cae8538381e978f55308ed5be" : "2; 2.53%",
"Pending" : "849742",
"Superblock Age" : 2701
}
]

This seems the right time to look at anti-Sybil. The cycling of nodes and the startup calculation mentioned here http://bitcoin.stackexchange.com/questions/42177/can-we-make-sybil-attacks-virtually-impossible
looks interesting. A vote for promoting PoW.

This can be considered a result of the previous consensus difficulties.


Queue Storage Trigger under Alternative section does not mention when to use it

The section "Event Grid Trigger" under "Alternatives" correctly explains when to use that particular alternative.
But the section "Queue Storage Trigger" under "Alternatives" does not specify when to consider that as an alternative. It just gives examples. The reader is now confused on when he/she has to use "Queue Storage Trigger" as an alternative. Could the scenarios be explained ?
Also the examples under "Queue Storage Trigger" does not what it is expected to do? Should that example have added the message to queue? Here it just prints a log line.

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

ID: 5ecb1e79-f603-03fd-2ef9-c6cf08ffaacd
Version Independent ID: 35c99e36-f224-350b-a258-2e0cfb8ab154
Content: Azure Blob storage trigger for Azure Functions
Content Source: articles/azure-functions/functions-bindings-storage-blob-trigger.md
Service: azure-functions
GitHub Login: @craigshoemaker
Microsoft Alias: cshoe

Hello @kiranpradeep, Thank you for your feedback! We will review and update as appropriate.

@kiranpradeep Based on the scope of updates sought in your feedback, we'll now proceed to assign this issue to the content author of this documentation for reviewing further and taking the next course of action.


Heal Comments on Package Resources Update

Heal
Fix golden files & flags

The solution looks fine and seems to be reusing the functionality in kyaml already used for functions. I see that this can be unexpected for users since we can't distinguish between comments that have been deliberately deleted from what has been unintentionally lost as part of the process. But we can probably look at feedback here and see what we should do.

I agree we'll have to figure out some way to heal comments when the client editor (i.e. UI) drops them but allow for their deletion. Maybe we'll need a flag. I'll merge this and we'll evolve from here.


[DOC] add documentation how to use it with ember-fetch

This replaces #1662 and adds a not on usage with ember-fetch.

@jessica-jordan: I updated the same thing in the API docs as well 👍


Update datasets download URL

Update datasets download URL to reduce latency and costs

To provide additional context...
data.rapids.ai serves the contents of the rapidsai-data S3 bucket via an AWS CloudFront distribution.
The benefits of using a CloudFront distribution are:

dataset files are served from an endpoint closest to individual end-users. Therefore latency is decreased, which makes datasets download faster
data transfer costs out of AWS are cheaper

Therefore, it's in everyone's best interest to start using the new data.rapids.ai URLs for downloading datasets.
At some point in the future, the S3 URLs will be disabled and datasets will only be retrievable from data.rapids.ai.


chain() with Tween only, not group

It is probably a feature request but in the original tweenjs, it is possible to chain not only groups but also tweens.
Maybe I'm wrong, I'll investigate more to find out.
I think that in the original one they create a group when you need it, I'll have to refactor my code to make my code to work with a bit more code that could have been avoided.

I think you made issue in wrong repo as you want original tweenjs.
Go to https://github.com/tweenjs/tween.js and create issue.
This project isn’t maintaining anymore and no issues will be processed


Radiation collectors now start with a full plasma tank by default

About the PR

Radiation collectors now start with a full plasma tank by default. Also added an extra derivative prototype, RadiationCollectorEmptyTank, just in case a mapper still want their radiation collectors to start empty. RadiationCollectorFullTank is being kept, despite being redundant, so no maps break
Why / Balance

With the phasing out of the AME, its taking too long to set up the singulo before power runs out
Technical details

N/A
Media

Video demonstration of the four radiation collector prototypes: default (full tank), empty tank, no tank, and full tank
https://github.com/space-wizards/space-station-14/assets/50505512/743f43d8-7c2b-4988-8497-0efcf4a30d5e

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl:

tweak: Radiation collectors now start with a full tank of plasma

There were some commenters on Discord who expressed that if radiation collectors start full, that this mechanic might as well not exist. Please find and discuss these concerns in your "Why / Balance" section and perhaps propose a solution like requiring more frequent refills.

There were some commenters on Discord who expressed that if radiation collectors start full, that this mechanic might as well not exist. Please find and discuss these concerns in your "Why / Balance" section and perhaps propose a solution like requiring more frequent refills.

Done. I'm also gunna post this to the Discord to hopefully kickstart a discussion

No. Engineers should do their job to check and refill.

If we want engineering to have more breathing room then there are better ways to do that. Maybe have a SUPERPACMAN running at round-start to provide some power.
I don't think we need to hugbox engineers taking 30 seconds to fill plasma tanks round-start. Hell, in SS13 growing the singulo to level 3 takes longer than that.

After discussing it on the Discord, the concensus is the following:
Mapping:

map one plasma tank on top of a single rad collector.
map plasma/oxygen dispensers (with 10 plasma, 10 oxy) into engineering

Spriting

use the old tg sprite (should still be on cit) for the collector to show when a plasma tank is inserted or not


Play Send Sound Setting

Custom send and receive sound on mobile and web
https://github.com/BlueBubblesApp/bluebubbles-app/issues/524

Due to some issues with Git, this took a while to get right.

Did you add the default iMessage sound? I don't see it in the assets in your PR

Also, file paths for app data should use the application support directory on desktop.

@tneotia I had originally done that, but was told it's not a good idea due to copyright. Thus, I have only enabled custom sounds–no defaults.
I will look into how to use the application support directory

Sounds good, your OP had said plays default sound so I was just curious

Sounds good, your OP had said plays default sound so I was just curious

Oh yeah that was just copy-pasted from my original PR and I didn't bother to read it 🤦♂

@jakeump so is this good to go? probably can get it into our v1.11.0 release

@jakeump just checking back in on this. Let me know what the status of this is. Thanks!

@jakeump just checking back in on this. Let me know what the status of this is. Thanks!

Hey Zach, sorry I've been putting this off a bit. I've been really busy with school and interviews recently. I'll try to get this finished by next weekend

@jakeump just checking back in on this. Let me know what the status of this is. Thanks!

Hey Zach, sorry I've been putting this off a bit. I've been really busy with school and interviews recently. I'll try to get this finished by next weekend

Hey, no real rush on this. Take it at your own pace. I was just pinging because I didn't get a response from you from my last message

Hi @jakeump I went ahead and cherry-picked and updated your commit, this should make its way into v1.11 Beta 3. You should still get credit for it, GitHub shows as co-authored. Thanks for this!

Hi @jakeump I went ahead and cherry-picked and updated your commit, this should make its way into v1.11 Beta 3. You should still get credit for it, GitHub shows as co-authored. Thanks for this!

Hey I'm sorry I couldn't get this done, school has been pretty time-consuming and I didn't have flutter setup on my laptop.


Update guest-configuration-custom.md

Fixed up some grammatical errors.

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

#label:"aq-pr-triaged"

#sign-off


Add basic e2e test without clusterctl move

CAPI (and many other providers) have separate tests for clusterctl move and similar features, but the most basic tests just create a cluster and checks that it works. I think we should consider changing the "integration tests" to this basic form of just creating a cluster. We have plenty of other e2e tests that check clusterctl move.
Additionally, we should consider testing more configurations. The current tests focus on one configuration and runs all kinds of feature tests on it. We could run these basic tests on a wider variety, e.g. with or without IPAM, using ClusterClass or MachinePools, etc.
This would make CAPM3 similar to other providers and hopefully be less surprising for users. Maybe we can even shave off a few minutes on the integration tests?
/kind feature

/triage accepted
Was wondering about the same when I was checking CAPI tests.

/remove-lifecycle stale

/assign @Huutomerkki


Try to fix overwriting issue

Oh no! We tried to overwrite a file owned by another mod! Please try a ckan update and try again. Please including the following information in your report:
File           : GameData/SurfaceLights/Parts/SurfaceLight4Way/4WayLight.mu
Installing Mod : SurfaceMountedLights 1.1
Owning Mod     : surfacelights
CKAN Version   : v1.14.3-0-g652be65 (beta)

You cannot change a mod's identifier. I'll whip up an alternative.


ion-tab  did not work  without root property

tab didnot work without root property,the page is blank，there is not a tab。
Ionic version:  (check one with "x")
[ ] 3.x
I'm submitting a ...  (check one with "x")
[ ] bug report
sample from http://ionicframework.com/docs/api/components/tabs/Tab/
Related code:
<ion-tabs>
  <ion-tab (ionSelect)="chat()" tabTitle="Show Modal"></ion-tab>
</ion-tabs>

This stracture works nicely:
<ion-tab *ngFor="let tab of tabs"
             [root]="tab.component? tab.component: null"
             (ionSelect)="tab.action? tab.action(): null"
             tabBadge="{{tab.badge}}" tabBadgeStyle="danger"
             tabTitle="{{tab.title}}"
             tabIcon="{{tab.icon}}"></ion-tab>

So for your use case, to let ionic know you don't want to move to any component, do:
<ion-tabs>
  <ion-tab (ionSelect)="chat()" [root]="null" tabTitle="Show Modal"></ion-tab>
</ion-tabs>

@AmitMY thks

Mind keeping this issue open? This either needs to be documented or set default value to [root], so it is an issue :)

Thanks for opening an issue with us, we will look into this.


Search result duplication

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/43094
PROPOSAL: https://github.com/Expensify/App/issues/43094#issuecomment-2150337165
Tests

[x] Verify that no errors appear in the JS console

Offline tests

QA Steps

[x] Verify that no errors appear in the JS console

Case 1:

Create Workspace as Alice
Add couple members including Bob
Create couple rooms on that workspace
Sign into an Bob's account
Search for the rooms created
One rooms should appear, never duplicated

Case 2:

Create a Workspace with any name, like Testin1234
Search for a Room in that workspace
Change the name of the created Workspace, like Testing
Search for the Room again
The workspace name should be updated

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/1676818/b18198b2-a486-4968-a236-a42e83534462

Android: mWeb Chrome

https://github.com/Expensify/App/assets/1676818/c677ac38-ab73-4ef9-8d30-8f8e30913c72

iOS: Native

https://github.com/Expensify/App/assets/1676818/ed0dac34-daf9-456a-b9ae-99c9578178ff

iOS: mWeb Safari

https://github.com/Expensify/App/assets/1676818/ae4327bf-aafe-4a69-be84-a50f54202e50

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/1676818/d483e593-ac06-4856-a204-ef4c5747aa8e
https://github.com/Expensify/App/assets/1676818/ab194c32-693a-4673-8eac-9b4b8c2b47f0

MacOS: Desktop

https://github.com/Expensify/App/assets/1676818/0baf5a99-9f2c-469c-85b1-102d4b8689cf

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome
https://github.com/Expensify/App/assets/41129870/1cb83b5d-56cf-4614-bc08-3c0bb2f750f5

iOS: Native
https://github.com/Expensify/App/assets/41129870/19a07954-50b0-4d68-8c5d-da1988eb12af

iOS: mWeb Safari
https://github.com/Expensify/App/assets/41129870/8537d547-1b08-4638-a349-09cd891712bf

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/41129870/46553a9a-c92b-4501-a2c1-1d1d51816491

MacOS: Desktop
https://github.com/Expensify/App/assets/41129870/4952b55c-0a4a-4cbf-8220-42cbc32e7b56

@gedu Could you please add tests step?

@Beamanator, it is ready for final review

Hey @ahmedGaber93 @Beamanator @gedu Looks like you're removing a good amount of logic from https://github.com/Expensify/App/pull/40730, let's make sure we repeat the testing steps from that PR to verify we're not causing any regressions 🙇

Questions about test steps:

Sign into an account off Bob means "Sign in to Bob's account", right?
One rooms should appear -> "One room should appear for each result, never duplicated"
Create a Workspace as Testin1234 -> Is that a specific username or email? Why is that needed? Or is this the name of the workspace? If it's just a random name, maybe say "Create a Workspace with any name, like Testin1234"
I don't see any specific tests for the error message cleanup, is one of the existing tests specifically for making sure the error messages work better?

Yes, Bob's account or any account you have.
Yep, never duplicated
Yes, any name I can rephrase it
For the error not sure how to reproduce it, happen to David once

@gedu I also don't see any videos of you testing other than MacOS: Chrome / Safari.

For Chorme and Safari are there, I will record for the other platforms

Also @gedu it looks like your branch https://github.com/callstack-internal/Expensify-App/tree/gedu/43094_duplicate_search_result is 1.5k commits behind E/App main, can you pull in main so we can make sure this is being tested with most up to date code? 🙏

Yes, on may way

And finally, I agree with @jasperhuangg can we get some more test steps to cover changes from this PR (#40730) so we make sure there's no regressions?

Adding them

I was looking into PR, isn't working for me in local but also isn't working on prod:
https://github.com/Expensify/App/assets/1676818/e1dd6890-081f-4e57-815c-cae5152f7aad

I think this PR changes shouldn't case regression here https://github.com/Expensify/App/pull/43164#issuecomment-2167112170

Looks like you're removing a good amount of logic from https://github.com/Expensify/App/pull/40730

we arn't use missingReportIds now because this useEffect will create the whole list items when any count of items are updated/added/removed. this because PR https://github.com/Expensify/App/pull/41636 remove the return early in the useEffect when no item need to updated like add/remove cases, that make it cover updated/added/removed.
@gedu PR just remove the second useEffect as no need for it now. the only bad effect is the performance and we disscuss it in the issue page and in slack here but not found any way can help us keep the performance before https://github.com/Expensify/App/pull/41636 changes.

I confirm @gedu test here https://github.com/Expensify/App/pull/43164#issuecomment-2167832475, we have other issue here IOU steps not ask to create a new workspace.
https://github.com/Expensify/App/assets/41129870/c66b1a30-155a-43c6-b6b7-0c0d05102915

Added videos for all the platforms

is 1.5k commits behind E/App main

@gedu Please merge main into your branch
I think we can simplify test steps to

Open the App

Click Account Settings > Workspaces > and create new workspace

Click fab icon > Start chat > Room tab

Enter room name and select the workspace you create it in step 1 then click create room

Open Search page and Verify that the room you created in step 4 appear once in search result

Click Account Settings > Workspaces > open the workspace you create it step 1

Edit the workspace name

Open Search page and Verify that workspace name is changed to the new name in workspace item title and in room subtitle.

Please merge main into your branch

Done, I though I did it, but never pushed sorry

@gedu I think we need to merge main again, because the latest main add some changes after you merge it, and this changes include fix for this issue https://github.com/Expensify/App/pull/43164#issuecomment-2167832475.
Also, I think it will be more clear if you use the test steps here https://github.com/Expensify/App/pull/43164#issuecomment-2168669457

I merge main into this locally and test this issue https://github.com/Expensify/App/pull/43164#issuecomment-2167832475 and it works well.
https://github.com/Expensify/App/assets/41129870/965b1aa5-14d5-4986-9e7e-81d2518d8c8a

I found a bug, but it reproduced also on the main branch.

Logout
login with a new account

App sometimes not load all default reports and just load invalid Concierge chat 'Concierge in unavailable workspace'
https://github.com/Expensify/App/assets/41129870/fe042ef9-f007-41c1-9c08-fc9ff6ece003

Amazing, ok ya @gedu if you could merge main 1 last time, i think we'll be good to merge 🙏

@Beamanator updated

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Beamanator in version: 1.4.86-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/Beamanator in version: 1.4.86-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/Beamanator in version: 1.4.86-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/AndrewGable in version: 9.0.0-9 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


VS Code Syntax Highlighting

Is there a VS code extension for syntax highlighting planned in the near future?

Andrew Hodges put one together: https://github.com/betawaffle/vscode-cue
It works well!
Friedrich Nietzsche – "Freedom is the will to be responsible to ourselves."
On Wed, Oct 2 2019 at 3:00 PM, <<EMAIL_ADDRESS>> wrote:

Is there a VS code extension for syntax highlighting planned in the near
future?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub (
https://github.com/cuelang/cue/issues/137?email_source=notifications&email_token=AAAFMOIKZJH65PKPQIKDZT3QMUDWPA5CNFSM4I43MM62YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HPHWJAA
) , or mute the thread (
https://github.com/notifications/unsubscribe-auth/AAAFMOMAQPZI4LKBWWBTF43QMUDWPANCNFSM4I43MM6Q
).

It works! Thanks

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


cilium policy delete root, does not flush CT table

With newer kernels, where bpf probes detects and uses LRU maps, deleting the policy does not flush the conntrack state allowing connections to remain even after policy has been removed.
Reproduction steps below.

cilium config Policy=enabled
docker start client
docker start httpd
docker exec -ti client ping6 -c1 f00d::c0a8:102:0:f236 --debug          <- as expected ping6 fails
PING f00d::c0a8:102:0:f236 (f00d::c0a8:102:0:f236): 56 data bytes
--- f00d::c0a8:102:0:f236 ping statistics ---
1 packets transmitted, 0 packets received, 100% packet loss

cilium policy import ~/go/src/github.com/cilium/cilium/examples/demo/policy.json
sudo cilium policy get root
{
"name": "root",
"rules": [
{
"coverage": [
{
"key": "id.server",
"source": "cilium"
}
],
"allow": [
{
"action": "accept",
"matchLabels": [
{
"key": "host",
"source": "reserved"
}
]
},
{
"action": "accept",
"matchLabels": [
{
"key": "id.client",
"source": "cilium"
}
]
}
]
}
]
}

docker exec -ti client ping6 -c1 f00d::c0a8:102:0:f236 --debug            <- ping works with valid policy
PING f00d::c0a8:102:0:f236 (f00d::c0a8:102:0:f236): 56 data bytes
64 bytes from httpd.cilium: icmp_seq=0 ttl=63 time=0.135 ms
--- f00d::c0a8:102:0:f236 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.135/0.135/0.135/0.000 ms

cilium policy delete root
docker exec -ti client ping6 -c1 f00d::c0a8:102:0:f236 --debug            <- ping still works :(
PING f00d::c0a8:102:0:f236 (f00d::c0a8:102:0:f236): 56 data bytes
64 bytes from httpd.cilium: icmp_seq=0 ttl=63 time=0.105 ms
--- f00d::c0a8:102:0:f236 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.105/0.105/0.105/0.000 ms

Closing this issue since it can't be fixed due #815 where the policy is automatically set to disabled when the number of policy rules == 0, which means when all policy is removed all endpoints will be allowed to receive any connection.
I've open a new issue #839


[Question] How i can access the download method using Ref ?

i want to disable the controls from videoplayer , but i want to enable download by another button outside of player, couldn't find a way to access the method using ref.

Why not just use the download attribute of an <a> tag?
const url = 'file.mp4'

<ReactPlayer url={url} />
<a href={url} download />

Although it looks like it only works when the file is the same origin as your page. If not, maybe try FileSaver.js


feature request: prediction with ARIMA-LSTM

This looks great! Thanks for sharing!
Might also want to implement correlation coefficient prediction with ARIMA-LSTM, as published here https://arxiv.org/abs/1808.01560

Thank you very much for the suggestion – I was quite skeptical initially but the results look reasonably impressive.
However, I feel that for the time being this is a little bit too specialised to be added into pypfopt (particularly because of the dependencies it would entail). pypfopt is designed to be able to work with complex models like this, but perhaps they shouldn't be part of the API itself. Happy to hear people's thoughts on the matter.
Robert


subsys: logging: Added File System backend log

This PR introduces a new backend based on littleFS. New backend can be turned on
in menuconfig by enabling logging--> Enable FLASH backend.
In init, there is created a new file with continuous numeration. When max size of file is reached,
system creates another one. There is a limit of log files used by backend too. There is a possibility to overwrite
old files or drop new ones. User can also change the name of log files and decide to mount a file system by own
or leave this obligation for the file system. All of them are available to set via Kconfig.
In this PR there are additional 2 tests: with auto mounted file system y backend and manual by user.
Both check if log file contains data logged via API.
There is a change in mcumgr sample too. This project could be used to test new backend.
The easiest way to download the log file is using this command:
mcumgr --conntype serial --connstring='dev=/dev/ttyACM0,baud=115200' fs download /lfs/log.0000 ~/log.txt.
I also updated documentation of mcumgr sample by adding tips how to download log file using mcumgr app.
Additionally there are added dependencies in CMakeLists file.

[x] reworked for testing backends behavior, without mediation of LOG
[x] fix monoethnic log files replacement
[x] auto recovery after unexpected lost of the current log file in runtime.

I think there is need to limit how much memory can occupy logger. It can be done by limit on spare memory or limit on numbers of logger files.
Otherwise it will always have a tendency to take up all available memory, which might conflict with other FS clients,

Number of files is now limited by CONFIG_LOG_BACKEND_FS_FILES_LIMIT. Connecting with CONFIG_LOG_BACKEND_FS_FILE_SIZE gives user control over space dedicated to log files.

I think the entire feature should be renamed "File System backed log" because it operates on file systems not directly on flash.

To clarify: I will remove my NAK if that allows this to get in to 2.4, but somebody will need to fix the issues I've identified before release.  As I will be using this I can say that fixes will be made available.

Did some digging on the issues I've have with UDP + FS for the smp_srv sample. When both overlays are added, execution stops after *** Booting Zephyr *** is printed but before anything else is printed. Setting CONFIG_NET_CONFIG_SETTINGS=n and running net_config_init_app() after mounting the FS let's the code run... once. Also, CONFIG_MPU_ALLOW_FLASH_WRITE=y is necessary for frdm_k64f.
I don't have time to dig further and I'm not even sure if this is an issue with the network stack, fs logging backend or a combination.

In my opinion backend autostart should based on outstanding feature of:
https://github.com/zephyrproject-rtos/zephyr/pull/28320

In my opinion backend autostart should based on outstanding feature of: #28320

I'm not entirely convinced that the fs backend should be automatically started, but rather should allow retroactive enable like network logging does.  Logging is normally enabled first thing post-kernel.  File systems normally start after that.  If autostart is going to require delaying logging until after the file system is up and running, isn't there a chance of losing information that could have been conveyed through other log interfaces?
I'm not going to insist on this, but I do think revising the log system API to allow enabling this backend later would be more flexible than relying on a filesystem automount.

Hello,
I think we should consider extraction of the feature for rotating file to separate module. I think that rotating file is feature which could be helpful in other cases.

I think we should consider extraction of the feature for rotating file to separate module. I think that rotating file is feature which could be helpful in other cases.

Agreed; I have in mind a service that different components can register with, that can be invoked when space drops below a threshold and allows the components to decide which of their files can be removed.
But even when that's available this needs to work when global auto-rotation isn't enabled, and having a set of N files each of which is capped at M bytes is a good solution as long as the names are maintained so the logs aren't overwritten every time the system reboots.

I think we should consider extraction of the feature for rotating file to separate module. I think that rotating file is feature which could be helpful in other cases.

I have no objection, just prefer iterative approach, so can be done in subsequent patch.

@MSyc-NS Thanks for the PR. Would it be much work to make this file system agnostic? I can imagine logs being written to flash or an SD-card and someone wants to mount this on a PC. In which case FAT has more support. This can always be added later.

Would it be much work to make this file system agnostic?

@koffes
This is the plan. I awaiting for #28320 which will provide auto-FS mount. Also as far I know ther is even solution for mounting LittleFS volume under linux.

See also #28892.  We should only have one implementation, we should look at both to compare features.

@pabigot I see place for both of them. I have been receiving interest on either FS backend and simpler storage backend.

superseded by #32973


Progressive MP3 loading

Hi I'm loading the waveform from a json file and the audio from a local server
wavesurfer.util
                .fetchFile({
                    responseType: 'json',
                    url: myWaveformURL
                })
                .on('success', function (data) {
                    var points = data.data || data;
                    wavesurfer.load(myStreamingURL,
                        points
                    );
                    if (autoPlay) { // autoplay
                        // not working: The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page
                        wavesurfer.seekTo(0);
                        setTimeout(() => wavesurfer.play(), 1000);
                    } else { // seek to load annotations data
                        wavesurfer.seekTo(0);
                    }
                });

I see that the player downloads the whole file (~3MB) at load. Any way to avoid this?

what does your wavesurfer config look like?

@thijstriemstra hello, this is my configuration
 // create waveform
        wavesurfer = WaveSurfer.create({
            container: document.querySelector('#waveform'),
            waveColor: '#D9DCFF',
            progressColor: '#4353FF',
            cursorColor: '#4353FF',
            normalize: true,
            pixelRatio: 1,
            minPxPerSec: 300,
            scrollParent: true,

            //// bar visualization
            barWidth: 3,
            barRadius: 3,
            barGap: 1,
            barHeight: 1,
            //// bar visualization

            hideScrollbar: false,
            cursorWidth: 1,
            height: 300,
            plugins: plugins
        });

where plugins are
var plugins = [
            WaveSurfer.regions.create(
                {
                    /*regions: [
                        { "id": 1, "color": "red", "start": 2.96, "end": 3.5, "data": {}, "attributes": {"label": "stars", "highlight":true}}
                    ]*/
                }
            ),
            WaveSurfer.minimap.create({
                height: 100,
                waveColor: '#ddd',
                progressColor: '#999',
                cursorColor: '#999'
            }),
            WaveSurfer.timeline.create({
                container: '#wave-timeline',
                formatTimeCallback: formatTimeCallback,
                timeInterval: timeInterval,
                primaryLabelInterval: primaryLabelInterval,
                secondaryLabelInterval: secondaryLabelInterval,
                primaryColor: 'blue',
                secondaryColor: 'red',
                primaryFontColor: 'blue',
                secondaryFontColor: 'red'
            })
        ]

where callbacks are taken from your examples, and regions are filled later on.

try using backend: MediaElement.

try using backend: 'MediaElement'.

@thijstriemstra so if I put that backend, it actually works, immediately firing the  wavesurfer.on('ready'), but what happens is that I get all the regions overlapped, as it wrongly calculates the JSON waveform vs the audio file duration.
Shall I have to change the flow in that case?
Currently the whole flow looks like:
// create waveform
wavesurfer = WaveSurfer.create({})
// load waveform
wavesurfer.util
.fetchFile({ })
 .on('success', (data) => {
    var points = data.data || data;
    // load audio file
    wavesurfer.load(myStreamingURL,points);
});
// bind wavesurfer events
wavesurfer.on('ready', () => {
    var ajax=wavesurfer.util.ajax({
    responseType: 'json',
    url: regionsMetadataUrl
    });
  ajax
 .on('success', function (data) {
    // load and save regions
    loadRegions(data);
    saveRegions();
}

Sidenote: the streaming servers support media streaming (with range header Accept-Ranges support, etc.) so it should be fine on that side.

try this flow: https://github.com/katspaugh/wavesurfer.js/blob/master/example/audio-element/main.js#L39 I don't use regions plugin, can't help you there. Will close since original issue is solved.


SqlConnectionStringBuilder deviation in behavior for MultipleActiveResultSets

Describe the bug
I am using SqlConnectionStringBuilder to generate my connection strings for different database connections at run-time. For some usages I have older System.Data code (DbUp in this case) that consumes these generated connection strings. When connection strings are generated by Microsoft.Data.SqlClient.SqlConnectionStringBuilder it adds extra spaces to MultipleActiveResultSets making it Multiple Active Result Sets which is not compatible with the older System.Data versions of the library.
Note: these stack traces are for System.Data.SqlClient.SqlConnectionStringBuilder and System.Data.SqlClient.SqlConnection to show the incompatibility
System.ArgumentException: Keyword not supported: 'multiple active result sets'.
   at System.Data.SqlClient.SqlConnectionStringBuilder.GetIndex(String keyword)
   at System.Data.SqlClient.SqlConnectionStringBuilder.set_Item(String keyword, Object value)
   at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(String value)
   at System.Data.SqlClient.SqlConnectionStringBuilder..ctor(String connectionString)

System.ArgumentException: Keyword not supported: 'multiple active result sets'.
   at System.Data.Common.DbConnectionOptions.ParseInternal(Dictionary`2 parsetable, String connectionString, Boolean buildChain, Dictionary`2 synonyms, Boolean firstKey)
   at System.Data.Common.DbConnectionOptions..ctor(String connectionString, Dictionary`2 synonyms)
   at System.Data.SqlClient.SqlConnectionString..ctor(String connectionString)
   at System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey key, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions)
   at System.Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey key)
   at System.Data.SqlClient.SqlConnection.set_ConnectionString(String value)
   at System.Data.SqlClient.SqlConnection..ctor(String connectionString)

To reproduce
References:
System.Data.SqlClient 4.8.2
Microsoft.Data.SqlClient 2.1.0
using System;

namespace MarsConnectionString
{
    class Program
    {
        static void Main(string[] args)
        {
            const string connectionString = @"Data Source=localhost;PersistSecurityInfo=False;MultipleActiveResultSets=False;";

            var builderSystem = new System.Data.SqlClient.SqlConnectionStringBuilder(connectionString);
            Console.WriteLine(builderSystem.ConnectionString);
            // Expected: Data Source=localhost;Persist Security Info=False;MultipleActiveResultSets=False

            var builderMsft = new Microsoft.Data.SqlClient.SqlConnectionStringBuilder(connectionString);
            Console.WriteLine(builderMsft.ConnectionString);
            // Actual:   Data Source=localhost;Persist Security Info=False;Multiple Active Result Sets=False

            // OK
            new System.Data.SqlClient.SqlConnectionStringBuilder(builderSystem.ConnectionString);

            // OK
            new Microsoft.Data.SqlClient.SqlConnectionStringBuilder(builderMsft.ConnectionString);

            // exception: System.ArgumentException: Keyword not supported: 'multiple active result sets'.
            try
            {
                // System.Data can't handle a connection string made by Microsoft.Data
                new System.Data.SqlClient.SqlConnectionStringBuilder(builderMsft.ConnectionString);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }

            // exception: System.ArgumentException: 'Keyword not supported: 'multiple active result sets'.'
            try
            {
                // System.Data can't handle a connection string made by Microsoft.Data
                using var _ = new System.Data.SqlClient.SqlConnection(builderMsft.ConnectionString);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
    }
}

Expected behavior
I expect Microsoft.Data.SqlClient.SqlConnectionStringBuilder to produce a connection string where "MultipleActiveResultSets" does not have extra spaces added to it
Further technical details
Microsoft.Data.SqlClient version: 2.1.0
.NET target: netcoreapp3.1
SQL Server version: N/A
Operating system: Reproduced on Windows 19041.630 and Azure PaaS Linux Hosts
Additional context
Possibly related to #654

Hi @aarondandy
Mixing drivers like that is not correct approach as they're different products.
Just like you cannot create a connection from 1 driver and pass on to another, or cast object from System.Data.SqlClient namespace to Microsoft.Data.SqlClient. They're different drivers.
If you want to provide connection string to System.Data.SqlClient, you need to fetch it from the same driver.

Workarounds
static string SimpleWorkaround(string connectionString) =>
    connectionString
        ?.Replace("Multiple Active Result Sets", "MultipleActiveResultSets", StringComparison.OrdinalIgnoreCase)
        .Replace("Trust Server Certificate", "TrustServerCertificate", StringComparison.OrdinalIgnoreCase);

static string RediculousWorkaround(string connectionString)
{
    var csBuilder = new Microsoft.Data.SqlClient.SqlConnectionStringBuilder(connectionString);

    var mars = csBuilder.MultipleActiveResultSets;
    csBuilder[nameof(csBuilder.MultipleActiveResultSets)] = null;
    var trustServerCertificate = csBuilder.TrustServerCertificate;
    csBuilder[nameof(csBuilder.TrustServerCertificate)] = null;

    var stringBuilder = new StringBuilder(csBuilder.ConnectionString);

    if (mars)
    {
        stringBuilder.Append(";MultipleActiveResultSets=True");
    }
    if (trustServerCertificate)
    {
        stringBuilder.Append(";TrustServerCertificate=True");
    }

    return stringBuilder.ToString();
}

Mixing drivers like that is not correct approach as they're different products.

I understand but this is still a reality for those of us using tools in this ecosystem and as the ecosystem makes this transition. Is there at least a way to get a list of connection string "keywords" that have changed between these libraries? If the burden of compatibility falls to users that would be a big help to us.

Yes, they're documented here:
https://github.com/dotnet/SqlClient/blob/master/release-notes/2.0/2.0.0.md#new-connection-string-property-synonyms
You may use them for transition period!

Awesome, thanks. I'll update my horrible workaround!

Closing in light of above discussions.

@cheenamalhotra Sorry, I don't follow how to use the workaround? Could you give an example?

Where you may have code similar to new System.Data.SqlClient.SqlConnectionStringBuilder(connectionString) you may instead need to pass the connection string through the workaround above to format it as the legacy client expects. It may then look like new System.Data.SqlClient.SqlConnectionStringBuilder(NormalizeToLegacyConnectionString(connectionString)). If you connection strings are in configuration files or variables it may be easier to just modify those values manually based on the list of "keywords" found here: https://github.com/dotnet/SqlClient/blob/master/release-notes/2.0/2.0.0.md#new-connection-string-property-synonyms

@aarondandy Thanks, that makes sense now.


tests, outside-connectivity: change hard-coded addresses to cmd flags

Signed-off-by: alonsadan<EMAIL_ADDRESS>
What this PR does / why we need it:
Internal  and external connectivity tests are two separate networking
capabilities, that should be tested seperatly. This PR extracts the external
conn' tests to a separate ginkgo case.
In addition, to allow running the network tests also in an environment
with no internet connection, This PR adds the ability to skip, or set
different addresses  for the outside conn' tests.
This allowes also to remove the XFAIL from the ipv6 outside conn' test.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #5113
Special notes for your reviewer:
Release note:

NONE

rebased on master

I made some changes.
Now in order to skip the tests one will have to export SKIP_OUTSIDE_CONN_TESTS env variable. The addresses will be provided as well as an env variable.
By default when run using make functest  the tests will not be skipped, and  the default addresses will be used.
<IP_ADDRESS>, 2001:db8:1::1 and google.com.
Also, I removed the xfail.

Except for the inline comments, I am unclear how someone is going to use this for:

Conformance tests.
Running against an existing cluster (that is not kubevirtci).

I am not sure about this. @enp0s3  Should there be any problem running this against non kubevirtCI cluster? By running I mean to define to env variables so that they will take effect when running the tests?

Have you tested it with non default values in one of the above scenarios?

yes.

Please add to the documentation and the commit message how to use those (in the commit, an example should be enough).

Done.

/retest

@enp0s3  can you take another look?

Except for the inline comments, I am unclear how someone is going to use this for:

Conformance tests.
Running against an existing cluster (that is not kubevirtci).

I am not sure about this. @enp0s3 Should there be any problem running this against non kubevirtCI cluster? By running I mean to define to env variables so that they will take effect when running the tests?

@alonSadan @EdDev Hi. In order to run these tests against an existing cluster you will need to set KUBEVIRT_PROVIDER=external and KUBECONFIG=<your_cluster_kconfig> . Following the implementation of this PR, as long as SKIP_OUTSIDE_CONN_TESTS unset, the external connectivity tests will be executed, and it's idempotent of the cluster provider.

rebased on master

I took different approach to deal with this. I started by splitting the outside tests to different ginkgo cases, and marked it with a `[outside_connectivity] label.  there is still an ability to set the addresses for pinging , but not when running them as conformance tests.
conformance tests only allow the user to skip the outside tests.
more details are in the README I edited in the second commit.

Please see this
saw it on another unmerged PR, so its not due to this PR i guess
https://prow.ci.kubevirt.io/view/gs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/5169/pull-kubevirt-e2e-kind-1.17-sriov/1387378223423164416
we might want to escalate it

rebased on master

two last pushes are rebase on master

please make sure this flake is not due to the PR
https://prow.ci.kubevirt.io/view/gs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/5169/pull-kubevirt-e2e-k8s-1.20-sig-network/1391752306172628992

Thanks Or for pointing it out.
On my local env it passes, and it appears that the problem is with the CI setup which I found out runs on a new cluster.
From what I understand there is a known issue, that the new cluster is not yet able to run workloads that require persistent volumes.
This includes the docker proxy setup, which contained all the daemon configuration . The docker daemon has to be configured to run ipv6, and until this issue is solved, the ipv6 test won't pass.
I hope it will not take much linger for the cluster to be properly configured. Let's hold till then.
/hold

The new cluster indeed need the proxy so it will config the ipv6, but we are still running on the old cluster IIUC,

I am not sure about that. @fgimenez do you  know if we still running on the old cluster?

else you will see it fails every time,

We miss the failures because the relevant tests were skipped, and not failed. In fact, I checked many successful runs and in all of them the IPV6 relevant tests were skipped (that is failed and skipped by xfail). look in those runs  for exapmle: 1 , 2 , 3 ,  4.
I think that those tests fails all the time, and the xfail "covers" for that by skipping it. We miss it because we are not looking at the xfail warnings.

the tests defaults aren't changed in this PR, so we should not see regression, unless i am missing something?

I think the regression is due the splitting of the test, and removing the xfail. This should get fixed when the cluster will be configured properly (If we are actually running on the new not-configured cluster).

https://prow.ci.kubevirt.io/?job=*sig-network&cluster=phx-prow

Yes you right, I confused with 1.19 which is the one that still runs on the old cluster

but it means you can't remove XFAIL else it will fail the lanes on 1.20 isn't it ?

but it means you can't remove XFAIL (Ipv6) else it will fail the lanes on 1.20 isn't it ?
https://prow.ci.kubevirt.io/view/gs/kubevirt-prow/pr-logs/pull/kubevirt_kubevirt/5169/pull-kubevirt-e2e-k8s-1.20-sig-network/1394576432436350976

We can also  wait for the cluster to be properly configured should be a matter of days as I understand.

We can also wait for the cluster to be properly configured. Should be a matter of days as I understand.

I don't see why we should create dependency, we can just create other PR that will remove that XFAIL,
We do have a lane that checks your changes mandatory - k8s-1.19-sig-network

rebased on master

We can also wait for the cluster to be properly configured. Should be a matter of days as I understand.

I don't see why we should create dependency, we can just create other PR that will remove that XFAIL,
We do have a lane that checks your changes mandatory - k8s-1.19-sig-network

since it was a matter of days I prefered to wait.
Now the new cluster is configured and it should be OK

Thanks

Thank you Or!

I did not test the previous revision properly and had to make some changes in order for it work.
Now with those minor changes all the changes and examples are working.

added curly brackets arround sonobuoy_args var.

/hold cancel


links

There is problem with links support. Your project uses patternfly-bootstrap-treeview, but this fork doesn't support links as jonmiles/bootstrap-treeview. (links == href)

Hello! Do you have a broken example? Does this work?
Everything works for me with the href parameters


Client Allocation Request for: SUPER GRAPH

Client Allocation Questions
Core Information

Name: SUPER GRAPH
Website / Social Media: SUPER GRAPH
Region: Asia excl. Greater China
DataCap Requested: 1TiB
Addresses to be Notarized: f1bhd3zangfi7lrzwpsizumrfmigpobhgr6lz3i7q
Notary Requested: dannyob

@kks20000 Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

Hi @kks20000 , apologies for the delay. Could you give a description of the data (will it be public?), and perhaps a website or description of your organization? Are you Super Graph the miner?

Hi @kks20000 , apologies for the delay. Could you give a description of the data (will it be public?), and perhaps a website or description of your organization? Are you Super Graph the miner?

Hello.
I have a supergraph miner.
f1bhd3zangfi7lrzwpsizumrfmigpobhgr6lz3i7q Can I use this address with a miner and a notary public?
I don't know what to do.

Hello!
Datacap is available for users wanting to store data on the network -- miners themselves do not usually request it. If you have a customer who we can confirm is a legitimate user, storing useful data, that customer can apply for datacap from us.
I am happy to explain further -- what language do you speak best?

Hi @kks20000 , I haven't heard from you yet. I'll close this issue in 24 hours unless you say you'd like to continue with it before then.

I am happy to explain further -- what language do you speak best?

I was busy with other things, so I checked now.
Can I get Korean language support?


Cyrillic fonts/names of files. Tree view

Cyrillic names of files don't displayed correctly in tree view.
I use the same font for tree and for code view.

This seems to work fine on linux, definitely not expect behaviour! If you click the file/directory on the treeview does it open the correct file, and are you able to save the file without issue?

It save and work correct but creating new file in Lite editor with cyrillic name leed to bug in name (in file explorer).

Looks like windows do not use UTF8 for file names

Thanks for the annotated screenshot and research on windows filenames! This bug is something I want to fix in the future but it's less clear exactly how to approach fixing it in an elegant manner, thus the issue might have to sit for a little while.

Ctrl+O invokes open file dialog where no dirs named in Cyrillic are visible at all, and if I paste a full Cyrillic path to a file, then the app says that “No such file or directory”. Meh, too raw to use then.


Drop the ErrorType constraint

What is the purpose of this? I see no practical benefit and I see a major downside of it disallowing me to reuse the existing types for errors, e.g. String.
A similar mistake was made in Haskell some time ago, and it has been criticised extensively ever since, e.g. see the "Why not ErrorT?" section of this post.

You make a good point and I think there is no good reason to keep E restricted to ErrorType. The first version of BF only supported NSError and the change to any E: ErrorType was big enough for me not to see that E doesn't need to be constrained.
There is however a technical reason why this is not possible at the moment: we rely on Result, which restricts E to ErrorType. I think they also have some doubts about this restriction, so it could change. If you want you could open the issue there or else I could do it myself.

I brought this up at https://github.com/antitypical/Result/issues/131. Result is not going to change now, so this issue cannot be fixed. Thanks for bringing it up though, let's re-evaluate in the future.


[Form] Validation error 'range.indexOf is not a function' error when integer range not specified

When specifying integer s the content type for form validation the docs say both integer or integer[1..10] are allowed. But using just integer returns the error: Uncaught TypeError: range.indexOf is not a function because range is passed as false and there is no guard against false when checking for range.
Fiddle: http://jsfiddle.net/v3tax6tk/
Docs ref:

This line does not check for !range.
      if(range === undefined || range === '' || range === '..') {
        // do nothing
      }
      else if(range.indexOf('..') == -1) {
        if(intRegExp.test(range)) {
          min = max = range - 0;
        }
      }

Relates to #3045 & https://github.com/Semantic-Org/Semantic-UI/pull/997

#3045 fixes, in 2.1.5


fix(toast): allow to change position start/end of toast

Short description of what this resolves:
This allows user to set start and/or end position of toast-wrapper by using --start, --end.
Changes proposed in this pull request:

Ionic Version:
4.2.0
Fixes: #17854

Ok, no problem. I have created some tests.

Hey there!
Sorry for the delay in reviewing this. We had an update to toast that we were trying to get merged in, and unfortunately there were some merge conflicts created as a result.
Would you be able to resolve the conflicts? After that I can take another look.
Thanks! 🙂

Ok, no problem. Thanks for response. I have resolved conflicts and merged changes.

Thanks for the PR! We made some changes that I just wanted to make aware, the big one being renaming the following:
left -> start
right -> end

The main reason for this is because in RTL applications the left is actually the right, so in many places we are using start and end now for RTL support. 🙂
I made a couple changes to the implementation but this is good to go! We can merge it once the build passes.

Merged, thank you!!


Trouble to install it on mac using docker

I am following the tutorial to install it on mac. When I run the command
docker-compose -f sawtooth-default.yaml up
It does download the images and runs but then it stops after printing the following lines:
sawtooth-shell-default | creating key directory: /root/.sawtooth/keys
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.priv
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub
Anyone can point me a direction on how to get it running on my mac?

I can look at it tomorrow morning if no one else is available to help you
trouble shoot. I will reinstall tomorrow morning.
Thaddeus
On Thu, Aug 9, 2018, 9:49 PM Anson Yao<EMAIL_ADDRESS>wrote:

I am following the tutorial to install it and mac. When I run the command
docker-compose -f sawtooth-default.yaml up
It does download the images and runs but then it stops after printing the
following lines:
sawtooth-shell-default | creating key directory: /root/.sawtooth/keys
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.priv
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub
Anyone can point me a direction on how to get it running on my mac?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/hyperledger/education/issues/63, or mute the thread
https://github.com/notifications/unsubscribe-auth/AcJxJqe16QqG7Jkw2R0YRte3JJkh9VSDks5uPRDDgaJpZM4V3lZa
.

I followed the steps after the installation on tutorials and they are working. Seems it is just the console stopped printing after ```
sawtooth-shell-default | creating key directory: /root/.sawtooth/keys
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.priv
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub

👍
On Thu, Aug 9, 2018, 10:33 PM Anson Yao<EMAIL_ADDRESS>wrote:

I followed the steps after the installation on tutorials and they are
working. Seems it is just the console stopped printing after ```
sawtooth-shell-default | creating key directory: /root/.sawtooth/keys
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.priv
sawtooth-shell-default | writing file: /root/.sawtooth/keys/root.pub
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hyperledger/education/issues/63#issuecomment-411979981,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcJxJgtIReAjcXyWI7g8U5L7su84HDlpks5uPRsxgaJpZM4V3lZa
.

I've also run into the same issue (here) with the key generation, though, I have gotten a little past it by installing lower versions of docker and docker-compose. Currently, I'm usin Docker 17.03.1 and Docker-compose 1.9.0.
Maybe you could try something similar and see if your luck is better than mine.


Clear form data after submission

Hello everyone, I'm new to programming and I'm using this method to send a simple subscription to my static website. I would like to ask for help to adapt this code to clear the fields of the form shortly after sending the data, I tried some methods with jquery and have erased the data before sending.
<script>
  const scriptURL = 'macro-here'
  const form = document.forms['google']

  form.addEventListener('submit', e => {
    e.preventDefault()
    fetch(scriptURL, { method: 'POST', body: new FormData(form)})
      .then(response => console.log('Success!', response))
      .catch(error => console.error('Error!', error.message))
  })
</script>

Did you try clearing then form fields inside your .then callback?

    form.fireEvent("reset");

form.reset() works fine inside .then callback


Test Express & usage

[x] static page
[x] render jade
[ ] multiple writes

What do you mean by "multiple writes"?

Something that call more than once res.write, so we simulate packages that might be streaming data. Or we could try using one that actually does it

Maybe you can implement an example for that, I'm not sure how to structure it and describe it.

i'll put in the TO DO list but can't do just yet :disappointed:

Seems related to #15 :-)

Yup @gustavnikolaj , but this was more related to tests ;). I'll close this because tests will be included for sure along with the streaming feature.


Selectable root finder

Currently the event-finding algorithm uses the brent_solver from roots-fortran. This could be an optional input, so the caller can select any of the methods in that library.

Note: should also be able to specify all the root-finder options: ftol, rtol, atol, maxiter, bisect_on_failure.


Improve stack and material top tabs

Hi!
I improved Stack binding by adding:

headerBackTestID option
getId screen prop
and improved MaterialTopTabs by adding swipeEnabled screen option since setting it through props is deprecated.

Thanks, nice!

@MoOx, I know it is not the best place to ask, but could you check svg and webview bindings? I have some PRs open there. svg PR is nothing much, while webview is a bit bigger change, more like a proposition.
Thanks!

Sorry for this horrible delay. Thanks for you contributions. Do not hesitate to ping me more next time :)

No problem!


[release-1.16] prow: move to use WI for auth_header in private

Manual cherrypick required.
#45606 failed to apply on top of branch "release-1.16":
Applying: prow: move to use WI for auth_header in private
Using index info to reconstruct a base tree...
A	bin/build_ztunnel.sh
M	bin/init.sh
Falling back to patching base and 3-way merge...
Auto-merging bin/init.sh
CONFLICT (modify/delete): bin/build_ztunnel.sh deleted in HEAD and modified in prow: move to use WI for auth_header in private. Version prow: move to use WI for auth_header in private of bin/build_ztunnel.sh left in tree.
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 prow: move to use WI for auth_header in private
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

fixed by https://github.com/istio/istio/pull/45619


Add /triage and /email commands for rotation management

Because

The rotations of the maintainer/core teams are less than ideal to manage at the moment.
This PR

Adds automated rotation management functionality to the bot.
It also includes some QOL changes, such as adding eslint-config-prettier so that eslint and prettier get along, and lays some foundational infrastructure for testing around redis and discordjs slash commands.
Issue

Closes #XXXXX
Additional Information

Pull Request Requirements

[x] I have thoroughly read and understand The Odin Project Contributing Guide
[x] The title of this PR follows the location of change: brief description of change format, e.g. Callbacks command: Update verbiage
[x] The Because section summarizes the reason for this PR
[x] The This PR section has a bullet point list describing the changes in this PR
[ ] If this PR addresses an open issue, it is linked in the Issue section
[x] If this PR adds new features or functionality, I have added new tests
[x] If applicable, I have ensured all tests related to any command files included in this PR pass, and/or all snapshots are up to date

For feature request 1:
Hmmm, I had originally thought we could use Dyno to trigger the scheduled rotation, but that seems to not be the case.
I do agree that this is a feature we should have, but I would rather see it done under its own PR and done in a reusable way that isn't specific to these rotation commands.
For 2:
This is interesting, but I think would be dependent on 1 being implemented. I would like to see it done under a PR of its own after 1 IMO.
For 3: Yeah I went back and forth on when to ping and when to just say people's names. I'll continue this discussion on Discord as this would be an easy change to implement, but I'd like to see the consensus of people there.
If you'd like me to scope out and put issues together for 1 and 2 just lmk.

For 2:
This is interesting, but I think would be dependent on 1 being implemented. I would like to see it done under a PR of its own after 1 IMO.

Hmm, it might be dependent on 1, but I think that depends on how we approach this problem. If you think we want to implement this separately, then sure, I'll leave this to you.

I do still think that they would ideally be done under separate PRs, this one is already big enough

In terms of the size, we're already at a point of no return lol. I think we can just add those features I mentioned in this PR. Anyways, I'll leave this to you as well.

@01zulfi I think I addressed everthing you mentioned that I don't think needs more discussion.
There are still features we want for sure, but I feel like this is at a point where it can already provide quite a bit of value, so I'd love for us to go ahead and start using it and build out those additional features over time if you agree.

Also tweaked the responses slightly since I felt like I had to for the additions after making it so that members couldn't be added multiple times.
It will now ping each swapped user, ping a removed user, and ping added users. Still not to the level you were talking about previously, but it's part way there. If after followup discussion we want to add in more pings it should be a lot easier to do now anyways.

Going to go ahead and merge! I'm a bit limited on availability atm though so if this breaks things someone please revert 😆


Send user confirmation email

Upon successful storage of the user's data in the database, a confirmation email should be sent to the user's address

This was accomplished using nodemailer which, as of a recent change to Google's security policy, requires the use of OAuth to work properly with gmail. A new issue has been created to address this: #6


[Bug] About Linkis, in addition to supporting the deployment of user logins, can other user logins be configured?

Search before asking

[X] I searched the issues and found no similar issues.

Linkis Component
linkis-commons
What happened + What you expected to happen
关于Linkis除了支持部署用户登录可以配置其他用户登录吗?
About Linkis, in addition to supporting the deployment of user logins, can other user logins be configured?
Relevent platform
·
Reproduction script
·
Anything else
This question comes from the QA documentation of the Linkis community
QA Link：https://docs.qq.com/doc/DSGZhdnpMV3lTUUxq
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

当然可以。部署用户只是为了方便使用的用户。linkis-mg-gateway支持通过配置LDAP服务和SSO服务进行访问，本身没有用户校验体系，比如要开启LDAP服务访问，你只要在配置linkis-mg-gateway.properties您的LDAP服务端的配置如下：
wds.linkis.ldap.proxy.url=ldap://<IP_ADDRESS>:389/#您的LDAP服务URL
wds.linkis.ldap.proxy.baseDN=dc=webank，dc=com#您的LDAP服务的配置

用户如果需要执行任务，还需在linux服务器上面建立相应用户名的用户，如果是标准版本该用户需要能执行Spark和hive任务，并需要在本地工作空间和HDFS目录/tmp/linkis建立对应的用户名目录。

The deployment user is just for the convenience of the user. linkis-mg-gateway supports access by configuring LDAP service and SSO service. There is no user verification system. For example, to enable LDAP service access, you only need to configure linkis-mg-gateway.properties. The configuration of your LDAP server is as follows:
wds.linkis.ldap.proxy.url=ldap://<IP_ADDRESS>:389/#您的LDAP服务URL
wds.linkis.ldap.proxy.baseDN=dc=webank，dc=com#您的LDAP服务的配置

If the user needs to perform tasks, a user with the corresponding user name needs to be created on the Linux server. If it is a standard version, the user needs to be able to execute Spark and hive tasks, and a corresponding user needs to be created in the local workspace and the HDFS directory /tmp/linkis name directory.


[package_info] Add web implementation

What would you like the web implementation of package_info to do? I can't really think of natural web implementations of these: https://pub.dev/documentation/package_info/latest/package_info/PackageInfo-class.html

The most important feature is the version of the app. Maybe the version could be inserted at compile time and then be read by the plugin? All the other features don't matter for me, but should be supported in some way for completeness.

Hi, I would like to ask if anyone could give me some idea on how to integrate the web part?? Like i don't no where to begin from.

Any updates?

@hterkelsen Easy to answer:
appName - the name of the application that's put into the Index.html TITLE tag. Maybe the description, that can be discussed, because:
packageName - might be the ˙nameentry from thepubspec.yaml` instead.
version - pubspec.yaml version before the plus
buildNumber - pubspec.yaml version after the plus

@hterkelsen I would like to ask you that within this plugin the macos implementation didn't add the package_info into another directory of it so do i leave it or follow the instruction from your medium article

My use case for getting

@hterkelsen This one is easy to answer:
appName - the name of the application that's placed into the Index.html TITLE tag. Maybe the description, that can be discussed, because:
packageName - might be the name entry from the pubspec.yaml instead.
version - pubspec.yaml version before the plus
buildNumber - pubspec.yaml version after the plus

I agree with this mapping. We have a settings page that shows package info.
Sometimes we want to make sure the version we're running is the latest and that we aren't on a cached version. Or if a customer reports a bug, we may ask them to go to settings to pull this up for us.
Having this data available on all platforms would be helpful.

@hterkelsen having the version and build number this package on the web would be amazing.

Any updates?

Looks like @balvinderz is working on it

#64644  got merged. will work on the package_info web implementation now.

Hey @balvinderz how come https://github.com/flutter/plugins/pull/3035 got closed without merge? Is there someplace else where we can keep track of progress? Thanks!

@jlubeck flutter community is taking over this package .so soon ,there will be a new package called package_info_plus with support for windows and web. You will have to wait until then .

@jlubeck flutter community is taking over this package .so soon ,there will be a new package called package_info_plus with support for windows and web. You will have to wait until then .

Oh I see, thank you for the quick answer. Do you have any idea if there is an ETA on it? No worries if you don't :D Just curious!

@jlubeck i don't know

@balvinderz is it going to be a federated plugin that adds support to web and windows or a completely different package?

Different package which support for android,ios,macos,web and windows

you can use package_info_plus now.
https://pub.dev/packages/package_info_plus

Hello, thank you for your work, seems to return null for version, do you have some requirements for web how it should works?

@topilski you should be on the latest master/Dev branch for the web implementation to work

@balvinderz

@topilski  you are on beta channel

Yes works, thank you!

@ditman I think this can be closed now.

It can! Thanks @balvinderz!
Take a look at package_info_plus, it supports web!
Closing this as done!

So... package_info_plus doesn't work really well for web - at least for me it wasn't finding version.json.
I think that the best approach is generating static info at build time from pubspec.yaml and there's already a package for that! https://pub.dev/packages/build_pubspec
The package generates pubspec.yaml dart code at build time, so we're able to retrieve those infos and use them without all of those async await calls.
Of course, these infos have to be manipulated properly (eg: split version by + to get build and version name) and they also don't reflect the real platform files (eg: if you change something directly on platform files that are not generated from pubspec.yaml), but despite these problems I think that its a good alternative.
Note: the only prop I don't see being generated here is the appName, but at least for me, it's not needed - and also can be probably added in pubspect + generated

@Grohden  are you on latest master or dev branch?

@balvinderz flutter?
Flutter 1.22.0 • channel beta • https://github.com/flutter/flutter.git
Framework • revision d408d302e2 (3 weeks ago) • 2020-09-29 11:49:17 -0700
Engine • revision 5babba6c4d
Tools • Dart 2.10.0

Probably beta branch (?)

@Grohden this doesnt work in beta channel . You need to be on dev or master

Short question: What is the difference between package_info and package_info_plus? Why did not implemented this feature for package_info?

@Grohden this doesnt work in beta channel . You need to be on dev or master channel

This now works in beta branch too .

@nilsreichardt See https://github.com/flutter/flutter/issues/83277 for more context

Short question: What is the difference between package_info and package_info_plus? Why did not implemented this feature for package_info?

"Important: As of January 2021, the Flutter team is no longer accepting non-critical PRs for the original set of plugins in flutter/plugins, and instead they should be submitted in this project. You can read more about this announcement here. as well as in the Flutter 2 announcement blog post." - https://pub.dev/packages/package_info_plus


AutH/AuthZ flows for registries

In the distribution spec there is only a single sentence about AutH/AutZ:

This endpoint MAY be used for authentication/authorization purposes, but this is out of the purview of this specification.

And the only available description how to authenticate with registry is available in Docker auth token documentation. It seems though that different vendors interpret the flows differently and clients have different expectations about the flows.
Has the community thought of providing standardized auth and autz flows for registries? Especially interesting are use-cases with registries that have anonymous access, registries with mixed (anonymous and restricted) access as well as more sophisticated implementation of RBAC on registries. Curious to hear thoughts about this?

I'd love to see that documented and standardized. I think this is a duplicate of #240.

We at the devcontainers project +1 to a standardized spec for authz/authn.  We utilize the distribution spec and have received requests to support X registry, which is difficult to do with many different approaches to auth.


better layout

SPEX layout is quite primitive, and there's no control

https://gist.github.com/VladimirAlexiev/94eb90d237a8bd772ba692737c2f108d#gistcomment-3798165
https://gist.github.com/VladimirAlexiev/94eb90d237a8bd772ba692737c2f108d#gistcomment-3798169

@ktk "auto-layouting is super hard, any feature requests need to be financed or contributed :)"
Graph layout is hard if you do it yourself, but can be easy if you use GraphViz or PlantUML.
See what they can do at https://www.graphviz.org/gallery/ and https://real-world-plantuml.com/.
My rdfpuml uses plantuml object (or is it class) diagrams to render RDF.
PlantUML by default uses GraphViz (which is a set of C executables) for layout, but includes other options:

java: https://plantuml.com/smetana02
js: http://plantuml.com/vizjs

Most people use Graphviz dot, but it has other parts as well, see https://www.graphviz.org/documentation/.
Dotty is an interactive editor, but I don't know how old technologies it uses.
https://www.google.com/search?q=site%3Agraphviz.org+javascript returns interesting graphviz+javascript tools, including

d3-graphviz
https://github.com/mdaines/viz.js/ (may be the same or different from the one above)
https://github.com/hpcc-systems/hpcc-js-wasm/

There are many interactive editors listed as https://graphviz.org/resources/#graphical-interfaces

https://github.com/magjac/d3-graphviz
https://bl.ocks.org/magjac/4acffdb3afbc4f71b448a210b5060bca: animated graph transitions
https://bl.ocks.org/magjac/69dc955a2e2ee085f60369c4a73f92a6

@VladimirAlexiev thank you for the suggestions, we are looking for PR as this seem to be straight forward for you.

It's not straightforward. I'm just wondering why you started a graph layout tool from zero.

We obviously did not start from zero, please check out the code. We also did tests with https://ialab.it.monash.edu/webcola/ (website not reachable currently) which we deemed as the most power-full and best fit so far, but it is not up-to-date anymore in regards to D3.
We definitely plan to further improve this engine, but it is not easy without any further signals from the data itself (e.g. importance, hierarchy direction, etc.).
We plan to investigate which signal are best to inform a layout engine first (remember its all introspected here). And then in a second step to go further. As the rendering is implemented right now was successfully used together with customers. (It even found its way already in a paper http://www.semantic-web-journal.net/system/files/swj2746.pdf).

Is it this paper? http://www.semantic-web-journal.net/content/rescs-ontology-linking-open-research-data-multiple-sources-support-interdisciplinary

exactly