Designer snap

Hello! I wanted to install the Designer through snap, but I didn’t succeed - the site contains links only for the Core application (sudo snap install insomnia). Are you planning add to snap the Designer? Thank!

They're working on it. There isn't a PPA either.
For now, install latest release from .deb [^1]
https://github.com/Kong/insomnia/releases
> wget https://github.com/Kong/insomnia/releases/download/designer%402020.1.3/Insomnia.Designer-2020.1.3.deb
> sudo dpkg -i Insomnia.Designer-2020.1.3.deb

[^1] "About" and dpkg will show v1.2 instead of v1..3. This caught me off-guard as well, but it's a known issue. https://github.com/Kong/insomnia/issues/2084#issuecomment-621514027

They're working on it. There isn't a PPA either.
For now, install latest release from .deb [^1]
https://github.com/Kong/insomnia/releases
> wget https://github.com/Kong/insomnia/releases/download/designer%402020.1.3/Insomnia.Designer-2020.1.3.deb
> sudo dpkg -i Insomnia.Designer-2020.1.3.deb

[^1] "About" and dpkg will show v1.2 instead of v1..3. This caught me off-guard as well, but it's a known issue. #2084 (comment)

Oh, I already installed by this method, the question about snap was due to updates

Sorry about that.  Derp.
That said, I strongly suspect others will be having the same issue until the main download link is updated.

Oh, everything is fine, thanks for your attention to this problem)
Snap is nothing more than a convenient tool, and I decided to immediately ask this question to know how to proceed

Hey!
I think you should consider to remove the installing via snap option from the download page because it is misleading. At least until it will be available. I've wasted some time because of that and I'm sure others will too.
Anyway, I haven't used the Designer yet but I'm sure it's a great tool so thanks for your effort!

Closing this as all Insomnia Designer has been discontinued and it's functionality have been merged into Insomnia, which is available to install via snap install insomnia: https://insomnia.rest/blog/insomnia-2021-1


Flop counting

Wrote function that manually counts either fadd+fmul operations     or fma operations in matrix-free kernel for Poisson equation
Compared that the result provided by the manual function and the automatic counting provided by GFlops.jl match

@JordiManyer  ... I could not push directly into the repo, so that I did through fork + PR. Please review. I think we should now be able to provide the FLOP/rate along with the timings.


Diff function optimization

Currently appears to process the whole object even if the root is referencing the original.

v2.2.2


Webpack hangs suddenly, in compiler.run stage of prod build and never finishes

Bug report

What is the current behavior?
When I run yarn build and trigger the webpack prod build, the process hangs when it reaches the line:
let compiler = webpack(config);
  return new Promise((resolve, reject) => {
    compiler.run((err, stats) => { ... }
  });
});

I have removed everything from the body of the promise I am returning and it still hangs, so it is not hanging in the body of the callback function passed to compiler.run
There is no output either to tell me where it is within the compile.run process, and it was working fine up until this morning. No code changes have been made but some packages have been reinstalled. However its impossible to determine if this is the cause as there is no output from the compiler at all.
If the current behavior is a bug, please provide the steps to reproduce.
Execute yarn build with the contents of my build.js file and the prod config which I can provide if needed. I can also provide my yarn.lock or my package.json file as the code in the build.js file and prod config file has not changed, and this problem has only started recently appearing.
What is the expected behavior?

It should not hang indefinitely during the compiler.run stage, and should finish by executing the body of the callback function.

Ultimately (and fairly obviously), triggering a production build should finish without errors and produce a new contents in the build directory.

Other relevant information:
webpack version:  4.18.1
Node.js version:  v8.12.0 (using NVM)
Operating System: macOS High Sierra 10.13
Additional tools: VS Code, Zsh

Thanks for your report. It would be great if you reduce your issue to a small reproducible example. Best put this example into a github repository together with instructions how to get to the problem.

FYI I solved the issue. It was hanging because there were two fairly large JSON files in my project, and for whatever reason it causes the compilation stage to hang. Other solutions recommend increasing the size of the memory limit in your build script, and this is what worked for me.
It is annoying though that there was no feedback on this from the compiler / yarn.


Update view.blade.php

