Jupyter notebook get blank after editing it in a pipeline

Describe the bug
When using orchest in an EC2 instance, sometimes the jupyter notebook suddenly gets blank, and I lose hours of work.
Expected behavior
I expected that the notebooks would keep their information properly.
To Reproduce

create a pipeline
configure the environment
create the jupyter notebooks for the pipeline
close the connection and try again later
edit the notebook and save it

Environment

Linux OS in EC2 instances on AWS

Hi @rodrigoacastro, I am sorry to hear that.
Does the issue you have experienced sound similar to #503?

Hello,
To be honest, I am not sure. When it happened, I was sure that the notebook saved the changes, but the next time I opened the notebook I had lost my code. I thought that it was supposed to save every minute or so, but it didn't happen.
Sometimes I had a backup offline or simply worked offline and updated the notebook online at the last moment, which was the strategy I resorted to after a few missing codes.

The workflow you describe is indeed not the ideal workflow and you should be able to use the integrated JupyterLab without hiccups.
Did you install Orchest yourself on the EC2 instance in AWS? And is the Orchest userdir backed by a root device volume or are you mounting an EBS volume to the instance to store the data? I don't think it is related but would be good information to have so we can at least conclude that there are no issues with the deployment.
Thanks again for bringing the issue to our attention.

Indeed, I have installed Orchest on the EBS of an EC2 instance on AWS on the root disk which comes with the instance. I even tried to scale the machine because it was reaching the limit of the CPU very quickly, so I small machine wouldn't work well. The scaling did not solve this problem, though.

Thanks for the info. We have been using t2.large instances for our Orchest deployments which work great depending on the workloads you are running.
I will look into this issue and see whether there is anything we can do :+1:

I do not remember seeing this dialogue, to be honest, but it could be an interval of days indeed. It has been a while since I used it.
But I didn't know the default autosave period was 120 seconds and that it could be changed. Usually, I used to (try to) save the notebook and come back later just to find out that the notebook was empty, totally blank.

We used a docker composer with all the dockers in the same machine.

Could you elaborate on this? Did you write a custom Docker Compose to run Orchest or did you add parts of Orchest to the compose file together with other applications?
Orchest doesn't change any of your Notebook files (except when running pipelines that have Notebooks assigned to steps), so if they were once written to disk then Orchest won't change them. I am wondering whether other applications from the Docker Compose get the same files mounted and change permissions causing the page to appear blank in the JupyterLab editor.
I will verify what happens to files in JupyterLab if their permissions were changed outside of JupyterLab.

I believe this might be related to https://github.com/jupyterlab/jupyterlab/issues/11662, and in turn, to the other weird behaviours we are observing at #503.


Don't check for deactivate to detect a virtualenv

Pipenv in fancy shell mode uses pew workon to activate the virtualenv which doesn't use the activate script, meaning the deactivate function is not defined and Spaceship fails to detect the virtualenv.

As I remember that when you active virtualenv but then run exec zsh, the virtualenv still shows but actually is deactivated. I am the one who added deactivate command checking. Can someone plz double check?

actually the virtualenv still loaded but command deactivate doesn't exist anymore


Put "Partner Login" link in footer and/or header

This is how CBOs/TIs will log in. When they click it, take them to a Partner Login page where they can enter their credentials.
See how MI Bridges advertises the Partner Login link via https://newmibridges.michigan.gov/s/isd-partnershiplanding?language=en_US

TIs can log in with the regular login page.  They'll be automatically recognized as TIs.


Initial work for supporting ValidatingAdmissionPolicy

Updated PR adding initial support for evaluating ValidatingAdmissionPolicy configurations

Superseded by #69, which includes significant UI changes


detect bad double bond stereo in conformer generation

The conformer generation code will happily generate double bonds with either incorrect stereochemistry or a linear arrangement of the atoms. This has come up in multiple issues. Some examples include #5913 and #5283
This PR fixes that by adding two checks:

Non-linearity: for the double bond a0/a1=a2/a3 make sure that atoms 0,1,2 are not linear and that atoms 1,2,3 are not linear
Correct stereochemistry: make sure the double bond stereo isn't cis when it should be trans and vice versa

One note: these checks are only run if useChirality=True. We might think about also using the non-linearity checks whenever the K terms are enabled.
Since this adds a new test for confgen, it needs to interact with the changes in #5960:
It this is merged before #5960 then #5960 should be updated.
If #5960 is merged first, then this should be updated.

@sriniker : another one for your feedback. This one detects bad double-bond stereochemistry in the conformers

@sriniker thanks for the reviews on that set of conformer generator PRs!


Running dso.run will create a log folder but does not store or load the results csv files

NOTE: The ipynb file that I have my code in, is called HelloWorld.ipynb and this ipynb file is located under the "/home/myusername" directory. Inside the ipynb file, I did "%cd ./deep-symbolic-optimization" which made my working directory that the code operates in "/home/myusername/deep-symbolic-optimization".
So the "!pip install -e ./dso" command was able to find a dso folder because the working directory that the code operates in was "/home/myusername/deep-symbolic-optimization" and because the "deep-symbolic-optimization" folder contains a dso folder.
Main question below:
I typed in the command "!python3 -m dso.run ./BasicExampleOfRegressionConfigFile.json" in my Jupyter Notebook ipynb file and I ran it. This command did create a log folder in the same directory as my current working directory was, but the log folder did not contain any files or folders (the log folder was completely empty).
For your reference, this command ends up printing the following under the cell block in my Jupyter Notebook:
"
== EXPERIMENT SETUP START ===========
Task type            : regression
Dataset              : ./d_lv1BETTER.csv
Starting seed        : 0
Runs                 : 1
== EXPERIMENT SETUP END =============
== TRAINING SEED 0 START ============
-- BUILDING PRIOR START -------------
WARNING: Skipping invalid 'RelationalConstraint' with arguments {'targets': [], 'effectors': [], 'relationship': None}. Reason: Prior disabled.
WARNING: Skipping invalid 'RepeatConstraint' with arguments {'tokens': 'const', 'min_': None, 'max_': 3}. Reason: Uses Tokens not in the Library.
WARNING: Skipping invalid 'ConstConstraint' with arguments {}. Reason: Uses Tokens not in the Library.
WARNING: Skipping invalid 'DomainRangeConstraint' with arguments {}. Reason: Prior disabled.
WARNING: Skipping invalid 'LanguageModelPrior' with arguments {'weight': None}. Reason: Prior disabled.
WARNING: Skipping invalid 'MultiDiscreteConstraint' with arguments {'dense': False, 'ordered': False}. Reason: Prior disabled.
LengthConstraint: Sequences have minimum length 4.
Sequences have maximum length 64.
RelationalConstraint: [exp] cannot be a child of [log].
InverseUnaryConstraint: RelationalConstraint: [log] cannot be a child of [exp].
TrigConstraint: [sin, cos] cannot be a descendant of [sin, cos].
NoInputsConstraint: Sequences contain at least one input variable Token.
UniformArityPrior: Activated.
SoftLengthPrior: No description available.
RepeatConstraint: [poly] cannot occur more than 1 times.
RelationalConstraint: [poly] cannot be a descendant of [cos, sin].
-- BUILDING PRIOR END ---------------
-- RUNNING ITERATIONS START -------------
[00:00:00:02.29] Training iteration 1, current best R: 0.8948
** New best
Reward: 0.8947857213226728
Count Off-policy: 0
Count On-policy: 1
Originally on Policy: True
Invalid: False
Traversal: add,exp,x3,sub,1.00125-2.64657*x3-0.605621*x2+1.49652e-06*x1+1.22169*x3**2-1.13702*x2*x3-0.319182*x2**2-0.00400568*x1*x3-0.00327487*x1*x2-1.4799e-06*x1**2-0.86704*x3**3+0.230496*x2*x3**2+0.102194*x2**2*x3+0.0157843*x2**3+0.000407518*x1*x3**2+0.00898762*x1*x2*x3+0.00199591*x1*x2**2+8.14836e-06*x1**2*x3+1.42456e-06*x1**2*x2,mul,sub,x1,x1,exp,sub,x2,exp,sin,x2
Expression:
               2                   2                  2                   2
  1.42456e-6⋅x₁ ⋅x₂ + 8.14836e-6⋅x₁ ⋅x₃ - 1.4799e-6⋅x₁  + 0.00199591⋅x₁⋅x₂  + 0.

                                                          2
  00898762⋅x₁⋅x₂⋅x₃ - 0.00327487⋅x₁⋅x₂ + 0.000407518⋅x₁⋅x₃  - 0.00400568⋅x₁⋅x₃ +

                               3              2                 2
   1.49652e-6⋅x₁ + 0.0157843⋅x₂  + 0.102194⋅x₂ ⋅x₃ - 0.319182⋅x₂  + 0.230496⋅x₂⋅

    2                                           3             2
  x₃  - 1.13702⋅x₂⋅x₃ - 0.605621⋅x₂ - 0.86704⋅x₃  + 1.22169⋅x₃  - 2.64657⋅x₃ + ℯ

  x₃
     + 1.00125

-- RUNNING ITERATIONS START -------------
-- RUNNING ITERATIONS START -------------
-- RUNNING ITERATIONS START -------------
-- RUNNING ITERATIONS START -------------
[00:00:00:00.40] Training iteration 5, current best R: 1.0000
** New best
Reward: 0.9999999976483622
Count Off-policy: 0
Count On-policy: 1
Originally on Policy: True
Invalid: False
Traversal: div,-1.5*x3+0.5*x2+0.5*x3**2+1.5*x2*x3-0.5*x2**2-0.5*x2*x3**2,sub,mul,x2,x3,x3
Expression:
          2            2                              2
  - 0.5⋅x₂  - 0.5⋅x₂⋅x₃  + 1.5⋅x₂⋅x₃ + 0.5⋅x₂ + 0.5⋅x₃  - 1.5⋅x₃
  ──────────────────────────────────────────────────────────────
                            x₂⋅x₃ - x₃

