Issues executing the ecomplexity codes

Hello,
I'm a PhD student at George Mason University. I'm working on two projects where I'm attempting to apply, for the first time, these economic complexity methods, and I hope to do many more of these projects in the future. I'm trying to replicate these codes on the BACI dataset to learn how to apply the methods in Stata before I attempt to apply them to a different dataset, but I'm having a few issues executing the codes.
First, I have a question about the read_cepii.do codes. When I "Convert to observatory ids" and merge on i over 10 million obs. did not match and when I merge on j over 8 million obs. did not match. When I "merge to create the export_value and import_value files" 38 million matched and over 94 million did not match. Is that normal? If not, what kind of number should I expect and what might I be doing wrong?
Second, on the atlas_variables.do file, when I "Create touse variable for loading the data into MATA" and then "quietly levelsof origin_id if `touse'==1, local(LOCATION)" I keep getting an error saying ==1 is an invalid name. I tried a workaround and just generated a complex_country variable, but when I "mata exp_cp = rowshape(exp_long,Ncx)," I keep getting an r(3300) error saying my argument is out of range. I thought it might be because my Stata/BE 17 version didn't allow for a big enough matsize for the matrix, so I purchased the Stata/MP 17 version, but I still can't execute the rowshape command. Perhaps it is something I'm doing wrong earlier in the process, but I cannot figure it out and I'm fast approaching some deadlines.
I'd very much appreciate any help or guidance anyone can provide to help me solve these issues. Or, if anyone knows where I might be able to get some help with executing these codes, I'd appreciate a point in the right direction.
Thanks,
Chad Smith

