fix: prevent excessive 403 calls

When a project's details page is loaded, the CSI mechanism will request the "Manage project" (aka edit) button.
However, since most folks are unlikely to be logged in, most of these requests result in a 403 HTTP status code response.
Wrapping with an if statement, we should cut down the volume of unnecessary requests to this endpoint significantly.

From a numbers perspective using Datadog APM, we can see that in a 15 minute window there were ~5,500 403 vs 12 200 responses to this endpoint (private access link).

Hmmm, on second thought I’m trying to think how this interacts with caching.

The reason we use a client side include for this is to make it so we can cache these pages independently of logged in status, so I’m not sure if this will work as expected.

Yeah. I don’t think we can solve this in the template alone. We’d need to somehow short circuit in the browser.

Oh, that's more interesting. Hadn't thought of that, thanks for the pointer. 🤔
I'll go back to the drawing table.

I’m not sure if our JS knows wether a user is logged in or not, but if it did we could add a some bits to mark certain client side includes as “requiring login” and skip loading them in https://github.com/pypi/warehouse/blob/main/warehouse/static/js/warehouse/utils/html-include.js

Indeed, pretty much all our JS is nonspecific to user behavior.
In thinking about how the html-includes works today, we could look at the DOM for the non-Login link element as a proxy for a logged in session, and add another class to the csi tag in html to operate as a conditional, so that the html remains static.

Using the non-Login DOM element as a conditional will still fire 403s for logged in users who are looking at other projects, but the overall volume would come down. (That's the same as the current proposed implementation)


Depth not the same with different method

Required Info

Camera Model
{  D400 }

Firmware Version
(<IP_ADDRESS>)

Operating System & Version
Linux (Ubuntu 18.04)

Kernel Version (Linux Only)

Platform
PC

SDK Version
2.29.0

Language
C++

Segment
{Robot/Smartphone/VR/AR/others }

Issue Description
I want to compare the result of distance with 2 method at the same point but it give me not the same, here is my code
#include <librealsense2/rs.hpp>
#include <librealsense2/rsutil.h>
#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

cv::Mat depth_frame_to_meters(const rs2::pipeline& pipe, const rs2::depth_frame& f);

int main()
{
    const auto window_name = "des";
    namedWindow(window_name,WINDOW_AUTOSIZE);
    rs2::pipeline pip;
    rs2::config cfg;
    cfg.enable_stream(RS2_STREAM_DEPTH,640,480,RS2_FORMAT_Z16,30);
    pip.start(cfg);

    while(waitKey(1) < 0 && getWindowProperty(window_name, WND_PROP_AUTOSIZE) >= 0)
    {
        rs2::frameset frame = pip.wait_for_frames();
        auto depth_frame = frame.get_depth_frame();

        Mat depth = depth_frame_to_meters(pip,depth_frame);
        cout<<"1: "<<depth.at<float>(180,101)<<endl;
        cout<<"2: "<<depth_frame.get_distance(180,101)<<endl;

    }

    return EXIT_SUCCESS;
}

cv::Mat depth_frame_to_meters(const rs2::pipeline& pipe, const rs2::depth_frame& f)
{
    using namespace cv;
    using namespace rs2;

    int w = f.get_width();
    int h = f.get_height();
    Mat image(Size(630,480),CV_16UC1,(void*)f.get_data(),Mat::AUTO_STEP);

    Mat dm = image;
    dm.convertTo(dm, CV_64F);
    auto depth_scale = pipe.get_active_profile()
        .get_device()
        .first<depth_sensor>()
        .get_depth_scale();
    cout<<"depth scale: "<<depth_scale<<endl;
    dm = dm * depth_scale;
    return dm;
}

So which one is correct. Hope to see your answer:))

There is a typo in:

int w = f.get_width();
int h = f.get_height();
Mat image(Size( 640 630 ,480),CV_16UC1,(void*)f.get_data(),Mat::AUTO_STEP);

It seem thought as it were meant to use w and h instead.
Other than that  it should produce similar results

Does that resolve your issue daothanlong11?
Thanks

If we don’t hear from you in 7 days, this issue will be closed.

If we don’t hear from you in 7 days, this issue will be closed.

sorry for late reply. Yes, my issue is solve, the problem is in first method, need to switch width and height, because of using .at()


ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

Looks like the drivers published on Microsoft website are different from the github releases. The one on github has a bug. I found this bug via Python library jaydebeapi, but it can be easily reproduced using the java commands below.
Driver version

8.2.0
8.2.2
This list is non-exhaustive. I only tested these two versions.
SQL Server version

N.A.
Client Operating System

Debian 10
JAVA/JVM version

11.0.7
Problem description

Expected behaviour:
Driver downloaded from https://go.microsoft.com/fwlink/?linkid=2122536

java -cp mssql-jdbc-8.2.0.jre11.jar com.microsoft.sqlserver.jdbc.SQLServerDriver
Error: Main method not found in class com.microsoft.sqlserver.jdbc.SQLServerDriver, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Actual behaviour:
Driver downloaded from https://github.com/microsoft/mssql-jdbc/releases/download/v8.2.0/mssql-jdbc-8.2.0.jre11.jar

java -cp mssql-jdbc-8.2.0.jre11.jar com.microsoft.sqlserver.jdbc.SQLServerDriver
Error: Could not find or load main class com.microsoft.sqlserver.jdbc.SQLServerDriver
Caused by: java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

Hi @zikun ,
I tried the jar from GitHub on Windows, could not reproduce the issue you described.
java -cp mssql-jdbc-8.2.0.jre11.jar com.microsoft.sqlserver.jdbc.SQLServerDriver
Error: Main method not found in class com.microsoft.sqlserver.jdbc.SQLServerDriver, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Could this be a Debian thing?

This can be reproduced in Ubuntu 18.04/20.04 with openjdk 11.0.7 / 13.0.3 as well.
You can test those using a Docker container.
But on Mac OS with openjdk 13.0.2, this seems to be fine.

Just tried on Ubuntu 20.04.
wget https://github.com/microsoft/mssql-jdbc/releases/download/v8.2.0/mssql-jdbc-8.2.0.jre11.jar

/usr/lib/jvm/java-11-openjdk-amd64/bin/java -cp mssql-jdbc-8.2.0.jre11.jar com.microsoft.sqlserver.jdbc.SQLServerDriver
Error: Main method not found in class com.microsoft.sqlserver.jdbc.SQLServerDriver, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application

Thanks for testing. So looks like it's a Docker thing. All my environments are in Docker except Mac OS.
But the point is the jar from github and that from microsoft are indeed different. The one from https://go.microsoft.com/fwlink/?linkid=2122536 works well in Docker.

Yes, I even did chmod 777. Below are the sequence of commands I tried:
docker run --rm -it ubuntu:20.04
apt-get update
apt-get install -y curl default-jre-headless
curl https://github.com/microsoft/mssql-jdbc/releases/download/v8.2.0/mssql-jdbc-8.2.0.jre11.jar -o mssql.jar
chmod 777 mssql.jar
java -cp mssql.jar com.microsoft.sqlserver.jdbc.SQLServerDriver
Error: Could not find or load main class com.microsoft.sqlserver.jdbc.SQLServerDriver
Caused by: java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

I was actually able to reproduce the behavior with your commands, but using wget instead of curl fixed it for me.
docker run --rm -it ubuntu:20.04
apt-get update
apt-get install -y wget default-jre-headless
wget https://github.com/microsoft/mssql-jdbc/releases/download/v8.2.0/mssql-jdbc-8.2.0.jre11.jar
java -cp mssql-jdbc-8.2.0.jre11.jar com.microsoft.sqlserver.jdbc.SQLServerDriver


Fixed model staging script

Hey Jair, thanks for submitting this. Looks good! I'll approve it now.


Evaluate social login test for microsoft

Why
Currently we don't include social logins in our Playwright tests.
Ideally, we want to test at least the happy paths here.
We already found out that it is hard to write e2e tests for Google and GitHub so we want to evaluate if it's possible for Microsoft.
TODOS

[x] Create a MS account
[ ] Write a basic e2e test that goes through a social signup using MS
[ ] Extend test (only if the previous two steps worked)

Social login is no longer supported on staging (and local) deployments.
Redeploying staging, as well as merging main into staging1, did not work.

Automated playwright testing on microsoft social login works without problem so far.
Signup test done, working on login test


Completion provider show completions at the end of the list

@mjbvz Is it possible to show completions at the end of the list?
I'm using this one:
completionItem.sortText = "\uffff9999" + i;
But still completions are not at the end of the list. I know they are sorted additionally by the text you typed, etc. but maybe there's a way to make them at the end of the list always?

No, that's not possible as suggestions get also sorted by the match score of the selected prefix and there is no reason why we should hide a good matching suggestion

The only possible workaround is to have no prefix selected and to re-compute suggestions with each keystroke (which can be accomplished via incomplete suggestion). But on a metalevel: why would you hide your suggestions at all?


tests: arch: arm: no_multithreading: Limit platforms allowed

When multithreading is off, kernel source files like sem.c (samphore
implementation) are not present in the build. Some platforms by default
fetch modules or drivers that are using multithreading primitives and
because of that fails to compile when multithreading is off.
Limit the test to only qemu platforms since test is arch specific.
Fixes #34739.
Signed-off-by: Krzysztof Chruscinski<EMAIL_ADDRESS>

This needs to run on hardware, we cannot do it like this.

Do you expect a fix soon?  If not, I'd like to merge this and than we deal with expanding this to run on other platforms as a follow up PR.