[00:00:00:00.43] Early stopping criteria met; breaking early.
Saving Hall of Fame to ./log/.d_lv1BETTER_2023-06-16-185510/dso._d_lv1BETTER_0_hof.csv
Saving Pareto Front to ./log/.d_lv1BETTER_2023-06-16-185510/dso._d_lv1BETTER_0_pf.csv
Invalid expressions: 4169 of 5000 (83.4%).
Error type counts:
true_divide: 978 (23.5%)
log: 2505 (60.1%)
exp: 683 (16.4%)
multiply: 3 (0.1%)
Error node counts:
invalid: 1684 (40.4%)
divide: 1799 (43.2%)
overflow: 646 (15.5%)
underflow: 40 (1.0%)
== TRAINING SEED 0 END ==============
INFO: Completed run 1 of 1 in 8 s
== POST-PROCESS START =================
-- LOADING LOGS START ----------------
Successfully loaded summary data
Successfully loaded Hall of Fame data
Successfully loaded Pareto Front data
-- LOADING LOGS END ------------------
-- ANALYZING LOG START --------------
Task_____________regression
Source path______./log/.d_lv1BETTER_2023-06-16-185510
Runs_____________1
Max Samples/run__2000000
Success_rate_____1.0
Hall of Fame (Top 5 of 100)___
0: S=000 R=1.000000 <-- (-0.5x2**2 - 0.5x2x3**2 + 1.5x2x3 + 0.5x2 + 0.5x3**2 - 1.5x3)/(x2x3 - x3)
1: S=000 R=0.894786 <-- 1.42456e-6x12x2 + 8.14836e-6x12x3 - 1.4799e-6x12 + 0.00199591x1x22 + 0.00898762x1x2x3 - 0.00327487x1x2 + 0.000407518x1x3**2 - 0.00400568x1x3 + 1.49652e-6x1 + 0.0157843x2**3 + 0.102194x22x3 - 0.319182x22 + 0.230496x2x32 - 1.13702x2x3 - 0.605621x2 - 0.86704x33 + 1.22169x3**2 - 2.64657x3 + exp(x3) + 1.00125
2: S=000 R=0.888423 <-- -9.43977e-6x1**2x2 - 2.38065e-5x1**2x3 + 3.69106e-6x1**2 - 0.000312859x1x2**2 - 0.00654212x1x2x3 + 0.00987218x1x2 - 0.00246847x1x32 + 0.0153959x1x3 - 0.000995742x1 - 0.00191899x23 - 0.0437459x2**2x3 - 0.0255437x2**2 - 0.480404x2x3**2 + 2.51962x2x3 - 3.60197x2 - 0.43249x3**3 + 2.77857x32 - 5.80736x3 + sin(x3) + cos(x2) + 1.04708
3: S=000 R=0.872060 <-- (9.48347e-5x12x2 + 9.74389e-5x12x3 - 1.07346e-5x12 - 0.0101637x1x22 - 0.0369205x1x2x3 - 0.515662x1x2 - 0.502299x1*x32 + 1.4711x1x3 + 0.00173305x1 - 0.0638882x23 - 0.826748*x22x3 + 3.49093x22 - 0.246445x2x32 + 3.35957x2x3 + 2.784x2 - 0.663574x33 + 3.25044*x32 - 2.2956x3 + 5.34059)/(-x3(-x1 - x3 + log(sin(1))) + exp(exp(sin(x2))))
4: S=000 R=0.825266 <-- (-5.01322e-5x1**2x2 - 1.35739e-5x1**2x3 - 7.28942e-6x1**2 + 0.000234641x1x2**2 - 0.00243223x1x2x3 + 0.0198567x1x2 - 0.000188668x1x32 + 0.00577324x1x3 + 0.00102435x1 + 0.00576275x23 + 0.0763305x2**2x3 - 0.298609x2**2 - 0.0874824x2x3**2 + 0.648787x2x3 - 2.60374x2 - 0.240229x3**3 + 1.2891x32 - 3.42536*x3 + 3.65288)cos(1)
Saving Hall of Fame plot to ./log/.d_lv1BETTER_2023-06-16-185510/dso.d_lv1BETTER_plot_hof.png
Pareto Front (3 of 3)___
0: S=000 R=1.000000 C=13.00 <-- (-0.5x22 - 0.5x2x32 + 1.5x2x3 + 0.5x2 + 0.5x32 - 1.5x3)/(x2x3 - x3)
1: S=000 R=0.464384 C=6.00 <-- 1
2: S=000 R=0.323619 C=5.00 <-- 0
Saving Pareto Front plot to ./log/.d_lv1BETTER_2023-06-16-185510/dso._d_lv1BETTER_plot_pf.png
-- ANALYZING LOG END ----------------
== POST-PROCESS END ===================
"
Do I need to specify the logdir parameter, either in the config file or in the command that I used to run dso.run?

What are the contents of BasicExampleOfRegressionConfigFile.json?
Yes, it’s generally a good idea to specify the log path in your config.
Does it work as expected with the same config when running outside a notebook? I don’t run from notebooks, at least not using DSO’s CLI.

Thanks for responding to me.
Sorry that I took long to respond.
Something that confuses me is that the output printed by running the command "python3 -m dso.run ./BasicExampleOfRegressionConfigFile.json" implies that the computer was able to generate files under the log folder (for example, the "Saving Hall of Fame plot to ./log/.d_lv1BETTER_2023-06-16-185510/dso.d_lv1BETTER_plot_hof.png" output that was printed by that command), but for some reason the log folder is empty.
And what's more, is that running the command "python3 -m dso.run ./BasicExampleOfRegressionConfigFile.json" does create a log folder (I know this because I have deleted the log folder beforehand, and then ran that command, and that command creates a empty log folder), but that log folder is always empty (for me at least).
Question: Perhaps there is another parameter, besides logdir, that I need to specify that will tell the DSO.run program to actually save the files rather than not saving the files (Perhaps this parameter is called something like "do-save-files")? Or a parameter that will to know where it should save the files (Perhaps this parameter is called something like "dir-to-save-files-in")?
Question (continued): Or perhaps there is some path that the code takes where the code will break and exit itself before it ever actually saves and puts the file (for example, the d_lv1BETTER_2023-06-16-185510/dso.d_lv1BETTER_plot_hof.png file) under the log folder.

Where do you run your Python code from? VS Code? I guess I could open VS Code and make a .py (not ipynb) Python file, and then run that python file using the VS Code interface while VS Code is open.

Or perhaps, a simpler option would be to use the terminal directly to run the command "python3 -m dso.run ./BasicExampleOfRegressionConfigFile.json".

The contents of BasicExampleOfRegressionConfigFile.json are:
{
"task" : {
"task_type" : "regression",
"dataset" : "./d_lv1BETTER.csv",
"function_set" : ["add", "sub", "mul", "div", "sin", "cos", "exp", "log", "poly"]
}
}
Where and how would I specify the log path?
Like the below? From my understanding, the below would
{
"task" : {
"task_type" : "regression",
"dataset" : "./d_lv1BETTER.csv",
"logdir": "../log"
"function_set" : ["add", "sub", "mul", "div", "sin", "cos", "exp", "log", "poly"]
}
}