Hi Chad, hope you are doing well.
The code you are apparently using is very old and I do not remember it very
well. From what I see you have two questions: one on the CEPII data and the
other on the code used to calculate the complexity variables.
I think it's easy if I share and explain an updated code and data.  You can
download the trade data shown in the https://atlas.cid.harvard.edu/ from
https://atlas.cid.harvard.edu/data-downloads (data similar to that of
CEPII). We wrote a stata command to calculate all the complexity measures
using. You can install it typing the following in the Stata command line:
net install ecomplexity, from("
https://raw.githubusercontent.com/cid-harvard/ecomplexity/master/") force
See the documentation (help ecomplexity once installed). The code is not
difficult to follow. You can open it and modify it for your projects. I’m
attaching a stata dofile that explains some of the calculations.
I hope this is helpful.
Cheers,
s.
On Mon, Dec 6, 2021 at 7:56 AM Chad Smith @.***> wrote:

Hello,
I'm a PhD student at George Mason University. I'm working on two projects
where I'm attempting to apply, for the first time, these economic
complexity methods, and I hope to do many more of these projects in the
future. I'm trying to replicate these codes on the BACI dataset to learn
how to apply the methods in Stata before I attempt to apply them to a
different dataset, but I'm having a few issues executing the codes.
First, I have a question about the read_cepii.do codes. When I "Convert to
observatory ids" and merge on i over 10 million obs. did not match and when
I merge on j over 8 million obs. did not match. When I "merge to create the
export_value and import_value files" 38 million matched and over 94 million
did not match. Is that normal? If not, what kind of number should I expect?
Second, on the atlas_variables.do file, when "Create touse variable for
loading the data into MATA" and then quietly "levelsof origin_id if
`touse'==1, local(LOCATION)" I keep getting an error saying ==1 is an
invalid name. I did a workaround and just generated a complex_country
variable, but when I "mata exp_cp = rowshape(exp_long,Ncx)," I keep getting
an r(3300) error saying my argument is out of range. I thought it might be
because my Stata/BE version of Stata didn't allow for a big enough matsize
for the matrix, so I purchased the Stata/MP version, but I still can't
execute the rowshape command. Perhaps it is something I'm doing wrong
earlier in the process, but I cannot figure it out and I'm fast approaching
some dealines.
I'd very much appreciate any help or guidance anyone can provide to help
me solve these issues. Or, if anyone knows where I might be able to get
some help executing these codes, I'd appreciate a point in the right
direction.
Thanks,
Chad Smith
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/cid-harvard/ecomplexity/issues/5, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC5ANCH7RU5NKQQJBBAZ2YTUPSJEFANCNFSM5JOKAHNQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
CENTER FOR INTERNATIONAL DEVELOPMENT AT HARVARD UNIVERSITY
Sebastian Bustos | Growth Lab | Doctoral Fellow
Rubenstein 422
Harvard Kennedy School, 79 JFK Street
Cambridge, MA 02138
T:<PHONE_NUMBER>- F:<PHONE_NUMBER>
@.*** @.**>|
www.cid.harvard.edu
http://www.cid.harvard.edu

Hi Sebastian,
Thanks for the reply and for pointing me in the right direction. I appreciate the explainer do-file as well. I’ll try the new data and code and see how I do. I’ll reach back if I have any further issues.
Thanks,
Chad

Hi Sebastian,
Sorry, but you said you were attaching a stata dofile to explain some of the calculations, but I don't see the attachment. Can you resend it?
Thanks again,
Chad

Hi Chad, just checked, and the file was attached. Maybe it is not going
through github?  Anyways, you can get it using the following link:
https://www.dropbox.com/s/1whgrcqv9kuyroe/sample_file_ecomplexity.do?dl=0
On Mon, Dec 6, 2021 at 6:48 PM Chad Smith @.***> wrote:

Hi Sebastian,
Sorry, but you said you were attaching a stata dofile to explain some of
the calculations, but I don't see the attachment. Can you resend it?
Thanks again,
Chad
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/cid-harvard/ecomplexity/issues/5#issuecomment-987263727,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC5ANCCMALB5FFLFJMIYR23UPUVTFANCNFSM5JOKAHNQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
CENTER FOR INTERNATIONAL DEVELOPMENT AT HARVARD UNIVERSITY
Sebastian Bustos | Growth Lab | Doctoral Fellow
Rubenstein 422
Harvard Kennedy School, 79 JFK Street
Cambridge, MA 02138
T:<PHONE_NUMBER>- F:<PHONE_NUMBER>
@.*** @.**>|
www.cid.harvard.edu
http://www.cid.harvard.edu

Hi Sebastian,
Thanks for your help! I think I know which document you are referring to so that's fine.
But I'm now feeling confused as I don't know which order to execute the new set of do-files. Is there a run_codes.do or other similar doc outlining the order like there was in the beta edition?
Also, I understand the economic complexity concepts from the literature, but for an outsider without a coding background, these coding languages are incredibly esoteric and when I run into a problem or get an error code, I feel lost as to what to do about it. Does the Harvard CID offer any professional services to help researchers understand how to execute the methods? Or do you suggest another resource I can go to? I'm willing to pay for some help at this point.
Thanks,
Chad

Hi Sebastian,
Issue is resolved! Deadlines will be met! I found a resource to help me out!
I wanted to say thanks for responding.
My journey down the ecomplexity path has begun!
Chad


Interface for viewing, searching, and editing another user's works

When we migrate content over from Scholarsphere 3, many of the works will be in draft state because they are private, or lack the right metadata for publishing. Presently, there is no way to view these draft works unless you are logged as the depositor who originally created them.
WDLL
A user, with the correct level of permissions such as an admin, can search for, view, and update existing draft works so that they can be published, or remain in draft state until such a time that they would be withdrawn.

I don't think we need this given our current plans for the "dashboard" (my deposits page). #29

Subsumed by #29


The template path is not specified

Using HEAD...
goreporter -p ./myproject gives
[Apollo]2017/04/11 14:18:39 The template path is not specified
The README.md indicates specifying the template file is optional. I don't have a template file and would prefer it just supply me with a default template file for now. Thanks.

Template in the github.com/wgliang/goreporter/templates/template.html.

Thanks. But the README indicates it's optional, which is evidently not correct. And it would be nice if it would default to that one if none is specified.

{-t templatePathIfHtml} means if you want a html you must specify it.
Thank you for your suggestion, I will reconsider the current method

{-t templatePathIfHtml} means if you want a html you must specify it.

Not sure I understand. If I don't specify it, it just fails with an error (see above).

you can run it:

you can run it:
./goreporter -p ../goreporter -r html -t ./templates/template.html OR ./goreporter -p ../goreporter -t ./templates/template.html

Thank you for your suggestion,and it will default to that one if none is specified.

How can I install stable version-1.1.1
➜ GoglandProjects go get -u github.com/wgliang/goreporter/tree/version-1.1.1
package github.com/wgliang/goreporter/tree/version-1.1.1: cannot find package "github.com/wgliang/goreporter/tree/version-1.1.1" in any of:
/usr/local/go/src/github.com/wgliang/goreporter/tree/version-1.1.1 (from $GOROOT)
/Users/yongxue/GoglandProjects/src/github.com/wgliang/goreporter/tree/version-1.1.1 (from $GOPATH)
原始邮件
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>发送时间:2017年4月12日(周三) 10:51
主题:Re: [wgliang/goreporter] The template path is not specified (#8)
Thank you for your suggestion,and it will default to that one if none is specified.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@wgliang I think you're missing the point of the comment:
goreporter -p undertest -r json
[Apollo]2017/04/12 14:03:44 The template path is not specified,and will use the default template[./templates/template.html]
[Apollo]2017/04/12 14:03:44 open ./templates/template.html: no such file or directory

is the same error as
goreporter -p undertest -r html
[Apollo]2017/04/12 14:05:26 The template path is not specified,and will use the default template[./templates/template.html]
[Apollo]2017/04/12 14:05:26 open ./templates/template.html: no such file or directory

I tried using -t /go/src/github.com/wgliang/goreporter/templates/template.html, but it fails when generating the output in html:
html/template:skylar-apollo: ends in a non-text context: {stateCSS delimNone urlPartNone jsCtxRegexp attrNone elementStyle <nil>}

What I would like is some documentation on what this template file is suppose to include. And more examples than the existing broken one.

I updated to latest and am now getting the same error.
$ goreporter -p ./shopalarm [Apollo]2017/04/12 10:29:03 The template path is not specified,and will use the default template[./templates/template.html] [Apollo]2017/04/12 10:29:03 open ./templates/template.html: The system cannot find the path specified.
It seems to want me to know where to find its magic template file.

Can not find the template file. The template file in github.com/wgliang/goreporter/template/template.html.
Now,unless you specify a valid template, otherwise it will use the default template file, I have written into the program, you can safely try again.
Thank you very much for your attention and pointing out my mistakes.

working for me now, thanks

@jeff-knurek This problem has also been fixed due to the previous increase in style errors.
See in  fix style


Count Task with sub tags

I use Tags to label some of my tasks
-  [ ] #Health/Water  - Fill water Jug
-  [ ] #Routine/maintenence - Clean out inbox
-  [ ] #Health/Vitamins Take vitamin B12
-

Is there any way to filter tasks by both tag and task? Tried to do it but running into issues

Yes you can.
The searchTarget for task actually is very flexible and can accept text or regex.
Will post an example here later.

Notice: the whole value of searchTarget should be wrapped in single quotes

This issue will be closed.
Further questions or suggestions are still welcome.

Hi there,
I am trying to do a search in this exact way, but it still only seems to find instances where the whole text of the task matches the searchType.
Here is what I have:
searchType: task.notdone
searchTarget: '#waitingon'
folder: 'Daily Notes'
summary:
    template: "Total count: {{sum()}}"

This will find tasks that are exactly named "#waitingon" but not if that tag is included in the text of the task somewhere.

So I was able to get the search working using the following regex:
searchTarget: '.#waitingon'
It's kind of weird though, because the example above is definitely not written like that.


src/locales-foo seems unneeded

I just discovered https://github.com/yunity/karrot-frontend/tree/master/src/locales-foo, seems to be wrongly committed and merged. I guess we can delete it? @nicksellen

Ah, sorry for delayed response! Yes, I agree, seems to be accidentally committed (or some function neither of us can recall!). Seems to have my name all over the git history...


Call to undefined function GrapheneNodeClient\Tools\secp256k1_context_create()

Read intall ib readme
You have to install extensions for php

how do i install https://github.com/Bit-Wasp/secp256k1-php on windows ?

Use docker, vagrant or vm-ware

i installed all components and extensions, but while
echo "extension=secp256k1.so" > /usr/local/etc/php/conf.d/secp256k1.ini
error says,
-bash: /usr/local/etc/php/conf.d/secp256k1.ini: No such file or directory

now another error saying
Argument 2 passed to secp256k1_ecdsa_recoverable_signature_serialize_compact() must be of the type string or null, resource given

See install section in readme and sure that you installed correct lib

I think you have error in code.

I succesfully corrected and now working with following changes in Transaction.pho, signOperation function

protected static function signOperation($msg, $privateWif)
{
$context = secp256k1_context_create(SECP256K1_CONTEXT_SIGN | SECP256K1_CONTEXT_VERIFY);
    $msg32 = hash('sha256', hex2bin($msg), true);
    $privateKey = Auth::PrivateKeyFromWif($privateWif);

    /** @var resource $signature */
    $signatureRec = null;
    $i = 0;
    while (true) {
        if ($i === 1) {
            //sing always the same
            throw new TransactionSignException("Can't to find canonical signature, {$i} ties");
        }
        $i++;

//            echo "\n i=" . print_r($i, true) . ''; //FIXME delete it
if (secp256k1_ecdsa_sign_recoverable($context, $signatureRec, $msg32, $privateKey) !== 1) {
throw new TransactionSignException("Failed to create recoverable signature");
}
        $signature = null;
        if (secp256k1_ecdsa_recoverable_signature_convert($context, $signature, $signatureRec) !== 1) {
            throw new TransactionSignException("Failed to create signature");
        }
        $der = null;
        if (secp256k1_ecdsa_signature_serialize_der($context, $der, $signature) !== 1) {
            throw new TransactionSignException("Failed to create DER");
        }

//            echo "\n" . print_r(bin2hex($der), true) . ''; //FIXME delete it
if (self::isSignatureCanonical($der)) {
break;
}
}
    $serializedSig = null;
    $recid = 0;
    secp256k1_ecdsa_recoverable_signature_serialize_compact($context, $serializedSig, $recid,$signatureRec);

    $serializedSig = hex2bin(base_convert($recid + 4 + 27, 10, 16)) . $serializedSig;
    $length = strlen($serializedSig);
    if ($length !== 65) {
        throw new \Exception('Expecting 65 bytes for Tx signature, instead got ' . $length);
    }

    return bin2hex($serializedSig);
}

Please check the pull request i have submitted.

ok, use https://github.com/Bit-Wasp/secp256k1-php/releases/tag/v0.1.2 for correct working
or you can wait while i will up Bit-Wasp/secp256k1-php to  v0.2.1

i fixed it
v5.0.1

my steemit account @milan.amatya13

done, make post for utopian.io


refactor(ast)!: remove passing Trivias around

#6446  👈
main

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

Join @Boshen and the rest of your teammates on  Graphite


Langchain FLARE with Azure open Ai doesn't work

InvalidRequestError                       Traceback (most recent call last)
 in <cell line: 1>()
----> 1 flare.run(query)
20 frames
/usr/local/lib/python3.10/dist-packages/openai/api_resources/abstract/engine_api_resource.py in __prepare_create_request(cls, api_key, api_base, api_type, api_version, organization, **params)
81         if typed_api_type in (util.ApiType.AZURE, util.ApiType.AZURE_AD):
82             if deployment_id is None and engine is None:
---> 83                 raise error.InvalidRequestError(
84                     "Must provide an 'engine' or 'deployment_id' parameter to create a %s"
85                     % cls,
InvalidRequestError: Must provide an 'engine' or 'deployment_id' parameter to create a <class 'openai.api_resources.completion.Completion'>

Works fine with ChatOpenAi, I used the same method of initiating Azurechat and AzureOpenAI for other use-cases but it works there.

Have you tried providing an engine or a deployment_id?
If you have a Azure Subscription the default engine is: testing-3-5-gpt

can your give me an example official documentation as i recall for azure open ai and chat open ai does not have an engine.
BASE_URL = "https://${TODO}.openai.azure.com"
API_KEY = "..."
DEPLOYMENT_NAME = "chat"
model = AzureChatOpenAI(
openai_api_base=BASE_URL,
openai_api_version="2023-03-15-preview",
deployment_name=DEPLOYMENT_NAME,
openai_api_key=API_KEY,
openai_api_type = "azure",
)


How should I structure a subsection/view?

I'm reading: https://docs.google.com/document/d/1XXMvReO8-Awi1EZXAXS4PzDzdNvV6pGcuaF4Q9821Es/pub and studying a couple of AngularJS projects (including this), and I got some questions about the "Angular Best Practices for App structure" guide.
"We group elements of an application either under a "components" directory (for common elements reused elsewhere in the app), or under meaningfully-named directories for recursively-nested sub-sections that represent structural "view" elements or routes within the app"
Okay, it says that each subsection/view represents a not reusable component of the app which will act as a resource like "user", "post", "fruits" etc.
Here is how I'm thinking that my app should be structured:
app/
  app.js
  e2e-tests/
  components/
    version/
      version.js
      version-directive.js
      version-filter.js
  user/
    user.js // angular.module('user', [])
    user-service.js // angular.module('user').factory(...)
    user-service_test.js
    user-profile/
      user-profile.js // angular.module('user-profile', ['user-profile-controller'])
      user-profile.html
      user-profile_test.js
      user-profile-controller.js // angular.module('user-profile-controller', [])
      user-profile-controller_test.js

Inside of user-profile.js, I'll keep the user-profile related routes, controllers etc. in a new module called 'user-profile' where I'll attach the 'user-profile-controller' module as a requirement, 'user-profile' will consume the user-profile-controller.js, which will consume the user-service.js.
Where am I wrong? I'm really confused about this, I guess...

Discussing application layout is outside the scope of this repo. This subject is more suitable for one of the general support channels.
GitHub issues are reserved for bug reports and feature requests.
That said, there are several popular styleguides (including this one) that contain useful advice on application structuring.


add limit to parallel jobs in packer testing

This PR limits the Number of checks running in parallel when testing individual extensions, as running all of them at once leads to 429 Too Many Requests errors
https://github.com/Samagra-Development/WarpSQL/actions/runs/5520523802/jobs/10067268132

Hi @jayanth-kumar-morem, can you review the PR when you get a chance. Thanks!


containenv init can be decomposed into a sequence of tasks, we'll work them out here.

Tasks:
(0)  inspect host system, and record relevant config

(1) inspect changesource and record relevant config
(1a)   FOO/.containenv

START STATE:

A PROJECT_DIR which either has, or has not been the target of containenv init.
a container image for the project either does, or does not exist (locally, &/or remotely)

END STATE:

The containenv configuration has been written into PROJECT_DIR/.containenv:
Config:

Dockerfile, and/or rkt config
entrypoint.sh
run_containenv.sh

A runnable image has been been uploaded to an appropriate registry:

The image is tagged with a tag-compliant/sanitized absolute path to the project
The image tag is optionally pre-pended with appropriate (configured) registries


Add Comparable.between(T, T) extension method

In Kotlin we can do if (c !in '0'..'9'), unfortunately, the in operator can't be overwritten in Dart, probably we can just add Comparable.between(T, T) extension method as well, but maybe there is a better method name to do.
  test('Comparable.between()', () async {
    expect(1.between(0, 2), true);
    expect(1.between(1, 2), true);
    expect(1.between(0, 1), true);
    expect(1.between(0, 0), false);
    expect(2.between(0, 1), false);
    expect(0.between(1, 2), false);
  });

ref. https://gist.github.com/yongjhih/a0a17adaef0eb5fc7dbba5e6924ed8de

You can use rangeTo together with contains.
expect(1.rangeTo(10).contains(3), true);
expect(1.rangeTo(10).contains(11), false);

rangeTo().contains() is not efficent for between() if compare to the following code, and not supported DateTime.between(t1, t2)
extension ComparableRangeX<T> on Comparable<T> {
  bool between(T min, T max) => compareTo(min) >= 0 && compareTo(max) <= 0;
}


[incubator/vault] Enable resources for consul-agent container

Signed-off-by: Cyrille<EMAIL_ADDRESS>
What this PR does / why we need it:
Allow to define resources (limit/request for CPU/Memory) for consul agent container.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/assign @scottrigby

/assign @mattfarina

/assign @maorfr

/ok-to-test

this one looks like it needs a rebase @cyrilledec

/lgtm
Thanks for contributing!


Remove deprecations

Remove code deprecated in 1.x

ContextualRegistry in webserver
Use of Span instead of SpanContext in webserver and security


Required nginx equivalent for proxy_pass_request_headers

What version of Traefik are you using (traefik version)?
latest
What did you do?
Proxypass with basic auth for elasticsearch domain in aws
What did you expect to see?
proxy pass works
What did you see instead?
traefik add authorization:Basic header which breaks access to elasticsearch
Is it possible to add equivalent of proxy_pass_request_headers to the config?
passHostHeader is not enough for cases like this

Do you think #1236 can resolve your problem ?

Closed by #1236.

I think this issue is not beel resolved with the latest release too!


[beta] Expand tests for different styling formats

Challenge change-the-color-of-text has an issue.
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.

CatPhotoApp

Click here to view more cat photos.

Things cats love:

cat nip

laser pointers

lasagna

Top 3 things cats hate:

flea treatment

thunder

other cats

  <form action="/submit-cat-photo">
    <input type="radio" name="indoor-outdoor" checked> Indoor
    <input type="radio" name="indoor-outdoor"> Outdoor

    <input type="checkbox" name="personality" checked> Loving
    <input type="checkbox" name="personality"> Lazy
    <input type="checkbox" name="personality"> Energetic

    <input type="text" placeholder="cat photo URL" required>
    <button type="submit">Submit</button>
  </form>

A few things

Don't put your issue in the title. That should be included in the issue body.
If you're having issues passing a test please discuss your code in the Gitter help channel
This challenge states to include your style code inline with your html, not add a


What about Azure CLI statements?

Would be helpful to have or at least point to az cli statements to achieve the same goal.

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

ID: 23617aaa-af93-2f09-5a7a-2a9a977dc5f2
Version Independent ID: 0d68d344-4b56-6f3b-ac02-08d43e2ac559
Content: Azure Quickstart - Set and retrieve a secret from Key Vault using Azure portal
Content Source: articles/key-vault/quick-create-portal.md
Service: key-vault
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@andrei-dascalu Thanks for your feedback! We will investigate and update as appropriate.

hello @andrei-dascalu I'm not sure I understand, the CLI version is on the left side : https://docs.microsoft.com/en-us/azure/key-vault/quick-create-cli

Does this answer your question? This document already exists on the left side, It would be redundant to add it into this doc and would set a precedent for all docs to have references to items related to the doc. That is the purpose of the leftside bar.

If you have anymore issues please let us know otherwise i will be closing out this git issue by end of day today.


Passing async siteId and trackerUrl

When importing the tracker module:
NgxMatomoTrackerModule.forRoot({ siteId: 'initialSiteId', trackerUrl: 'initialTrackerUrl'})

How can the siteId and trackerUrl first be retrieved async from a service, before matomo actually is trying to do something with these initial values?
I tried something like this:
function loadConfigurationFactory(configurationService: ConfigurationService): () => Observable<boolean> {
    return () => configurationService.configurationLoadedObservable; // this only emits when loading is complete
}

@NgModule({
    imports: [
        NgxMatomoTrackerModule.forRoot({ siteId: 'initialSiteId', trackerUrl: 'initialTrackerId' }),
        NgxMatomoRouterModule,
    ],
    providers: [
        ...
        {
            provide: APP_INITIALIZER,
            useFactory: loadConfigurationFactory,
            deps: [ConfigurationService],
            multi: true,
        }
    ]
})
export class AppModule {}

But how will I be able to set the url and site id after that??

Hi @aicokleinovink
Had you tried solution described in #31 ?

I just took a look at that solution, thanks for your quick reply. I understand this is an Angular shortcoming when importing a module like this. However, with the older versions of this package it was possible to initialize matomo in a later stage using the init function if I'm not wrong? I'm only running into this issue just now while upgrading from a 0.something version to 3.0.0.
The solution you provided doesn't really seem like a good way to do this my opinion.

with the older versions of this package it was possible to initialize matomo in a later stage using the init function

No, the initialization is done automatically when NgxMatomoTrackerModule is loaded.

I'm only running into this issue just now while upgrading from a 0.something version to 3.0.0.

There is no 0.x version of this lib: are you talking about version 1.x for Angular <= 12?
What version of angular are you using? Take a look at the compatibility table shown in the README

The solution you provided doesn't really seem like a good way to do this my opinion.

Why?

There is no 0.x version of this lib: are you talking about version 1.x for Angular <= 12?

You're totally right, I just found out the application I'm working on was previously using this ngx-matomo package.
Fetching data may take quite a while unfortunately, so waiting for that before bootstrapping the application is a no-go.
Thanks so much for your time, I'll close this issue. I will take a look and see if I can provide a PR.

@aicokleinovink I'm working on a solution, it should be released soon ;)

@aicokleinovink would it suit your needs if you can set tracker config properties (and only these: trackerUrl, siteId, etc.) asynchronously?
Other optional properties would still need to be set in forRoot (requireConsent, etc.)

:tada: This issue has been resolved in version 2.5.0 :tada:
The release is available on:

v2.5.0
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 3.1.0 :tada:
The release is available on:

v3.1.0
GitHub release

Your semantic-release bot :package::rocket:

@aicokleinovink new feature released: check the new section in README ;-)
(Available only in versions >= 2.5.0 for Angular 13 and 3.1.0 for Angular 14)


Compatibilty Score

Is your feature request related to a problem? Please describe.
Dependabot running on Github is using a compatibility score for specific dependencies.
See: https://github.com/datagalaxy-lab/datagalaxy-toolbox/pull/50

Dependabot security updates may include compatibility scores to let you know whether updating a dependency could cause breaking changes to your project. These are calculated from CI tests in other public repositories where the same security update has been generated. An update's compatibility score is the percentage of CI runs that passed when updating between specific versions of the dependency.

Describe the solution you'd like
For now I never saw such a compatibility score on PRs made by Dependabot on Azdo
Additional context
I do not want private stats on my Azdo server but rather reuse stats from Github. Is this something we can get from Dependabot CLI ?

This was briefly experimented with in V1 of the task, but has not been added to V2 since it is not an official configuration that can be used with Dependabot CLI.
It was supported in task V1 by injecting extra markup in to the PR description:
https://github.com/tinglesoftware/dependabot-azure-devops/blob/a55a34798922fdbd6fd9dab3ac4c4fe08782f2ac/updater/lib/tinglesoftware/dependabot/api_clients/azure_api_client.rb#L443-L460
This still could be added to task V2, it would just have to be injected by the TypeScript extension prior to creating the pull request, rather than handling it via Dependabot directly.
@mburumaxwell what are your thoughts on this? It's a fairly trivial change, happy to add it if you are ok with it. It would require adding an extra task input to toggle on/off though.

That's super nice. I played a bit with the url and perhaps you need a little mapping depending on the ecosystem used.
Like if you use the npm ecosystem in your dependabot configuration, you have to pass the value npm_and_yarn to this url.
See the following error when testing:
{
   "errors":[
      {
         "status":400,
         "title":"Bad Request",
         "detail":"Invalid package manager - must be 'bundler', 'cargo', 'composer', 'devcontainers', 'docker', 'elm', 'github_actions', 'go_modules', 'gradle', 'hex', 'maven', 'nuget', 'npm_and_yarn', 'pip', 'pub', 'submodules', 'swift' or 'terraform'"
      }
   ]
}

I played a bit with the url and perhaps you need a little mapping depending on the ecosystem used.

If you are building the url yourself, then yes.
The extension automatically maps between the configuration value and the dependabot-core value in:
https://github.com/tinglesoftware/dependabot-azure-devops/blob/a55a34798922fdbd6fd9dab3ac4c4fe08782f2ac/updater/lib/tinglesoftware/dependabot/job.rb#L187-L204

I played a bit with the url and perhaps you need a little mapping depending on the ecosystem used.

If you are building the url yourself, then yes. The extension automatically maps between the configuration value and the dependabot-core value in:
https://github.com/tinglesoftware/dependabot-azure-devops/blob/a55a34798922fdbd6fd9dab3ac4c4fe08782f2ac/updater/lib/tinglesoftware/dependabot/job.rb#L187-L204

Perfect

@rhyskoedijk a contribution for it is okay.
If we can avoid the new input but have it on by default, then it would be better (the fewer knobs, the better). If not, then it's okay.

@rhyskoedijk how can we move forward on this? Could I offer help? You seem to know exactly what needs to be done on the technical side. I can test and report any problems to you :)
Thanks!

@sailro this will be implemented by https://github.com/tinglesoftware/dependabot-azure-devops/pull/1458.


Change default api url from forge.sindri.app to sindri.app

Change default api url from forge.sindri.app to sindri.app
This is in support of Sindri's URL switch for the production release.

@katiemckeon I've recompressed all circuits in the circuit_database/ folder. 0b7e1c3


URI's path constructor should not encode colon

Dart version:  2.8.2 (stable)
MacOSX, using VSCode
The docs say

The percent-encoding of the path segments encodes all characters except for the unreserved characters and the following list of characters<EMAIL_ADDRESS>
but
print(Uri(path: 'http://google.com').path);
prints:
http%3A//google.com
Docs: https://api.flutter.dev/flutter/dart-core/Uri/Uri.html
Earlier in the docs, its says:

The path component is set through either path or pathSegments. When path is used, it should be a valid URI path, but invalid characters, except the general delimiters ':/@[]?#', will be escaped if necessary.

The colon is in both lists, so I expect it to not turn into %3A.
Besides this, why are the two lists of escaping-exempt characters different?

Oh, I think I misinterpreted how 'path' is used in the constructor. The solution seems to be to use:
Uri.http('google.com', '/test')
or:
Uri.parse('http://www.google.com/test')
which makes 'path' equal to '/test'.
Hopefully this issue saves someone else with a similar question some time. Closing the issue. Thank's for making such a great language, carry on!


[Tosa] Fix legalization of BroadcastTo

fix legalization of BroadcastTo by:

for floats: add with -0.0 (instead of 0.0)
for integer types other than I32, insert cast to I32, before adding zero, then cast back to output type
(because tosa add only supports I32 for integer types)
fixed lit tests for above changes as well

Change-Id: I93351250b18e4a318aa67c7029948bf3ab022533

Hi @jpienaar Can you please review this PR ? Thank you!


Test case 5: Vurdere om det er mulig å kjøre hydrologisk modell sammen med rammeverket

Notater

Test at hydrologisk modell kan kjøre på PPI:extern
Test om hydrologisk modell kan trigges via en regel i snakemake
Kan hydrologisk modell pekes til riktige inputdata, og kan den lagre outputdata på forventet måte?
Finn et minimalt eksempel som kan fungere som en demo / proof of concept
Test dette eksempelet

Inputfiler

Bruk følgende inputfiler fra seNorge, HySN2018v2005ERA5 og KliNoGrid vind (referanse data):

 /lustre/storeC-ext/users/kin2100/MET/ReferenceData

Bruk følgende inputfiler, som er biasjusterte og nedskalerte data fra EURO-CORDEX fra CMIP5. Modellen trenger alle variable, men vi kan fokusere på kun historiske data som ligger her:

/lustre/storeC-ext/users/kin2100/NVE/EQM/*/*/hist/*nc4

g++ er tilgjengelig i conda miljø:
source /modules/centos7/conda/prod_04_2021/etc/profile.d/conda.sh
conda activate production-08-2023
HBV kode og makefile
/lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/SourceDistHbv

Metode
Test distHBV-modellen

Kompiler modellen på ext-PPI
Definér input og output i en inputfil
Kjør commando som trigger kjøringen

Output
Output som modellen lager

Shaochun har kompilert hbv-koden på ext-PPI og den ser ut til å kjøre.
@huangshaochun Hvordan fungere oppsettet? Har du et skript?

Det gikk bra. Hva slags skript mener du? Jeg har en makefile å kompliere hbv koden og en run_hbv.sh å kjøre HBV.

Den run_hbv.sh. Hvor liger den? Jeg kan prøve å lage en job fra denne, da kan vi finne ut hvor my ressurser det trengs. Har du en estimat (minne og tid)?

/lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/cali_10. Jeg har ikke estimert minne og tid. Det er bare for 10 år og bare 3397 grid celler.

/lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/cali_10. Jeg har ikke estimert minne og tid. Det er bare for 10 år og bare 3397 grid celler.

Husker du hvor lang tid det tok, omtrent?

Det tar veldig lang tid å lese NetCDF filer, ikke beregne for grid celler.

OK. If I want to test this: Can I just cp /lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/cali_10 to a directory and rerun run_hbv.sh (after adjusting the path to the binary) ?

Will this overwrite the existing results?
Will this overwrite you results, i.e. are the result path defined somewhere in a namelist?

Det tar veldig lang tid å lese NetCDF filer, ikke beregne for grid celler.

We can also try rechunking the NetCDF files for optimized time-series access and see whether this speeds up the reading. I assume the model reads point-by-point.

I would suggest you to copy the whole cali_10 to another folder under /lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/. Then you don't need to change anything to run hbv. Just go to the new directary, and run run_hbv.sh. You may need to change the working directory in nse.r if you want to calculate the criteria results.

I have run the model now. Works without problems.

10 years take about 17 minutes
5 years take about 9 minutes
1 year takes about 3 minutes
All takes about 21 GB memory.
Reading NetCDFs takes the longest. I think rechunking won't work, since the model reads all data from one year into memory anyways (as far as I could see). @huangshaochun is this correct? And how can I add more grid-points/another catchment?

I think it is correct that the model reads all data at once. Normally, if we want to add another catchment, we need to  preprocess the input files. It requires GIS work, some preprocessing programs and several additional data to do it. Do we need to setup the model also at MET?

The output files are for 8 vars for each day, but the files only include the mainland Norway and some other neibouring catchments. There are 354448 grid cells.

I think it is correct that the model reads all data at once. Normally, if we want to add another catchment, we need to preprocess the input files. It requires GIS work, some preprocessing programs and several additional data to do it. Do we need to setup the model also at MET?

Thank. I was probably unclear. The 3397 grid cells used in the current setup, is this only 1 catchment? How can I test it with more grid cells?
The idea here in Klimakverna is, to test whether we can run what you ran for Klima i Norge 2025 on ext-PPI.

Now you can run the model setup for all 354448 grid cells in /lustre/storeC-ext/users/klimakverna/development/NVE/hydro/hbv/norge .

Running it for the whole 354448 grid cells works as well. 1 yr in about 25 minutes, and still 21 GB memory usage.

@nvewkw Can you share the routines to convert the .bil files to NetCDF? Maybe I can test that as well on ext-PPI.

Sorry for late reply! Now I have tested the script for converting the runoff projections from binary files to netCDF format. Where should I copy the script to? The script depends on a few files which should also be included.

No worries! You can add the script here:
 /lustre/storeC-ext/users/klimakverna/development/NVE/
e.g. under a new folder post-scripts
Thanks!

@doblerone Not sure why, but I am not allowed to log in to /lustre/storeC-ext/users/klimakverna/! Could you please check whether I have the necessary permission? Thanks a lot!

For some reason, you are not in the klimakverna group on ext-PPI. I'll ask IT to fix this.
You can either

upload it to /lustre/storeC-ext/users/kin2100/NVE/TEMP and I'll move it over or
wait with uploading it until you have access

no rush!

@nvewkw  can you try again whether you have access to  /lustre/storeC-ext/users/klimakverna/development/NVE/ now?

Now I have uploaded my script and other necessary files to /lustre/storeC-ext/users/klimakverna/development/NVE/postprocessing/
The script 'runoff_norway_bin2nc.py' has been tested by using python 3.9. It converts the distHBV runoff results in binary format on daily basis to netCDF format on annual basis. The metadata in the nc-file are rather limited for the moment. And the input-path must be updated when all the hydrological projections are uploaded to ext-PPI. The other files in the folder are helping files for generating the proper seNorge grid coordinates and extracting the results for mainland Norway (324424 grid cells) based on a larger configuration (354448 grid cells) which also covers regions in Sweden.


Key implementation

add primary and foreign keys to the tables

[x] #34
[x] #35

both primary and foreign keys are done


Starting multiple Spark jobs in close succession can lead to a deadlock due to resource exhaustion

This is probably mostly the same as https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/issues/594 which has since been marked as closed, however, the solution described there doesn't seem to work for me.
To quickly describe the issue: assume you are launching multiple spark applications in rapid succession, that will in total not "fit" into your cluster due to the total of CPU or memory requests of all driver and executor pods is higher than the available resources in your cluster.
In a perfect world, a few of these applications could be successfully scheduled (i.e., driver AND executor), would eventually complete, and thus free the resources for the remaining spark applications (i.e., a sort of self-organizing queuing).
Consider this minimal example: assume you have two spark jobs, each with a driver requesting one CPU core, and with an executor requesting two cores. Assume you have a little bit over 3 cores available on your single worker node (just think "minikube" ;-)).
If both spark applications are submitted at almost the same time, both drivers will be scheduled and eventually reach running state, leaving you with roughly one available core in our one node example cluster. Both drivers will try to start their single executor, which will both end up in "Pending" state. Without external intervention, the cluster on its own will not resolve this deadlock situation.
What I very naively hoped is that using the Volcano integration would add the driver and executor pods to the same "PodGroup" so that they are considered as one unit for scheduling and that therefore in my example above, the first spark job would start completely (i.e., driver and executor) and only after it completes, the second would start, that way circumventing the deadlock situation. Alas, this is not what I am observing. While the annotation required to assign driver and executor to the same prodgroup seems to happen, and while it seems that Volcano is working (I can see the corresponding pod events), the deadlock still occurs.
From what I understand, the problem here is that when the drivers are launched and added to the podgroup, Volcano cannot know that there is "more to come" for that pod group (cause only after the driver is scheduled and up and running, it will start the executor pod(s).
Maybe I am using Vulcano incorrectly (I followed the instructions on this page https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/blob/master/docs/volcano-integration.md and from what I can tell it is working). I also tried the "queue" batch scheduler option - same result. Any hints appreciated.
BTW: I am using spark-operator 1.1.0 with Spark 2.4.5

There's feature named "min resource" in volcano, which will help to reserve some resource for spark job. As Volcano does not know how many resource should be reserved, it's better to let operator or user to set that value :)

Hi, I am looking to be a contributor in this project and I am interested to work in this issue. If someone can guide me on the way to become a contributor and make improvements on this issue will be really helpful.

@k82cn can you help me with an example of the min resource feature? I've installed Volcano on my cluster and followed the instructions to run a Sparkapplication on a given Volcano queue as mentioned here, but I'm not sure where to specify the min resource option. I've also looked into the Volcano documentation, and I'm not sure how this works.
Would greatly appreciate any help with this.

@k82cn @praveen-ag
Yes, a bit of information on where and how to set the min resources would be needed here. I had a quick look through the sparkapplication CRD but found nothing that would allow setting the resources for the whole spark application (because this is what Volcano probably needs to know, since the executors and drivers are not launched by the same instance and at the same time, it cannot know the total by just looking at the sums of driver and executor limits and requests).
That aside, we meanwhile "solved" (=worked around) this problem in a different way: we are running this on EKS, and we simply created a second node group with node autoscaling via the cluster autoscaler and assign all spark pods to that node group. Works great. Still, on perspective we might need to run this on K8 clusters without node autoscaling, so an actual deadlock prevention (which is what the Volcano support seems to be giving us) would be great.

It seems that minResources for the PodGroup generated by the SparkOperator is being picked as the sum of driver and executor resource requests that we make in the SparkApplication spec.
@k82cn I need your help in understanding this.
kubectl describe pg <pg_name> doesn't show the value for minResources
Name:         spark-volcano
Namespace:    dev
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"scheduling.volcano.sh/v1beta1","kind":"PodGroup","metadata":{"annotations":{},"name":"podgroup-cbfa8b7e-4094-4c1d-a89f-fa9f88214c35","namespace":"d...
API Version:  scheduling.volcano.sh/v1beta1
Kind:         PodGroup
Metadata:
  Creation Timestamp:  2020-06-18T16:43:16Z
  Generation:          89
  Resource Version:    86732802
  Self Link:           /apis/scheduling.volcano.sh/v1beta1/namespaces/dev/podgroups/podgroup-cbfa8b7e-4094-4c1d-a89f-fa9f88214c35
  UID:                 2bcf3b60-5a94-4952-9a28-5b63a60e589f
Spec:
  Min Member:  1
Status:
  Failed:  1
  Phase:   Inqueue
Events:
  Type     Reason         Age                 From     Message
  ----     ------         ----                ----     -------
  Warning  Unschedulable  86s (x3 over 88s)   volcano  0/1 tasks in gang unschedulable: pod group is not ready, 1 Running, 3 minAvailable.

When I tried to create a PG using the following manifest:
kind: PodGroup
metadata:
  name: spark-volcano
spec:
  minMember: 1
  minResources: 3

I got the following error:
E0618 12:39:24.163194       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.3/tools/cache/reflector.go:125: Failed to list *v1beta1.PodGroup: v1beta1.PodGroupList.Items: []v1beta1.PodGroup: v1beta1.PodGroup.v1beta1.PodGroup.Spec: v1beta1.PodGroupSpec.MinResources: ReadMapCB: expect { or n, but found 3, error found in #10 byte of ...|sources":3}},{"apiVe|..., bigger context ...|7779d717f"},"spec":{"minMember":3,"minResources":3}},{"apiVersion":"scheduling.volcano.sh/v1beta1","|...
I had a look at the CRD definition for the PodGroup at the volcano repo and found that the CRD doesn't seem to define minResources. That installer file is what we used for setting up Volcano in our k8s cluster. Perhaps this is why we are unable to create a PG with minResources or why the podgroup generated by the operator doesn't seem to be showing it either.

I stuck almost with the same thing as in this issue. I dont understand that logic and found only this dialog for explanation: https://groups.google.com/g/kubernetes-sig-scheduling/c/OAriEmhw448.
Can anyone tell me: how it works? Why gang scheduling doesnt work in volcano and how can i avoid driver&executor creation when there are no resources in my node group?


implements ser/de for NamespacedIds in recipes and advancements

This is supposed to fix #1, but currently there are still some odd errors from serde in the deserialization process.

This should fix all problems with recipes, I haven't looked at advancements yet.

I noticed that this is no longer marked as a draft. Were you considering merging the recipe fix now and doing advancements in another pull request?

I noticed that this is no longer marked as a draft. Were you considering merging the recipe fix now and doing advancements in another pull request?

Yes, sorry for the unfortunate title. This PR is solely for the recipes, I just noticed the same problem applies to advancements, so it should be fairly easy to add that now.

Got it, I'll merge this one now then.

I appreciate the fixes to things I looked over such as Ingretient and adding minecraft: to the recipe types.
I'm not as familiar with serde_as so I can't provide any specific feedback on that. I have a feeling there may be a simpler way, but solving the bug is the important part and we can always go back and refactor down the road if needed.
My mistake that I didn't provide any feedback before merging, I'm not quite used to having contributors yet.

I appreciate the fixes to things I looked over such as Ingretient and adding minecraft: to the recipe types.

Ah right the Ingredients, forgot to mention that change. I mainly followed the wiki for that and I think there a few points where Minecraft doesn't use the option to use a list of items (yet). I hope it all works out, but for the moment it should, as I tested it with all the Minecraft recipes of 1.16.5.

I'm not as familiar with serde_as so I can't provide any specific feedback on that. I have a feeling there may be a simpler way, but solving the bug is the important part and we can always go back and refactor down the road if needed.

It was also my first introduction to it, but I needed it a lot in my first refactor, then more and more understood how it worked and now it's only left in this line:
https://github.com/jamesBeeProg/mineome/blob/f996bb4b0b388d01963486251cbf04874a873419/src/datapack/recipe.rs#L40
Surely you could hardcode the ser/de for the Vec variation, but I really wasn't too fond of that. And it seems it's the way to go, as serde itself doesn't allow this in a convenient way.

My mistake that I didn't provide any feedback before merging, I'm not quite used to having contributors yet.

No worries, I also just try to find my way on GitHub, contributing, etc.


Graph shows error messagebox when start time textbox changed

To reproduce:
1 Go to the /graph endpoint
2 Put in an expression, such as "up"
3 Press execute
4 Press the "rewind" button
5 Change the time
6 Press enter
Expected result:
Graph is updated to the new time
Actual result:
A message box appears saying "Error executing query: abort"
Poking with developer tools, it sends &cancels a query, and then sends another query.
Chrome 35.0.1916.153

This is no longer occurring, one of our fixes in this area must have resolved it.


dofs of surface not inherited by SquaredFlux objective

Hello, I am playing with simsopt to learn how to make some simple coil+surface vacuum optimization.
I don't understand the following:
Following the tutorials,

I create an object 'coils' and an object 's' of the class SurfaceRZFourier (which has dofs unfixed),
I create the object bs = BiotSavart(coils) and type s.set_points(s.gamma().reshape((-1, 3)))
I create the optimizable object Jf = SquaredFlux(s, bs)

But, when checking the dofs of Jf, only the dofs from coils are inherited. Why not the surface dofs as well? Indeed the surface s does not seem to be a parent of Jf. How to include then these dofs into Jf?
Thanks for the help.

OK so with some help from Antoine I realized that indeed the object SquareFlux does not, by construction, inherit dofs from surface. Changing this line in the source file fluxobjective.py:
Optimizable.__init__(self, x0=np.asarray([]), depends_on=[field,**surface**])
does allow then to consider changes in the surface geometry as dofs. Is this something we should add as a possibility? Or is there another way of doing this without any changes to the source?
Thanks for the help.

@jloizu Can you say more about your use case? When the surface is varying but the magnetic field is not, i.e. you are computing a QFM surface, this is presently done using simsopt.geo.QFMSurface, documented here and in examples/1_Simple/qfm.py. Also NormalField is closely related. It's true that QFM surface computation and stage-2 optimization have the same cost function, and the group discussed whether there should be a single class or several. Presently there are these 3 separate classes (SquaredFlux, QFMSurface, and NormalField), which simplifies some aspects of implementation and means users do not need to fix the dofs which will not be varied. But it could be reasonable to try to do things with 2 or 1 class instead of 3.

OK I think I can close this issue, indeed working with QfmResidual  allows having an optimizable that depends on both the surface and the field (although I cannot use jacobian information anymore, since dJ() is not available for this object, I think).


Optimize packets

Just very little optimizations.

MacAddr::broadcast(): Just aesthetics.
If there is no fragmentation, as set with ip_header.set_flags(Ipv4Flags::DontFragment);, there is also no fragment offset. This field is unnecessary.
Use the default ttl. Packets normally don't travel 64 hops, so after exceeding the ttl, it probably is already lost.
The sequence is usally initally set to 0. We can save a random number generation here.
Creating a vec! here is unnecessary.

Sorry for the late reply on this, just noticed I had a PR! Thank you very much for this, I very much enjoy seeing the small improvements being made.
My only question here is regarding the seq field. Have you tried firing multiple packets with the same seq (0)? Are they being dropped by the remote target?

I'm sorry, totally forgot about this PR...
The identification of TCP packets is handled on the IP level, that's why there's a field called identification. The sequence field is only the "id" of the packet, increased by one every packet, so it can be determined whether incoming packets are received in the correct order. This field is normally set to 0 in the first SYN. I don't think a firewall would block packets based on the sequence field, rather it could be blocking packets that don't have it set to 0. Perhaps add a command line option for it?

Awesome, thanks @Draphar -- learnt something new today. Merging this and closing the PR. Thanks a lot!


single-cell data object

I would like to use the single-cell RNA-seq data from this paper as a 'reference' for cell type label annotation. I see that the data is deposited on GEO but it only seems to be raw data or count matrices. Is there anywhere that I can get an R Seurat object (or python) single-cell object which includes the cell type labels? As shown in figure 1(i).
Thanks

The R object has been uploaded to GEO: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE185344.
https://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE185344&format=file&file=GSE185344_PH_scRNA.final.rds.gz

I downloaded the object and loaded it into R. However, I don't see the cell type annotations in the R object (Mast cells, Myeloid cells, T cells etc.) as shown in Figure 1 of the paper. Where can I get this info?

You can download the meta data from GEO:
https://ftp.ncbi.nlm.nih.gov/geo/series/GSE185nnn/GSE185344/suppl/GSE185344_PH_scRNA.rename_cluster.csv.gz


Added skip-first-run option for scheduler.

Added option for scheduler to wait until the start of a next minute.

Codecov Report
Attention: 6 lines in your changes are missing coverage. Please review.

Comparison is base (78a47bc) 77.36% compared to head (377ac3f) 77.10%.

Files
Patch %
Lines

taskiq/cli/scheduler/run.py
14.28%
6 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #253      +/-   ##
===========================================
- Coverage    77.36%   77.10%   -0.26%
===========================================
  Files           60       60
  Lines         1736     1743       +7
===========================================
+ Hits          1343     1344       +1
- Misses         393      399       +6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


PowerToys Run

Description of the new feature / enhancement
A way to code my own plugins would be really useful, and/or a way to edit some of the others like the calculator so it can read x as *. I'm not sure how hard it would be but if it could also open bookmarked sites or something like that. As you can tell I use Run all the time and would love to tweak parts of it to make it perfect for me.
Scenario when this would be used?
I often use the calculator in run, in my maths class because its so much faster then opening the windows app and being able to change a few things would make it even faster and easier
Supporting information
No response

The PowerToys project is open source and you are free to clone it to your computer, alter it where you want (and can) and compile your custom version.
https://github.com/microsoft/PowerToys/tree/master/doc/devdocs#compiling-powertoys

I'm sorry if its a pain but is there any documentation on altering it
because I'm really confused on what to do since it's my first time doing
something like this.
On Sun, Sep 19, 2021 at 11:24 PM Jay @.***> wrote:

The PowerToys project is open source and you are free to clone it to your
computer, alter it where you want (and can) and compile your custom version.
https://github.com/microsoft/PowerToys/tree/master/doc/devdocs#compiling-powertoys
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/13298#issuecomment-922473496,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVU5PSVQD4BTJPIWPGW6YU3UCXQBZANCNFSM5EKJL3AA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I see. In that case it's going to be very difficult. I've been working with it for months now and still don't understand most of it. It's extremely complicated because of all the different languages and on top of that you'd have to understand how Visual Studio and GitHub work. Still gives me headaches. 😣

There is a doc here: https://github.com/microsoft/PowerToys/blob/master/doc/devdocs/modules/launcher/new-plugin-checklist.md

if you want to do above, you'd be tweaking the calculator plugin and i'd highly suggest only inside calc plugin


Can't save a Parse file if local_filename has a space

This issue can be resolved IF you use URI.escape on the filename. For example
:local_filename => URI.escape("hello world.txt")

But this solution seems so inelegant. It would be preferable if the library itself does the "URI escape" instead of the server-side algorithm.

This would be reasonable. Is there a situation that this would break people's existing code?

I understand your point @tra38 but changing this behavior might break existing code in which the caller already escapes the file name and that would result in a double escape. We could put a flag with by default does not escape but it kind of defeat the purpose for elegance.
I'm going to close this.


[BACKEND] Prevent propagation of unsupported layout to tt.scan

scanOp currently only supports blocked layout.

LGTM, but I assume lots of other ops have the same bug?

I can't think of any. Which one did you have in mind?

I can't think of any. Which one did you have in mind?

AIUI the problem here is that tt.scan does not support shared layout.  But that's true of almost every other op in Triton as well?  What makes tt.scan special?

I can't think of any. Which one did you have in mind?

AIUI the problem here is that tt.scan does not support shared layout. But that's true of almost every other op in Triton as well? What makes tt.scan special?

Ah no, the problem is that it doesn't support slice layout. We don't propagate shared layout.


[BUG]Can't launch game

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
After setting file paths, the launch game button results in an Error spawn , message and program closes.
crash.log
Expected Behavior
Game launch.
Steps To Reproduce
Using installed version .
click short cut, assign folder paths, click launch game error msg shows and aprogram closes.
Game will run fine from the main short cut and use proper folder (set in MA)
Environment
- Mod Assistant Version: 2.2.3
- OS: Win 10 pro 64bit
- Virtualized: no

Ryzen 3900x, PBO on / board limits
16 gig 3600 cl 18 ram 2x8  slots  2, 4
Arc A 770 16gig
Samsung 960 pro 256 nvme  os drive  documents on 2 TB spinner
FS22 1.91

Anything else?
Awesome program thankyou.

Which version of the game do you have?  Steam, Giant's Eshop, something else?  Your crash log shows it trying (and failing) to run C:\Program Files (x86)\Farming Simulator 2022\FarmingSimulator2022.exe
I'm going to add some logic around this to not crash, but an update would be helpful to track this down

Hi, sorry for delay, i have the Giants shop pre order  version .
Easier to swap files about. Thanks for the quick reply. Greg aka drizz786.
On Wed, 10 May 2023, 02:02 J.T. Sage, @.***> wrote:

Which version of the game do you have? Steam, Giant's Eshop, something
else? Your crash log shows it trying (and failing) to run C:\Program
Files (x86)\Farming Simulator 2022\FarmingSimulator2022.exe
I'm going to add some logic around this to not crash, but an update would
be helpful to track this down
—
Reply to this email directly, view it on GitHub
https://github.com/FSGModding/FSG_Mod_Assistant/issues/116#issuecomment-1541097150,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGEGXAJCQM3GM4NPBQGMJZTXFLSK3ANCNFSM6AAAAAAX3KTPOM
.


fix: Define service start order

There could be a possibility of lag within the services when they are spun up so adding a start order will be more defensive to this scenario.
Signed-off-by: K mehant<EMAIL_ADDRESS>

Thanks @kmehant.
@Akash-Nayak PTAL


Handle empty and non-existing quickfix lists in getqflist() properly

The getqflist() function returns an empty dictionary if the quickfix stack
is empty or if the quickfix list is not present. This makes it verbose for a
Vim plugin to query the quickfix list. The plugin needs to check whether
the queried item is present in the dictionary using has_key() before
referring to the item.
The attached patch handles this case more gracefully and returns an
appropriate value for the queried item(s).

Codecov Report

Merging #2430 into master will increase coverage by 0.02%.
The diff coverage is 97.72%.

@@            Coverage Diff             @@
##           master    #2430      +/-   ##
==========================================
+ Coverage   74.52%   74.55%   +0.02%
==========================================
  Files          92       92
  Lines      132722   132740      +18
  Branches    29112    29122      +10
==========================================
+ Hits        98912    98961      +49
  Misses      33779    33779
+ Partials       31        0      -31

Impacted Files
Coverage Δ

src/quickfix.c
92.63% <97.72%> (+0.01%)
:arrow_up:

src/os_unix.c
54.23% <0%> (-0.05%)
:arrow_down:

src/version.c
81.81% <0%> (+1.01%)
:arrow_up:

src/libvterm/src/screen.c
53.34% <0%> (+6.69%)
:arrow_up:

Continue to review full report at Codecov.

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


[ios] "Module 'audioplayers' not found" happens again.

I update Xcode to 12.0.1 yesterday.
My flutter specification is below.
[√] Flutter (Channel stable, 1.22.0, on Microsoft Windows [Version 10.0.18363.1082])
• Flutter version 1.22.0
• Framework revision d408d302e2 (3 days ago), 2020-09-29 11:49:17 -0700
• Engine revision 5babba6c4d
• Dart version 2.10.0
What can I do solve this ?

I tried again by deleting Podfile and Podfile.lock. It shows same error message but build succeed.
Then I also tried by reinstalling cocoapods. It is successful.


Version is missing in package meta-inf

For testing, it would be great to get the jsoup version at runtime.
    @Test
    void testVersions() {
        System.out.println(Jsoup.class.getPackage().getSpecificationVersion());
        System.out.println(Jsoup.class.getPackage().getImplementationVersion());
        System.out.println(Jsoup.class.getPackage().getSpecificationVersion());
    }

Version 1.15.2 (and before) returns
null
null
null

It shouldn't be that hard: https://stackoverflow.com/questions/921667/how-do-i-add-an-implementation-version-value-to-a-jar-manifest-using-maven

Thanks, done

I'm using ColdFusion and Oracle JDK <IP_ADDRESS>. I've updated jsoup to 1.15.3, but I'm unable to programmatically determine the version.
I'm using the following CFML code to dump version and both return an undefined object instead of the expected string denoting the current version.  (Am I doing it incorrectly or is it not working?)
jsoup = createobject("java", "org.jsoup.Jsoup");
writedump(var="#jsoup.getClass().getPackage().getSpecificationVersion()#");
writedump(var="#jsoup.getClass().getPackage().getImplementationVersion()#");

@JamoCA I just tested, and this works in Java. Not sure how that translates to ColdFusion though.
Package jsoupPackage = Jsoup.class.getPackage();
System.out.println(jsoupPackage.getImplementationTitle());
System.out.println(jsoupPackage.getImplementationVersion());

Produces:
jsoup Java HTML Parser
1.15.3

I've spent a while researching this and it continues to return undefined. I have to add try/catch around the request in order to prevent it from crashing the process.
I started reviewing manifests of other JARs that we use in production. I noticed that PDFBox had a Specification-Version key in their manifest, but when dumping the object, I noticed that they also had a specific getVersion() method to provide the information.
https://pdfbox.apache.org/docs/2.0.2/javadocs/org/apache/pdfbox/util/Version.html
Could a getVersion method be added?  I believe, based on this link below, that my only workaround would be to write a routine to locate the physical path of the JAR, unzip the manifest file and parse the lines of text. (Not very optimal.)
https://stackoverflow.com/q/38204059/693068

I checked PDF Box's implementation of getVersion() -- it's coming from a resource file, not the manifest. Perhaps as a way to workaround the packaging issue in my edit above.
https://github.com/apache/pdfbox/blob/trunk/pdfbox/src/main/java/org/apache/pdfbox/util/Version.java
https://github.com/apache/pdfbox/blob/trunk/pdfbox/src/main/resources/org/apache/pdfbox/resources/version.properties
So, that might be a good approach. (Although I do note that jsoup used to use resource files for the named character entity definitions, and would see crashes on various Android forks as an app couldn't load jar resources on first install. Hopefully that's improved over the years...)


212 feature rename sheet name

So this approach doesn't update any other references (i.e. blocks or other notebooks). I think we should update as well. @johbaxter thoughts?

So this approach doesn't update any other references (i.e. blocks or other notebooks). I think we should update as well. @johbaxter thoughts?

Meaning a sheet previously named 'sheet-1' , I change it to 'the-best-sheet'.
Now that it is renamed, I go through my variables, blocks and other notebooks to change the reference there as well.
If so, yes this does need to get added.  Or we message to user the implications of renaming.  I go with just changing reference for them.
@SPRCoreDump make sense?

So this approach doesn't update any other references (i.e. blocks or other notebooks). I think we should update as well. @johbaxter thoughts?

Meaning a sheet previously named 'sheet-1' , I change it to 'the-best-sheet'.
Now that it is renamed, I go through my variables, blocks and other notebooks to change the reference there as well.
If so, yes this does need to get added. Or we message to user the implications of renaming. I go with just changing reference for them.
@SPRCoreDump make sense? @neelneelneel inline with your thinking?

Was not aware of the reference issues due to this all being novel to me.
I tried for a while to find a way to directly change the ID of the query directly, but I couldn't find an ActionMessage to pass to state.dispatch{} that would allow me to do such a thing...
Can I get an example of what would go wrong with a duplicate + delete?
Also, is this an issue when duplicating as well?

So this approach doesn't update any other references (i.e. blocks or other notebooks). I think we should update as well. @johbaxter thoughts?

Meaning a sheet previously named 'sheet-1' , I change it to 'the-best-sheet'.
Now that it is renamed, I go through my variables, blocks and other notebooks to change the reference there as well.
If so, yes this does need to get added. Or we message to user the implications of renaming. I go with just changing reference for them.
@SPRCoreDump make sense? @neelneelneel inline with your thinking?

Was not aware of the reference issues due to this all being novel to me. I tried for a while to find a way to directly change the ID of the query directly, but I couldn't find an ActionMessage to pass to state.dispatch{} that would allow me to do such a thing...
Can I get an example of what would go wrong with a duplicate + delete? Also, is this an issue when duplicating as well?

You could do this multiple ways
Thought process 1:

[ ] First Add a New Query with the new identifier
[ ] Replace the cells in this new query with the cells from the query we are going to delete
[ ] Delete the old query

Thought process 2: (May be easier)

[ ] Create a new action that is called RENAME_QUERY (takes in a queryId, and a new name)

This will first create a new query, but validate if the name is a uniq identifier.  Then take the contents of the old query and replace that in my newly made query.

Extra steps that are needed:
Replace all references of the old query id to the new id (this is where i think a new action would be better suited thought process 2)
Attached is a vid that outlines it, also a blocks.json that i explain what to do with in the video
old-vars (1).json


Add Machine readable metadata component

This component generates JSON-LD scripts with schema.org schemas.
The name is broad because I expect that we'll expand on this in the future to also include opengraph meta tags (currently only present in government-frontend).
How this will be used

https://github.com/alphagov/government-frontend/pull/905
https://github.com/alphagov/frontend/pull/1514
https://github.com/alphagov/calendars/pull/294

Component guide

Machine readable component

https://trello.com/c/RLQI1IUV

@sihugh updated!


Create Profile settings page

[ ] Create Settings.tsx
[ ] Only accessed by authenticated users. redirect unauthorized users to home page. you can use PrivateRoute
[ ] on the route settings
[ ] user can change username , description
[ ] use can react-supabase https://react-supabase.vercel.app/ or regular supabase to make requests to the table profiles

@redxzeta can this be assigned to me? I can work on it.


Images for SaltStack stable

Needed to optimize test suite speed on formulas.
Should I create a new directory? Or use the existing ones?
See saltstack-formulas/docker-formula#95 for some discussion.

I have since created a new repo to create Docker images for testing formulas. Probably a good idea since testing SaltStack is a different problem than testing formulas.


Angular 1.2.0-rc3 transformRequest - FormData issue

Hi,
There is an issue introduced in 1.2.0-rc3, that was working fine in rc2.
I have a form with a bunch of fields plus a file upload field. I used to send it using this code:
        $http.put('api/myurl',
        	{url: $scope.mydata.url, files: $scope.files}
        	,
        	{	headers:{'Content-Type': false},
	        	transformRequest: function(data) {
	                var formData = new FormData();
	                formData.append("url", angular.toJson(data.url));
	                for (var i = 0; i < data.files.length; i++) {
	                    formData.append("file" + i, data.files[i]);
	                }
	                return formData;
	        	}
        	}
        ).success(function(data, status, headers, config){
//do something
        });

In rc2 the request properly contained the Content-Type as such:
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryAnWaiY5jyAzFbR5l
In rc3, it has the Content-Type: false header. If i remove the headers option, then it becomes Content-Type: application/json;charset=utf-8 .
Am i doing something wrong here and I better fix it before 1.2.0 comes out? Or is there a bug in rc3 that will hopefully get solved?
If this is intended behaviour, how should I write my code to get the expected result (multipart/form-data content-type)?
Thank you.

Fantastically helpful, thank you


Multiple units

Hi there - first thanks for getting this into esphome
Newbie here - when i flash 2 units both of them start to get random disconnect and become unavailable in esphome .
As far as i understood that might be because of the id , however if i change it it fails to compile .
What changes should i make in order to connect more than 1 unit in the same network ?

Hi!
Could you please elaborate on the compilation failure, what error do you get?

Sure - so in the yaml config if  i change the id like :
climate:

platform: custom
lambda: |-
auto mhi_ac_ctrl = new MhiAcCtrl();
App.register_component(mhi_ac_ctrl);
return {mhi_ac_ctrl};
climates:
- name: "bedroomac"
id: bedroomac

when compiling is trowing those errors :
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
Dependency Graph
|--  1.2.3
|--  2.1.0
|   |--  1.2.3
|   |--  1.0
|   |--  1.0
|--  1.1.1
|--  1.0
|--  5.13.3
|--  1.2
Compiling /data/mhi-ac-ctrl-bedroom/.pioenvs/mhi-ac-ctrl-bedroom/src/main.cpp.o
/config/esphome/mhi-ac-ctrl-bedroom.yaml: In lambda function:
/config/esphome/mhi-ac-ctrl-bedroom.yaml:83:27: error: 'mhi_ac_ctrl' was not declared in this scope
return ((MhiAcCtrl*)mhi_ac_ctrl)->get_sensors();
^
/config/esphome/mhi-ac-ctrl-bedroom.yaml: In lambda function:
/config/esphome/mhi-ac-ctrl-bedroom.yaml:101:27: error: 'mhi_ac_ctrl' was not declared in this scope
return ((MhiAcCtrl*)mhi_ac_ctrl)->get_binary_sensors();
^
/config/esphome/mhi-ac-ctrl-bedroom.yaml: In lambda function:
/config/esphome/mhi-ac-ctrl-bedroom.yaml:84:3: warning: control reaches end of non-void function [-Wreturn-type]
sensors:
^
/config/esphome/mhi-ac-ctrl-bedroom.yaml: In lambda function:
/config/esphome/mhi-ac-ctrl-bedroom.yaml:102:3: warning: control reaches end of non-void function [-Wreturn-type]
binary_sensors:
^
*** [/data/mhi-ac-ctrl-bedroom/.pioenvs/mhi-ac-ctrl-bedroom/src/main.cpp.o] Error 1
========================== [FAILED] Took 3.60 seconds ==========================

Ah, got it. Note the following lines in your error output:
return ((MhiAcCtrl*)mhi_ac_ctrl)->get_sensors();
return ((MhiAcCtrl*)mhi_ac_ctrl)->get_binary_sensors();

These point to the lambdas in sensor and binary_sensor sections of the yaml file, and are trying to reference your climate component — that's where you need to replace mhi_ac_ctrl with your id: in this case, bedroomac. Note that you can use a more human-readable name.
To avoid other conflicts, you'll probably want to change the name parameter of the top esphome section (second line of the .yaml file), as that's going to be the hostname of your ESP's.

Please let me know if the suggestion above helped...

Hi,
Yeah - whatever i have tried always fails to compile
here is my full config https://pastebin.com/BDUifscD
if i make any changes it on the above config it fails.

Something like this seems to work fine:
       return {mhi_ac_ctrl};
     climates:
       - name: "Bedroom MHI AC Ctrl"
-        id: mhi_ac_ctrl
+        id: bedroomac

 # Sensors with general information.
 sensor:
   - platform: custom
     lambda: |-
-      return ((MhiAcCtrl*)mhi_ac_ctrl)->get_sensors();
+      return ((MhiAcCtrl*)bedroomac)->get_sensors();
     sensors:
       - name: "Error code bedroom"
       - name: "Outdoor temperature bedroom"
@@ -129,7 +129,7 @@ sensor:
 binary_sensor:
   - platform: custom
     lambda: |-
-      return ((MhiAcCtrl*)mhi_ac_ctrl)->get_binary_sensors();
+      return ((MhiAcCtrl*)bedroomac)->get_binary_sensors();
     binary_sensors:
       - name: "Defrost bedroom"

That worked


webkit-text-security: disc duplicated after upgrading to beta.11

Short description of the problem:
After upgrading to beta 11, my ion-input type="tel" password-styled field started to behave strangely. It displays a fixes-length row of discs below my input area. It disappears when -webkit-text-security: disc is disabled.
-webkit-text-security: disc

-webkit-text-security: initial

What behavior are you expecting?
An input field without that row of discs.
Steps to reproduce:

Style a ion-input type="tel" field with -webkit-text-security: disc

<ion-item>
  <ion-label stacked>Senha de acesso</ion-label>
  <ion-input pattern="\d{4}" type="tel" class="password" formControlName="password"></ion-input>
</ion-item>

.password {
  -webkit-text-security: disc;
}

Other information:
Happens both with old and new forms module.
Which Ionic Version?
2.0 beta 11
Run ionic info from terminal/cmd prompt: (paste output below)
Your system information:
Cordova CLI: 6.2.0
Gulp version:  CLI version 3.9.0
Gulp local:   Local version 3.9.1
Ionic Framework Version: 2.0.0-beta.11
Ionic CLI Version: 2.0.0-beta.37
Ionic App Lib Version: 2.0.0-beta.20
OS: Distributor ID: LinuxMint Description:  Linux Mint 17.1 Rebecca
Node Version: v4.5.0

I encountered this too. As a work around, specify a descendant selector on the input that Ionic adds
<ion-input class='masked' autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" formControlName="password" type="number" pattern="[0-9]*" required></ion-input>

 .masked input {
  -webkit-text-security: disc;
}

Hello! Are you all seeing this in chrome or safari?

Chrome and Crosswalk
On Thu, Sep 1, 2016, 6:46 PM Justin Willis<EMAIL_ADDRESS>wrote:

Hello! Are you all seeing this in chrome or safari?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/driftyco/ionic/issues/7899#issuecomment-244181144,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA00hfi895fPE9goTvU8t1emQTwAzWtmks5qlyN2gaJpZM4JvYRn
.

Going to close this issue for now as I can not reproduce with rc5. Thanks for using Ionic!


Do I follow JavaScript best practices?

In this PR, I duplicated the original To-do-list repo. This is an exact replica.
Changes

https://github.com/Timbar09/To-Do-list/pull/1
https://github.com/Timbar09/To-Do-list/pull/2
https://github.com/Timbar09/To-Do-list/pull/3

Thanks for approving my PR, @Oscah01


Dependabot tickets in Prosnet project

Saw that the Dependabot PRs get added to the Backlog of the project along with everything else (naturally).
If they are not interacted with from there (?), the add-to-project workflow could filter them out to reduce noise. The docs for the reusable workflow include info on label-based filtering.

Actually, in the case of Dependabot, it would make way more sense to just filter by user.

For me Dependabot PRs are no different than other ticket in that I have to review them, test them and sometimes postpone them. I don't really see why we would not add them to the project


Adding New Rootogram Plot

Pushed draft of the new Rootogram implementation code (#52 ) .

The existing hist functions from the currently still-open plot_dist hist addition PR #47 were used here as well as some code from the plot_ppc PR #55.

The hist visual element backend interface docstring was modified with 'y' now referring to the 'top' y-coordinate explicitly and not height of the bars (as suggested by @OriolAbril). The matplotlib implementation of the hist visual element (which uses bar behind the scenes) was also updated internally with y=y-bottom to reflect this. (This has to be updated in #47 now as well). The bars were not being plotted in the expected positions otherwise.

WIP work includes appropriate binning for each facetted subset of the data to be plotted.

The observed data is used for binning for each subset and the bin heights here are required for setting the 'top's of the predictive bars so this is computed always, regardless of whether observed is passed as True or False (The True/False condition only determines whether it is plotted or not)

Current plot output when the rugby default Arviz datatree is passed (should work with any datatree with posterior predictive and observed groups like plot_ppc though):
azp.plot_rootogram(data)

azp.plot_rootogram(data, plot_kwargs={"predictive": False})

azp.plot_rootogram(data, observed=False)

pc = azp.plot_rootogram(data, backend="bokeh")
pc.show()

azp.plot_rootogram(data, observed_rug=True)

^If we want a rugplot for rootograms as well like plot_ppc.

📚 Documentation preview 📚: https://arviz-plots--81.org.readthedocs.build/en/81/

Todo: Shift rug lower, below the bottom of the bars

Rugplots now render below the bottom of the rootogram bars.
To allow for some tolerance gap for visibility, I've currently set this algorithm:
min_histogram_bottom = min(histogram_bottom)
min_bottom[var_name] = min_histogram_bottom - (0.2 * (0 - min_histogram_bottom))

(It may be that picking a specific number to subtract from min_histogram is better as that'd keep this gap a constant number of units, but then the chart size may vary and so would the perceivable gap)
Output looks like this now when the rugplot is plotted:

Tests are failing due to plot_dist modification requirement since plot_rootogram currently depends on the unmerged arviz-stats 'get_bins' branch. This modification will be required globally once this Arviz-Stats branch is merged too

Added tests for plot_rootogram

Codecov Report
Attention: Patch coverage is 93.60000% with 8 lines in your changes missing coverage. Please review.

Project coverage is 85.39%. Comparing base (f4a39af) to head (a67bb2d).

Files with missing lines
Patch %
Lines

src/arviz_plots/plots/rootogramplot.py
92.72%
8 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #81      +/-   ##
==========================================
+ Coverage   84.80%   85.39%   +0.59%
==========================================
  Files          21       22       +1
  Lines        2336     2451     +115
==========================================
+ Hits         1981     2093     +112
- Misses        355      358       +3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

An example of a "hanging" rootogram  and a "suspended" rootogram, including the uncertainty for the predictions
https://github.com/arviz-devs/Exploratory-Analysis-of-Bayesian-Models/pull/60

An example of a "hanging" rootogram and a "suspended" rootogram, including the uncertainty for the predictions arviz-devs/Exploratory-Analysis-of-Bayesian-Models#60. We do not necessarily need to follow those examples, they are just suggestions. Actually, once we have a working rootograms that example will use whatever arviz implements.

If we follow those examples, the line_y visual element function from #85 can be used for the thin lines to represent the hanging and suspended lines. For the hanging case, we can use the existing logic and for suspended we could modify the logic in this portion of the code:
histogram_bottom = new_obs_hist.sel(plot_axis="y") - pp_hist.sel(plot_axis="histogram")
histogram_bottom = histogram_bottom.expand_dims(plot_axis=["histogram_bottom"])
# print(f" diff = {a}\n")

new_pp_hist = xr.concat(
    (
        new_obs_hist.sel(plot_axis="y"),  # getting tops of histogram (observed values)
        pp_hist.sel(plot_axis="left_edges"),
        pp_hist.sel(plot_axis="right_edges"),
        histogram_bottom,
    ),
    dim="plot_axis",
).assign_coords(plot_axis=["histogram", "left_edges", "right_edges", "histogram_bottom"])

And instead pass a histogram_top along the histogram dimension (root of predictive count minus observed count) and 0 for the histogram_bottom dimension:
histogram_top = pp_hist.sel(plot_axis="histogram") - new_obs_hist.sel(plot_axis="y")
histogram_top = histogram_top.expand_dims(plot_axis=["histogram"])


MM-20988 Fix post time due to unsupported timezone by react-intl

Summary
The issue happened when user's timezone is not supported by react-intl. Instead of react-intl, use moment-timezone to handle timezone conversion of post time.
Ticket Link
Jira ticket: https://mattermost.atlassian.net/browse/MM-20988
Test steps
See steps on Jira

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-4463.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

recreating the test server...

Test server destroyed

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-4463.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

New commit detected. SpinWick will upgrade if the updated docker image is available.

Test server destroyed

Test server creation failed. See the logs for more information.


UI: Show Reactivate option for soft-deleted entities

Affected module
UI
We should show an option to re-activate a soft deleted entity along with an option to hard delete.

@harshach We need backend support for reactivating Entities.

@chirag-madlani currently, a client needs to make a GET call and use the entire response as a PUT call if the entity is soft deleted, it will restore it.
Adding a specific API will go against HTTP semantics.
Discussion https://stackoverflow.com/questions/8621671/restful-undelete


Nav Bar

The color of the titles in the nav bar should change as it is not visible while scrolling due to the white background.

The color of the titles in the nav bar should change as it is not visible while scrolling due to the white background.

Could you explain how would you fix this?


Update gitignore

gitignore ignores files starting with an undersore when a pattern with an asterix  is used.
To ignore system loacal toml files which starts with an underscore the gitignore has to extended for such cases


Solar PV capacity default incorrect

When importing directly from et-engine it's -1.6
When adding a new technology it's -1.5
It has to do with the database default but also with the fact that the capacity is ignored in the template parsing.

This exactly the type of problems we hope to remedy with https://github.com/quintel/etmoses/issues/740

I've added capacity, demand and volume to be fetched from et-engine if the technology 'allows' it. Which means that the attribute has to be whitelisted. This sounds a little double and probably is something which can be refactored ;) I'm checking to see if it is.

How much time do you need to close this issue @grdw?

The simple fix here would be to update the database capacity...., but that's what we are trying to prevent.

Fixed with: #814 - temporarily


Refactor out zustand from select dropdown

There's something wrong with this, however, as setCommitValue causes an infinite loop. I've been debugging this for two hours and have made zero headway so pushing this up so I can focus on something else for a little bit and come back to this later.

There's something wrong with this, however, as setCommitValue causes an infinite loop. I've been debugging this for two hours and have made zero headway so pushing this up so I can focus on something else for a little bit and come back to this later.

🤗  I just gave it a shot... no dice :(.
My hunch is that there's something with this from zustand:
	const { commitValue } = store(
		(state) => ({ commitValue: state.commitValue }),
		shallowCompare,
	);

The store() (basically a hook) would only (force) update if the returned value is different, which can be tested with the final argument (shallowCompare). Perhaps this equality check prevented things from going infinite loop.
I tried this in your refactored version by using a couple of ref for values. I wasn't able to get it to work.
Alternatively, we could adjust the props <-> reducer state <-> downshift flow if this setup isn't work correctly.
As long as we're able to achieve the same features, that is for the component to be able to be controlled (synced) with preview/reset.
P.S. Zustand made all of this easier 😭 (IMO at least)

🤗  I just gave it a shot... no dice :(.
My hunch is that there's something with this from zustand:
	const { commitValue } = store(
		(state) => ({ commitValue: state.commitValue }),
		shallowCompare,
	);

The store() (basically a hook) would only (force) update if the returned value is different, which can be tested with the final argument (shallowCompare). Perhaps this equality check prevented things from going infinite loop.
I tried this in your refactored version by using a couple of ref for values. I wasn't able to get it to work.
Alternatively, we could adjust the props <-> reducer state <-> downshift flow if this setup isn't work correctly.
As long as we're able to achieve the same features, that is for the component to be able to be controlled (synced) with preview/reset.
P.S. Zustand made all of this easier 😭 (IMO at least)

I think it's a race condition. If you console.log commitValue and value where setCommitValue is called in the useUpdateEffect you'll notice that it gets passed the previous value each time, which is then committed becuase it doesn't match the committed value. This repeats, with the previous committed value being passed in as value each time.
I've traced the flow of data through this component many times and haven't been able to pinpoint how this is happening. It seems like it should work just fine.

I think it's a race condition. If you console.log commitValue and value where setCommitValue is called in the useUpdateEffect you'll notice that it gets passed the previous value each time, which is then committed becuase it doesn't match the committed value. This repeats, with the previous committed value being passed in as value each time.
I've traced the flow of data through this component many times and haven't been able to pinpoint how this is happening. It seems like it should work just fine.


Screen Layout

Add Screen Layout object, which owns and controls multi screens and its location.
screen is created when output is created, and output is created when a monitor is connected.
screen should be created with screen layout in its argument.

screen_create(screen_layout, output)
On create screen, the screen should be placed in the screen layout.

determine screen's global coordinate in screen layout

closed by #72


update reflections to 0.10.2

Fix lost actions on reflections scan
In current version, class that has public unannotated methods is skipped during actions scan.
This action will be found
class Actions {

  @CommandHandler(["/start"])
  suspend fun start(user: User, bot: TelegramBot) {
      message { "Hello, what's your name?" }.send(user, bot)
      bot.inputListener.set(user) { "conversation" }
  }

}

This action will be lost because of a separate public method
class Actions {

  fun doABarrelRoll() {
    println("smth")
  }

  @CommandHandler(["/start"])
  suspend fun start(user: User, bot: TelegramBot) {
      message { "Hello, what's your name?" }.send(user, bot)
      bot.inputListener.set(user) { "conversation" }
  }

}

Update reflections
Eventually, I found out, that updating to a slightly newer version of reflections (0.10 -> 0.10.2) resolves this issue
P.S.
It is really not obvious, that running tests locally requires several ENV variables. It would be neat to have their description somewhere in CONTRIBUTING.md. Maybe I just missed their description, but I struggled to find it.

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other
open Pull Requests for the same update/change?

New Feature Submissions:

[x] Does your submission pass tests?
[x] Have you lint your code locally prior to submission?

Changes to Core Features:

[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your core changes, as applicable?
[x] Have you successfully ran tests with your changes locally?

Hello!
Thank you for the review, sorry to hear that you have encountered the problem of env parameters.
There used to be an article in the project wiki about them but unfortunately it was lost, I added the relevant information to the Contributions.md now!

I've managed to write a test to cover this issue


Allow for different style schemes

It should be possible to configure the style of the generated form.

1 point for choosing one of preset style schemes
2 points for also allowing a custom inlined CSS (requires good docs and a spec for the generated HTML :displeasure:)

Consider adding "rainbow-fieldsets" -- coloring each fieldset border with different color, to make them easier to distinguish. This might be especially useful when using recursive data structures.


TestIssue3699 fails

=== RUN   TestIssue3699
--- FAIL: TestIssue3699 (7.64s)
    cluster_test.go:336: unexpected error on Set (client: etcd cluster is unavailable or misconfigured)

https://semaphoreci.com/coreos/etcd/branches/pull-request-5145/builds/4

I can reliably reproduce this in under 100 rounds. The test uses waitLeader as a broken startup barrier for the restarted member and races. waitLeader itself is sleeping more than it should which may be subtly masking bugs in other (lease, member, cluster) tests too.

https://jenkins-etcd.prod.coreos.systems/job/etcd-proxy/861/console

Haven't seen it for 5 months. Will reopen if it happens again.


18/feature/add materials form

Description
Added AddMaterials Component to Admin Dashboard
Checklist

[x ] I have performed a self-review of my own code
[x ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works AND the tests pass

Fixed merge conflicts.


[🐛] Fixed weird time formatting

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket: