Table th and td has invisible border when rowspan is set

I'm using PhantomJS 2.1.1 and have problem when rendering table in PDF format.
If table has two or more th or td elements with rowspan set to 2 or higher - border between these elements is not visible disregarding CSS styles. The problem occurs only if cells has the same rowspan greater than 1 and these cells are located one after another.
Here are two examples:
Example 1 - th borders rendered incorrectly (border is invisible):
`

Artist
Album
Year
Copies sold

2014
2015

Kurt Vile
B’lieve i'm goin down
2015
1M
2M

Sufjan Stevens
Carrie & Lowell
2015
2M
3M

`
Example 2 - th borders rendered correctly:
`

Artist
<th rowspan="1">Album
Year
Copies sold

2014
2015

Kurt Vile
B’lieve i'm goin down
2015
1M
2M

Sufjan Stevens
Carrie & Lowell
2015
2M
3M

`
I've attached two files with rendered PDF files for example 1 and 2.
example1.pdf
example2.pdf

Confirm. The same problem!

My temporary solution until fix in coming versions will be adding a pseudo element for the rowspan.
.table-cell{
	position: relative;
}
.table-cell:before{
	position: absolute;
	content: "";
	top: 0;
	left: -1px;					// border-position
	background-color: black;	// border-color
	width: 1px;					// border-width
	height: 100%;
}

This temporary solution does not work for me on phantom 2.1.1

@pavoldobrucky you have to remove the comments. They are not CSS syntax so the last 4 lines get ignored.
@alextsoi thanks for the hack, worked fine! could you maybe fix the comments for all of us who just copy paste? ;)

@abisz is it ok now? I didn't test it.

Workaround worked here, thanks a lot!

Thank you for your help.
Work for me (IE 10-11)

Thanks @alextsoi
The CSS hack did work.
I encountered the same issue using PhantomJS version 2.1.1, where a rowspan on a table cell would print invisible borders.

@alextsoi , Thank you very much.
I had to modify the CSS slightly to make it work. Just made the background-color important.
I encountered the same issue while converting html to pdf using wkhtmltopdf in Django.
.table-cell {
position: relative;
}
.table-cell:before {
position: absolute;
content: "";
top: 0;
left: -1px;
background-color: black!important;
width: 1px;
height: 100%;
}

Hi everyone !
Try this code css :
            .table-cell {
                position: relative;
            }
            .table-cell:before {
                position: absolute;
                content: "";
                top: -1px;
                left:-1px;
                background-color: transparent;
                border: solid #ddd 1px;
                width: calc(100% + 2px) ;
                height: calc(100% + 2px);
            }

What a landmine. Love this project though!
Here's a modified version of @AnthonyBSDE 's code that worked for me:
        td[rowspan] {
            position: relative;
        }

        td[rowspan]:before {
            position: absolute;
            content: "";
            top: -1px;
            left: -1px;
            background-color: transparent;
            border: solid #666 1px;
            width: calc(100%);
            height: calc(100%);
        }


duration can be in inconsistent state after subtraction

I haven't explored to see all the circumstances that can cause it, but I notice that a duration's fields do not necessarily get normalized after subtraction.  Depending on how you do the same subtraction (conceptually), you get different results.
Here's a fiddle to see the issue in action:
http://jsfiddle.net/9cs8o1v1/3/
A test that would break due to this bug is:
var subtract1 = moment.duration(600, "days").subtract(1, "year");
var subtract2 = moment.duration(600, "days").subtract(365, "days");
assertEqual(subtract1.months(), subtract2.months());

As you can see in the fiddle, subtract1.months() yields -5, while subtract2.months() yields 7.

The problem seems to be more extensive than shown in that first fiddle.
http://jsfiddle.net/9cs8o1v1/4/
The result after subtraction, when the duration is handled as milliseconds, is the same in every case, so at some level things are consistent and correct.  But retrieving the fields individually, and looking at the humanized result, shows that only subtraction as days seems to be fully correct at least in this example.
http://jsfiddle.net/9cs8o1v1/5/
In this one, even the duration as milliseconds is sometimes not correct, even though the individual fields wind up correct in each case.  The humanized result is also wrong too, but the cases where the humanized result is wrong and the 'as milliseconds' result is wrong don't entirely match up.

Now I think this issue runs deeper than duration.subtract(), so maybe it duplicates an issue covered elsewhere -- I only searched for tickets regarding subtract before creating this one.  Without spending more time exploring, I'm not sure how far the inconsistencies go.
var dur1 = moment.duration({months: 2});
assertEqual(dur1.months(), 2);
assertEqual(dur1.days(), 0);

// conceptually, this should yield the same duration as dur1
var dur2 = moment.duration(dur1.asDays(), "days");
assertEqual(dur2.months(), 2);
assertEqual(dur2.days(), 0);   // FAILS

The final assert fails, as dur2.days() is 1 instead of 0.

I meet the same problem. It seems that moment only bubble up values (e.g.: PT48H becomes P2D), but it never bubble down values. check this line
var d = moment.duration('P1D').subtract(1, 'hour');
d.toString(); // P1DT1H
d.days(); // 1
d.hours(); // -1
d.asHours(); // 23

As you can see, the as* methods works fine. So the workaround is always call asMilliseconds() after subtraction:
var d = moment.duration(moment.duration('P1D').subtract(1, 'hour').asMilliseconds());
d.toString();// PT23H
d.hours(); // 23

I think this is the same issue:
var a = moment('2015/01/01'),
    b = moment('2015/01/31');

console.log(b.diff(a, 'days')); // 30 - correct
console.log(moment.duration({from: a, to: b}).as('days')); // 30 - correct

a = moment('2015/01/01'),
b = moment('2015/02/01');

console.log(b.diff(a, 'days')); // 31 - correct
console.log(moment.duration({from: a, to: b}).as('days')); // 30 - incorrect

I've run across this, too. Not much to add, but this can be demonstrated with both .add() (using a negative value) and .subtract():
moment.duration(1, 'days').add(moment.duration(-1, 'hours')).hours()
> -1

moment.duration(1, 'days').subtract(moment.duration(1, 'hours')).hours()
> -1

You can coax the desired value by constructing a new duration from the result of asMilliseconds():
moment.duration(moment.duration(1, 'days').subtract(moment.duration(1, 'hours')).asMilliseconds()).hours()
> 23

I agree we have a problem here.
The main issue is that

we keep durations as 3 fields (ms, days and months)
this means you might end up with negative values in one field, and positive in another
bubbling doesn't handle a mix of positive / negative values (only all positive and all negative)

One way to fix this is to add code to bubble so it works well with a mix of positive/negative values. If it detects positive/negative, it will just convert everything to ms, and then bubble that.


Web server file structure on startup #48

From https://github.com/NeRF-or-Nothing/vidtonerf/issues/48
alexandorr55 commented on Nov 15, 2022
Right now the webserver does not initialize it's file structure resulting in errors if the user does not manually define the folder structure. This should be handled automatically on start up.

Should be handled by V3. Volume mapping is more complete, and go-web-server verifies/makes file structure on startup. nerf-worker and sfm-worker could use the same treatment

Wrong repo lol


features/simplified_pickled_model

Converted latitude longitude columns from continuous to categorical variables.
Built the working XGBoost model so that inputs correlate to what the front end can deliver.
Pickled the model & tested it.

Looks like changing the lat and lon to categorical made it so that the importance of those features is now actually higher than the city used to be. And the inputs look like they will actually work well for the front end developers.


Global search and replace with regexp containing newlines does not substitute variables

VSCode Version: 1.29.0
OS Version: Linux / Ubuntu

Supposedly this issue was fixed in https://github.com/Microsoft/vscode/issues/9010 (which is now locked), but it is not working for me still.
Steps to Reproduce:

Use a global search regexp pattern with group occurrences such as (.*)
Refer to them in the pattern with $1 etc.
Notice in the preview (double click on result) it shows $1, not the matched substring.

It could well be that it is a preview issue, did not try to actually execute the replacement.
Also my regexp was multi-line, if that matters (matching \n in places outside the groups).

Can you share the exact regex search/replace? This works for me

Ah I see you were able to reproduce. Sorry for not giving an example earlier.

Pulling this from the recovery milestone. This is unfortunate but I think it's sort of a niche issue. The fix is in Insiders already if anyone needs this.


can't access wallet

I can't access wallet I keep getting error  ... there was an error sending the transaction. The Error was: Server's latest block (539411) is behind ours.

same issue Mac OS There was an error sending the transaction. The error was:
Server's latest block(541371) is behind ours(1371538)

i had a same problem

I have the same issue.  Tried opening wallet several times and got same error message "Latest block (insert number) as they were always different is behind block 1372413.


BayesSearchCV weird performance

Hello, this topic is about comparison of performance of sklearn's RandomizedSearchCV, GridSearchCV and the skopt's BayesSearchCV.
We have discussed this issue with Tim more than half year ago, at that time skopt had problems installing on Windows, now it hasn't and I had a chance to run the test again.
Results are still far from what we could expect from a theoretically superior method, can anyone shed some light on why it's taking so much time to use BayesSearchCV compared to RandomizedSearchCV, under ANY base_estimator?
Note: I had to reduce number of trials for BayesSearchCV to 40 instead of original 216 to get a feasible run time.

import numpy as np
import pandas as pd
from time import time

from sklearn.datasets import load_digits
from scipy.stats import randint as sp_randint
from sklearn.ensemble import RandomForestClassifier

from sklearn.model_selection import StratifiedKFold
from sklearn.model_selection import GridSearchCV,RandomizedSearchCV

from skopt import BayesSearchCV
from skopt.space import Real, Categorical, Integer

#inits
pd.set_option('max_colwidth',400)

# Utility function to report best scores+timings
def report_perf(optimizer, X, y, title):
    from IPython.display import display
    start = time()
    optimizer.fit(X, y)
    d=pd.DataFrame(optimizer.cv_results_)
    print((title+" took %.2f seconds,  candidates checked: %d, best CV score: %.3f "+u"\u00B1"+" %.3f")
              % (time() - start, len(optimizer.cv_results_['params']),d[d.rank_test_score==1]['mean_test_score'].values[0],d[d.rank_test_score==1]['std_test_score'].values[0]))
    display(d[['rank_test_score','mean_test_score','std_test_score','params']]
            .sort_values(by='mean_test_score',ascending =False).head(5))

