loss=nan in training after adding "--max-source/target-positions 2k" to my working model

❓ Questions and Help
Before asking:

search the issues. DONE
search the docs. DONE

What is your question?
I have a working transformer model, for a document level seq2seq simple task. I built a baseline to begin, with generic hiperparameters taken from a NMT example, which works quite well (I need to add BPE and more data, and tune training hyperparameters to improve it, but the model trains and generated somehow the expected output).
But as it is a document to document task, I need to increase the max seq length from 1024 to at least 2-3K (max length of the valid/test dataset), and ideally to 4k.
I understand, from the documentation and some answers here, that that this is achieved using --max-source-positions and --max-target-positions in the default --task translation.
But when I try to train this model, my loss becomes in "nan" from the 1st batch.
I don't know if i'm doing something wrong, I didn't understood how to use --max-target-positions correctly, I have to tune the hyperparameters of the transformer after increasing the length, or what's causing this nan loss problem.
Thaks for taking the time to help on this.
Gorka
Code
THIS IS WORKING CORRECTLY:
fairseq-preprocess --source-lang src --target-lang trg --trainpref data/train_ARRAU_seq --validpref data/dev_ARRAU
 --testpref data/test_ARRAU --destdir data-bin/text2cor.seq --workers 8

fairseq-train data-bin/text2cor.seq --arch transformer_iwslt_de_en --optimizer adam --adam-betas '(0.9, 0.98)'
--clip-norm 0.1 --lr 5e-4 --lr-scheduler inverse_sqrt --warmup-updates 4000 --dropout 0.3
--weight-decay 0.0001 --criterion label_smoothed_cross_entropy --label-smoothing 0.1 --no-epoch-checkpoints
--num-workers 8 --max-epoch 10 --save-dir checkpoints/transformer_text2cor_seq
--skip-invalid-size-inputs-valid-test --max-tokens 4096 --update-freq 8

fairseq-generate data-bin/text2cor.seq --skip-invalid-size-inputs-valid-test
--path checkpoints/transformer_text2cor_seq/checkpoint_best.pt --beam 5

THIS IS WHERE I GOT THE NAN LOSS PROBLEM:
fairseq-train data-bin/text2cor.seq --arch transformer_iwslt_de_en --optimizer adam --adam-betas '(0.9, 0.98)'  --clip-norm 0.1 --lr 5e-4 --lr-scheduler inverse_sqrt --warmup-updates 4000 --dropout 0.3  --weight-decay 0.0001 --criterion label_smoothed_cross_entropy --label-smoothing 0.1 --no-epoch-checkpoints  --num-workers 8 --max-epoch 10 --save-dir checkpoints/transformer_text2cor_seq  --skip-invalid-size-inputs-valid-test --max-tokens 4096 --update-freq 8  --max-source-positions 2048 --max-target-positions 2048
...
| [src] dictionary: 18264 types
[trg] dictionary: 1728 types
| loaded 18 examples from: data-bin/text2cor.seq/valid.src-trg.src
| loaded 18 examples from: data-bin/text2cor.seq/valid.src-trg.trg
| data-bin/text2cor.seq valid src-trg 18 examples`
...
| model transformer_iwslt_de_en, criterion LabelSmoothedCrossEntropyCriterion                                                                                | num. model params: 42663936 (num. trained: 42663936)                                                                                | training on 1 GPUs                                                                                | max tokens per GPU = 4096 and max sentences per GPU = None                                                                                | no existing checkpoint found checkpoints/transformer_text2cor_seq2k/checkpoint_last.pt                                                                                | loading train data for epoch 0                                                                                | loaded 609781 examples from: data-bin/text2cor.seq/train.src-trg.src                                                                                | loaded 609781 examples from: data-bin/text2cor.seq/train.src-trg.trg                                                                                | data-bin/text2cor.seq train src-trg 609781 examples
| WARNING: 11644 samples have invalid sizes and will be skipped, max_positions=(2048, 2048), first few sample ids=[96983, 96942, 96984, 97067, 97027, 96943, 96944, 96902, 96858, 96945]                                                                                | NOTICE: your device may support faster training with --fp16
| epoch 001:   0%| | 1/12560 [00:01<5:52:58,  1.69s/it, loss=nan, nll_loss=nan, ppl=nan, wps=3122, ups=0, wpb=27607.000, bsz=35.000, num_updates=1, lr=1.25e-07, gnorm=n
| epoch 001:   0%| | 2/12560 [00:02<5:16:01,  1.51s/it, loss=nan, nll_loss=nan, ppl=nan, wps=24736, ups=1, wpb=27385.500, bsz=38.500, num_updates=2, lr=2.5e-07, gnorm=n
| epoch 001:   0%| | 3/12560 [00:03<4:49:35,  1.38s/it, loss=nan, nll_loss=nan, ppl=nan, wps=25190, ups=1, wpb=27569.000, bsz=39.333, num_updates=3, lr=3.75e-07, gnorm=n
What have you tried?
I tried training with an smaller --lr, different --max-tokens and --update-freq, and --fp16 settings, but I get the same issue.
What's your environment?

fairseq Version: 0.9.0
PyTorch Version: 1.6
OS (e.g., Linux): Linux
How you installed fairseq (pip, source): I would have to ask it
Build command you used (if compiling from source): I would have to ask it
Python version: 3.6.8
CUDA/cuDNN version: I would have to ask it
GPU models and configuration: 1 x Rtx2080Ti

can you look at the actual input and target samples you are using and see if they make sense? if everything works with fewer max-positions and stops working when you increase it, its very likely a data problem

i tried to train with 1025 max-positions, and i already got the loss=nan problem, so next, I will check the data as you suggested, to see if that the source of the problem.
Thanks.

Hi,
I filtered the dataset into sequences shorter than 1024 (1020 to avoid problems), and it works properly.
Then, I added a single instance of length 1025 on target (source sequences are a bit shorter at this task (coreference)). And when I trained the system with --max-source-positions 2048--max-target-positions 2048 , loss converted into nan when the long sequence is taken for training.
So now we know that that single training instance is causing the problem. I open it, and there is nothing strange about it. it looks well formed, the vocab used in source is shared with the rest of training data as I am augmenting the training set with diferent sequences of diferent lengths from the same documents, so the tokens are repeated. about the target sequence, its a representation of the coreference anotation, created by my code, which should'nt give any problem.
Here it's the source sequence:
but I do n't he 's wearing like an apron with huge pockets . But I do n't think you see the apron at first . I do n't know if that 's important or not . And uh and then he gets down out of the tree . and he dumps ail pears into the basket and the basket 's full . and one of the pears drops down to the floor . and he picks it up . and he takes kerchief off . and he wipes it off . and places it in in the basket which is very full . That 's why it fell off in the first place . And um then he climbs back up the ladder . and he and he starts picking pears again . And then while he 's up in the ladder . let 's see is it while he 's up in the ladder . Or or before . Um anyway . a guy comes by leading a goat . And the goat 's aaarrr but and they do n't talk to each other . they do n't I do n't think they even look at each other . and the guy walks by . And you watch the goat . disappearing all the way . and then then you 're back to the man in the tree . And he 's up there in the tree . And then definitely when he 's up there . a kid comes by on a bicycle . From the direction where the goat man left . okay . And Um the bicycle 's way too big for the kid . I 'm giving you all these details . I do n't know if you want them . Um the the reason I 'm giving you the details is cause I do n't know what the point of the movie was . Okay . So maybe you can see something that I did n't . Okay .  And the movie had sound track . It 's important . And then the mo the whole movie started with a a cock crowing . And then you see . Anyway . I just remembered that . Anyway . so um the kid on the bicycle . gets off the bicycle . I think he he picks up the b-asket of pears and he puts it on blcycle . on the front . And he rides off . And you see him . riding off and the next scene you see him . like at a at a distance . a pan shot . And he 's riding on a lane . riding on a bicycle and they cro you know . Cross paths . And he kind of watches her go by . And because he 's watching her . he when he turns around hat flies off . Okay . And then he bumps into a rock .  He 's like maybe what . ten or something . Twelve . I do n't know . And and you look at them . and and they see him . and they come up . and without saying anything . there 's no speech in the whole movie. . without saying anything . they um help him put the pears back in the basket . Only they do n't wipe them off first . Just pick them up . and pour them in . And theyhelp him get bike up . and one kid takes the rock that he tripped on and he throws it off to the side of the road . and and they set him upright . and they and then he you know they I don1they do n't say thank you . he just splits .  And so one of them whistles . And the kid on the bike turns around . and then he brings hat to him . and the g guy on the bike gives the other kids gives the kid that returns hat three pears to share with buddies . So and then he splits . With hat . with pears . everything . And um I just remembered another detail . Before he meets the girl . One of the pears . 1t 's a bumpy road little dirt road . one of the pears flies out . Whatever . And Um then you do n't see the kid with the bike with the pears anymore . And the three kids that are walking . one of them has a what do you call those little um paddleball . You know . with a ball on a uh chong chong chong chong . So they 're walking along . and they brush off pears . and they start eating it . Then they walk by the man who was picking the pears . Who looks like a Mexican-American if that 's important .  And he sees and and there 's one full basket of pears there . and and an empty basket .


Clean up the v2 manual a bit

What type of PR is this?

cleanup
documentation

What this PR does / why we need it:
includes:

running each example through goimports
wrapping text at ~80 cols
consistently using &cli.App{...}
consistently using code example gates
removing trailing blankspace

Which issue(s) this PR fixes:
N/A 😬

@joeycumines Totally fair! ❤


Shortened Cult Application

So instead of just proposing we replace the application or "fix what's broken", we just have two applications for something Rachel wants to try and might be easier on both cultists to speed up the process and make following up on apps more interesting. The goal here is to shorten the application to essential information and then to have the potential cultist be interviewed, which could also lead into finding their gear. The questions during the interview could either be a separate document or just filling out the non-junk questions on the normal application for the interviewer, which we retain for record-keeping.
Due to the length of this application, we could add in a web-interface and even have some kind of media-app experience inworld, but you guys have said you don't like that so here's a compromise.

Any reason I shouldn't merge this?

This PR is way out of date because we're using the Google Form. Does this need to be updated or can I close it?


Do not work

I try to use your flow sample, and it do not work, any hints ?

Unfortunately the project appears to be abandoned and the documentation is practically non-existent.
That being said, you can make the example work by adding double quotes (") around the field names in the sample JSON.
The input data is fed as a similar JSON array with the values for the defined column names.
Check out http://tabulator.info/ for other customisations.

The project is still running, I have been unable to spend time on it due to paid work commitments and COVID issues.
As far as documentation is concerned, I will try to add some code comments, however its quite straight forward to follow.
Also, I will be doing an update very soon due to tabulator updates etc.

I am happy to hear that and looking forward to it. Your last commit however is from 9 months ago, and the entire half-page documentation includes code samples that is not formatted and does not work. I would beg to differ that it is quite straight forward to follow. This issue was also opened about five months ago with no comments from you. That's why I assumed the project was abandoned.
While you are at it, would you also consider including an interface to add/remove rows in the next update, or at least the capability to set the table's element ID within the node so that it can be manipulated using custom templates?
Thank you for your work so far.

Thanks for your effort! in fact I was able to make it work just dropping in the flow an empty table of https://github.com/node-red/node-red-ui-nodes/tree/master/node-red-node-ui-table, maybe would be an hint..


DeprecationWarning

Versions/3.7/lib/python3.7/site-packages/proxybroker/providers.py:128: DeprecationWarning: 'with await lock' is deprecated use 'async with lock' instead
  with (await self._sem_provider),\

Working but i got this message on top !

Fyi warnings don't break usage. Literally means this will stop to work soon
or later.
It may happend that devs do fix code before it breaks. If you don't update
module it will keep working with warning unless you manually supress that
warning.
Regards.
El dom., 18 nov. 2018 19:05, dtsrwnis<EMAIL_ADDRESS>escribió:

Versions/3.7/lib/python3.7/site-packages/proxybroker/providers.py:128: DeprecationWarning: 'with await lock' is deprecated use 'async with lock' instead
with (await self._sem_provider),\
Working but i got this message on top !
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/constverum/ProxyBroker/issues/96, or mute the thread
https://github.com/notifications/unsubscribe-auth/AHkwAsfDNV8sL3t__w46thxNa5PfCcjBks5uwaFOgaJpZM4YoD2f
.

Fixed in v0.3.2


Allow deleting blocks

Currently, deleting custom blocks is completely impossible, which is undesired in some cases (for instance, it blocks combining item sets). I might want to make it possible, but give a very clear warning. (Or maybe keeping track of deleted blocks like deleting items.)

This has been fixed in Editor 10.10


Test the z_getsubtreesbyindex RPC

Motivation
To make sure the z_getsubtreesbyindex RPC method works, do these tests:

[x] #7450
[x] #7451
[x] #7513
[x] #7446

For this RPC we will need to test Sapling and Orchard, because they use different state requests.

Hey team! Please add your planning poker estimate with Zenhub @arya2 @oxarbitrage @teor2345 @upbqdn

this seems like a tracking issue now so I'm removing this from the sprint and adding the individual issues to sprints instead

All these tasks are done now.


Adding a Onboarding Screen To the App

If We install the App , we See some Onboarding Screen , I will Design it using and Code in React Native , the thing is it Comes only once after install ing the app
You can Check my Samples from here
https://github.com/bhubesh757/React-Native-Tuts/tree/main/socialapp/onboardingreactnative

@abhijeet007rocks8 please assign me this issue


fetch response headers malformed (Tabris-js 2.0.0-beta1)

While getting a fetch response, I noticed the Authorization can no longer be obtained form the headers.
In Tabris-js version 1.10 my response object looked like this:
  {set:function (a,d){this.map[b(a)]=[c(d)]}, has:function (a){return this.map.hasOwnProperty(b(a))}, map:{content-type:["application/json"], authorization:["eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2JvbHQtYXBpLnJvY2tldG1lbi5pby9hcGkvYXV0aC9sb2dpbiIsImlhdCI6MTQ4ODE5NjQ1MywiZXhwIjoxNTE5NzMyNDUzLCJuYmYiOjE0ODgxOTY0NTMsImp0aSI6Ik1jeXpycVdOWVRGVzFOM0siLCJzdWIiOjF9.7FTeMf7mbFw1i4rBgPUGC5t7qFjCww28C41aO7ldZx4"], x-ratelimit-reset:["1488196513"], content-encoding:["gzip"], server:["nginx"], transfer-encoding:["Identity"], cache-control:["private, must-revalidate"], date:["Mon, 27 Feb 2017 11:54:13 GMT"], strict-transport-security:["max-age=31536000; includeSubdomains"], x-ratelimit-remaining:["49"], connection:["keep-alive"], x-ratelimit-limit:["50"], etag:["W/"639df0b84fe699b4a290a713fd6b9a94bd4deb95""], vary:["Accept-Encoding"], x-frame-options:["SAMEORIGIN"]}, get:function (a){var c=this.map[b(a)];return c?c[0]:null}, append:function (a,d){a=b(a),d=c(d);var e=this.map[a];e||(e=[],this.map[a]=e),e.push(d)}, getAll:function (a){return this.map[b(a)]||[]}, delete:function (a){delete this.map[b(a)]}, forEach:function (a,b){Object.getOwnPropertyNames(this.map).forEach(function(c){this.map[c].forEach(function(d){a.call(b,d,c,this)},this)},this)}}

However, after an upgrade to Tabris-js 2.0.0-beta1 I have discovered a breakage in the array of headers, notice no closing square bracket after content-type:["application/json but instead line breaks
{set:function (a,d){this.map[b(a)]=[c(d)]}, has:function (a){return this.map.hasOwnProperty(b(a))}, map:{content-type:["application/json

  Authorization: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2JvbHQtYXBpLnJvY2tldG1lbi5pby9hcGkvYXV0aC9sb2dpbiIsImlhdCI6MTQ4ODE5NjExNywiZXhwIjoxNTE5NzMyMTE3LCJuYmYiOjE0ODgxOTYxMTcsImp0aSI6IjdGd3V1TFZpazNsT29LS1MiLCJzdWIiOjF9.ZKAhF5eCC-Tdo3-GPcxsu7OBiRkUFc_ktgYXhVImaog

  X-RateLimit-Reset:<PHONE_NUMBER>

  Content-Encoding: gzip

  Server: nginx

  Transfer-Encoding: Identity

  Cache-Control: private, must-revalidate

  Date: Mon, 27 Feb 2017 11:48:37 GMT

  Strict-Transport-Security: max-age=31536000; includeSubdomains

  X-RateLimit-Remaining: 49

  Connection: keep-alive

  X-RateLimit-Limit: 50

  Etag: W/"639df0b84fe699b4a290a713fd6b9a94bd4deb95"

  Vary: Accept-Encoding

  X-Frame-Options: SAMEORIGIN"]}, get:function (a){var c=this.map[b(a)];return c?c[0]:null}, append:function (a,d){a=b(a),d=c(d);var e=this.map[a];e||(e=[],this.map[a]=e),e.push(d)}, getAll:function (a){return this.map[b(a)]||[]}, delete:function (a){delete this.map[b(a)]}, forEach:function (a,b){Object.getOwnPropertyNames(this.map).forEach(function(c){this.map[c].forEach(function(d){a.call(b,d,c,this)},this)},this)}, keys:function (){var a=[];return this.forEach(function(b,c){a.push(c)}),d(a)}, values:function (){var a=[];return this.forEach(function(b){a.push(b)}),d(a)}, entries:function (){var a=[];return this.forEach(function(b,c){a.push([c,b])}),d(a)}}

Can it be related to @ralfstx's issue: #914?

That sounds rather odd. Could you provide a snippet to replicate the problem?

Sure. I'm about to go to bed. But tomorrow I'll see if I can set up an example. Perhaps using an oath service, and a snippet in my Tabris account that we can run against the two different Tabris versions

OK, I wasn't able to get an online example API endpoint. But I have added @mpost to two private repo's of mine that use the my real API and credentials for authentication.
But I will keep them private for security reasons. However, I'm happy to add collaborators as requested
The working example:
https://github.com/camstuart/tabrisv1.10-api-auth
var page = new tabris.Page({
    title: "Login Via API Test: Tabris 1.10",
    topLevel: true
});

new tabris.Button({
    layoutData: {left: 20, top: 'prev() 10', right: 20},
    alignment: 'center',
    text: 'Hit the API'
}).on('select', function () {
    var endPoint = 'https://example.com/api/auth/login/';
    var payload  = {
        email<EMAIL_ADDRESS>        password: 'secret'
    };

    fetch(endPoint, {
        'method': 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify(payload)
    }).then(function (response) {
        return response;
    }).catch(function (err) {
        console.error('API Post Error: ', err);
    }).then(function (response) {
        var responseHeaders = new Headers(response.headers);
        var authToken = responseHeaders.get('Authorization') || '';
        console.log('Response Header [Authorization]', authToken);
        resultView.set('text', 'Auth JWT: ' + authToken);
    });

}).appendTo(page);

var resultView = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(page);

page.open();

The failing example:
https://github.com/camstuart/tabrisv2.0.0-beta1-api-auth
new tabris.Button({
    layoutData: {left: 20, top: 'prev() 10', right: 20},
    alignment: 'center',
    text: 'Hit the API'
}).on('select', function () {
    var endPoint = 'https://example.com/api/auth/login/';
    var payload  = {
        email<EMAIL_ADDRESS>        password: 'secret'
    };

    fetch(endPoint, {
        'method': 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        body: JSON.stringify(payload)
    }).then(function (response) {
        return response;
    }).catch(function (err) {
        console.error('API Post Error: ', err);
    }).then(function (response) {
        var responseHeaders = new Headers(response.headers);
        var authToken = responseHeaders.get('Authorization') || '';
        console.log('Response Header [Authorization]', authToken);
        console.log('Response Headers', response.headers);
        resultView.set('text', 'Auth JWT: ' + authToken);
    });

}).appendTo(tabris.ui.contentView);

var resultView = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(tabris.ui.contentView);

Most likely related issue https://github.com/eclipsesource/tabris-js/issues/1159

Yes, looks like it for sure. @mpost, any luck replicating this?

As of whatwg-fetch 2.0, the fetch API has been aligned with the spec. For HTTP headers with multiple values, headers.get() does not return an array anymore, but a string. The headers.getAll() method has been removed. Application code should be adjusted.

Yes, I discovered that in the documentation as well. But it seems get is not currently working either

Maybe this version of fetch does not work with our XHR impl? Checking...

@camstuart With #1159 fixed, could you try again with the next nightly build?

Just completed a build against nightly, still seems to be a broken structure with the response.headers.map
{cache-control: [private, must-revalidate
Vary: Accept-Encoding
X-RateLimit-Limit: 50
X-RateLimit-Reset:<PHONE_NUMBER>
Connection: keep-alive
X-RateLimit-Remaining: 49
Content-Type: application/json
Date: Fri, 03 Mar 2017 12:22:17 GMT
ETag: W/"639df0b84fe699b4a290a713fd6b9a94bd4deb95"
Server: nginx
Strict-Transport-Security: max-age=31536000; includeSubdomains
Transfer-Encoding: chunked
X-Frame-Options: SAMEORIGIN
Authorization: eyJ0eXAiOiJKV1QiLCJhb.......], content-type: [text/plain;charset=UTF-8]}

@camstuart I'm trying to reproduce the problem with this reduced snippet, but the headers returned look ok:
let url = 'https://example.com/api/auth/login/';
let payload  = {
  email<EMAIL_ADDRESS>  password: 'secret'
};

fetch(url, {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(payload)
}).then((response) => {
  for (let [key, value] of response.headers.entries()) {
    console.log(key, ':', value);
  }
}).catch(console.error);

Definitely doesn't pick up the Authorization header under 2.0.0-beta1 and I'm currently unable to test against the nightly build at the moment due to device availability constraints.
@ralf I will invite you to the private repo so you may replicate the issue more easily.
Feel free to hack in there as you please

It would be more helpful to come up with a self contained snippet. Maybe you can reproduce the issue with http://httpbin.org/?

Ok, I'll have a try this evening

Unfortunately httpbin doesn't respond with the header we are looking for: Authorization.
All I can say is that the same code running against Tabris versions 1.10 vs 2.0.0beta1 responds differently when doing a HTTP POST against the same end point. Not sure where to go from here.
The above examples serve as replication of the issue.
@ralfstx do you have access to a basic authentication endpoint that responds with an access token in the headers?

The Authorization is usually sent by the client, e.g.:
fetch('http://httpbin.org/basic-auth/Aladdin/OpenSesame', {
  headers: {
    Authorization: 'Basic QWxhZGRpbjpPcGVuU2VzYW1l',
    Accept: 'application/json'
  }
}).then(response => {
  console.log(response);
}).catch(err => console.error(err));

When logging in to an endpoint (providing username and password) it's not uncommon to receive a newly issued token in the response header, as opposed to the response body.

Could you use http://httpbin.org/response-headers?key=val to simulate the response?

Well done @ralfstx that approach indeed isolates the issue;
Working Example (Tabris 1.10 and v1 companion app)
var page = new tabris.Page({
    title: "Login Via API Test: Tabris 1.10",
    topLevel: true
});

new tabris.Button({
    layoutData: {left: 20, top: 'prev() 10', right: 20},
    alignment: 'center',
    text: 'Hit the API'
}).on('select', function () {
    var endPoint = 'http://httpbin.org/response-headers?Authorization=mysecrettoken';
    fetch(endPoint, {
        'method': 'GET',
        headers: {
            'Content-Type': 'application/json'
        }
    }).then(function (response) {
        return response;
    }).catch(function (err) {
        console.error('API GET Error: ', err);
    }).then(function (response) {
        var responseHeaders = new Headers(response.headers);
        contentType.set('text', 'Content Type: "' + responseHeaders.get('Content-Type') + '"');
        authToken.set('text', 'Authorization: "' + responseHeaders.get('Authorization') + '"');
    });
}).appendTo(page);

var contentType = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(page);

var authToken = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(page);

page.open();

Failing example (Tabris 2.0.0beta1 and v2 companion app)
new tabris.Button({
    layoutData: {left: 20, top: 'prev() 10', right: 20},
    alignment: 'center',
    text: 'Hit the API'
}).on('select', function () {
    var endPoint = 'http://httpbin.org/response-headers?Authorization=mysecrettoken';
    fetch(endPoint, {
        'method': 'GET',
        headers: {
            'Content-Type': 'application/json'
        }
    }).then(function (response) {
        return response;
    }).catch(function (err) {
        console.error('API GET Error: ', err);
    }).then(function (response) {
        var responseHeaders = new Headers(response.headers);
        contentType.set('text', 'Content Type: "' + responseHeaders.get('Content-Type') + '"');
        authToken.set('text', 'Authorization: "' + responseHeaders.get('Authorization') + '"');
    });
}).appendTo(tabris.ui.contentView);

var contentType = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(tabris.ui.contentView);

var authToken = new tabris.TextView({
    layoutData: {left: 20, top: 'prev() 10', right: 20}
}).appendTo(tabris.ui.contentView);

In my particular example, I am using HTTP POST But it seems GET, as used above behaves the same way. IE: working in 1.10 and not in 2.0.-beta1

Looping over the entries with:
for (let [key, value] of response.headers.entries()) {
    console.log(key, ':', value);
}

Gives us:
> access-control-allow-credentials : true
Content-Type: application/json
Server: nginx
Connection: keep-alive
Date: Tue, 07 Mar 2017 14:18:43 GMT
Authorization: mysecrettoken
Content-Length: 106
Access-Control-Allow-Origin: *
> content-type : text/plain;charset=UTF-8

a total of two elements, but it appears as though we are missing a delimiter, so the Authorization can not be extracted

@camstuart As of 2.0.0 RC 1, we have a completely new fetch implementation. Wherever caused this issue, it should be gone. Could you please test once again?

I'm closing this issue as it's related to the old implementation that used a polyfill.


Add rotational updates to growToFullCore()

spatial variables are rotated when the assemblies are copied

Description

Checklist

[x] The code is understandable and maintainable to people beyond the author.
[x] Tests have been added/updated to verify that the new or changed code works.
[x] There is no commented out code in this PR.
[x] The commit message follows good practices.
[x] All docstrings are still up-to-date with these changes.

If user exposed functionality was added/changed:

[x] Documentation added/updated in the doc folder.
[x] New or updated dependencies have been added to setup.py.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@jakehader, I poked around in the assembly object and the only orientation related thing I could find was the rotate pins. Could you point me towards what you were thinking of?
This fix is making it so that an spatial parameters get rotated when the core is grown to a full core. I noticed this error in the oxbow/armi interface. Oxbow took a third symmetric core, applied corner temperatures, grew it to full core and then filtered it back down to Oxbow's third symmetric core model. The only difference, is that for assemblies that lie on the symmetry plane, oxbow uses the top left assemblies while armi uses the bottom right assemblies. The corner temperatures on the top left assemblies were the same orientation as the bottom right inputs to growToFullCore(). They should have been rotated 120 degrees in the growing process.
I included the two things I knew of in corner temperature and edge temperature. It also looked like the pins should be rotated as well. If there is other information that should be rotated as well, we should add it.

@alexhjames   Thanks for the new unit test!
I love that we are unit testing the function directly.  Thanks for that.  The unit test seems clear and concise.  Sometimes I say "don't forget to write tests for your edge cases", but I'm not sure what your edge cases would be here.
 But, again, black is just a small thing.)

@jakehader I modified the rotate function to use the parameter framework. Anything that is array defined at the corners or edges will be rotated. Also the displacement X and displacement Y are handled separately as they need to interact with each other.  A new ticket #619 requests updates to how scalar vs vector quantities are handled. That ticket would result in some modifications to this function when implemented.

The new changes to the rotate() method introduce some duplicate code:
if isinstance(b.p[param], list):
      if len(b.p[param]) == 6:
          b.p[param] = b.p[param][-rotNum:] + b.p[param][:-rotNum]
      else:
          runLog.warning(
              "No rotation method... No rotation performed on {}".format(param)
        )
else:
    # this is a scalar and there shouldn't be any rotation.
    pass

This is repeated twice.  Perhaps instead of this:
for param in b.p.paramDefs.atLocation(ParamLocation.CORNERS).names:
    # block
for param in b.p.paramDefs.atLocation(ParamLocation.EDGES).names:
    # block

Perhaps that block can be a helper method?  Or maybe something like this:
params = b.p.paramDefs.atLocation(ParamLocation.CORNERS).names
params += list(b.p.paramDefs.atLocation(ParamLocation.EDGES).names)
for param in params:
    # block

I'm just spit-balling here. But there's a bug chunk of duplicate code, and I'm always a fan of reducing repetition.

Hi @jakehader @ntouran , are there any further changes requested for this review or anything left to discuss?
This PR and its eventual inclusion in the Nala framework is important to the mechanical team's current modeling efforts for spatially varying field data (temperature, dose, etc.)

@ntouran @jasonbmeng I agree with Jason that this does not belong in the rotatePins method as it has nothing to do with pins. It is rotating duct corner and edge parameters. I have refactored it so that the rotate method in assemblies loops over all the blocks and rotates each one. In blocks, there is a abstract function not implemented for rotation. The hex block class then has it's specific rotate functionality which is the code copied over from assemblies. If other block types in the future have a need for rotation, they can gain a rotate method rather easily.

Thanks for that update. The one concern I didn't express clearly enough is that we need to either combine this method with rotatePins so that there is only one, or we need to clearly define in the docstrings of both rotate and rotatePins how the method differs from the other and when to use one vs. the other.
As is they seem to be doing roughly the same thing. Can we easily combine them both into a single method?

@ntouran @john-science how is rotatePins currently used? As it exists prior to this PR, someone is using it for something. I'm hesitant to touch that function without knowing more about it. I think the rotate docstring is pretty clear that it rotates spatially varying quantities on a block. The rotatePins docstring could use some additional clarification but that goes back to the question of what that function is used for currently.

Is there any larger discussion on how to deal with rotations that don't align with EDGES or CORNERS? For example, if we wanted to assign values to a generic set of points (e.g., pins, cladding, etc.), what is the best way to do this?

@Nebbychadnezzar I have not seen any further discussion on that topic. I would think that any of those rotation types could be added to the current rotate functionality. For example, the rotate function added in this PR rotates the edges/corner information but also has a call to the rotatePins() method.


cluster_assign_roles.rb never runs install_bootstrap

This is intended to fix #880 however we may need extra logic and fixes before this can be merged

target_x_nodes vs all_hadoop_x_nodes and also does
we probbaly should not run install_bootstrap every time install_hadoop is invoked

Not needed as tests/automated_install.sh already calls it separately
https://github.com/bloomberg/chef-bach/blob/master/tests/automated_install.sh#L134


Uplift go-restful module to v2.16.0

Current version is susceptible to vulternabilities CVE-2022-1996.

cc @jenting


server error for developer request

Hi!
Thanks for this package!  I experience a problem with the most recent version:
Describe the bug
When using the code  from the Github readme for requesting developer info, a 502 server error is raised.
To Reproduce
import play_scraper
print(play_scraper.developer('Disney', results=5))
---------------------------------------------------------------------------
HTTPError                                 Traceback (most recent call last)
<ipython-input-23-86155d48969c> in <module>()
----> 1 dev = play_scraper.developer('Disney', results = 5)

~\Anaconda3\lib\site-packages\play_scraper\api.py in developer(developer, hl, gl, **kwargs)
     53     """
     54     s = scraper.PlayScraper(hl, gl)
---> 55     return s.developer(developer, **kwargs)
     56
     57

~\Anaconda3\lib\site-packages\play_scraper\scraper.py in developer(self, developer, results, page, detailed)
    158         url = build_url('developer', developer)
    159         data = generate_post_data(results, 0, pagtok)
--> 160         response = send_request('POST', url, data, self.params)
    161
    162         if detailed:

~\Anaconda3\lib\site-packages\play_scraper\utils.py in send_request(method, url, data, params, headers, timeout, verify, allow_redirects)
    119             allow_redirects=allow_redirects)
    120         if not response.status_code == requests.codes.ok:
--> 121             response.raise_for_status()
    122     except requests.exceptions.RequestException as e:
    123         log.error(e)

~\Anaconda3\lib\site-packages\requests\models.py in raise_for_status(self)
    938
    939         if http_error_msg:
--> 940             raise HTTPError(http_error_msg, response=self)
    941
    942     def close(self):

HTTPError: 502 Server Error: Bad Gateway for url: https://play.google.com/store/apps/developer?id=Disney&hl=en&gl=us

Desktop (please complete the following information):

Windows 10
Python Version 3.6.
play_scraper Version e.g. 0.5.2

Additional context
I think the problem is due to the gl parameter, might also be related to #21.

I'm receiving the same error. Any update about it?

@cschwem2er @eltonjhony
Looks like the original endpoint has been changed/removed. Will need look more into where and how to get apps by a specific developer in a consistent way.


Semantics of scope(exit/success) modifying return value

johanengelen reported this on 2018-04-23T20:22:39Z
Transferred from https://issues.dlang.org/show_bug.cgi?id=18793
CC List

RazvanN
Simen Kjaeraas

Description
When the return value is modified inside a scope(exit/success) block, the spec does not say what the semantics are.

A test program that demonstrates that the implementation exhibits different semantics depending on function call ABI (returned large structs are passed by ref):
```
import std.stdio;

struct Big {
    ulong a;
    ulong[4] b;
}

struct Small {
    ulong a;
    ulong b;
}

auto quirk(T)() {
    T result;

    scope(success)
    {
        result.a = 10;
    }

    return result;
}

void main() {
    auto small = quirk!Small();
    writeln(small);

    auto big = quirk!Big();
    writeln(big);
}
```

The issue is further complicated if the return expression also modifies the return value; i.e. we also need semantics for this testcase:
```
import std.stdio;

struct Big {
    ulong a;
    ulong[4] b;
}

struct Small {
    ulong a;
    ulong b;
}

auto ref addOne(T)(ref T t)
{
 	t.a += 1;
    return t;
}

auto quirk(T)() {
    T result;

    scope(exit)
    {
        result.a = 10;
    }

    return addOne(result);
}

void main() {
    auto small = quirk!Small();
    writeln(small);

    auto big = quirk!Big();
    writeln(big);
}
```

simen.kjaras commented on 2018-04-24T08:52:07Z
Worth noting: On win32, the Small struct used above is not small enough to be passed by value. The intended behavior shows up when Small.sizeof <= 8.


efficient gcn

efficient gcn pr

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

https://github.com/PaddlePaddle/PaddleVideo/blob/develop/docs/zh-CN/contribute/add_new_algorithm.md 参考这个重构哈

【测试结果】:
使用NTU-RGBD-60(CTR-GCN部分)数据，配置文件使用efficientgcn2001.yaml，精度结果仅有25.23，远低于预期。请修复～

感谢贡献，目前代码库暂不新增功能支持，PR先关闭了


Dendron extension can't be installed

Hello,
I'd like to use Dendron note-taking extension, but there is problem installing it...
Here is what I get:
oni2 --debug  --install-extension dendron.dendron-0.32.0.vsix
/tmp/.mount_OnivimuEoqHi/usr/bin/Oni2_editor: /tmp/.mount_OnivimuEoqHi/usr/lib/libselinux.so.1: no version information available (required by /lib/x86_64-linux-gnu/libgio-2.0.so.0)
Failed to install extension: dendron.dendron-0.32.0.vsix

producing no debug output besides that.
Another (popular) extension for similar usage is Foam which also can't be used - e.g. #3112, so it seems that OniVim2 is losing some potential users (e.g. researchers) who are not strictly coders. I'm aware of #1551 and agree that those that want to use VSCode are already using it, but, due to ideological reasons, I  do not want to do it, vim does not have adequate plugins for note-taking suitable for research work...So, that gives me no other option  than to switch to Emacs/org-roam.

Hi @gour ,
Thanks for logging the issue. I'm wondering - where did you get the VSIX?
It's also published on open-vsx, so would be curious to know if installing it that way works:
oni2 --install-extension dendron.dendron

Once installed, though, there are a few blockers currently (similar to the blockers for Foam tracked in #3112 )

Need tree-view support: #3126
Need webview support: #3128

I'm seeing a few other blockers that I'm looking at:

An activation error:

Potentially issues with Quickmenu/Quickinput (Dendron relies on this to start a workspace, or create a new note)

@bryphe Hello, I still get the error:

My mistake - after thoroughly cleaning old install, the error went away :-) - but now I have a new one (#3311) with another related extension.

Thanks for the update @gour ! I'll close this one but use #3311 to track the remaining issue (and #3126 / #3128 to track some of the not-yet-implemented functionality).


[tflite] make tflite related stuff build again on non-NNAPI platform

The NNAPI SL patch 4b949de introduced using of CreateNnApiFromSupportLibrary(NnApiSLDriverImplFL5 const*) which caused a problem.
When running bazel build --config opt tensorflow/lite/tools/benchmark:benchmark_model on macOS,  I got:
Undefined symbols for architecture x86_64:
  "CreateNnApiFromSupportLibrary(NnApiSLDriverImplFL5 const*)", referenced from:
      tflite::StatefulNnApiDelegate::StatefulNnApiDelegate(NnApiSLDriverImplFL5 const*, tflite::StatefulNnApiDelegate::Options) in libnnapi_delegate.a(nnapi_delegate.o)
      tflite::StatefulNnApiDelegate::StatefulNnApiDelegate(NnApiSLDriverImplFL5 const*, tflite::StatefulNnApiDelegate::Options) in libnnapi_delegate.a(nnapi_delegate.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

To fix this, I created a simple dummy function

Hi Terry, would you like help to take a look? Thanks!

close this since similar code is committed in 53d3617374a171acf847f5d23bdcd7061e5a2809


Author - update the contributor_type of published project in prod

All the authors either responded by not adding contributors to published projects or didn't respond.


Create campaign module

[x] create new campaign at /campaign/create-campaign
[x] list campaigns at /campaign/list
[x] list campaign types at /campaign-type/list

done


chore: replace self.assertTrue(os.path.exists(f)) with self.assertFileExists(f)

I believe this change is useful, as self.assertFileExists will give more detailed err_msg if a corresponding test fails.
May I create a PR?

Sure, this gives a bit more information about the path, even though I'm not sure if that would be useful for investigation, but it's definitely not worse. Also the code is cleaner.


nbdev_install_quarto does not work in Windows

When I executed that command after doing pip install nbdev on a windows machine, it gives me the message
$ nbdev_install_quarto
Please visit https://quarto.org/docs/get-started/ to install quarto

After installing it manually and restarting VScode, it started working.

Hi @Zaseem-BIsquared, nbdev works on Windows but under WSL.
https://github.com/fastai/nbdev?tab=readme-ov-file#install


Allow more schedule options for scheduled reports

Instead of a dropdown picker for selecting a day of the week, it should be a multi-select picker. The scheduled reports cloud functions will need to be updated as well to make it work.

will be added in flutter version


[v4] Error bundling import from a type definitions only module

I have a module in my repo that is goning to be bundled and has this import of "csstype" in it that is re exported
export { FontFace } from "csstype";

I get this warning when bundling:
FuseBox 4.0.0-next.430
     Mode: development
     Entry: C:\path-to-my-repo\src\index.tsx

  compiler Completed node_modules/fuse-box/modules/fuse-box-hot-reload/clientHot  compiler Completed node_modules/@babel/runtime/helpers/esm/assertThisInitializ  compiler Completed node_modules/@babel/runtime/helpers/esm/taggedTemplateLiter  compiler Completed node_modules/@babel/runtime/helpers/esm/isNativeReflectCons  ⚠  Error while resolving csstype in src/styles/index.ts

   WARNING   Completed with 1 warning in 1s 403ms

When i try to open the dev server page in the browser (Firefox), it says:
Error: Module csstype was not found
What may be special with csstype is that it contains no JS code, just Typescript interfaces for CSS.
The same happens when i import csstype with import type { ...
I cleaned the cache (npm and fuse-box .cache folder).
Here are my package dependencies:
"csstype": "^2.6.10",
"fuse-box": "^4.0.0-next.430",
"ts-node": "^8.10.1",
"tslib": "^1.11.2",
"typescript": "^3.8.3",

@a-neumann thanks for brining this up.
I believe 4.0.0-next.432 will fix your problem
export type { FontFace } from "csstype";

I've added the support for importKind in 432. This should get it fixed


Add a test for viewer.close_all.

References and relevant issues
Closes #6249
Description
Adds a test for viewer.close_all.

Does anyone know whether this PR actually decreased coverage (seems like it should be impossible), or whether this is just codecov being wonky (happens all the time)? One thing that could be happening is that some pytest magic means that running this test then prevents other tests from running. I don't think so but I'd love for someone else to weigh in before I merge... 😅

Coverage on main indeed seems to be 92.42% based on #6939. I'm guessing this is indeed codecov wonkiness where it's testing the comprehensive tests against some individual run here or something... @Czaki any opinion here?


RoslynPad Hosting

When I run script in RoslynPad, it throws error "Unable to create host process", anybody faced this issue and got any solution?

This means that the runner host process (RoslynPad.Host32.exe in this case) is crashing. As I don't collect telemetry from this process, I have no way of know what went wrong. If you want, you can collect a crash dump and send it to me.

The host process is gone - I've changed the entire way RP runs code. This change is in master, and will be part of v14.


Update gobuster syntax for version 3.0.1

gobuster v3.0.1 requires the "dir" argument now to run successfully.
I also added the -e flag to expand full URL's and also the -l flag to include the length of the body in output.
The -s flag is no longer necessary since gobuster v3.0.1 now defaults to the following status codes:
200,204,301,302,307,401,403
also, I believe that the pages variable needs '.' characters now as well.
Let me know what you think.

Thanks for your collaboration.
I have just merged your pull request.
I was waiting for gobuster to be updated in Kali, so that the majority of people will have, as it is not backwards, and hence the new syntax does not work with older versions.


az login fails with service-principal/MFA

az login fails for service-principal/MFA
as az login seems to be not supported for accounts with MFA enabled I am trying to find another way to get a working az cli environment on my local control machine.
Command Name
az login (trying numerous combinations of parameters or interactive session)
Errors:
Get Token request returned http error: 400 and server response: {"error":"invalid_request","error_description":"AADSTS90002: Tenant 'xxxx' not found. This may happen if there are no active subscriptions for the tenant. Check with your subscription administrator.\r\nTrace ID: 632b5531-0b59-4d28-91b1-b335cde91800\r\nCorrelation ID: e29efd37-9971-4f8d-9b26-35770ae44de3\r\nTimestamp: 2019-05-03 20:32:20Z","error_codes":[90002],"timestamp":"2019-05-03 20:32:20Z","trace_id":"632b5531-0b59-4d28-91b1-b335cde91800","correlation_id":"e29efd37-9971-4f8d-9b26-35770ae44de3"}

To Reproduce:

Have an account on https://login.microsoftonline.com/ that is backed(synched?) by a corporate AD, has MFA enabled and assigned owner role on an azure subscription
create a Service prinicipal with proper permissions and role owner for the subscription in azure portal

Actual Behaviour

the login on portal.azure.com is working fine using the AD credentials (MFA is available and working as expected)
login via terraform provider "azurerm" works fine (1.25.0) using the service-principal from Step 2. (client_id/app_id,client_secret,tenant_id,subscription_id)

But it seems there is no way to use az login for this account/subscription, whatever way I am trying it is failing with  "Tenant 'xxxx' not found".
Expected Behavior
az login should be working
Environment Summary
Linux-4.18.0-3-amd64-x86_64-with-debian-buster-sid
Python 3.6.5
Shell: bash

azure-cli 2.0.63

Extensions:
interactive 0.4.2
dev-spaces 1.0.0

Please send me the trace of az login --debug to yugangw at microsoft dot com. Tenant 'xxxx' not found should not be a fatal error.


autosuggestions still buggy

echo '\
  one'

produces similar behavior to #45, the suggestion is repeatedly printed, creating new lines

Dependent on #38

Fixed as of 06bb85c86f8e8538758ef8d272657dbe193bfb74


Error with multiple subscriptions to the same topic and different QoS

When multiple applications subscribe to the same topic with different QoS values, the messages are not being processed.
The problem might be in the mqtt_subscribe() function of server.py when trying to update the status of the current subscription.

Hi all, let me provide some logs
Two subscribers with the same qos level:
INFO     [mqttasgi][connection][connected] - Connected to <IP_ADDRESS>:1883
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+:2
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+:2 has 2 listeners

Two subscribers with different qos level:
INFO     [mqttasgi][connection][connected] - Connected to <IP_ADDRESS>:1883
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+:1
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+ must be updated to QOS: 2
ERROR    [mqttasgi][app][send] - Exception of diagnosticsConsumer-app-0
			Traceback (most recent call last):
			  File "/home/ubuntu/workspace/serverV2/maper_projects/mqttasgi/server.py", line 296, in _application_send
			    await action_map[msg['type']](app_id, msg)
			  File "/home/ubuntu/workspace/serverV2/maper_projects/mqttasgi/server.py", line 185, in mqtt_subscribe
			    status = (qos, status[1])
			KeyError: 1```

With the fix the subscription with higher qos succeeds:
INFO     [mqttasgi][connection][connected] - Connected to <IP_ADDRESS>:1883
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+:1
DEBUG    [mqttasgi][app][subscribe] - Subscription to networks/+/devices/gateways/+/properties/+ must be updated to QOS: 2


Automatically remove non-vouched reported profiles.

Coverage decreased (-0.02%) to 88.798% when pulling 9434266beca6183f23a12f3dda4b8e3874829f32 on akatsoulas:remove-spam-unvouched into 756c5ca19bc7d5a04394ee158927a578e747a126 on mozilla:master.

Coverage decreased (-0.01%) to 88.706% when pulling 269cf1e40c6f913c23dc7b289643e6bf770a870e on akatsoulas:remove-spam-unvouched into 770b72f259a45484f8d3030defd08b81e10bf002 on mozilla:master.


Standalone relationship type creation is not available anymore in Purview, but still exists in documentation

Current screenshots to exemplify creating a relationship type do not reflect the current UI of Purview.

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

ID: 1b4bf578-da3d-7d80-26a3-eeee9fbac769
Version Independent ID: 6083acf7-2134-2751-096e-db965591823e
Content: Microsoft Purview metamodel - Microsoft Purview
Content Source: articles/purview/concept-metamodel.md
Service: purview
Sub-service: purview-data-map
GitHub Login: @evangelinew
Microsoft Alias: evwhite

@LauraDamianTNA
Thanks for your feedback! We will investigate and update as appropriate.

@LauraDamianTNA
I've delegated this to content author @evangelinew , who will review it and offer his insightful opinions.

@LauraDamianTNA - The example in the concept page is a real example of a currently existing relationship, though it is a relationship under the 'related' tab in a business asset.
Are there any specific questions I can answer for you about the example?

Hi, Sorry I missed your first message. It's ok to close as the creation of the relationship appeared again in the UI. There are some small differences, e.g. we now have "New relationship" instead of "New relationship type" and "Relationship types" have disappeared, but the tutorial is easy to follow.


Can I mix colors by using js?

I want to mix two or three colors to one color.
I don’t care about color components(Using r,g,b or other things)
If there is any way to do this, please let me know!
thanks,

Here are some ways to mix two or three different colors to a single color in JavaScript :
1: Mixing two RGB color vectors to get resultant.
2: Adding Colours (Colors) Together like Paint (Blue + Yellow = Green, etc)
3: Combine two RGBA colors with JavaScript
Example
// Fast and easy way to combine (additive mode) two RGBA colors with JavaScript.
// [red, green, blue, alpha] based on these maximul values [255, 255, 255, 1].
var base = [69, 109, 160, 1];
var added = [61, 47, 82, 0.8];
var mix = [];
mix[3] = 1 - (1 - added[3]) * (1 - base[3]); // alpha
mix[0] = Math.round((added[0] * added[3] / mix[3]) + (base[0] * base[3] * (1 - added[3]) / mix[3])); // red
mix[1] = Math.round((added[1] * added[3] / mix[3]) + (base[1] * base[3] * (1 - added[3]) / mix[3])); // green
mix[2] = Math.round((added[2] * added[3] / mix[3]) + (base[2] * base[3] * (1 - added[3]) / mix[3])); // blue
// Will return [63, 59, 98, 1]

When working with colors in JavaScript, they are typically represented in formats like:
Hexadecimal (e.g., #ff0000 for red)
RGB (e.g., rgb(255, 0, 0) for red)
HSL (Hue, Saturation, Lightness)
Usually, mixing colors requires you to extract and manipulate the individual RGB components. However, this can be clumsy if you want to mix multiple colors without getting into the details of color component calculations. We can instead take benefits of the Canvas API to make this process easier.


Is this package still maitained ? I have problem in auto linking

Hi @muhammadwafa! Unfortunately I don't have enough time to maintain this project. But PR's are welcome! And new maintainers also :)


Unit test "RunInternal_WithMultipleDeletedPackagesWithSamePackageIdentity_PutsEachPackageInSeparateCommit" is flaky

This is in NuGet.Services.Metadata:
https://github.com/NuGet/NuGet.Services.Metadata/blob/bc7b6b5f3f84728946785d2021487876b130eb24/tests/NgTests/Db2CatalogTests.cs#L533
##[error]    NgTests.Db2CatalogTests.RunInternal_WithMultipleDeletedPackagesWithSamePackageIdentity_PutsEachPackageInSeparateCommit [FAIL]

      Assert.Equal() Failure
      Expected: 5
      Actual:   3
      Stack Trace:
        tests\NgTests\Db2CatalogTests.cs(1345,0): at NgTests.Db2CatalogTests.VerifyCatalog(Nullable`1 expectedLastCreated, Nullable`1 expectedLastDeleted, Nullable`1 expectedLastEdited, PackageOperation skippedOperation)
        tests\NgTests\Db2CatalogTests.cs(1288,0): at NgTests.Db2CatalogTests.<RunInternalAndVerifyAsync>d__52.MoveNext()
        --- End of stack trace from previous location where exception was thrown ---
           at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
           at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
        tests\NgTests\Db2CatalogTests.cs(558,0): at NgTests.Db2CatalogTests.<RunInternal_WithMultipleDeletedPackagesWithSamePackageIdentity_PutsEachPackageInSeparateCommit>d__35.MoveNext()
        --- End of stack trace from previous location where exception was thrown ---
           at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
           at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
        --- End of stack trace from previous location where exception was thrown ---
           at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
           at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
        --- End of stack trace from previous location where exception was thrown ---
           at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
           at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
      Output:
        Information: CATALOG LastCreated: 0001-01-01T00:00:00.0000000Z
        Information: DATABASE CreatedPackages: 1
        Information: Creating package catalog item for JYDztRwlslJv9T8e 2.9.4
        Information: Finished creating package catalog item for JYDztRwlslJv9T8e 2.9.4
        Information: Add metadata from: https://unittest.org/packages/jydztrwlsljv9t8e/2.9.4.nupkg
        Information: COMMIT metadata to catalog.
        Information: CATALOG LastEdited: 0001-01-01T00:00:00.0000000Z
        Information: DATABASE EditedPackages: 0
        Information: CATALOG LastDeleted: 2019-12-06T01:26:18.5511052Z
        Information: FEED DeletedPackages: 0
        Information: CATALOG LastCreated: 2019-12-06T01:26:18.5511052Z
        Information: DATABASE CreatedPackages: 0
        Information: CATALOG LastEdited: 0001-01-01T00:00:00.0000000Z
        Information: DATABASE EditedPackages: 0
        Information: CATALOG LastDeleted: 2019-12-06T01:26:18.5511052Z
        Information: FEED DeletedPackages: 0
        Information: CATALOG LastCreated: 2019-12-06T01:26:18.5511052Z
        Information: DATABASE CreatedPackages: 0
        Information: CATALOG LastEdited: 0001-01-01T00:00:00.0000000Z
        Information: DATABASE EditedPackages: 0

See build:
https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=3299584&view=logs&j=fd490c07-0b22-5182-fac9-6d67fe1e939b&t=ce91d5d6-0c55-50f5-8ab9-6695c03ab102&l=22

No idea why, but this happened again. Build: https://nuget.visualstudio.com/NuGetBuild/_build/results?buildId=68451&view=logs&j=92a4755a-6173-591e-5c07-8dbe1165e937&t=637fe98e-01bc-52d5-2c1e-725d000dcfda&l=22


Notice: Uninitialized string offset:

Everything in the Admin seems to be fine... When I try shortened URL's I get nothing but this.
http://bwine.me/i/8bgo3
Notice: Uninitialized string offset: 0 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 1 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 2 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 3 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 4 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 5 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 0 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 1 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 2 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 3 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 4 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 5 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 0 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 1 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 2 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 3 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 4 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 5 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 0 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 1 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 2 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 3 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 4 in /var/www/html/i/includes/geo/geoip.inc on line 629
Notice: Uninitialized string offset: 5 in /var/www/html/i/includes/geo/geoip.inc on line 629
Fatal error: error traversing database - perhaps it is corrupt? in /var/www/html/i/includes/geo/geoip.inc on line 644

Maybe, as the error says, the geoip database file is corrupted?

Well I thought of that also, downloaded the zip file twice... and uploaded it.. same result.
I did noting if I turn off the stats it works.... but with the stats on I get the above error... But I need logging.

Strange. The GeoIP dat files haven't been changed in 2 years, so they should be fine. If you're uploading via FTP it could be a transfer mode or encoding issue, but other than that I'd have to keep speculating.

This is happening to me as well. @bboilard -- how do you turn off the stats? I don't need them, and if that works, it might solve this for me.


Change "Guides" to "How-to Guides"

This is after a discussion where it seemed that calling the "How-to" section guides was slightly misleading.
I believe that I got all the references, as Sphinx doesn't seem to complain locally.

Good call - I added redirects in 660b273.


Weapon suggestion

Some SMGS!
Basic example
MP5, etc.
Motivation
Because SMGs are fun to play with

Also there is is great ak mod on Vault Omega discord. He does a Escape from Tarkov modlist. The TUK AK mod he translated it from a Russian modder. if interested I can make a link.

https://github.com/NomadsReach/Fallout-Anomaly/issues/46 can you use this for weapon suggestions, thank you!


Update the way we grab the model metrics from the get_results call to support Null values

Currently when the get_results method on the Job class grabs the model metrics from the request, we assume that if the key is defined, the type is a list:
https://github.com/capeprivacy/pycape/blob/main/pycape/api/job/job.py#L88
We should change this so that if the model_metrics field is None, the program doesn't error out when the for loop is invoked:
https://github.com/capeprivacy/pycape/blob/main/pycape/api/job/job.py#L90

Hey @gifteconomist ,
Is this None would be like this [{"name": "mse_result", "value": [1.0]}, None] or [{"name": "mse_result", "value": [1.0]}, {"name": "r_squared", "value": None]
In both cases, If we don't want the program to error out we can use a If statement with continue when It's None.
>>>for i in ['1', 2, 3, None]:
    if i==None:
        continue
    print(i)
Output:
1
2
3

If this can solve please assign me the issue


#3420 Users have workbench permissions if there are connections available

Description
Users can use the workbench button only if there is a valid connection in their personal workspace.

Related Issue : #3420
How Has This Been Tested?

Log in as a user with an available connection
see workbench button.
Log in as a user without an available connection
see workbench button hided.

Need additional checks?
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.

Additional Context

deploy to 1


Fixed broken optional OSGi Import-Package header (#3424).

AUTOMATED MESSAGE for ADMINS:Please verify and accept the pull request.To accept, say @netkins acceptTo build again, say @netkins buildTo whitelist the author, say @netkins whitelist

@netkins accept

@CodingFabian - Thanks for the fix!  Could you please follow the commit guide http://netty.io/wiki/writing-a-commit-message.html and then squash your commits.

@normanmaurer - I'll let you take this one over.

Sure thing will do

Am 13.02.2015 um 18:30 schrieb Scott Mitchell<EMAIL_ADDRESS>@normanmaurer - I'll let you take this one over.
—
Reply to this email directly or view it on GitHub.

@Scottmitch What do you mean? It is only one commit, so nothing to squash. Also I think it does qualify for "the commit is trivial", don't you think? It adds two colons in the OSGi Manifest, which right now does not validate...

@Scottmitch I thinkg @CodingFabian is right here. It is fine to cherry-pick. Just one thing... I know it may sound a bit like overkill but could you please sign the ICLA ?
http://tinyurl.com/netty-icla

legal stuff is always overkill :-) Just signed that agreement.

@CodingFabian thanks... cherry-picked into 4.0, 4.1 and master


Support global configuration files in /etc/rustic/

I think it would be great to have global config files in /etc/rustic/ which could be used for backups by "system" users (which don't have a home directory) or configurations shared between users, so for example one user could create the backup and other users would still be able to access it.
The configuration files at ~/.config/ would have precedence over /etc/.
If you're interested, I'm willing to find some time and give this a try.

I also like the idea. Especially with the possibility to use other config file, see use-profile, there is a good use case to have global config options and maybe per-user config options referring to to the global ones.
Some notes:

We are currently about to refactor rustic, see #617. Maybe you should wait for this to finish or base on this PR.
Currently https://docs.rs/directories/latest/directories/struct.ProjectDirs.html is used. Maybe you can find a better crate which supports user/global config dirs.
Please have in mind that we should stay compatible with non-linux systems, i.e. MacOS and Windows.

We are currently about to refactor rustic

Oh, good to know! Waiting is good to me

Please have in mind that we should stay compatible with non-linux systems, i.e. MacOS and Windows.

Hmmm totally forgot about Windows... Here are some options I've gathered:
Windows:

%ProgramData%\rustic\config (resolves to C:\ProgramData\rustic\config)

MacOS:

/etc/rustic/
/usr/local/etc/rustic (for software installed using homebrew)
/Library/Application Support/com.rustic.rustic (I don't know the actual values you're using here but you get the point)
/Users/Shared/* (could use .config or Library/ApplicationSupport)

For MacOS I think /etc/ and /usr/local/etc are the best option (we could just check both directories).

Currently https://docs.rs/directories/latest/directories/struct.ProjectDirs.html is used. Maybe you can find a better crate which supports user/global config dirs.

Just opened a issue there: https://github.com/dirs-dev/directories-rs/issues/82

Yes, would be great to have this implemented upstream. But I'm also fine with adding global config support to rustic until it's conveniently supported by a crate.

FYI, #617 has just been merged.


FlyBy: fly through N stars (globular cluster, Milky Way) and derive stats.

Rough calc here.
prob = pi * d * rho * r*2

d is distance travelled in parsecs (the Milky Way is about 500 pc thick)
rho is the stellar density per cubic parsec (0.14 near the Sun)
r is the radius of a star (2*10-8 parsecs)
prob is the probability of a collision after travelling d parsecs

Rough approximation:

The stars are treated as uniform, with the same radius.
The stars don't move.
Sparse: the projection of the pillar of d cubic parsecs onto a plane of 1 square parsec results in no overlaps.

With the numbers above, travelling across the Milky Way in the solar neighborhood, then the probability of a collision with a star  is somewhere around 10exp(-13).

Most stars are red dwarfs. Human eyes can't see such stars unless we're very close to them.


Fix capitalisation of Markdown (prefer markdown) as per Vale suggestion

Vale recommends that the word Markdown is not capitalised except at the start of a sentence.

Task: Search across Vizro docs (vizro-core and vizro-ai) for instances of Markdown and replace with discretion.
<!-- vale off -->
Legitimate use of "Markdown" rather than "markdown" (within a sentence, since Vale won't flag sentence case as an issue)
<!--vale on-->

Hi, I would like to take this.

Hello @anisaqazi, did you make any progress on this? Are you still interested on working on it? 🙂 No pressure if not!

Resolved by https://github.com/mckinsey/vizro/pull/848


add building access template

Docs Build status updates of commit 1ed582e:
:clock10: Pending: waiting for processors (25 builds ahead of you)
:warning: Docs Build is busy, currently there are 25 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 1ed582e:
:warning: Validation status: warnings

File
Status
Preview URL
Details

msteams-platform/samples/app-templates.md
:warning:Warning
View
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md

Line 68, Column 480: [Warning-file-not-found] Invalid file link: 'power-bi/fundamentals/power-bi-overview'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 84a8757:
:clock10: Pending: waiting for processors (16 builds ahead of you)
:warning: Docs Build is busy, currently there are 16 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 84a8757:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit fa78c02:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 47a445b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit be1e254:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit d744795:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 21f5a46:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/building-access-access-key.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/building-access-reservation.png
:white_check_mark:Succeeded
View

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Allow dynamic location of textmate grammar

Ref: https://github.com/vuejs/vetur/issues/210
In Vue files you can have <template>, <style> and <script> tag.
However, certain libraries can add top-level custom blocks that uses another language. For example:
<template></template>
<script></script>
<style></style>

<docs>
# This might be markdown or json, depending on user's build configuration
</docs>

Our approach was:

Give a setting vetur.grammar.customBlocks
Register a command to recompile the TextMate grammar with the custom blocks
Write the file to extension directory, the same path as the one specified in package.json

This has been working, but I'm worried extension integrity check might kick in and ask for reinstall. Also @sandy081 mentioned updates remove the old folder, so it's bad to keep states in extension directory.
What I need is a path that I can:

Statically determine in write-time (as the path is specified in package.json)
Have write permission

So the paths in ExtensionContext wouldn't work for me.
After checking with @sandy081, we think offering an API like languages.setGrammar would be best. We considered allowing path interpolations like ${globalStoragePath}/grammars/vue.json in package.json, but that means the best Vetur can do is to write to that path on first activation, so no coloring before first activation/reload.
However, I'm not sure we should provide an API tied to TextMate grammar. Also the API means the dynamically generated TextMate grammar wouldn't be loaded until extension activation.
@alexandrudima What do you think?

I find it very interesting, I wasn't aware of the tricks you are doing with rewriting your grammar!
I think referring in package.json to a file which doesn't exist until the first extension activation is just asking for trouble. We would need to install a watcher to monitor a specific file/folder and if the file appears or is updated, we would need to recreate the TM grammar... Otherwise coloring would never work until after a restart.
Adding imperative API seems like the way to go, since you could call the API whenever you are ready. But... this would have the disadvantage of not coloring those blocks each and every time until after your extension activates and uses the API...
To be honest, I find both proposals have flaws...

coloring would never work until after a restart.

That's actually ok for me, most people don't change the custom blocks frequently.

a file which doesn't exist until the first extension activation

What do you think about adding a setting and putting the grammar to user repo? When no grammar is found, Vue files fallback to using grammar bundled in extension.
Also, custom blocks tie to specific dependencies. For example, people use <docs> if they use vue-18n, and people use <page-query> with GraphQL if they are using Gridsome. So I think it's natural to colocate the setting, grammar files and dependencies in user repos.

@alexandrudima What is the plan for this issue?
I am working on a language server for domain specific languages. Once the language grammar is created, extension is generated and installed. It works very well, without need to reload a window.
After that, if language grammar is changed, I would need to update the existing extension with a new textmate grammar (which is generated from language grammar) which will require a window reload.

@alexandrudima I was wondering if you have had a chance to look at this feature?

I'm a contributor on an extension called MV Basic that provides language support for a language (PickBASIC) that, depending on the vendor/flavor in use, has different language definitions and syntax highlighting requirements.
The language definitions are readily solved for by loading them at runtime in the language server, leveraging a configuration setting we've added to the extension, but dynamically switching the grammar has been a bit tougher given the discussion above. Adding my vote into the equation for having a route to specifying the grammar via API. I concede the trade off in needing the extension to activate and call the API, but we're effectively there anyway with respect to the language definition itself.

@itsxallwater  I found a workaround using setDecorations method, although it requires much more work.
I need to "paint" keywords of a language that is created in a runtime. Also, grammar changes should repaint a document, here is the example how it works.
Here are some implementation details if you find this helpful.

Is there some sort of regex to determine if filename or directory path includes a certain match?
Context: I'm writing a Rails syntax ruby language injection extension and running into similar issues. For example, certain methods are only available for controllers  or views but not models.

any chance semantic highlighting could hackily cover this? https://code.visualstudio.com/api/language-extensions/semantic-highlight-guide

any chance semantic highlighting could hackily cover this? https://code.visualstudio.com/api/language-extensions/semantic-highlight-guide

From my understanding, semantic highlighting gives you more color variation to match things such as parameters to variables etc. It seems to allow for modifying the current token type after looking at the reference https://github.com/microsoft/vscode-extension-samples/blob/master/semantic-tokens-sample/src/extension.ts . I haven't fully grasped the VS Code docs on the semantic highlighting if it would allow for a dynamic location.

I wanted to open a new ticket, but found the existing one! I also have a strong need for dynamic grammar generation.
As a developer of Rainbow CSV I need this API to implement the following features:

Support comments in CSV files (depending on user selection of a comment prefix Rainbow CSV would be able to generate an appropriate TextMate grammar)
Support all possible single-character and multi-character CSV delimiters (just the ASCII character set has over 30 non-alphanumeric characters that can be used as CSV separators, so providing 30 pre-generated static syntax files is not feasible, and there are also use-cases for multi-character separators)
There are multiple issues in my project which are blocked by the lack of this mechanism in VSCode: mechatroner/vscode_rainbow_csv#14, mechatroner/vscode_rainbow_csv#1, mechatroner/vscode_rainbow_csv#31, mechatroner/vscode_rainbow_csv#70, mechatroner/vscode_rainbow_csv#58, mechatroner/vscode_rainbow_csv#33

Both Vim and Sublime Text 3 editors support dynamic syntax generation; this mechanism is widely used in Vim by parenthesis highlighting extensions.

Just wanted to voice my support of this issue as well as the maintainer of the Angular Language Service extension for VSCode.
Components can define inline styles and since version 12, styles other than CSS (Sass, Less, Styl) can be used inline.
Syntax highlighting cannot be adjusted accordingly, even via extension config.
I updated our style highlighting recently to assume SCSS for inline styles to support more use-cases, but it would be nice to be able to do the actual right thing and provide the correct language highlighting for inline styles, either by extension config or programmatically in the extension itself.


Saving and / or copying responses to a file or clipboard

It would be great if there was a possibility to save or copy a response to the clipboard. The right click context menu also does not work in this field.

@bramhoven Are you on v0.2 or v0.3
Thinking if its similar to #53 Fixes to this was released in v0.3
Currently auto update functionality is not added to electron app. Plan to add that soon.

@helloanoop My bad! After updating it does indeed work. Although still no context menu, but copying does work.

Closing this issue as it has already been implemented!


New maintainer?

ExcelDataReader is the indisputable number one .NET Excel parsing library on Nuget. Alas it wasn't updated since 2014. I would love to see a new official release which incorporates at least @appel1's recent fixes as well as my own reorganizations. There is some fragmentation already where people have put out their own Nuget packages of ExcelDataReader based on their own forks and fixes.
As I understand it, the project was handed over to @Ian1971 from @ExcelDataReader at some point, but as we can read in e.g issue #92 and #104, Ian no longer has the time to support the project in a meaningful way.
It would be awesome if we, as a community, could somehow move the project ahead without doing a fork:

some new people to get write access in the repo
some new people to get access to publish binaries on Nuget
document steps taken during releases, f.ex in regards to signing, strong naming etc
document how to contribute
release a new version to Nuget
add a notice somewhere the project is in need of a new maintainer
do a full makeover of the repo and get rid of all the cruft and duplicate code from the past years

Personally I am no long-term maintainer material, but if I were given the authority, I could easily spend some time cleaning up, merging PRs and help to get the project rolling again.
If there are any concerns of giving access to random people, we can maybe arrange for a Hangouts/Skype or something for interested parties to introduce ourselves?
So maintainers, what do you need from "us" to revive the project? What would we need from you to take over?

I would definitely welcome this. @wizardgsz is the only other maintainer.  I added them fairly recently but are quite active.  I wish I had time to help, but it's just not feasible. I'd happily set you as a maintainer.

Yes, please set me as a maintainer, I would appreciate that.
We also need to sort out the process for doing releases etc. But first I have to catch up a bit.

done!

Can we finally upload a STABLE build to NuGet before "3.0 revolution" and without breaking actual interface?
Thanks.

I can give you access to the nuget package if you give me your nuget username

That's fine thanks!
wizardgsz (for both GitHub and NuGet also)

done

A new release sounds good to me. I would prefer to release the current develop branch pretty much as is. I.e a minor release with only the bugfixes already in the repo, and thus without Core support. Are there any known issues/blockers with the current develop branch? (I'm not aware of any)
Guess the process would be something like:

Bump the minor version number
Update readme, changelog
Merge develop into master
Build master and publish to nuget

Are you up for some or all of these tasks @wizardgsz ?
My plan is to merge in my 3.0 "retool" branch relatively soon, and then work through PRs manually. I assume my branch breaks most PRs, and if we mess too much in the develop branch I fear my branch won't merge easily anymore...

@andersnm Depends on what you mean with issues. It uses the wrong encoding in many cases when reading biff8 files for example.
But I'd prefer if your retool branch was merged as soon as possible so I can start reworking my PR and fixing some more things. I've held off on that in case the retool branch is changed too much when merged into develop or if it isn't merged at all. :)

Welcome!

bump so?

I gave up creating pull requests for now and have instead continued to fix things in a fork. It contains @andersnm retool branch, fixes for my issues and some others and some more issues we've come across since then. It has some breaking changes and I've disabled the .net 2.0 build because of an issue with VS2017 that I haven't had time to resolve/workaround yet.
https://github.com/appel1/ExcelDataReader/tree/retooldevelop
Is there any interest in merging this back into the ExcelDataReader project?

@Ian1971  My Nuget account name is "andersnm", can I have access to the package too?

Done (hopefully).
On Fri, Jun 2, 2017 at 7:19 PM, andersnm<EMAIL_ADDRESS>wrote:

@Ian1971 https://github.com/ian1971 My Nuget account name is
"andersnm", can I have access to the package too?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ExcelDataReader/ExcelDataReader/issues/169#issuecomment-305871839,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH4jSf3_GfFURmUXZnhQfbgXJWwMSJqPks5sAFJKgaJpZM4KTjh_
.

--
Ian Cox
C.T.O.
Release  Mobile
m:            Matrix Studios, 91 Peterborough Road, London, SW6 3BU
w:            http://www.releasemobile.com
Registered in England.  Number 06323661

Perhaps now is a good time to close old issues as well. I think quite a few are fixed in develop now. Someone could go through them and for bugs check if they're fixed, needs more info or cannot be reproduced and close them.

I'll just add these notes here, these are the steps for doing a release:
Full release
Full releases are the Nugets built from the master branch. AppVeyor is configured to create Nuget-packages with a proper version number on commits (and PRs) on the master branch.

Github UI: Click "New pull request" -> base = master, compare = develop, title = version number, click "Create pull request" (then wait for AppVeyor to complete the build: the build is canceled if merged too soon and looks bad in the PR list)
Github UI: In the PR, tick for "Create a merge commit", click "Merge pull request", click "Confirm merge" (then wait for AppVeyor to complete the build)
Github UI: Create and tag release in master branch:

Name tag in format "vX.Y.Z" @ target = master (NOTE: change from develop selected by default!)
Check title and content layout against earlier releases for consistency
Upload Nugets from https://ci.appveyor.com/project/andersnm/exceldatareader/build/artifacts

Nuget.org: Upload Nugets from AppVeyor, use the defaults
Command line: Merge the merge commit back to develop. From local develop directory:

git fetch
git pull origin master
git push

Editor+TortoiseGit: Bump version numbers in ExcelDataReader.csproj and ExcelDataReader.DataSet.csproj immediately, commit and push

NOTE: I wish to avoid the merge commit in steps 1-2 when merging master into develop - I'm sure its possible from the cmd, but haven't figured it out yet. So I use the Github UI to merge develop into master, which creates a merge commit. The merge commit brings the master ahead of develop, but is merged back to develop immediately from the cmdline in step 5.
Do not ever squash or rebase from the Github UI when merging develop into master and vice-versa!
Prereleases
AppVeyor creates Nuget-packages with a prerelease version suffix based on the branch name and build number.

Github UI: Create and tag release in develop branch

Name tag in format "vX.Y.Z-developWWWWW" @ target = develop. WWWWW is the build number from AppVeyor
Check title and content layout against earlier releases for consistency
Tick the "Prerelease" checkbox
Upload Nugets from https://ci.appveyor.com/project/andersnm/exceldatareader/build/artifacts

Nuget.org: Upload Nugets from AppVeyor, use the defaults

@andersnm Perhaps we could use the wiki for this kind of information?


ArrayIndexOutOfBoundsException: 0

When attempting to train the engine, I get to this error. I have tried many different PIO installations, and all result in this error. I am sure there is some simple mistake I am making, but any guidance would be appreciated. I am using PIO 0.11.0 and UR 0.6.0.
[INFO] [Engine$] EngineWorkflow.train
[INFO] [Engine$] DataSource: com.actionml.DataSource@d36c1c3
[INFO] [Engine$] Preparator: com.actionml.Preparator@437281c5
[INFO] [Engine$] AlgorithmList: List(com.actionml.URAlgorithm@27da994b)
[INFO] [Engine$] Data sanity check is on.
[WARN] [TableInputFormatBase] Cannot resolve the host name for ACPIOTest/<IP_ADDRESS> because of javax.naming.NameNotFoundException: DNS name not found [response code 3]; remaining name '<IP_ADDRESS>.in-addr.arpa'
[INFO] [DataSource] Received events List()
[WARN] [TableInputFormatBase] Cannot resolve the host name for ACPIOTest/<IP_ADDRESS> because of javax.naming.NameNotFoundException: DNS name not found [response code 3]; remaining name '<IP_ADDRESS>.in-addr.arpa'
[INFO] [Engine$] com.actionml.TrainingData does not support data sanity check. Skipping check.
[INFO] [Engine$] com.actionml.PreparedData does not support data sanity check. Skipping check.
[INFO] [URAlgorithm] Actions read now creating correlators
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
        at org.apache.mahout.math.cf.SimilarityAnalysis$.cooccurrencesIDSs(SimilarityAnalysis.scala:145)
        at com.actionml.URAlgorithm.calcAll(URAlgorithm.scala:311)
        at com.actionml.URAlgorithm.train(URAlgorithm.scala:285)
        at com.actionml.URAlgorithm.train(URAlgorithm.scala:175)
        at org.apache.predictionio.controller.P2LAlgorithm.trainBase(P2LAlgorithm.scala:49)
        at org.apache.predictionio.controller.Engine$$anonfun$18.apply(Engine.scala:692)
        at org.apache.predictionio.controller.Engine$$anonfun$18.apply(Engine.scala:692)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.immutable.List.foreach(List.scala:318)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at org.apache.predictionio.controller.Engine$.train(Engine.scala:692)
        at org.apache.predictionio.controller.Engine.train(Engine.scala:177)
        at org.apache.predictionio.workflow.CoreWorkflow$.runTrain(CoreWorkflow.scala:67)
        at org.apache.predictionio.workflow.CreateWorkflow$.main(CreateWorkflow.scala:250)
        at org.apache.predictionio.workflow.CreateWorkflow.main(CreateWorkflow.scala)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731)
        at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181)
        at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206)
        at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121)
        at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)

This is because you have no data for some of your events.
Please address questions to the Google Group: https://groups.google.com/forum/#!forum/actionml-user
Can you share your engine.json and events that match each of the "eventNames" in the engine.json.


Fixed #11707 -- Stopped creation of duplicate foreign keys with limit…

Filtered ForeignKeys when using limit_choices_to for duplicates.

When you are happy with the most recent changes please squash into a single commit.

I believe it is now fixed.

How do I get this merged?
Or should I just wait.

@alvinshaita I think so. It's marked in trac. So someone with commit permissions will eventually either merge or come back with remarks.

I hope it is fine to ask this here, as the question is related in my opinion.
I am currently working on a project where I need to have a foreign key to the User model, but only users of some given groups should be selectable.
Therefore, I limit the options with:
limit_choices_to={
    'groups__name__in': {'group1', 'group2', 'group3'}
}

This works properly, but when I now use a rest framework view to set this field, the following error is returned:
(but only if the given user is in more than one group)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 234, in is_valid
    self._validated_data = self.run_validation(self.initial_data)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 433, in run_validation
    value = self.to_internal_value(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 490, in to_internal_value
    validated_value = field.run_validation(primitive_value)
  File "/venv/lib/python3.7/site-packages/rest_framework/relations.py", line 153, in run_validation
    return super().run_validation(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/fields.py", line 565, in run_validation
    value = self.to_internal_value(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/relations.py", line 256, in to_internal_value
    return self.get_queryset().get(pk=data)
  File "/venv/lib/python3.7/site-packages/django/db/models/query.py", line 422, in get
    num if not limit or num < limit else 'more than %s' % (limit - 1),
accounts.models.User.MultipleObjectsReturned: get() returned more than one User -- it returned 2!

Is this a Django problem or more of a rest_framework bug?
Or is this even fixed with your change?

I hope it is fine to ask this here, as the question is related in my opinion.
I am currently working on a project where I need to have a foreign key to the User model, but only users of some given groups should be selectable.
Therefore, I limit the options with:
limit_choices_to={
    'groups__name__in': {'group1', 'group2', 'group3'}
}

This works properly, but when I now use a rest framework view to set this field, the following error is returned:
(but only if the given user is in more than one group)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 234, in is_valid
    self._validated_data = self.run_validation(self.initial_data)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 433, in run_validation
    value = self.to_internal_value(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/serializers.py", line 490, in to_internal_value
    validated_value = field.run_validation(primitive_value)
  File "/venv/lib/python3.7/site-packages/rest_framework/relations.py", line 153, in run_validation
    return super().run_validation(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/fields.py", line 565, in run_validation
    value = self.to_internal_value(data)
  File "/venv/lib/python3.7/site-packages/rest_framework/relations.py", line 256, in to_internal_value
    return self.get_queryset().get(pk=data)
  File "/venv/lib/python3.7/site-packages/django/db/models/query.py", line 422, in get
    num if not limit or num < limit else 'more than %s' % (limit - 1),
accounts.models.User.MultipleObjectsReturned: get() returned more than one User -- it returned 2!

Is this a Django problem or more of a rest_framework bug?
Or is this even fixed with your change?

I believe the solution should solve the problem because all the duplicates are removed.

Hi @alvinshaita, at a glance you appear to be saying you've addressed all feedback to date. If that's true, you can get into the review queue by unchecking Patch needs improvement on the underlying ticket. That is perfectly fine to do if you have dealt with all feedback; this is not the same as changing a triage decision. Cheers

@alvinshaita Thanks for updates :+1: Welcome aboard :boat:
I removed unnecessary changes in RelatedField (sorry, my fault, they were not necessary), moved tests to the tests.model_forms.tests.LimitChoicesToTests, added tests for ManyToManyField (to confirm fix for ticket-1891).