My PR fixes the output to be correctly as JSON.
The output was not correct. It was re-encoded, and changed the quotes(") with "

@ag84ark thanks for the contribution


chore(readme.md): added instructions on adding a dummy user data file when running locally

Describe your changes
A documentation update for developers to include a section on adding a dummy user data file to the back office solution when running the solution locally.
Type of change 🧩

[X] Documentation update

Checklist before requesting a review

[X] I have performed a self-review of my own code
[X] I have double checked this work does not include any hardcoded secrets or passwords
[X] I have made corresponding changes to the documentation

@johnmoscrip I think the failed build will be caused by the commit message format.
The scopes you can use are listed in commitlint.config.cjs, but if you've run npm i it should run pre-commit checks to validate the commit message.
Instead of chore(readme.md), docs(tooling) would probably be the best fit.


feat: IsNormalClosure predicate

Main changes are to the file NormalClosure:

Introduce predicate IsNormalClosure to characterize normal closures L/F of a field extension K/F by the conditions that every minimal polynomial of an element of K over F splits in L, and that L is generated by roots of such polynomials. (When K/F is not necessarily algebraic, the conditions actually says L/F is a normal closure of the algebraic closure of F in K over F.

IsNormalClosure.normal: a normal closure is always normal.

isNormalClosure_iff : if K/F is algebraic, the "generated by roots" condition in IsNormalClosure can be replaced by "generated by images of embeddings". To prove it, we split out the two inclusions in restrictScalars_eq_iSup_adjoin and golf its proof. restrictScalars_eq_iSup_adjoin is renamed to normalClosure_eq_iSup_adjoin as it has nothing to do with restrictScalars.

IsNormalClosure.lift: a normal closure of K/F embeds into any L/F such that the minpolys of K/F splits in L/F.

IsNormalClosure.equiv: normal closures are unique up to F-algebra isomorphisms.

isNormalClosure_normalClosure: normalClosure F K L is a valid normal closure if K/F is algebraic and all minpolys of K/F splits in L/F; in particular, if there is at least one F-embedding of K into L, and L/F is normal.

Algebra.IsAlgebraic.cardinal_mk_algHom_le_of_splits: if every minpoly of K/F splits in L/F, then L is maximal w.r.t. F-embeddings of K, in the sense that K →ₐ[F] L achieves maximal cardinality.

In the file Normal:

splits_of_mem_adjoin: If a set of algebraic elements in a field extension K/F have minimal polynomials that split in another extension L/F, then all minimal polynomials in the intermediate field generated by the set also split in L/F. This is in preparation for connecting IsNormalClosure and IsSplittingField.

In the file IntermediateField:

Add comap and show it forms a Galois connection with map.

In the file FieldTheory/Adjoin:

Add map_sup/iSup lemmas that follow from the Galois connection, plus an additional convenience lemma.

In the file RingTheory/Algebraic: add a lemma AlgHom.isAlgebraic_of_injective.
Co-authored-by: Jz Pan<EMAIL_ADDRESS>

Thanks!
bors merge


🐛 Bug Report: Missing create function for databases.

👟 Reproduction steps
Trying to call the following code from this documentation:
import 'package:dart_appwrite/dart_appwrite.dart';

void main() { // Init SDK
  Client client = Client();
  Databases databases = Databases(client);

  client
    .setEndpoint('https://<MY_LOCAL_IP>/v1') // Your API Endpoint
    .setProject('<ID_PROJECT>) // Your project ID
    .setKey('<SECRET_KEY>) // Your secret API key
  ;

  Future result = databases.create(
    databaseId: '<DATABASE_ID>',
    name: '<NAME>',
  );

  result
    .then((response) {
      print(response);
    }).catchError((error) {
      print(error.response);
  });
}

👍 Expected behavior
I would expect that code to create a new database with a specific ID and NAME.
👎 Actual Behavior
But instead, I will get the following error message:
The method 'setKey' isn't defined for the type 'Client'. (Documentation)  Try correcting the name to the name of an existing method, or defining a method named 'setKey'.
The method 'create' isn't defined for the type 'Databases'. (Documentation)  Try correcting the name to the name of an existing method, or defining a method named 'create'.
🎲 Appwrite version
Version 2.0.x
💻 Operating system
Linux
🧱 Your Environment
I use Appwrite the the docker-compose file provided from the official documentation with the .env file from the same official documentation.
appwrite: ^12.0.4
Flutter 3.22.2
Tools • Dart 3.4.3 • DevTools 2.34.3
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

I also have the same problem the with the code to generate new collections:
import 'package:dart_appwrite/dart_appwrite.dart';

void main() { // Init SDK
  Client client = Client();
  Databases databases = Databases(client);

  client
    .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint
    .setProject('5df5acd0d48c2') // Your project ID
    .setKey('919c2d18fb5d4...a2ae413da83346ad2') // Your secret API key
  ;

  Future result = databases.createCollection(
    databaseId: '<DATABASE_ID>',
    collectionId: '[COLLECTION_ID]',
    name: '[NAME]',
  );

  result
    .then((response) {
      print(response);
    }).catchError((error) {
      print(error.response);
  });
}

@Vildnex, thanks for raising this issue! 🙏🏼
The Flutter SDK (appwrite) is a client SDK and doesn't expose server-side operations like creating collections. If you want to create collections, you need to use the Dart SDK (dart_appwrite), which is a server SDK, and should only be used server-side, not in an app.

Oh.. Now make sense, sorry for opening this issue in this case.
Thanks for the explanation :D


[Bug] the title of bug report

What did I do
Apply an empty username before connecting.
What happened
MQTTx keeps loading without result. While it works if you enter 1 or more characters.
Missing log file can delay the handling of the issue.
Expected
Expected to replace the empty username of the client with the cn name within the cert.
Environment

OS: OS version, e.g. macOS Big Sur 11.1
MQTTX version, e.g. v1.5.0

More detail
Broker and client with two way TLS (https://www.emqx.com/en/blog/enable-two-way-ssl-for-emqx)
Start the broker with allow_anonymous = false.
Have mnesia with username client and password client.
Try to sign in with no username and password client.
Docker, self signed certs with common name "client"
For EMQ X 4.3 or newer, please provide the log archive generated by node_dump tool
Not sure how to easily do this on the docker container.
EMQ X version (e.g. emqx_ctl status): 4.3.8
Hardware configuration (e.g. lscpu): docker
OS (e.g. cat /etc/os-release): Alpine Linux
Kernel (e.g. uname -a): Linux 997a7b9f72f3 <IP_ADDRESS>-microsoft-standard-WSL2

Issue created on EMQx:
https://github.com/emqx/emqx/issues/6885
Was found to be issue with MQTTx

Hi, @gunnarpieter thanks for using EMQX and MQTTX!
Perhaps some errors caused MQTTX did not catch up, so there has been no results, but I did not have a good reproduction, perhaps you can upgrade MQTTX to the latest version https://github.com/emqx/MQTTX/releases/tag/v1.7.2 to try, in the middle we have fixed some problems about TLS authentication, but because your version is older, upgrade will have data loss, please do a backup in advance.


[TS] Add placeholder to Input.ChoiceSet

Automatically generated task. Any updates to the title and body will be overwritten. Do NOT modify the labels.
TS implementation of #3198

Closing as has already been supported in TS since 1.2 and probably even 1.0


Desenvolver a API

[x] https://github.com/fga-gpp-mds/agr-gic-api/issues/3

[x] https://github.com/fga-gpp-mds/agr-gic-api/issues/2

[x] https://github.com/fga-gpp-mds/agr-gic-api/issues/1

Tudo finalizado!


Upgrade conda-store v0.3.10 and simplify specification of image

Fixes #1126

@HarshCasper Oh no, the image quansight/conda-store-server:v0.3.10 still appears in two places!
Sorry, I didn't realise that both conda-store-server and conda-store-worker use the same image... So I might have pointed you in the right direction.
Can you find another way to do all of this so that, essentially, the string quansight/conda-store-server:v0.3.10 (or related objects) appears only once?
There are many approaches you could take.
(1) Maybe reinstate all the Terraform variables but with no defaults in the Terraform variable definitions, and then pass through quansight/conda-store-server:v0.3.10 from input_vars.py as we did before.
(2) Or keep the string removed from input_vars.py and reinstate the Terraform variables plus a default only at one level - probably in conda-store.tf you would add the default {...} image setting, but make sure you do not also set the default in conda-store/variables.tf.
Or there are other possibilities. Personally I think (2) suits us best at this time - we will easily be able to override the image from Python code in the future if we want to.
In (2) this means you can't use the lowest level module (modules/kubernetes/services/conda-store or whatever as a folder) without explicitly passing through a conda-store-image value as we will do from conda-store.tf. But that's fine - the module is unlikely to be used separately from its surrounding codebase so we don't need to worry about it, and in any case whatever uses it can just pass through the value explicitly.

Close #1121


Ability to rotate canvas for drawing

Whenever I am drawing in excalidraw and I want to draw something slanted I am unable to rotate canvas in any way so it would be a massive improvement in experience of people who draw a lot in excalidraw
### Tasks

I've started using Excalidraw for handwritten notes and tend to write at an angle so being able to rotate the canvas would be great. I can't physically rotate my tablet due to my keyboard and desk size.


Added telemetry, test and bug fix for true up notifications

Summary
This PR includes:

Add Telemetry when an admin clicks on True Up Notifications and their respective test to ensure the event is correct.
Bug fix where the invite modal now renders conditionally the CTA based on license data. I found this bug during the development of the telemetry ticket.

Ticket Link
Bug: https://mattermost.atlassian.net/browse/MM-50380
Telemetry: https://mattermost.atlassian.net/browse/MM-50343
Release Note
Bug fix where the true up notification in invite modal now render the CTA correctly

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

/update-branch

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

Hi @neallred ,
I tried running the e2e tests locally, for me these were failing and the Stage or group is not mentioned, I think it will not run in ci too. Please let me know if any flag is needed for these to run.

Thanks for the callout! I'll take a look.

Hi @neallred , I tried running the e2e tests locally, for me these were failing and the Stage or group is not mentioned, I think it will not run in ci too. Please let me know if any flag is needed for these to run.

@yasserfaraazkhan Looks like those e2e tests mock out all the real interaction with the server, which means they're more like integration tests than e2e tests. I opted to remove them. It turns out the corresponding tests were all already written in this file: components/announcement_bar/overage_users_banner/overage_users_banner.test.tsx . Every e2e test has a matching integration test, so I think we're good to go from an e2e perspective here.

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

Hi @neallred
I've used cypress to check the cta when 5% and 10 % users threshold. Please let me know if there are other impacted flows we might want to run through.

Hi @neallred
I've used cypress to check the cta when 5% and 10 % users threshold. Please let me know if there are other impacted flows we might want to run through.

@yasserfaraazkhan I believe that this PR was fixing a bug in the invite modal where it also shows a CTA if they are over the amount of licensed seats. From the original PR description:

Bug fix where the invite modal now renders conditionally the CTA based on license data. I found this bug during the development of the telemetry ticket.

Hi Nathan, Maria
the CTA appears for admin. The user count is same in global banner, console and invite cta

/cherry-pick cloud

Cherry pick is scheduled.

@neallred, can you confirm whether there are changes to the telemetry actions that should be documented? Thank you!

I don't see any existing telemetry category covering this, so I think changes are needed. I would place it underneath https://docs.mattermost.com/manage/telemetry.html#event-data, under the "Non-personally Identifiable Diagnostic Information, distinguished by end users and System Admins" section, as its own item, maybe something like True Up Diagnostics: requested help from sales with license true up; attempted to download true up packet.


Update to Gradle 7

Rationale
Gradle plugins version 1.28.0 claims to be compatible with LabKey 21.3 but it requires Gradle 7. Updating to Gradle 7 is fairly simple so I'm backporting that change.
Related Pull Requests

https://github.com/LabKey/gradlePlugin/pull/128

Changes

Update Gradle to 7.1
Update LabKey gradle plugin version

Verifying against existing embedded suite: https://teamcity.labkey.org/buildConfiguration/LabKey_213Release_Internal_Embedded_SampleManagerEmbeddedPostgres/1463308


Would love to have an NPM for this!

We're looking to use this in a project — thanks for building it! — but I'm not finding anything on npmjs.com for it. We could create our own NPM but it's always better when the repo authors handle it, to ensure versioning stays up to date and the numbers synced.
Is this something you guys would consider doing?
Thanks!

seems like the author is fairly inactive on github


--env customSnapshotsDir ?

It'd be highly convenient to have a way to pass customSnapshotsDir value from the CLI!

I just came across this yesterday and solved it that way:
cypress run --env customSnapshotsDir=cypress/snapshots/CI
and then in command.js set it globally via:
addMatchImageSnapshotCommand({     customSnapshotsDir: Cypress.env('customSnapshotsDir')   });
However this took me a while to find out since I thought setting it via --env would be enough, so I agree, that this should be able to pass via CLI without doing changes in code.

This cypress run --env customSnapshotsDir=cypress/snapshots/CI doesn't work, that's my point.
You need to set it up globally in command.js, which is not convenient.
It should be possible to override this setting from CLI.

@nodje Instead of:
cypress run --env customSnapshotsDir=cypress/snapshots/CI
Use:
CYPRESS_customSnapshotsDir=cypress/snapshots/CI
And what @christophamma mentioned:
addMatchImageSnapshotCommand({ customSnapshotsDir: Cypress.env('customSnapshotsDir') });
It works for me.


Decouple units-related logic

This is amazing work! So I will convert the incoming unit to use UnitOfVolume.
https://github.com/home-assistant/core/blob/b69cc29a78714ef465c4aefb97ca08e011cce8fb/homeassistant/const.py#L730


Change textBox1 leave event to TextChanged event

It is quite impossible to leave the focus of the textbox on MyUserControl .
For the tutorial sake, i would advise to change it to TextChanged event instead of let people wonder why the property is not saved to disk.

Documentdetails
⚠ Dit gedeelte niet bewerken. Het is vereist om problemen te koppelen tussen docs.microsoft.com en GitHub.

ID: 0d7a70e9-8bed-6595-ac09-852b47459ac1
Version Independent ID: 180b6f77-7ef2-a8e1-83f9-18d8d5127f75
Content
Content Source
Service: unspecified

Thanks for submitting your feedback and we apologize for the delayed response.  Due to current resourcing and substantial extensibility changes we are currently working on that will result in significant, structural doc changes, we are closing this lower priority issue.  We will return to this issue on a later date and address it based on it's relevance after those extensive extensibility updates are made. Feel free to comment here as necessary.


Set status for a whole bunch of requests at a time

@ticoann can you please guide us on how to set assignment-approved multiple requests at the same time. Looking at https://cmsweb.cern.ch/reqmgr2/approve I assume this is possible.
FYI @anorkus

well from the interface i see that you can approve all. Also search was non intuitive, is it searching by workflow name only? How to specify multiple workflows? Or could load workflows from specific campaign - in this case the approve-all button would make sense.
An input field to specify comma separated list to search workflows would be a clear solution.

Search is string matching on request name, it will return all the requests which name contains that string. Then you can click "approve all" button to approve all the request which is filtered or click individual button to hand pick the approval.
Since request name contains the campaign name, if you want to search for specific campaign you can use that for the search.
If there is any suggestion for improve interface we can update that. Please create the issue for those suggestions and use cases.

@ticoann is there a way to set the stauts of multiple requests in one and only one call ?

@vlimant, Are you talking about the (REAST)APIs or WebInterface.
We don't have currently a call  which can update the status in bulk. Only request by request. (Couch doesn't allow bulk update it has to be client side API or ReqMgr server API which wraps the call and update couch one by one).
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/Services/ReqMgr/ReqMgr.py#L159
Could you give me the specific use case.  i.e. McM need to update to approved status given Campaign, given creation date, etc? We can create REST api or Client api or Web interface.

Hi,
well both options would be best, but main need is for the web interface. Couch has bulk update feature ;) (but you do not need it, as the action would be done on the server looping over the wofklow ids given)
This feature is mostly not for the McM, but for RelVal and other workflows, where they would be approved immediately after innjection. Example are submitted relvals for campaign/batch/whatever (e.g. CMSSW_9_2_0_pre1-someStrangeName) and the submitted wants to approve those in one go. Clearly a more 'loose' search has to be implemented, or a input_area field where user can specify bunch of workflows and approve them.

Hi Atanas, you are right. Couch has bulk update call. It doesn't have bulk _update handler call. I was confused with that.
For the use case you describe. What would be the approval procedure?

Do RelVal usually validate the parameters before workflow approved?
Is the same group  creates the request and approve?
What make the two step processing (new -> assignment-approved) If it needs to be approved immediately?

Clearly a more 'loose' search has to be implemented,

What do you mean by loose search? Could you give me the example of that (what will be the search categories)?

Hi,
everything needed is due to the migration from relval batch_manager to unified.

no 2)yes 3)to be same procedures between MC workflows and relvals and rereco.

procedure is easy:

user injects relvals, has list of workflows (all in status new). he can inject workflows in batches: data relvals, fast sim etc.
then going to reqmgr2 page and approving the selected batch (or list of workflows).

more loose, means less strict: now it searches only workflow_name while matching the input. There are no wildcard search. Also not possible to search by other parameter(-s) like Campaign: to displays all wf's of this campaign in status new.

user injects relvals, has list of workflows (all in status new). he can inject workflows in batches: data relvals, fast sim etc.
then going to reqmgr2 page and approving the selected batch (or list of workflows).

Is the injected batch different from approve batch? If not they can inject and approve consequently without going to reqmgr2. - Not saying that we won't do improve reqmgr2 GUI, I am trying to understand procedure.

more loose, means less strict:
I wasn't asking definition of word.  I am asking what search option do you need. It is not clear when you said "more loose". That is not a clear requirement we can implement.

now it searches only workflow_name while matching the input. There are no wildcard search. Also not possible to search by other parameter(-s) like Campaign: to displays all wf's of this campaign in status new.

Are these only option needed for search,  Campaign, and wildcards?  There are many parameters which can searched by. Depending on how many what you need the interface will change.

doesn't differ. @vlimant could explain more why he wants the requests to be injected, and announced later on.
Those are few options i could think now. Other people @franzoni @fabozzi could suggest other search options.

@ticoann what is needed is an API where one can provide a list of workflows and the statuses of all of them are changed at the same time. If that is not possible, then we can close this issue IMO.
Unless requesters want specific search capability in the /approve page (a search by Campaign would be sufficient). My 2 cents is that the transition to assignment-approve can be done by script otherwise.

Hello, sorry to jump on this conversation only now. I think Antanas has explained what is our procedure of relval submission. Basically: we submit a batch of workflows which are identified by the batch name + time stamp strings (contained in the Campaign name). We would like to approve/reject all workflows in a batch after injection. Is it possible right now? I mean, can I make a test of injection and then rejection, to check how it works right now?

I'm very late to this as well, but may I ask why this bulk update is wanted? Is it because McM (or RelVals?) is going to change how requests are created and approved? Or is it just for a matter of - possible - performance improvement?

Hi, the reason behind the change is the following:

We have asked to remove the 4h grace period in Unified, in order to make relvals to be assigned as soon as possible.
However, at the same time we want to approve or reject explicitly the relvals after injection. This is useful in the typical examples below:

We inject a batch of relvals and soon we realize we forgot to add a label useful to prevent dataset collision
We inject a batch of relvals and because of a glitch we have submission errors: you will see in reqmgr that a subset of the workflows have been actually injected. So we want to delete them and re-submit (if you have a look in reqmgr you will notice lots of relval workflows that are remnants of these fake submissions)

@fabozzi, Current search is only on request name. But I think Campaign name is enbeded in request name in most cases, correct (as RequestString)?
In that case you can bulk approve on following page, https://cmsweb.cern.ch/reqmgr2/approve
(By searching the specific name)
I can add the field for campaign search in next deployment and select box as well (if that is needed).
But I was wondering if the created request is immediately updated to approved, why not add the update call right after creation of the request in whatever script you are using?
You can use the put rest api
i.e. PUT /reqmgr2/data/request/[request_name]?RequestStatus=assignment-approved
https://github.com/dmwm/WMCore/wiki/reqmgr2-apis

@ticoann
the string identifying the batch are embedded in the prepID of the request, not in the RequestString.
So introducing search by prepID could work as well as by campaign (not sure if this is more manageable for you).

Hello

We inject a batch of relvals and soon we realize we forgot to add a label useful to prevent dataset collision

This sounds like  some automatic validation is needed. I am not whether this requires human eyes to check in that case support for web interface is sounds right.

We inject a batch of relvals and because of a glitch we have submission errors: you will see in reqmgr that a subset of the workflows have been actually injected. So we want to delete them and re-submit (if you have a look in reqmgr you will notice lots of relval workflows that are remnants of these fake submissions)

I am just curious.
How do you submit  the workflows and delete them? Are you using reqmgr2 apis or directly couch call? (I don't think we ever provide deleting request call for reqmgr2 api)

the string identifying the batch are embedded in the prepID of the request, not in the RequestString.
I see.

So introducing search by prepID could work as well as by campaign (not sure if this is more manageable for you).

We can do both or whatever you prefer.

@ticoann

I am just curious.
How do you submit the workflows and delete them? Are you using reqmgr2 apis or directly couch > call? (I don't think we ever provide deleting request call for reqmgr2 api)

We submit the workflows using a script... not sure which kind of call is used there.
Our L3 manager are not experts so they do not know anything about reqmgr, etc.
Therefore, they simply resubmit the workflows, and leave the fake ones in the limbo by not putting them in the batchmanager (in the present system we have a batch manager: after injecting the workflows, we use the batchmanager interface to trigger assignement).
In my case, to reject the fake workflows I have used in the past the reqmgr2 web interface
by clicking on them one-by-one.
As you can imagine, this is quite painful, when you have to reject tens of workflows...

@ticoann

This sounds like some automatic validation is needed. I am not whether this requires human e
yes to check in that case support for web interface is sounds right.

the land of mistakes is larger. Other examples that come to my mind: you wanted to submit multicore and you forgot to specify in the command...; or a batch of workflows need higher memory requirement and you forgot to specify in the command. Things that happens when people work under pressure or late in the night... :)

@fabozzi, Thanks for the explanation. So you are the True users of reqmgr2 web interface. I thought no one is using it. :-) I created the issue.
https://github.com/dmwm/WMCore/issues/7704
Please clarify whether that is enough or if you have more specific idea we can follow in that issue.

the land of mistakes is larger. Other examples that come to my mind: you wanted to submit multicore and you forgot to specify in the command...; or a batch of workflows need higher memory requirement and you forgot to specify in the command. Things that happens when people work under pressure or late in the night... :)