# get some data
digits = load_digits()
X, y = digits.data, digits.target
#define partitioning
skf = StratifiedKFold(n_splits=5,random_state=22)
# build a base classifier
clf = RandomForestClassifier(n_estimators=20,random_state=32)

random_search = RandomizedSearchCV(clf, param_distributions={"max_depth": [3, None],
              "max_features": sp_randint(1, 11),
              "min_samples_split": sp_randint(2, 11),
              "min_samples_leaf": sp_randint(1, 11),
              "bootstrap": [True, False],
              "criterion": ["gini", "entropy"]},n_iter=216,n_jobs=-1,cv=skf,
                                   return_train_score=False)
report_perf(random_search, X, y,'RandomizedSearchCV')

grid_search = GridSearchCV(clf, param_grid={"max_depth": [3, None],
              "max_features": [1, 3, 10],
              "min_samples_split": [2, 3, 10],
              "min_samples_leaf": [1, 3, 10],
              "bootstrap": [True, False],
              "criterion": ["gini", "entropy"]},n_jobs=-1,cv=skf,return_train_score=False)
report_perf(grid_search, X, y,'GridSearchCV')

for baseEstimator in ['GP','RF','ET']:
    opt = BayesSearchCV(clf,
        {"max_depth": Categorical([3, 100000]),
                  "max_features": (1, 10),
                  "min_samples_split": (2, 10),
                  "min_samples_leaf": (1, 10),
                  "bootstrap": [True, False],
                  "criterion": ["gini", "entropy"]},
        n_iter=40,n_jobs=-1,cv=skf,return_train_score=False,optimizer_kwargs={'base_estimator': baseEstimator})
    report_perf(opt, X, y,'BayesSearchCV_'+baseEstimator)

My results:

RandomizedSearchCV took 14.51 seconds,  candidates checked: 216, best CV score: 0.938 ± 0.013
GridSearchCV took 14.52 seconds,  candidates checked: 216, best CV score: 0.932 ± 0.029

BayesSearchCV_GP took 146.50 seconds,  candidates checked: 40, best CV score: 0.913 ± 0.033
BayesSearchCV_RF took 146.48 seconds,  candidates checked: 40, best CV score: 0.807 ± 0.026
BayesSearchCV_ET took 147.24 seconds,  candidates checked: 40, best CV score: 0.808 ± 0.025

Do not be worried about absolute accuracy not being high enough, as we are feeding the model with raw pixels without any preprocessing or dimensionality reduction.
But what is drawing attention, is huge runtime of BayesSearchCV.
Why is it taking so long to fit BayesSearchCV? In my understanding, should not be training set for it pretty small? As inputs to this metaestimator we (in this case) should have 6 columns and up to 40 training examples, and, roughly speaking, should perform up to 40 fits of the metaestimator (in fact, even less, as it would be wise to use some batches instead of re-fitting it after every new trial).
But running of 40 fits on 6 columns of maximum 40 rows SHOULD NOT take 2 minutes! I'd expect maximum 1 second, not more.
So what is happening?
More on this, if we make n_iter =40 for RandomizedSearchCV to be able to compare its efficiency directly, we can see it's outperforming BayesSearchCV!!!

RandomizedSearchCV took 10.40 seconds,  candidates checked: 40, best CV score: 0.923 ± 0.034
RandomizedSearchCV took 10.44 seconds,  candidates checked: 40, best CV score: 0.932 ± 0.022
RandomizedSearchCV took 10.55 seconds,  candidates checked: 40, best CV score: 0.932 ± 0.020

So not only is BayesSearchCV much slower, it's also arriving at worse solutions than random search. What is going on??
Regards,
Anatoly
UPD
Also, almost every time I run it, i can see this warning:
\skopt\optimizer\optimizer.py:399: UserWarning: The objective has been evaluated at this point before.
What does it mean and why can't it choose a new point to investigate?

Hi @fingoldo ,
here are some ideas:

scikit-optimize is focused on optimizing model parameters, where a single fitting of the model takes considerable amount of time, e.g. hours or more. This is done using Bayesian Optimization (BO), as this class of algorithms has a property that it can find optimal hyperparameters of a model in relatively small number of trials of different parameter configurations. This means, that a smaller amount of training time is necessary (more on that below). However, such algorithm is not very suited for problems where model fitting takes very small amount of time, e.g. microseconds. The reason is that Bayesian Optimization requires fitting of a "surrogate" function, which models how cross - validation score changes w.r.t. different parameters. This is done every time a new parameter values are tried to see in what cross - validation they result. Fitting of this surrogate function is costly and results exactly in the overhead that you are seeing. However, this surrogate function is what leads to the favorable properties of these algorithms. For long running fitting, such costs are negligible.
I would re-run the experiment a few times to see how results vary from run to run - there is some randomness in how BO works. Also in some situations random search might be better than BO, simply because of no free lunch theorem. But it might be also that with larger number BO performs equally or even better. But if BO is consistently outperformed by random search, this should become a great test for our algorithms! If you have time for some experimentation with different number of iterations for example, it would be great if you check this.
It is interesting that you are seeing this warning. It means that at some iteration an algorithm came up with a parameter configuration to evaluate that has been already evaluated. Could you post a complete log of BayesSearchCV? That might give an idea of whether there could be any issue. In particular, I would look how often such warning is raised.

Thank you for reply Iaroslav, so it's supposed to take so much time? incredible.
Anyway something must be wrong as it's not converging to solution better than found by random search, given the same amount of iterations and not taking execution time into account.
Results I have posted are very repeatable, same estimates I had half year ago.
And when I run the script again I get about the same results.
Do you have any example at hand where Skopt shows its superiority over random search, which one could run more or less easily, like the one I have provided?
So you think that particular example I have stumbled upon is exactly the case according to No free lunch theorem where random search is better than BO? ;-)
Regarding complete log of BayesSearchCV, let me know please how to extract it and i will provide it.

Hello Anatoly.
I have modified the evaluation part in your example a bit and used also None as a value for max_depth in BayesSearchCV:
import numpy as np
import pandas as pd
from time import time

from sklearn.datasets import load_digits
from scipy.stats import randint as sp_randint
from sklearn.ensemble import RandomForestClassifier

from sklearn.model_selection import StratifiedKFold
from sklearn.model_selection import GridSearchCV,RandomizedSearchCV

from skopt import BayesSearchCV
from skopt.space import Real, Categorical, Integer

# Utility function to report best scores+timings
def report_perf(optimizer, X, y, title):
    optimizer.fit(X, y)
    print(title, "best CV score:", optimizer.best_score_)

# get some data
digits = load_digits()
X, y = digits.data, digits.target
#define partitioning
skf = StratifiedKFold(n_splits=5,random_state=22)
# build a base classifier
clf = RandomForestClassifier(n_estimators=20,random_state=32)

total_iter = 40

for baseEstimator in ['GP','RF','ET']:
    opt = BayesSearchCV(clf,
        {"max_depth": Categorical([3, None]),
                  "max_features": (1, 10),
                  "min_samples_split": (2, 10),
                  "min_samples_leaf": (1, 10),
                  "bootstrap": [True, False],
                  "criterion": ["gini", "entropy"]},
        n_iter=total_iter,n_jobs=-1,cv=skf,return_train_score=False,optimizer_kwargs={'base_estimator': baseEstimator})
    report_perf(opt, X, y,'BayesSearchCV_'+baseEstimator)

random_search = RandomizedSearchCV(clf, param_distributions={"max_depth": [3, None],
              "max_features": sp_randint(1, 11),
              "min_samples_split": sp_randint(2, 11),
              "min_samples_leaf": sp_randint(1, 11),
              "bootstrap": [True, False],
              "criterion": ["gini", "entropy"]},n_iter=total_iter,n_jobs=-1,cv=skf,
                                   return_train_score=False)
report_perf(random_search, X, y,'RandomizedSearchCV')

grid_search = GridSearchCV(clf, param_grid={"max_depth": [3, None],
              "max_features": [1, 3, 10],
              "min_samples_split": [2, 3, 10],
              "min_samples_leaf": [1, 3, 10],
              "bootstrap": [True, False],
              "criterion": ["gini", "entropy"]},n_jobs=-1,cv=skf,return_train_score=False)
report_perf(grid_search, X, y,'GridSearchCV')

I run this with python3 -W ignore skopt_test.py to suppress the warnings, and I am consistently getting that BayesSearchCV is beating the other methods; This is what I get in console:
BayesSearchCV_GP best CV score: 0.9376739009460211
BayesSearchCV_RF best CV score: 0.9309961046188091
BayesSearchCV_ET best CV score: 0.9254312743461325
RandomizedSearchCV best CV score: 0.9298831385642737
GridSearchCV best CV score: 0.9315525876460768

I use the version of skopt on master branch.
Will look into this more when I am back. Can you reproduce these results?

Hi again :) Here are some thoughts also:
Regarding the logs for BayesSearchCV - I got it. The internal optimization algorithm suggests same points to try once the algorithm is converging, and hence it throws the warning. In this case it seems it can be safely ignored.
We have benchmarked skopt against other methods on a set of ~50+ optimization tasks, see here. These results suggest that indeed gp_minimize is quite performant, compared to random search. Some benchmarks can be found in here.
I will look tomorrow / on weekend into why I am getting different results when using best_score_ then what you got.

Thank you Slava so much for finding time to clear this question.
Yes when I run your example BO is showing better accuracies )
2018-07-26 16:02:46.856298 Starting fit of BayesSearchCV_GP
2018-07-26 16:05:52.414450 BayesSearchCV_GP best CV score: 0.9376739009460211 {'bootstrap': False, 'criterion': 'gini', 'max_depth': None, 'max_features': 6, 'min_samples_leaf': 1, 'min_samples_split': 2}
2018-07-26 16:05:52.421456 Starting fit of BayesSearchCV_RF
2018-07-26 16:09:00.612143 BayesSearchCV_RF best CV score: 0.9343350027824151 {'bootstrap': False, 'criterion': 'gini', 'max_depth': None, 'max_features': 8, 'min_samples_leaf': 1, 'min_samples_split': 4}
2018-07-26 16:09:00.619149 Starting fit of BayesSearchCV_ET
2018-07-26 16:12:14.007575 BayesSearchCV_ET best CV score: 0.9376739009460211 {'bootstrap': False, 'criterion': 'gini', 'max_depth': None, 'max_features': 8, 'min_samples_leaf': 1, 'min_samples_split': 2}
2018-07-26 16:12:14.016083 Starting fit of RandomizedSearchCV
2018-07-26 16:12:18.421895 RandomizedSearchCV best CV score: 0.9265442404006677 {'bootstrap': False, 'criterion': 'entropy', 'max_depth': None, 'max_features': 6, 'min_samples_leaf': 3, 'min_samples_split': 9}
2018-07-26 16:12:18.422396 Starting fit of GridSearchCV
2018-07-26 16:12:25.925234 GridSearchCV best CV score: 0.9315525876460768 {'bootstrap': False, 'criterion': 'entropy', 'max_depth': None, 'max_features': 10, 'min_samples_leaf': 1, 'min_samples_split': 3}.
Hope I will have time soon to test it on real problem where one pass over data takes comparatively longer to justify BO run time. Thank you again!

However, I would be really interested to compare performance of SkOpt with some simple heuristics, like: 1) sample less from a region if it's taking larger times to evaluate target function in that region. Is this taken into account somehow by current implementation of BayesSearchCV?
2) use kind of multiarmed bandit heuristic, where at start we sample randomly and with time we sample mostly from the best regions, only occasionally sampling from distant regions to explore new opportunities (exploration-exploitation dilemma)
3) as i am particularly interested in machine learning applications, decrease probability of sampling values of a parameter which has resulted in estimator's fit failure, due to unsupported combination of parameters. Sklearn's methods currently dumbly repeat sampling in such cases over and over again, wasting cycles. Don't know how BayesSearchCV behaves.
Also, I still don't know why it's taking BO so long to decide on next step. As far as i understand it, it's trying to interpolate probabilities distribution over some grid in search space? Maybe number of points over which it's doing that can be adjusted by some extra knob? So that users can set it to lower value and it can compete with RandomSearchCV not only in solution quality but also in run time?

Hi, here are some ideas:

We actually have a functionality that takes into account time, see here - you are then required to use a special type of acquisition function for the optimizer used in BayesSearchCV. To provide such configuration, you can use optimizer_kwargs of the BayesSearchCV.
It is interesting that you mentioned that; I actually have an implementation of a special random exploration function here, which performs surprisingly well, and it behaves approximately how you suggest - big changes are introduced only rarely. It is not a part of scikit - optimize though.
If you provide some error_score <= 0, I think BayesSearchCV should learn after some time which configurations are infeasible (lead to minimal score) and hence to not use them. But to compare to others, I would set up some kind of a small scale experiment to see if this is true.

One of the costly operations in BO is calculation of a kernel function between all pairs of observations, which already gives O(N^2) calculations for N observations. There are other operations, which increase the cost of evaluation even more. There is a variant of BO algorithm, which is more scalable. But is still might take more time computationally than random search.
The interesting thing is that if you can evaluate a lot of hyperparameter configurations in short amount of time, maybe you do not need BO in the first place. A typical situation is that solution produced by BayesSearchCV in N iterations will be also achieved by RandomSearchCV in 2N or 4N or 8*N iterations. If evaluation of hyperparameter configuration is very cheap relative to BO step, then you just spend extra second for more random evaluations, and get similar result.
An interesting "in - between" solution would be some advanced genetic algorithm. Here to support this: in the recent black box competition, in single objective track a combination of genetic and local search works best; but in expensive single objective gaussian processes base method is working best.


hide command console on windows

Fixes a problem where the command opens a console in release mode on windows.

It runs without issues on windows.


Compatibility Issue with Token Magic FX

In GitLab by @harshmage on Apr 2, 2021, 23:24
Technical Notes

Token Magic FX (0.4.4) modifies the roll text in the Chat Log.

Where output text for Complications (mark XP), Partial Success, and Success, text will read as the object statement instead of the language translation (DW.[object Object]failure, partial, success).
It's not hard to understand what's happening, but should be noted of the compatibility issue for now.  Issue also opened on the Token Magic FX github: https://github.com/Feu-Secret/Tokenmagic/issues/102
Expected:

Issue:

In GitLab by @dev7355608 on Apr 3, 2021, 10:51
Looks like the problem lies here:
{{#if result}}
{{localize (concat "DW." . result)}}
{{/if}}

https://gitlab.com/asacolips-projects/foundry-mods/dungeonworld/-/blob/master/src/templates/chat/chat-move.html#L7
The dot between "DW." and result seems be a typo. It works if it's removed. No clue why it doesn't fail without Token Magic as well. Very weird.

In GitLab by @Asacolips on Apr 3, 2021, 15:57
Thanks for finding this! I'll get this included in the next release.


design doc view returns empty via REST API

I have a design document, whose views I can see from e.g.
database-url/database-name/_design/design-document-name
However when making a request to e.g.
database-url/database-name/_design/design-document-name/_view/view-name
I get 0 rows returned, even though the data is visible from /_all_docs
I get the expected data from the same view on iOS.
I'm using v 1.3.1 (tried also latest build 1.3.1-37)

Possible duplicate of #976


Question: How to adapt to a computed value database

Hello!
Great package, doing some tests, and it looks great and performant!
I was wondering how would you approach the use case I'm working with. We have some computed values with lots of dependencies (multiple levels of dependencies) that are computed in the frontend and the backend.
The front-end is easy, when the user changes some value, we update our store which also runs a dataflow.set() with the new values. Getting the right values in the store.
The backend is more tricky. Imagine that you have a database with an interface, for instance a lambda, that gathers requests and tries to achieve the same result:
client [api]<> interface (engine) [lambda] <> database [postgres]
We are currently doing it like this in the lambda:

Check the impacts (reverse deps) of the input variables
get the required values in DB
Do all the computing topologically
send all the results to the DB

Receiving concurrent mutations without shared dependencies / impacts are fine. But mutations that have shared dependencies/impacted values do generate issues.
How would you approach this use case where lambdas can asynchronously change values of this reactive database?
📝One workaround is to do only onRead computed values and not onWrite computes, but we need both for performance reaons

Hey, congrats on filing bug #1 :) I'm glad you found this library! It has proved to be a killer technology for a complex data-driven UI I was working on.
Ok, so your problem is that your database reads and writes, for a single dataflow propagation, need to be wrapped inside a transaction. That way if the output values of one concurrent dataflow pass change the input values of a second concurrent dataflow pass after they have already been read, the second dataflow will be reverted (then you just retry the second transaction, it should succeed the next time).

Happy to be the first one!
I was looking for complex solutions with timestamps lol. Thanks!
By the way if we end up using this one instead of topologica (which seems it will be the case) would you accept a PR that gets rid of lodash? :)
Would it make sense for you to deploy it to npm?

Yes, certainly, however the lodash equals-testing method would be very hard to replicate in your own code, because proper equals-testing in Javascript is insanely complex.
I'm happy to deploy to npm too, I just have no experience with that.
I'm actually considering rewriting this in Dart, and it could be compiled to Javascript from there. I have no idea what the gotchas will be of this approach, but Dart is a far superior language to JS, and all my work is in Dart these days.


MsalContext accounts contains incorrect for authenticated user

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
3.14.0
Wrapper Library
MSAL React (@azure/msal-react)
Wrapper Library Version
2.0.16
Public or Confidential Client?
Public
Description
During app bootstrap msal is loaded and the msal context is initialized with
...
accounts = instance.getAllAccounts()
...

After you acquire a token, the account is updated in the msal instance, but the context is still returning the old object. This is due the fact that the context is not updated as the utility function accountArraysAreEqual skips this new value as it matches the old account based on homeAccountId, localAccountId and username. My expectation is that this new account is reflected also in the msal context.
Is there a reasoning why this behaves like this, or is this a bug?
Error Message
No response
MSAL Logs
No response
Network Trace (Preferrably Fiddler)

[ ] Sent
[ ] Pending

MSAL Configuration
{
  auth: {
    clientId: "*************",
    authority: "*************",
    knownAuthorities: ["*************"],
    redirectUri: window.location.origin,
    navigateToLoginRequestUrl: true,
  },
  cache: {
    cacheLocation: "localStorage",
  },
}

Relevant Code Snippets
// none

Reproduction Steps

login to app
refresh page
accuire token
const { accounts, instance } = useMsal(); // accounts is different from instance.getAllAccounts()

Expected Behavior
accounts in MsalContext properly reflect the result of msalInstance.getAllAccounts()
Identity Provider
Azure B2C Custom Policy
Browsers Affected (Select all that apply)
Chrome, Firefox, Edge, Safari
Regression
No response
Source
External (Customer)

This is expected behavior. The accounts returned by context should only be used if you depend on persistent values such as name, username, etc or for passing into acquireToken APIs. If you need specific claims from the idToken you should invoke the APIs provided by PublicClientApplication to get the most up to date values.
The reason for this is that updating context every time a claim changes would result in far more re-renders than is often necessary.


Lag issue with error [Prediction] CPrediction::PerformPrediction executed too many commands

Hello There ,
After server is run for a few hours , I notice that when I join the game , the server is laggy and movement keys don't work .
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Shooting] cl: ReadFrameInput - Presented data has no mod info
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands
[Prediction] CPrediction::PerformPrediction executed too many commands

After I restart the server , the problem will be solved but it happens again after some time . could this be related to latest update of MSM ? I didn't have any issues with the previous version .
Regards ,

I don't have any proof that this is caused by MSM so I just close this issue and reopen later if I found anything else .


Rspec tests loading the wrong 'uri' in rspec after upgrading Bundler

Subject of the issue
Your environment

Ruby version: 2.7.6
rspec-core version: 3.12.1
Bundler version: 2.4.6

Steps to reproduce
Create a project with the following structure:

lib

uri.rb

spec

uri_spec.rb

Gemfile

In both uri.rb and uri_spec.rb you can put the following:
test = require 'uri'
puts test # returns `true`
::URI::Parser.new

and in Gemfile
source 'https://rubygems.org'

gem 'rspec', '~> 3.12.0'

Then bundle install and run bundle exec rspec. You will get the following error:
Expected behavior
I would expect it to load the 'uri' gem from the Ruby standard library and run the code successfully.
Actual behavior
An error occurred while loading ./spec/uri_spec.rb.
Failure/Error: ::URI::Parser.new

NameError:
  uninitialized constant URI
# ./spec/uri_spec.rb:3:in `<top (required)>'
No examples found.

However, if you run ruby ./lib/uri.rb this will run just fine.
It seems to me that the issue is from this method here. This causes the lib folder to get added to the $LOAD_PATH first and will check here before it checks the std library. Thus, it sees "uri.rb' from lib and it seems impossible to load the one from the standard library without changing the name of my local file. This is an option, but it seems like confusing behavior to me and I feel like rspec is making assumptions that perhaps it should not.
I can workaround this problem by adding the -ruri flag but it also doesn't seem to be possible to add ruby options when running rspec directly.
By the way, this problem started for us when upgrading from Bundler 1.17 to Bundler 2.4 and I think is likely due to this because "uri" was required in Rubygems.

What your suggestion would be for RSpec?

You should not shadow library names off the standard library or any other gem, if you has this as lib/my_lib/uri.rb you'd be fine, its common practise to load lib/<library_name>.rb within gemspecs for example. I'd suggest renaming your file.


IndexError: list index out of range

Hello
The CSV creation on step 2 is throwing an error:
Traceback (most recent call last): File "ck3json.py", line 2472, in <module> File "ck3json.py", line 626, in getpersonOG IndexError: list index out of range
This is after entering all options including the character ID.

A problem with custom religions. Will be addressed after the Royal Court DLC is released.


In WControl._set control mouse_filter

When widget mouse_filter is set, propagate to all nodes below.

This cannot be done since user might add child nodes to a widget on Editor or via code, affecting them unintentionally.


mysqlclient 8.0.31: Major update of the library

Update documentation - DocC documentation
Update underlying library to MySQL 8.0.31 - the library decreased its size by building it without debug info.
Extend support of watchOS and tvOS
Remove deprecation

Hey @wrutkowski-tyro
Feel free to take a look at this PR and leave comments. It's major update of the library, hopefully you will like that :)

Hi @oleghnidets. Looks good, nice to see the switch to DocC and overall cleanup!


Encumbrance movement penalty is doubled when DAE is enabled

In order to submit an effective bug report, please include the following information along with your issue description.
Environment Details

Foundry VTT Version: 9.249
Operating System: Red Hat Enterprise Linux (Host), Alpine Linux (Docker container)
How Are You Using Foundry: Firefox
Which Game System: dnd5e
Modules Enabled?: yes, Variant Encumbrance, Item Containers and Dynamic Active Effects

Issue Description
When Variant Encumbrance is configured to use speed penalties, the 10ft penalty is doubled while DAE is enabled, e.g. 30ft movement is reduced to 10ft when lightly encumbered.

Yep, that seems to have worked - only seeing 10ft penalty for light encumbrance.


enable oversize overlay regions

[x] FEATURE: overlay label can be a component
[x] FEATURE: overlays can have an expandSizeBy property to increase the size of the overlay
[x] FEATURE: added a reverseOrder boolean property to allow reversing the order that overlays are added to the DOM.

For some reason the diff in this changelog is huge, showing diffs into master that aren't actually different. e.g.:

Diff is showing we added /.env and /.pnp but those lines already exist in master.
🤷♂
@ef4 @deverstalmage

if either @deverstalmage or @ef4 can debunk why this diff is showing changes that aren't relevant, please add a note, i'll fix and open the PR officially.


way to get short hash?

Hey @ankurmittal,
Can you elaborate?
Is there a reason you can't do something like:
var h plumbing.Hash
h.String()[:6]

I can and that works but then i would also need to read "core.abbrev", i was wondering if there can be native support inside go-git, also does go-git has plan of supporting short hashes once it supports rev-parse?

This is something to think about it, where is the frontier of the user and the library. Short hashes looks more like a concept for the user that something for a library.
The config object should support read/write the core.abbrev, in other to the people, short hashes for his users. But I am not sure if adding a method Short(length int) to plumbing.Hash make sense.

Note that to actual mimick git behaviour, we cannot just get a fixed-length prefix. An  EncodedObjectStorer is needed to check for collisions and use a longer prefix if needed. So this is unlikely to make sense for plumbing.Hash, but it might make sense as an utility function that takes a plumbing.Hash and a storer.


scantailor 0.9.12

@DomT4 @apjanke @mikemcquaid This is the PR superseding https://github.com/Homebrew/homebrew-x11/pull/197

:+1:

@apjanke I modified the test because the upstream version numbering is unreliable so the simple version test isn't a great plan. Does that pseudo-functional test look all right?
In this case the author retagged <IP_ADDRESS> with the tag RELEASE_0_9_12_2 because the initial tag didn't bump the so-called "quad version" to <IP_ADDRESS> in version.h.
CLI reports 0.9.12 (the non-quad version), but 0.9.12 is actually a different and earlier tag. Upstream's view is that this release is "<IP_ADDRESS>" but I'm tempted to remove the explicit version number, and let brew think it's "<IP_ADDRESS>" since there presumably will never be a "real" <IP_ADDRESS> given that the RELEASE_0_9_12_2 is already used up.

Yeah, that sounds fine. The new test looks more meaningful even if the versions were reliable. :+1:


Allow 0 values to be recorded

Other spectator clients allow 0 to be recorded. This is helpful if you want to record 0 on error metrics, which allows you to calculate an average on the counter which reflects the percentage of errors.


replaced gorilla with melody

also added websocat command to the matterbridge.tml.sample

this does NOT send backlog to the websockets on connection
I plan to add that in a followup PR
api/stream still consumes messages from the buffer
and accessing api/messages will clear the message buffer
websockets do not consume messages as messages are directly sent to the melody router

some small changes and it can be merged

rebased on master and rnamed the requested bits
(also one occurrence where i forgot to return in case of error)


[FLINK-21190][runtime-web] Expose exception history

What is the purpose of the change
The purpose of this PR is to expose the exception history work that was introduced in the preceding tasks of FLINK-21187 and FLINK-21188.
FLINK-21189 as an additional preceding task to prepare the work on FLINK-21190 was postponed due to other higher-prioritized work. Lacking the work on FLINK-21189 and @vthinkxie being busy on other tasks till April, we decided to change the scope of FLINK-21190 to only cover the root causes in the exception history. I created FLINK-21867 to cover the follow-up work on the UI.
Brief change log

Introduced new parameter jobmanager.exception-history-size to handle the size of the internally collected most recent failures
BoundedFIFOQueue was introduced to have a limited amount of failures collected in memory. The BoundedFIFOQueue is initialized in the SchedulerBase constructor using the newly introduced config option jobmanager.exception-history-size.
Extended JobExceptionsInfo by JobExceptionsInfoWithHistory which covers the new REST response interface in contrast to the (now deprecated) members of JobExceptionsInfo
JobExceptionsHandler is now utilizing JobExceptionsInfoWithHistory introducing the new field exceptionHistory in the REST response.
ArchivedTaskManagerLocation was introduced to have a static version of TaskManagerLocation to overcome caching issues in the InetAddress instance of TaskManagerLocation. A class was introduced in contrast to just picking the necessary members as the selection of data that should be exposed through the REST API should be done in the JobExceptionsHandler (not in the SchedulerBase code).

other hotfixes:

The ExecutionGraphInfo now uses the AccessExecutionGraph interface instead of returning ArchivedExecutionGraph
Refactored JsonArchivist introducing a separate interface OnlyExecutionGraphJsonArchivist for REST handlers that don't need to bother about ExecutionGraphInfo

Verifying this change

JobExceptionsHandlerTest got extended testing the new functionality
DefaultSchedulerTest was extended to cover the truncation of exception history entries
BoundedFIFOQueueTest was added to test BoundedFIFOQueue's functionality

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? yes
If yes, how is the feature documented? docs (REST API)

I added another column. The current UI version looks like this

The elementCount was reverted. The UI info message was replaced by a static one that is shown as soon as there are exceptions listed.

I addressed your comments, squashed and rebased the branch

Hey @XComp would you mind chatting through the change - maybe in a quick call?  I'm new to Flink and I've go the followup FLINK-21439 ticket (it will be my second ticket in Flink, though I'm not a novice developer generally). It might make sense to do before merging this in case you decide to make any changes.

Hi @bytesandwich , it would be great if you could share your thoughts on the code in this PR instead of discussing it in a call. This makes the decision making process more transparent.

Could you please help make the context clearer to me as someone coming fresh to this PR?

The goal of this PR and FLINK-21190 is to allow the DefaultScheduler (opposed to the AdaptiveScheduler that is relevant to you in FLINK-21439) to remember prior failure reasons. Currently the DefaultScheduler only remembers the very last failure cause, which for long-term deployments is of course undesirable.
The SchedulerBase now contains a BoundedFIFOQueue containing up to N exceptions that previously caused job restarts; this data-structure is populated by the scheduler.
Contrary to what you might expect, this history is not stored in the ExecutionGraph, which is more-or-less the core data-structure of the job. This is in preparation for FLINK-21439.
For the DefaultScheduler there only ever exists 1 ExecutionGraph; it is created when the job starts and destroyed when it completes or the JobMaster looses leadership. This is very different for the AdaptiveScheduler, which re-creates the ExecutionGraph repeatedly during execution of a job, specifically whenever it re-scales the job to run at a different parallelism.
Hence, this information must not be stored in the ExecutionGraph. That is also why the ExecutionGraphInfo exists; to provide some access point for information about jobs that is not tied to the lifecycle of the ExecutionGraph.
Other changes include various changes to the REST handlers to extract exceptions from the EGInfo object, as well as changes to the UI.
Testing wise this issue can be tested manually quite easy; start a cluster and submit a job that repeatedly fails (imaging a map function throwing an exception every N elements). Additional unit tests were added for all newly added components, and the DefaultSchedulerTest was extended to cover the history mechanism.
I hope this helps you out a bit.
I will leave this PR open for a few more days for further discussions, but please keep in mind that currently I'd be fine with merging it as is and don't want to delay that too much. We can always some things later in FLINK-21439 if there is a need for it.

Thanks @bytesandwich for pointing out that I haven't updated the PR description, yet. I should have done it earlier. And thanks @zentol for jumping in and explaining the context of this change.
I updated the PR's description and created a follow-up Jira issue FLINK-21867 to cover the parts that were actually planned for FLINK-21190 but then postponed. I also added explainations for that in the corresponding tickets.
Let us know if you have any further questions. It might make sense to move the discussion into [FLINK-21439](https://issues.apache.org/jira/browse/FLINK-21439], though, as @zentol suggested. ...if you have no questions about this PR specifically.

Thank you very much for the description @zentol! Also thank you @XComp for updating the description. I really appreciate your effort to help me understand :) I will try to pay it forward! I had one question about serializing an ExecutionGraphInfo that contains a DefaultExecutionGraph and I included it inline. PTAL @XComp .
My other question, @XComp  @zentol, if AdaptiveScheduler re-creates the ExecutionGraph repeatedly during execution of a job will we have one JobID with multiple ExecutionGraphInfos then? And then each of the ExecutionGraphInfos will have multple exceptions? Will we need to make ExecutionGraphStore.get(jobId) return a list of ExecutionGraphInfos (and all the other similar changes)?
It seems like this PR's REST API otherwise will work with one job -> many ExecutionGraphInfo -> many exceptions? Would that work in the GUI?

My other question, @XComp @zentol, if AdaptiveScheduler re-creates the ExecutionGraph repeatedly during execution of a job will we have one JobID with multiple ExecutionGraphInfos then? And then each of the ExecutionGraphInfos will have multple exceptions? Will we need to make ExecutionGraphStore.get(jobId) return a list of ExecutionGraphInfos (and all the other similar changes)?
It seems like this PR's REST API otherwise will work with one job -> many ExecutionGraphInfo -> many exceptions? Would that work in the GUI?

The initial motivation of ExecutionGraphInfo was to encapsulate the issue having multiple AccessExecutionGraph instances in place for a given job. The DefaultScheduler only has one AccessExecutionGraph instance during the job's lifetime. The AdaptiveScheduler might come up with multiple instances of AccessExecutionGraph as it might run into global failovers. Instead of having multiple ExecutionGraphInfo instances, you could extend ExecutionGraphInfo to support multiple AccessExecutionGraph instances. Alternatively, one could come up with a CompositeExecutionGraph implementing AccessExecutionGraph which aggregates the underlying collection of ArchivedExecutionGraphs. That might reduce the amount of code changes that are necessary to be done in the REST handlers.

The replacement of ArchivedExecutionGraph by AccessExecutionGraph/SerializableAccessExecutionGraph was removed and the branch was rebased to the most recent version of master.

I think any more things I'd like to figure out can happen as I do FLINK-21439. Thank you for helping me understand @XComp @zentol .


[BlackMythWukong] BPMod not work

Thank you to the developer for providing it version for BlackMythWukong,I can correctly obtain objects in the game, but there is a strange problem here, and I don't know if it's because Denuvo has taken effect
After I packaged the blueprint installation package with the PostBeginPlay method from ModActor, the game was able to correctly locate it after running, but it did not take effect.
In order to achieve the same effect, I tried to obtain a specific Lua Actor in the game, executed a piece of code, and the script did not report any errors,it seems work, but it also did not take effect
Finally, LineTraceMod was modified and tested. The code still runs correctly, but it seems that its functionality is limited and it cannot hit static mesh bodies
-- LineTrace
local UEHelpers = require("UEHelpers")

-- Importing functions to the global namespace of this mod just so that we don't have to retype 'UEHelpers.' over and over again.
local GetKismetSystemLibrary = UEHelpers.GetKismetSystemLibrary
local GetKismetMathLibrary = UEHelpers.GetKismetMathLibrary

local IsInitialized = false

local function Init()
    if not GetKismetSystemLibrary():IsValid() then error("KismetSystemLibrary not valid\n") end

    print(string.format("KismetSystemLibrary: %s\n", GetKismetSystemLibrary():GetFullName()))

    if not GetKismetMathLibrary():IsValid() then error("KismetMathLibrary not valid\n") end

    print(string.format("KismetMathLibrary: %s\n", GetKismetMathLibrary():GetFullName()))

    IsInitialized = true
end

Init()

local function GetActorFromHitResult(HitResult)
    if UnrealVersion:IsBelow(5, 0) then
        return HitResult.Actor:Get()
    elseif UnrealVersion:IsBelow(5, 4) then
        return HitResult.HitObjectHandle.Actor:Get()
    else
        return HitResult.HitObjectHandle.ReferenceObject:Get()
    end
end

local player= nil
RegisterHook("/Script/Engine.PlayerController:ClientRestart", function(self)
    player= self:get()
end)

local function GetObjectName()
    if not IsInitialized then return end
    local PlayerController = wukong
    local PlayerPawn = PlayerController.Pawn
    local CameraManager = PlayerController.PlayerCameraManager
    local StartVector = CameraManager:GetCameraLocation()
    local AddValue = GetKismetMathLibrary():Multiply_VectorInt(GetKismetMathLibrary():GetForwardVector(CameraManager:GetCameraRotation()), 50000.0)
    local EndVector = GetKismetMathLibrary():Add_VectorVector(StartVector, AddValue)
    local TraceColor = {
        ["R"] = 0,
        ["G"] = 0,
        ["B"] = 0,
        ["A"] = 0,
    }
    local TraceHitColor = TraceColor
    local EDrawDebugTrace_Type_None = 0
    local ETraceTypeQuery_TraceTypeQuery1 = 0
    local ActorsToIgnore = {
    }
    print("Doing line trace\n")
    local HitResult = {}
    local WasHit = GetKismetSystemLibrary():LineTraceSingle(
        PlayerPawn,
        StartVector,
        EndVector,
        ETraceTypeQuery_TraceTypeQuery1,
        false,
        ActorsToIgnore,
        EDrawDebugTrace_Type_None,
        HitResult,
        true,
        TraceColor,
        TraceHitColor,
        0.0
    )

    if WasHit then
        HitActor = GetActorFromHitResult(HitResult)
        print(string.format("HitActor: %s\n", HitActor:GetFullName()))
    else
        return print("Nothing hit.\n")
    end
end

RegisterKeyBind(Key.F3, GetObjectName)

Based on my understanding, I don't seem to be able to find a suitable solution because I don't have the ability to know the reason. He didn't report any error messages or give me some dmp files, so I tried to seek your help. Thank you
game:
BlackMythWukong
version:
UE4SS - v3.0.1 Beta #0 - Git SHA #0e84e2e8

I have the same issue, the loader seems to need an update

The mod on Nexus has been updated to fix BPModLoader.


commons-collections version is bumped

I deployed red5-parent this morning, not sure why Travis is still failing

I found the issue, i had updated the wrong pom.

great :)


Copy and %paste not working from Editor to IPython 0.10 console

From<EMAIL_ADDRESS>on 2011-11-08T13:13:26Z
This is issue #778 again. I had reported it fixed with a clean install, however this issue has now reappeared. It was working fine for a while, but suddenly no more.
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=829

From<EMAIL_ADDRESS>on 2011-11-08T10:15:19Z
This was off of a fresh install of Spyder 2.0.13.

From<EMAIL_ADDRESS>on 2011-11-10T02:12:07Z
Issue also appears on my Windows 7 machine with Spyder 2.0.12. Anyone else have trouble with %paste?

From ccordoba12 on 2011-11-10T12:14:37Z
Marcus, I just tested %paste in Windows with Spyder 2.1 and it's working well for me. Please upgrade to this version and tell us how it goes.

From ccordoba12 on 2011-11-20T22:25:34Z
Labels: Cat-Console

From pierre.raybaut on 2011-12-01T00:56:56Z
Labels: Component-IPython

From ccordoba12 on 2014-08-23T13:20:03Z
This was for our old IPython support, which is outdated now.
Status: WontFix


Fixes 4913: Update zero-state button to PF5

Catch up with other zero states, see https://github.com/RedHatInsights/insights-dashboard/blob/5bf9f1bdbc7720de71dff7dc5a11ffb60b0b2b6b/src/PresentationalComponents/ZeroState/ZeroStateBanner.js#L111
Before:

Now:

Other places:

https://issues.redhat.com/browse/HMS-4913

[test]

/retest

/retest

/retest

@swadeley seems that tests are failing. Is one test failing consistently or are different tests failing in different runs? Is there any chance that this PR affect this behavior?

Hi @marusak
I see now only  test_content_template_crud (webUI version) is failing. It is failing because ZeroState view is displayed and for some reason that was not anticipated. It is unrelated to this PR so I'll merge it and work to improve the tests.
Thank you


Could not resolve "../utils/constants" from<EMAIL_ADDRESS>

Package Name: @azure/storage-file-datalake
Package Version: 12.23.0
Operating system: Mac OS
[x] nodejs

version: 20.17.0

[x] browser

name/version: Google Chrome/128.0.6613.84

[x] typescript

version: 5.2.2

Is the bug related to documentation in

[ ] README.md
[ ] source code documentation
[ ] SDK API docs on https://learn.microsoft.com

Describe the bug
A clear and concise description of what the bug is.

I am using @azure/storage-file-datalake v12.23.0
constants file was missing from below path ad it causes dependency issue
node_modules/@azure/storage-file-datalake/dist-esm/storage-blob/src/utils
Which is used in below file
<EMAIL_ADDRESS>
To Reproduce
Steps to reproduce the behavior:

This issue occurs when I am trying to create docker image for my application

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

@maharudra3 I believe this has been fixed. You can try our beta version 12.24.0-beta.1, or wait for the GA release of 12.24.0

https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-datalake/package.json#L65

Hi @maharudra3 ,
We released GA version of 1<EMAIL_ADDRESS>about one month before. If you have tried with it, could you share the result to us?


Changed returned JWT token

Hi @Infra-Workleap,  I changed the code of the application to return a JWT token that can be successfully ingested by the classes ot the azure.identity Python package. This fixes #38.  Please approve the PR. Meanwhile, I will use my version.

@meziantou done. You can close this PR and approve #40


[change request] quickfix behavior when running :GoBuild

1.
After running :GoBuild if there are any errors, the quickfix window will appear listing any errors in the code;
If the errors are in the file in the current buffer, then instead of the cursor being focused on the quickfix window, can it be focused on the line where the error is?
2.
In the following scenario;
:GoBuild is ran, errors are reported -> errors fixed -> :GoBuild is ran successfully and no errors reported
After :GoBuild is ran the second time, would it be possible if the quickfix window would be automatically closed (seeing as the  errors are no longer there)
I'm happy to try and implement these changes myself, but would you mind pointing me in the direction to where these changes would need to be made?

In fact, I will be surprised that 1 does not work for you

The code to set quickfix is here
https://github.com/ray-x/go.nvim/blob/d5e2b8cdd84afdb0c49c42a6e8972acc645e0283/lua/go/asyncmake.lua#L345-L349
If you want to close the quickfix when there is no error. You can put logic there to check the output.

@ray-x  does 1 work for you?


docs: Describe what exactly capabilities are and what they do

We talk about them a lot in the docs but there is no canonical section on which capabilites exist or what they even do. https://hub.meltano.com/singer/docs#singer-connector-capabilities is not sufficient as its Singer specific.
A section likely in https://docs.meltano.com/concepts/plugins#discoverable-plugins would be very useful.

@tayloramurphy we do have https://docs.meltano.com/contribute/plugins#how-to-test-a-tap describing capabilities somewhat

@tayloramurphy -  I created a PR here: #6689


remove the zeroize bound from Secret's T

not possible to do this because the impl of Drop depends on this bound


Auto Bio doesn't respect 'Household table in biography' setting when off, incorrectly nests family census tables

Describe the bug
The Auto Bio feature has not been working properly in the most recent versions of WBE. With the 'Household table in the biography' option turned off, it still places tables in the biography. It has also been incorrectly nesting tables on most of the profiles I try with Auto Bio. It renders the feature unusable.
To Reproduce
Steps to reproduce the behavior:

Go to a profile, for example https://www.wikitree.com/wiki/Marsh-10401
Click on Edit, then Auto Bio.
Click on Preview.
See improper tables and unusable profile edit.
4b. Also spot the regressions in language "married was a mother-in-law, in the household of…" compared to the prior "was the married mother-in-law of …".

Expected behavior
Prior versions of WBE/Auto Bio did not experience this.
Screenshots

Desktop:

OS: macOS 12.6.5
Browser: Chrome 115.0.5790.170 (Official Build) (arm64)
Extension Version: 1.8.5

Additional context
I have tested with similar results when resetting WBE settings. I have also toggled the Household table option back on and off. I have restarted Chrome. I have turned off all other relevant extensions and tested again.

Thanks.


made filter optional

Allow to skip search parameter to get raw results

Hey @munzili,
could you elaborate on what adding &sp=EgIQAQ%253D%253D to the end of the URL does to the results? Is there any documentation regarding what these query parameters are? Thanks

https://ktsk.xyz/docs/programming/decoding-youtube-filters/

https://ktsk.xyz/docs/programming/decoding-youtube-filters/

Wait, I just realised that adding &sp=EgIQAQ%253D%253D was my own doing based on a design decision back then 🤦. I was going to figure out the filters myself actually, but I stopped working on this project. Maybe I'll get back to this soon. In the meantime, I'll merge the pr.


Livereload 404 Error

I'm getting these errors in my logs, I've tried to install the package from pip and also the django server package and added it to installed app and middle-ware but that didn't fix it.
[19/Dec/2022 09:22:49] "GET /livereload/128067681/128068068 HTTP/1.1" 404 179
[19/Dec/2022 09:22:52] "GET /livereload/128067681/128068068 HTTP/1.1" 404 179
[19/Dec/2022 09:22:55] "GET /livereload/128067681/128068068 HTTP/1.1" 404 179
[19/Dec/2022 09:22:58] "GET /livereload/128067681/128068068 HTTP/1.1" 404 179

How can I solve it?

Hey @damascene ,
livereload is neither part of that project nor Django itself.
Please try to find the documentation on that package in order that issue.
Thank you.


Edit and Post Recording from 6/24/2019 Community Call

Edit zoom recording from 6/24 call and post to YouTube channel for PresQT.

Edited and posted to OSF. Ready for Natalie to post to YouTube.


Display a list of driver modes in batch mode driver help.

In the spirit of https://bugs.swift.org/browse/SR-7704, the legacy driver prints out a list of MODES: when invoked in "batch-mode": swiftc --help.
This PR adds the same behaviour here.

@swift-ci please test

@swift-ci please test

Thanks, @cltnschlosser.

Thanks, @cltnschlosser.


Add Url Generators and PreloadUrl attribute documentation

Description
As title says. Just a reminder.
Example
No response

Done


Can't figure out how to launch ovpn-admin after installing it using Docker

I already had OpenVPN on my Ubuntu server and I decided to install the ovpn-admin using Docker but couldn't figure out how to launch the admin panel since bash said there's no file:
root@OpenVPN:~/ovpn-admin# ./ovpn-admin
-bash: ./ovpn-admin: No such file or directory

Here's a full log of installation and the attempt to launch it:
root@OpenVPN:~# git clone https://github.com/flant/ovpn-admin.git
Cloning into 'ovpn-admin'...
remote: Enumerating objects: 887, done.
remote: Counting objects: 100% (418/418), done.
remote: Compressing objects: 100% (151/151), done.
remote: Total 887 (delta 354), reused 268 (delta 267), pack-reused 469 (from 1)
Receiving objects: 100% (887/887), 1.05 MiB | 6.77 MiB/s, done.
Resolving deltas: 100% (524/524), done.
root@OpenVPN:~# cd ovpn-admin
root@OpenVPN:~/ovpn-admin# ./start.sh
WARN[0000] /root/ovpn-admin/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Building 100.6s (30/30) FINISHED                                                                                docker:default
 => [openvpn internal] load build definition from Dockerfile.openvpn                                                                           0.0s
 => => transferring dockerfile: 637B                                                                                0.0s
 => [ovpn-admin internal] load metadata for docker.io/library/alpine:3.16                                                                      0.8s
 => [openvpn internal] load .dockerignore                                                                                0.0s
 => => transferring context: 329B                                                                                0.0s
 => [ovpn-admin stage-2 1/5] FROM docker.io/library/alpine:3.16@sha256:452e7292acee0ee16c332324d7de05fa2c99f9994ecc9f0779c602916a672ae4        0.0s
 => [openvpn internal] load build context                                                                                0.0s
 => => transferring context: 3.09kB                                                                                0.0s
 => CACHED [openvpn 2/5] RUN apk add --update bash openvpn easy-rsa iptables  &&     ln -s /usr/share/easy-rsa/easyrsa /usr/local/bin &&       0.0s
 => CACHED [openvpn 3/5] RUN if [ -f "/usr/local/bin/openvpn-user-amd64" ]; then ln -s /usr/local/bin/openvpn-user-amd64 /usr/local/bin/openv  0.0s
 => CACHED [openvpn 4/5] COPY setup/ /etc/openvpn/setup                                                                                0.0s
 => CACHED [openvpn 5/5] RUN chmod +x /etc/openvpn/setup/configure.sh                                                                          0.0s
 => [openvpn] exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:fde3247d09dfc4b5d3cba173dbb4a2c54fab8b08c9dacfa53b0e9d929c285972                                                   0.0s
 => => naming to docker.io/library/openvpn:local                                                                                0.0s
 => [openvpn] resolving provenance for metadata file                                                                                0.0s
 => [ovpn-admin internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 1.15kB                                                                                0.0s
 => [ovpn-admin internal] load metadata for docker.io/library/node:16-alpine3.15                                                               0.6s
 => [ovpn-admin internal] load metadata for docker.io/library/golang:1.17.3-buster                                                             0.7s
 => [ovpn-admin internal] load .dockerignore                                                                                0.0s
 => => transferring context: 329B                                                                                0.0s
 => [ovpn-admin frontend-builder 1/3] FROM docker.io/library/node:16-alpine3.15@sha256:ecf74556cdeee48382e555a377ddb12d36161bd33349dc79290f73  0.0s
 => [ovpn-admin internal] load build context                                                                                0.1s
 => => transferring context: 1.67MB                                                                                0.0s
 => [ovpn-admin backend-builder 1/5] FROM docker.io/library/golang:1.17.3-buster@sha256:ee3a388a872237ddb600de3ab9512e73df0043f8878f0f355baeb  0.0s
 => CACHED [ovpn-admin backend-builder 2/5] RUN go install github.com/gobuffalo/packr/v2/packr2@latest                                         0.0s
 => CACHED [ovpn-admin frontend-builder 2/3] COPY frontend/ /app                                                                               0.0s
 => CACHED [ovpn-admin frontend-builder 3/3] RUN apk add --update python3 make g++ && cd /app && npm install && npm run build                  0.0s
 => CACHED [ovpn-admin backend-builder 3/5] COPY --from=frontend-builder /app/static /app/frontend/static                                      0.0s
 => [ovpn-admin backend-builder 4/5] COPY . /app                                                                                0.1s
 => [ovpn-admin backend-builder 5/5] RUN cd /app && packr2 && env CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -a -tags netgo -ldflags '-l  97.5s
 => CACHED [ovpn-admin stage-2 2/5] WORKDIR /app                                                                                0.0s
 => CACHED [ovpn-admin stage-2 3/5] COPY --from=backend-builder /app/ovpn-admin /app                                                           0.0s
 => CACHED [ovpn-admin stage-2 4/5] RUN apk add --update bash easy-rsa openssl openvpn coreutils  &&     ln -s /usr/share/easy-rsa/easyrsa /u  0.0s
 => CACHED [ovpn-admin stage-2 5/5] RUN if [ -f "/usr/local/bin/openvpn-user-amd64" ]; then ln -s /usr/local/bin/openvpn-user-amd64 /usr/loca  0.0s
 => [ovpn-admin] exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:cd6ba3b1a0147acd08f95d3fc1ff9b8e85bad20bd09f48a038c2fff560fc62df                                                   0.0s
 => => naming to docker.io/library/ovpn-admin:local                                                                                0.0s
 => [ovpn-admin] resolving provenance for metadata file                                                                                0.2s
[+] Running 2/2
 ✔ Container openvpn-master-openvpn-1     Started                                                                                0.8s
 ✔ Container openvpn-master-ovpn-admin-1  Started                                                                                1.1s
root@OpenVPN:~/ovpn-admin# ovpn-admin
ovpn-admin: command not found
root@OpenVPN:~/ovpn-admin# ./ovpn-admin
-bash: ./ovpn-admin: No such file or directory

I'm on Ubuntu 24.04 and here's docker version:
root@OpenVPN:~/ovpn-admin# docker version
Client: Docker Engine - Community
 Version:           27.1.2
 API version:       1.46
 Go version:        go1.21.13
 Git commit:        d01f264
 Built:             Mon Aug 12 11:50:54 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          27.1.2
  API version:      1.46 (minimum version 1.24)
  Go version:       go1.21.13
  Git commit:       f9522e5
  Built:            Mon Aug 12 11:50:54 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.7.20
  GitCommit:        8fc6bcff51318944179630522a095cc9dbf9f353
 runc:
  Version:          1.1.13
  GitCommit:        v1.1.13-0-g58aa920
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

And here's running docker containers:
root@OpenVPN:~/ovpn-admin# docker container ls -a
CONTAINER ID   IMAGE              COMMAND                  CREATED        STATUS                      PORTS     NAMES
b57a6704954f   ovpn-admin:local   "/app/ovpn-admin"        10 hours ago   Up 16 minutes                         openvpn-master-ovpn-admin-1
78d5ad171d20   openvpn:local      "/etc/openvpn/setup/…"   10 hours ago   Exited (1) 16 minutes ago             openvpn-master-openvpn-1
11028400fadb   hello-world        "/hello"                 10 hours ago   Exited (0) 10 hours ago               jolly_lumiere

same problema, have no ideia now what to do....


Readme: "requirements without setup.py" section doesn't warn that it considers existing requirements.txt file

I just've lost couple of hours trying to figure out why pip-compile resolves my requirements.in to some old versions of packages. I'd like to propose adding a note to "requirements without setup.py" readme section, that would mention how to migrate from "plain requirements.txt workflow" to "requirements.in with pip-tools" without confusion.
Steps to replicate

Have requirements.txt with some package pinned.
Follow Readme in Example usage of pip-compile -> Without setup.py.

Expected result
Readme in this section warns the reader that his existing requirements.txt might interfere.
Actual result
Readme doesn't warn and reader is confused with the result of pip-compile.

Hello @m-aciek,
Thank you for the report! It's a good idea. I think the "without setup.py" section could be rephrased something like:

If you don't use setup.py (it's easy to write one), you can create a requirements.in (make sure you don't have a requirement.txt file, otherwise... etc) file to declare the Flask dependency:

@vphilippon WDYT? English native speaker needed here :)

Can I work on this? seems easy :smile:


Fix print statement

I noticed there is a small incompatibility between Python 2 and 3, as it is using print with kwargs, which is a syntax error in Python 2.

thanks

Since this was not caught earlier, this file is not being tested. In fact, I have just realised, it is importing two modules that are not declared in setup.py nor used. Fixing it in: https://github.com/SheffieldML/GPy/pull/227

Test coverage is much lower than it should be. We need to do better.
On 4 Sep 2015 14:48, "Dapid"<EMAIL_ADDRESS>wrote:

Since this was not caught earlier, this file is not being tested. In fact,
I have just realised, it is importing two modules that are not declared in
setup.py nor used. Fixing it in: #227
https://github.com/SheffieldML/GPy/pull/227
—
Reply to this email directly or view it on GitHub
https://github.com/SheffieldML/GPy/pull/224#issuecomment-137727342.


Not working in W10  high contrast enabled

Hi folks,
I intalled v3.21 in Windows 10 using High Contrast due my visually impaired.
Menus, text are not shown. It causes I can't use NPE...
You can test it pressing left Alt+left Shift+Print Screen.
Thank for understanding

print screens:

The start screen isn't in high contrast at all?

Unfortunately I don't have any experience with high contract mode, so any help would be highly appreciated!

helpful resource: https://blogs.msdn.microsoft.com/wpf/2010/11/30/systemcolors-reference/

Hi,
I'm in trouble with these colors combinations:

white foreground + gray background
dark red/dark blue foreground + black background.

High Contrast Black is the solution. I think this is the combination that VS (2013 and higher) uses
when HC is on.
In my WPF apps I use two themes: Dark and Light. By default I load Dark. This theme is not a real HC but it helps me developing.
I detect HC changes at App (where I set themes there):
`
public App()
{
Microsoft.Win32.SystemEvents.UserPreferenceChanged += (s, e) =>
{
if (e.Category != Microsoft.Win32.UserPreferenceCategory.Accessibility)
return;
            if (SystemParameters.HighContrast == true)
                System.Diagnostics.Debug.WriteLine("UserPreferenceChanged: HC is ON");
            else
                System.Diagnostics.Debug.WriteLine("UserPreferenceChanged: HC is OFF");
        };

        if (SystemParameters.HighContrast == true)
            System.Diagnostics.Debug.WriteLine("Startup: HC is ON");
        else
            System.Diagnostics.Debug.WriteLine("Startup: HC is OFF");
    }

`
Hope this can help you

There is a lot of "home made" styling in the application and as far as I can see the easiest would be to strip it all out and use standard system colors instead, and we would get high contrast more or less for free.
I've done an early attempt here:
https://github.com/petterlabraaten/NuGetPackageExplorer/tree/accessibility

Hi Petter:
Good job! Just few issues to solve:

see dark blue text: can not read when background is black. A light colour should be more comfortable instead dark colour (blue in this case).

Same edit window :

Changing Syntax scheme to Patch or Plain Text I can read it comfortable:

Do not detect other issues.
Thanks a million!

I've made some changes to the things @jmroyb  pointed out. Have a look.
In my opinion colors and font sizes should be handled by the OS and not by the application itself. It's a tool that doesn't rely on a lot of fanzy colors and themes.

hey @petterlabraaten
thanks for the demo.
Any way, I looked at this also, but it has a huge effect on the default colors? Could we make it into a setting?

FYI created a PR to see the changes and to make it easier to find your branch :)
https://github.com/NuGetPackageExplorer/NuGetPackageExplorer/pull/194

Hi @petterlabraaten,
Fantastic! Now it is very confortable. When HC is ON Plain Tex as default, ligth forecolor/black brackground and large font.
Thank you very much for your work

@304NotModified I guess there are three options (probably more, but this isn't my area at all):

The way I did, using SystemColors. IMO this will be more maintainable in the long run, but we might not get the exact theme and colors that we're used to.

Duplicate the style and have one for normal and one for high contrast mode. Quick and dirty and will give us twice the amount of styles to maintain.

Extract all colors and backgrounds into a seperate resource dictionary , one DefaultColors.xaml, and one HighContrastColors.xaml then rewrite current styles to reference these colors instead of the hard coded ones that are there today. There are like 90 or so hardcoded hex-colors just for the menus and toolbars, and if we add named colors and special background images it will ba a 'small' initial job.

Anyway, I can have a got at reproducing my "demo" using option three. When I find time.

Hi folks,
NPE 3.23 still does not implements High Contrast. When it will be available?
Cheers


VSC WLC friction logging 1.0.14

this becomes

File:
import pandas as pd
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten, Dropout, MaxPooling2D, GlobalAveragePooling2D
from tensorflow.keras.preprocessing.image import ImageDataGenerator
from tensorflow.python.keras.models import Model
from tensorflow.python.keras.applications import xception
import os
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv("data.csv")
batch_size = 64
epochs =

Would love to not get 0 here.
Epochs and image height are going to be >0

still 0

weird behaviour where I tried to delete the square braces to type 0.1

For this number, it put me into snippet completion, nice.

Repeated suggestion.
Sorry, didn't have logging set to ALL

import pandas as pd
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv2D, Flatten, Dropout, MaxPooling2D, GlobalAveragePooling2D
from tensorflow.keras.preprocessing.image import ImageDataGenerator
from tensorflow.python.keras.models import Model
from tensorflow.python.keras.applications import xception
import os
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv("data.csv")
batch_size = 64
epochs = 20
IMG_HEIGHT = 150
IMG_WIDTH = 150
trainim = ImageDataGenerator(rescale=1./255, horizontal_flip=True, vertical_flip=True, rotation_range = 75, width_shift_range = 0.1, height_shift_range = 0.1, brightness_range = [0.8,1.2], zoom_Range = 0.1)
validation_image_generator = ImageDataGenerator(rescale=1./255)
dataset = pd.read_csv("/content/drive/My Drive/course/train.csv")
dataset
train = dataset.iloc[:4000].reset_index()
train
val = dataset.iloc[4000:].reset_index()
from shutil impmort import impmort
and

Going to close this since we're now on 1.0.15.


Enable NestMate tests for openj9

Enable all NestMate jtreg tests for openj9
Test could be run nightly or run by grinder
Signed-off-by: Sophia Guo<EMAIL_ADDRESS>

https://ci.adoptopenjdk.net/view/work in progress/job/test_personal/752/console
Six failed, Six error.
Errors due to no test image, will exclude
Will take a look at failures see if hotspot has same issue.

I am not sure what is the appropriate approach with respect to the inclusion of the TEST.ROOT files.  I presume they are coming from the openjdk repo, as their copyright headers indicate.  We have included some in previous PRs (as per @andrew-m-leonard request).  But I would like to confirm that we are okay to include them into this repo, @tellison advice?

merge conflicts

@smlambert conflicts resolved. Just to confirm copyright licenses issue, is it good?

@karianna - Do you have advice on my question above?
https://github.com/AdoptOpenJDK/openjdk-tests/pull/558#issuecomment-421784983
we are overlaying the TEST.ROOT files from openjdk here, and one of them has a copyright header (that is not same copyright as rest of AdoptOpenJDK), the other files have no copyright headers

Ah right, so Nestmates is a Hotspot only construct.  Looking at the files now.

@ShelleyLambert So GPLv2 is incompatible with Apache Version 2.0.  So if this repo is intended to be Apache version 2.0 licensed then we'll have to remove those files.

@sophia-guo - we can discuss today.  We need to change the approach, where we will have to copy over files at runtime (as we do with test material) not store in repo.

Depends on https://github.com/AdoptOpenJDK/openjdk-tests/pull/740 we will not need to store TEST.ROOT. Tests will be grabbed from openj9 extension repo https://github.com/ibmruntimes/openj9-openjdk-jdk**.  Issue opened at https://github.com/ibmruntimes/openj9-openjdk-jdk11/issues/77

This is resolved  by #1327 #1337 #1342.


fix: non-active exchange symbols

Description
Based on #476 we found that the Binance API is returning all their symbols even the non-active ones.
Hence, this PR is going to squash those non-active symbols from our exchange symbols list.
Related Issue
#476
Motivation and Context
How Has This Been Tested?
Write tests to check if the symbols were filtered correctly or not.
Screenshots (if appropriate):

Hi @habibalkhabbaz
It can cause confusion during the time when Binance is in maintenance.
It may remove all symbols as it's not TRADING during maintenance.
Exchange info returns the symbol status as the below link

https://github.com/binance/binance-spot-api-docs/blob/master/rest-api.md#enum-definitions

And some good summary of it.

https://dev.binance.vision/t/explanation-on-symbol-status/118/2

It's a bit hairy because BREAK can be just in some downtime.
I had some thought about it.
What if we simply allow selecting from the setting, but show the symbol status in the UI?

For example, if it's TRADING, then show this loading indicator. If not TRADING, show an exclamation mark with some notes.
You may have a better idea.

Hello @chrisleekr
You are right 💯
After reading the summary I understood that it's better to keep the symbols.
However, I think twice to make things easier :)
Besides your suggestion, what do you think about the following?