Hey Brenden Petersen,
This command "!python3 -m dso.run ./dso/dso/config/config_regression.json --b Nguyen-7" was able to generate files under the log folder.
Specifically, for me that command immediately generated a log folder, and then under that log folder, it generated a "Nguyen-7_2023-06-19-213754" folder, and then under that folder, it generated a empty "checkpoint" folder, a "dso_Nguyen-7_0.csv" file, and a "config.json" file.
Then it took 11 more minutes after that command had supposedly stopped running and suddenly my computer generated 2 more csv files and 2 png files and one "summary.csv" file. According to my Jupyter notebook ipynb file, the "!python3 -m dso.run ./dso/dso/config/config_regression.json --b Nguyen-7" command that I ran within the ipynb file took only maybe 20 seconds to run. However, 11 minutes after the "!python3 -m dso.run ./dso/dso/config/config_regression.json --b Nguyen-7" had finished executing, the "summary.csv" file and 2 more csv files and 2 png files were generated.
Question: Is this expected behavior?
In addition, I am confused on where in the generated files should I look to find the final equation that the program found to describe the dataset. Question: Am I just supposed to look at "summary.csv" to see the equation that the program found?
Also, the summary.csv file shows that the command found the following expression: "log(x1 + (x1**3*(x1 + 1) + x1)/x1)". And the "success" column in summary.csv is True.
This matches the Nguyen-7 dataset (whose true equation is "log(x + 1) + log(x^2 + 1)", so it is obvious that the program ended up using the Nguyen-7 dataset.
However, the config_regression.json file that I used as the configuration file, had a "task"->"dataset" argument of "Nguyen-1", which to me suggests that the program should use the Nguyen-1 dataset.
Question: Do you think because the command I ran included the arguments "--b Nguyen-7", that that was why the program used the Nguyen-7 dataset, instead of the Nguyen-1 dataset?
However, that found expression  "log(x1 + (x1**3*(x1 + 1) + x1)/x1)" is not the same or close to the true expression for the Nguyen-1 dataset. Why do you think this happened, when your DSO paper said that your program was able to find 100% find the true equation that actually describes the Nguyen-1 dataset?
I attached the generated files to this post ("dso_Nguyen-7_0.csv" file, the "config.json" file , the "summary.csv" file and the two other csv files and the two png files). I think the "summary.csv" file would be the most important to look at.
summary.csv

config.txt
NOTE that The program generated a config.json file, not a config.txt, but Github does not let me upload a json file, so I changed the file format to txt.
dso_Nguyen-7_0_pf.csv
dso_Nguyen-7_0_hof.csv
dso_Nguyen-7_0.csv

Question: Perhaps there is another parameter, besides logdir, that I need to specify that will tell the DSO.run program to actually save the files rather than not saving the files (Perhaps this parameter is called something like "do-save-files")?

There are additional parameters to control whether or not something should be saved, but they are turned on by default. And from your follow-up it looks like these are working properly as you are generating output json, csv, and png files.

Question (continued): Or perhaps there is some path that the code takes where the code will break and exit itself before it ever actually saves and puts the file (for example, the d_lv1BETTER_2023-06-16-185510/dso.d_lv1BETTER_plot_hof.png file) under the log folder.

No. I think it's a Python notebook quirk. (See next answer.)

Question: Is this expected behavior?

No. I can't really speak to behavior in a Python notebook (e.g. files showing up a few minutes later). I would suggest running straight from the terminal/shell, not from a notebook.

Where and how would I specify the log path?

In your config, like this:
{
   "experiment" : {
      "logdir" : "./log", // here
   },
   "other stuff" : { ... }
}

Question: Am I just supposed to look at "summary.csv" to see the equation that the program found?

Yes, looks like you found it.
In your attached summary.csv, it looks like everything worked and it found the correct expression.

However, the config_regression.json file that I used as the configuration file, had a "task"->"dataset" argument of "Nguyen-1", which to me suggests that the program should use the Nguyen-1 dataset.

By adding the --b flag in command-line, you overwrote the "Nguyen-1" benchmark to be "Nguyen-7". This is just a convenience option since it's common to use the same config but change the benchmark. If you look at the generated config.json (the one you attached as config.txt), you will see that it correctly lists "Nguyen-7" as the task name.

Question: Do you think because the command I ran included the arguments "--b Nguyen-7", that that was why the program used the Nguyen-7 dataset, instead of the Nguyen-1 dataset?

Yes, see previous answer.

Or perhaps, a simpler option would be to use the terminal directly to run the command "python3 -m dso.run ./BasicExampleOfRegressionConfigFile.json".

Yes, this is what I was suggesting.

Thank you for your very fast response.
It's greatly appreciated.

I have a dataset called "d_lv1BETTER.csv" (one of the Strogatz datasets), but using this config file (BasicExampleOfRegressionConfigFile.json, but I attached it on this post as a TXT file), it's taking a long time for the command to finish its running.
What are some parameters that you suggest to change (decrease or increase) in order to reduce the runtime from perhaps 30 minutes-ish to maybe 5 to 10 minutes?
Perhaps I could decrease "n_samples" (the total number of samples to generate) from 2000000 to 2000?
I do not really know what particular parameter in particular is causing my command to take so long, and I thought you would know.
Is there any more documentation about what each particular parameter does? When I looked at the README, it did not go over every single parameter, for example when it comes to the "training" key, the README only explained the meaning of "n_samples" and "epsilon", but the README did not explain what the other parameters of the "training" key mean.
Also, this d_lv1BETTER.csv dataset file is formatted correctly, right? It should be numbers, rather than strings, right?
Which column in the csv dataset file is supposed to correspond to the dependent variable y? The first column, or the last column?
Attached below are my dataset file (I want the command on this particular dataset file to finish finding a equation within 10 minutes or less) and my current config file (which is the EXACT same as your given "deep-symbolic-optimization/dso/dso/config/config_regression.json" file, except for the dataset path argument)
d_lv1BETTER.csv
BasicExampleOfRegressionConfigFile.txt

The example configs like config_common.json and config_regression.json should describe the parameters.
DSO runtime is roughly linear in n_samples, so I'd adjust that (over threshold) to your desired runtime if runtime is an issue.


Update Lab to use docker 1.9 Features

Docker 1.9 comes with networks and volumes support. We should update the lab to replace links to use networks

It needs to be done before DevConf as https://github.com/redhat-developer/docker-java/blob/devconf2016/chapters/docker-container-linking.adoc is not working anymore.


MCS-477 Read scripted object states from scene configuration files and return them in step output object metadata

Depends on https://github.com/NextCenturyCorporation/MCS/pull/213
Read scripted object-specific states from the scene configuration files at each step and return a state_list in the ObjectMetadata.
Lets us show when a gravity support pole is "active" or "inactive", and is flexible in case we need to give new states to objects in future tasks.

@ThomasSchellenbergNextCentury Your code looks fine, but I think since I squashed and merged my branch that this was relying on, the commit history and diff is weird. I cherry picked your commit and opened another PR here: https://github.com/NextCenturyCorporation/MCS/pull/223


Link doesnt work

the link doesnt work when it sends me to the page

yeah im not getting the link either

same


Tiny cleanup for Navigator code (without introducing dependency)

Close https://github.com/flutter/flutter/issues/125724

The navigator.dart has ~10 repeats of things like:
    final _RouteEntry? currentRouteEntry = _navigator!._history.cast<_RouteEntry?>().lastWhere(
      (_RouteEntry? e) => e != null && _RouteEntry.isPresentPredicate(e),
      orElse: () => null,
    );

while it can be greatly simplified as:
    final _RouteEntry? currentRouteEntry = _navigator!._history.lastWhereOrNull(_RouteEntry.isPresentPredicate);

Thus, it seems that we can beautify the code a little bit.

Same as https://github.com/flutter/flutter/pull/125099, but without external dependency
For more detailed explanation why it does not introduce external dependency: https://github.com/flutter/flutter/pull/125099#discussion_r1174230502
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[ ] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making, or this PR is test-exempt.
[ ] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Hey @fzyzcjy is there an issue this is resolving? Can you update the description of the PR with an explanation of what this change is doing?

@Piinks Hi, it is solving the same issue as https://github.com/flutter/flutter/pull/125099 mentions. The former issue was closed because hixie thought that the external dependency should not be introduced, hence this PR.

it is solving the same issue as https://github.com/flutter/flutter/pull/125099 mentions.

Can you update the PR description to link to the issue and explain the fix? Having to backtrack through other PRs and issues is difficult to follow. :)

test-exempt: refactor (in case the test is removed)

@Piinks Done

@chunhtai done


Glowing shard does not damage the Bulwarks Ambry when played with Gesture of the Drowned

Describe the bug
During the Bulwark's ambry fight (riskOfRelics:BulwarksAmbry) a character with the Gesture of the Drowed relic (riskOfRelics:Gesture) cannot damage the ambry with the Glowing Shard card (riskOfRelics:GlowingShard). The relic will attempt to play the card and do no damage, immediately moving it to the discard pile.
To Reproduce
Steps to reproduce the behavior:
Preferably setup a deck capable of defeating the first of the Bulwark's summons. I grabbed two Dropkicks and a thunderwave foran easy infinite.
Run these commands in the dev console
relic add riskOfRelics:Gesture
fight riskOfRelics:BulwarksAmbry
Defeat the first set of sentries and try to play the glowing shard card.
Expected behavior
Gesture automatically plays the glowing shard card and does damage to the Ambry
Additional context
Version Info:

Java version (1.8.0_144)
Slay the Spire (12-18-2022)
ModTheSpire (3.30.3)
Mod list:
basemod (5.52.3)
stslib (2.10.1)
RiskOfRelics (2.2.6)

fixed, I'll push out an update soon


Local JSBin Server Can't Find Resource Files

I am trying to install JSBin on a local server, which is also running Apache. But when running no resource (.js, .css) files are found, resulting in:

I updated my JSBin config to point to my server:
"url": {
  "host": "myhost.com",
  "prefix": "/",
  ...
}

My Apache setup isn't anything complicated (perhaps it should be?):
<VirtualHost *:80>
  ProxyPass /jsbin http://localhost:5000
  ProxyPassReverse /jsbin http://localhost:5000
</VirtualHost>

Running jsbin off the command line I do see requests coming in when I access http://myhost.com/jsbin, and I'm obviously pulling the HTML; just not the .js or .css files.
Can anyone help me track down what I'm missing in my configuration?

I'm not sure I fixed this in the way I should, as it doesn't sync with the docs, but it does seem to work after some tinkering.


When I exit the application (Windows) I get an application crash

Anaconda installed.
Windows  11
File, close or top right "x", the application crashes.

Hello Trent,
I am testing different conditions to try to recreate this. I have a hunch that the error's presence is involved with the memory size of generated plots. Do you remember the number of image generations or the approximate run time of the session when this occurs?
Best,
Evan


Refactor and improve hybrid data are handling

A good example for this is the reported issue on addRememberMe functionality. At the moment it is built into UserStoreManager. But underlying data is stored in UM_HYBRID_REMEMBER_ME  table. This has been already reported #5181.
Ideally, our architecture needs to be refactored and improved to separate hybrid data handling from current implementation.
Label suggestions - Complexity : High , Priority : Medium , Type : Improvement

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


HTTPS on macOS does not work running from the default ASP.NET Core Web App (MVC) template

Is this a Bug or Feature request?:
Bug, HTTPS should work under development also on macOS.
Steps to reproduce (preferably a link to a GitHub repo with a repro project):
Run the following project on macOS: https://github.com/Sankra/HttpsMacOSFails
Description of the problem:

Downloaded the newest Visual Studio for Mac (7.5.4 Build 3) on macOS 10.13.6.
Created a new web app using the default template ASP.NET Core Web App (MVC) on .NET Core 2.1.
Tried to run the app, both using dotnet run and the debug command in VS for Mac. Requests over HTTPS to https://localhost:5001 fails with the stack trace below.