This needs to run on hardware, we cannot do it like this.

Do you expect a fix soon? If not, I'd like to merge this and than we deal with expanding this to run on other platforms as a follow up PR.

So let me ask this - we merged changes in the support of CONFIG_MULTITHREADING=n feature, (probably here: #34279) that broke this test, which has been working for quite a long time, i.e. we had support for CONFIG_MULTITHREADING=y on real ARM hardware, and we consider that the fix is to run the test only for QEMU targets?
Looking closely on #34279; it appears to me that this PR has introduced additional tests for the CONFIG_MULTITHREADING=n use-case, but all of them build and run only on QEMU targets, why have we agreed to go this way? Nothing in the description of the PR suggests that from now on, the CONFIG_MULTITHREADING=n feature is only supported on qemu targets, not hardware.

This needs to run on hardware, we cannot do it like this.

Do you expect a fix soon? If not, I'd like to merge this and than we deal with expanding this to run on other platforms as a follow up PR.

So let me ask this - we merged changes in the support of CONFIG_MULTITHREADING=n feature, (probably here: #34279) that broke this test, which has been working for quite a long time, i.e. we had support for CONFIG_MULTITHREADING=n on real ARM hardware, and we consider that the fix is to run the test only for QEMU targets?
Looking closely on #34279; it appears to me that this PR has introduced additional tests for the CONFIG_MULTITHREADING=n use-case, but all of them build and run only on QEMU targets, why have we agreed to go this way? Nothing in the description of the PR suggests that from now on, the CONFIG_MULTITHREADING=n feature is only supported on qemu targets, not hardware.

Sorry guys, i'm on vacation with limited access to PC (back Thursday) #34279 changed kernel CMakeLists.txt to not include multithreading files when CONFIG_MULTITHREADING=n. Previously, this test was compile and was actually fetching multithreading.
Not sure how to filter ok platforms. I checked that test compiles for nrf boards except boards like Thingy (#34468) which has sensors and uses i2c and spi.
@ioannisg @galak

This needs to run on hardware, we cannot do it like this.

I can add some nrf boards? Others i want be able to test.


Unable to make bmdtools on mac os 10.11.6

Hi,
Trying to build but got error " sudo make SDK_Path=/Users/administrator/Downloads/BlackmagicSDK/Mac/include/
Password:
make: *** No rule to make target ../../include/DeckLinkAPIDispatch.cpp', needed by bmdcapture'.  Stop."
Regards,
Fahad

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/38021561-unable-to-make-bmdtools-on-mac-os-10-11-6?utm_campaign=plugin&utm_content=tracker%2F256764&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F256764&utm_medium=issues&utm_source=github).

Looks like you have a typo, it is SDK_PATH.

Now the SDK path is correct but i am still unable to make.
find the errors below.
administrator$ make SDK_PATH=/Users/administrator/bmdtools/SDK/Mac/include/
g++ -o bmdcapture bmdcapture.cpp modes.cpp /Users/administrator/bmdtools/SDK/Mac/include//DeckLinkAPIDispatch.cpp  pkg-config --cflags libavcodec libavformat libswscale libavutil -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -Wno-multichar -I /Users/administrator/bmdtools/SDK/Mac/include/ -fno-rtti -g -framework CoreFoundation -DHAVE_CFSTRING  pkg-config --libs libavcodec libavformat libswscale libavutil -lm -ldl -lpthread -framework CoreFoundation
bmdcapture.cpp:95:9: warning: 'av_free_packet' is deprecated [-Wdeprecated-declarations]
av_free_packet(&pkt->pkt);
^
/usr/local/include/libavcodec/avcodec.h:3914:6: note: 'av_free_packet' has been explicitly marked deprecated here
void av_free_packet(AVPacket *pkt);
^
bmdcapture.cpp:117:30: warning: 'av_dup_packet' is deprecated [-Wdeprecated-declarations]
if (pkt != &flush_pkt && av_dup_packet(pkt) < 0) {
^
/usr/local/include/libavcodec/avcodec.h:3905:5: note: 'av_dup_packet' has been explicitly marked deprecated here
int av_dup_packet(AVPacket *pkt);
^
bmdcapture.cpp:207:25: warning: 'codec' is deprecated [-Wdeprecated-declarations]
c             = st->codec;
^
/usr/local/include/libavformat/avformat.h:712:21: note: 'codec' has been explicitly marked deprecated here
AVCodecContext *codec;
^
bmdcapture.cpp:247:25: warning: 'codec' is deprecated [-Wdeprecated-declarations]
c             = st->codec;
^
/usr/local/include/libavformat/avformat.h:712:21: note: 'codec' has been explicitly marked deprecated here
AVCodecContext *codec;
^
bmdcapture.cpp:302:13: warning: 'codec' is deprecated [-Wdeprecated-declarations]
c = st->codec;
^
/usr/local/include/libavformat/avformat.h:712:21: note: 'codec' has been explicitly marked deprecated here
AVCodecContext *codec;
^
bmdcapture.cpp:386:19: warning: 'codec' is deprecated [-Wdeprecated-declarations]
c = audio_st->codec;
^
/usr/local/include/libavformat/avformat.h:712:21: note: 'codec' has been explicitly marked deprecated here
AVCodecContext *codec;
^
bmdcapture.cpp:418:19: warning: 'codec' is deprecated [-Wdeprecated-declarations]
c = video_st->codec;
^
/usr/local/include/libavformat/avformat.h:712:21: note: 'codec' has been explicitly marked deprecated here
AVCodecContext *codec;
^
7 warnings generated.
ld: can't open output file for writing: bmdcapture, errno=13 for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [bmdcapture] Error 1
Regards,
Fahad

 ld: can't open output file for writing: bmdcapture, errno=13 for architecture x86_64

Looks like you are out of space.

i have morethen 200GB available on my mac
Fahad

make sure the directory is writable then =/ it is quite strange, here is
working fine.
On Wed, Oct 19, 2016 at 12:05 PM, sfahadshahzad<EMAIL_ADDRESS>wrote:

i have morethen 200GB available on my mac
Fahad
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/lu-zero/bmdtools/issues/79#issuecomment-254769829,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAOlpHSWaTOzhW4mVmx43-PfJsBW2W13ks5q1etkgaJpZM4KLvBq
.


Instrument tracing information for every execution of the scheduled method

After the replacement of Spring Cloud Sleuth integration with Micrometer integration with a new version of Spring Boot 3.x we lost tracing information creation for the method annotated with Scheduled annotation which was available out of the box with mentioned Sleuth integration.
Without this functionality, every developer needs to implement their own support, so is there a chance to reflect Sleuth functionality inside the Micrometer implementation?
Please let me know if you need a contribution to the implementation.

This should be implemented in Spring Framework, see: https://github.com/spring-projects/spring-framework/issues/29883
Users do not need to implement their own support, they can use @Observed as a workaround, see: https://github.com/spring-projects/spring-framework/issues/29883#issuecomment-1454325369


Updated README

Hi,
I am getting below error when following the README.
python manage.py loaddata django_project/fixtures/initial_data.json

I think it is because I don't have any user in the auth_table.
Traceback (most recent call last):
File "manage.py", line 10, in
execute_from_command_line(sys.argv)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/init.py", line 353, in execute_from_command_line
utility.execute()
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/init.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 348, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/base.py", line 399, in execute
output = self.handle(*args, **options)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/commands/loaddata.py", line 60, in handle
self.loaddata(fixture_labels)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/core/management/commands/loaddata.py", line 106, in loaddata
connection.check_constraints(table_names=table_names)
File "/home/ashish/peragro/django-project-1/env/local/lib/python2.7/site-packages/django/db/backends/sqlite3/base.py", line 292, in check_constraints
referenced_table_name, referenced_column_name))
django.db.utils.IntegrityError: Problem installing fixtures: The row in table 'django_project_membership' with primary key '1' has an invalid foreign key: django_project_membership.member_id contains a value '1' that does not have a corresponding value in auth_user.id.

It is resolved by creating superuser using python manage.py createsuperuser. I have updated the README. Check the PR https://github.com/peragro/django-project/pull/13


k2-283 changes in default config and DNS not in helm anymore

change to new kubedns config stanza.
remove helm check for kubedns...it is not deployed that way anymore.
leave in the kubectl check for kubedns...this is still correct.

moving to k2recon branch instead


Manpages are not reproducible

optparse.HelpFormatter is set up with width=None, thus causing optparse to produce output which guesses at the $COLUMNS of the current terminal. The resulting manpages might look something like this:
--- man-old/dsidm.8	2020-05-21 16:34:15.301597779 -0400
+++ man-new/dsidm.8	2020-05-21 16:34:48.441852944 -0400
@@ -38,7 +38,9 @@
 Manage generic roles, with tasks
 like modify, locking and unlocking.
 .SH OPTIONS 'dsidm account'
-usage: dsidm instance account [-h] {list,get-by-dn,modify-by-dn,delete,lock,unlock,entry-status,subtree-status,reset_password,change_password} ...
+usage: dsidm instance account [-h]
+                              {list,get-by-dn,modify-by-dn,delete,lock,unlock,entry-status,subtree-status,reset_password,change_password}
+                              ...

 .SS
 \fBSub-commands\fR
@@ -133,7 +135,9 @@
 Print more account policy details about the entry

 .SH OPTIONS 'dsidm account subtree-status'
-usage: dsidm instance account subtree-status [-h] [-V] [-f FILTER] [-s {one,sub}] [-i] [-o BECOME_INACTIVE_ON] basedn
+usage: dsidm instance account subtree-status [-h] [-V] [-f FILTER] [-s {one,sub}] [-i]
+                                             [-o BECOME_INACTIVE_ON]
+                                             basedn

 .TP
 \fBbasedn\fR
@@ -189,7 +193,8 @@

 .SH OPTIONS 'dsidm group'
-usage: dsidm instance group [-h] {list,get,get_dn,create,delete,modify,members,add_member,remove_member} ...
+usage: dsidm instance group [-h]
+                            {list,get,get_dn,create,delete,modify,members,add_member,remove_member} ...

 .SS
 \fBSub-commands\fR
@@ -514,7 +519,8 @@

 .SH OPTIONS 'dsidm user create'
-usage: dsidm instance user create [-h] [--uid [UID]] [--cn [CN]] [--displayName [DISPLAYNAME]] [--uidNumber [UIDNUMBER]] [--gidNumber [GIDNUMBER]]
+usage: dsidm instance user create [-h] [--uid [UID]] [--cn [CN]] [--displayName [DISPLAYNAME]]
+                                  [--uidNumber [UIDNUMBER]] [--gidNumber [GIDNUMBER]]
                                   [--homeDirectory [HOMEDIRECTORY]]

@@ -621,7 +627,9 @@

 .SH OPTIONS 'dsidm role'
-usage: dsidm instance role [-h] {list,get-by-dn,modify-by-dn,delete,lock,unlock,entry-status,subtree-status} ...
+usage: dsidm instance role [-h]
+                           {list,get-by-dn,modify-by-dn,delete,lock,unlock,entry-status,subtree-status}
+                           ...

 .SS
 \fBSub-commands\fR

Every rebuild of the manpages might produce a completely different binary artifact, based simply on the size of the terminal the build was done in.
See https://reproducible-builds.org/ for why this matters.
...
Please set the width to one value which is used everywhere. Manpage troff formatting codes don't need to respect terminal width.

I do not understand what optparse is doing! but changing this locally did not fix things for me actually... only running setup.py build_manpages with $COLUMNS set. o_0
Maybe this just needs to be exported to os.environ

Good idea, thanks for the report!  I can see that argparse respects COLUMNS
env var...  so we just need to set it at appropriate time.  Patches are welcome!

Hit this one today too.

Can anyone take a look at the patch?  What would be the default number for COLUMNS?

This happens because we use the built-in ArgparseManpage parsers's "format_usage()".
It would be ideal to built the usage string from scratch, with colors - env agnostic.
https://github.com/praiskup/argparse-manpage/blob/22506de87adc13bb82bca36c50b6d416bdbb6582/build_manpages/manpage.py#L140

Hopefully fixed, or worked-around by 456bc2db7501be582ba8ca7eda4e5d6e15527cdc


Validate name in .dockstore.yml

Description
This PR validates the workflow name in the .dockstore.yml using the same validation that's in the front-end. If the name is invalid, the GitHub release fails and you can view the error message in the GitHub App logs:

I also refactored checkEntryName into a helper class for string input validation so future string input validation methods that are usable in several places can be put here as well.
There are a handful of existing GitHub app workflows that have names containing spaces which is invalid with the validation used in this PR. This is a published workflow on prod with a workflow name containing spaces (corresponding .dockstore.yml). With these workflows, any subsequent pushes to these repos would result in a failure. If they fix the workflow name, it would create a new workflow since the workflow path is technically different.
Issue
SEAB-1866
Please make sure that you've checked the following before submitting your pull request. Thanks!

[x] Check that you pass the basic style checks and unit tests by running mvn clean install
[x] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
[x] Check the Snyk dashboard to ensure you are not introducing new high/critical vulnerabilities
[x] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
[x] Do not serve user-uploaded binary images through the Dockstore API
[x] Ensure that endpoints that only allow privileged access enforce that with the @RolesAllowed annotation
[x] Do not create cookies, although this may change in the future

Made the error message more specific (indicates what type of entry it is).

Created documentation ticket: https://ucsc-cgl.atlassian.net/browse/SEAB-3571

I just commented on the JIRA ticket you just created, but I'm wary of being unable to update existing workflows. But if nobody else objects...

Charles' comment on the JIRA ticket:

Proposal: What if we instead don’t enforce the name validation on existing workflows? If any of these workflows in question or in use, we’ve just blocked a way for authors to update the workflows.

Thinking about the behaviour for name validation during manual workflow/tool registration, we don't try go back and fix the invalid ones (I'm not sure if there are any), so the equivalent behaviour here would be to only validate names for new workflows and ignore existing ones.
I could go either way. It would be a more pleasant user experience if they don't suddenly run into a validation error that wasn't there before, but then their workflow would be an exception to our name validation...but I guess you could argue that  if they never update their GitHub app workflow then it'll always be an exception