But how do you find out someone made a mistake? If you are using reqmgr2 interface, is there anyway we can make spot them easily? We like to improve our interface so it can be more useful.

Closing this one. replaced by #7692 #7704

@ticoann
Hi, I revamp this thread to ask updates on this feature and
what is the plan for the batch approval/reject to enter in production.
Thanks!

@fabozzi, Hi Francesco, Actually I sent email a week ago (March 24th)  about the upgrade and asking for feedback. Subject field was "updated new features on ops requests for April production upgrade" I hope I had a right email address. (sent to CERN email). I am sorry if it didn't get delivered.
The feature is on the testbed. (adding Campaign), you can check here.
https://cmsweb-testbed.cern.ch/reqmgr2/approve
Production upgrade is today. (I think it is already updated. https://cmsweb.cern.ch/reqmgr2/approve). Please let us know if you find any problem or anything need to be improved.

Hi, thank you. I would like to search the workflows of a current batch in production, for instance the batch:
CMSSW_9_1_0_pre2__fullsimPU_2017-1491253360
However, if I put that name in the filter, it does not display any workflows.
Am I doing something wrong?

Maybe only the batches that are in a certain state can be displayed? The workflows of the batch that I was referring are in "running-closed" state.

Sorry that was our mistake. (We shouldn't have add campaign filters for other pages)
Bulk approve/reject only works with when requests are not yet approved.
So only through this link.
https://cmsweb.cern.ch/reqmgr2/approve
If you want to just check which workflows are in that campaign.
https://cmsweb.cern.ch/wmstatsserver/data/filtered_requests?Campaign=CMSSW_9_1_0_pre2__fullsimPU_2017-1491253360&mask=RequestStatus
We can either remove campaign filters from other pages or if that is useful we can fix the other pages for the filter. (I won't have bulk status change capability though, unless you also need those for that - only for abort or reject in that case).
Sorry for the trouble, please let me know what would you prefer. I will create the new issue. Thanks

OK, thank you. Yes, I agree it is better to remove the campaign filtering from other pages. I am not sure if there is use case for bulk reject/abort. Therefore for the moment bulk approval/reject is sufficient.


Investigate simplifying Blueprint<T, TRef> declaration and handling inheritance

e.g. How do I get from Blueprint<BlueprintFeature, BlueprintFeatureReference> to Blueprint<BlueprintUnitFact, BlueprintUnitFactReference>?
Also, maybe I can do a single type declaration by creating Blueprint<T> : Blueprint<T, BlueprintReference<T>>??

This cannot be done. The problem is the need to declare new() on the reference for CreateTyped<TRef> to work.

Actually got a fix in 2.0.3!

Fixed w/ 2.0.3 release. Behold Blueprint<TRef>!


[wip] feature - notification

Github Issue URL/Tags (required)
What's this PR do? Please give a technical summary (required)

[] create notification mvvm

Any references (stackoverflow …) (optional)

Total linter violations in pull request: 1
Serious: 0
Warnings: 1

:+1: There are no linter violations.


Sketch Keeps Crashing

I downloaded this tool myself to see if I could get a better error than just a "Sketch has Crashed!"
ERROR:root:An unexpected error occurred when converting ROUNDED_RECTANGLE: YouTube ((1416, 2077)). It will be skipped
Traceback (most recent call last):
  File "converter/tree.py", line 74, in convert_node
  File "converter/tree.py", line 62, in convert_node
  File "converter/rectangle.py", line 12, in convert
  File "converter/base.py", line 105, in base_shape
  File "converter/base.py", line 82, in base_styled
  File "converter/base.py", line 141, in process_styles
  File "converter/style.py", line 75, in convert
  File "converter/style.py", line 75, in <listcomp>
  File "converter/style.py", line 107, in convert_fill
  File "converter/style.py", line 141, in convert_crop_image_to_mask
  File "converter/style.py", line 185, in cropped_image_layer
ZeroDivisionError: float division by zero

Using this tool it did make the sketch file, which I was able to import into Sketch, I am able to open the sketch file in the browser, but in the app I can't since it still makes the app crash.

This should now be resolved 🙏🏻 Please re-open if you still encounter this issue and if possible supply a sample document.


⚠ Turnos 24x7 has degraded performance

In 8dccca6, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 885 ms

Resolved: Turnos 24x7 performance has improved in 2f350a9.


Mine block using Cuckoo Cycle PoW

Depends on

[ ] #5

John Tromp suggests to use a graph size in the 2^28-2^32 range. The requirement of progress-freeness boils down to tuning the duration of a solution attempt significantly smaller than the block interval time. (Having solution times close to the block interval excludes lower-performance participants from the PoW competition, making it less egalitarian.) This favours smaller memory footprints.
On the other hand, the the Cuckoo Cycle algorithm is aiming at using more memory than that available on a single memory chip and also large enough to make the participation hard for botnets without excessive swapping.
In order to make a reasonable compromise, John Tromp suggested to use graph sizes in the range of 2^28-2^32.
The default implementation of Cuckoo cycle (what we are currently using) is has graph size 2^28. This performs a single solution attempt in about 3 seconds in a MacBook Pro. The chance of finding a solution in a single step is 2.2%, so typically a solution requires a bit  more than 2 minutes. The chance of finding a solution is reduced by introducing a difficulty by requiring the SHA-256 hash of the found solution to be below a certain target threshold (like in SHA-256 PoW).   We need a much lighter difficulty than in the SHA-265 case as finding a Cuckoo Cycle solution is orders of magnitudes slower than calculating a hash.
The size can be adjusted in compile-time by setting a parameter for the NIF code. We set the graph size 2^20 for unit tests, this reduces the memory footprint by a factor of 256 and the solution time about 30 milliseconds (not appropriate for production code).


Counters and oneliners can share trigger !words

me | !counter add test
it | Counter test added! Access it with !test.
me | !oneliner add test this is a oneliner
it | Oneliner !test added.
me | !test
it | this is a oneliner
it | Current test count: 0

To work around this we'd need to somehow let the counter plugin inspect the current oneliner commands, or vice versa.
It's tractable, but it's really a minor issue, so perhaps later.

Fixed for both counter and oneliners plugins by 17f1efc36b0c482c6e5eabb0cd4b2c2b8fa35c77.


Powertoys run don't search files

ℹ Computer information

PowerToys version: 0.33.1
PowerToy Run
Running PowerToys as Admin and not as Admin
Windows : Edition	Windows 10 Pro
Version	20H2
OS build	19042.844
Experience	Windows Feature Experience Pack 120.2212.551.0

📝 Provide detailed reproduction steps (if any)
When I try to search a file in powertoys run ,it wont find the files in both as admin and not
and my Windows searching find my files setting is set to Enhanced
📷 Screenshots
here are some screenshots

@kalidyasin29
C:\ folder is excluded from the search. As result desktop items are not indexed. Remove that item from excluded folder section.


Files for new release 2.64.1 are missing in release.jfrog.io

Describe the bug
A new version (2.64.1) of frog-cli was released on GitHub but the links to the release files under https://releases.jfrog.io/ui/repos/tree/General/jfrog-cli/v2-jf/2.64.1 return with 404.
Current behavior
Files are missing
Reproduction steps
try to download the files from the 2.64.1 release
Expected behavior
Files for release 2.64.1 be present
JFrog CLI version
2.64.1
Operating system type and version
any
JFrog Artifactory version
No response
JFrog Xray version
No response

Thank you for reporting this issue @bb-Ricardo.
The issue is now fixed and all the binaries are now available.
The issue was caused due to a human error, while working on upgrading JFrog CLI's build infrastructure. We apologize for the inconvinience caused by this.

Hi @eyalbe4,
thank you, I was able to download the binaries and it works now in my case.
Just a question: Is it planned to release checksum files or signatures as well, in order to be able to verify the binary is the actual release binary? Should I open another issue for that?

Happy to hear the issue is resolved @bb-Ricardo.
In relation to your question, which installer are you using for JFrog CLI? I'm not 100% sure about this, but I think debian and RPM already have a built in mechanism for integrity verification.

I know it sounds a bit crazy but we build our own repository and software installer for all sorts of standalone binaries which are used in our systems and pipelines and mostly are not part of any repository.
While adding new releases to our repository we check the integrity of the binaries to lower the risk of supply chain attacks.
Ideally it would look like this:

vendor/maintainer compiles new version for different targets.
all binaries are then checksummed and added to a checksum file
a signature file for the checksum file will be created.
all files including the cheksum and signature file are released.

This can be usually done via cosign or GPG. Public keys which are published can then be used to verify the signature and therefore the checksums.
Even if someone compromises the release.jfrog.io Artifactory instance and exchanges the binaries with malicious copies/versions, the integrity check would fail.

@bb-Ricardo
The checksums can be found in the Artifactory database and can be downloaded by running a HEAD request:
> curl -I https://releases.jfrog.io/artifactory/jfrog-cli/v2-jf/2.65.0/jfrog-cli-linux-386/jf

HTTP/1.1 200
Date: Sun, 01 Sep 2024 06:17:25 GMT
Content-Type: application/octet-stream
Content-Length: 32470343
Connection: keep-alive
X-JFrog-Version: Artifactory/7.92.1 79201900
X-Artifactory-Id: d3d9e0c8c07b619da604d69a87cd76252dff62ac
X-Artifactory-Node-Id: releases-artifactory-primary-2
Last-Modified: Thu, 29 Aug 2024 11:50:28 GMT
ETag: 426546d24c5922207fec42092942e561ecff19fb
X-Checksum-Sha1: 426546d24c5922207fec42092942e561ecff19fb
X-Checksum-Sha256: 3e36e2f95cb494dfbb8e589c668adb42f367e76b8111c25d1a46d4cbe8345747
X-Checksum-Md5: 7b8790802fdea54ae355ff9afca954c8
Accept-Ranges: bytes
X-Artifactory-Filename: jf
Content-Disposition: attachment; filename="jf"; filename*=UTF-8''jf
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Request-ID: 5656e55cef4bd70792286aaf8856f6bc

Please let us know if that helps.

Hi,
I'm aware of the possibility to request the checksum vie HEAD. But this does not guarantee that the binary has not been changed (including the checksum) between the original released one and a potential malicious one later on.
It seems that this topic needs a separate issue.


Charge ADR's are outdated, and needs to reflect current state and architecture

Synopsis:
Update: Story is about cleaning up existing ADRs, not replacing them with updated ones. Yet.
As a market participant
I want the ADR documentation of the charge and time series domain to reflect the current choices
So that I am not confused by the ADRs stating something which is no longer correct
ADRs are located here.
Acceptance criteria:

Charges ADR-001 must be proofread and either approved in this story as is, or updated with needed changes.
Charges ADR-002 must be updated or replaced by another ADR to reflect the current status (currently entirely wrong)
Charges ADR-003 must be proofread and either approved in this story as it, or updated with needed changes.
Charges ADR-004 must be updated or replaced by another ADR to reflect the current status (current outcome is wrong)
README.md must link to the existing ADRs afterwards and include information about retired ADRs for the ease of the reader

No requirements from Green ART in terms of maintenance. Hence this story is closed as we consider our documentation as sufficient.


Basic user guide / documentation

What filetypes are supported (jpg yes, png not)  and where the chat is being saved.

both types are supported. You can not directly read the chats, because they are being stored in a Angular manner. If you still want to try it is in your appdata/local/fuckr folder


Fill form with javascript selectors

Reproduced fillSelectors() function from casperjs to fill form without a name on inputs.

Thank you, the more of casperjs we will cover, the more usefull the tool will become


odeint sometimes skips critical points

While working on #7379 I found a bigger problem with odeint.  It only uses tcrit to prevent LSODA from overshooting points in t by enough to also go past tcrit, but doesn't make the LSODA integrator stop at internal critical points which aren't near points in t.
The example below uses integrating y'(t) = max( 0, 1-t ) from 0<t,20, which has a critical point at t=1
Reproducing code example:
yprime = lambda y,t: max(0,1-t)
y0 = np.zeros(1)
times_coarse = np.linspace(0,20,5)
times_fine = np.linspace(0,20,21)
tcrit = np.ones(1)
res_fine = odeint(yprime, y0, times_fine, tcrit=tcrit, full_output=1)
res_coarse = odeint(yprime, y0, times_coarse, tcrit=tcrit, full_output=1)
assert np.allclose(res_fine[0][-1], res_coarse[0][-1])

Scipy/Numpy/Python version information:
('1.0.0', '1.14.0', sys.version_info(major=2, minor=7, micro=13, releaselevel='final', serial=0))

As before, I'm fairly sure the problem is in the loop at lines 696-736 of integrate/_odepackmodule.c
it repeatedly calls LSODA with itask=4, which essentially means "advance the integrator past t, but without passing tcrit, and return a back-interpolated value for y(t)" but it should sometimes call LSODA just to get to the next tcrit, which would look something like do something like:
i = 0
j = 0
y_out = np.empty(len(t))
while i < len(t):
    if tcrit[j] < t[i]:
        ADVANCE INTEGRATOR TO tcrit[j]
        j+= 1
        continue
    elif tcrit[j] == t[i]:
        j+= 1

    ADVANCE INTEGRATOR TO t[i] AND SAVE TO y_out[i]
    i+=1

I have a similar issue. Is there any update? Thanks in advance! BR

I'll try adding a milestone to this to see if it helps from slipping under the radar..

I'll try adding a milestone to this to see if it helps from slipping under the radar..

Apparently it didn't 🙈
I've remilestoned it to the next release.


Option for automatic world optimization

During player's exploration of world, Minecraft will generate many chunks and in some of them, player never been.
Therefore, it is much easier to press one button in panel, rather than downloading world, optimizing (a.k.a removing unused chuncks) and uploading world again.
Cool library with I use is thanos
I am not sure can you use that exact library because of license stuff, but any library which does work should be ok

nevermind, you can host other things


Fix shellcheck

Ignoring the shellcheck for this test file

Still failing because actions/checkout uses old Node:
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.


Yes, the code should be available around the end of Oct. since we need to rewrite it in paddle in order to follow our company's internal open source rules. Sorry for the delay.

Yes, the code should be available around the end of Oct. since we need to rewrite it in paddle in order to follow our company's internal open source rules. Sorry for the delay.

Right now?


migrations + sqlite

It seems for the likes of Postgres Diesel will generate appropriate types for enums, as described in https://github.com/adwhit/diesel-derive-enum/issues/43. But what about when I am using Sqlite? i.e.
CREATE TABLE PriceMetadata (
  id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
  category TEXT CHECK(category IN ('A', 'B', 'C')) NOT NULL,
  data TEXT NOT NULL
)

Is there anything I can do other than using patch_file to replace the Text in my schema.rs?

Hi, sorry I think your question is best directed at the main diesel repository - this library is 'unofficial' and we can't change way diesel handles migrations.
But in answer to your question - I believe the answer is no, and a patch is the way to go.


Fix precipProbibilty data point name

Noticed in the docs that precipProbability was named precipIntensityProbability and this PR fixes the name. I also changed the wording of the definition to specify that the value is a decimal instead of a whole number.

A classic copy and paste issue, great catch, and thanks (as always) for the PR!


Using a ManyToManyWidget does not allow to ignore an empty value

Describe the bug
    def clean(self, value, row=None, **kwargs):
        if not value:
            return self.model.objects.none()

Try this in the python shell:
>>> self.model.objects.none() == self.model.objects.none()
False

This means that even modifying a field to add Model.objects.none() to the empty values doesn't work to ignore the empty queryset, so the cleaned value is always saved.
This can cause issues when the model being imported is referenced by an optional OneToOne relationship from another model and this model has an optional m2m, in this case the m2m is saved even when it shouldn't and it raises an error.
To Reproduce
...
Versions (please complete the following information):

Django Import Export: 3.30
Python 3.8.10
Django 4.2

Expected behavior
I think we could return an empty list instead of an empty queryset in this case, that way we can add '[]' to empty_values in Field to solve it. Alternatively we could just return an empty string and modify the rest of the code to ignore falsy or empty values.
Screenshots

Thanks for raising.  I would suggest to look at release 4.  We will be changing the interface in a few places to standardize it, so would be a good opportunity to put a fix in.  I think that returning an empty list would work ok, so no need to modify Field.
If you felt like creating a PR, that would be appreciated.  Contributing guidelines are here.

I looked into this and it is not a simple issue.  I think your issue is that you want to prevent the RelatedManager methods from being called here.  You could do this with a subclass of ManyToManyWidget which returned None from clean() and then create a Field with saves_null_values=False.  This prevents the RelatedManager methods from being called, but may break in cases where an empty queryset or list should be processed, for example when clearing an m2m field.
I'm open to suggestions but I don't see how we can safely add this fix to the core library.  Test code in #1980.

@matthewhegarty thanks for the info :pray:


Clearing chat history from Firebase

I know chat SDK works because we are saving the messages in Firebase. But, due to some privacy issues, I shouldn't keep user's chat data in Firebase forever. Is there any way I can implement this using chat SDK? Can I do something like deleting the message from Firebase right after the message is delivered? Or does it support any kind of encryption so that even Firebase admin cant see the messages?

Hi @basims to do this you would need to remove the messages using the Firebase REST API or a Firebase Functions script. It is not supported by the Chat SDK.


iOS build failed

The issue occurs on ios emulator (ios device not tested) but on android device it runs well.

tns version: 6.1.2
Plugin version: ^2.0.0-alpha.19

steps to reproduce:
add tns plugin to project: tns plugin add nativescript-webrtc-plugin
run ios app: tns run ios
build failed message:
Command CompileSwift failed with a nonzero exit code
note: Using new build systemnote: Planning buildnote: Constructing build descriptionwarning: Capabilities for Signing & Capabilities may not function correctly because its entitlements use a placeholder team ID. To resolve this, select a development team in the socketSample editor. (in target 'socketSample' from project 'socketSample')
BUILD FAILED

I have the same issue, you closed it on the same day. Did you find a solution?
TNS Version: 6.2.0
Plugin Version: ^2.0.0-alpha.19


Port scheduled tasks to use Activities

The SO and DO updaters are still using the Flag Action rather than the Activity. We should port those over and do a quick check of the rest of the background tasks to make sure we didn't miss any others.

I think this has been fixed in https://github.com/griffithlab/civic-v2/pull/1044

Agreed!


Fix an issue where paused pipelines are automatically restarted

The issue is that by default, pods have a grace period of 30 seconds
before they are deleted.  During that time, the worker master would
restart and set the pipeline's state to "RUNNING" again, causing workers
to be recreated.

Fix #2223


Breaking change between v1.8.9 and v1.8.10

Describe the bug
Here's a route:
import { createSignal } from "solid-js"

export default () => <TextInput/>

function TextInput(props) {
	const [ getFocused, setFocused ] = createSignal(false)

	return <input
		{...props}
		value={props.value || ""}
		onFocusOut={() => setFocused(foo => !foo)}
		classList={{ "border-red-500": getFocused() }}
	/>
}

In<EMAIL_ADDRESS>entering text into the input box and then losing focus just alternates the border colour.
In<EMAIL_ADDRESS>entering text into the input box and then losing focus alternates the border colour and then resets the .value of the input box to an empty string.
The props.value || "" expression appears to be re-evaluated even though props.value did not change.
Your Example Website or App
https://playground.solidjs.com/anonymous/f790b17d-ecec-494a-961e-2475ea09d1ad
Steps to Reproduce the Bug or Issue

Visit the playground link.
Enter text into the input and click away.

Playground appears to be still on v1.8.9.

Expected behavior
Behaviour to not beak between a patch version.
Screenshots or Videos
No response
Platform

OS: Linux
Browser: Firefox
Version: 121.0.1

Additional context
No response

I see so this is probably related to the bug fix for: https://github.com/solidjs/solid/issues/2016. The idea was that value would just propagate through. I don't see how that would clear it.
To be fair props.value would be evaluated again regardless to do the equality check, but it would not have been set on the input. Are you clearing props.value field in your app at some point.


libsForQt5.mlt: 6.10.0 -> 6.12.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/mlt/versions.
meta.description for libsForQt5.mlt is: '"Open source multimedia framework, designed for television broadcasting"'.
Release on GitHub
Compare changes on GitHub

Checks done (click to expand)

built on NixOS
/nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0/bin/melt passed the binary check.
/nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0/bin/.melt-wrapped passed the binary check.
2 of 2 passed binary check by having a zero exit code.
0 of 2 passed binary check by having the new version present in output.
found 6.12.0 with grep in /nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0
directory tree listing: https://gist.github.com/6a54d3b90d87b69b2ddb62201acf0677
du listing: https://gist.github.com/6e0a5d8c6533bbc4af108338e264e24f

Rebuild report (if merged into master) (click to expand)

18 total rebuild path(s)
6 package rebuild(s)
6 x86_64-linux rebuild(s)
6 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
6 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
kdeApplications.kdenlive
kdenlive
libsForQt5.mlt
libsForQt511.mlt
shotcut
synfigstudio

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A libsForQt5.mlt https://github.com/r-ryantm/nixpkgs/archive/8ac2cc686091d074c53c80469bd7f918500dc758.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0
ls -la /nix/store/72j52yka0pv3yjywqw7ap895nhambrja-mlt-6.12.0/bin

cc @cillianderoiste for testing.

Dupe of #51370 .


mock can't connect to db - dial tcp <IP_ADDRESS>:5432: connect: connection refused

I verified that connection actually works fine:
pg_isready -d postgres -h localhost -p 5432 -U postgres:postgres
localhost:5432 - accepting connections

But mock returns an error:
mock tables -t 'table' -a localhost -d postgres -w password -p 5432 -u postgres
FATA[2023-10-25 14:47:07] Encountered error when connecting to the database, err: dial tcp <IP_ADDRESS>:5432: connect: connection refused

mock tables -t 'table' --uri="postgres://postgres:postgres@localhost:5432/postgres"
FATA[2023-10-25 14:47:19] Encountered error when connecting to the database, err: dial tcp <IP_ADDRESS>:5432: connect: connection refused

@serpro69 , Hello.

Could you let me know where is this database installed , locally on your machine or via docker?
Are you using the mock data binary version or the docker version ?
What OS flavour is your machine mac , linux or windows ?

Thanks

Hi,
Thanks for a quick reply.

The db runs in a container.
Mock also runs via container.
Linux

I think I know the root cause here - two containers can't talk to each other since they don't share a network. Haven't actually thought of that...
I guess if I want to avoid dealing with setting up a "shared network", I'll have to use the binary?

Ya in this case the localhost wont work. Let me spin a docker instance of db and mock and share the result

Seems to work for me when both are running in the container, yes you need the communication setup b/w them.
Below is my test, maybe that helps.

         Some psql features might not work.
Type "help" for help.

postgres=# select version();
                                                       version
---------------------------------------------------------------------------------------------------------------------
 PostgreSQL 16.0 (Debian 16.0-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
(1 row)

postgres=# \dt
         List of relations
 Schema |  Name  | Type  |  Owner
--------+--------+-------+----------
 public | testme | table | postgres
(1 row)

postgres=# select * from testme;
 a | b | c
---+---+---
(0 rows)
postgres=#

-- From the local machine, I can communicate to the database via the port 5455.
-- Get the mock data project onto the container

% docker pull ghcr.io/faisaltheparttimecoder/mock-data:latest
latest: Pulling from faisaltheparttimecoder/mock-data
339de151aab4: Pull complete
7a3f3183aaac: Pull complete
c91c37fe4764: Pull complete
Digest: sha256:b8ad4623beae1ea7d5fe8f075dd04d49f8ae8684b9500703af41b8160a9bae9f
Status: Downloaded newer image for ghcr.io/faisaltheparttimecoder/mock-data:latest
ghcr.io/faisaltheparttimecoder/mock-data:latest

-- Basic docker setup

% docker image tag ghcr.io/faisaltheparttimecoder/mock-data mock
% docker volume create mockdata
mockdata

-- No load the test data to the docker postgres

% docker run -v mockdata:/home/mock mock database -f -u postgres -d postgres -p 5455 -a host.docker.internal -q -i
time="2023-10-25 18:21:33" level=info msg="Version of the database: PostgreSQL 16.0 (Debian 16.0-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit"
time="2023-10-25 18:21:35" level=info msg="The flavour of postgres is: postgres"
time="2023-10-25 18:21:35" level=info msg="The database that will be used by mock program is: postgres"
time="2023-10-25 18:21:35" level=info msg="Starting the program to mock full database"
time="2023-10-25 18:21:35" level=info msg="Extracting the tables in the database: postgres"
time="2023-10-25 18:21:37" level=info msg="Beginning the mocking process for the tables"
time="2023-10-25 18:21:37" level=info msg="Extracting the columns and data type information"
Extracting column information from tables 100% [==================================================] (1/1)
time="2023-10-25 18:21:39" level=info msg="Saving all the backup files to the path: /home/mock/mock/20231025182131"
time="2023-10-25 18:21:49" level=info msg="Total numbers of tables to mock: 1"
Mocking Table "public"."testme" 100% [==================================================] (10/10)
time="2023-10-25 18:21:53" level=info msg="Completed loading mock data to 1 tables"
time="2023-10-25 18:21:53" level=info msg="Successfully completed running the database sub command"

% psql -h localhost -p 5455 -U postgres
Password for user postgres:
psql (14.2, server 16.0 (Debian 16.0-1.pgdg120+1))
WARNING: psql major version 14, server major version 16.
         Some psql features might not work.
Type "help" for help.

postgres=# select a,b,substring(c, 1, 10) from testme;
    a     |    b     | substring
----------+----------+------------
  3772000 |  5828302 | dolorum mo
  4454956 |  -628709 | est est as
   733882 |  1394611 | incidunt s
 -6780702 | -5300511 | iste minim
 -2977343 |  1032220 | illo beata
  1419172 | -3890594 | ad iusto v
  6194892 | -7280027 | voluptatum
 -1615978 |  1404657 | atque ut s
  3608355 | -2389120 | maiores re
  5838071 |  -952833 | ut et illu
(10 rows)

NOTE: I use "host.docker.internal" for host since I use Mac
https://www.baeldung.com/ops/docker-communicating-with-containers-on-same-machine#:~:text=The host.docker.internal is,bridge to discover each other.
For linux, you may connect using the IP found under ifconfig docker0
https://stackoverflow.com/questions/48546124/what-is-linux-equivalent-of-host-docker-internal

Thanks a lot for the help @faisaltheparttimecoder  ! I'll try this out.
I'll close this issue since it's not a bug on mock-data side.


Parallel BFS order

In webgraph-algo-rs we have parallel BFS, we should update the BFS order function using the newer algorithm.

Not 100% sure it's a good idea. The order of a parallel BFS is unpredictable. But it might me good anyway. Certainly we must be sure to sign the number during successor enumeration. This might need using the filter function instead of the callback in some implementations.


error module 'myGpuFeatures.myGpuFeatures' has no attribute 'detectAndDescribeBySurf'

module 'myGpuFeatures.myGpuFeatures' has no attribute 'detectAndDescribeBySurf'
when I tried python Main.py

also happend
The error is :  from myGpuFeatures import myGpuFeatures
ImportError: DLL load failed: 找不到指定的模块。
I check by inspection, you have errors in dependecies on pyd file

First, What's your operating system? The code only works on windows.
Second, Have you ever unzip the file "myGpuFeatures.rar"?
Third, I only test on python36 and OpenCV-3.3.1.


[controller] Fix hybrid store migration failure during ongoing batch push jobs

Fix hybrid store migration failure during ongoing batch push jobs
This PR fixes an issue where hybrid store migration fails if a batch push job is ongoing
and a non-truncated version topic exists in the parent region.
The problem stemmed from a safeguard intended to prevent hybrid-to-batch conversion during
ongoing push jobs (added to address targeted region push issues). The safeguard failed to
account for store migration scenarios where hybrid configurations are added during the
updateStore operation.
This misclassification of the migration attempt as a batch-to-hybrid store conversion
caused unintended operations, including a call to VPHA::getTopicForCurrentPushJob. This
method attempts to issue a killOfflinePushJob when the version config is missing in the
store’s configuration. The kill job, in turn, tries to update the version status to
KILLED, which does not exist, which leads to a version not found exception from
AbstractStore::updateVersionStatus.
Ref: https://github.com/linkedin/venice/pull/1143
How was this PR tested?

Does this PR introduce any user-facing changes?

[x] No. You can skip the rest of this section.
[ ] Yes. Make sure to explain your proposed changes and call out the behavior change.

Thank you, @smaji for the quick review!


companyId parameter?

Hi there, my team and I don't really understand the purpose of the company Id parameter that goes with each of the requests. We can't find anything about it in the Sage API docs, and we'd like to contribute to this repo.

So due to some design choices you can have multiple companies per set of credentials. Therefor you need to specify what company you use

Hi There,
Paul is correct. Sage One supports multiple companies per user/set of credentials. Thus, you need to prompt the user to select the company they wish to work with before calling any api methods. You can use the **CompanyRequest ** class to get the Current company id of the logged in user.
I've also just added two additional methods for the **CompanyRequest ** class, with which you can get all companies for the user as well as a specific company by Id.
Please take a look at the **CompanyTests ** class in the SageOneApi.Tests project for examples on usage.
Thank you for offering to contribute to the repo. Any help is appreciated!


added it.json with italian translations

There was no issue about Italian translations but that did not stop me! Hopefully it is useful

grazie!


[Question] How can I retrieve the position of child nodes in a search function?

hello. everyone.
I'm trying to find the position of a child node in react-d3-tree.
I don't know how to implement that feature, but can you tell me how to do it?
I want to implement a search function and center the node.
The data search found the tag through the for statement, but it is difficult to implement the search function because the location value of the node is not known.
What version of react-d3-tree are you using?
[Replace with your answer] 3.3.6

i solved it
There is no callback point function.
The element has a point.

Did your solution allow for centering a node externally? I also need to search and center but can't figure it out.

Can you tell me how you solved it?


Integrate Mayhem

Cmake changes looks ok to me.

Whoop, spoke too soon. Could you please resolve

Multi-stage build
Correct usage of filepath
Generic project name

I went ahead and resolved this.

Sorry, I must have missed this!

Wait, I did resolve this in my fork. Was there something else I had to do to make the commit show up in this PR?

Yeah, since the PR is closed no new changes would have shown up. You would have had to create a new PR. No worries, since in any case it's resolved now.


[ExpandCollapse] Headings around collapsible sections

Description

The advantage of collapsing content is to reduce scrolling.
Expanding the content is a choice to see it.
The button controlling the section offers a description of the hidden content. Essentially, the button is a heading providing an overview of the content.

Consideration

Should we wrap the collapse <button> in a heading? <h#><button>Collapse Heading</button></h#>
The heading number would need to be decided depending on the content structure of the page
Is there ever a need to use a collapse section without a heading? How are these being used on TELUS.com currently?

Version Number of TDS

[ ] v 0.30

followed up with oskar on this issue. i have assigned it to him so that he can review it again and either make adjustments or close the issue if it's no longer a thing.

Update on the considerations in the original ticket

We should wrap the collapse  in a heading.
e.g.
<h#><button>Collapse Heading</button></h#>

The default for the component could be  but the heading number would need to be modular in Site Builder so that it can be adjusted in context of the page.

Hi @owestinTelus, are we able to say that ALL ExpandCollapses should ALWYAS use headings? Is seems that based on usage patterns I'm not sure it would ALWAYS be a heading element.
Maybe it should be configurable? With the option to not use a heading too?

If we use ExpandCollapse for FAQs, we should create a definition list - that might be a separate component.
I can't think of a scenario where you wouldn't want a heading to describe the content in the ExpandCollapse. If it can be flexible enough to change it to a <p> or other tag that would be great.
The default could still be <h3>

I think if we were to implement something like this, we would make it more flexible, so the header could either be a simple string, or an arbitrary component/element. Then all the use cases you mentioned would be handled, you could use a paragraph, a heading, a definition list, or none of the above.
<ExpandCollapse>
  <Panel header="Simple string">
    Some content...
  </Panel>
</ExpandCollapse>

<ExpandCollapse>
  <Panel header={<Heading level={3}>A heading component title</Heading>}>
    Some content...
  </Panel>
</ExpandCollapse>

This is dependent on #605
The main idea is to have heading aesthetics be consistent in all Panel headings, but with custom heading HTML elements.

This was resolved in<EMAIL_ADDRESS>


Maximum number of recursive calls reached

Occasionally, one reaches the maximum number of recursion calls allowed by python. This limit can be increased but there will always be cases where a union/intersection/subtraction will throw this error.
The problem arises when there are polygons with more than 3 nodes that are not planar and have at least one node on the back side of the cutting plane defined by the first 3 nodes. In this case splitPolygon in pycsg will append the polygon to the "back" list, causing an infinite number of recursive BSPNode.build calls.
The problem also arises when determining whether a polygon is co-planar with itself (the answer is yes). Only the first three vertices are used but the call may return back/front is some of the nodes are at the back/front for the polygon and this can lead to an infinite recursion depth. I fixed the splitPolygon method to avoid this.

Hi Tim,
I would recommend the above PR to be accepted. I find the changes that fixes the infinite number of recursions make the code much more robust, particularly when working with spheres. It's not possible to enforce co-planar polygons due to the curvature of the sphere. There are other small improvements (including a single place where the version is stored) and the fact that zero size polygons are removed by converting to a VTK data structure (some triangulation routines will barf on this).
Also, it would be great to push the newest version 0.3.3 to the pip repo -- this would simplify my code dependency.
Best,
--Alex

Hi Alex, I'll push to the pip repo in a few days (i'm on a short holiday, without a computer).
Let me know if it takes too long, I might have forgotten about it :)

0.3.3 now in pip repo.
Thanks for this PR!


Stop webpack from outputting file list

Maybe this is not possible but at the moment whenever eslint throws a warning or error, webpack proceeds to output the whole file list and then shows the errors at the bottom.
Is there anyway to only see eslint's info without webpack's file list dump?
Thanks!

This is probably a webpack configuration issue, more than an eslint-loader one.
If you are using webpack-dev-server you can use the following config:
module.exports =  {
  // webpack-dev-server config
  devServer: {
    // webpack output options
    stats: {
      // hide all chunk dependencies because it's unreadable
      chunkModules: false,
      // noize
      assets: false,
    },
  },

@MoOx Thank you! exactly what it was.


jsx-first-prop-new-line needs --fix command

There needs to be a --fix command for this rule so that it automatically adds the props to a new line when the multiline flag is used. Better to have an autofix than the entire team having to go through all files just to hit the enter key over and over.

Fixed in #886?


xrotation

How do I do xrotation (like in holoviews) in hvplot? Thanks!

I believe the rot  option supports this, but it doesn't seem to be documented in https://hvplot.pyviz.org/user_guide/Plotting.html.

it works! thanks so much! @philippjfr


could not find driver

How do I configure Doctrine and SQLite?
--- a/application/config/database.php
+++ b/application/config/database.php
@@ -64,11 +64,11 @@ $query_builder = TRUE;

 $db['default'] = array(
    'dsn'   => '',
-   'hostname' => 'localhost',
+ 'hostname' => 'sqlite:' . APPPATH . 'data/sqlite-database.db',
    'username' => '',
    'password' => '',
    'database' => '',
-   'dbdriver' => 'mysqli',
+ 'dbdriver' => 'pdo',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => TRUE,

$ php vendor/bin/combustor create:controller test
could not find driver

Hello! This issue might be because Describe library because unfortunately Describe only supports MySQL driver. I will create a new release of Describe and I will update this issue. Thanks for this! :+1:

Hi @kenjis Do you have PDO SQLite installed in your system? It's because I get the same error when I try it in the browser.

I can't find the place where outputs could not find driver.
But at least here is a problem: https://github.com/rougin/combustor/blob/master/src/Doctrine/Templates/Library.txt#L41-51
pdo_mysql is hard coded.
I wrote config converter for my own: https://github.com/kenjis/codeigniter-doctrine/blob/master/libraries/Doctrine.php#L76
But CodeIgniter's db config is too flexible, so it is difficult to convert all cases.

I successfully generated some code using your test case above in the Describe library. Unfortunately, I still need to test them though if it works after the generation of the file.
Wow. You really did a great job in determining the database connection based on its driver. :+1:  Regarding the hard coded pdo_mysql, thanks for that! I really forgot to change that line :D

I currently fixed this issue but it is not yet available to be released. It's in dev-master branch.


Send response to 550 and 552

PR with own PR from https://github.com/arithmetric/aws-lambda-ses-forwarder/pull/127 .
This PR consist of two main elements - auto response on:

SMTP 550 - no recipient found
SMTP 552 - mail size exceeds 10 MB

550 - no recipient found
When a person is sending an email, and global catch (@example.com) is not enabled, the email will just disappear - neither the sender nor the email-admin will be notified. If the new "notify"-config is enabled, the sender will be informed, that the recipient does not exists.
Config
notifyEmail<EMAIL_ADDRESS>notify550: true,

Response
An error occurred while trying to deliver the mail to the following recipients<EMAIL_ADDRESS>
Your email was rejected. The email address was not found. Please check the receiving email address.

SMTP Reply Code = 550, SMTP Status Code = 5.1.1

552 - mail size exceeds 10 MB
Another problem is when the mail size exceeds AWS's limit on 10MB. This will also fail silently (#97, #124) - not notifying either the sender or the email-admin. If the new "notify"-config is enabled, the sender will be informed, that the recipient does not exists.
Config
notifyEmail<EMAIL_ADDRESS>notify552: true,

Response
An error occurred while trying to deliver the mail to the following recipients<EMAIL_ADDRESS>
Your email was rejected. Please ensure that the size of your mail is less than 10 MB.

SMTP Reply Code = 552, SMTP Status Code = 5.3.4

Just to inform those of you coming from original branch - this PR has been merged and it works perfectly!


get_random_seed in attestation_rnd.c could fail depending on Arm Architecture Reference Manual

During cold boot, function calls attestaion_init->attest_rnd_prng_init->get_random_seed->arch_collect_entropy in order. The arch_collect_entropy return false when RNDR sets NZCV to 0b0100 and it causes the whole attestation_init process to fail.
static inline bool arch_collect_entropy(uint64_t *random)
{
	unsigned long rc;
	uint64_t val;

	asm volatile(
	"	mrs  %[val], " __XSTRING(RNDR) "\n"
	"	str  %[val], %[random_ptr]\n"
	"	cset %[rc], ne\n" /* RNDR sets NZCV to 0b0100 on failure */
	: [random_ptr] "=m" (*random),
	  [rc] "=r" (rc),
	  [val] "=r" (val)
	:
	: "cc"
	);
	return (rc == 1UL);
}

Related description can be found in the Arm Reference Manual in C6.1.4 under "Effect of random number generation instructions on Condition flags". However, I notice there is note just below it:

The definition of "reasonable period of time" is IMPLEMENTATION DEFINED. The expectation is that software might use this as an opportunity to reschedule or run a different routine, perhaps after a small number of retries have failed to return a valid value.

Does it mean the RNDR instruction may fail and software should retry it a few times after a failure?

Hi Yiwei,
Thanks for reporting the issue.
Yes SW should retry RNDR instruction if it fails,
we have similar logic in pauth_init_enable_el2, which can be replicated in get_random_seed.
I will be making the changes.
Thanks

Internal ref : https://jira.arm.com/browse/GENFW-8915

The gerrit ref is https://review.trustedfirmware.org/c/TF-RMM/tf-rmm/+/28035


Feature Request:

What is the expected behavior?
When using llama.cpp server it would be convenient if the prompt matched an appropriate default for the Granite model.
What is the actual behavior?
Defaults to the llama chat prompts
Please provide a unit test or code example to demonstrate the problem.
N/A
Other notes on how to reproduce the issue? Screenshots of your output are also helpful.

Any possible solutions?
Add at template to llama.cpp
If the bug is confirmed, would you be willing to submit a PR?
Maybe

this is the chat template
https://huggingface.co/ibm-granite/granite-3b-code-instruct/blob/0e2b426b339d0a5a987aa6690aca5f7746ca2707/tokenizer_config.json#L179
I would suggest to create an issue in llama.cpp for this


non deterministic "no storage drivers initialized" error

We use rexray to mount/unmount volumes in our EC2 hosts, sometimes there are cases where rexray throws "no storage driver initialized" error and could not find the existing volume.
Attached is a log file: result-upload-service_restart_log.txt, in lines 11,12, 50 and 51 you can see the log prints indicating that the volume could not be found, it is probably due to the "no storage driver initialized" error that rexray promted, the strange think is that after 30 sec we call again "rexray" but this time everything worked as expected and we could find the volume (lines 60, 61).
It seems there is some kind of temporary problems where running rexray, and "-l debug" not always help here. Maybe you can help with a pinpoint for where to look for the problem?
rexray versioning info:
Binary: /opt/bin/rexray
SemVer: 0.2.0
OsArch: Linux-i386
Branch: v0.2.0
Commit: b018a3be05b54a110728d3669213e3d8f65de197
Formed: Wed, 30 Sep 2015 21:28:36 UTC
You can find the mount/unmount scripts we are using here: https://github.com/gaia-adm/volume-tools-amazon/blob/master/gaia-mount.sh and here: https://github.com/gaia-adm/volume-tools-amazon/blob/master/gaia-unmount.sh
Also, as for the installed components, you can find them here: https://github.com/gaia-adm/volume-tools-amazon/blob/master/installer.sh
Thanks in ahead for your help!
Shay

@shayts7 Thanks for reaching out.
I agree with your  non-deterministic portion of the storage driver initialization logging that you reference here.  The history behind this, is that we would typically try and initialize all storage drivers and thus did not want to be verbose with the general output of errors during those driver initializations.  The -l debug flag is the intended way currently to view errors during the process.
With that said, we have made incremental updates to ensure the logging is better within drivers and at the driver managers.  We are expecting to make a change in 0.4 to further enhance this to get it where we want it.
Speaking specifically to the EC2 driver, I believe you are possibly encountering a timeout (50ms) when asking for the instance identity document.  This actually goes back to our previous driver initialization method (try and do all of them), and not wanting to hang all drivers on an unsuccessful ec2 initialization.
        conn, err := net.DialTimeout("tcp", "<IP_ADDRESS>:80", 50*time.Millisecond)
	if err != nil {
		return &instanceIdentityDocument{}, fmt.Errorf("Error: %v\n", err)
	}
	defer conn.Close()

	url := "http://<IP_ADDRESS>/latest/dynamic/instance-identity/document"
	resp, err := http.Get(url)
	if err != nil {
		return &instanceIdentityDocument{}, fmt.Errorf("Error: %v\n", err)
	}

Have you recorded a failure with the -l debug flag on?
Quick fix here would be to increase the timeout, and make it a configurable setting.  Beyond that a retry mechanism would help it be more resilient.
As an alternative, you could think about starting REX-Ray as a service rexray start.  From there you could interface with the HTTP/JSON API through dvdcli.

Thanks for the detailed answer! I will look into it.

How can I increase the timeout? Can you point me out to documentation part that explain that?
Thanks,
Shay

Right now it would be a custom build to increase the timeout.  We could add
it to 0.3.2 possibly.  I do believe the timeout should be something
configurable.  But it would be nice to see a log that has debug on to be
certain.
On Monday, January 25, 2016, Shay Tsadok<EMAIL_ADDRESS>wrote:

How can I increase the timeout? Can you point me out to documentation part
that explain that?
Thanks,
Shay
—
Reply to this email directly or view it on GitHub
https://github.com/emccode/rexray/issues/269#issuecomment-174661681.

I'll try to reproduce it with "-l debug", If I'll have results I will let you know.
Thanks!

@shayts7 this should help you https://github.com/emccode/rexray/issues/268#issuecomment-176784073

@miry, thanks for the snippet

Small Update - I still did not have a chance to see the problem reproduced (I have a script that executes "rexray volume get" every 60 sec I was running it for few days now, but no error)
I guess it was a temporary network problem in AWS that caused the problem, this assumption gets stronger as we use fleet to manage our services and the "no storage drive initialized" came out after fleet decided to restart one of our services, and it might that fleet performed that restart due to a network connectivity issues.

Got it, thanks for the update @shayts7.

Hi @shayts7,
Where's the timeout setting to which you referred? I can make it configurable for our next release (point or otherwise).

Here is the line with the timeout https://github.com/emccode/rexray/blob/master/drivers/storage/ec2/ec2.go#L131


Some stuffs

Replacing Rickroll link with the HD one https://www.youtube.com/watch?v=o-YBDTqX_ZU
Adding joke command and define command

done


signing: use ECVRF-EDWARDS25519-SHA512-ELL2 for vrf

closes https://github.com/spacemeshos/go-spacemesh/issues/2269

use ecvrf implementation from https://github.com/oasisprotocol/curve25519-voi . it changes vrf size to 80 bytes
change types.NodeID to 32 bytes array

bors try

Sorry for only getting around to looking at this after it was merged, but I think we should remove the NodeID from the ATX. It was only there when we needed to maintain an identity database - now that we don't, we should derive the public key from the signature and do all validations on that (e.g. that the PoST proof validates with this key and that the key we derived from the previous ATX matches). It can (probably should) be cached in the database along with the ATX, but not included in the gossip message. This will be consistent with all our other messages.

FYI: https://github.com/oasisprotocol/curve25519-voi/commit/2879729f5ee0d5166b6b288b9e3025aa775e7911
Sorry for the inconvenience, the newer draft(s) that post-date when ECVRF support was added, changed the semantics for pi generation.  The  new _v10 methods can be used to maintain exact backward compatible behavior.


Add a solution to problem 662

The idea is to consider the indices of nodes in level order, and the maximum width in a level can be computed using the indices of its leftmost and rightmost nodes. We can perform a BFS to compute the maximum width of each level and return the maximum value among them.
There is a problem that although the answer is guaranteed to be within the range of a 32-bit signed integer, the problem does not say anything about the index, and it can acutally be extremely large, e.g. in the case of a vertial zigzag. Using a Long or double will not help, so I use Int for the index and it passes the test cases.

There is a problem that although the answer is guaranteed to be within the range of a 32-bit signed integer, the problem does not say anything about the index, and it can acutally be extremely large, e.g. in the case of a vertial zigzag. Using a Long or double will not help, so I use Int for the index and it passes the test cases.

The overflow issue can be solved by normalizing the indices of nodes in current level: when computing the indices of nodes in the next level, normalize the indices of nodes in current level by shifting it such that the index of leftmost node is zero.


Adding Login page

Move the login page to the users app.

[ ] create templates folder for the users app
[ ] moving HTML to users app

Check out https://github.com/AvivLiberman/falcon/tree/new-login-page for nice and clean CSS and HTML if you want to 😉

@orzionpour after #35 is done you can take care of this?

Will be my pleasure 🙃

@orzionpour got any progress?
I think you should also route the login page to /login and create new home page separately

Not yet, due to time limits..
I will work on it after Tuesday’s Midterm, with hope that I will finish by Wednesday.
Sorry for the delay.
And yes - as Barak’s suggested after the first demo, I will implement a proper landing page in addition to the login page.


Allowing MAPDL license pause/unpause on tests

As the title.
Mapdl student version only allows one process running. But some tests requires another MAPDL instance running.
The idea is to test if "pausing" mapdl instance, will allow us to skip this problem.
Close #2595

Interestingly, it seems that the PAUSE command does not work on gRPC mode.
>> mapdl.run("pause")
CRITICAL - pymapdl_global -  logging - handle_exception - Uncaught exception
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/mapdl/pymapdl/src/ansys/mapdl/core/mapdl_core.py", line 2236, in run
    self._raise_errors(text)
  File "/home/mapdl/pymapdl/src/ansys/mapdl/core/mapdl_core.py", line 2682, in _raise_errors
    raise MapdlInvalidRoutineError(text)
ansys.mapdl.core.errors.MapdlInvalidRoutineError: *** WARNING ***                         CP =       2.088   TIME= 15:47:33
 PAUSE is not a recognized BEGIN command, abbreviation, or macro.  This
 command will be ignored.

Ignore these messages by setting 'ignore_errors'=True

However, it does work in a normal context:

I believe I'm using it wrong.... Pinging @mikerife @FredAns @koubaa

Usage of PAUSE
Additionally, it seems the command PAUSE does not work well in MAPDL student version (or maybe I'm using it wrong).
But if you start an MAPDL instance, and then issue PAUSE:
$ ansys -dir /tmp
...
...
 RUN SETUP PROCEDURE FROM FILE= /ansys_inc/v241/ansys/apdl/start.ans

 /INPUT FILE= /ansys_inc/v241/ansys/apdl/start.ans  LINE=       0

 BEGIN:
pause

 *** WARNING ***                         CP =       0.518   TIME= 16:14:02
 This application is now PAUSED, making its license available for use by
 another application in this Workbench session.  All commands to this
 application will be ignored until an UNPAUSE command is typed in the
 Command Window of this application and successfully processed.

 BEGIN:

and then start another MAPDL instance, you get a Maximum licensed number of demo users already reached error.
(.venv) root@67ca9354d958:~/pymapdl# ansys -dir /tmp/tmp

 ANSYS LICENSE MANAGER ERROR:
 Maximum licensed number of demo users already reached.

 ANSYS LICENSE MANAGER ERROR:
 No such feature exists.
 Feature:       mech_2
 License path:  /var/tmp//616ceecb-5105-43ba-a26d-dd269757afed:
 FlexNet Licensing error:-5,357

 ANSYS LICENSE MANAGER ERROR:
 No such feature exists.
 Feature:       mech_1
 License path:  /var/tmp//616ceecb-5105-43ba-a26d-dd269757afed:
 FlexNet Licensing error:-5,357

 ANSYS LICENSE MANAGER ERROR:
 No such feature exists.
 Feature:       meba
 License path:  /var/tmp//616ceecb-5105-43ba-a26d-dd269757afed:
 FlexNet Licensing error:-5,357

However, if I use the -smp flag in both processes, it works. The first instance release the license, so the second one can take it.

Moved all conversations to the issue #2595

Closing this because it seems the gRPC server cannot release the license. Maybe because this server depends on it.


feat: Crawler commands

This PR introduce a new crawler commands and its related subcommand, allowing users to directly interact with the Crawler API.

@kai687 Authentication is done through Crawler userID / APIKey as env variable. Alternatively the credentials can be stored inside one or multiples profiles. It's only temporary as we might have some changes coming to the Crawler public API that will allow users to authenticate through their Algolia Key and not the crawler specific ones.


60 Memory error when creating fine anisotropic grid

Merge Request - GuideLine Checklist
Implemented small fix where iterator could go out of bounds in creating anisotropic grid. This was the case, when nr_exp=fac_ani+1 and fac_ani>3 with alpha_coeff either being 0 or 2.
Guideline to check code before resolve WIP and approval, respectively.
As many checkboxes as possible should be ticked.
Checks by code author:
Always to be checked:

[x] There is at least one issue associated with the pull request.
[x] New code adheres with the coding guidelines
[x] No large data files have been added to the repository. Maximum size for files should be of the order of KB not MB. In particular avoid adding of pdf, word, or other files that cannot be change-tracked correctly by git.

If functions were changed or functionality was added:

[ ] Tests for new functionality has been added
[ ] A local test was succesful

If new functionality was added:

[ ] There is appropriate documentation of your work. (use doxygen style comments)

If new third party software is used:

[x] Did you pay attention to its license? Please remember to add it to the wiki after successful merging.

If new mathematical methods or epidemiological terms are used:

[x] Are new methods referenced? Did you provide further documentation?

[ ] The following questions are addressed in the documentation (if need be):

Developers (what did you do?, how can it be maintained?)

For users (how to use your work?)

For admins (how to install and configure your work?)

For documentation: Please write or update the Readme in the current working directory!

Checks by code reviewer(s):

[ ] Is the code clean of development artifacts e.g., unnecessary comments, prints, ...
[ ] The ticket goals for each associated issue are reached or problems are clearly addressed (i.e., a new issue was introduced).
[ ] There are appropriate unit tests and they pass.
[ ] The git history is clean and linearized for the merge request. All reviewers should squash commits and write a simple and meaningful commit message.
[ ] Coverage report for new code is acceptable.
[ ] No large data files have been added to the repository. Maximum size for files should be of the order of KB not MB. In particular avoid adding of pdf, word, or other files that cannot be change-tracked correctly by git.

@CodingAllan Please try to give it a simple (as with the issue) and provide details in the description ;-)

Hi @CodingAllan, I have now seen that there was a code shortly after my last review. Please request the review once changes are made, verify that all comments are addressed and answer on the opened conversations. Actually it looks like if two comments have been ignored?

@mknaranja , yes I just remembered that this was not merged yet and hence requested a review.
I commented on the suggestions you made and just wanted to ask if the way of correcting is acceptable.
Im not sure if I am missing something.. but I did not ignore anything ?

@mknaranja , yes I just remembered that this was not merged yet and hence requested a review.
I commented on the suggestions you made and just wanted to ask if the way of correcting is acceptable. Im not sure if I am missing something.. but I did not ignore anything ?

I am sorry, I accidentally marked a conversation as resolved.


Minor improvements

A bunch of minor improvements to:

Preferences dialog -> left side got larger and larger (larger than my screen height) while the right side had plenty of space -> moved plugins group to right side and made sure the plugins list is initialized before the first file is loaded.
Variable naming "getInstance" special handling
Do not ask for project save if nothing had been changed (e.g. start Jadx do not load a project and directly close it).
A lot of minor improvements to the debugger especially for error handling and logging for the case where there are problems.

@jpstotz looks good to me, but CodeQL found possible log injections and suggesting filtering input to allow only alphanumeric characters to pass:
if (input.matches("\\w*")) {

Or maybe we can just concat raw strings without using logger args pattern ({}).

@skylot Sorry but I am still not sure how to react on this CodeQL error. Especially as the CodeQL error is not on testing that the input is non-ASCII but on replacing new lines for avoiding forged log lines.
First I thought of an early Aprils fool because using log injection as an "attack" seems to me not like something an attacker would ever consider. Especially as in my opinion it is the dedicated purpose of a log system to record received data in a way the developer can see the actual unmodified data.
Even considering that log files could be processed by an automatic system later and based on certain log entries trigger actions (a scenario not really relevant for jadx but let's just consider it). In such a case in my opinion it is the job of the logging system to save the data in a way that makes injections impossible (e.g. save the data not in plain text files but in JSON, XML or directly in a database). So the only risk I see is a potential DOS attack by injecting large data into the log file consuming storage space.
Checking the linked OWASP page mentions possible attacks:

Injection of new/bogus log events (log forging via log injection)
Injection of XSS attacks, hoping that the malicious log event is viewed in a vulnerable web application
Injection of commands that parsers (like PHP parsers) could execute

In my opinion 2. and 3. are outside of an web application  not really relevant and anyway it would be a vulnerability of the log viewer application (log files are user defined arbitrary and potential insecure data by definition). So it comes back to 1. injection of log messages an possible "attack" in deed but so useless that it is not relevant in my opinion besides for script kiddies who what to say "helle I was here".

@jpstotz well, I agree that this vulnerability is not really related to jadx-gui, but due to the latest issues with log4j, I want to correctly handle such warnings. Mostly to get used to correct code practices and prevent possible issues in other parts of jadx. For example, in jadx-core such issues should be handled very carefully because it can be used as library in any kind of software.
So I will add simple log escape utility method in jadx-core with suggested checks. It is not hard, but will allow making first step to prevent future issues.

@skylot OK, the LogUtils seem to be a good approach but please don't use vulnerable input as alternative message because this can frighten users and is actually not true. I would rather call it "non-ASCII". Or even better just replace non-matching characters by . or ?. That would still allow to read the text content.

Looks like CodeQL not too smart. After applying suggested fix, it is still throwing warnings :cry:
Anyway, I think we have done enough, so I'm merging this PR.


Set vertical_domain default to 'depth'

data.vertical_domain is contractual and should always be present in the metadata. The current default value None makes in non-present if not provided as argument to ExportData. We should set this back to 'depth', previously it was hardcoded to this ref #624

Merged in #807


Pol 102 google instance stack driver utilization policy

Description
This Policy Template gathers Google StackDriver utilization for instances on 30-day intervals and resizes them after user approval. This is meant to be run as a monthly policy.
Issues Resolved

Removed the tagging escalation/action
Added parameters for Avg CPU and memory
Added Resize action for underutilized instances
Changed the authentication to credential services
changed name of the policy to Google Inefficient Instance Utilization using StackDriver

Contribution Check List

[x] All tests pass.
[x] New functionality includes testing.
[x] New functionality has been documented in the README if applicable
[x] New functionality has been documented in CHANGELOG.MD

Running template link
https://governance.rightscale.com/org/1105/projects/60073/policy-incidents/5e15d8a47abe69000112a401
Screenshot

          3 Errors

:no_entry_sign:
The URL is not valid: https://docs.rightscale.com/credentials/ in cost/google/instances_stackdriver_utilization/README.md Status: 404

:no_entry_sign:
The URL is not valid: http://docs.rightscale.com/policies/ in cost/google/instances_stackdriver_utilization/google_instances_stackdriver_utilization.pt Status: 301

:no_entry_sign:
cost/google/instances_stackdriver_utilization/README.md:36: MD038 Spaces inside code span elements
A detailed description of the rules is available at https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md

  Generated by :no_entry_sign: Danger

This looks good.  I will approve next week.


Unable to detect 'databaseDir' from config when using factory function in phpunit test

Getting the following error when running phpunit:
Yarak\Exceptions\InvalidConfig: The setting 'application -> databaseDir' can not be found. Please be sure it is set.
This is what my phpunit bootstrap file looks like:
<?php

use Phalcon\Di\FactoryDefault;
use Phalcon\Loader;

ini_set("display_errors", 1);
error_reporting(E_ALL);

define("ROOT_PATH", __DIR__);
define("BASE_PATH", __DIR__ . '/../');
define("APP_PATH", BASE_PATH . 'app');

$di = new FactoryDefault();

include APP_PATH . '/config/services.php';

$config = $di->getConfig();

include APP_PATH . '/config/loader.php';

Figured it out, there was no problem with my setup.
I was just not calling the setConfig method on the Yarak\Config\Config.
Just added this in my TestCase and it started working
\Yarak\Config\Config::getInstance()->setConfig($this->di->getConfig());

Thank you for this great package.