concatenate() at teardown stage makes assumption on task name ending

The concatenate(concatlist, output_folder) function called at teardown stage assumes the last two characters of taskname representing the run number such as 01, 02...  However, outputs from fmriprep add "_desc_preproc" to the end of the original taskname and thus make all the tasks having the exact same ending of "oc". This causes problem and teardown cannot finish successfully.

@xhaoNY This is a good catch.
@perronea I think we need a more robust regular expression put in place for the taskname and run number parsing.  Can you please add this to your queue?

There seems to be an issue with the regex as of v4.0.6; the first capture group captures everything starting at "task-" and ending immediately before the last digit before an underscore; the second capture group captures only the last digit.
In short, if the run labels are zero-padded in front ("run-01", "run-02", "run-03") the leading zero is included in the first capture group and becomes part of taskname  .  If there are >= 10 runs, runs 10-19 have an extra "1" attached to taskname, runs 20-29 have an extra "2" attached, etc.
During teardown this also means runs 1-9 are being concatenated to task-<task-label>0_DCANBOLDProc_<ver>.dtseries.nii, runs 10-19 to task-<task-label>1_DCANBOLDProc_<ver>.dtseries.nii, runs 20-29 to task-<task-label>2_DCANBOLDProc_<ver>.dtseries.nii, etc...
The relevant snippet of dcan_bold_proc.py is
expr = re.compile(r'.*(task-[^_]+).*([0-9]+).*')
taskname = expr.match(task).group(1)

Example of current regex behavior:

If the regex is changed so the second capture group matches exactly two digits, I think the problem would be fixed? (Admittedly it's messy to rely on the assumption run indices will be always two-digits and zero-padded, but we were assuming as much prior to this regex...)
Example:

the following regex might be more a general solution .*(task-[^0-9]+)([0-9]*[^_]).*  it won't work if numerics are part of the task name though

The benefit here is that the solution will work for any combination of letters and numbers under BIDS compatible formats -- since the first part is just looking for numbers to terminate.

In fact, it will work for some violations of BIDS compatible formats as well:

However, here's what happens if numerics are part of the task name:

I've made the changed and modified the "develop" branch accordingly. I created a merge request for review and assigned @kathy-snider and @perronea, but really if anyone can test it that should be fine.
Once the review is approved it should automatically merge the change into master, resolving it.
@xhaoNY feel free to try the develop branch and see if it resolves your issue. If it does, we can pull it into main and close off the ticket.

Yo! I "approved" the changes before I read these emails Testing is part of making the change, so if this has not been testing, I would suggest doing that as soon as possible.

From: ericfeczko @.***>
Sent: Wednesday, July 7, 2021 4:26 PM
To: DCAN-Labs/dcan_bold_processing
Cc: Kathy Snider; Mention
Subject: [EXTERNAL] Re: [DCAN-Labs/dcan_bold_processing] concatenate() at teardown stage makes assumption on task name ending (#5)
I've made the changed and modified the "develop" branch accordingly. I created a merge request for review and assigned @kathy-sniderhttps://github.com/kathy-snider and @perroneahttps://github.com/perronea, but really if anyone can test it that should be fine.
Once the review is approved it should automatically merge the change into master, resolving it.
@xhaoNYhttps://github.com/xhaoNY feel free to try the develop branch and see if it resolves your issue. If it does, we can pull it into main and close off the ticket.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/DCAN-Labs/dcan_bold_processing/issues/5#issuecomment-875999778, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJAQP4GWKAQEAQMMBLNT2N3TWTPCNANCNFSM4TI5F4IQ.

@xhaoNY Have you had a chance to try the dev branch?

I tested this for regression (i.e., make sure we don't break anything that already works). This fix breaks the names of files that are the concatenation of all runs. For example, a file that was called:
files/MNINonLinear/Results/task-rest_DCANBOLDProc_v4.0.0_Atlas.dtseries.nii
becomes:
files/MNINonLinear/Results/task-rest_run-_DCANBOLDProc_v4.0.0_Atlas.dtseries.nii
NOTE: since both pipelines that use BIDS names and those that do not (ABCD), this has to handle both cases. For example, names with "task-rest_run-001" and names with "task-REST01".
This has always been messed up and is complicated, so testing needs to be thorough.
Also, if any names will change as a result of this fix, both the custom-clean and file-mapper json files will need to be fixed to handle the old and new names (by putting in both formats).

I think I see what's causing the issue with filenames of concatenated timeseries, it's that the regex needs to also be implemented in the 'parcellate' function of dcan_bold_proc.py. I didn't test, but I suspect this regression actually originated in v4.0.5 and that the parcellated concatenated output has been broken since..
I'll put a fix in the develop branch and test it out with abcd-hcp-pipeline this week.

@xhaoNY Just wanted to check in on this issue. Have you found any workarounds with your team?

Resolved as of v4.0.8; tagged releases abcd-hcp-pipeline, nhp-abcd-bids-pipeline and infant-abcd-bids-pipeline releases from Aug 2021 and later will have the updated run name handling.


-save option

Add -save option to write user, host and password (any others?) to a config file.
Obviously, the password needs to be securely encrypted. Perhaps the entire document should be?

Should fully implement this before working on the reading.


Problem about Drag & Drop

Hello,
I use ScintillaNet and I would like to implement a drag & drop between TreeView and Scintilla.
I developed ItemDrag event for TreeView and DragEnter and DragDrop events for ScintillaNet.
I have verified that the "allowdrop" property is true.
But my problem is that the DragDrop event does not fire.
I do not know what to try...
Thank you for your help.
ps : sorry for my English

I haven't specifically implemented Drag & Drop in ScintillaNET v3 yet and based on your experience, it doesn't look like we're getting it for free from Windows Forms. Let me investigate and get back to you.

So I'm looking into this a bit and I don't seem to have any problems dragging items from a TreeView to ScintillaNET.
Is the issue that you can't drag items from the TreeView to ScintillaNET? Or is the issue that some of the events are not firing?

Thank you for your answers.
My issue is that DragEnter event and DragDrop event does not fire.
With visual studio I debug my application and I see that the ItemDrag event fires but not the other two.
After taking a node in the TreeView and I move my mouse in the control ScintillaNet nothing happens. The mouse cursor tells me I can not. I took a screenshot to be more clear.

I know the Drag & Drop event is inherited from Windows.Forms and I don't understand why it's not working.
my code :
// TreeView ItemDrag
private void treeView1_ItemDrag(object sender, ItemDragEventArgs e) {
treeView1.DoDragDrop(e.Item, DragDropEffects.All);
}
// ScintillaNET events
private void scintilla1_DragEnter(object sender, DragEventArgs e) {
e.Effect = DragDropEffects.Copy;
}
private void scintilla1_DragDrop(object sender, DragEventArgs e)  {
if (e.Data.GetDataPresent("System.Windows.Forms.TreeNode", false))
{
scintilla1.Text = scintilla1.Text.Insert(1, ((TreeNode)e.Data.GetData("System.Windows.Forms.TreeNode")).Text);
}
}

I just do some additional tests. I just noticed that the problem is not the Drag & Drop.
Indeed, I tried to implement the click event and other event and they too do not fire.
So the origin of my issue is elsewhere... Something has to interfere with the correct operation of ScintillaNET. Any ideas ?
I'll get ... and I hope to find.
Thank you for your time. I appreciate.

Try:
private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
{
    treeView1.DoDragDrop(((TreeNode)e.Item).Text, DragDropEffects.Copy);
}

I have a pretty good idea why the Drag events aren't firing as you expect, but this should get you what you want for now.
BTW - Scintilla events are different from standard Windows Forms control events. Version 3 of ScintillaNET tries to recognize and accept that fact. It isn't a standard Windows Forms control so we shouldn't treat it as such. That being said, I'll see what I can do. :)

I remember fixing this exact issue in ScintillaNET v2.x so I knew where to look. The issue is that the native Scintilla control automatically registers itself as a drag and drop target before the Windows Forms framework does. The result is that the native Scintilla control handles the drag and drop events instead of raising the Windows Forms DragEnter, DragDrop, etc... events. The fix I decided to go with was to revoke drag and drop support after the native Scintilla control is created but before the Windows Forms framework does registration so that Windows Forms still thinks it is the first one to the party when it registers the control.
Unfortunately this means the built-in support that the native Scintilla control already has is no longer being used. It puts a larger burden on ScintillaNET developers to handle the drag and drop events, but it allows more flexibility and so I think it's the right thing to do.

Okay I understand your explanation.
I tried your code and changed my event as you have indicated above me. Now my Drag & Drop works well.
Thank you for the solution and for your time.  :)
The Scintilla project is impressive. :+1:

P.S. Commit 02336ec adds support for CharPositionFromPoint[Close], PointXFromPosition, and PointYFromPosition methods which make it possible to convert mouse coordinates to document positions and vice versa.
This should help you identify the proper document and caret position in your drag and drop operations.

 :)


Concurrent dump

I read multi excel at the same time ,but my app corrupt occasionally, i have check the dmp file, but i havent find any clue. The log shows as follows,
[11-08 08:42:15.461]          16344(HtParseInportExcelFile)    File:() Line:(0)    Debug stream operator already registered for type QXlsx::XlsxColor
[11-08 08:42:15.461]          14620(HtParseInportExcelFile)    File:() Line:(0)    Debug stream operator already registered for type QXlsx::XlsxColor
[11-08 08:42:15.461]          18088(HtParseInportExcelFile)    File:() Line:(0)    Debug stream operator already registered for type QXlsx::XlsxColor
i think the dumption is caused by concurrention,  which means this tools may not fit for concurrent scence.

Dear @Gibranliu

This project does not process concurrency processing internally.

You need to call QMutex etc. from outside of QXlsx.

If you want to handle it internally, you can add a QMutex internal member variable to Document, to specify that it will be locked / unlocked.

ok tks
---Original---
From: "Jay<EMAIL_ADDRESS>Date: Fri, Nov 8, 2019 17:31 PM
To<EMAIL_ADDRESS>Cc: "Mention"<mention<EMAIL_ADDRESS>Subject: Re: [QtExcel/QXlsx] Concurrent dump (#58)
Dear @Gibranliu
This project does not process concurrency processing internally.
You need to call QMutex etc. from outside of QXlsx.
If you want to handle it internally, you can add a QMutex internal member variable to Document, to specify that it will be locked / unlocked.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

I will close this issue.
Please reopen the issue if you wish to proceed further with this item.


Broken links from https://celestiaorg.github.io/celestia-app/

Problem

Navigate to https://celestiaorg.github.io/celestia-app/
The links in the main page are broken but the links on the sidebar work

For example: https://celestiaorg.github.io/celestia-app/data_structures.html is broken but https://celestiaorg.github.io/celestia-app/specs/data_structures.html works.

Proposal
Fix the links in the main section. I think this may be resolvable by redirecting from https://celestiaorg.github.io/celestia-app/ to https://celestiaorg.github.io/celestia-app/specs/index.html

IMO it doesn't make sense to nest most of the pages under 1. Specification. We can fix all the links and clean up the structure of the specs by removing the Specification item and moving all the nested pages one level up.


[Issue 44]  Support yaml format output main feature & issue-45 secondary

also added a fix to the json print issue
' kor doesn't output in JSON format #35 '

@yonahd do you prefer to remove the fixes for issue #35 and #45 ?

@yonahd do you prefer to remove the fixes for issue #35 and #45 ?

Yes. Please rebase and open a separate MR for #45


Change capture FPS

Could you add a command line to change the capture fps (i.e. to 30fps)? I believe it is locked/capped at 60fps at the moment.

I already tried some time ago, by requesting a specific FPS here, but it has no effect: the encoder takes one frame on every surface update (it's not a constant FPS).

This would be an awesome feature, especially for over wifi capture. Slowing down to even lower fps would be great.
Is there any way to skip frames before it reaches the encoder, based on timestamp? So If the SurfaceFlinger is sending 60 frames in 1 second, only send a few to the encoder (making sure the last frame is sent after some timeout if no new frame is coming)

This is supported since Android Q (KEY_MAX_FPS_TO_ENCODER):
diff --git a/server/src/main/java/com/genymobile/scrcpy/ScreenEncoder.java b/server/src/main/java/com/genymobile/scrcpy/ScreenEncoder.java
index 52f6f26..a55e84a 100644
--- a/server/src/main/java/com/genymobile/scrcpy/ScreenEncoder.java
+++ b/server/src/main/java/com/genymobile/scrcpy/ScreenEncoder.java
@@ -6,6 +6,7 @@ import android.graphics.Rect;
 import android.media.MediaCodec;
 import android.media.MediaCodecInfo;
 import android.media.MediaFormat;
+import android.os.Build;
 import android.os.IBinder;
 import android.os.Looper;
 import android.view.Surface;
@@ -157,6 +158,9 @@ public class ScreenEncoder implements Device.RotationListener {
         format.setInteger(MediaFormat.KEY_I_FRAME_INTERVAL, iFrameInterval);
         // display the very first frame, and recover from bad quality when no new frames
         format.setLong(MediaFormat.KEY_REPEAT_PREVIOUS_FRAME_AFTER, MICROSECONDS_IN_ONE_SECOND * REPEAT_FRAME_DELAY / frameRate); // µs
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
+            format.setFloat(MediaFormat.KEY_MAX_FPS_TO_ENCODER, 10f);
+        }
         return format;
     }

🤯 Thank you! Works perfectly, exactly what I was looking for.

Implemented --max-fps option on dev.

I've tried to set KEY_MAX_FPS_TO_ENCODER in AndroidO(Samsung Galalxy S7) and P(Samsung Galalxy S8+), they all could work. Actually, this key was available since O, they make it public until Android10.

@shiwf Ah yes, it works even on Android 6.
Thank you: 63caff822690332a169005208f2994f39d5a6e41

Hi, thank you for this amazing tool. I use it for livestreaming mobile games. I do not have a high-end computer, so frames are skipped, but fps stays around 55-60. I stream at 30fps, so capping the output at 30fps would eliminate frame drop and improve the smoothness of my stream.
I am on Android 9 (OnePlus 7 Pro).  I saw your commit with the added max-fps command for Android <10. I do not know how to compile the program, however. I use your pre-built archive, but I would like this option. Do I need to learn how and recompile the program, or could you upload a modified executable with this option? My archive already contains all the dependencies, as with all of your prebuilt archives.
Thank you.

I do not know how to compile the program, however.

BUILD

Do I need to learn how and recompile the program, or could you upload a modified executable/server with this option?

Sorry, I can't for now (holidays...).

Thanks for your quick reply. It would be quite the effort and time for me to teach myself to build the program, even with your excellent instructions. I don't have much experience with any of that.
I hope you have a great holiday! Do you intend to implement these changes in a new version sometime soon (in the new year)? I hope so.
If I could donate even a few dollars to support your efforts and your project, I would also like to do that. I know you've put a lot of work into this.
Again, happy holidays, and thank you for all your hard work!

scrcpy.exe
SHA256: a81ee325c6cd03ff83d58b5900a9a8286c1fbec8685f67210c4e6830c2878159
scrcpy-server
SHA256: 0ae5675a571e91a3d4ec900c51b29b15fcd5317cf76daf1ad875d4054c8f1a55

Awesome, thank you! I just had an update come in that brought me to Android 10, though. I have a secondary device that I use sometimes that is on Android 9, so I will install this too. Thanks!
I hope you had a good holiday!

@shiwf @vegaskukichyo Released in v1.13.


Add a blog post for VAST v2.4

This is a first stab at converting my bullets into full sentences as a starting point for iterating on the blog post. Feedback welcome!

@mavam I approve of your changes—thanks for the wordsmithing!—but I can't approve my own PR. Mind giving this your seal of approval?

@dominiklohmann after #2735 is merged, we can rebase this PR onto master and link one of the REST API plugin images for the blog post.


Type declarations for variables not yet supported

e.g.
[int]$x = 0

(Reported on the mailing list.)

Sorry, I had not found this issue before creating #394.


Regression tests race condition

Expected Behavior

No race condition, tests always pass

Actual Behavior

There seems to be a race condition causing regression tests to fail sometimes. Probably started happening after https://github.com/QuantConnect/Lean/pull/7785.
ETFConstituentUniverseMappedCompositeRegressionAlgorithm & ForexMultiResolutionRegressionAlgorithm

Potential Solution

N/A
Reproducing the Problem

N/A
System Information

N/A
Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues

[x] I have provided detailed steps to reproduce the issue

Closing for now, haven't seen this, some indeterminism has been resolved at https://github.com/QuantConnect/Lean/pull/8049


DIF10: Add Platform Long Name Check

Is this a new check? Please describe the check and the field.
</DIF/Platform/Long_Name>: Provide an error if a long name is not provided or does not match the associated platform short name
Describe the checks in steps

Verify that the provided platform long name adheres to GCMD hierarchy and is correctly associated with the provided platform short name
If either of these checks fail, provide an error that states: "The provided Platform Long Name does not comply with GCMD."

Is there a similar check already implemented? Please list the name of the check
N/A

GCMD part of check works, but no warning when platform long name is not provided.


AdditionalFilesToRemoveFromTarget feature isn't removing files (2)

This feature doesn't appear to remove any files from the web root. See issue 52.
I'm using version 1.5.4 of HPP. The publishing target is the local file system. The VS project uses package references. DeleteExistingFiles is set to false. EnablePackageProcessLoggingAndAssert is set to true, but the log file AdditionalFilesToRemoveFromPublish.txt is not created in obj\Release\Package\Logs.

Is your profile's publishUrl a file path or a web address?

The publishUrl is a file path.

Argh, you're killing me 🤣
I'll try to take a look, but if you could create a small repro and email it to me<EMAIL_ADDRESS>it will make diagnosing/fixing it quicker.

I can't create a repo because it is a customer project. But here you have the relevant configuration files:
Testsite.zip

@rkeitel Thanks for raising this, I can reproduce. For what it's worth, if you enable autopublish you won't hit this problem (which is why I've never seen it before)
I've logged a bug for this specific issue at #62, but you can use the following workaround at the end of your Local.pubxml:
<!-- Temporary workaround for https://github.com/richardszalay/helix-publishing-pipeline/issues/62 -->
<Target Name="_CollectAdditionalFilesToRemoveFromTarget"
        Condition="'$(BuildingInsideVisualStudio)' == 'true'"
        DependsOnTargets="CollectAdditionalFilesToRemoveFromTarget"
        BeforeTargets="_CopyWebApplication" />

Summary:
When expicitly publishing within VS the IDE's internal optimisations mean that a number of targets don't get run. Since appears to include WebFileSystemPublish, CollectAdditionalFilesToRemoveFromTarget never runs.
I think this hasn't been raised before because autopublish is not affected by it since it runs the targets by name. Still, we should create a new ticket that verifies each of the features when publishing from within VS.

Cool, the workaround works great. Thank you very much :-)

Excellent. I'll keep this issue open until I release a new version with the fix.

I noted another problem. Deleting additional assemblies is working (e.g. <TargetPath>bin\Testsite.Feature.*</TargetPath>), but removing additional configs is still not working (e.g. <TargetPath>App_Config\Include\Feature\**</TargetPath>).

I'm not sure if that glob is valid. Have you tried App_Config\Include\Feature\**\*.config?

Yes, I tried App_Config\Include\Feature\*.config, but it is not working.

App_Config\Include\Feature*.config won't work unless the files aren't in any subfolders
App_Config\Include\Feature** won't work because it will only match directories.
Can you try App_Config\Include\Feature***.config ?

All files are in App_Config\Include\Feature without subfolders, so App_Config\Include\Feature\*.config should be the right one.

Interesting. Ok, let try to reproduce.

Even using your original config of App_Config\Include\Feature\** (+ the workaround I posted above), I can't actually reproduce this problem. For me, the extra config files go away when I publish via the VS dialog. I comment out the lines in Local.pubxml and reload the project (which is required, btw) then it stops doing it.
I've attached the sample project I used (which is just Helixbase with your config). Can you try it and see if you can reproduce it?
working.zip

Ah good news. I'll close this issue once I've published a new version with the first fix.

Included in the v1.5.5 release


Add support for HTTPS headers

Add support for:

strict-transport-security
HTTP -> HTTPS redirection

Done.


Add Visual Studio Native Visualiser support

See M-GSL PR 440.
Create Custom Views of Native Objects.
The Visual Studio Natvis framework lets you customize the way Visual Studio displays native types in debugger variable windows (for example, the Watch, Locals, and Data Tips windows.

Added in e569380275748d04f4f55915e940eb933e8a6aba


Raise error if the tree contains internal node(s) with exactly 1 child?

This came up during conversation with @kwcantrell. The rectangular layout code is designed to handle this case (preventing division-by-0 errors when scaling the tree), but the circular layout does not have this sort of handling (at least as of writing). (I'm not sure how the unrooted layout would do in this case.)
Although we could take the time to implement this for the circular layout, and test that this corner case is properly handled, etc., it would be a lot easier if we could just raise an error if the input tree is problematic in this way. I'm pretty sure we discussed this during a meeting a while back and agreed that these sorts of cases should never happen in practice, since phylogenetic trees with this sort of A -> B pattern should just have A and B merged into a single node.
I guess we can discuss this here, and either update #180 accordingly or revisit this issue in the future.

Following discussion with @esayyari, it seems like the best course of action here would just be fixing the circular layout to handle 1-child nodes properly. This is because the shearing operations added in #178 have the potential to create these sorts of nodes:
      +---B
      |
...---A
      |
      +---C

If B is pruned due to not being present in any of the samples, then now we have:
...---A---C

As Erfan mentioned, we could then collapse the tree so that A and C would be combined, but this would mess up things like feature metadata (either for tips or for internal nodes). So adapting the layout to handle these cases would be best.


Default color scheme too dull (low contrast)

Does anyone else find the default color schemes, both light and dark, too dull (low contrast)? It's hard to read/use without turning up the contrast on my screen. I face the same issue with the default theme on Atom. The schema tab is fine though - it's the rest of the UI that's too low in contrast.

What's the status for this issue? It shouldn't be hard to fix and it would improve the UX a lot.

Additionally, when using Ctrl + F to find text when using the light color scheme, it has a slightly off-white background and white text, making it basically impossible to read

Wanted to point out a specific area of improvement— I think the entire color scheme should be reconsidered for vision accessibility given that this area does not meet the minimum WCAG AA, cited in https://github.com/graphql/graphql-playground/issues/1099

Any update on this now it's summer?  I have to close the curtains just to use the UI :(


Make Resume Identification Token Variable Length

Support up to 2^16 bytes length for token

Thanks for the review and approval.


Manage lines and polygons [RC]

[ ] Draw
[ ] Edit
[ ] Delete

@sergeydolgov1 for prioritization

@gino-m Should we prioritize this for Release Candidate? I think we were inclined toward having only Representation layer in the pilot stage

@gino-m @shobhitagarwal1612
Manage lines and polygons is part of Release Candidate, de-prioritized for MVP


Packages: support Chocolatey (Windows)

What about a new release for Windows? I have used fastfetch personally for several weeks and have fixed all issues I found.
I think it's stable enough (at least for Windows 11) to release a new version, so package managers can collect fastfetch.

Thanks as always.


⚠ Bofrost.at has degraded performance

In b4cfa72, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1671 ms

Resolved: Bofrost.at performance has improved in a2bbfc1 after 6 minutes.


feat(tunnables): add tunnables parameters in istgtcontrol iostats cmd

Add tunnables parameters in istgtcontrol iostats command
$ kubectl exec -it pvc-ba7c9f46-40d4-11e9-b548-54e1ad0c1ccc-target-f47d6b875-w6cj6  -n openebs -- istgtcontrol iostats
{
   "iqn":"iqn.2016-09.com.openebs.cstor:pvc-ba7c9f46-40d4-11e9-b548-54e1ad0c1ccc",
   "WriteIOPS":"0",
   "QueueDepth":20,
   "Luworkers":10,
   "ReadIOPS":"0",
   "TotalWriteBytes":"0",
   "TotalReadBytes":"0",
   "Size":"4294967296",
   "UsedLogicalBlocks":"12",
   "SectorSize":"512",
   "UpTime":"28",
   "TotalReadTime":"0",
   "LUTotalReadTime":"0",
   "ReplicationTotalReadTime":"0",
   "TotalWriteTime":"0",
   "LUTotalWriteTime":"0",
   "ReplicationTotalWriteTime":"0",
   "TotalReadBlockCount":"0",
   "TotalWriteBlockCount":"0",
   "ReplicaCounter":1,
   "RevisionCounter":"10",
   "Status":"Healthy",
   "Replicas":[
      {
         "replicaId":"16178149552629799470",
         "Address":"<IP_ADDRESS>",
         "Mode":"Healthy",
         "checkpointedIOSeq":"0",
         "inflightRead":"0",
         "inflightWrite":"0",
         "inflightSync":"0",
         "quorum":"1",
         "upTime":22,
         "ReadReqTime":"0",
         "ReadRespTime":"0",
         "WriteReqTime":"0",
         "WriteRespTime":"0"
      }
   ]
}
DONE IOSTATS command

Signed-off-by: prateekpandey14<EMAIL_ADDRESS>

there is another command option for this @prateekpandey14 . Won't that be sufficient?

closing this as istgtcontrol dump provides this info


⚠ DesiTorrents has degraded performance

In 461dbe3, DesiTorrents ($DST) experienced degraded performance:

HTTP code: 200
Response time: 2949 ms

Resolved: DesiTorrents performance has improved in 99e899e.


loss=tf.keras.backend.sparse_categorical_crossentropy is different than loss='sparse_categorical_crossentropy'

So they run differently, with the version from the backend performing significantly worse.
This was performed on a google colab notebook reset each time, with GPU acceleration.
Code 1
`
%tensorflow_version 2.x
import tensorflow as tf
print(tf.version)
mnist = tf.keras.datasets.fashion_mnist
(training_images,training_labels),(test_images,test_labels)=mnist.load_data()
training_images=training_images/255.0
#training_images=tf.reshape(training_images,(training_images.shape+(1,)))
test_images=test_images/255.0
#test_images=tf.reshape(test_images,(test_images.shape+(1,)))
model = tf.keras.models.Sequential([
tf.keras.layers.InputLayer(input_shape=(28, 28)),
tf.keras.layers.Reshape((28, 28, 1)),
tf.keras.layers.Conv2D(64,(3,3),activation=tf.nn.leaky_relu,input_shape=(28,28,1)),
tf.keras.layers.MaxPooling2D(2,2),
tf.keras.layers.Conv2D(64,(3,3),activation=tf.nn.leaky_relu),
tf.keras.layers.MaxPooling2D(2,2),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(128,activation=tf.nn.leaky_relu),
tf.keras.layers.Dense(10,activation='softmax')
])
model.compile(optimizer='adam',loss=tf.keras.backend.sparse_categorical_crossentropy,metrics=
['accuracy'])
#model.summary()
model.fit(training_images,training_labels,epochs=5)
test_loss=model.evaluate(test_images,test_labels)
`
Results 1
`
TensorFlow 2.x selected.
2.0.0
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-labels-
idx1-ubyte.gz
32768/29515 [=================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-images-
idx3-ubyte.gz
26427392/26421880 [==============================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-labels-
idx1-ubyte.gz
8192/5148 [===============================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-images-
idx3-ubyte.gz
4423680/4422102 [==============================] - 0s 0us/step
Train on 60000 samples
Epoch 1/5
60000/60000 [==============================] - 24s 392us/sample - loss: 0.4204 -
accuracy: 0.1043
Epoch 2/5
60000/60000 [==============================] - 18s 301us/sample - loss: 0.2878 -
accuracy: 0.1026
Epoch 3/5
60000/60000 [==============================] - 18s 307us/sample - loss: 0.2474 -
accuracy: 0.1016
Epoch 4/5
60000/60000 [==============================] - 18s 293us/sample - loss: 0.2156 -
accuracy: 0.1011
Epoch 5/5
60000/60000 [==============================] - 18s 296us/sample - loss: 0.1936 -
accuracy: 0.1011
`
Code 2
`
%tensorflow_version 2.x
import tensorflow as tf
print(tf.version)
mnist = tf.keras.datasets.fashion_mnist
(training_images,training_labels),(test_images,test_labels)=mnist.load_data()
training_images=training_images/255.0
#training_images=tf.reshape(training_images,(training_images.shape+(1,)))
test_images=test_images/255.0
#test_images=tf.reshape(test_images,(test_images.shape+(1,)))
model = tf.keras.models.Sequential([
tf.keras.layers.InputLayer(input_shape=(28, 28)),
tf.keras.layers.Reshape((28, 28, 1)),
tf.keras.layers.Conv2D(64,(3,3),activation=tf.nn.leaky_relu,input_shape=(28,28,1)),
tf.keras.layers.MaxPooling2D(2,2),
tf.keras.layers.Conv2D(64,(3,3),activation=tf.nn.leaky_relu),
tf.keras.layers.MaxPooling2D(2,2),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(128,activation=tf.nn.leaky_relu),
tf.keras.layers.Dense(10,activation='softmax')
])
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['accuracy'])
#model.summary()
model.fit(training_images,training_labels,epochs=5)
test_loss=model.evaluate(test_images,test_labels)
`
Results 2
`
TensorFlow 2.x selected.
2.0.0
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-labels-
idx1-ubyte.gz
32768/29515 [=================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-images-
idx3-ubyte.gz
26427392/26421880 [==============================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-labels-
idx1-ubyte.gz
8192/5148 [===============================================] - 0s 0us/step
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/t10k-images-
idx3-ubyte.gz
4423680/4422102 [==============================] - 0s 0us/step
Train on 60000 samples
Epoch 1/5
60000/60000 [==============================] - 11s 186us/sample - loss: 0.4279 -
accuracy: 0.8448
Epoch 2/5
60000/60000 [==============================] - 6s 92us/sample - loss: 0.2905 -
accuracy: 0.8934
Epoch 3/5
60000/60000 [==============================] - 6s 92us/sample - loss: 0.2466 - accuracy: 0.9096
Epoch 4/5
60000/60000 [==============================] - 6s 92us/sample - loss: 0.2177 - accuracy: 0.9183
Epoch 5/5
60000/60000 [==============================] - 5s 91us/sample - loss: 0.1942 - accuracy: 0.9271
`

I have tried on colab with TF version 2.0  and was able to reproduce the issue.Please, find the gist here. Thanks!

@Emnolope You should have used tf.keras.losses.sparse_categorical_crossentropy instead of loss=tf.keras.backend.sparse_categorical_crossentropy. Please check the TF website for more details on accessing this loss function.
When I used tf.keras.losses.sparse_categorical_crossentropy inplace of  loss=tf.keras.backend.sparse_categorical_crossentropy, the results were very similar. Please take a look at the gist here.
I am closing this issue as it was resolved. Please feel free to reopen if the issue persists again. Thanks!


Readme Example has no limit of slides?

I am using Readme example. Something with children length?

fixed by #37
that was a bug


Add peer discovery

Resolves #2.

Codecov Report

Merging #17 (a4944ef) into main (f7a551f) will increase coverage by 0.97%.
The diff coverage is 76.31%.

@@            Coverage Diff             @@
##             main      #17      +/-   ##
==========================================
+ Coverage   73.41%   74.39%   +0.97%
==========================================
  Files           3        3
  Lines          79       82       +3
==========================================
+ Hits           58       61       +3
+ Misses         12       11       -1
- Partials        9       10       +1

Impacted Files
Coverage Δ

p2p/client.go
71.21% <76.31%> (+1.37%)
:arrow_up:

Continue to review full report at Codecov.

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

@liamsi, can I have write access?

@liamsi, can I have write access?

Granted!


Feature/mutation tests

Adds stryker to the project.
To start mutation tests use yarn testmu

Codecov Report

Merging #11 into master will increase coverage by 0.3%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master      #11     +/-   ##
=========================================
+ Coverage   97.36%   97.67%   +0.3%
=========================================
  Files           9       10      +1
  Lines          76       86     +10
  Branches       11       12      +1
=========================================
+ Hits           74       84     +10
  Misses          2        2

Impacted Files
Coverage Δ

src/parseFile.js
100% <100%> (ø)

src/sql-processors/orderBy.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Rtcp sender reports do not contain any blocks

Hello
To reproduce the error you can run the example code from here: https://github.com/ultravideo/uvgRTP/blob/master/examples/rtcp_hook.cc
void sender_hook(uvgrtp::frame::rtcp_sender_report *frame)
{
    std::cout << "RTCP sender report! ----------"       << std::endl;
    std::cout << "NTP msw: "        << frame->sender_info.ntp_msw   << std::endl;
    std::cout << "NTP lsw: "        << frame->sender_info.ntp_lsw   << std::endl;
    std::cout << "RTP timestamp: "  << frame->sender_info.rtp_ts    << std::endl;
    std::cout << "packet count: "   << frame->sender_info.pkt_cnt   << std::endl;
    std::cout << "byte count: "     << frame->sender_info.byte_cnt  << std::endl;

    for (auto& block : frame->report_blocks)
    {
        std::cout << "ssrc: "       << block.ssrc     << std::endl;
        std::cout << "fraction: "   << block.fraction << std::endl;
        std::cout << "lost: "       << block.lost     << std::endl;
        std::cout << "last_seq: "   << block.last_seq << std::endl;
        std::cout << "jitter: "     << block.jitter   << std::endl;
        std::cout << "lsr: "        << block.lsr      << std::endl;
        std::cout << "dlsr (ms): "  << uvgrtp::clock::jiffies_to_ms(block.dlsr)
                  << std::endl << std::endl;
    }

    /* RTCP frames can be deallocated using delete */
    delete frame;
}

In the above function, only the data from frame->sender_info gets printed out, and the report_blocks are empty.

Hello!
Is this instance receiving? I'm not an expert on RTCP, but my understanding is that report blocks can be empty if the instance that sends the report has not received anything.
I'm starting to use RTCP myself, and I will try to upload all fixes I make to this repo at some point.

If you mean if it's receiving RTP then no. This is just the rtcp hook from the uvgRTP example I linked earlier. But why is there a separate sender report handling at all, if it only activates when it becomes a receiver?

Sender reports (SR) are sent from instances that are sending (and possibly receiving). Receiver reports are sent from instances that are only receiving, but not sending.
If you have a sender that is not receiving, then that sender sends SRs without report blocks (that are about receiving RTP). This is at least my understanding of RFC 3550.

Okay, thank you for the clarification.


fully keras implementation, fixes pickle _thread.Rlock error when trying to save_model in tensorflow1.15.2

It seems the issue has come back of the pickle _thread.RLock objects error when trying to save.
Update to be solely tensorflow.python.keras, no more tf.nn.* or tf.resize* (now with K.resize_images)
Also maintained that the relu6 is not needed to be defined as custom object with Lamda functions now, was needed to maintain the first goal of removing tf.nn.*

Looks good to me. Have you tested that the outputs of the model are the same (or at least close)? I'm concerned because you've removed the align_corners flag which was there for a reason. I'm aware that there is no more such thing as align_corners in UpSampling2D but I wonder how much of a difference in terms of results it gives.

Hey, yes! Very good question, I actually originally tried to use the keras resize_image one and the output was horrible because the corners were not aligned.. This does properly align the corners, or at least it gives the almost exact same output as it did with the tensorflow implementation before

The results look pretty good, but on closer inspection there is definitely a slight shift... I made a new pull request that still keeps the updates to remove most reliance on tf that isn't tf.python.keras, working on the model save issue now


Invalid encoding char %00 causes information leak on postgres queries

At least with the /uaa/oauth/authorize endpoint, but probably others, you can include an invalid %00 encoding parameter and the resulting exception from postgres reveals information about the database. For example:
Request:
http://localhost/uaa/oauth/authorize?client_id=
Response:
exception: org.springframework.dao.DataIntegrityViolationExceptionCaused by: org.postgresql.util.PSQLException: ERROR: invalid byte sequence for encoding "UTF8": 0x00path: /uaa/oauth/authorizePreparedStatementCallback; SQL [select client_id, client_secret, resource_ids, scope, authorized_grant_types, web_server_redirect_uri, authorities, access_token_validity, refresh_token_validity, additional_information, autoapprove, lastmodified from oauth_client_details where client_id = ? and identity_zone_id = ?]; ERROR: invalid byte sequence for encoding "UTF8": 0x00; nested exception is org.postgresql.util.PSQLException: ERROR: invalid byte sequence for encoding "UTF8": 0x002
Note this example requires an authenticated session (not shown).

I'm unable to reproduce

also interesting how you get a XML response, I didn't even know we would return that through a browser.
Please reopen or create a new issue if you can provide a bit more information

Reopening - I need to try with PostgreSQL :)

PostgreSQL returns a 500 error, but no XML


HACS Issues

could you please give some more background? Are you trying to add it as a custom repository?
Did you already install it and are you trying to update?

Note that you have to use the HACS experimental mode for custom templates

Is this resolved now?

I got this error too:
<Integration TheFes/relative-time-plus> Repository structure for v2.2.0 is not compliant


Build a page reference button to match the gitbook look

It should match the look at https://docs.celo.org/celo-codebase/protocol and do the same thing


typealias usage errors need better error messages

Steps to reproduce
These indicated error messages give incomplete or inaccurate error messages.
vim9script
type T = list<string>
def F()
    abs(T)
enddef
F()

Outputs the error
E1407: Cannot use a Typealias as a variable or value

And
vim9script
class C
endclass
type T = C
def F()
    abs(T)
enddef
F()

outputs the error
E1405: Class "C" cannot be used as a value

Expected behaviour
The name of the :type should be in the message.
See check_type_is_value() in vim9type.c. There some discussion of what a fix would look like at https://github.com/vim/vim/pull/13688#discussion_r1428316748
Version of Vim
9.0.2167 with #13688
Environment
ubuntu
Logs and stack traces
No response

May be related to #13433


Impro 1772

Addresses #1273 / IMPRO-1772
Description

Moved set_up_test_cubes.py to improver/synthetic data and test_set_up_test_cubes.py to improver_tests/synthetic_data.
Updated set_up_test_cubes imports.

Testing:

[x] Ran tests and they passed OK
[x] Added new tests for the new feature(s)

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- improver_tests/synthetic_data/test_set_up_test_cubes.py  4

Clones added
============
- improver_tests/synthetic_data/test_set_up_test_cubes.py  11

See the complete overview on Codacy


backport: use GitHub actions (linux support) (#236)

Backport #236

https://github.com/elastic/ecs-dotnet/actions/runs/4064290493/jobs/6997544409 this seems odd it should not publish prereleases like this to nuget Unless its building from a tag.

https://github.com/elastic/ecs-dotnet/releases/tag/1.6.0-alpha1.50 should have not been created.

https://github.com/elastic/ecs-dotnet/actions/runs/4064290493/jobs/6997544409 this seems odd it should not publish prereleases like this to nuget Unless its building from a tag.

https://github.com/elastic/ecs-dotnet/actions/runs/4064290493/workflow#L5 even the build should have not been triggered
The reason seems to be

https://github.com/elastic/ecs-dotnet/commit/c9d84f297331595af9b40b29b0192e2ba182dbd6
I wonder whether the on: create is not correct, let me double check

https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#create

Runs your workflow when someone creates a Git reference (Git branch or tag) in the workflow's repository.

And it seems the filter is not honoured as per https://github.com/actions/runner/issues/1007#issuecomment-808904408

https://github.com/elastic/ecs-dotnet/releases/tag/1.6.0-alpha1.50 should have not been created.

What do we do?

I deleted the tag/release. Since the actual publish to nuget failed there is not other cleanup needed.
We might need to generate a new key to be able to publish again.

We might need to generate a new key to be able to publish again.

I might need to find how to do it, do you happen to remember how?


Cannot resolve path for various modules when required

In this workflow run for https://github.com/adamlui/js-utils/commit/62ad0abdb9c7ac31e9a7ecac90d8778ca35feca6

... there are a bunch of false positives for various require'd working pkgs when import/no-unresolved's commonjs is set to true

All all these packages installed on disk? Do they have a main field? (we don't support exports yet)

Indeed all pkgs in SS are installed in disk except generate-ip and glob. The rest except node-clipboardy I can assure has main because I authored them

Hmm. it is weird that https://unpkg.com/browse/<EMAIL_ADDRESS>doesn't specify dist in files, and yet the dist dir ends up published.
However I suspect this is a duplicate of #3107 (because it's exceedingly weird and rare to minify published packages).

Hmm. it is weird that https://unpkg.com/browse/<EMAIL_ADDRESS>doesn't specify dist in files, and yet the dist dir ends up published.

The dist files are in bin so probably npm picks it up from there, is this a potential reason for the bug?

However I suspect this is a duplicate of #3107 (because it's exceedingly weird and rare to minify published packages).

If you go browse npm on jsDelivr they're all minified, the reason I (and those minified pkgs) do it is to support reducing loadtime for CDN import in frontend env

jsDelivr is a CDN, which is entirely different from npm (and using CDNs is no longer a good practice, for quite a long time now).
npm-installed things are consumed via a bundler, which would do the minification (and since it's doing it app-wide, will always do a better job than a package author is able to do).

jsDelivr is a CDN, which is entirely different from npm (and using CDNs is no longer a good practice, for quite a long time now).

I didn't say they're the same, I'm revealing why npm authors who use jsd to dist to frontend devs minify (it is best practice)

npm-installed things are consumed via a bundler, which would do the minification (and since it's doing it app-wide, will always do a better job than a package author is able to do).

Again, I serve not just node.js devs but also frontend ones, so I must minify for the former group to maintain my flexibility in one pkg (who will not be running npm)

Minifying in an application is absolutely a best practice. Using third-party CDNs anywhere is not.
npm itself is how you distribute to frontend devs.
At any rate, even though nothing published on npm should be pre-minified, we should be supporting minified content, and that's what #3107 covers, so I'll close this.

Minifying in an application is absolutely a best practice. Using third-party CDNs anywhere is not.

If serving files over CDN, minifying all resources is best practice not just in an application. The requesters building sites want to reduce loadtime for optimal UX is the reason. JSD's most popular npm pkg https://www.jsdelivr.com/package/npm/bootstrap is minified for this reason

npm itself is how you distribute to frontend devs.

Indeed it is how I distrubte my files to frontend devs which I minify for the same reason other pkgs distributed to frontend devs using npm also dist/js/pkg.min.js (like above example with 13,000,000,000 monthly requests so IDK how can you speak as if CDNs are some no-no)

I reread and realized you thought I meant cdn was best practice, I meant when using cdn then minifying the resources is. I agree using cdn is risky actually.
Also I tend to not adhere to best practices (which are often suboptimal and grow dated) but instead explore what works best now for my own use case


Add logout link to AI Chat

The AI chat would benefit from a logout link. Just point it to /logout

Duplicate of #158


Add server-client config sync

Refactor namespaces and config
Add packet system for config
Change config access for each patch
Removed unused imports
Increment mod version to 1.2.0; change game required version to "*"

Tested on a private server with configs set differently than defaults (10 instead of 20). Values show properly on client which still has defaults set in config file, so network sync'd config values (server->client) are working.

Thank you very much!


[FLINK-16569] [python] Allow empty keys for Python SDK's generic Kafka egress record builder

Changelog

Renames kafka_egress_builder to kafka_generic_egress_record_builder
** The method builds a record, not a egress
** The builder is specific for the generic Kafka egress, hence the additional mention in the name

Allow empty keys in kafka_generic_egress_record_builder, since that is supported by the YAML generic Kafka egress

Verified by python3 -m unittest tests

cc @igalshilman


selenium-webdriver is missing from node_modules

Hi,
We found today that when re-installing our node-modules, protractor stops installing selenium-webdriver which we are dependent on in our test code.
Specifically, this line in our test code fails:
var webdriver = require('protractor/node_modules/selenium-webdriver');
Because there is no "selenium-webdriver" folder.
Instead, the selenium-webdriver is installed on the top level "node-modules" folder of our project.
We didn't change anything, it just started to happen on a fresh workspace.
Can you explain the root of this change / what is the practice of requiring on selenium-webdriver? Maybe we did it wrong until now?
Changing our require to the following, works:
var webdriver = require('selenium-webdriver');

Node Version: 4.4.7
Protractor Version: 4.0.3
Angular Version: 1.3.15
Operating System and Version OS X 10.11.1

Without more details its difficult to know but this may be a side effect of updating your NPM version; NPM > 3 attempts to flatten depedencies.
That said, you probably shouldn't depend on Protractor to include selenium_webdriver for you, you should include it as a depedency or devDepedency of your project and require it directly.
Please direct any further question StackOverflow. Thanks! 😄

Thanks for your quick answer on this.


Support for svg

Is SVG support possible in notification?

Hi. I don't think this is supported by Notification Center I'm afraid (I couldn't find any specific notes on it, but if it doesn't work, it doesn't work). One way to solve it would be to convert SVGs to png or the similar before sending it in, but I think this would require a headless browser and this isn't something node-notifier should handle.


How to add saga for App container?

I want to attach a saga for the App container. Normally when a container have a route you can just do it this way:
{
	path    : '/login',
	name    : 'loginPage',
	onEnter : redirectToDashboard,
	getComponent ( nextState, cb ) {
		const importModules = Promise.all( [
			import( 'containers/Login/reducer' ),
			import( 'containers/Login/sagas' ),
			import( 'containers/Login' )
		] );

		const renderRoute = loadModule( cb );

		importModules.then( ( [ reducer, sagas, component ] ) => {
			injectReducer( 'loginPage', reducer.default );
			injectSagas( sagas.default );
			renderRoute( component );
		} );

		importModules.catch( errorLoading );
	}
}

where I just import the saga in routes.js but for App container it's different because he is not declared in routes.js. How do I add a saga for App container?

See discussion on topic in #1518
I've been using the fix in #1545 and find it to be a good solution. It makes more sense to manage App level routing items from the route.js page vs. the app.js.

Thank you for this @jeremyadavis

@jeremyadavis did you encounter this kind of issue after moving App to routes.js?

Uncaught (in promise) Error: (app/utils...) injectAsyncSagas: Expected sagas to be an array of generator functions

this is my routes.js file right now after following 1545
export default function createRoutes ( store ) {
	// Create reusable async injectors using getAsyncInjectors factory
	const { injectReducer, injectSagas, redirectToDashboard, redirectToLogin } = getAsyncInjectors( store ); // eslint-disable-line no-unused-vars

	const childRoutes = [
			{
				path    : '/login',
				name    : 'loginPage',
				onEnter : redirectToDashboard,
				getComponent ( nextState, cb ) {
					const importModules = Promise.all( [
						import( 'containers/Login/reducer' ),
						import( 'containers/Login/sagas' ),
						import( 'containers/Login' )
					] );

					const renderRoute = loadModule( cb );

					importModules.then( ( [ reducer, sagas, component ] ) => {
						injectReducer( 'loginPage', reducer.default );
						injectSagas( sagas.default );
						renderRoute( component );
					} );

					importModules.catch( errorLoading );
				}
			}
	];

	return {
		getComponent(nextState, cb) {
			const importModules = Promise.all([
				import('containers/App'),
			]);

			const renderRoute = loadModule(cb);

			importModules.then(([sagas, component]) => {
				injectSagas(sagas.default);

				renderRoute(component);
			});

			importModules.catch(errorLoading);
		},
		childRoutes
	};
}

Hi @xxryan1234 how does you default export in App/sagas.js look like ? I think it should look like this :
export default [
  defaultData,
];

or if there are several "default"' sagas
export default [
  defaultData,
  defaultData1,
  defaultData2,
];

Thanks for this @denisflorkin I forgot to import sagas with my app. As you can see in my code snippet up above.  I added it now and do not get the error thrown anymore.
import('containers/App/sagas')


Allow exposing workloads on rewritable path

Description
As both Istio and Ory support path rewrite in some capacity (Istio has rewrite parameter in VirtualService http match and Ory Rules support strip_path in upstream) it would be possible to support exposing workloads with paths different than exposed outside

Reasons

Other providers of APIGateway are already supporting this type of configuration
This would allow exposing of workloads where path collision would occur (such as two httpbin deployments) without using virtual hosts

Sample configuration
When exposing a service with APIRule in matter similar to this one:
- path: /httpbin/headers
  stripPath: /httpbin
  service:
     name: httpbin
     port: 8000

The generated resources for VirtualService and Ory Rule would take this form:
# Virtual Service on ALLOW type of APIRule
#[...]
http:
  - name: "reviews-v2-routes"
    match:
    - uri:
        prefix: "/httpbin/headers"
    rewrite:
      uri: "/headers"
#[...]

# Rule on secured type of APIRules
#[...]
upstream: {{ Service }}/httpbin/headers
stripPath: /httpbin
#[...]

DoD:

[ ] provide documentation
[ ] publish release notes and What's New updates for Kyma customers
[ ] provide unit tests
[ ] test on SKR
[ ] verify Get started guides
[ ] verify resource limits
[ ] followup issue
[ ] create release and bump in kyma

closing since there's not much interest in this feature right now


fileServerFolder option is being used incorrectly

First off, I would like to show my appreciation for this project, it's something that I've been looking for for a while now, and I'm glad you open sourced it!
The issue is that the fileServerFolder option is being used incorrectly to look for step definitions, when it actual use case is to allow cypress to start a local http static assets folder from this path.
I've created a PR here #17

Hmm... I asked the cypress guys about where would be a good place to put support files like this and the answer was "that's a good question" ;-).
Could you explain a bit more in what cases the use of fileServerFolder for step_definitions is causing issues?
Or are you just worried (probably correctly) that we are mixing responsibilities here?

Oh wait.. I think I get this ..
@dvelasquez @gpincheiraa  I think @reaktivo is right, somehow I assumed that the fileServerFolder is the path to the support/ and you just changed the default there. But now I see that those are two completely separate paths. It was my mistake to merge it.
@reaktivo do you have an idea what would be a better way of using a custom folder here?
@dvelasquez @gpincheiraa could you explan why couldn't you keep your step_definitions files directly in the cypress/support ?

Ah! I now see you're referencing #5, might make sense to create a namespaced object in the same cypress.json config file which specifies cypress-cucumber-preprocessor options, like where step definitions should be found.

yeah, that could make sense... I wish we had some feedback from the cypress guys here..
@brian-mann @bahmutov  what do you think of us (or other plugins) adding custom properties to the cypress.json ?

@lgandecki sure, the default path of installation of cypress is in the root of the project, but for me, that default doesn't match my current scaffolding. This is directory structure:
/src <-- Source files (vuejs)
/tests <-- Test root folder
/tests/unit <-- units tests
/tests/e2e <-- Cypress content goes here

So, in my case, i don't want to keep a cypress folder polluting the root of the project.
But, this plugin has the directory /cypress/support/ hardcoded, so, what i try was just to make this module to be aware of the custom directory cypress folder.
But, if we can add to cypress.json a specific value to our step_definition folder, that should be great.
Another way is adding a custom config to the package.json file adding the route of our step definition files.

If you rename all of the cypress folders per configuration it should/will not create a cypress folder.
https://docs.cypress.io/guides/references/configuration.html#Folders-Files

@brian-mann yes it won't create cypress folder but then we still have to tell the cucumber-preprocessor where to look for step_definitions.
It would be great to have some kind of a "cypressRoot" configuration (that would point to cypress/ by default). I think @dvelasquez assumed that the fileServerFolder is that (and with the PR from him I assumed that's indeed the case).
I see two options here:

the "rootFolder" option
adding a custom property to the configuration, some options for that:

cucumberPreprocessor object inside the configuration (and inside it we set stepDefinitionsFolder)
directly putting cucumberPreprocessorStepDefinitionsFolder on the top level
having sometihng like pluginsConfiguration: {}

@lgandecki that was the case.
In this scenario, i'll vote for a package.json configuration, like the custom configurations for "jest" or "nightwatch".
{
  "cypress-cucumber-preprocessor": {
    "stepsFolder": "/tests/e2e/steps_definition",
    "scenarios":  "/tests/e2e/scenarios"
  }
}

@brian-mann is there a best practice for defining plugin configs? I would rather read the both the cypress config and it's plugins from the same file. And considering we have access to the parsed config at plugin loading time, we might as well pass that config:
// In cypress/plugins/index.js
const cucumber = require('cypress-cucumber-preprocessor').default
module.exports = (on, config) => {
  on('file:preprocessor', cucumber(config)) // Note that we're passing the config to the plugin here
}

quick update - if the cypress guy don't reply by the middle of next week I will implement it in cypress.json with the syntax proposed by @reaktivo

@brian-mann @bahmutov guys? Any pointers from you? I feel like it should be up to you to establish patterns about plugins configuration. I'm implementing this tomorrow and will add a custom cypressCucumber object property to the cypress.json file if I don't hear back from you with different proposition. :)
Thanks!

Yesterday I played around with some different solutions

Adding a cypressCucumber key to cypress.json

I gave this idea a try and it kind of felt prone to error. Considering cypress config options may also be passed via env variables, cli --config flags, etc, having cypress-cucumber-preprocessor read the config json file directly without taking into account the previously mentioned sources of config feels like the wrong way to go.

Using the config that is passed to the plugin configuration function, like so:

const cucumber = require('cypress-cucumber-preprocessor').default
module.exports = (on, config) => {
  config.cypressCucumber = {};
  on('file:preprocessor', cucumber(config)) // notice config being passed here
}

I found out Cypress whitelists the properties that will be included in that config object, what I mean that adding a "something": "value" into your cypress.json won't include it in the config argument passed to the plugin configuration function. Also, some refactoring would need to happen so we append browserifyOptions instead of overwriting them.

Creating a new cypress-cucumber.json at project root level
Although not ideal, it works in a predictable way and is guaranteed to be compatible with future cypress versions.

P.D As a temporary solution for those wanting to define fileServerFolder without your step definitions path incorrectly set, you can simply pass it as a cli option, and it will be ignored by the cypress-cucumber-preprocessor plugin.
cypress run --config fileServerFolder=build

Thank you so much for the research @reaktivo !
I'm still conflicted what to do about this. You are right.. That's why I was hoping to get some input from cypress guys, I asked about this basically the moment I created a plugin, and I also asked Brian about this in person recently...
This is, as far as I know, the only existing cypress plugin not made by the cypress guys, so it's hard to even get some patterns from someone else :)
cypress-cucumber.json is definitely not ideal, if we go that root I'd suggest a node module that reads the configuration from package.json OR custom .json file OR from process.env . I forgot the name of it.. something about a cosmos, I think :) I'm shooting to a meeting now but I will try to find it after

@reaktivo  how would you feel about something like this - https://github.com/davidtheclark/cosmiconfig ?


All the necessary menus have been created using nextra successfully.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Aryan seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @aryankshl, great job on your first pull request! Please replace all the URL with https://github.comGuanceCloud/iacker in package.json and theme config. Once you do that, we can merge it together.


How to open the file in usb-disk?

The lib libaums don't support open the file in usb-disk?

What do you even mean by that? libaums provides methods for reading files, which is basically opening a file, right?


Stopping Driver does not refresh the view

For

when I stopped the Driver, the view did not refresh. Asking PH to Stop the driver again (because it was appearing Started, and I was able to), I got the "cannot stop non-started driver" message, and still it wasn't updated.
Details, origin etc in https://github.com/antonpup/Aurora/issues/2062

What's the value of the EnableServiceNonPoll setting?
Try changing the setting value and relaunching PH?

What's the value of the EnableServiceNonPoll setting?

Value 1, Default 0

Can you try changing the setting value and relaunching PH.

What is "the value you are expecting the flag to have"?
I see a lot of advanced settings having non-default actions, without me touching them 😕

What is "the value you are expecting the flag to have"?

The value that fixes the refreshing of the services window after stopping a driver (the same issue you reported).
Try changing the value. It enables/disables the polling mode/notifications for driver/service events. I made various changes to service/driver event callbacks and knowing which value fixes the issuewill determine the default value.

The value that fixes the refreshing of the services window after stopping a driver (the issue you reported).

Some settings are changed via UI while others were changed in updates (which don't change existing preferences).

Some settings are changed via UI while others were changed in updates (which don't change existing preferences).

If a value is not explicitly changed, is its default written to the config file, or not?
I would expect that I can keep up with your defaults, given that I have not changed them.
(For the "really" advanced options, I would also expect that if we e.g. discuss and we change a value during a troubleshooting session, "after a while" I would be informed that it's high time I reset it / the bug that this value worked around is fixed, and whether I would consider now following the defaults or not. But I guess that would be a very, very big feature 😄)

Neither seems to work

Service not started

If a value is not explicitly changed, is its default written to the config file, or not?

The default is from the very first installation. If the default gets changed in a later update then it'll still be the original value in order to preserve your preferences.

would be informed that it's high time I reset it

When a reset is required its already done automatically by the newer version 👍

0 seems to work

The previous default was 1 but I changed this to 0 a few weeks ago in the nightly builds after adding/updating newer windows service/driver notification callbacks.
0 should be the default going forward but there still might be increased CPU usage in the services.exe process. Let me know if you notice any issues with services.exe

FYI, now I am on i5-4430, but (hopefully) will soon move to an i7-9700K.
If you would be looking a more "legacy-friendly" view, soon that might not be me.

don't raise this to Microsoft standards

Nah. I just stop using that setting entirely and remove the older code unlike the BS with win10 updates 😄

If you would be looking a more "legacy-friendly" view, soon that might not be me.

I still have machines with XP running v2.38 and earlier versions for testing 👍


Move installation of python3 outside of Ansible for Docker

This should fix the issue of building the Docker image locally

Is there an issue with merging this PR? I'm building my own image for arm and I had to move the python installation to make it work.

Docker images are being built off CI now without any issues


Update documentation about bond interface

Consider using RFC 5737 IP addresses when doing nmstate.io documentation, see https://tools.ietf.org/html/rfc5737

updated  in this PR, https://github.com/nmstate/nmstate.github.io/pull/48

Closing this as fixed. Thanks!


No npm task is detected when there is no scripts field in package.json

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

VS Code Version: 1.68.1
OS Version: Windows 7

Steps to Reproduce:

Add a package.json file to a folder.
Add dependencies but not scripts to that file.
Click Terminal/Run Task... menu, and select npm from the dropdown it opens.
No tasks are detected, instead of the expected install task.

Can I take this one?


Figure out how to break up features into assignments

Expected Features

Tokens
Tokens __repr__ and __str__
EOF token lexes
- token lexes
+ token lexes
Single digit integer token lexes
consume validates expected token
consume errors on unexpected token
consume produces EOF if no more tokens
1+1 lexes and parsers to 2
Blank Program Parsers
multi-digit integers are lexed correctly
whitespace is ignored until new token found.
* lexes and parsers
/ lexes and parsers
Arbitrary number of operations lex and parse correctly.

Extra Credit

() lexes and parsers
parens around signle statement lexes and parsers
parens can arbitrarily nest
Parens change the order of operations.

Initial proposal
Assignment 1

Tokens
Tokens __repr__ and __str__

Justification
Very simple starting assignment. This is here mainly as a means of testing the level of the class. If they struggle with basic methods and python idioms then we'll need to slow the class down. If they blaze through it all the better.
Assignment 2

EOF token lexes (in next_token)
- token lexes (in next_token)
+ token lexes (in next_token)
Single digit integer token lexes

Justification
So intially I wanted assignment 2 to be a fully working "Calculator" that did addition and subtraction. When I listed out all of the steps I noticed how many it was to go from tokens to a working REPL.
As such I started looking for a good break point and completing the _next_token method felt like a good one to me.
Assignment 3

consume validates expected token
consume errors on unexpected token
consume produces EOF if no more tokens
1+1 lexes and parsers to 2; 1-1 parsers to 0
Blank Program Parsers

Justification
consume_token is a small but interesting method. It's too small to be it's own assignment and parse pairs with it fairly well (since parse starts out by just calling consume three times with an expected pattern). So this felt like a good break point.
It also brings students to the point where they can run calc.py with sample input that generates real results.
Assignment 4

multi-digit integers are lexed correctly

Justification
This requires a while True loop that keeps a first position and a current position. In the past I've found this hard for students (especially new students) to wrap their head around this idea. As such I wanted to break this into it's own assignment with it's own set of tests.
Additionally I had a decent number of tests so it just felt like a natural break point.
Assignment 5

whitespace is ignored until new token found.

Justification
Same as 4.
Assignment 6

* lexes and parsers
/ lexes and parsers

Justification
Last break point before assignment 7 which is hard. This is also kind of a review for how to find and generate tokens.
Assignment 7

Arbitrary number of operations lex and parse correctly.

Justification
Stretch goal. This is the last feature you can add without having to include some more complicated data structure like a stack.
This requires you to modify parse to use a While loop that identifies tokens and expects different Tokens based on the previously found ones.

This is going to require a lot more review. Perhaps we should polish the earlier assignments before focusing on any of the later ones.


is X-chain client necessary?

The main functions of x-chain client:

Run a buffer server
Run an aggregation server
Send data from any chain to the Filecoin - calling onramp contract onramp.Transact(auth, "offerData", offer)
run data aggregation process
after aggregation, send deals directly to Filecoin SP.

Considering the current design as well as the responsibility of the x-chain client, is it possible to achieve that through cross-chain GMP with Axelar?

@longfeiWan9 No its not because someone would have to do the aggregation and post the PODSI proofs which would require x-chain or simillar backend to be ran. ALso the aim of x-chain is not to be just a single client, there can be many x-chain aggregators with their demands like cost, miner, etc leading to creation of marketplace for them as well.


Create LICENSE, as per README.md

README.md says "MIT License - see LICENSE for full text" at the bottom, but no such file exists.
This is just https://github.com/pion/webrtc/blob/master/LICENSE (the MIT License), with the year changed to 2019.

Thank you so much @jsjb sorry I missed this, merging now

Merged with e187587c5b9718d86de954f9c8233cd36fe470bc
Thank you so much for contributing to Pion! If you ever have any questions or want to get more involved we would love to have you on Slack


Added compatibility with fastify 2.0

Added compatibility with fastify 1.x and 2.0.
Updated dependencies to fix vulnerabilities.

Codecov Report

Merging #61 into master will decrease coverage by 0.12%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #61      +/-   ##
==========================================
- Coverage      95%   94.87%   -0.13%
==========================================
  Files           1        1
  Lines          40       39       -1
  Branches        8        7       -1
==========================================
- Hits           38       37       -1
  Misses          2        2

Impacted Files
Coverage Δ

ts/src/index.ts
94.87% <100%> (-0.13%)
:arrow_down:

Continue to review full report at Codecov.

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

Thanks for the contribution! Left a comment. It would be great if you can address that. I can make the change too if you are not able to =). LMK.

Thanks @ofrobots, I have just reverted the typescript version change.

Thanks for the contribution!


CQ for Thorntail usage by MicroProfile-starter

We need to create CQ for Thorntail 2.2.1.FINAL.

@Emily-Jiang @cealsair CQ is awaiting Source code attachment

I just uploaded the source files in a ZIP file.

According to CQ comment, Thorntail contains LGPL only licensed files which is not approved for usage within Eclipse.

We held a meeting today with Kevin Sutter and it was determined that this CQ is un-needed. The runtime, i.e. Thorntail, that runs this web app, i.e. MicroProfile Starter, does not need to go through IP review. Emily agreed to withdraw this CQ from the IP review process. Thank you.

I just clicked on the "Withdraw this CQ" button and withdrawal took place. I thought Emily could only do this since she created the CQ. Sorry for the confusion. At any rate, CQ should be withdrawn by now.  Thanks.

Issue closed


Calculating folder sizes

Is possible Filemin calculates the size of each folder? At this moment all folder contains 4KB ;(

Yep, it was discussed somewhere here in issue queue. I'll add this functionality and I'll make it optional.

Hi Real-Gecko, and again, 24th of August you promised: "I'll add this functionality and I'll make it optional."
When this happens?
;)

I'd actually recommend against implementing this feature, because getting the true (recursive) size of a folder could be very slow. For example, try running du -k /usr and see how long it takes.
Webmin has a module for computing folder sizes, but it does it offline using a cron job.

I can make this feature work using XHR request on demand.. spinner will spin, while calculations are done and then folder size is returned.. easily..

.. I meant in Authentic Theme code.

..and add an icon to the action column or right click context menu.

That would make more sense - but even then, I'd recommend only activating this if a user clicks some button rather than just on a mouse-over, as it could generate a huge amount of disk IO on a system with a large filesystem.

Yes, yes, of course.. I don't like hover effects..

Great news. Thanks. The community is waiting ;)

Most likely next Authentic Release, like 17.41-17.50. 17.40 is being released in minutes..

Alright, folder size support is added to Authentic Theme 17.52. Please upgrade.
It works fast and automatically on selecting a row or right clicking (context-menu)
How is it?

LOL, Ilya, I told you not to hurry.
In version 1.0.0 you can get one folder size through properties dialog.
Multiple du -k will be implemented later.


chromium os r92r1-rpi3 boots to chromium screen then the screen goes vblack

trying to reinstall to see if it fixes it

Have you fixed this balck screen? Sometimes I have a rainbow screen


Better Invite Page (Trial)

PR Checklist

Please check all that apply to this PR using "x":

[x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[x] I have checked that this PR does not introduce a breaking change
[ ] This PR introduces breaking changes and I have provided a detailed explanation below

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[ ] Other - Please describe:

Fixes
The invite page now displays 5 of the creators trending/top/new videos. Image below.

Issue Number: #4005

Please let me know if I have to change some code according to some convention or style or if there is scope for any improvement whatsoever.

This looks great @HarshKhandeparkar !

Can you add a changelog entry?
https://github.com/lbryio/lbry-desktop/blob/master/CHANGELOG.md

Yeah sure. I'll be back in a min.

Do I need to worry about the travis failure?

This is great @HarshKhandeparkar ! Once we get it merged/reviewed, can we show you some appreciation?
IMO, the Create/Skip account could go near the top, maybe next to the channel or totally above it ?
Seems strange at the bottom, especially if we want to drive new accounts.

I think the skip is dynamically loaded. I think, if I were logged, it will be a Done button. What should I do, should I split the two?

Ah yes, I found a bug while working on this. Apparently the infinite scroll does not work on smaller pageSize values i.e the number of video previews shown.
Should I open an issue for it?

I think I will keep the skip button wherever it is and move the create button. Is that fine @tzarebczan?

Update: Changed the location of the create account button as suggested by @tzarebczan.
Not signed in:

Signed in:

Update: Added a CHANGELOG entry as requested by @seanyesmunt.

Whoops. I left a comment but never clicked "comment".
I think we can keep the buttons at the bottom since that's how they are on all cards. Can you drop the page size value to 3 though? Then it's shorter and the ad won't be displayed. Then I'll merge this.
I don't think you need to open an issue for what you described. When a custom page size is passed in, it is assumed that infinite scroll won't work.

I changed the button to a link now, should I still revert the changes? I feel like it is more intuitive now.

I like the link. Lets keep the "create account" button at the bottom too.

So both at top and bottom?
On Wed, 22 Apr, 2020, 10:37 PM Sean Yesmunt<EMAIL_ADDRESS>wrote:

I like the link. Lets keep the "create account" button at the bottom too.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry-desktop/pull/4040#issuecomment-617908871,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJI5H3HTNIQ34GA3D6U333RN4P5RANCNFSM4MODSKMQ
.

Done.

Once we get it merged/reviewed, can we show you some appreciation?

You already showed me (a lot of) appreciation. Besides, I don't really want any appreciation, I am here to make OpenSource great and to increase my own knowledge and gain experience. Hence, I donated my appreciation LBCs.
Thank you!

That's very generous @HarshKhandeparkar! You're contributions are valuable and we're glad that you can learn from the experience as well.


Not sure what does the result of generate_3D_obj_Neg.py is supposed to be as or why we run this script at all?

Could you please explain in simple terms what you are trying to do with this script? I am a bit baffled on why in ends up in a result such as below or why we would need it?

This is while generate_3D_obj_GT.py creates the following 3D human-object mesh:

for the following image:

generate_3D_obj_Neg.py provides the negative training samples for our model, compared to the one generated by generate_3D_obj_GT.py ( generating positive samples), it is inaccurate because of the wrong object (this small ball is not interactive with this girl in "riding").
The ratio of pos : neg samples is 1:4.


]cider.version fails with a value error if Expose->Root properties is not ticked in Dyalog

]cider.version fails with a value error if Expose->Root properties is not ticked in Dyalog
]cider.version

Command Execution Failed: VALUE ERROR
]cider.version

Cider  0.4.0+109  2021-10-13

Try to get the aplversion this way instead:
'.' ⎕wg 'aplversion'

Fixed in 0.4.1

This issue has come back and it also affects CreateProject  (and possibly others that I didn't try)

Cannot reproduce. Which version of Cider are you using?
Please switch on debug and send over the precise error message.


Missing return type -> Different signature than parent

Hey there,
looks like the current 3.2.2 tag is missing the return type which breaks Nova as the Nova Parent has array as return type. It's present in master so I assume this was a mistake? 3.2.1 is still working.
https://github.com/manogi/nova-tiptap/blob/ec5a4a4ef69d7112db97536fcd14abe5dec664fb/src/Tiptap.php#L216

No worries, I guess we've all done that at least once :D
Thanks for the quick release


rfc5280: Populate the trusted store in chain-untrusted-root

From https://github.com/trail-of-forks/cryptography/pull/1

At the moment, this test just bounces off a check in our API for empty trusted stores (which seems reasonable as you can't do much without any trusted certs). Let's add a certificate to exercise the logic that we want.


Getting error "instance failed to match exactly one schema (matched X out of Y)"

Getting the subj error on beta 901. What does that mean? How to resolve that?
{
  "schemaValidationMessages": [
    {
      "level": "error",
      "domain": "validation",
      "keyword": "oneOf",
      "message": "instance failed to match exactly one     schema (matched 0 out of 2)",
      "schema": {
        "loadingURI": "http://swagger.io/v2/schema.json#",
        "pointer": "/definitions/parametersList/items"
      },
      "instanc    e": { "pointer": "/paths/~1api~1Device~1{id}/put/parameters/1" }
    }
  ]
}

Could you provide the Swagger JSON for the parameter in question - i.e. "/paths/~1api~1Device~1{id}/put/parameters/1" in your raw Swagger document.

Closing due to inactivity


Utilize the Windows Credential Manager as the secret store

Summary of the new feature / enhancement
The current design allows 2 configurations:

Password-based, which can get a bit tedious as each new session requires to input it again, and every 15 minutes even if you stay on the same shell
No password, where they key is stored in some file in the user's location. This option is highly discouraged by the docs.

However, on Windows at least, there is a third option - use the built-in Credential Manager. As I understand the latter, it should be very secure, especially when Credential Guard is enabled (https://learn.microsoft.com/en-us/windows/security/identity-protection/credential-guard/). And since the current credentials are used, there is no need for passwords. As a bonus, you get a free editor/viewer built-in Windows.
Indeed, it seems exactly one such credential store has been created: https://www.powershellgallery.com/packages/SecretManagement.JustinGrote.CredMan/1.0.0. However, I can't even find the code for it, it hasn't been updated in more than 3 years, there was only one version ever released, and that version has only been downloaded around 6,600 times in all that time... so you can see why I find it hard to install and manage my passwords. Really in such matters I would typically only trust something much more popular, or something with a big company behind it - especially if that company was the one behind PowerShell itself...
Proposed technical implementation details (optional)
Perhaps you could contact the developer of said secret store, who I believe is @JustinGrote, to incorporate his code into this project. Alternatively, you could take the code from the "original" PS Credential Manager module (more precisely, it's current continuation where @echalone is carrying the torch): https://github.com/echalone/PowerShell_Credential_Manager
I just tested the latter and it works great - Windows already did all the hard work to let us access secrets conveniently and securely, would be a shame not to use it!

I may have missed it but why should this project use cred man? SecretsManagements allows use of different fault providers to store to different systems. SecretStore is a cross platform implementation and CredMan module uses CredMan and is Windows exclusive. If you want to use CredMan use the that module.

SecretsManagements allows use of different vault providers to store to various systems. SecretStore is a cross platform implementation and CredMan module uses CredMan and is Windows exclusive.

Right, which is why I'm suggesting that the Windows implementation of SecretStore uses the Credential Manager under the covers (specifically when configured not to use a password, or alternatively introduce a third configuration that uses the Credential Manager on Windows and falls back to something else on the other OS). That we way we get to eat our cake and have it too.
Using CredMan as-is would lose the cross-platform benefit, not to mention the entire paragraph I dedicated to explaining why I wouldn't use it even if it were cross-platform...

I can't even find the code for it, it hasn't been updated in more than 3 years, there was only one version ever released, and that version has only been downloaded around 6,600 times in all that time... so you can see why I find it hard to install and manage my passwords. Really in such matters I would typically only trust something much more popular, or something with a big company behind it - especially if that company was the one behind PowerShell itself...

Look back at the RFC. That was the original plan but was changed to the same implementation for all platforms.
You already have the option to use CredMan leverage an existing module that has that capability or make your own if you don't trust their implementation. The PowerShell team made the decision to use a single implementation for all platforms and left creation of other vault providers to the community.

Look back at the RFC. That was the original plan but was changed to the same implementation for all platforms.

That is unfortunate. So you're saying that not only does the SecretStore not use CredMan on Windows, but it doesn't use Keychain on Mac and doesn't use keyring on linux?

You already have the option to use CredMan leverage an existing module that has that capability or make your own if you don't trust their implementation. The PowerShell team made the decision to use a single implementation for all platforms and left creation of other vault providers to the community.

Sure, I could roll my own, but instead of every person rolling their own - I humbly suggest the PowerShell team to revisit their RFC plan which looks great...

That is unfortunate. So you're saying that not only does the SecretStore not use CredMan on Windows, but it doesn't use Keychain on Mac and doesn't use keyring on linux?

It stores secrets locally on file for the current user account context, and uses .NET crypto APIs to encrypt file contents.

That is correct look at the README on this repo and you'll see what it uses.

Sure, I could roll my own, but instead of every person rolling their own - I humbly suggest the PowerShell team to revisit their RFC plan which looks great (assuming this is the one: https://github.com/SydneyhSmith/PowerShell-RFC/blob/master/1-Draft/RFCxxxx-Secrets-Management.md)...

 As you point out in your post there are vault providers that leverage your desired vault type (CredMan). What is the issue with using either of the two modules you reference? You seem to be conflating SecretStore which is a cross platform vault which does not leverage native functionality with wanting a Microsoft owned vault provider that uses native functionality.

As you point out in your post there are vault providers that leverage your desired vault type (CredMan). What is the issue with using either of the two modules you reference?

I already explained my reservations with this approach - perhaps you remain unconvinced, and that's fair enough :)

You seem to be conflating SecretStore which is a cross platform vault which does not leverage native functionality with wanting a Microsoft owned vault provider that uses native functionality.

I don't see any conflation here, that is exactly what I'm asking for :) Specifically, I submit that this project (SecretStore) should use native functionality, instead of what it does now (hence opening the issue in this repo).

There are two vault providers that already provide this functionality:
https://www.powershellgallery.com/packages/SecretManagement.JustinGrote.CredMan/1.0.0
https://www.powershellgallery.com/packages/SecretManagement.DpapiNG/0.3.0
The second one is particular interesting because you can use DpapiNG and encrypt secrets that can be decrypted by members of an AD group, allowing some secrets to be portable.
@ohadschn SecretStore would not be cross platform if it used credman, hence why that was changed. Windows is not the only platform that SecretManagement must support.

@JustinGrote Thank you Justin, as I mentioned above my suggestion was to use the Credential Manager only for the Windows implementation (and ideally use Keychain for mac and Keyring for Linux - just as the original RFC detailed).
I agree that the DPAPI extension is interesting, but even if I trust the developer (who I'm ashamed to admit I haven't heard of), it still isn't cross-platform and has a total of 22 download at this point... I think it just goes to highlight the need of something "MS official" to solve this once and for all (again, exactly as the original RFC suggested).

NOTE: I am not an MS team member, just a community member
@ohadschn I understand your concerns and your want, but the PS team is limited in size and effort, and creating a "cross platform" native OS solution requires making lots of choices, and supporting a lot more than the list you have here because plenty of esoteric OSes may have their own managers. That's not only a lot of upfront development, but worse, a lot of maintenance upkeep. It's my opinion that SecretStore was a good compromise given those constraints.
You're fine with whatever your criteria is for "proving" extension vaults, but I use several in production just fine every day. Further, you could contribute to the community and create an extension vault yourself that meets the criteria you need:
https://devblogs.microsoft.com/powershell/secrets-management-module-vault-extensions/
https://www.youtube.com/watch?v=J86GYcyZAZs
https://www.youtube.com/watch?v=Y7U-dreIiXc
The reality is the team is unlikely to have the bandwidth to take this on for this module itself, it went through a lot of rounds of revision during development and as was mentioned, using the OS-specific operations was attempted but deemed not maintainable to keep the quality high, so to reopen that discussion I imagine would take a lot of developer feedback.

I thought about it some more, and perhaps cross-platform implementation is not that important. I mean, the whole point of the SecretManagement is that each developer could register their own vault on their machine as a one-time operation, according to their requirements and preferences (depending on their OS, password manager of choice, etc.) From that point on, shared scripts that manipulate secrets would work because they won't be referencing said underlying vault (they'd just use Get-Secret / Set-Secret and similar).
In light of this, I suggest the following:

Clarify that this secret store is basically a generic sample. In the vast majority of cases (let's say excluding esoteric OS scenarios), there would be significantly better options:

DPAPI/CredentialManager for Windows
Keychain for Mac
libsecret/gnome-keyring/kwallet for linux

Take ownership of specific implementations that don't require high maintenance.

Windows should be a no brainer, AFAIK it should almost be a one liner: https://learn.microsoft.com/en-us/dotnet/api/system.security.cryptography.protecteddata?view=dotnet-plat-ext-8.0
For mac and linux, I'm not knowledgeable enough to tell how hard it would be to maintain such secret stores. I suspect Mac should be fairly consistent, and linux distros would be the pain point. So maybe we could choose something specific and popular like Ubuntu and leave the rest to the community. For reference, I know of 3 implementations that could be used for reference:
1. mono's ManagedProtection
1. Chromium's OSCrypt
1. https://github.com/atom/node-keytar

The team provided an API with SecretManagement, and an example implementation with SecretStore. My version is a slightly reworked version of the example in the SecretManagement repo, that would be the "original" one.

Somehow I completely missed this - only today did I realize you were referring to a seemingly fully, working Credential Manager store implementation, namely Microsoft.PowerShell.CredManStore.Extension, provided by the PowerShell team (specifically @PaulHigin), which is exactly what I was after all this time: https://github.com/PowerShell/SecretManagement/tree/master/ExtensionModules/CredManStore
A shame that it's basically not mentioned anywhere, and I found completely by accident, out of curiosity to see what the ExtensionModules folder contained (fun fact, it also contains an Azure KeyVault implementation: https://github.com/PowerShell/SecretManagement/tree/master/ExtensionModules/AKVaultScript).
So for my bullet (2) above, the PS team can just take the existing sample - it doesn't look like it would require much maintenance... And until that happens, maybe document their existence with some basic instructions on how to get them to work? Here's what I had to do:

git clone https://github.com/PowerShell/SecretManagement.git
cd .\SecretManagement\ExtensionModules\CredManStore\
.\build.ps1 -Build
Copy-Item .\Microsoft.PowerShell.CredManStore.Extension\ .\out\Microsoft.PowerShell.CredManStore\ -Recurse
There is a bug in the publish script's local PS resource repository creation, so we need to create it ourselves:

$sourceName = 'pspackageproject-local-repo'
$packageLocation = Join-Path -Path ([System.io.path]::GetTempPath()) -ChildPath $sourceName
$modulesLocation = Join-Path -Path $packageLocation -ChildPath 'modules'
$locationAsUri = "file://$modulesLocation" -as [System.Uri]
Register-PSResourceRepository -Name $sourceName -Uri $locationAsUri

.\build.ps1 -Publish
Install-PSResource -Repository 'pspackageproject-local-repo' -Name Microsoft.PowerShell.CredManStore
Register-SecretVault -Name CredManStore -ModuleName Microsoft.PowerShell.CredManStore -DefaultVault

You can now use secret management as normal e.g.

Set-Secret -Name TestSecret -Secret "TestSecretPassword"
Get-Secret -Name TestSecret -AsPlainText

I realize this probably very similar to what @JustinGrote did with https://www.powershellgallery.com/packages/SecretManagement.JustinGrote.CredMan, but this way you maintain the MS chain of trust.


Fix product with no categories suggestion issue

@mmoelli @jayS-de I had a test to cover the other method (for categories) but for some reason missed the one for products... even though I remember clearly it was the case I wanted to cover 😅
Anyway, here a quick and effective fix that I will deploy as soon as Travis decides to work again.

@schleichardt please review


Insert Null Checkbox Issue

The Insert Null functionality does not support check boxes in the correct way. A false checkbox should be treated as a null, allowing an Interaction Mapping to set it to false if "Insert Null" is checked. This will be addressed in our next update of the package.

@karamcintyre I've pushed up the changes we've been testing, I'll open a PR.


Create initial project readme

What
First true commit capturing the readme of the project details and goals
Why
Establish some foundational stuff like language, tools, workflow just gettin it rolling.

Getting an idea of github devops stuff, don't know how to allow code author to be a valid review and since I'm an org of one for right now just going to bypass branch protections


Fix cache storage in staging

Coverage remained the same at 81.068% when pulling 81a12489dc118381edae77c8e1ffc46e20aeb828 on fix/cache-storage-staging into ce8c7b617716eca807a3c682d9c0162200bc0330 on master.


Support Authentication Method Mismatch

https://github.com/denodrivers/mysql/issues/113
This pr supports the Authentication Method Mismatch described as https://dev.mysql.com/doc/dev/mysql-server/latest/page_protocol_connection_phase.html

@lideming PTAL
But I don't know how to test it. I test it locally by TiDB Cloud Serverless Tier which always trigger the auth method mismacth phase.

Please run deno fmt to make CI pass.

I found the test failed with the latest MariaDB. If it is my fault, please let me known

Not your fault. It failed on the master branch too. Seems that something changed about the EOF packet in the latest mariadb... I think we can temporarily disable mariadb:latest and see if other tests pass:
https://github.com/lideming/deno_mysql/blob/master/.github/workflows/ci.yml#L35

LGTM. Thanks for your contribution!


remove deprecation warning

The HERE weather integration has a deprecation warning that will prevent it from function in 2023.1.
https://developers.home-assistant.io/blog/2022/10/14/deprecate-unit-system

Looks like there's a lot more with this I missed after cleaning up the warnings from this.  I'll try to look at reworking it and updating soon.

Thank you for your contribution. Be aware that there are some generell issues with this integration currently: https://github.com/eifinger/hass-here-weather/issues/174

Hm, all right.  I haven't done python dev before so will need to see about getting an environment set up.

This is probably the limit of what I can contribute to this given the time I have and my lack of knowledge of custom components in HA, feel free to close if it isn't helpful.
TODO:
Accessing the name attribute is no longer supported: https://github.com/eifinger/hass-here-weather/blob/main/custom_components/here_weather/sensor.py#L54
How does the new unit system impact these in the constants?

Thank you for your contribution.
I will use it as a base for further development.
Unfortunately this is currently blocked until homeassistant uses aiohttp 3.8.3 or later since aiohere depends on it

No problem. Do you end up with a bit of a chicken and egg where they need to go together since this will break in 2023.1?

Yes, it will break in 2023.1 I hope the issues in homeassistant with aiohttp will be fixed by then

The HERE API changed ALOT https://github.com/eifinger/hass-here-weather/pull/188

Thank you for your contribution. It helped a lot!