I could go either way. It would be a more pleasant user experience if they don't suddenly run into a validation error that wasn't there before, but then their workflow would be an exception to our name validation...but I guess you could argue that if they never update their GitHub app workflow then it'll always be an exception

I think the only reason we're really doing validation is to avoid future issues. Since these particular existing workflows seem ok, I don't have a strong objection to applying this only to future workflows with the caveat that there may be the occasional edge case where these workflows might look/behave oddly

Changed it so the name validation only applies to new workflows. Re-requesting reviews, will remove https://github.com/dockstore/dockstore-deploy/wiki/1.12-Release-Checklist#release-notes once it's approved since this is no longer a breaking change

Looks good. Sort of wondering if we can reuse this code or nicely merge with what @NatalieEO is doing for username validation. Adding more methods to the same class?

Yeah, the username validation method could be added to this class if the method can be used in multiple places

Also raises for me the issue of response sanitization. As noted above, we may stop the addition of "bad" names using this but there are still entries in Dockstore that don't satisfy the conditions.

It seems like the consensus from the discussions in this PR is that it's okay for these existing entries to not satisfy the name validation


How can we add view controller via storyBoard?

I am new in swift, I want to know that how can I add both view controller by storyboard ID.?
@newbdez33  @wwwjfy  @patricks
Here it is added by programmatically.
private struct PagingMenuOptions: PagingMenuControllerCustomizable {
private let viewController1 = ViewController1() //Added View controller by programmatically.
private let viewController2 = ViewController2()

fileprivate var componentType: ComponentType {
    return .all(menuOptions: MenuOptions(), pagingControllers: pagingControllers)
}

fileprivate var pagingControllers: [UIViewController] {
    return [viewController1, viewController2]
}

fileprivate struct MenuOptions: MenuViewCustomizable {
    var displayMode: MenuDisplayMode {
        return .segmentedControl
    }
    var itemsOptions: [MenuItemViewCustomizable] {
        return [MenuItem1(), MenuItem2()]
    }

    var backgroundColor : UIColor {
        return UIColor.blue
    }

    var focusMode: MenuFocusMode {
        return .underline(height: 4, color: UIColor.black, horizontalPadding: 10, verticalPadding: 0)
    }
}

fileprivate struct MenuItem1: MenuItemViewCustomizable {
    var displayMode: MenuItemDisplayMode {
        return .text(title: MenuItemText(text: "First Menu",color: UIColor.lightGray,
                     selectedColor: UIColor.blue))
    }
}
fileprivate struct MenuItem2: MenuItemViewCustomizable {
    var displayMode: MenuItemDisplayMode {
        return .text(title: MenuItemText(text: "Second Menu"))
    }
}
}

@kishor010 I think a better place to ask questions is stackoverflow, instead of issues page of the repository.
Also, the owner will get notifications, no need to @ people specifically.
PS, I committed a PR once, but I see no point this is related to me. Thanks~

Can you take a look at example project? It generates view controllers via storyboard.

@kitasuke
I saw example project only. But it's not connected via storyboard.
Thanks

It is.
https://github.com/kitasuke/PagingMenuController/blob/master/Example/PagingMenuControllerDemo/UsersViewController.swift#L14:L16

If you have further questions, please ask them on stackoverflow. It's better place for you.

Thanks 👍  💯 🥇


[bug]

linux will crash if it lack 'libffmpegsumo.so'  when media tag for file exist.

@lazyQuis and what about nwjs versions where libffmpegsumo.so don't exists? This cp command will throw and exit I think.

in v0.12.3 will happen.

@lazyQuis so the fix should address earlier versions as well, could you please revisit your patch? My guess piping cp output to /dev/null may be enough.

ok, l will try it

Thanks. Let me know if you have issues.
On Sun, Jan 17, 2016, 11:14 AM Quis<EMAIL_ADDRESS>wrote:

ok, l will try it
—
Reply to this email directly or view it on GitHub
https://github.com/Gisto/nwjs-shell-builder/pull/11#issuecomment-172303031
.


Distance Calculations (new)

Not entirely sure what the intention here is. Is it to provide parameters with which a subsequent generator can make up a payload?
Should it respond to an alert action (i.e., who would actually call the dist_calc1 method, for instance)?
Also, it looks as if in both, you're looking up an entry (specified in init) in a table, but the table itself (e.g. IMF_signal) doesn't change.  Is it better as a static or instance definition?

Suggestion:
Now you are defining the data "by hand". The idea would be to compute this N50 from the time series (i.e., summing the first 50 ms bins of the lightcurve), which is produced by the generator.

My interpretation is that the IMF_signal (the big list with numbers) are values obtained from the code of the paper and acts as some kind of standard candle (with distance = 10 kpc). And using the standard candle, we take in N(0-50ms) as the input payload (which we call data) and find the corresponding distance using the inverse-square distance relation.
Our intention is indeed for N(0-50ms) to be computed by summing up the corresponding number of counts from a histogram.