Selecting symbols from Settings (Before)
Selecting symbols from Settings (After)

No indicators
Green dot blinking

I think like this will be easier to catch.

@habibalkhabbaz that is much better idea!

Done @chrisleekr
I also added a warning when a symbol stopped working.

@habibalkhabbaz It will be also useful to add new symbol to main screen immediatelly to be visible. Currently it is waiting for the first price change which will make this indication useless. If I add multiple inactive symbols then I even see the number of pages is incremented but selecting the last page I'll get empty screen without any indication what's wrong.

@habibalkhabbaz It will be also useful to add new symbol to main screen immediatelly to be visible. Currently it is waiting for the first price change which will make this indication useless. If I add multiple inactive symbols then I even see the number of pages is incremented but selecting the last page I'll get empty screen without any indication what's wrong.

You are right @uhliksk
We may have to call the queue whenever new symbol added.
Give me sometime to work on this.

Done @uhliksk @chrisleekr
Now it will call queue.executeFor just after populating candles to mongo DB.
This will ensure that all symbols will be inserted into the trailing-trade-cache collection even if no ticker is received and it will show up on the frontend immediately.

Great job @habibalkhabbaz!

@habibalkhabbaz @uhliksk
Hey guys,
Is this ready to review/merge?

@habibalkhabbaz @uhliksk
Hey guys,
Is this ready to review/merge?

Hello @chrisleekr
Sure, it's ready for review.


[v2] Improve the setup script

You can build a minimal image as follows:
$ mkdir emlinux
$ cd emlinux/
$ mkdir repos
$ git clone -b pr-setup-script-3 https://github.com/hiraku-wfs/meta-emlinux.git repos/meta-emlinux
$ SYNC_POKY=1 source repos/meta-emlinux/scripts/setup-emlinux build
$ echo "MACHINE = \"qemuarm64\"" >> conf/local.conf
$ bitbake core-image-minimal

LGTM. I'll merge it.


Fix column lookup

Since recent changes, the version entity column was missing from the descendants of Aggregate, ProcessManager, and Projection. This PR fixes the column lookup mechanism so that this column is present.
This PR patches the version 1.0.0-pre7.

@armiol, PTAL.


Fix unicode decode error

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/path/to/vim-cmus/plugin/cmus.py", line 117, in <module>
    makeTaggedStatus()
  File "/path/to/vim-cmus/plugin/cmus.py", line 93, in makeTaggedStatus
    statusMessage = u'\u266a {t[status]}: {t[artist]} '.format(t=tags)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)

on my machines the sys.stdout.encoding has been set into utf-8 by default (both in tty and .vimrc)
thank you for the pull request, its a better idea to explicitly define the final encoding.


Entering ' in a numeric input widget breaks the node

By accident I typed 8' in a number input widget and pressed enter.
https://github.com/enso-org/enso/assets/1436948/10c1862b-7264-49d5-9ccb-2d96e204fea9
Actual behaviour
operator3158.filter 'Grade' ( ( (Filter_Condition.Equal) ( 8 ( '))))

This led to the node becoming unparseable and display wrongly in the GUI.
Expected behaviour
The value should not be submitted, I probably should get some warning that ' is not a valid character in the numeric input.
Definitely the node should not become unparseable.

REfinement notes:

We could fix unclosed text literals set in widgets as a part of "fixing AST" - TextLiteral printer could do that.


Clarify when consumes/produces take effect

The 2.0 specification has the top-level consumes and produces properties, as well as for each operation.
When the operation is one whose HTTP method's definition doesn't include a payload semantic (most prominently GET, but also HEAD and DELETE, maybe OPTIONS), there is no point in saying the operation "consumes" anything (and there is no point in sending a Content-Type header when there is no body.)
On the operation level thus "consumes" should be forbidden for such operations, and the top-level "consumes" property should be declared in the description to not apply for such operations.
This was triggered by Issue https://github.com/swagger-api/swagger-codegen/issues/2254.

+1

Not getting into the argument of whether it makes sense to send a payload to a GET but at the end of the day, the HTTP spec does not explicitly prohibits sending a payload with GET operations, and the fact is that some APIs do that. Saying that GET requests don't consume anything is not always true (and also DELETE, HEAD and OPTIONS).
As for the codegen, as long as there's no body parameter, the consumes value is meaningless, regardless of which HTTP verb is used (including POST, PUT), and that should be the guiding line.

@webron The guideline "consumes only applies where there is a body parameter" (and maybe in extension also "produces only applies for responses with a schema") sounds good. My proposal is to include an explicit mention of this in the next version of the specification.

Sure thing, that makes perfect sense, and the part about produces is accurate as well. I've changed the title to reflect the intent here. Note that this is just a clarification and not a change in behavior really - I'd expect existing tools to behave that way with the current version as well, including the codegen.

Parent issues: #589, #560

Well, both consumes and produces have been removed and replaced by better mechanisms for their respective representations.


.find by level broken

I think this is my fault - many apologies Mike!
When refactoring the variable names I must've broken the level= logic, such that the following test (which I've added to test_log2d.py)  doesn't work  but should!:
@create_mylog
def test_find_levels():
    Log.mylog.info("Oneline")
    assert mylog.find(level="error") == []
    assert mylog.find(level="ERRor") == []
    assert len(mylog.find(level="info")) == 1
    assert len(mylog.find(level="InFo")) == 1

This test is also failing for the same reason:
def test_find_by_level():
    create_dummy_log()
    mylog.logger.error(f"Message: Yet another last line")
    result = mylog.find(text="error")
    assert "ERROR" in result[0], f"FIND5: ERROR message not found"
    result = mylog.find(text="error", ignorecase=False)
    assert not result
    result = mylog.find(level="error")
    assert len(result) == 6, f"FIND6: Expected 6 records, found {len(result)}"
    cleanup()

I'm hoping you can spot where I've gone wrong and put it right using PEP8/snake_case variable names please?
I owe you!

Fixed in pull request #17


Add BEIR-PL datasets to MTEB

Add tasks and updated README for datasets in BEIR-PL (BEIR benchmark in Polish language).

I have updated names to ArguAna-PL, it seems to be the most readable option, but if you want other names standardization I can change it.
We can merge it and I will add another PR for all CQADupstack and Touche datasets.


[backport] Fix typo in F.squeeze documentation

Backport of #7682

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit b55b2b412fd31d0b830f579bf6d65159fd246e6d, target branch v6) failed with status FAILURE.


Add transaction_success = TRUE or FALSE to filter failed transactions on Solana (TOKEN_TRANSFERS)

I can't filter out failed transactions in ClickHouse. Right now, there isn't an easy way to separate successful transactions from the ones that failed, which makes it harder to analyze the data.
It would be great to have a transaction_success flag that we can set to TRUE or FALSE in queries. This would let us quickly filter transactions based on whether they succeeded or failed. For example:
transaction_success = TRUE: Shows only successful transactions.
transaction_success = FALSE: Shows only failed transactions.
This would make querying a lot more efficient and straightforward.
This feature would make it easier to work with transaction data

@0xweb3dev happy to add this. Can you provide the queries you use to identify whether a transaction was successful or failed? Solana or Ethereum?
A few options:

we can add a Materialized column if this is simple to compute to the existing transactions table
we can filter successful and failed transactions to seperate tables using a MV.
We can maybe consider adding it during data insertion. @jling

@0xweb3dev dude they replied to your issue with your question, why ignore?


how to use a static toolbar?

I'm gonna lookin for a solution to toolbar doesn't stay floating around word selection. Instead I wanna make the toolbar static and fixed in a certain position. How do I achieve that?
I looked around the code and saw something like static toolbar , maybe a there is a hook but undocumented thing that can help me. How the way?

Please look at https://github.com/yabwe/medium-editor/blob/master/OPTIONS.md#static-toolbar-options

great big @j0k3r

Couldn't use relativeContainer
Uncaught TypeError: this.relativeContainer.appendChild is not a function
at child.init (board.js:5895)
at initExtension (board.js:6856)
at MediumEditor.initExtensions (board.js:7094)
at MediumEditor.setup (board.js:7250)
at MediumEditor.init (board.js:7229)
at MediumEditor (board.js:441)
at Content.newshare (board.js:10615)
at HTMLAnchorElement.<anonymous> (board.js:10358)
at HTMLAnchorElement.dispatch (board.js:5)
at HTMLAnchorElement.q.handle (board.js:5)


Allow change who's playing during the game

In some cases a player might not be able to finish a game, in which case that player could be replaced with a bot or another player (a guest switching to another guest for example, until #108 is fixed).
Questions:

How to save this information/change in database?
How to show this information when watching a replay or when playing a game?

For games like Codenames it's especially nice if people can jump in/out of the game. (Out might not be necessary as at least the Spymasters should be in the game the whole time, and any person in the team can click).
Although it could be solvable just by adding new players as observers, it's nice if new players can be added to a team (easier to keep track of the teams at least).

For Codenames Duet it would be really helpful if people could join a team during the game

This game of Avalon was affected by this :( https://games.zomis.net/#/games/Avalon/42a0c57d-752b-432d-8a42-2b43e13aa61b

Maybe it would be possible to allow multiple players to have the same playerIndex? Or at least being set to the same "controller/view" playerIndex. That way if a player would disconnect and another player would magically appear, both of them could be set as the controller of a specific playerIndex, so both of them would be able to perform actions and see the same things.
Additionally, in games like Codenames it's ok to have multiple people being Spymaster. The site at codenames.game has done a great implementation of all this (it is the official page after all)

With inspiration from other sites, it would be nice to be able to reorganize some players - switch player positions essentially. Maybe only the creator of the game should be able to do this.
Then also have a "reset" button to re-make the setup process to randomize game state again

An idea is to make a "#meta" action type that includes changes of who's playing in a game, it could also include game resets (with the new randomness stored as state) and walkover/player-timeout information and other details.
Some games should allow dynamically more players, like Decrypto, which should be configurable easily in DSL

Frontend: Put something (icon? button?) at the top left where it says for example "Zomis' Games - Dungeon Mayhem"
Use a little drop-out that allows giving access rights to various players.
Also try to detect non-active players (Server will be aware of any disconnections) and give a possibility for the game host to replace those players. This possibility should be a bit restricted as there could be potential for abuse.