Regular http works.
Version of Microsoft.AspNetCore.Mvc or Microsoft.AspNetCore.App or Microsoft.AspNetCore.All:
Microsoft.AspNetCore.App 2.1.1
Stack Trace
Hosting environment: Development
Content root path: /Users/sankra/projects/HttpsMacOSFails/HttpsMacOSFails
Now listening on: https://localhost:5001
Application started. Press Ctrl+C to shut down.
Loaded '/usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/System.Threading.ThreadPool.dll'. Module was built without symbols.
Loaded '/usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/System.Net.Security.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
Loaded '/usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/System.Diagnostics.StackTrace.dll'. Module was built without symbols.
Loaded '/usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/System.Reflection.Metadata.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
dbug: HttpsConnectionAdapter[1]
Failed to authenticate HTTPS connection.
System.IO.IOException: Authentication failed because the remote party has closed the transport stream.
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
HttpsConnectionAdapter:Debug: Failed to authenticate HTTPS connection.
System.IO.IOException: Authentication failed because the remote party has closed the transport stream.
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
dbug: HttpsConnectionAdapter[1]
Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Internal error
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
HttpsConnectionAdapter:Debug: Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Internal error
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
Loaded '/usr/local/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/Microsoft.Win32.Primitives.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
dbug: HttpsConnectionAdapter[1]
Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Internal error
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
HttpsConnectionAdapter:Debug: Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Internal error
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
dbug: HttpsConnectionAdapter[1]
Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Cipher Suite negotiation failure
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)
HttpsConnectionAdapter:Debug: Failed to authenticate HTTPS connection.
System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception. ---> Interop+AppleCrypto+SslException: Cipher Suite negotiation failure
--- End of inner exception stack trace ---
at System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest)
--- End of stack trace from previous location where exception was thrown ---
at System.Net.Security.SslState.ThrowIfExceptional()
at System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result)
at System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult)
at System.Net.Security.SslStream.<>c.b__51_1(IAsyncResult iar)
at System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requiresSynchronization)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.AspNetCore.Server.Kestrel.Https.Internal.HttpsConnectionAdapter.InnerOnConnectionAsync(ConnectionAdapterContext context)

Thanks for contacting us, @Sankra.
@Tratcher, can you please look into this? Thanks!

What was the error in the browser? These errors in the server are expected if the client does not trust the server's certificate and aborts the connection. See https://blogs.msdn.microsoft.com/webdev/2018/02/27/asp-net-core-2-1-https-improvements/ for trust.

Interesting. I just noticed that last error "Cipher Suite negotiation failure".
I found another report of this error at https://developercommunity.visualstudio.com/content/problem/297841/kestrel-failed-to-authenticate-https-connection-on.html
@davidsh have you seen this with SslStream on Mac?

@davidsh have you seen this with SslStream on Mac?

No, I haven't seen this.

This issue was moved to dotnet/corefx#31749


featcoEasyPrivateUint::new(...) throws when called in public

A user got confused when he tried to initialize EasyPrivateUint from public. This PR adds a check which throws understandable error when trying to do so.

#5581  👈
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @benesjan and the rest of your teammates on  Graphite

Benchmark results
Metrics with a significant change:

tx_sequencer_processing_time_ms (2): 444 (-18%)
note_trial_decrypting_time_in_ms (8): 74.8 (+94%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit d531b259 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
64 txs

l1_rollup_calldata_size_in_bytes
676
676
676

l1_rollup_calldata_gas
6,412
6,412
6,424

l1_rollup_execution_gas
585,745
585,745
585,757

l2_block_processing_time_in_ms
1,308 (-5%)
4,797 (+1%)
9,266 (-2%)

note_successful_decrypting_time_in_ms
273 (+15%)
631
1,035 (+1%)

note_trial_decrypting_time_in_ms
:warning: 74.8 (+94%)
40.3 (-3%)
37.8 (-3%)

l2_block_building_time_in_ms
12,102 (+1%)
43,757 (+1%)
86,348 (+1%)

l2_block_rollup_simulation_time_in_ms
7,239 (+2%)
24,719 (+1%)
47,626 (+1%)

l2_block_public_tx_process_time_in_ms
4,822
18,911
38,483 (+2%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
14,392
25,963 (-7%)

note_history_successful_decrypting_time_in_ms
1,284 (-1%)
2,381 (-3%)

note_history_trial_decrypting_time_in_ms
107 (-16%)
99.0 (-7%)

node_database_size_in_bytes
18,624,592
35,000,400

pxe_database_size_in_bytes
29,859
59,414

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
181 (+1%)
44,377
26,164

private-kernel-ordering
163 (+1%)
50,830
39,325

base-parity
4,190 (-1%)
128
311

root-parity
1,195 (+8%)
1,244
311

base-rollup
14,467
116,608
861

root-rollup
50.8 (+2%)
4,359
725

private-kernel-inner
220 (+1%)
71,744
26,164

public-kernel-app-logic
120 (+1%)
47,695
40,661

public-kernel-tail
164
53,372
13,269

merge-rollup
10.4 (+2%)
2,568
861

public-kernel-teardown
120 (+2%)
47,695
40,661

public-kernel-setup
119 (+1%)
47,695
40,661

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
512 leaves
1024 leaves
2048 leaves
4096 leaves
32 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.1 (+1%)
16.2 (+1%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.6
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.588 (+1%)
0.500 (+1%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
46.2
73.1 (+1%)
233 (+1%)
449 (+1%)
887 (+2%)
1,745
N/A

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
96.0
159
543
1,055
2,079
4,127
N/A

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.473
0.449 (+1%)
0.423 (+1%)
0.419 (+1%)
0.419 (+1%)
0.416
N/A

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
54.6 (+1%)
108 (+1%)
341 (+1%)
665 (+1%)
1,330 (+2%)
2,644 (+1%)
N/A

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
105
207
691
1,363
2,707
5,395
N/A

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.481 (+1%)
0.485 (+1%)
0.459
0.458 (+1%)
0.458 (+1%)
0.457
N/A

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
61.8 (+1%)

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
109

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
0.538 (+1%)

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
40,548
501,142

Transaction size based on fee payment method

Metric
native fee payment method
fpc_public fee payment method
fpc_private fee payment method

tx_with_fee_size_in_bytes
905
1,161
1,377

Transaction processing duration by data writes.

Metric
0 new note hashes
1 new note hashes
2 new note hashes

tx_pxe_processing_time_ms
1,727 (+1%)
1,092 (+1%)
5,467 (+1%)

Metric
1 public data writes
2 public data writes
3 public data writes
4 public data writes
5 public data writes
8 public data writes

tx_sequencer_processing_time_ms
581 (+1%)
:warning: 444 (-18%)
1,091 (+1%)
536 (+2%)
1,792 (+2%)
598 (+1%)

Wouldn't this cause all contracts that have an EasyPrivateUint somewhere in their storage to fail...

@spalladino confirmed this with Grego and you are absolutely right. The CI did not catch this because we don't have a contract Which would use the EasyPrivateUint and have some public function defined. I did as you proposed in https://github.com/AztecProtocol/aztec-packages/pull/5581/commits/dc9dd2992ff1d47ad8864b10e4e018d39b1aa1e2


wrong fs type, bad option, bad superblock on /dev/sdb, missing codepage or '  'helper program, or other error.

Sometimes mount fails with "wrong fs type, bad option, bad superblock on /dev/sdb, missing codepage or '
'helper program, or other error.", this is not a fatal error and the nomad job continues to deploy without issue.
When mount fails, csi plugin must crash to signal nomad the job setup has failed.

I fixed this.


Incorrect select when using  in Multiple  Selection dropdown

In dropdown page States part, when using the loading function, when i select one option and click the blank place, then two result will be selected

I know I've left what might seem like opposing views on this in different threads. But I'm fairly certain now, even with forceSelection: true, this should never happen for multiselect.
I'm going to go ahead and remove this behavior in next.

https://github.com/Semantic-Org/Semantic-UI/commit/5f393f6c33a5365b927eba415bebc6071f871541 Added in 2.1.8


Import header component in layout folder or view folder ?

In my project, my header component will receive props from other components, also in some there are header, in some page not, I think I should have two different layout, one have header, the other not, but when I put header component in layout , I can`t find a perfect way to transmit props to header, how should I do ? I need your help ! thank you !

Hey, can you please take this to the Gitter chat? I'm sure many people there would love to help!
Thank you!


Documentation request: Improve option descriptions.

I'm converting an app from using cordova-plugin-file to using the Capacitor API. This plugin is a big help here (and should be a part of the official plugin IMHO), but I wonder if i am doing it right.
I am not sure I understand the point of the fallback: option.
What I think it does is the following:

The default is true, so by default all errors will cause fall back to trying Filesystem.writeFile() instead.
If fallback: is defined to be a function, that function is expected to take an error, and return a boolean, which i turn decides whether it should fall backs to Filesystem.writeFile() afterwards.
If fallback: is set to false or the set function returns false, the promise will reject with the error.
Filesystem.writeFile() fallback failing will result in the promise rejecting with an error.

Is this correct?
Also, how does the fallback to Filesystem.writeFile() work?

That is correct. The reason there is a fallback option is that sometimes the BlobWriter server is inexplicably not running or not contactable.
When running the fallback, the blob is sliced into chunks, each of which is Base64 encoded and appended to an empty file. This helps avoid exhausting available memory if the file is large. You can read the source here.
I apologise for the poor documentation.

I have made a PR with a quick adaption of my description integrated in the README.
BTW, can't you make it kickstart the server instead before uploading, when it's detected that it is not running?

@beruic Thanks. I haven't tried a "kickstart" approach because I do not yet fully understand why the server is sometimes down. My guess is it has something to do with the app transitioning to a background state, in which case a kickstart would not successfully start the server. Can you provide any insights?

@diachedelic Sorry no. I only have an abstract view of this. Not much practical Android or iOS experience :)
As far as I know any plugin can send text messages through the usual Capacitor API. If the server can be started this way, I guess you could both keep it dormant until needed, and try to start it before resolving to fallback.


Fix SBT Plugin documentation

@slandelle should this close #2816 (again) ?

Is there still a point in having gatling-it?

I think there is: you may want to split short lived simulations ("unit" tests) and long-lived ones (load tests) so having the ability to have separate folders seems useful IMHO

LGTM, thanks!


Timeouts

This makes a lot of changes and I'm sure I probably messed up somewhere, but the tests that fail on my machine are due to me not having required executables as opposed to code changes that I made (as far as I can tell)
This is the PR proposed in https://github.com/RsaCtfTool/RsaCtfTool/issues/339 and attempts to clean up all of the unnecessary timeout calls as a result of the proposed change

Hi, please make smaller PRs for faster reviewing.
I'm seeing that you removed all the timeouts and I would like to keep them.

Please lift the lint_python check warnings.


Suggestion - Add option to randomize themes

Here's a suggestion: Add an option to change your theme every so often automatically, or every time Powercord starts (change to a random one or in order of the list)
Or something like that

This plugin has been archived, it should continue to work in the future because Powercord is not updating v2 internals anymore.


test: VerifiedReg actor and test for AddVerifiedClient and GetClaims

:link: zboto Link

You are still missing

get_claims
remove_expired_allocations
extend_claim_terms
remove_expired_claims

You don't need to have the proper serialized params or exit code 0. I will fix them after.

I am afraid this is going to be difficult to merge now. We should prefer rebasing when doing PR instead of merging.

lets close this in order to open a new one which would include the latest changes.


etcdadm: fix version by setting proper ldflags

Issue #, if available:
Description of changes:
We werent passing the expected ldflags to the build so the version subcommand would return nonsense.  This adds the flags using our common version.sh which roughly matches upstream kube projects.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm
/approve


Training freezes after adding new training examples.

Rasa NLU version: 0.11.3
Scikit-Learn : 0.20.0
Operating system (windows, osx, ...): Amazon Linux (EC2)   m5d.4xlarge
16vCPU    64G Memory
Content of model configuration file:
{
"pipeline": "spacy_sklearn",
"path" : "./models",
"data" : "./data/train.json",
"spacy_model_name" : "en_core_web_lg"
}

Issue: Training freezes after adding a few new training examples.
Training :
- intent examples: 70155 (126 distinct intents)
- entity examples: 42188 (12 distinct entities)
INFO:rasa_nlu.model:Starting to train component nlp_spacy
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component tokenizer_spacy
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component intent_featurizer_spacy
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component intent_entity_featurizer_regex
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component ner_crf
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component ner_synonyms
INFO:rasa_nlu.model:Finished training component.
INFO:rasa_nlu.model:Starting to train component intent_classifier_sklearn
Fitting 3 folds for each of 6 candidates, totalling 18 fits
[Parallel(n_jobs=16)]: Using backend LokyBackend with 16 concurrent workers.
[Parallel(n_jobs=16)]: Done   6 out of  18 | elapsed: 38.3min remaining: 76.6min
Everything works fine until the last line above, then CPU utilization drops gradually until it reaches a low level and then training process freezes and will not finish.

At time 21:17 is about when the last line showed up "Done 6 out of 18", then CPU utilization started to drop.
The training used to take about 2 hours to finish, now when it freezes the training will never end. Adding only 6 new rows of training examples, there are nothing special about the content.
I thought it could be caused by using sklearn.svm.SVC in the Gridsearch process
So I changed the code in sklearn_intent_classifier to use LinearSVC.
Now the training can be finished in 7 minutes, but I got warnings:
ConvergenceWarning: Liblinear failed to converge, increase the number of iterations.
"the number of iterations.", ConvergenceWarning)
What could be a good number of iterations to use if I want to roughly replicate the performance of my old model?

Thanks for raising this issue, @EPedrotti  will get back to you about it soon.

Hi @EPedrotti,
Then do you think there is a solution to solve the never ending training problem without change SVC to LinearSVC? Since we have been using the SVC one for a long time.

@Dylan0126 maybe this can be of some help for the never ending training https://datascience.stackexchange.com/questions/989/svm-using-scikit-learn-runs-endlessly-and-never-completes-execution. If you are using LinearSVC remember to normalize you data (see link).
Also, since you have a large dataset you could also try to use the tensorflow_embedding pipeline and see how it performs.

@Dylan0126 if you have more usage question about Rasa you could also have a look at our forum https://forum.rasa.com/


Refactor examples to support subfolder execution

To keep things more tidy, each example is moved under its core function
, for example rekor or cosign. A mapping is then made within
Cargo.toml.
This will make the folders more easily browsable for users and will allow
multiple file support. We can then use different file names beyond just
main.rs
[[example]]
name = "foo"
path = "examples/cosign/verify/foo.rs"

cargo run --example foo

[[example]]
name = "bar"
path = "examples/cosign/verify/bar.rs"

cargo run --example bar

Signed-off-by: Luke Hinds<EMAIL_ADDRESS>
Summary

Release Note

Documentation

https://github.com/sigstore/sigstore-rs/pull/112 will address CI failure


Disable HARDWRAPS markdown extension

The HARDWRAPS extension is intended to be used like GitHub Flavored Markdown (GFM). GFM only uses hard wraps in comments, whereas the markdown rendered by GitBlit is generally documents not comments.

This disables wraps for everything. Maybe we need two methods instead of reversing the behavior for all uses.

@gitblit: ah, good point.
I'm happy to extend this, what things are you thinking need to not change? My only intention was to change documentation type markdown rendering, but I'm not completely familiar with Gitblit, so I'm not sure what areas allow for comments and would need to stay the same.

I think the change here may be small - if we put it in the right place.  Like GH, GB allows for Markdown in Ticket comments.  Assuming your assertion about line wraps is correct - and I have to admit I've noticed some line-ending inconsistencies so I'm sure you are right - the MarkdownUtils.transformGFM() entry-point needs to preserve hardwraps.  This method which is used to Tickets eventually calls MarkdownUtils.transformMarkdown(String, LinkRenderer), the one you proposed changing.
I'm flexible on an exact solution here.... new method, new arguments, whatever.


new manage-page-order.p6 script

These are think should be done:

Move the p6 script be moved to the util/ directory
Add the new makefile target should be added to PHONY.
Fix .gitignore to ignore these newly generated files

Should be considered:

do this as part of the build process (on master, htmlify.p6) - (in coke/build branch, I'm working on moving things out of htmlify and using sake, happy to do that there without moving things around on master first)
Don't generate files under the docs/ folder. we already have a confusion under html of generated vs. checked in files.  Generated artifacts might want to go elsewhere.

Is htmlify.p6 to be moved to /util also?

My proposal (and I’m working on a PR for it) is to:

rename “doc/“ to “doc-src/“
copy or generate a transformed copy of ALL FILES in “doc-src/“ to matching dirs in “build/“
point “pod2bigpage” and “htmlify.p6” to “build/“ for the build

We can leave the “html/“ dir alone for now.

I had two very specific items to address here (just added a third).
There's a lot of scope creep in the comments here, but since we've opened the can of worms: my thoughts (again, this is bigger than I am proposing for just this ticket, which was just in regards to the things that were just added to the repo):

leave doc/ alone - I'm not sure what the rename here was intended to address
I'm working to move most of htmlify.p6 into a separate (hopefully more parallelizable build using sake). We could move it, but it's not part of this ask.
what's to transform? it's not a one to one for file in doc to built file.
have html/ just contain the built site, not a combination of checked in content and generated files.
ok to have a build/ step that contains intermediate generated files. I'm wondering if we even need these generated files, but that's beyond the scope of my ask here.
Do we even need to have these files generated? why can't we do the sort order in the htmlify logic itself?

But anything aside from those 3 comments should be done in another ticket.

Keeping doc name is not a problem, but using htmlify.p6 to provide the sort is IMHO a problem (by file name?, title?, change the order easily?). That’s why I came up with the control file: make it a bit easier for a human to choose or modify the sort order.
The pod2bigpage exec looks at only one source dir so all files to be sourced need to be in one dir, hence my choice of copying direct or transforming the pod6 source files to the intermediate dir build.

El mié., 18 jul. 2018 a las 23:44, Tom Browder<EMAIL_ADDRESS>escribió:

Keeping doc name is not a problem, but using htmlify.p6 to provide the
sort is IMHO a problem (by file name?, title?, change the order easily?).
That’s why I came up with the control file: make it a bit easier for a
human to choose or modify the sort order.
The pod2bigpage exec looks at only one source dir so all files to be
sourced need to be in one dir, hence my choice of copying direct or
transforming the pod6 source files to the intermediate dir build.

Maybe we could change that one... If you open an issue there, I could try
to have a look at it.

I think that changing pod2bigpage now would be a mistake. It looks like it relies on its single source dir to define the final page layout. And htmlify also relies on the directory structure.
A final solution, as has been mentioned elsewhere, is probably a dynamic one, but one baby step at a time in the interim.

Is this ripe for closing?

Ping? :speaker:


dzen2 disappearing seconds after booting and pressing keys

Hi,
This is my xmonad.hs whch calls dzen2 two times: https://pastebin.com/BDdbT0ZY
The right Bar works, the left Bar disappears after some seconds after login and if pressing keys for window layouts in xmonad. With the -p -e parameters, it does not vanish but does not show any content after all. I have no clue where the problem might be. OS is OpenBSD, xmonad 0.11.1, dzen2 0.9.5

I know this behaviour when child-window has too many rows to be displayed on the screen. But, I am not familiar with Xmonad and what it is doing with dzen2.

I presume it was a faulty xmonad.hs so it works now with a different bar but it might work now with dzen2 too


Commands with TypeReaders and Preconditions

This is a suggestion which will include its own PR. I'll edit this post once the PR is posted for convenience.
It should also be noted that, should this be accepted, this will be a breaking change. The recommendation is based on the system provided by the Discord.NET API by RogueException, licensed under the MIT license.
Currently within the Sponge API, the command system is a little cumbersome and can be a bit of a learning curve for new developers, especially those coming over from Spigot. Fortunately, with a bit of time and effort, it's not that difficult to pick up.
One thing I've always disliked about the Sponge API is that, like our Spigot/Bukkit predecessor, argument parsing is left up to the plugin developer. This new system will not change that, though parsing for standard items will be built in much like we have now.
Parsing will be handled by a set of TypeReaders. These TypeReaders will perform, in advance, parsing of the command and casting into their appropriate types based on what the command calls for. Matching to a command will be done by its Group and Command annotations where Groups provide organization for your command structure and Commands represent Command Handlers.
TypeReaders for primitives and commonly used objects such as Players and Enums will be provided by this PR. However, custom TypeReaders can be created by the plugin developer for parsing additional items, such as region names or channels. This is done by building a class which inherits from TypeReader. These TypeReaders will return a TypeReaderResult containing the parsed value or a reason why parsing failed. This error message can be optionally returned to the player who issued the command.
Further flexibility and ease is given by the use of precondition attributes. These are defined as annotations and evaluate conditions before execution of the method itself. As an example, the @Permission("node") attribute evaluates whether the CommandSender has permission to run the command. Should this precondition fail, the command is not executed. This is a one-line approach to ensuring consistency throughout the command infrastructure.
These preconditions may also be placed on the command attributes to provide additional requirements or to tell the system how to handle incoming commands. For instance, the @Remainder attribute will take any and all command arguments past that point and combine them into a String or String[], depending on the application required by the plugin developer. This is convenient for things like collecting messages from the player, as demonstrated in the example below. This system will also combine quoted items, so input such as /nickname "Pizza Delivery Boy" will take the entire quoted string with spaces and treat it as a single object.
Below, I have included an example of a command class. This does not demonstrate the full capabilities of the system, but does allow for a high-level overview of some of the possibilities. Overall, this is designed to be flexible, extensible, and user-friendly with a high focus on removing duplicate code.
The command below would be accessible through /plugin mod ban Foxtrek64 1d griefing. The moderator alias allows mod to be replaced with moderator. Unless otherwise specified, these annotations are case-insensitive.
@Group("mod")
@Alias("moderator")
public class ModerationCommands implements ModuleBase
{
    ApplicationConfiguration applicationConfiguration;

    // Provide an overload for /plugin ,pd ban player
    @Command("ban")
    @Alias("permaban")
    @Permission("plugin.moderation.ban")
    public void BanUser(Player victim)
    {
        BanUser(player, Duration.Infinite, Context.User.Name + " banned " + player.Name);
    }

    // plugin mod ban user duration reason
    @Command("ban")
    @Alias("permaban")
    @Permission("plugin.moderation.ban")
    public void BanUser(Player victim, Duration duration, @Remainder String reason)
    {
        // Just dummy code to get the current config
        applicationConfiguration = Plugin.GetApplicationConfiguration();

        // Context is provided by the ModuleBase
        if (Context.User.Guid == victim.Guid)
        {
            // ReplyAsync lives in ModuleBase and provides a fast way to send a message to the command sender
            ReplyAsync("You cannot ban yourself.");
            return;
        }

        // No need to check if the victim is the console -
        // We already performed a TypeCast to Player
        // if (victim is Console)

        // dummy code to ban the user
        victim.Ban(duration, reason);
    }
}

If there is anything here that seems wrong (besides my placement of brackets - I'm a C# developer), please do let me know and I'll fix the example code if possible. A lot of this stuff, while easy in C#, is not so friendly in Java, so I'm only about 90% sure I'll be able to copy this over with any degree of success. The original code requires anonymous types and other tools which may not exist in Java, though I'll do my best to come up with a working system.
If you'd like to see the source for the C# version of this command system, take a look at the link provided at the top of the page. I'll be replicating that code as closely as possible.

Judging from your source example, what your after is an annotation-based command system.
One very similar to your example would be ACF, and there's an existing pr here for one.

I'll go ahead and close this issue then. Seems we already have something in the works.


Shardset support

Hi,
We've implemented a mosql setup at our company, and it would've worked great if it supported shardsets.
At the moment we're running a nightly job to migrate the whole DB over, but it sometimes fails. Our data is also growing at such a pace that we can't keep on doing this, so we'll have to stop using mosql until its got shardset support.
I know the readme explicitly states that it's not supported, but I'm creating the issue nonetheless so that we can keep an eye on it in case somebody picks it up.

+1 for this feature

I recently found these two posts which might be helpful:
https://www.mongodb.com/blog/post/tailing-mongodb-oplog-sharded-clusters
https://www.mongodb.com/blog/post/pitfalls-and-workarounds-for-tailing-the-oplog-on-a-mongodb-sharded-cluster
It has more details around the using the 'fromMigration' flag and details a general approach to follow.
I'm also interested in this feature, but not for sending data directly to Postgres. As I understand it, mosql uses mongoriver for tailling the oplog, so support for sharded collections could be built into mongoriver, no?

Any news on this? @hendrikswan

Sorry @davidssonarnor, but unfortunately in the end we ran an ETL on a timer. All our mongo collections were time stamped, so we moved new and updated records over based on queries.

@hendrikswan ok I understand did you use mosql or just roll out your own?


InvalidTemplateDeployment & CannotChangeDeploymentModel

Please provide us with the following information:

This issue is for a: (mark with an x)
- [x ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

I did azd auth login and filled all the env Variables I have already
AZURE_ENV_NAME="xxxxr"
AZURE_LOCATION="eastus2"
AZURE_OPENAI_CHATGPT_DEPLOYMENT="xxxxx"
AZURE_OPENAI_EMB_DEPLOYMENT="text-embedding-ada-002"
AZURE_OPENAI_SERVICE="332Model"
AZURE_RESOURCE_GROUP="xxxxxx"
AZURE_SEARCH_INDEX="xxx-index"
AZURE_SEARCH_SERVICE="xxxx332cog"
AZURE_SEARCH_SERVICE_LOCATION="eastus2"
AZURE_SEARCH_SERVICE_RESOURCE_GROUP="xxxxxx"
AZURE_STORAGE_ACCOUNT="xxxxx2"
AZURE_STORAGE_RESOURCE_GROUP="xxxxxx"
after this I did run azd up command and it did give me the following error :
ERROR: deployment failed: failing invoking action 'provision', error deploying infrastructure: deploying to subscription:
Deployment Error Details:
InvalidTemplateDeployment: The template deployment 'openai' is not valid according to the validation procedure. The tracking id is '6e6d52c4-f791-42a3-a3d5-2656e962f6ca'. See inner errors for details.
CannotChangeDeploymentModel: The model of deployment cannot be changed.
Any log messages given by the failure

ERROR: deployment failed: failing invoking action 'provision', error deploying infrastructure: deploying to subscription:
Deployment Error Details:
InvalidTemplateDeployment: The template deployment 'openai' is not valid according to the validation procedure. The tracking id is '6e6d52c4-f791-42a3-a3d5-2656e962f6ca'. See inner errors for details.
CannotChangeDeploymentModel: The model of deployment cannot be changed.
Expected/desired behavior

OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)
Windows 7

azd version?

run azd version and copy paste here.
1.5.0

Versions

Mention any other details that might be useful

Thanks! We'll be in touch soon.

Hm, are your existing deployments using an older model version? See https://github.com/Azure-Samples/azure-search-openai-demo/blob/0b8724ad761c1d93489ff254bc3a66ad3fceedf2/infra/main.bicep#L71 for what we set as the version.

no I just set it to the name of the deployment as it wasnt named chat in my existing resources. I am using GPT-4 32k model


Clicking the help icon in iOS App leads to 404 page

Describe the issue
Clicking on the help question mark opens the URL https://docs.getutm.app/remote/ which leads to a 404 page.

Configuration (required)

UTM Version: 4.5.3
OS Version: iOS 17.5.1
Device Model: iPhone 15 Pro Max
Is it jailbroken: No
How did you install UTM? App Store

Yeah I need to get to that...


NaN.lua missing

Hi,
I just reinstall this package and get this error message when I execute a lua script..
/home/XXX/torch/install/share/lua/5.1/trepl/init.lua:384: cannot open /home/XXX/torch/install/share/lua/5.1/dpnn/NaN.lua: No such file or directory
stack traceback:
[C]: in function 'error'
/home/XXX/torch/install/share/lua/5.1/trepl/init.lua:384: in function 'require'
XXX_cnn.lua:1: in main chunk
[C]: in function 'dofile'
...XXX/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
[C]: at 0x00406670
seems NaN.lua is missing.
best regards...nice package btw

@LAtanassov Sorry about that. Forgot to git add it. Fixed in latest commit.


/sys should be writeable

I have seen issues with unbinding a device from its driver and assigning it to another driver, because  sysfs is read-only. I am also not able to change any module parameters as well.
Gives this error:
bash: /sys/module/.............: Read-only file system
I need to explicitly do this:
mount -o remount,rw /sys
I think we should mount sysfs as read-write in our agent.

Yes, this makes sense. You should try to modify this line https://github.com/clearcontainers/agent/blob/master/agent.go#L1176
This should do the trick :)


Turning

I tried adding turning but nothing works idk if its even possible. i would love to add turning but i can't, any advice?

idk i am making GorillaTag2 With This Locomotion I Will Try And If I Succeed I Will Post How I Did It

idk i am making GorillaTag2 With This Locomotion I Will Try And If I Succeed I Will Post How I Did It

uh, no, you aren't allowed to make gorilla tag 2, this locomotion is being provided so people can try to use it to make their own thing, not to try to steal my work

idk i am making GorillaTag2 With This Locomotion I Will Try And If I Succeed I Will Post How I Did It

uh, no, you aren't allowed to make gorilla tag 2, this locomotion is being provided so people can try to use it to make their own thing, not to try to steal my work

Does this mean we can’t make gtag fan games?

idk i am making GorillaTag2 With This Locomotion I Will Try And If I Succeed I Will Post How I Did It

uh, no, you aren't allowed to make gorilla tag 2, this locomotion is being provided so people can try to use it to make their own thing, not to try to steal my work

Does this mean we can’t make gtag fan games?

Actually, you are allowed because the locomotion was made open source. It is just not permitted to make a whole new sequel that takes the name of Gorilla Tag away from the actual creators.

idk i am making GorillaTag2 With This Locomotion I Will Try And If I Succeed I Will Post How I Did It

uh, no, you aren't allowed to make gorilla tag 2, this locomotion is being provided so people can try to use it to make their own thing, not to try to steal my work

Does this mean we can’t make gtag fan games?

Actually, you are allowed because the locomotion was made open source. It is just not permitted to make a whole new sequel that takes the name of Gorilla Tag away from the actual creators.


Better typings for Promise.then(), like #31117

Fixes #30390

I'm concerned that these types would conflict with userland promise definitions. Also, the linked issue was closed by #45350, so I am closing this.


Support for new elasticsearch client for version 6

This bundle don't work with es6.
Starting from Elasticsearch 6.0, all REST requests that include a body must also provide the correct content-type for that body.
Would like to see support for elasticsearch client for version 6.

Hi @jbrenna thank you for your issue.
We will try to do something to fix this issue.
But do you think you can create a PR to fix this issue?

Sorry, I didn't have version 5.3.2 of Elasticsearch PHP, do to some misconfiguration in my composer.json. It's working with ES6 now. Thanks for quick response.


How to test c# application (unit/integration, mock, pre-recorded playback)

We're trying to mock (Moq) out the Kinect device, but have noticed that it's written in such a way to not allow this.  The end goal is to test that our application sets up the device correctly and processes an image capture correctly.
Is there any guidance on how to test a C# application that uses the Sensor SDK?
Cheers

Thanks for the feedback. I don't have much familiarity with Moq. Do you have a sample of something you can share where you were trying to mock and were having issues with?

I don't have a sample but we were looking to test configuration, and capturing a frame to convert to a depth point cloud.  Really any guidance on how to test with the Kinect not in the loop would be amazing.

@StummeJ , we are working on C# record and playback and hopefully it will help to resolve the issue.


Can't drag scrollbar

Can't click and drag on scrollbar.
Using Chrome 101.0.4951.54.

I'll look into this, thanks!

hey! can i work on this issue?


Possibility of Twitch logins

Hi there.
So as far as I can tell, your library works well with using Curse credentials to login but doesn't seem to work with Twitch credentials. I've walked through the login auth with twitch credentials and it seems to hit different endponts. Were there any plans to support Twitch login?

I've looked into it but it seems to be a little more complicated, so I haven't done any real work on it yet. I do want to support it though, since they might eventually decide to stop supporting Curse logins altogether.

That's what I was thinking. I've run twitchapp through fiddler a few times and as far as I can tell it seems everything is behind a captcha-server-side generated Code and State strings that are then used to generate a curse token that can interact with the service. It seems Twitch intentionally tried to keep people from logging in with their twitch accounts. Myself and another guy are still working on it though.

That was what I found as well. The fact that they can randomly decide to throw a captcha into the login form will make it difficult to do direct username/password logins. However, it looks like the Twitch Desktop application might just be using OAuth tokens for login (it has its own appID too), so it may be possible to request login permissions via OAuth in order to gain access to an auth token, which, as far as I can tell, can probably be used to log in to the curseapp API.
Unfortunately OAuth probably might not be ideal since you'll have to capture the access token either from a browser (probably using CEF or something similar to capture the window.location.hash, or from a webserver you're hosting. It also requires you to create an app on Twitch developers before you can use OAuth.

I got hit with the captcha every single time logging in. But ya, the oauth is the important bit. In fact if I remember correctly the scopes requested are all readily available to 3rd party devs (no internal scopes like the site uses). It would make sense that we may be able to use a generated oauth to login. What has me worried is the State string that seems to appear out of no where in the login flow (generated within the app?). And, it seems to be considered when creating the token used to access Curse services, along with the ClientId and "Code" which I believe to be the oauth token..

As far as I can tell the State string seems to be initialised to a randomly generated UUID (with the dashes removed) when the login page loads (see bundle.js line 187446 in the deminified file when using the Chrome debugger, or just search it for the first occurrence of f.Guid.newUUIDv4()), so I don't think it's a magic value, maybe just something to link the several API requests made during login to each other.

Wow, that's farther than I got haha. Nice, that gives me something to go off of.

An update on this, I think.
When the app makes a call to: https://logins-v1.curseapp.net/login/twitch-oauth with the payload containing Client, State, and Code, the ideal response is 1. Replacing the 1 with a 0 before the response reaches the client results in the client asking if the user has a curse account. If yes, it will (but fail) attempt to ask the user to link a curse account. If they don't have a curse account, I think it will ask the user to create a new twitch account.
Additionally, repeating the raw request (with exact same headers and body) yields a Status: 2. This means if you're getting Status: 1 then the request isn't being emulated correctly, I think.

The edit totally went over my head, but this looks interesting. I'm going to do some new tests based on the discoveries you've made and see if I can get it to work.


Adoption Localization drop 2 - Spring '21

Critical Changes
Translated labels from drop 2 for Adoption Spring '21
Changes
Issues Closed
Community Ideas Delivered
New Metadata
Deleted Metadata

@dmkud Thanks, but for LQA we need to keep the two drops in a single branch/pr. I'm not sure if we can just merge this one into the first or if you have to re-do the translation into the other branch, but there won't be a way for us to build an LQA org that has translations from two different branches. Plus, it's double the work on our end to review and update two large PR's (which also impacts our timeline significantly).
CC @bdvorachek

@dmkud Closing this PR since the translations will all go into the existing branch.


Autoenable console plugin

I know @yaacov also agrees with this so let's get it in

I know @yaacov also agrees with this so let's get it in

Sorry to be late :-) for future ref, yes I very agree :tada:


consider adding support for numexpr

numexpr could be an interesting faster alternative to sympy in simple cases (but not sure if xarray inputs are supported)

There is a proposal to add eval to XArray (only Datasets though), but is seems stalled https://github.com/pydata/xarray/pull/7163

And even it would be added, we would first need to come up with a proper solution for https://github.com/BAMWelDX/weldx/issues/810

And even it would be added, we would first need to come up with a proper solution for #810

yes we should certainly look into restoring xarray compatibility before anything else


Question about mmdetection v1.2

Hi -
The VM that I'm working with is equipped with only multi-core CPUs - there is no GPU. I have a pre-trained model (trained on v1.2) already available, and therefore I need to make only inference using v1.2. The installation is currently failing with the message - _

"no CUDA capable device is found".

_
I tried installing v2.0 in my multi-core CPU only VM, and this was successfully installed without any problems . However, I can't use the model trained on v1.2 in v2.0 without upgrading the model. When I tried upgrading the model using the Python utility (upgrade_model_version.py) provided under tools in v2.0, it fails with the following message:

RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.

Can somebody assist with the following:

Is there a way to install and run mmdetection v1.2 in CPU only VMs? In this case I don't have to upgrade my existing pre-trained model.
If (1) is not possible, then is there a way to upgrade the v1.2 model to v2.0 without GPU using the provided utility (upgrade_model_version.py)?

Would highly appreciate some assistance. Many thanks.
Sekhar H.

Hi @sekh77 ,
You failed to upgrade the model using upgrade_model_version.py because the model checkpoint seems to be stored in GPU or the script try to map the checkpoint to GPU. To fix this, you can first convert the model checkpoint into cpu. If this does not work, then you can change this line to checkpoint = torch.load(in_file, map_location='cpu').

Ok, thanks for the clarification! How do I convert the model checkpoint to
CPU? Is there a utility provided in v2.0?
Thanks,
Sekhar H.
On Sat, 16 May 2020, 11:15 a.m. Wenwei Zhang<EMAIL_ADDRESS>wrote:

Hi @sekh77 https://github.com/sekh77 ,
You failed to upgrade the model using upgrade_model_version.py because
the model checkpoint seems to be stored in GPU or the script try to map the
checkpoint to GPU. To fix this, you can first convert the model checkpoint
into cpu. If this does not work, then you can change this line
https://github.com/open-mmlab/mmdetection/blob/master/tools/upgrade_model_version.py#L121
to checkpoint = torch.load(in_file, map_location='cpu').
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/open-mmlab/mmdetection/issues/2732#issuecomment-629592790,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACAOVM7LVU7BQABPYLKEOPLRRYR6XANCNFSM4NCWWOVA
.

publish_model.py could do.

Ok, thanks! I will try, and let you know.
Sekhar H.
On Sat, 16 May 2020 at 14:47, Wenwei Zhang<EMAIL_ADDRESS>wrote:

publish_model.py could do.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/open-mmlab/mmdetection/issues/2732#issuecomment-629615197,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACAOVM5QHWX4EIQ5NOWHCZLRRZKYZANCNFSM4NCWWOVA
.

--
Sekhar Hari


Simplify logging macro and clean up a bit

The new LOG*() macros are too complicated for my liking, which I glossed over in my initial review:

the stdout/stderr casting is extremely hacky and can be easily achieved in the caller-supplied log callback
introducing variables in the LOG*() macros causes naming clashes in real code (c.f. ec775436921bbe2eb200aac89fafc2284c81ca7f for the first example)
the macros should be as simple as possible since they're effectively inlined everywhere

There were also a bunch of places where LOG*() was being supplied with a newline, which is now fixed.

Better indeed, thanks.


Fix CI

✅

@bnb any reason why you are white listing github ?

@ReadmeCritic There was an error in Travis when linking to the issues page:
Issues :-(

> Links

  1. [L13] 302 https://github.com/bnb/awesome-hyperterm/issues/new  → https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fbnb%2Fawesome-hyperterm%2Fissues%2Fnew

Ok, I will send another update so that it only skip that link


Cheatsheet for Keyboard Shortcuts

A cheatsheet with all the keyboard shortcuts would be great to navigate around. I was specifically looking to seek song by +/- 10 or 5 sec. Arrow keys did not seem to do that. Rest all shortcuts were easy to find.

@srshah27,
There is a list of shortcuts if you go to the bottom of the settings page, where there is a button named App Shortcuts to prompt the available shortcuts.


I'm masturbating on Snapdragon 855

What i should do?

@pidorkalobrod Maybe... You should stop?

@pidorkalobrod :|

@SnowFuhrer Пидор калоброд

so real!

I think you should stop now

Dont stop

forbidden thermal paste

forbidden thermal paste

thermal paste for ryzen 9

Best thermal paste for Intel Core i5 10300H

@mrksbgg never eat halal its bad

@mrksbgg never eat halal its bad

whatever u say bruder

@J0SH1X doner kebab is mostly from halal meet

@mrksbgg never eat halal its bad

why halal is bad

@mrksbgg he will port edk2 to your brain

@J0SH1X doner kebab is mostly from halal meet

doner good men

u have unlimited turkey people too so infinite doner

What i should do?

is it done

or are u still going

@pidorkalobrod ok


Adding a known issues section to the readme

Add more if you think of more!

+1. I like the phrase "Common Pitfalls" or something like that, to separate out common mistakes anti-patterns from actual issues/bugs

@mike-engel :+1: We should really look at getting this merged in ASAP so we don't get any more duplicate Firefox 38 bug reports. Shall we remove the section about PF3 (for now) and merge it?

Yeah, that sounds good. I'll actually just throw that into the 3.0 branch once this is merged in there.


Migrate to csso from cssnano

Here is a slide deck for CSSO which can be used as reference.
Based on the benchmarks we get great compression and better performance.

@mgechev - I tinkered with it a bit and came up with similar results. Took about a second off my build and the payload was definitely smaller.
If nobody else gets to this, i'll do it this weekend.

There is something that csso does not have.
cssnano optimisations

@Shyam-Chen which optimization fro cssnano is missing in csso?

@mgechev

convert time & length values
discard outdated vendor prefixes
reduce transform functions
minimise gradient parameters
The rest is not safe.

Okay, lets put that on hold for now.

@Shyam-Chen

convert time & length values
reduce transform functions
minimise gradient parameters

In practice, it gives insignificant saving.

discard outdated vendor prefixes

It's achieved by using autoprefixer and you're already using it. So cssnano does nothing in this case.

The rest is not safe.

Unsafe optimisations is not good enough for common cases. Especially when using for production only. Since it can breaks something that can be hard to figure out exactly what, especially in large projects. Also cssnano has a note about it:

Note that cssnano enables aggressive optimisations by default, which might not always be what you want. Set options.safe to true if you want to disable this. In future versions, only safe options will be enabled by default, starting from version 4.

Truly speaking every CSS minifier is not safe currently. And each of them has some unique optimizations. Yep, csso has no some specific optimisations that cssnano has and vice versa.
Currently csso doesn't focus on optimizations that save insignificant bytes in rare cases. Instead of this it introduces advanced optimizations (e.g. usage data) that can save much more bytes. In our case those optimisations allow us to reduce CSS more than twice (in particular for our project from 600Kb to 230Kb).
In addition csso much faster than cssnano – 10-100 times on real projects. It's also important as the time changes depending on the size of project. For example in our project, CSS increased from ~600Kb to ~800Kb in 5 months. Time changed for cssnano 23s → 48s, for csso 0.5s → 0.63s. Believe it makes sense. You can also try to use postcss-csso as an alternative to cssnano.
Just FYI.
I see clean-css in pipeline. Using of two CSS minifiers in one pipeline looks odd. clean-css is fast enough. But transforming CSS by two minifiers might leads to "nobody knows what is going wrong" (besides performance issues because of parse-translate CSS all the time along pipeline).

//cc @mgechev @d3viant0ne

In practice, it gives insignificant saving.

I have to agree here. Even on my largest client side application, the benefits in payload size done warrant the issues that crop up with super aggressive optimizations.
To @lahmatiy's second point, I personally use csso at it's default settings during development and enable it's advanced optimizations when I have a stable product to get the reductions in payload size that matter.
I've implemented csso using postcss-csso and have been happy with it. Given that we have already implemented postcss, adding the postcss-csso plugin is probably the route that makes the most sense and has the benefit of making the implementation super easy.
It would also allow for the removal of the clean-css task entirely which saves a second or so in the change detection cycle.


Fix link in README

The section it references is now in CONTRIBUTING.md.

Good catch, thanks!
@bors r+

:pushpin: Commit 02af2a38acc9c96e6012f8647d063669b19c0a32 has been approved by RalfJung

:hourglass: Testing commit 02af2a38acc9c96e6012f8647d063669b19c0a32 with merge 08ab8ce670b9e6472ac8c60f70b27cc7a567a027...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 08ab8ce670b9e6472ac8c60f70b27cc7a567a027 to master...


CPU usage high in some rigs

While discussing Grafana error reporting dashboard, Fiber pipeline team found that CPU usage (see below) is all the time high.
I see 6D, 7D active in the night too. Maybe related to fiber bleaching (more precisely, the hidden Bonsai instance open in the back). But not all the fiber rigs show this. Also, I don't know what/where Tower11 is.

Note the granfana board is not averaging across cpus, so it just means one CPU was very active. I think bonsai workflows being active use a high CPU because it's checking for events to react to. We could check this by looking at CPU use with the GUI open, but no task running


Fix incorrect path

Small fixes where I ran into a few issues while going through the Creating a workspace tutorial :))

Fixed another incorrect path to the root directory.
Also, I just learned that source is actually a synonym for ., so my earlier commit on changing how to source the overlay setup file is actually not needed.
While going through the tutorials, I got confused and thought the instructions meant to run the setup file as a script like so ./install/local_setup.bash, I should have paid more attention to the extra space!

Thanks for the updates.


Use Pure ASGI middleware instead of BaseHTTPMiddleware on Starlette

https://www.starlette.io/middleware/#pure-asgi-middleware

Thanks for the hint @Kludex. I'll implement this shortly.


Fix documentation for "Error: Closure not found"

After installing the way the wiki explained, and opening tests/horizontal_playground.html, I got an alert saying:
Error: Closure not found.  Read this:
developers.google.com/blockly/hacking/closure

It looks like you need to have closure-library installed in the lower directory.
calcdeps = import_path(os.path.join(
  os.path.pardir, "closure-library", "closure", "bin", "calcdeps.py"))

That, honestly, feels like bad design (i.e. I keep my GitHub projects in one directory and other random clones in another, so I don't really want closure-library, which I don't contribute to, in my I-contribute directory).
After getting closure-library installed at scratch-blocks/.., running build.py again, and opening the example/test file again, it worked.

Thanks for bringing this up. A wiki update seems in order for now. Eventually we'd like to fix this up so you don't need Closure in the parent directory, as you say. That may take some effort, though :)

I'm also still trying to figure out how to actually build.py running in the first place - any help?
$ npm i
$ cd ../ && npm i closure-library && cd scratch-blocks
$ python build.py
Error: Closure not found.  Read this:
https://developers.google.com/blockly/hacking/closure

Replace npm i closure-library with git clone https://github.com/google/closure-library.git.

What is the current work around to try out Scratch Blocks please (in simple step langauge)

Assuming you've used a terminal before..
cd <where you put your github prjoects>
git clone https://github.com/google/closure-library.git
git clone https://github.com/LLK/scratch-blocks.git
cd scratch-blocks
python build.py
# Now you can experiment by opening up
# tests/horizontal_playground.html :)

No need to build the absolute latest version though, the compressed blockly in the repository is new enough to give it a quick test.

@liam4 That got rid of error and I can now see the blocks - Ta :)

Documentation in the Wiki has been updated:
https://github.com/LLK/scratch-blocks/wiki

Hey, this isn;t working for me :/ I am on Windows and after doing these steps:
cd
git clone https://github.com/google/closure-library.git
git clone https://github.com/LLK/scratch-blocks.git
cd scratch-blocks
python build.py
Now you can experiment by opening up
tests/horizontal_playground.html :)
It still says Closure not found...