@tsengj10 I have put the dictionaries outside as static variables. I've discussed with Jason but we are not very sure how to make it "respond" to an alert. We were thinking that it would be called when needed and would just return the required values.
@mcolomermolla We have changed the definition of N50 so that  it now calculates from the data, assuming 0.1ms bins. We previously defined N50 by hand because we weren't sure about what the data would look like.

For the plugin to respond to an alert, the easiest thing to do is to override the function alert().  This has the signature alert(self, data).  I think @JasonWangCY has done this before.

Suggestion from this morning:  replace the list in your return payload with a tuple.
Otherwise, code looks ok.  I guess this isn't "in progress" anymore?

This is very basic DAG at the moment with calculations for input signal from IceCube (10kpc). We'd later add in some other plugins to alter the true distance and perhaps plot the RMSE against true distance.

Very nice work!
I have run it and I can obtain the output correctly. I think this is really ready to be merged!
Some further suggestion for a "more real case":
Now you sum up the first 50 bins from the signal-only pseudo-experiments. In the real case, one will start the sum from the "measured/estimated" T0 of the signal, which needs to be taken as input. And for sure, one needs to add background. My proposal would be that you move to using gen.GenerateSGBG instead of gen.TimeSeries, and start the sum from the "true" generated T0 in this generator.

Some more comments:

When I change the input file with the IceCube time series by km3net or JUNO, output is empty, even keeping same 'mean'. Is this expected?
The mean value for IceCube is quite low, it should be more 1e5 than 1e3. Is the mean here defined differently?

@mcolomermolla I have just modified the config csv to include JUNO calculations. I took the mean values from test-csv.csv. It should now make plots for both detectors properly. I am still working on including the background. I have been getting empty plots so far.

@mcolomermolla I have just modified the config csv to include JUNO calculations. I took the mean values from test-csv.csv. It should now make plots for both detectors properly. I am still working on including the background. I have been getting empty plots so far.

There is something I don't understand:
The only change in the csv form IceCube to JUNO (besides how you name it), it is changing the sig_filename:
"IceCube-ts","gen.TimeSeries","Control","'mean’: 1548, ‘seed’: 12345, ‘sig_filetype’:’tn’, ‘sig_filename’:’snewpdag/data/output_icecube_27_Shen_1D_solar_mass_progenitor.fits_1msbin.txt‘",,
"JUNO-ts","gen.TimeSeries","Control","'mean’: 0.001, ‘seed’: 5831, ‘sig_filetype’:’tn’, ‘sig_filename’:’snewpdag/data/output_scint20kt_27_Shen_1D_solar_mass_progenitor.fits_1msbin.txt‘",,
So how is it that it was not working when I tried just:
"IceCube-ts","gen.TimeSeries","Control","'mean’: 1548, ‘seed’: 12345, ‘sig_filetype’:’tn’, ‘sig_filename’:’snewpdag/data/output_scint20kt_27_Shen_1D_solar_mass_progenitor.fits_1msbin.txt‘",,
instead of having the two at the same time (and wihtout changing the name)
Concerning the means: indeed those in test-csv.csv were not correct, in principle it should be 1e3 for JUNO and 1e5 for Icecube
Good that you're already working in the background! :)

I think it's because the signal file for IceCube should be snewpdag/data/output_icecube_27_Shen_1D_solar_mass_progenitor.fits_1msbin.txt‘ rather than ’snewpdag/data/output_scint20kt_27_Shen_1D_solar_mass_progenitor.fits_1msbin.txt‘, which is presumably for JUNO. The distance calculation plugins looks for the values for IceCube in its dictionaries but are giving the "wrong" data leading to a "wrong" plot.

Right, now I understand! So actually your code looks for values into a dictionary given the detector name, which I was not changing, I see!
So, another proposal for further steps:
It would be nice that you apply the fit and find the value you now write taken from the paper by yourself. This will allow:

Include additional detectors compared to the paper, like km3net I mentioned
The fit will change with the model and the background, so maybe it is not good to fix it

Actually, I would expect that the distance result changes with the mean number of events expected in the detector, but it does not when I changed to 1e5 and 1e3 for JUNO and IceCube, as it is expected with different event statistics. I guess it is because the values read from the dictionary don't change, but all values used for the distance calculation should come from the gen.TimeSeries output, which changes with the 'mean' chosen, and now it is not at all the case...

T0 has been added as a feature (with 1000 as the current placeholder in the DAG). We are still figuring out the background and perhaps switching to gen.GenerateSGBG later on!

Okey, that's fine!
One point: Actually, there was a change in TimeSeries and it is taking the mean and the integral of the data file, not of the hand written number given in the csv (which actually does not care about). This is why the result was not changing with the mean, that you can close this issue too!
For switching to GenerateSGBG, I can help with it, and you will avoid having to deal with the sg + bg combination again, and also with the T0 generation, as everything is done there already.

The only thing missing from my previous comments in the code is the fact that the bin is 1 ms:
change 500 to 50 for N50, and 1000 to 100 + 1500 to 150 in N100-150

@mcolomermolla Oh oops, you're right, we missed the fact that the .txt file uses 1ms binning!

@mcolomermolla I have been using 0.1ms binning because I think the SeriesBinner will bin the time series that way to fit the distance calculation plugins even if the input signal file has 1ms binning. But I guess it's not so important now in our case. Perhaps Jason and I will work on the plugins for normalising the distance and plotting the errors then?

The true distance for the normalised signal is currently to 20kpc and the domain of the plot is adjusted accordingly. Note that the rule in the Makefile now runs 'test-meandist-config-norm.csv'.

The true distance for the normalised signal is currently to 20kpc and the domain of the plot is adjusted accordingly. Note that the rule in the Makefile now runs 'test-meandist-config-norm.csv'.

Why normalising to 20 kpc instead of 10 kpc which is the true distance? 20 kpc is not commonly used...
Also, can you explain a bit the purpose of this normalisation?

@mcolomermolla I have been using 0.1ms binning because I think the SeriesBinner will bin the time series that way to fit the distance calculation plugins even if the input signal file has 1ms binning. But I guess it's not so important now in our case. Perhaps Jason and I will work on the plugins for normalising the distance and plotting the errors then?

Oh okey, in that case you could keep it as it was. It should be important as it is not the same summing 5 ms, 50 ms or 500 ms, depending on the binning and how N50 is defined.

I believe Jason has modified the plugins and config csv so that now they assume 1ms binning.

@mcolomermolla For 'test-meandist-config.csv', we fixed the distance at 10 kpc and plotted a histogram of frequency vs MeanDist.
Now, for 'test-meandist-config-norm.csv', we are trying to vary to other distances by "normalisation" (I'm not too sure about the name too!) (ideally 1000 different distances in one trial) and plot a graph of error vs "true distance".

@mcolomermolla For 'test-meandist-config.csv', we fixed the distance at 10 kpc and plotted a histogram of frequency vs MeanDist.
Now, for 'test-meandist-config-norm.csv', we are trying to vary to other distances by "normalisation" (I'm not too sure about the name too!) (ideally 1000 different distances in one trial) and plot a graph of error vs "true distance".

Ohh right I see! so basically is just results for a different distance.
Actually, this is also directly handle by GenerateSGBG, which takes the distance as input and provides the generated lightcurve directly for this distance. I will try to make a new commit where GenerateSGBG is used in the comming days.

@mcolomermolla I have been using 0.1ms binning because I think the SeriesBinner will bin the time series that way to fit the distance calculation plugins even if the input signal file has 1ms binning. But I guess it's not so important now in our case. Perhaps Jason and I will work on the plugins for normalising the distance and plotting the errors then?

Oh okey, in that case you could keep it as it was. It should be important as it is not the same summing 5 ms, 50 ms or 500 ms, depending on the binning and how N50 is defined.

I believe Jason has modified the plugins and config csv so that now they assume 1ms binning.

Yes, this was done. But one should use the binning from SeriesBinner indeed, not the one from the data file which is 1ms.
Looking at the csv, the binning is 0.1 ms in SeriesBinner:
"IceCube-bin","SeriesBinner","IceCube","'in_field’:’times’, ‘nbins’:2500, ‘xlow’:-0.1, ‘xhigh’:0.15, ‘out_xfield’:’t’, ‘out_yfield’:’n’",,
"JUNO-bin","SeriesBinner","JUNO","'in_field’:’times’, ‘nbins’:2500, ‘xlow’:-0.1, ‘xhigh’:0.15, ‘out_xfield’:’t’, ‘out_yfield’:’n’",,
So, whether you change SeriesBinner for 1 ms, or change back the DistCalc to use 0.1 ms from SeriesBinner.
Sorry for the confusion yesterday, I though SeriesBinner was using 1 ms too.
In future, you can also look if the binning affects the fit (now used the same as in the paper), and the distance precision.

I believe the "test-meandist-config-norm.csv" now reads:
"IceCube-bin","SeriesBinner","IceCube","'in_field’:’times’, ‘nbins’:250, ‘xlow’:-0.1, ‘xhigh’:0.15, ‘out_xfield’:’t’, ‘out_yfield’:’n’",,
"JUNO-bin","SeriesBinner","JUNO","'in_field’:’times’, ‘nbins’:250, ‘xlow’:-0.1, ‘xhigh’:0.15, ‘out_xfield’:’t’, ‘out_yfield’:’n’",,

Somehow still getting " TypeError: 'module' object is not callable " when trying to call DistNormalizer in MeanDist. This error seems to happen whenever I try calling DistNormalizer inside any plugin.
But the strange thing is, it works perfectly well in a unit test (i.e. I can call DistNormalizer in the unit test just fine). We'll continue trying to find the bug. Strange!

Note that make distcalc_trial plots histograms at 10kpc and 20kpc using snewpdag/data/test-meandist-config-norm.csv while make distcalc_err_trial now plots relative errors against true distance using snewpdag/data/test-meandist-config-error.csv. However, I am not sure if the error plots are correct as the errors decreases with increase in true distance. We are expecting the opposite.

For the expected distribution, we use the true distance (e.g. 10 kpc) as the mean and the standard deviation is taken to be the addition quadrature of all the mdist_err. There does seem to be quite a big deviation compared to the Gaussian fit of the histogram itself.

The error in the "weighted mean distance" is now calculated using differential error analysis, instead of the method used in the paper. The relative errors of the data and the expectation now match but there is some bias in the estimate, especially for IceCube.
There are two configuration csv: test-single-SGBG.csv and test-err-SGBG.csv. test-single-SGBG.csv plots histograms of the distance estimates given by DistCalc1, DistCalc2, and MeanDist at a single distance. It is currently set up for 20kpc but one can change it to any value. Note that the domains of the histograms need to be adjusted accordingly to give nice looking graphs. test-err-SGBG.csv plots relative (statistical) error against true distance (scatter and line), residual against true distance (scatter), and estimated distance against true distance (scatter).
TimeSeries and GenerateSGBG are modified to allow normalisation by mean and distance. Upon an alert, the TrueDist generator generates a distance using either a specified value or a value randomly chosen from a list, which can be configured. There is an option to plot a line in the ScatterPlot but note that it has to be expressed as a function of x (even when it's a constant).

The error in the "weighted mean distance" is now calculated using differential error analysis, instead of the method used in the paper. The relative errors of the data and the expectation now match but there is some bias in the estimate, especially for IceCube.
There are two configuration csv: test-single-SGBG.csv and test-err-SGBG.csv. test-single-SGBG.csv plots histograms of the distance estimates given by DistCalc1, DistCalc2, and MeanDist at a single distance. It is currently set up for 20kpc but one can change it to any value. Note that the domains of the histograms need to be adjusted accordingly to give nice looking graphs. test-err-SGBG.csv plots relative (statistical) error against true distance (scatter and line), residual against true distance (scatter), and estimated distance against true distance (scatter).
TimeSeries and GenerateSGBG are modified to allow normalisation by mean and distance. Upon an alert, the TrueDist generator generates a distance using either a specified value or a value randomly chosen from a list, which can be configured. There is an option to plot a line in the ScatterPlot but note that it has to be expressed as a function of x (even when it's a constant).

Indeed, there is a bias for IceCube, it could be due to the fact that the fit from the paper that is used was done for an IceCube expectation of N(50) with accounted for background: IceCube expects per ms bin about 600 signal events, but on top of ~1500 background events, which modifies significantly N(50). This is the same I observed for JUNO changing the event selection (trigger).
Did you also test it with GenerateSGBG or only with TimeSeries? Why do you need the mean for a scaling here? In principle you just need the distance no?

Both csv files use GenerateSGBG with bg = 0 and tdelay set to 0 so it's basically the same as TimeSeries. This is because GenerateSGBG should randomise the background and the signals separately but now it's randomising the sum of the two. So it still needs to be changed. I add the sig_mean as an extra option that could be used e.g. to compare the shape of lightcurves of different experiments, which could be tricky if they have very different means. If it's not specified, it is the same as the area of the lightcurve so it doesn't change the input anyway.

Both csv files use GenerateSGBG with bg = 0 and tdelay set to 0 so it's basically the same as TimeSeries. This is because GenerateSGBG should randomise the background and the signals separately but now it's randomising the sum of the two. So it still needs to be changed. I add the sig_mean as an extra option that could be used e.g. to compare the shape of lightcurves of different experiments, which could be tricky if they have very different means. If it's not specified, it is the same as the area of the lightcurve so it doesn't change the input anyway.

What you say here about the randomisation is not correct, because of the properties of poisson:

Poisson(signal) + Poisson(background) = Poisson(signal+background)
statistically it is correct to use the sum and it will give the same result (I spent a lot of time on that during my thesis).

OK for me mean, I see your point! :) (even if indeed one can normalise by the integral of the lightcurve directly)

The calculator plugins have been modified to take into account errors due to background. Note that for I have only put down the background for IceCube in the csv files as it is given in the paper. Error in the background for IceCube is defined as bg_err = 1.3*np.sqrt(bg) in accordance to the paper to account for correlated hits from muons. Now the bias is less severe but the statistical error is in general slightly larger than expected.
It seems that at large distance (>25kpc) there is often outliers in the distance estimate that are a few times off the true distance, causing the error plots to have odd fluctuations/ spikes. So I have reduced the default list in TrueDist to be 25 evenly-spaced values between 1 and 25 kpc. Also, the distcalc_err_trial rule in the MakeFile is set to run for 5000 trials to give smoother plots. However, to get really continuous and smooth error plots, one probably need to run around 100k trials but this is likely to take way too long when bg is non-zero.

I think the 1.3 factor takes into account that they can measure a background rate per optical module (DOM), but there is additional background variation (above the usual Poisson variance) due to correlated pulses due to muons, which presumably leave hits in multiple DOM's.
I'm not sure it really belongs here, then.  We aren't simulating individual DOM's, but rather the background rate of the detector as a whole, so we can specify whatever rate we wish.  More importantly, the MC trial (and GenerateSGBG) doesn't inflate background rates by a similar factor - it just generates whatever background rate we specify.  In the end, we should be able to calculate the widths we observe self-consistently and see the numbers line up.

The DistErrPlot renderer now plots statistical errors expected by each method into one plot (previously, it was plotting statistical, systematic and combined errors expected by the weighted mean method).
In ScatterPlot, I have added the option of plotting the x, y axes in log scale by adding the appropriate flags.


Feature(Android): Support x86_64

Please note: x86_64 is supported only if the JS interpretator supports x86_64, which means:

Weex with libjsc.so is supported on X86_64
Weex with JavaScriptCore.so is not supported on X86_64

As JavaScriptCore.so is no longer provided after Weex 0.28, the above condition is not a big problem for us.

The Travis CI build is so slow, and it is easy to fail because of network problems.

@cnryb I fix it by removing maven mirrors of Alibaba Cloud, which would however cause a problem to our users in China.

The failure of previous build is because that JavaScriptCore.so dont' support x86_64.
@cnryb Please review it again.
FYI: We still need to figure out how to sovle the network problem on CI server, however.


await reset scroll to 0 before rendering the new page

Closes #6462  I created a simple Jsfiddle to demonstrate the problem.

Why pathname is string | undefined?


No port for 1.20.1

Self explanatory :(

https://www.curseforge.com/minecraft/mc-mods/windowlogging-renewed


Crash on server

Fabric server, 1.21
https://gist.github.com/BBoldt/1c8b0123f42538b5ac381564ffacf8db

There is always some oversight - thanks for the report!
I have fixed this now :)

The commit that fixed this together with a few additional things is https://github.com/ThexXTURBOXx/Balkons-WeaponMod-Legacy/commit/cbeb3ff67088fdca9ec374452e7e693f9e3e7cb7
However, please be aware that there are still LOTS of bugs on Fabric server environments.
I have reported this to Architectury API accordingly (since I think its their fault: https://github.com/architectury/architectury-api/issues/523).
If it's not their fault, I will reopen this, though!

I have fixed this issue on Architectury API's end - they forgot to properly register the SpawnEntityPacket on the server side (see https://github.com/architectury/architectury-api/pull/524).
However, I found two more small issues regarding 1.20.6 and 1.21 servers.
I have fixed them in the newest commit for both versions. Now, everything should be in order (hopefully)


mimalloc-redirect: error: "unable to find taget moudle"

mimalloc-redirect: warning: stander malloc is not redirected! -- using regulare malloc/free
what does this mean? I use vs2017 and build my project on window10

any idea is appreciated, many thanks

It does mean that mimalloc is not redirected  and the standard allocator is used. You need to run with MIMALLOC_VERBOSE=3  in the environment and send the output at startup -- that will probably show more clearly what is happening. Make sure to copy&paste the exact output. Thanks


Update - Works on Sense 2!

I was recently looking into developing an app for Fitbit until the sudden realisation there's no official way to develop one for a Sense 2.
I came across this repo and decided to try it and wanted to say that this works on a Sense 2. Noticed it says 'possibly works on Sense 2' so hopefully you can rename/change repo accordingly.
Created a simple cookie clicker, screenshots below:

App List
App

Awesome work! I'll update the repo description -- Thanks for confirming this @eraychumak 👍


fix(page): fix race condition in WaitTask

This patch eliminates a common race condition with WaitTask, that
happens when predicate function gets resolved right before the execution
context gets destroyed.
This situation results in a "Cannot find context with specified id undefined"
exception.
Credits go to @jakub300 for his wonderful investigation.
Fixes #1325.

Hello, I tried to edit .../node_modules/puppeteer/lib/FrameManager.js in a project.... but I get the same error despite of that. Maybe is that not enough and do I need to to something else? Or is this fix really not definitive? Thanks

@7starsone try installing puppeteer@next and see if it helps you.

Hello, if it helps I'm using this https://github.com/nesk/puphpeteer but the owner banned me from comments because of Cannot find context with specified id undefined 😆 because not about his work and he stated that I didn't provide any detail but I did it, a code example, the logger, the used software versions and so on... and still had some issues with crashing script (not about my php code but the try catch not working and sometimes even if the URLs are from the same website and the page structure is the same...) like this, then "...Unexpected token { in JSON at position..." and "listen EADDRINUSE". Here the entire discussione https://github.com/nesk/puphpeteer/issues/7
Thank you very much

@aslushnikov  "error in javascript code" what javascript code? Something in the project from puppeteer or that one coming from the page content when goto URL?
The error on log is related to the line 230 of ProcessSupervisor.php where he (?) does a checkProcessStatus(); but it doesn't seem to be related to javascript...maybe you could take a look at that code.
Then, "These all have nothing to do with" that was clear, I just listed what issues were detected...that cause a crash and not only an exception to handle. Indeed, I have not a javascript code because I code in php in this case and the procedure often stops because of those external errors. Thanks

Hello, please, can you explain how to change the used port? (on the /lib folder? where?) The problem is that on documentation of nesk/puphpeteer this is not explained and not even here. Unfortunately, listen EADDRINUSE is really annoying and slows down everything because even if I launch a script one time a minute in case it's not running, this condition may  persist for many minutes...
thank you


Make autosuggest trigger and options list less coupled

Description
The autosuggest component is used internally by the property filter where the coming use case requires the autosuggest to be better abstract allowing for any content in the dropdown. The PR factors out a new internal element - autosuggest options list to reduce coupling between the internal input and list-options elements.
How has this been tested?
Existing tests were updated to account for structural changes.
New tests added to cover the tab traps for recovery link.
Documentation changes
[Do the changes include any API documentation changes?]

[ ] Yes, this change contains documentation changes.
[x] No.

Related Links
[Attach any related links/pull request for this change]

Review checklist
The following items are to be evaluated by the author(s) and the reviewer(s).
Correctness

[ ] Changes are backward-compatible if not indicated, see CONTRIBUTING.md.
[ ] Changes do not include unsupported browser features, see CONTRIBUTING.md.
[ ] Changes were manually tested for accessibility, see accessibility guidelines.

Security

[ ] If the code handles URLs: all URLs are validated through the checkSafeUrl function.

Testing

[ ] Changes are covered with new/existing unit tests?
[ ] Changes are covered with new/existing integration tests?

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report

Merging #114 (f4ac39c) into main (7ddf8e2) will increase coverage by 0.01%.
The diff coverage is 97.56%.

@@            Coverage Diff             @@
##             main     #114      +/-   ##
==========================================
+ Coverage   92.37%   92.38%   +0.01%
==========================================
  Files         535      535
  Lines       15464    15478      +14
  Branches     4255     4257       +2
==========================================
+ Hits        14285    14300      +15
- Misses       1095     1096       +1
+ Partials       84       82       -2

Impacted Files
Coverage Δ

src/autosuggest/options-list.tsx
97.36% <97.36%> (ø)

src/autosuggest/internal.tsx
93.45% <100.00%> (-0.61%)
:arrow_down:

src/link/internal.tsx
94.91% <0.00%> (+1.47%)
:arrow_up:

src/autosuggest/virtual-list.tsx
90.90% <0.00%> (+3.03%)
:arrow_up:

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


Problem using external dependency ng2-table

Hi,
I have been trying to add modules to the project and none of them works.
I tried with ng2-table (which is famous since angular1) and angular2-data-table.
My project.config.ts have this:
let additionalPackages: ExtendPackages[] = [];

    additionalPackages.push({
      name: 'ng2-table/ng2-table',
      path: `${this.APP_BASE}node_modules/ng2-table/ng2-table.js`,
      packageMeta: {
        main: 'ng2-table.js',
        defaultExtension: 'js'
      }
    });

    this.addPackagesBundles(additionalPackages);

And I import it from app.module.ts
import { Ng2TableModule } from 'ng2-table/ng2-table';

Any ideas?

Use:
    this.addPackageBundles({
      name: 'ng2-table',
      path: 'node_modules/ng2-table/bundles/ng2-table.js'
    });

...and import with:
import * as table from 'ng2-table/ng2-table';

console.log(table);

For support requests you can use gitter or take a look at project's the wiki page in order to get more complete idea on how the it works.

No, same result I was having before:
'ng-table' is not a known element when using it inside a component. Ng Table is a module

This is not a seed issue but a misuse of the Angular's API. Take a look at NgModules and ng2-table's docs.


Health state of container is reported as "healthy" when hosts reports healthState as "unhealthy" and "Initializing".

Rancher server - v1.6.10
Steps that lead to the problem:
Had a setup where healthcheck instances were all reported as "healthy" to begin with.
Made few changes that would result in cross host communication to be broken in the setup.
Even with cross host communication broken in the setup ,  healthcheck instances continue to report  healthState as "healthy" .
"healthcheckStates": [ 2 items
{
"hostId": "1h1",
"healthState": "unhealthy"
},
{
"hostId": "1h3",
"healthState": "initializing"
}

mysql> select * from service_event where instance_id=83;
+-----+------+------------+--------------+--------------------------------------+-------------+---------+---------------------+---------+-------------+------+---------+-----------------------------------------------------------------------------+-------------+-------------------------+-----------------+--------------------+
| id  | name | account_id | kind         | uuid                                 | description | state   | created             | removed | remove_time | data | host_id | healthcheck_uuid                                                            | instance_id | healthcheck_instance_id | reported_health | external_timestamp |
+-----+------+------------+--------------+--------------------------------------+-------------+---------+---------------------+---------+-------------+------+---------+-----------------------------------------------------------------------------+-------------+-------------------------+-----------------+--------------------+
| 233 | NULL |          5 | serviceEvent | fff2b558-b57f-4a12-b3d4-66dba93f8cde | NULL        | created | 2017-10-09 21:57:18 | NULL    | NULL        | {}   |       3 | d10e3f97-a29b-4aaa-b05d-e8dbf615ecaa_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | DOWN            |<PHONE_NUMBER> |
| 237 | NULL |          5 | serviceEvent | 1412c1df-fc5a-446a-9a15-cca0f4b3ae0b | NULL        | created | 2017-10-09 21:57:33 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | DOWN            |<PHONE_NUMBER> |
| 242 | NULL |          5 | serviceEvent | be73c5ba-4c3f-45fa-8981-eb9637448cd1 | NULL        | created | 2017-10-09 21:57:51 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | DOWN 1/2        |<PHONE_NUMBER> |
| 247 | NULL |          5 | serviceEvent | ad05fe06-b3e9-4335-9403-d4863e7760bd | NULL        | created | 2017-10-09 21:57:53 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | INIT            |<PHONE_NUMBER> |
| 252 | NULL |          5 | serviceEvent | 5b951664-7231-45ff-b858-1bbb31f47898 | NULL        | created | 2017-10-09 21:57:55 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | UP              |<PHONE_NUMBER> |
| 255 | NULL |          5 | serviceEvent | f1c71244-0fb4-4321-bcde-caa732f93769 | NULL        | created | 2017-10-09 21:59:23 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | DOWN            |<PHONE_NUMBER> |
| 262 | NULL |          5 | serviceEvent | a80942a0-a4da-482b-a6c0-e9f45c5fa68c | NULL        | created | 2017-10-09 21:59:33 | NULL    | NULL        | {}   |       1 | 5130aed0-ca7a-4a51-967d-28ac774a9e6b_1d8412f7-cb94-4b8e-a86b-61a8a8e6496c_1 |          83 |                      28 | DOWN            |<PHONE_NUMBER> |
+-----+------+------------+--------------+--------------------------------------+-------------+---------+---------------------+---------+-------------+------+---------+-----------------------------------------------------------------------------+-------------+-------------------------+-----------------+--------------------+
7 rows in set (0.00 sec)

Tested with Rancher server - v1.6.11-rc5
Health check instance in host h1 is in "healthy" state , whose health is monitored by h2 and h3.
Break network connection between h1 and h2 and  h1 and h3.
This results in Health check instance getting recreated with both hosts reporting state in "Initializing" state.
Restore connection between h1 and h3.
This results in Health check instance getting  to healthy state with hosts reporting states as "Initializing" and "healthy".
Drop connection between h1 and h3.
This results in Health check instance getting  to unhealthy state as expected with hosts reporting states as "Initializing and "unhealthy".
Instance gets recreated as expected.


Standalone - fix service_net_map_override

The service_net_map_replace was set to internal, for internal_api.
This should be either be not set or "internal_api". The current result is that services meant for internal_api fall back to ctlplane [1].
Also, the dns_domain should be 'internal_api'.repalace('_', '-') - i.e internal-api.example.com
[1] https://opendev.org/openstack/tripleo-heat-templates/src/branch/stable/wallaby/overcloud-resource-registry-puppet.j2.yaml#L426
Depends-On: https://review.rdoproject.org/r/c/rdo-jobs/+/53204

Just for clarity - the service_net_map_replace should use one of the default network names names.
For example if we want to rename: internal_api -> internal:
set service_net_map_replace: internal_api,  name_lower: internal and name: Internal.
- name: Internal
  mtu: 1500
  vip: true
  vlan: 20
  name_lower: internal
  dns_domain: internal.mydomain.tld.
  service_net_map_replace: internal_api
  subnets:
    internal_api_subnet:
      ip_subnet: '<IP_ADDRESS>/24'
      allocation_pools: [{'start': '<IP_ADDRESS>', 'end': '<IP_ADDRESS>'}]

recheck

/retest

recheck

Now that https://github.com/openstack-k8s-operators/data-plane-adoption/pull/382 landed, i'll remove the dependency on https://github.com/openstack-k8s-operators/data-plane-adoption/pull/346 and try a recheck.

recheck

There is a chicken-and-egg issue with the CI job, it tries to talk to MariaDB on the previously used ctlplane IP but it's not listening there anymore.

It should be merged alongside with https://review.rdoproject.org/r/c/rdo-jobs/+/53204

/approve

recheck


Update highcharts to 5.0.2

highcharts 5.0.2 fixed lots of bugs

What's the point of having updated highcharts in the lib?
Why not just update it in your project?
Are you still using bundled version?

Hi Kirill
Just to be clear as to how this works:
Is the only way to use the unbundled version of react-highcharts, to set highcharts as a global variable?

Hi Kirill
Just to be clear as to how this works:
Is the only way to use the unbundled version of react-highcharts, to set highcharts as a global variable?

@elmoro666 It supports AMD, you could also use webpack, or AMD.

Thanks Kirill. I use webpack. I just haven't been able to make it work properly. For example, if I have react-highcharts at version 11.0.0 (which is bundled with highcharts 5.0.2), and I have installed highcharts version 4.2.4 and I write:
import Highcharts from "highcharts";
import ReactHighcharts from "react-highcharts";
Then I end up with both version 4.4.2 and 5.0.2 in my bundle file. I have seen somewhere that you must set
global.highcharts... to make it work, that's what I meant.

Interesting, that's not how that is supposed to work.
Are you sure bundled version of RH is not required anywhere else in the code?

Yes I just removed all entry points except on in my webpack file, and built it. Still two versions of highcharts in there. If you want to I can make an example for you

Please do

Here is an example. I dont' have a lot of experience creating repos for others, so let me know if it is not understandable.
https://github.com/elmoro666/HichartExample

Hi Kirill
How to get the charts svg ?
I have do like this but doesn't work  the chart can not find the getSVG() function
import ReactHighcharts  from "react-highcharts";
import React, {Component, PropTypes} from "react";
export class newMarketCharts extends Component {
    constructor(props) {
    super(props);
    this.state = {
        "windowsWidth": 500
    };
}
componentDidMount() {
    let svgs = this.refs.chart.getSVG();  //can not access getSVG() method

}
render() {
       <ReactHighcharts config={config} ref="chart"  />
    }
}

@szj123456
According to the docs you need the exporting module:
http://api.highcharts.com/highcharts/Chart.getSVG

Thanks @elmoro666, I'll take a look later this week

Hi @kirjs, have you had a chance to look at this issue?

Hey, @elmoro666 I took a quick look, and don't understand how the both versions gets in.
See if you can require ReactHighcharts.js file directly?
Sorry for being slow to respond, I'm travelling ATM

Ok , you don't have to look into this anymore. I have found another solution. thanks.

@elmoro666 can you close this then?

Hi Jakehp. It's not my thread. I just hijacked it :)

doh @ShinyChang can you close this?


start_user_socket not streaming

Hi,
When i call start_user_socket , i get the connection key from the Binance , so it's working
But the start_user_socket function not streaming data on callback function when an Order is created or removed.

please use another lib for streaming => oliver-zehentleitner/unicorn-binance-websocket-api


Version 2 ?

In the doc, it says version 2.0. referring to angular version or plugin version ?

Plugin, this lib never supported ng1


Consider: add multiplatform build instructions to ./readme.md

Bubbletea is a nice toolkit for building tuis. One major point in Go's favour in this domain is that its built executables contain the language run-time: ie, can be run on any machine without installing language dependencies.
BUT, Bubbletea's documentation doesn't provide much in the way of smooth onramps to this feature. Devs building small side projects which might be of interest to other persons don't have time/energy/expertise to reproduce, for example, the contents of your own release script. Instead, these devs commonly provide the installation instruction go install github/somedev/someproject, which is intelligible only to go devs and not the broadest possible community of end users for these tui applications.
Suggestion: include in the readme a brief section with minimal instructions for either:

a script which outputs executables for each major OS
a github action which produces similar on version tags

Overall goal is to make it very easy for hobby devs to replace their go install ... installation instruction line with pointers like somedev/someproject/releases/latest, and a brief description of what users of each environment should look for.
edit: this section would fit nicely between the existing headings Debugging and Libraries we use with Bubble Tea. It could be called Building & Releasing or some such.

Hi @NiloCK do you have an example of what this might look like? I'm not sure I understand the suggestion


use from_utf8_lossy to avoid server error on invalid text data

When viewing a page that contains invalid UTF-8, I get the following error in the log file:
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Utf8Error { valid_up_to: 3077, error_len: Some(1) }', src/main.rs:417:69

My fix replaces invalid data with the �, see documentation here: https://doc.rust-lang.org/std/string/struct.String.html#method.from_utf8_lossy

nice catch. It would be great if u could add a unittest for that :)

nice catch. It would be great if u could add a unittest for that :)

I updated the pull request with a test case. Not too familiar with Rust yet, not sure if it's possible to create the string without unsafe.

I updated the pull request with a test case. Not too familiar with Rust yet, not sure if it's possible to create the string without unsafe.


Exception: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE

Hello,
I'm getting the following error when saving and uploading a file to a vsftpd server configured with TLS:
FTPSync [default] > Authentication failed [Exception: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:550)]
FTPSync > Exception in user code:
------------------------------------------------------------
Traceback (most recent call last):
  File "FTPSync in /Users/helderfcs/Library/Application Support/Sublime Text 3/Installed Packages/FTPSync.sublime-package", line 972, in makeConnection
  File "ftpsyncwrapper in /Users/helderfcs/Library/Application Support/Sublime Text 3/Installed Packages/FTPSync.sublime-package", line 337, in authenticate
  File "ftpsyncwrapper in /Users/helderfcs/Library/Application Support/Sublime Text 3/Installed Packages/FTPSync.sublime-package", line 290, in retryingCommand
  File "ftpsyncwrapper in /Users/helderfcs/Library/Application Support/Sublime Text 3/Installed Packages/FTPSync.sublime-package", line 284, in call
  File "lib3.ftplib in /Users/helderfcs/Library/Application Support/Sublime Text 3/Installed Packages/FTPSync.sublime-package", line 727, in auth
  File "./ssl.py", line 625, in wrap_socket
  File "./ssl.py", line 345, in __init__
  File "./ssl.py", line 341, in __init__
  File "./ssl.py", line 548, in do_handshake
ssl.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:550)
Any idea why this is happening ?
Thank you

I'm having the same problem.

Same for me :p

The same problem here


Introduce CachedLayer and CachedLayerTypes

The current default for existing_layer_strategy will recreate a layer on every subsequent build. Effectively that means that if cached: true but existing_layer_strategy is not set, then the layer is not cached. This is documented in #371.
This PR introduces a CachedLayer trait that implements Layer such that the user MUST define existing_layer_strategy.
Sidenote: Is it possible to assert some code doesn't compile? It would be good to encode this desire into the framework so someone doesn't accidentally provide a default implementation in the future, for example.
Fixes #371

We also talked about the possibility of other traits:

// Cachable: Require existing_layer_strategy is defined
// Updateable (must be cachable, provably): Require update is defined
// MetadataMigratable (must be cachable, provably): Require migrate_incompatible_metadata

Closing because this is a stale PR. Feel free to re-open at any time if this is still relevant at this point in time.


RSS comparison for reduced critical section

Our shorter critical section during will perform better than the longer upstream version when the hashtable is small since it will not iterate through hashtable collisions with the mmContainer lock held. Performance gains with a shorter critical section tend to dissapate as hashtable size increases since the longer upstream version will be iterating through less collision entries (and therefore the critical section is not as long with higher hashtable power).
The purpose of this experiment is to examine the tradeoff of using shorter critical section with smaller hashtables against the upstream longer critical section with a larger hashtable. In our experiement we limit the total RSS of cachebench to 16GB (including cache size and hashtable overhead).
Configs

Config 1 use (upstream) - set cache size to 8GB and htBucketPower to 30
Config 2 use (upstream) - set cache size to 15.75GB and htBucketPower to 25
Config 3 use (critical section patch) - set cache size to 8GB and htBucketPower to 30
Config 4 use (critical section patch) - set cache size to 15.75GB and htBucketPower to 25

Use graph_cache_leader_fbobj and graph_cache_follower_fbobj workloads with default parameters other than the above. Therefore there will be 8 experiments in total: 2 workloads * 4 different configs.
Upstream: https://github.com/facebook/CacheLib/tree/main, commit https://github.com/pmem/CacheLib/commit/ba170d0e10af6f912c0992d8b66ecb7e2c830b8b
Critical section patch with lock combining and reinsert (single acquire) https://github.com/igchor/CacheLib-1/tree/optimize_mmcontainer_locking_combine_reinsert

After some benchmarks/tests which I run on my own, I'm not entirely sure that the https://github.com/igchor/CacheLib-1/tree/optimize_mmcontainer_locking_combine_reinsert is implemented correctly.
Could we run this experiment for this branch first: https://github.com/igchor/CacheLib-1/tree/optimize_mmcontainer_locking? This is the branch from PR to facebook/CacheLib


Why can't useSelector exist outside of a function?

New Features
What is the new or updated feature that you are suggesting?
Why can't useSelector exist outside of a function?
import React from 'react'
import { useSelector } from 'react-redux'

+ const counter = useSelector(state => state.counter)
export const CounterComponent = () => {
- const counter = useSelector(state => state.counter)
  return <div>{counter}</div>
}

Why should this feature be included?
There is no explanation for this in the document
Updating the state will result in the state not working

What docs changes are needed to explain this?
Indicate scope

This is not specific to useSelector from react-redux, this is true for any React hook. Take a look at the react guide on Hooks and API reference.


What is the proposed way to test a try block?

REQUIRE_NOTHROW is a great way to work with exceptions but what if I want to test a larger block where there may be several calls that throw, e.g.
try
{
// Make a lot of things here
}
catch(...)
{
FAIL("an exception was thrown");
}

bool exception = false;
try{
    //...
}catch(...){
    exception = true;
}
REQUIRE(exception == false);

I use
REQUIRE_NOTHROW([&]()
{
	// your code
}());

REQUIRE_NOTHROW is a great way to work with exceptions but what if I want to test a larger block where there may be several calls that throw

Why would you want to hide which of those calls threw? I mean, wouldn't it be better to REQUIRE_NOTHROW each of them, so that when something fails, you know where the trouble is, instead of just "somewhere in this block"?

@lightmare What if you want to test declarations? They aren't expressions.

@milleniumbug How about SECTION?

Hi all
thanks for the answers, my main motivation for this are throwing constructors of classes without default constructors and then using these to make other objects/calls etc.

@milleniumbug good idea if using C++11

@milleniumbug You need to wrap the anonymous function in parentheses, otherwise it will suffer the same problem with commas as a plain block:
REQUIRE_NOTHROW(
{
    // if there is a comma outside parentheses, it won't even pass preprocessing
    std::pair<int, int> nono;
});

REQUIRE_NOTHROW(([&]
{
    std::pair<int, int> ok;
})());

@dpservis You can do that with sections:
SECTION("foo and bar with some input")
{
    ThrowingFoo foo("input");
    ThrowingBar bar(foo, "more input");
    REQUIRE(bar.isValid());
    REQUIRE_NOTHROW(bar.doStuff());
    // etc.
}

If a constructor throws, it terminates the section and you get exactly as much information as you'd get from REQUIRE_NOTHROW with a block, i.e. only line number of the start of the section/block and exception.what();

@milleniumbug great!

Although the lambda suggestion works (assuming C++11 on) I don't think it adds much value in this case.
Any uncaught exceptions that escape the test case are reported as failures anyway. The advantage of using REQUIRE_NOTHROW explicitly is that (a) you better document your intent that this really should be a non-throwing operation and (b) you get file/ line information that pinpoints the responsible call. Once you use a multiline lambda with many potentially throwing sites you start to lose those advantages (increasingly so the larger the block).
So I would recommend either use REQUIRE_NOTHROW on each line that you want to be specific about - or just relax and let Catch, well,... catch, your exceptions outside the test case.
Either way I'm going to close this issue now as I think it's been resolved in one of several ways.


Standard Load Balancer some internet connectivity

I hace noticed that whit the Standard Load Balancer outbound internet traffic is prohibited by default. Still there is access to some internet URL like the azure storage ones and bing.com.
Why are those connections still opened? If this is a security feature, why bing.com connectivity? Are there more URL opened?
I miss some point in the documentation stating this as otherwise it creates a false sense of security.

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

ID: a96406ce-2ffc-cdb3-1234-5154ccd5cc76
Version Independent ID: f840a092-e1bf-16e2-1916-4270cdfbbcdd
Content: Outbound connections in Azure
Content Source: articles/load-balancer/load-balancer-outbound-connections.md
Service: load-balancer
GitHub Login: @KumudD
Microsoft Alias: kumud

@guillemsola I am able to reproduce this behavior, let me research this further and I will get back to you with more information.

Thanks all for getting into this, I had a discussion in this msdn thread as I wanted to understand why certain things where happening
https://social.msdn.microsoft.com/Forums/en-US/WAVirtualMachinesVirtualNetwork/thread/d8b79d69-37c3-4694-86f7-9ee650e3a52c/
I just did a deploy changing the LB from basic to standard and noticed that I was not able to configure with the DSC script anymore as I was relying in some external resources. From the MSDN thread we get the conclusion that outbound connectivity was somehow limited compared to the basic LB.
My point is that I still don't see 100% clear this scenario and that if this is the case maybe documentation could state a bit better this scenario.
thanks

@guillemsola This behavior is expected in some rare situations, and the documentation will be updated to reflect this in the future. If you have any concerns about what your VM can access, use NSGs to allow or restrict access to your VMs.

@guillemsola We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Incorrect Handling of Invalid Slave Address Requests

I have generated a NoC using FlooNoC and encountered an issue during testing. When an AXI Master driver sends a request to a slave address that is not defined in the Slave Address Map (SAM), the NoC consistently forwards the request to a specific slave.
While the DECODE error assertion is correctly shown on the terminal, the response returned to the master has RESP = 0, because it is coming from a slave driver rather than being handled as an invalid address case.
Shouldn't the NoC handle such requests by not forwarding them to any slave and instead directly sending a response back to the master with RESP = 3 (DECERR), as per the AXI4 protocol?
P.S. In the floo_route_comp module, the en_default_idx_i and default_idx_i signals of addr_decode module are set to 0.

Yes, this would be the better way to handle it indeed. https://github.com/pulp-platform/FlooNoC/pull/79 addresses this problem by inserting AXI error slaves in the network interfaces. But that PR is not yet ready to be merged.

Okay thanks.


Adding YAML feature

Nice. I think I'll pull this in, but not make it the default.

I'm going to come back to this after I merge blendid with master.


Delete - Invoke-AzOpsPush fails on "-- " in any description field in deleted content

Describe the bug
This is with AzOps 1.9.4 but the code in question looks the same in current 'main'. See https://github.com/Azure/AzOps/blob/02fc254590b6fce207c4dfafd4c9678a755720cd/src/functions/Invoke-AzOpsPush.ps1#L218
In case an arbitrary/descriptive property happens to contain "-- " this will break some logic in Invoke-AzOps. Typical properties would be DisplayName or Description.
Steps to reproduce

Create a policy definition via Azure portal
Include the text " -- TESTING" in Description or DisplayName
Run AzOps Pull to create a Pull Request
Validate will hopefully succeed as is normal
Delete the policy definition via portal
Run AzOps Pull to create a Pull Request
Validate will fail on deleted content containing "-- "

The log output is not very clear - but thankfully the source code is available here :-)
Screenshots

Thank you for reporting, I am able to reproduce the issue when trying to delete a resource with '--' in the displayName/description.
As a side note, if I may ask, is there a particular reason why you are running validate after pull? Since it is coming from the platform, there shouldn't be a need to do any validation? We changed the default behavior of this in https://github.com/Azure/AzOps-Accelerator/pull/132, so might be worth taking a look at as well.

Thanks @daltondhcp - I had completely missed that change so thanks for sharing. We do use a similar condition for push already!


'check_pid' may return incorrect pid if pid is reused

pid can be reused by other process, 'check_pid' would return incorrect pid. File lock may be a better method to check other 'skynet' process existence.

File lock is already used in write_pid , it can prevent multiple skynet daemons with the same pidfile.
If other process use the same pid in pidfile, you can remove pidfile first, and pidfile would be removed when skynet exits normally.

ok, thanks, I'll check it why it does not exit normally.


Error processing

At this point, I caught the error associated with throttling. The error message is not obvious, it seems to me that we should return err.message
https://github.com/qlaffont/fortnite-api/blob/c5a063733dbacaa49c86c26113cafc68f86ed2fe/index.js#L134

Can you tell me how do you have throttling, i will try to reproduce the error.

send many, many requests with the wrong token

{ StatusCodeError: 429 - {"errorCode":"errors.com.epicgames.common.throttled","errorMessage":"Operation access is limited by throttling policy, please try again in 221 second(s).","messageVars":["221"],"numericErrorCode":1041,"originatingService":"com.epicgames.account.public","intent":"prod"}


add support for OData imports

This will add support to use an OData Metadata document to create a collection for your OData endpoint. If you want to test it with a real service there is for example the Microsoft graph endpoint:
https://graph.microsoft.com/v1.0/$metadata
Is there some way for me to also extend the UI?
It would be cool if the UI is a mix of the CURL import and one of the others.
So you can copy-paste the metadata text or you can search for a file.
Maybe also a third option for an URL would be nice.

This is really cool, thanks for making a pull request. Unfortunately the UI is closed source at the moment. That said, I will add this into Nightingale soon (since the converter code is pretty modular, so adding new converters is straightforward). I also hear you on the URL integration. Can you create a github issue in the nightingale repo to track that request? and then I can take a look at it after first integrating this into the import dialog.
When I get around to test integrating this into the UI, what file types should the import dialog accept for this? .txt?

@dpaulino okay I will write a issue for that.
Because thee Metadata document is xml I think the best is .xml,  but I'm not sure. The odata standard didn't have a specification for that usecase, I think 🤔
Normally you just use the URL.
I think we should start with .xml and see what the users say.

@dpaulino any updates?

Thanks for the ping! Sorry it's been a hectic last few months.

Odata imports coming to the next Nightingale update :)


Increase UT for cli.admin.ceremoy.ceremony

Is your feature request related to a problem? Please describe.
Increase UT for cli.admin.ceremoy.ceremony ~100%
Describe the solution you'd like
Increase UT for cli.admin.ceremoy.ceremony ~100%
Describe alternatives you've considered
No response
Additional context
No response

We have good coverage in test_ceremony.py and it won't bring a lot of value adding unit tests covering the same stuff.
Closing for now, if there are arguments against it please leave a message.