Add option to allow disable tags trimming

Asked by a user by email, I think it makes sense to add an option for this and have as default the current behaviour

Hi @Access-Denied-IT,
I noticed that the model is not trimmed, it's just a visual thing: by default the browser does not show whitespaces (see http://www.w3schools.com/cssref/pr_text_white-space.asp).
I am sorry but I think I am not going to hack the CSS for showing the whitespaces: I even tried but really it was painful to look at. Maybe submit a PR if you know a good way of doing it?

Update: I misunderstood the request - tags are not trimmed, but maybe they should be by default

This should have been added :)


newbie to GP and GPy, need some help about the training data size

hi, i am a  new guy to gp and gpy ,trying to use gpy to make a regression.
my traing dataset is 5 dim. the sample number is as large as 10000. when optimize,  it eat up 5G of  the memory , then ,it kill the PC, no keyboard and mouse could move.
when I reduce the sample number to 5000, it works fine.
so my question is that  GP or GPy not suit for big data?  I know something about cnn lstm, they can do huge data such as 999999 data is ok ,just batch by batch training them.   Is there any thing like it  in GP?
or my PC is not suit for the work?  I have to add my memory to 100G, so that I can deal with data like 999999  ?
i may have some basic wrong about the things ,but really thanks for any help.

This is a great discussion to take over to the mailing list:


⚠ Bofrost.at has degraded performance

In b775671, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1460 ms

Resolved: Bofrost.at performance has improved in a059422 after 14 minutes.


Replace redirections in the reference section

This PR removes the redirections used in the reference section and fixes some bad links.

Changes seem fine. Noted a few nits. Thanks!
/lgtm

/approve

/lgtm


Introduce component "objects" ( aka list of Kube objects )

As a stack/devfile author, I wish to convey outer-loop deployment guidance in the form of a list of parameterized kubernetes objects.
The format draws inspiration from Templates https://github.com/sbose78/nodejs-rest-http-crud/blob/master/.openshiftio/application.yaml#L38
---

 components:
   -  id: deploy-node-app
      parameters:
         - name: ${image}
           value: quay.io/quarkus-quickstarts/getting-started-knative ## Default
       objects:
         - apiVersion: serving.knative.dev/v1alpha1
            kind: Service
            metadata:
              name: greeter
            spec:
              template:
                spec:
                  containers:
                    - image: ${image}
                      livenessProbe:
                      httpGet:
                        path: /health/live
                      readinessProbe:
                      httpGet:
                        path: /health/ready

If the objects component is associated with a dockerfile component (image build guidance) in a composite command, #51 , che/odo must associate the built image from the 'build' guidance using the image parameter.
- composite:
      id: build-and-deploy
      label: Build image and deploy nodejs app
      commands:
      - build-node-app
      - deploy-node-app
      parallel: false
      group:
          kind: deploy

Would it be simpler for a user to have the ability to specify a path or a link to a deployment manifest containing these objects? The tool consuming this would then apply the templating on that file.

@EnriqueL8 that is already supported using a component of type kubernetes.


[5.2] Validate app name command

@taylorotwell Why was this rejected? It is a meaningful change that improves the usability of the code by not allowing developers to make a bad name that breaks the application.


Correct a couple clippy lints

Make from and to functions const
as mut *T -> ::cast<T>()
.offset(x as isize) -> .add(x)

Could you rebase this on top of the latest master please? P.S. your GPG key just expired, according to GitHub.

Just one more time, I had to push another commit to correct something I forgot to revert. sorry :P

Thanks!


Can't connect to kinox.to

When I try to start the, there is a dialog telling me "kinox.to antwortet nicht". The problem is, I can't get into the app itself to change the base URL because it disposes as soon as I click ok in the dialog.

This has been fixed in v1.5.5 and v1.6.0.


How can we help?
None
Please read and ensure the following

[X] The installer meets the above requirements

Please provide the following information
Download Page Url: https://github.com/algorandfoundation/algokit-cli/releases
Publisher: Algorand Foundation
Package Name: AlgoKit
Description: The Algorand AlgoKit CLI is the one-stop shop tool for developers building on the Algorand network.
Package Version: 2.2.2
Installer URL: https://github.com/algorandfoundation/algokit-cli/releases/download/v2.2.2/algokit-2.2.2-windows_x64-winget.msix

[!NOTE]
Should be closed as "completed", since #165113 is merged.

Sure is.


From the perspective of a React user, what is the goal of Wakuwork?

Thanks for all your wonderful work on State Management. It has been very refreshing.
I'm actually quite curious as to what the goal of Wakuwork is in terms of what the pros of using Wakuwork will be compared to Next.js?

From the perspective of a React user, the goal would be to provide:

a replacement for client-only vite/react app
RSC practice with client-first approach
opinionated RSC framework that is far thinner than Next.js
exploring client state integration: #11
router-agnostic React framework: https://twitter.com/dai_shi/status/1647132335694028800

Hope it helps.

While the points I made are still valid, this is a bit old and we have an updated and broader view.
Please see new README and our website. Free free to open a new discussion.


Mailer filetransportCallback with acceptance tests

I have a SignupCest where I test user signup. The signup process sends email for confirmation before activating user, so I also want to test email body and confirmation functionality. The problem is Yii::$app->mailer->fileTransportCallback is never called to return hardcoded message name. On the contrary everything works as expected in PasswordResetRequestFormTest from yii2-app-advanced.
I register the callback in Cest:
public function _before($event)
{
    Yii::$app->mailer->fileTransportCallback = function ($mailer, $message) {
        return 'testing_message.eml';
    };
}

I clearly see that message is sent (message is saved in runtime\mail), but with the generated name.

isn't Yii::$app recreated for each test? make sure the callback is really assigned. There is a unit test covering this for the base mailer implementation: https://github.com/yiisoft/yii2/blob/e0b0679f3a31753098e6de03e9a5fe9409c00719/tests/framework/mail/BaseMailerTest.php#L277-L279 On a quick look I could not find, why this should not apply to swiftmailer implementation.

Even if Yii::$app is recreated for each test, _before is run before each test, so callback must be really assigned (I checked with xdebug, the line with assigning callback is run with each test, but the callback isn't run at all, setting breakpoint in yii-swiftmailer I can confirm that callback is always null.
What's strange the same code works with unit tests. I have an impression that Yii::$app in tests and Yii::$app in application code are different objects for acceptance tests.

@cebe The test covering implementation is also unit test, so I guess it has something to do with acceptance tests. Though I couldn't find the reason how they are different in that sense.

If you establish the callback in the file test/codeception/config/config.php, inside the mailer, works as espected

+1


REST API

TODO

[x] "/v0"
[x] Double-check migration order; re-timestamp if necessary
[x] Move sites fields to configurations so they can be updated from API
[ ] #1008
[ ] #1240 -- it introduces possible race conditions for API requests
[ ] Proper test coverage
[ ] Final review
[ ] Version bump PR
[ ] REST API docs

Pull Request Test Coverage Report for Build b1616acf1407dfb500c3eb76878aea93b33abc44-PR-1155

8 of 8 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 66.648%

Totals

Change from base Build e99532232db59c56852a3abeecf82202f7902002:
0.1%

Covered Lines:
1213

Relevant Lines:
1820

💛  - Coveralls

@AndrewDryga This is ready for final review before going into master. Was dealing with some weird Docker issue where only a subset of my node_modules were being copied over. Removed the masked builddir hack from the docker-compose.yml file to alleviate.


remove undefined variable in heatmap_slicer + incorporate mpl-playback

and version bump
fixes: #161

Also started to use https://github.com/ianhi/mpl-playback

Also started to use https://github.com/ianhi/mpl-playback


Release v163

Adds the changelog entry for v163 that we can ship today.

@joshwlewis Do we need a https://devcenter.heroku.com/changelog entry for #489 + #411? :-)


Connections cannot be set for Notes in ERD

You can set Connection only between tables in ERD. It would be great to have a possibility to set Connection for Notes as well (connections note - table, note-note).

verified


Upstream IP's not updated

Summary
For some reasons Kong Ingress controller has stopped updating the upstream IP's when we for example deploy with kubectl patch. For new pods it doesn't even create the upstream it seems.
Kong Ingress controller version
0.9.0
Kong or Kong Enterprise version
2.5.0
Kubernetes version
 v1.17.5
Environment

Cloud provider or hardware configuration: Bare Metal with Rancher (v2.4.5)
OS (e.g. from /etc/os-release): Ubuntu 18.04
Kernel (e.g. uname -a): inux pre-production1 5.3.0-53-generic #47~18.04.1-Ubuntu SMP Thu May 7 13:10:50 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Install tools: Helm 3.x

What happened
Upstreams and upstream IP's are not created
Expected behavior
Upstream and upstream IP's should be created trough Kong Ingress
Steps To Reproduce
Apply kubectl patch with a newer docker image to an existing pod

Just a short heads up, I'm a co worker of @phlegx and we tried to further look into the problem (I'm not that experienced with kubernetes and kong-ingress-controller yet, so forgive me if I miss something obvious).
On deployment (CI) we execute following kubectl command:
11:18:11  + kubectl --kubeconfig /root/.kube/config_pre-production patch deployment --namespace bms bms-api --patch spec:
11:18:11   template:
11:18:11    spec:
11:18:11     containers:
11:18:11     - name: bms-api
11:18:11       image: registry.onlim.com/pre-production/bms/bms:v5.7.0-150-g65374d01d-284-release-5.8.0
11:18:12  deployment.apps/bms-api patched

We tried a few things to further hunt down the problem:

Scaling down Kong to 1 instance
Scaling down the services being deployed to 1 instance
Setting --v flag mentioned at https://github.com/Kong/kubernetes-ingress-controller/blob/master/docs/troubleshooting.md#debug

After the last point it seemed to be fixed (also removed the flag again and upscaled kong and related services) so seemingly recreating kong with its ingress-controller container fixed the situation for us. Unfortunately we can't provide further details on the specific problem we had.

Can you share the logs of Kong and Kong Ingress Controller from around the time when this issue happened?

We did check the logs with verbose, but couldn't find any suspicious output there. Unfortunately we don't have the log output anymore.
Lets close this issue for now. When it happens again, we will open it and provide you with the logs.
thanks!

We faced the same issue yesterday while deploying to production. Here are the kong ingress logs (without verbose flag) from our 4 kong instances https://gist.github.com/tak1n/e31e81d30dd2092baccf2e6716a915fa.
Note that the 4th kong instance crashed as docker on this specific server had some issues.
The deployment was started ~ 20:11

We keep facing this issue on a regular basis, today I was able to catch the logs while having kong ingress controller unning in verbose mode with --v=3.
Here are the logs https://gist.github.com/tak1n/11fcf6d5a90a5e4991c44f7e8244d361.
From what I can observe the Events are getting triggered properly, also the logs contain all the new IP's of the 3 new pods (as well as the old 3 one). What is weird from the pods in question is that they receive 1 or 2 request at the beginning (on fresh deployment) and then it stops (this would indicate that kong for a short point in time has the proper IPs assigned as upstreams?)
Here the log from one pod https://gist.github.com/tak1n/4e2af77c66c21c8a0f4281824f123796. Note the request at around 20:45 (which was when we deployed) and the next one after I fixed the IPs manually through Konga.

The error disappeared at least for now. We are not entirely sure what helped but either it was the deletion & recreation of kong or the unique constraint violation","fields":{"name":"example.com"} errors I fixed with deleting the SNI manually and let the ingress-controller recreate it.

We've encountered something that looks like this issue twice recently. It manifests as 499 responses sent by Kong to client requests. Closer investigation shows upstream service IPs not having been updated (e.g. after pods on a spot instance get terminated). We also noted a cessation of logs from the Ingress Controller, although it does seem to pass health checks. Killing the pod elected leader as Ingress Controller has worked around the issue when we've seen it. We have configured the increased logging (''-v=3"), will check back with logs when we encounter it again.

This issue happened less often now but didn't disappear entirely.
We are suspecting the kube-api / etcd to be the problem here.
How is this working internally?
I guess you are using watches on the kube-api.
Is it possible that a timeout here causes that problems?
Would the ingress-controller automatically reconnect if this connection is interrupted?

I experienced the same problem where the IPs associated with the upstream targets/endpoints were not updated. I noticed the following log messages from the ingress controller after the last successful handling of a request for the upstream service and before the first failed handling of a request for the upstream service.
I1009 12:00:14.211803       1 parser.go:1947] endpoints found: [{<IP_ADDRESS> 8080}]
E1009 12:00:14.744029       1 controller.go:128] unexpected failure updating Kong configuration:
loading configuration from kong: targets: 500 Internal Server Error {"message":"An unexpected error occurred"}
W1009 12:00:14.744051       1 queue.go:112] requeuing bench/janusapi, err loading configuration from kong: targets: 500 Internal Server Error {"message":"An unexpected error occurred"}
Not sure if the log messages above have anything to do with the problem of stale IPs for the upstream service.
Since the upstream IPs were stale, the upstream service couldn’t be reached, so the request failed resulting in a 499 response back to the client.
Killing the pod associated with the ingress controller leader resolved the issue.
The Kong app version is 2.0.4, and the ingress controller app version is 0.9.1.

@phlegx @tak1n, is the problem still prevalent?

@mflendrich This problem did occur 1 or 2 more times after last updating this issue. I haven't seen it happen in several months though. However, we haven't made any changes to remedy the issue either.

@mflendrich We are still having problems with this in our test environments.
We tried a couple of things like activating the admission controller but nothing helped.
Currently we are restarting kong or redeploying the service when updating upstream ips fails.

@mflendrich I'm working together with @l4nd0r and  @tak1n so as @l4nd0r already said, unfortunately it still happens to us sometimes.

@l4nd0r , @phlegx We were having frequent issues with upstream target IPs not being updated, forcing us to restart kong. In our case it was targets with weight=0 in postgres, created by kong 2.1. The way kong deletes target was changed on kong 2.2 and migration job left some old targets with weight=0 . See my comment on https://github.com/Kong/kubernetes-ingress-controller/issues/1025#issuecomment-803002692
Don't know if it is same thing here, but just to add some info.

@cpcostaneves Thanks :)
I checked our dbs and we had to delete a couple of weight=0 targets in every database.
We'll see if that solves the issue.

We are facing issue on this. Our kong APIs point to a remote domain which is backed by a CDN. And CDN's, by right, can change their IP address anytime without notice. And every time that happens, our kong API fails because kong continues to forward traffic to the previous IP of the CDN. We have to restart the kong pods to sort of refresh the DNS IP every time this happens.

Anyone affected, do you still see this in KIC 2.1?
We discovered a deck bug where it silently exited successfully if its context expired, even if it had not synced all objects. This was fixed in https://github.com/Kong/kubernetes-ingress-controller/issues/2031 and incorporated into KIC in https://github.com/Kong/kubernetes-ingress-controller/commit/a0f6eb48eed2f8f1d0b992adee61da70be902721
Note that the fix will only properly error out when this occurs: if you do see (new) errors on 2.1, you need to set –proxy-timeout-seconds to a higher value.
@syedrakib this issue only applies to the Endpoints of Kubernetes Services running in the cluster. External hostnames aren't updated at all: KIC places the external hostname as-is in the proxy configuration and allows DNS to provide the current IPs for that hostname, which expire based on the record's TTL. You'll want to check with your CDN provider--under normal circumstances they shouldn't be taking IPs out of service until they've updated records and allowed TTL to expire.

KIC 2.2 reappear

/reopen

KIC 2.2 reappear

Hi @ChongmingDu thanks for reporting. As per Travis' comment above:

https://github.com/Kong/kubernetes-ingress-controller/issues/773#issuecomment-1023739202

Is it the case that when you get the issue you now see a clear error about the issue? And if so, does increasing the --proxy-timeout-seconds work as was suggested?

Hi we are facing this issue in KIC 2.5 and Kong 2.8 on k8s 1.24.6.  Another thing we observed is the new pod IP does not get updated at all and the old target remains in the postgres DB, with weight as 100. We had to scale down the deployment, delete the data in postgres and restart the deployment. Noticed this for the past few days. This happens in newly deployed applications with new ingress resources only.


install_mdatp_dnf.yml 'enable repo' not working

To get the code in 'install_mdatp_dnf.yml' to work, I first had to swap "dnf" to "yum" on CentOS. I am not sure if the difference between dnf and yum caused an issue with the enablerepo value.
In the commands provided in the 'install_mdatp_dnf.yml' section, the enablerepo value is "packages-microsoft-com-prod-[channel]"
Using yum with this value, ansible fails to install mdatp.
Setting the value to "packages-microsoft-prod" did work.
I assume the suggested value should read "packages-microsoft-[channel]" instead, or additional clarification/yml examples may be useful for yum if they are distinct from dnf.

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

ID: c5b7c531-90a1-7f6b-4c1d-0a126cdea398
Version Independent ID: 5a10f1bb-6407-d706-0b79-bf448a8eda9d
Content: Deploy Microsoft Defender for Endpoint on Linux with Ansible
Content Source: microsoft-365/security/defender-endpoint/linux-install-with-ansible.md
Product: m365-security
Technology: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@blakebourgeois Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/6808
Once the author approves, the document will be live.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @blakebourgeois Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


is there a way to get wikidata ID of a play through the API?

Hi there!
Recently in our research we needed to check some wikidata info on FreDraCor and GerDraCor plays. For most of our analyses we used API via pydracor and it was working well. But in this case we did not find any way to get the wikidata ID's of plays through the API. So we resorted to cloning the repo and getting the data directly from the XML-s. Did we miss something?

Oh, it seems this is a well-spotted gap in our metadata delivery via our API. If I'm not missing something here (@cmil) and we do have a function somewhere that delivers Wikidata IDs, then I'd suggest to add a column/field to the metadata files (csv & json). Name of the column/field could be "wikidataId". The value could either be just the Q number or the full Wikidata URI that we provide in the TEIs.


Request: State management in Vue application

Large scale state management with vuex.

I personally would love to start learning more about state management with Vue.
Currently having a callback hell with EventBus for non parent-child component communication. Sadly haven't had enough time to learn more about Vuex.
Looking forward from hearing from awesome vue devs

Hi @znck
I would like to take this session on VueBLR#7


Support globals in the Sequencing EDSL

This should be done after https://github.com/NASA-AMMOS/aerie/issues/706 is complete, since #706 will flesh out the design as to how we will represent special values (i.e. locals, parameters) in the EDSL. Please see that issue first for a full explanation about what is going on here.
Users need to be able to specify global strings and output them as symbols in Seq JSON. Here is one proposal:
export default () =>
  Sequence.new({
    seqId: '',
    metadata: {},
    steps: [
      C.FSW_CMD_0({ arg0: globals.pressure  })
    ],
  });

The corresponding .seq.json:
{
  "id": "",
  "metadata": {},
  "steps": [
    {
      "args": [
        { "name": "arg0", "type": "symbol", "value": "pressure" },
      ],
      "stem": "FSW_CMD_0",
      "time": { "type": "COMMAND_COMPLETE" },
      "type": "command"
    }
  ]
}

Should globals be defined at the mission level similar to how metadata is defined at the mission level?


cant deploy to static web app

I wanted to combine this with the https://docs.microsoft.com/en-us/azure/communication-services/tutorials/building-app-start create a static web app but if i want to run it with npm run build:dev i does not work. What do i need to change to make this compatible? Static Web App did work but when i replaced the index.html with the new one and add the client.js it does not work anymore. Do i need to add the client.js to the app.js or something like this?

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

ID: 814e94a3-80a3-927b-b1ce-d4526435feb4
Version Independent ID: a304ea23-c2cf-5a31-5b37-74b92da342be
Content: Quickstart - Teams interop on Azure Communication Services - An Azure Communication Services quickstart
Content Source: articles/communication-services/quickstarts/voice-video-calling/get-started-teams-interop.md
Service: azure-communication-services
Sub-service: calling
GitHub Login: @chpalm
Microsoft Alias: chpalm

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

@strueder Thanks for asking question! Could you please share the exact repro steps/how the project is structured to help you better on this.

@strueder Since we didn't here back! We will close this out but if you feel you need more information please just let us know.


Work Package wp-ek.csv

I would like to work on this please!

I would like to work on this please!

Result for Phase 1:
wp-ek-results.csv

Results for phase 1:
Sri Athithya Kruth-Babu_HW2_results_wp-ek.csv

Manually pushing this into the next phase. Apparently, @sak1997 and @anshulp2912 both worked on this work package even though it was assigned to @sak1997 . The more the merrier... ;)
Whoever picks this up in the next phase might consider merging results possibly.

Results of Phase 2
wp-ek-results.csv

Results of Phase 2
wp-ek-results.csv


[Text Analytics] RequestFailedException makes AnalyzeSentimentResult.ErrorMessage obsolete

Might be addressed in #8864
In the case of a single input an input error results in a RequestFailedException so the AnalyzeSentimentResult.ErrorMessage is never actually used.
            var client = new TextAnalyticsClient(new Uri(endpoint), key);
            try
            {
                var response = client.AnalyzeSentiment("  I had the best day of my life. I wish you were there with me. ");
                if (response.Value.ErrorMessage != default)
                {
                    // This will never happen, because the RequestFailedException will be thrown
                }

                // Handle successful response
            }
            catch (RequestFailedException rfe)
            {
                Console.Error.WriteLine(rfe.ErrorCode);
            }

@annelo-msft

@assafi, that is correct.  ErrorMessage (which we'll be changing to a strongly typed error class) is still useful when it comes back in a batch result.  The exception in the case of a single result will still have all the information from the TextAnalyticsError type and inner errors.  So in your sample, you'd remove the block that checks the error code.

            if (response.Value.ErrorMessage != default)
            {
                // This will never happen, because the RequestFailedException will be thrown
            }

Is there a concern about this that I'm missing?

We implemented what @annelo-msft is mentioning in P2.
@assafi please let us know if there are still concerns in this area

Closing for now.
@assafi please re-open if there are concerns with our approach


Docs: Syncbot account (WIP)

Link to where Syncbot is found

This change is not necessarily to be included here (since it's a public repo), but there should be some docs where to find Syncbot. That's the correct info, right, btw? (when I tried setting things up, it took a while to find).
Or if better, can change this patch to a "How to find Syncbot in your Flowdock setup" instead of the hot linking.

@imrehg @sqweelygig @lekkas I'm of the opinion that anything that is general user information for how to use the service should be in resin-io/process somewhere (much like how to use VersionBot is in the Commit & PR guide).

agreed @hedss , resin-io/process is the place to add internal documentation on how to use syncbot cc @imrehg  @sqweelygig , so this issue should be closed and all relevant documentation transferred there

Added this task to the more general https://github.com/resin-io-modules/resin-procbots/issues/115


About calculating logdet

Hi, thanks for your paper, and I really enjoy it.
I found the code about calculating the logdet is different from that in the paper.
Specifically, the torch.log(radius) might be redundant in   https://github.com/oskopek/mvae/blob/master/mt/mvae/ops/hyperbolics.py#L63,
since log(R) is contained by torch.log(r).
Also, the logdet in sphere might have the same problem.
Could you please help me check the codes? Thanks a lot!

Hm.. now that you mention it, it seems you're right. Did you try running training with the -log(r) removed from code?
Apologies for the late reply.

Hm.. now that you mention it, it seems you're right. Did you try running training with the -log(r) removed from code?
Apologies for the late reply.

I just checked the implementation of the wrapped normal distribution and didn't conduct the experiments. Thanks for your help.

I've encountered an issue while training models with the CIFAR and Omniglot datasets. When using the MNIST dataset, everything works fine. However, with CIFAR and Omniglot, I get the following error:AttributeError: Can't pickle local object 'ToDefaultTensor.init..' Thanks a lot!


[AVM Module Issue]: Machine Learning Services Module should add the creation of 'Microsoft.KeyVault/vaults/accessPolicies'  and add access policy to key vault for machine learning service.

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Issue Type?
Feature Request
Module Name
avm/res/machine-learning-services/workspace
(Optional) Module Version
No response
Description
Please add the creation of 'Microsoft.KeyVault/vaults/accessPolicies'  and add access policy to key vault for machine learning service.
For example (azd):
https://github.com/Azure/azure-dev/blob/main/templates/common/infra/bicep/core/ai/project.bicep
CC: @jongio
(Optional) Correlation Id
No response

Question @zedy-wj, is there a technical reason why RBAC cannot be used? Wouldn't it make more sense to add a role assignment instead (even on the secret/key-level) as it can be considered a better practice? Aside from that, I guess nothing speaks per se against adding this, as long as it can be controlled via one or multiple parameters.

@AlexanderSehr - Thank you very much for your kind suggestion, but for now, all we have done is to restore the modules under infra/core in the azd tool as much as possible to ensure that there will be no problems when we migrate azd awesome templates to AVM in the future.
Back to your question, I think only when we really start to migrate templates to AVM, we can know whether using rbac can replace Key Vault + Access Policy, and what problems will arise.

@jongio - We noticed that you left a comment in the issue https://github.com/Azure/Azure-Verified-Modules/issues/1228#issuecomment-2316314260. Actually, for this feature, we only need to add it to the resource module or do a new ptn module. Either of the two implementations is enough. Which solution do you prefer at present?

@AlexanderSehr - Thank you very much for your kind suggestion, but for now, all we have done is to restore the modules under infra/core in the azd tool as much as possible to ensure that there will be no problems when we migrate azd awesome templates to AVM in the future.
Back to your question, I think only when we really start to migrate templates to AVM, we can know whether using rbac can replace Key Vault + Access Policy, and what problems will arise.

Fair enough. To be on the save side, we could certainly add an implementation like in Synapse Workspace or Disk-Encryption-Set module, that is, to support both:
https://github.com/Azure/bicep-registry-modules/blob/9864352023baf7c05fe605c6179233f4b71dac24/avm/res/compute/disk-encryption-set/main.bicep#L139-L151
Doesn't change the fact that I'd highly encourage the use of RBAC over Access Policies, but it would leave the choice to you :)

@jongio - We noticed that you left a comment in the issue Azure/Azure-Verified-Modules#1228 (comment). Actually, for this feature, we only need to add it to the resource module or do a new ptn module. Either of the two implementations is enough. Which solution do you prefer at present?

I presume with 'you' you meant anybody from the maintainers? At least I can't see any comment that I added personally 😄 In any case, if we're just talking about the role assignment, I'd subjectively see it more on the side of the pattern module - but - that's not an informed guess. For that I'd need more input from you. The question to fundamentally answer is whether the assignment of permissions on the KeyVault is something that is needed for most if not all instances of a ML Workspace deployment. In the module, I can see that the KeyVault ResourceId is a conditional parameter that is only needed if the workspace's kind has the value of 'Default', 'FeatureStore', or 'Hub'. That sounds pretty universal to me (which would speak to the implementation), but you & the module's owner @cecheta may be the better judges here.

@AlexanderSehr  - This is just my message to jongio as I saw him leave a message in ptn module proposal, please ignore it. 😄
Because in my opinion, ptn module and adding new features here, the purpose of both is the same, we just have to choose a way to do it.
Hopefully it didn't cause you too many misunderstandings.

@jongio - We noticed that you left a comment in the issue Azure/Azure-Verified-Modules#1228 (comment). Actually, for this feature, we only need to add it to the resource module or do a new ptn module. Either of the two implementations is enough. Which solution do you prefer at present?

I presume with 'you' you meant anybody from the maintainers? At least I can't see any comment that I added personally 😄 In any case, if we're just talking about the role assignment, I'd subjectively see it more on the side of the pattern module - but - that's not an informed guess. For that I'd need more input from you. The question to fundamentally answer is whether the assignment of permissions on the KeyVault is something that is needed for most if not all instances of a ML Workspace deployment. In the module, I can see that the KeyVault ResourceId is a conditional parameter that is only needed if the workspace's kind has the value of 'Default', 'FeatureStore', or 'Hub'. That sounds pretty universal to me (which would speak to the implementation), but you & the module's owner @cecheta may be the better judges here.

@AlexanderSehr - This is just my message to jongio as I saw him leave a message in ptn module proposal, please ignore it. 😄
Because in my opinion, ptn module and adding new features here, the purpose of both is the same, we just have to choose a way to do it.
Hopefully it didn't cause you too many misunderstandings.

ah my bad, sorry 😄 . Would anyways be keen to hear your thoughts :) and @jongio's, of course

Hello @zedy-wj,
I've just had a look at this now; considering that the key vault resource is created from outside of the avm/res/machine-learning-services/workspace module, would it not make more sense to create the access policies as a child resource of the key vault?

@jongio For machine learning services module, should we consider this issue as a missing feature issue#3028, or as a new pattern module issue#1228? We need to have a conclusion ASAP to close one of the issues. Otherwise, we can't move forward the repair progress of ptn. Please take a look at it when you have time. Thanks a lot.

Hello @zedy-wj,
I've just had a look at this now; considering that the key vault resource is created from outside of the avm/res/machine-learning-services/workspace module, would it not make more sense to create the access policies as a child resource of the key vault?

I guess with "child resource of the key vault" you meant a direct deployment using native Bicep code and the Microsoft.KeyVault/vaults/accessPolicies provider? 😉

Thanks to all the participants for your discussion. We will implement the relevant changes in the ptn module: https://github.com/Azure/Azure-Verified-Modules/issues/1228. Closed it.


Bring back "Back to Dashboard link"

Not sure if this was intentional but it looked kind of odd to me.
before:

after:

What's your browser and jenkins version?
It should look like this:

Have you made changes only in the color scheme?

Ahh... I see now. I was trying to bring back the breadcrumb bar and made changes to the header like so (to make the breadcrumb bar stack after the header):
#page-head {
  position: fixed;
  right: 0;
  left: 0;
  top: 0;
  z-index: 3;
  ...
}

#header {
  ...
  position: relative;
}

That would have messed it.
Yeah, I changed to the color to match the client's branding needs. I also figured a way to replace the Jenkins logo with the client's. Let me know if you are interested in the logo change. Will be happy to send a PR or just comment in here.
Testing on Chrome 47.0.2526.111 m, Jenkins 1.613

Ok, that is not a bug and the breadcrumbs problem is fixed, so I'm closing this one :smile:

How does it look with the Jenkins logo in place? Can you send a larger screenshot?

In that case Jenkins logo disappears and the arrow takes it's place. I did this in order to work like a default Material Design app.

Oh I see. I'm split now... A part of me wants to embrace this but then, another part of me wants the logo visible all the time, but that would probably look "not so good" next to the back icon :|

Yup, I know what you mean... I've tried both together and they were not ok :disappointed:

Let me see if I can find a good compromise.
Unrelated: Did you try running and connecting to the vagrant box? I can ssh to it but cannot connect to Jenkins on it. curl 'http://localhost:8080' on the box fails and not much connecting from outside http://<IP_ADDRESS>:8880 & http://localhost:8880 fails as well.

No I didn't. I used another theme as basis for this one and the vagrant file was there since the beginning.


Update README with recommended node version

Fixes #2038
The current readme states that Node 4.4.X is recommended for development
and yet all of the CI systems use Node 6.3.X, so I assume that the
README is out-of-date. Small PR to fix it.

Coverage remained the same at 92.084% when pulling 1593c17d37f10c92ad50658754c795c81a50550f on rattboi:fix-node-version-in-readme into 305ef60f139988a3cc1efb9f97116b717ad2a2b4 on MarshallOfSound:master.


mmseqs v 14-7e284 bioconda hangs indefinitely on search

Hi,
I have written a tool called pharokka (https://github.com/gbouras13/pharokka) that annotates bacteriophage genomes. Pharokka uses mmseqs2 to match predicted CDS to the PHROGs (https://phrogs.lmge.uca.fr), CARD and VFDB databases using mmseqs2 which follows the method at https://phrogs.lmge.uca.fr/READMORE.php. Mmseqs2 is amazingly fast especially for large input metaviromes, so it's a brilliant choice for this clustering - thanks for developing it!
I am coming across a problem with the new version released 10 days ago.
With v 13.4511,  the 3 mmseqs2 searches take approximately 5-10 minutes in total depending on input, architecture and threads used. However, since mmseqs2 v14-7e284 has been released, users of pharokka have reported that the mmseqs2 step hangs indefinitely (at least 20+ hours) when pharokka with  mmseqs2 v14-7e284 is installed with bioconda. I have replicated the issue on my machines also.
The relevant lines in pharokka are 358-369:
https://github.com/gbouras13/pharokka/blob/3b8f7ae207b367366765f482c9dce1dd2cccee80/bin/processes.py#L358
create target db
"mmseqs", "createdb", os.path.join(out_dir, amino_acid_fasta), os.path.join(target_db_dir, "target_seqs")
search
"mmseqs", "search", "-e", evalue ,os.path.join(phrog_db_dir, "phrogs_profile_db"), os.path.join(target_db_dir, "target_seqs"), os.path.join(mmseqs_dir, "results_mmseqs"), tmp_dir, "-s", "8.5", "--threads", threads
tsp output
"mmseqs", "createtsv", os.path.join(phrog_db_dir, "phrogs_profile_db"), os.path.join(target_db_dir, "target_seqs"), os.path.join(mmseqs_dir, "results_mmseqs"), os.path.join(out_dir,"mmseqs_results.tsv"), "--full-header", "--threads", threads
Lines 458-69 and 496-507 do the same method for the CARD and VFDB databases.
Expected Behavior
Command should take 5-10 minutes to run.
Current Behavior
Command hangs indefinitely. As you can see in the log file for  v14-7e284 the prefilter step took 36 minutes, then the prefiltering scores calculation hung for 20 hours until the program was killed.
I have attached 2 log files - one for each version of mmseqs2. The log files include all the mmseqs2 output written to stdout.
Steps to Reproduce (for bugs)
conda create -n pharokkaenv pharokka mmseqs2==14.7e284
conda activate pharokkaenv
install_databases.py -d
pharokka.py -i lambda.fasta -o lambda_out -t 8
Input file attached
MMseqs Output (for bugs)
Log files attached with "correct" output (13.4511) showing mmseqs2 run 3 times takes approximately 6 mins, vs 14.7e284 which takes 36 minutes to prefilter on the first step, then hangs (for 20 hours).
Context
Your Environment
I have tested this on MAC OSX (intel and M1) and also Linux ubuntu environments with bioconda installations. I get the same issue.
lambda.fasta.txt
pharokka_mmseqs2_13.45111.log
pharokka_mmseqs2_14_7e284.log
George

Hi George,
I think the issue is that the internal MMseqs2 profile format has changed, the phrogs database needs to be rebuilt with the newest MMseqs2 version. I think we can download the MSA and convert them directly to a profile database within the databases module.
How/where do you download the phrogs in phrokka?

Essentially something like this:
aria2c -x 16 https://phrogs.lmge.uca.fr/downloads_from_website/MSA_phrogs.tar.gz
mmseqs tar2db MSA_phrogs.tar.gz phrogs_msa --output-dbtype 11 --tar-include '.+\.fma$'
mmseqs msa2profile phrogs_msa phrogs_prof

Also, @ClovisG it would be great if you guys could take a look at updating the phrogs profiles.

Hi Milot,
Thanks for the rapid reply!
I download the mmseqs2 formatted database from this link https://phrogs.lmge.uca.fr/downloads_from_website/phrogs_mmseqs_db.tar.gz found on this site https://phrogs.lmge.uca.fr/READMORE.php
The MSAs and other formats are available at the bottom of this link https://phrogs.lmge.uca.fr (specifically https://phrogs.lmge.uca.fr/downloads_from_website/MSA_phrogs.tar.gz)
I'll absolutely give this a crack and let you know how I go.
George


AnnotatedPackages w/ com.google.common not working due to Preconditions.checkNotNull

I'm using Nullaway 0.9.0 using the Bazel build system. We have a small library that is using google guava and are trying to treat the Guava library as if it is correctly annotated with Nullable annotations. Our problem is that when we add com.google.common to our list of annotatedPackages, the build starts failing because it says that Preconditions.checkNotNull rejects a Nullable field.
The reason we're trying to do this in our real application is because we have some fields where a null value indicates a coding mistake and cannot easily restructure the code to avoid this pattern. Sample code:
BUILD.bazel
java_library(
    name = "mypackage",
    srcs = glob(
        ["*.java"],
    ),
    javacopts = [
        "-XepOpt:NullAway:AnnotatedPackages=com.mypackage,com.google.common",
    ],
    plugins = [
        "//third_party:nullaway",
    ],
    visibility = [
    ],
    deps = [
        "@third_party_jvm//3rdparty/jvm/com/google/code/findbugs:jsr305",
        "@third_party_jvm//3rdparty/jvm/com/google/guava",
    ],
)

com.mypackage.SomeClass
package com.mypackage;

import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import javax.annotation.Nullable;

public class SomeClass {

  public ImmutableList<String> someMethod(@Nullable String nullable) {
    return ImmutableList.of(Preconditions.checkNotNull(nullable));
  }
}

Expected:
My understanding is that this code should pass because Preconditions.checkNotNull is marked as a special method that accepts a nullable field, but ensures that the returned value is no-null because it fails if it is null. This is from reading the javadoc of the LibraryModels#failIfNullParameters interface (Note that description is actually on the nonNullParameters method). The code indicates that Preconditions is marked as FAIL_IF_NULL_PARAMETERS. This appears to be wired in as the default, and I believe that the documentation indicates that this should always take precedence:

Also, specific method annotations can always be overridden by explicit Library Models, which take precedence over both the optimistic defaults and any annotations in the code, whether marked as annotated or unannotated.

Actual behaviour:
From Building src/main/java/com/mypackage/libmypackage.jar (1 source file):
src/main/java/com/mypackage/SomeClass.java:10: warning: [NullAway] passing @Nullable parameter 'nullable' where @NonNull is required
    return ImmutableList.of(Preconditions.checkNotNull(nullable));
                                                       ^
    (see http://t.uber.com/nullaway )

Our workaround right now would be to include guava in the AnnotatedPackages classpath but treat Preconditions as an unannotated class
    javacopts = [
        "-XepOpt:NullAway:AnnotatedPackages=com.mypackage,com.google.common",
        "-XepOpt:NullAway:UnannotatedClasses=com.google.common.base.Preconditions",
    ],

This approach the build works as expected, however, from the documentation this doesn't appear to be the expected integration path. Is this a bug where the override behaviour is not working or am I misreading the documentation?

We ran through some extra tests just to see what would happen.
Test case 1: Do not include guava in the AnnotatedPackages classpath
java_library(
    name = "mypackage",
    srcs = glob(
        ["*.java"],
    ),
    javacopts = [
        "-XepOpt:NullAway:AnnotatedPackages=com.mypackage",
    ],
    plugins = [
        "//third_party:nullaway",
    ],
    visibility = [
    ],
    deps = [
        "@third_party_jvm//3rdparty/jvm/com/google/code/findbugs:jsr305",
        "@third_party_jvm//3rdparty/jvm/com/google/guava",
    ],
)

package com.mypackage;

import com.google.common.collect.ImmutableList;
import javax.annotation.Nullable;

public class SomeClass {

  public ImmutableList<String> someMethod(@Nullable String nullable) {
    return ImmutableList.of(nullable);
  }
}

As expected, errorprone did not error out and NullAway because it will not treat ImmutableList's argument as a nullable parameter.
Test case 2: Include guava in the AnnotatedPackages classpath but don't use Preconditions
java_library(
    name = "mypackage",
    srcs = glob(
        ["*.java"],
    ),
    javacopts = [
        "-XepOpt:NullAway:AnnotatedPackages=com.mypackage,com.google.base",
    ],
    plugins = [
        "//third_party:nullaway",
    ],
    visibility = [
    ],
    deps = [
        "@third_party_jvm//3rdparty/jvm/com/google/code/findbugs:jsr305",
        "@third_party_jvm//3rdparty/jvm/com/google/guava",
    ],
)

public class SomeClass {

  public ImmutableList<String> someMethod(@Nullable String nullable) {
    return ImmutableList.of(nullable);
  }
}

As expected, errorprone failed with the following message.
INFO: From Building src/main/java/com/mypackage/libmypackage.jar (1 source file):
src/main/java/com/mypackage/SomeClass.java:9: warning: [NullAway] passing @Nullable parameter 'nullable' where @NonNull is required
    return ImmutableList.of(nullable);
                            ^
    (see http://t.uber.com/nullaway )

Calling out that I also believe due to issue 47 that this should be supported.

I believe com.google.common.base.Preconditions.checkNotNull is already supported in open source NullAway too. @MatteoJoliveau If you can use that method, then that's the fastest workaround right now. If this does not work, please let me know.

At a quick glance, this looks like a bug to me.  @lazaroclapp any chance you have time to take a look?

This is an unfortunate consequence of #446 . Basically, since we are not allowing library models to affect annotated code anymore (due to the "inherited annotations" issue), after NullAway 0.9.0, marking com.google.common as annotated means "this is annotated according to NullAway, so skip third-party library models".
This is not exactly a bug, in the sense that, if Guava was truly first party here, the issue could be resolved by simply annotating:
  @CanIgnoreReturnValue
  public static <T extends @NonNull Object> T checkNotNull(@Nullable T reference) {
    if (reference == null) {
      throw new NullPointerException();
    }
    return reference;
  }

Optionally with an @Contract("null -> fail") annotation.
That said, the above is not terribly useful is Guava happens to be a binary library that is null annotated, and "mostly" NullAway compatible in how it's null annotated, but not 100% conformant with what NullAway expects and thus needing a few library models.
Note: I am not sure Guava really matches the above sentence, and we don't treat Guava as annotated at Uber (we do run with -XepOpt:NullAway:AcknowledgeRestrictiveAnnotations=true, which will pick some annotations from it, though). But, the general point is such a library is certainly possible.
The way I see it, there are three solutions:

Do nothing. AnnotatedPackages means "fully annotated for NullAway, in the source/bytecode" and thus library models are always ignored for packages listed there. That's probably the most elegant/principled solution, but needlessly restricts a use case that user might care about.
Distinguish between first-party and annotated. We have been treating those concepts as equivalent so far, but they aren't. If NullAway has a way to configure "this are the packages for which we have source" and "these are NullAway annotated third-party jars", then it becomes obvious that third-party models apply to the second, but not the first.
Special case inheritance in library models. So, models directly mentioning method m1(...) apply to m1 always, whether annotated or unannotated (i.e. first-party or not), but they only apply to m2 which overrides m1 if m2 is unannotated/third-party. This will do the right thing in most cases, but it's super hacky conceptually.

One thing that might drive our decision here, @rwinograd : is this a configuration you already had running correctly for NullAway 0.8.0? (before the change in #446) Or are you just trying to make Guava an annotated package for the first time?
I am somewhat surprised that the configuration would work, even if Guava has good nullability annotations, since the annotation convention is currently not the same followed by NullAway. There is work to standardize this stuff, but neither project is there yet.

The unexpected behaviour also exists in NullAway 0.8.0 and we are trying to make guava an annotated package for the first time.
If you're asking my opinion, 2 is the option I'd prefer as a user. I would be happy to make a distinction between "this is the target packages that I'm analyzing" and "these are the library packages that are annotated", which seems somewhat equivalent to your model above. Of course, that has all sorts of potentially weird impacts. For my typical situation, I'd be analyzing something in com.mypackage.x, and assuming that everything in com.mypackage.* is correct - perhaps a simple hierarchy is sufficient here where the "analyzing package" takes precedence over the "annotated package".

I am somewhat surprised that the configuration would work, even if Guava has good nullability annotations, since the annotation convention is currently not the same followed by NullAway.
Our package is obviously much more complex than the toy application I linked above. when we tried to add com.google.common, NullAway isn't producing any errors other than the Precondition cases. If that is giving us a false sense of security I'd love more details here so I can set my expectations accordingly.

It is a bit more complicated than just saying "this are the target packages that I'm analyzing", because - at least for us, in our monorepo - there is a difference between "this is not the current target I am building, but I can easily go and change the source if I want to" vs "this is a compiled, versioned, third-party jar that I am pretty sure is NullAway annotated but I don't control". But, yeah, on a basic level, we can create a different category for "not mine, but annotated".
For practical reasons, this will probably end up being -XepOpt:NullAway:ThirdPartyAnnotatedPackages or some such, since changing the meaning of AnnotatedPackages would be a pretty major breaking change.

Our package is obviously much more complex than the toy application I linked above. When we tried to add com.google.common, NullAway isn't producing any errors other than the Precondition cases. If that is giving us a false sense of security I'd love more details here so I can set my expectations accordingly.

That's interesting. My worry here wouldn't be that you get a false sense of security in the sense of missing potential NPEs. Anything marked as annotated is treated more strictly than the optimistic defaults for unannotated code. My worry here is that, because Guava is not exactly NullAway-annotated (even if it has nullability annotations), you'll be getting a number of false positives (like the one you are seeing in this issue but for things that don't have a library model) out of it.
Actually, just to check how much of the issue is the effect of #446 , could you try building both your toy example and your full codebase with NullAway 0.8.0? (Alternatively, just build a version of NullAway master that reverts the changes in that PR)

"this is not the current target I am building, but I can easily go and change the source if I want to" vs "this is a compiled, versioned, third-party jar that I am pretty sure is NullAway annotated but I don't control"

We have a mono repo also, and I'm not sure I see that distinction. From my perspective while I'm building com.mypackage.x and it depends on com.mypackage.y, there is no difference between com.mypackage.y and com.google.common - I want it to flag the place in com.mypackage.x that incorrectly passes nullable fields into those packages. The solution may be different, because in the case of issues calling com.mypackage.y I may be able to change the dependency, but (genuinely curious) does that change the analysis?
Good to know about the issue - I'll definitely take the noisy false positive with the idea that I should add some SuppressWarnings or file bugs against Guava versus a false sense of security. Can you go into more detail about this: "Guava is not exactly NullAway-annotated (even if it has nullability annotations)"?

Test case 1: Do not include guava in the AnnotatedPackages classpath

Test case 2: Include guava in the AnnotatedPackages classpath but don't use Preconditions
Test case 3: Include guava in the AnnotatedPackages classpath but strip out Preconditions
Test case 4: Include guava in the AnnotatedPackages classpath

Updated the comment, because by accident IntelliJ pulled in dagger Preconditions, which caused a false positive

@rwinograd can you comment on whether this issue is "fixed" as of NullAway 0.9.10?


Make php-cs-fixer show CS violations

Currently we are blind
https://github.com/PrinsFrank/sunsetrise/actions/runs/5615274341/job/15215206293

This may conflict with #2 :(


Validator 'compare' on same attribute

This doesn't seem to have any effect on Yii 2.0.6:
['age', 'compare', 'compareAttribute' => 'age', 'operator' => '>=', 'message'=>'You can't get any younger.'],

Currently, it is necessary to do it this way:
['age', 'compare', 'compareValue' => $this->age, 'operator' => '>=', 'message'=>'You can't get any younger.'],

Is this intended or should be fixed? I don't see a good reason why we wouldn't be able to just reference the same attribute using compareAttribute.

Test Case:
class TestModel extends \yii\base\Model
{
    public $age;

    public function rules()
    {
        return [
            ['age', 'compare', 'compareAttribute' => 'age', 'operator' => '>=', 'message' => 'You can\'t get any younger.'],
        ];
    }
}

//1.
$model = new TestModel;
$model->age = '12';

$model->validate();
var_dump($model->getErrors()); //empty array
//2
$model = new TestModel;
$model->age = 50;

$model->validate();
var_dump($model->getErrors()); //empty array

yii version is 2.0.6

Hello, I think the test case should include a model that is saved first, and then using the same model variable, try to update the age to a lower value.
$model = new TestModel;
$model->age = '50';
$model->save();
$model->age = '25';
$model->validate(); // should return false, but it doesn't.

This doesn't seem to have any effect

This can not work anyhow: at the validation stage 'age' attribute have a single value - from the user input.
For this use case you should create your own validator, which will compare attribute value with its origin value from oldAttributes.


Keras reports “ValueError: initial_value must have a shape specified:Tensor(”dense_4/MatMul:0“,shape=(?, 1),dtype=float32)” when customizing random AF

I am implementing a feed-forward neural network model with random activation function at the out layer which has only one neuron. The random activation function works as if the output of the last hidden layer is greater than a threshold, the output of the model will be 1, otherwise, the model output is zero.
I used the following code using "get_custom_objects" to customize the activation function, but it gives me an error that "ValueError: initial_value must have a shape specified: Tensor("dense_4/MatMul:0", shape=(?, 1), dtype=float32)"
class Rand(Activation):
     def __init__(self, activation, **kwargs):
        super(Rand, self).__init__(activation, **kwargs)
        self.__name__ = 'rand'

def rand(x):
    result = tf.Variable(tf.cond(tf.random.uniform(shape=[1])[0] > tf.Variable(x), 1, 0))
    return result

Tensorflow version: 1.14.0
I cannot upload a csv file dataset since it gives me " we do not support that file type"
the dataset file is 20 rows x 101 columns, as the last column is the label.
Here is the complete code:
from __future__ import print_function
from hyperopt import Trials, STATUS_OK, tpe
from hyperas import optim
from hyperas.distributions import choice, uniform
from keras.layers.core import Dense, Dropout, Activation
from keras.utils import np_utils
import pandas as pd
from imblearn.over_sampling import ADASYN
from imblearn.under_sampling import RandomUnderSampler
import numpy as np
from numpy import loadtxt
from keras.models import Sequential
from keras.layers import Dense, GRU
from keras import regularizers
from keras.layers import Activation
from keras.utils.generic_utils import get_custom_objects
from keras.utils.np_utils import to_categorical
import tensorflow as tf
from sklearn.model_selection import train_test_split
from sklearn import metrics
from sklearn.metrics import precision_score , recall_score
from sklearn.metrics import confusion_matrix
from keras.callbacks import Callback, LearningRateScheduler
import math
from keras.models import load_model
import csv
from keras.callbacks import EarlyStopping
from keras.callbacks import ModelCheckpoint
from keras.layers import Dense, Dropout, Flatten
from keras.layers import Conv2D, MaxPooling1D
from keras.layers.convolutional import Conv1D
from keras.optimizers import adam
from keras.callbacks import Callback, LearningRateScheduler
from keras import backend as K
#!pip install h5py

#Square activation function
class Rand(Activation):             # Take care of Rand and rand in the following few lines

    def __init__(self, activation, **kwargs):
        super(Rand, self).__init__(activation, **kwargs)
        self.__name__ = 'rand'

def rand(x):
    # r = np.random.uniform(low=0.0, high=1.0, size=None)
    # bool = tf.Variable(x<r)
    # result = init_bias = tf.Variable(init_bias,validate_shape=False)
    result = tf.Variable(tf.cond(tf.random.uniform(shape=[1])[0] > tf.Variable(x), 1, 0))
    print ("asdasdasdasD", result)
    return result
    # if x is not None:
        # print ("yes")
    # if x<r:
        # return int(0)
    # else:
        # return int(1)

get_custom_objects().update({'rand': Rand(rand)})

path_data_original = "/home/tntech.edu/miibrahem42/GAN_Paper/Defense/"

# load the data
def data():
    no_samples = 200000 #number of zero of one samples
    last_col_indx = 100
    data = pd.read_csv('Dataset.csv', sep=',', index_col=False, header=None)

    # # take n balanced samples
    # s0 = data[last_col_indx][data[last_col_indx].eq(0)].sample(no_samples).index
    # s1 = data[last_col_indx][data[last_col_indx].eq(1)].sample(no_samples).index
    # data = data.loc[s0.union(s1)]
    # # data = data.reindex(np.random.permutation(data.index))
    # data = data.sample(frac=1)
    # # print (len(list(data.to_numpy())[0]))
    # # print ((list(data.to_numpy())))

    X_res = data.iloc[:,:data.shape[1]-1].to_numpy() #400,000
    print ("total data shape: ",X_res.shape)
    Y_res = data.iloc[:,data.shape[1]-1]
    print ("total label shape: ",Y_res.shape)

    ada = RandomUnderSampler(ratio='majority',random_state=42)
    x_train, y_train = ada.fit_sample(X_res,Y_res) # over-sampled data
    print ("sum of resulted labels is: ", sum(y_train))

    xtr, x_valid, ytr, y_valid = train_test_split(x_train, y_train, test_size=0.3)

    xtr = xtr.reshape(-1,xtr.shape[1],1)
    x_valid = x_valid.reshape(-1,x_valid.shape[1],1)

    nb_classes = 2

    print ("Number of training samples is: ",xtr.shape[0])
    print ("Number of test samples is: ",x_valid.shape[0])

    # ytr = to_categorical(ytr, nb_classes)
    # y_valid = to_categorical(y_valid, nb_classes)

    print ("label has a shape of: ", y_valid.shape,ytr.shape)
    return xtr,ytr,x_valid,y_valid

lr = 0.0001

def scheduler(epoch):
  if epoch < 8:
    print (lr)
    return lr
  else:
    return lr * math.exp(0.1 * (4 - epoch))
learning_rte = LearningRateScheduler(scheduler)

class TestCallback(Callback):
    def __init__(self, test_data):
        self.test_data = test_data

    def on_epoch_end(self, epoch, logs={}):
        x, y = self.test_data
        # loss, acc = self.model.evaluate(x, y, verbose=1)
        # print('\nTesting loss: {}, acc: {}\n'.format(loss, acc*100))

xtr,ytr,x_valid,y_valid=data()

# input dimensions

# Train a RNN model without optimization

batch_size = 400
num_classes = 2
epochs = 1  #should be set

input_shape = (100,1)

print (xtr.shape)
print (x_valid.shape)

# the monitoring parameter should be the same on both earlystopping and modelcheckpoint in case of classification problems
stop_training = EarlyStopping( monitor='val_accuracy', mode='max', verbose=1, patience=15) #monitor='val_loss', mode='min'
best_model_save = ModelCheckpoint(path_data_original+'best_model_RNN_rand.h5',monitor='val_accuracy', mode='max', verbose=1
, save_best_only=True)

model = Sequential()
model.add(Conv1D(150, kernel_size=50, activation='relu', input_shape=(input_shape)))
model.add(MaxPooling1D(pool_size=4))
model.add(GRU(200))
model.add(Dropout(0.25))
# model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dense(35, activation='relu'))
model.add(Dropout(0.25))
model.add(Dense(1, activation='relu', use_bias=False))
model.add(Dense(1, activation='rand', use_bias=False))
print (model.summary())
# model.layers[8].trainable = False

# # weights_of_last_layer = list([np.array([[1 , 1 ],
       # # [0, 0]], dtype='float32'), np.array([0., 0.], dtype='float32')])

# weights_of_last_layer = list([np.array([[1] ,[ 0 ]], dtype='float32'), np.array([0.], dtype='float32')])

# model.layers[8].set_weights(weights_of_last_layer)

model.compile(loss='mean_squared_error', optimizer=adam(lr=lr), metrics=['accuracy'])  #categorical_crossentropy if binary classification
model.fit(xtr, ytr,
          batch_size=batch_size,
          epochs=epochs,
          verbose=1,
         validation_split=0.1, callbacks=[TestCallback((x_valid, y_valid)), best_model_save,
         stop_training, learning_rte])

please let me know if you need further info.
All I want to do is implementing an activation function that takes the output of the last hidden layer and then generating a random number, then compares this number with the output -> if it is greater, the output will be one, otherwise, it will be zero.

I guess it maybe caused by compute graph workstyle. In tensorflow 1.x, it only supports constant graph, you could upgrade tensorflow to 2.0 which supports dynamic graph.

@mohamed199215
We see that you are using old version of tensorflow 1.x  which is not actively supported, we recommend that you upgrade to 2.4 or later version and let us know if the issue still persists in newer versions .Please refer the migration guide.
Please open a new issue in case you face any errors with detail information, we will get you the right help .Hence moving this to closed status.Thanks!


Add Psr7 ServerRequest to \yii\web\Request and abstract Super Gloabls

Closes #10824
Needs tests.  So far I was able to run an application using:
use Zend\Diactoros\ServerRequestFactory;
...

$application = new yii\web\Application($config);
$serverRequest = ServerRequestFactory::fromGlobals();
$_SERVER = [];
$_GET = [];
$_POST = [];
$_COOKIE = [];
$_FILES = [];
$application->run($serverRequest);

How about providing default server request wrapper instead of doing check and fallback implementations here and there?

We would have to implement the entire psr7\http interface, or import Zends's, or wait for Guzzle's to be ready and import that.
yii\web\request already contains it's own version of message abstraction for Headers, Cookies, GET and POST. It would be a lot of double-work to implement psr7 for FastCGI and maintain backwards compatiblity.

I agree that having a default implementation would make \yii\web\Request a lot cleaner, though.  I'm working up a change set with just the bare minimum to support a PSR7 ServerRequest object.  That way we won't have to import a specific PSR7 implementation.  Should have another draft ready in a day or two.

Resolved by commit 722022f744dbac8b0ef930caf877efdf388898e5


Request: Shadows and labels text blurred outline

The problem is, when using screenshot as background it is random, and ~white text on bright background looks... uh
I suppose it won't be too difficult for input-field widget, but what about pango labels? Is it even possible?

it is

yeah i see, this OBS Plugin for example

Shadows on labels would be a fantastic addition especially if you could set the shadow colour too.
It would save me duplicating labels one for text and one fake shadows with a slight offset.

done in a4dc596cb8b4e2f65247bd5f884ab9dbae100f1d

I'm using updated hyprlock (git) and shadows are not working for me. But I'm on Ubuntu 23.10 and am only on Hyprland 0.24.1.

:skull:


QuantLib ready for review

@squideyes please swing by QuantLib repo and let me know what you think... I'd like to hear if my approach with pub-sub events between indicators make sense - and what do you see are weak spots - before I continue adding to the current pile of code.
There are few .NET interactive notebooks in /Docs folder - but documentation is far from complete.

Happy to hear you’re continuing on with your trading code.  I’m out and about today but I’ll be sure to give the code a look see tonight and then get back to you
Get Outlook for iOShttps://aka.ms/o0ukef

From: Miha Kralj @.>
Sent: Sunday, March 27, 2022 11:28:40 PM
To: squideyes/TechAnalysis @.>
Cc: Louis S. Berman @.>; Mention @.>
Subject: [squideyes/TechAnalysis] QuantLib ready for review (Issue #1)
@squideyeshttps://github.com/squideyes please swing by QuantLibhttps://github.com/mihakralj/QuantLib repo and let me know what you think... I'd like to hear if my approach with pub-sub events between indicators make sense - and what do you see are weak spots - before I continue adding to the current pile of code.
There are few .NET interactive notebooks in /Docs folder - but documentation is far from complete.
—
Reply to this email directly, view it on GitHubhttps://github.com/squideyes/TechAnalysis/issues/1, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABACOHCML5HW4HACLDRTEXTVCERORANCNFSM5RZZDVYA.
You are receiving this because you were mentioned.Message ID: @.***>


Autocomplition does not work for submodules

For top level modules, like hm, hw, the autocompletion works okay. But for submodules like hw.hv, hw.hg or hm.entities, the autocompletion is broken after the recent Pylance update.

Thank you @mstefuca  for your question we have observed it and we are working on resolving it.
Please, if you want to use our extension please downgrade Pylance to 2024.7.1 or lower version.
I will update when we resolve the issue.
Thank you!


merge package template from arlac77/npm-package-template

package.json

chore(scripts): update semantic-release@semantic-release from template
chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(devDependencies): update<EMAIL_ADDRESS>from template
chore(engines): update<EMAIL_ADDRESS>from template

.travis.yml

chore(travis): merge from template .travis.yml

Coverage remained the same at 96.97% when pulling 9ac753351f127418c00db8ec1aa6ec9970233fc7 on template-sync-1 into fc99a9cf28b5e3626e5822312c0b55aacae3cda2 on master.

Codecov Report

Merging #19 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #19   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           2      2
  Lines          27     27
=====================================
  Hits           27     27

Continue to review full report at Codecov.

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


[Event Request] Codeunit 99000854 "Inventory Profile Offsetting" - OnPlanItemNextStateMatchDatesOnAfterCalcNewSupplyDate

Describe the request
We want to calculate the NewSupplyDate with own business logic. Therefore we request to add the following event:
    local procedure PlanItemNextStateMatchDates(var DemandInvtProfile: Record "Inventory Profile"; var SupplyInvtProfile: Record "Inventory Profile"; var TempReminderInvtProfile: Record "Inventory Profile" temporary; var WeAreSureThatDatesMatch: Boolean; IsReorderPointPlanning: Boolean; var LastProjectedInventory: Decimal; var LatestBucketStartDate: Date; var ROPHasBeenCrossed: Boolean; var NewSupplyHasTakenOver: Boolean)
    var
        //...
    begin
        //...
        if FromLotAccumulationPeriodStartDate(LotAccumulationPeriodStartDate, DemandInvtProfile."Due Date") then begin
            NewSupplyDate := LotAccumulationPeriodStartDate;
            SupplyInvtProfile."Fixed Date" := NewSupplyDate;
        end else begin
            NewSupplyDate := SupplyInvtProfile."Due Date";
            LotAccumulationPeriodStartDate := 0D;
        end;
       //NEW
        OnPlanItemNextStateMatchDatesOnAfterCalcNewSupplyDate(NewSupplyDate, TempSKU, SupplyInvtProfile, LotAccumulationPeriodStartDate);
        //NEW
        DemandDueDate := DemandInvtProfile."Due Date";
        if TempSKU."Replenishment System" = TempSKU."Replenishment System"::Purchase then
            DemandDueDate := GetPrevAvailDateFromCompanyCalendar(DemandInvtProfile."Due Date");

    [IntegrationEvent(false, false)]
    local procedure OnPlanItemNextStateMatchDatesOnAfterCalcNewSupplyDate(var NewSupplyDate: Date; var TempStockkeepingUnit: Record "Stockkeeping Unit" temporary; var SupplyInvtProfile: Record "Inventory Profile"; LotAccumulationPeriodStartDate: Date)
    begin
    end;

Additional context
Allows you to change the NewSupplyDate with own business logic. Event is equivalent to the event in the PlanItemNextStateCreateSupply() procedure.
Internal work item: AB#555498

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 25808.


rest: missing import

Adds InvenioDepistREST as an import to init.py

Replaces an old endpoint in a template with a config key.

Signed-off-by: Sami Hiltunen<EMAIL_ADDRESS>

Coverage increased (+0.2%) to 53.623% when pulling f8726d5675f4bf3c6286aec1b67fffa53e8ec365 on SamiHiltunen:fixes into 08ceb66687f8b0ae99a67a9673e95486dde414a4 on inveniosoftware:master.


3.0.0-dev.15 version solving failed

Steps to Reproduce
Upgrade to the latest dev version 15 of Isar and associated packages.
Because every version of isar_flutter_libs depends on flutter from sdk which depends on meta 1.7.0, every version of isar_flutter_libs requires meta 1.7.0.
And because isar >=3.0.0-dev.15 depends on meta ^1.8.0, isar_flutter_libs is incompatible with isar >=3.0.0-dev.15.
So, because app_storage depends on both isar 3.0.0-dev.15 and isar_flutter_libs 3.0.0-dev.15, version solving failed.

Code sample
Sample of pubspec.yaml
name: app_storage
version: 1.0.0+1
publish_to: none

environment:
  sdk: ">=2.17.0 <3.0.0"

dependencies:
  isar: 3.0.0-dev.15
  isar_flutter_libs: 3.0.0-dev.15

dev_dependencies:
  build_runner: ^2.2.0
  isar_generator: 3.0.0-dev.15

Details

Flutter version: 3.0.5
Isar version: 3.0.0-dev.15

Great work on this package. I am currently in the process of migrating from Hive to Isar and am already excited about the possibilities.

[x] I searched for similar issues already
[x] I filled the details section with the exact device model and version
[x] I am able to provide a reproducible example

Thanks! Please use dependency_overrides until I can push a fix.

I haven't yet gotten around to updating the Flutter version in the projects after the Futter Vikings. I am currently testing it with Flutter 3.3.2 and it seems to work. The project is unfortunately still on version 3.0.5 and not yet migrated. I guess I'll have to take a look at it in the near future.
Thanks for the quick tip and so the solution is found.

Or just use dependency_overrides


Make TensorFlow build with wrapper-free MSVC CROSSTOOL

With the latest Bazel release (0.5.2), we can now build C++ code on Windows without the python wrapper scripts! This gives faster and more reliable build, but gcc flags in BUILD file won't be translated.
This change removes gcc flags(mostly warning flags) that will cause an error if passed to cl.exe.
The protobuf change is to get https://github.com/google/protobuf/commit/0b059a3d8a8f8aa40dde7bea55edca4ec5dfea66, not sure if there is a requirement to use release version of protobuf.
@gunan

jenkins, test this please

@jart WDYT?

Jenkins, test this please.

Hmm..  Looks like CI doesn't like my change on protobuf...

Generally it's fine to build with a non-released protobuf, but since it was reverted, seems fine to me.

@gunan Can you update Bazel to 0.5.2 on Windows slaves?

All machines should now be upgraded.

@gunan Great! http://ci.tensorflow.org/job/tf-master-win-bzl/1213/console is green again!


Editing the type of a bitfield in a struct doesn't cause the 'Save' button to enable

Describe the bug
When changing a bitfield's type within a struct, the 'Save' button doesn't enable, and the struct dialog will not prompt to save changes when closing, leading to loss of work. It's necessary to make some other change to enable to save button.
To Reproduce
Steps to reproduce the behavior:

Open a struct containing a bitfield
Edit the bitfield, and change its type

Expected behavior
The 'Save' button should enable, and the struct dialog should prompt to save changes when closed.
Environment (please complete the following information):

macOS 10.14.5
Java Version: openjdk 11.0.5 2019-10-15
Ghidra Version: 9.1

Fixed for 9.1.2


ARTEMIS-1248 Reduce garbage while Paging

@franz1981 if you were using a thread local on activeMQBuffer and unsafeByteBufWrapper I would agree with you on saving GC.
however... Page won't last much longer on a regular scenario. The Page will be served through PageCursorProviderImpl::getPageCache(); So.. this will be read basically only once... or if the cache on the PageCursorProviderImpl is beyond the limit, then the whole Page object would go away.
so, you won't ever read it twice if you get the opportunity of reusing the field you're trying to reuse. it will probably be from a different object at the time you get there.
So, I would say either use a ThreadLocal, or keep it the way it is.. since the Objects you are caching will be GCed from the released Page when the cache is full anyways.

@clebertsuconic yep agree on the read side: I've done it just for completeness, but the biggest gain (measured) is on the write path. I've changed the sequence of writing too to be only sequential in order to avoid cache misses.

@franz1981 I see.. you could still use a ThreadLocal there.. right?
also: Why don't you use a PooledBuffer on the write?

@clebertsuconic There is no need to use a ThreadLocal or a pooled buffer there because:

the method (write/read) is synchronized and it is safe to reuse the same ByteBuf wrapper between different threads (note: is only a wrapper on the ByteBuffer provided by the file factory)
the file factory already provides a (thread local) pooled direct ByteBuffer (on NIO)
In the old version the most of the garbage was already avoided due to the fileFactory ByteBuffer thread local pooling, but I've measured after multiple Page writes lots of minor GCs due to many short living ActiveMQBuffer instances. This change aims reduce that instances to be only 1 per Page: it is not optimal but is a big improvement.
With 100 bytes messages and a Page of 10 MB it avoids about 104856 instances of garbage.

I agree this makes sense to me. @franz1981 is there a before and after vm gc / profiling graphs showing the drop in object creation and like wise drop in garabage collections. Will be the easiest proof that this change is beneficial. (We expect it to be btw)

@michaelandrepearce @clebertsuconic
You're right: these are the results of a test writing 100 Pages of 10MB with messages of 100 bytes.
Just 2 notes:

I've used the Artemis JVM default settings: -XX:+PrintClassHistogram -XX:+UseG1GC -XX:+AggressiveOpts -XX:+UseFastAccessorMethods -Xms512M -Xmx2G.
With smaller HEAP the effect is even more pronounced.
I've forced a GC just at the beginning to have the HEAP clean.

Old version:

New version:

wdyt?

Looks really good. Test is quite short time wise, do you have an equiv for say a 30min to hour period.

@michaelandrepearce I can run it for that extended period of time, but consider that this one is an isolated test with only page writes, hence:

no Page reads are performed
no message is collected in the LivePageCache and in the StorageManager (for replication)
no networking/protocols mangement is polluting the heap with garbage

This is necessary to show the isolated impact of this little change: with the whole broker you'll risk to run out of disk space if no Page reads is involved.

I think it's worthwhile (agreed the short one shows the improvement in isolation)
But in general people run the brokers as long running concerns as such should be put in that light.

@franz1981 Page itself is short lived. it will create a new one every time we move to a different file. I was looking for a way to have the wrapper living beyond the existence of page, and to be ready for the next write on the next page.
I was wondering if the write operation should live on Page itself or on StorageManager BTW.
And also, I wasn't aware of the recent change at the FileFactory you recently made in May for the ThreadLocal Buffer.. I think we should use Pooled instead... it would be more appropriate I think.. but that's a different discussion.

@clebertsuconic Having only one instance would be optimal, but considering that is a simple wrapper with no byte[] or off-heap memory allocated into it, just avoiding 100K it's a good compromise IMHO.
About  the changes on the NIO file factory, I've already tried (and measured) a solution with the Netty pools before pushing that version, but I found it to not be a good solution in this case for several reasons:

it is slower if compared to the TLAB slution I've implemented (the pool is not shared across threads)
2, it grows the overall memory footprint and can be cause of leaks
it doesn't work nicely with "plain" ByteBuffers, forcing the use of ByteBuf (not a good idea for normal file API)

@michaelandrepearce Yes, agree...But in that case (probably) the thread pools executor services internal queues (+ capturing Runnables), the protocol handling + Netty will be the most important factories of garbage (from the GC point of view). Anyway I'll give  try just to find out the current state of it and how it could impact in that case...but I don't know if I've enough disk to perform a test of 30 minutes :P

@franz1981 did you run the whole testsuite on this?

@clebertsuconic not yet! I'll run it now if is free :+1:

@franz1981 I merged this by accident... will leave it be now :)
running the testsuite just to make sure it's ok


Export train-test split in raster/vector format

I want to classify an image using support vector machine algorithm. Then, I imported samples in raster format and applied train-test split to assign 70% for training and 30% for testing. I want to export the samples after being split to vector or raster format. Is it possible to perform such things?
Thanks for your help.

You can explore ArcPy module to import/export data in raster format in Python, if haven't already.

Closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!


Bulk deleting pivot records

What is the best way with this library to bulk remove pivot records?
Say I have Contact and Tag entities, which have a many-to-many relationship through Contact_Tag.
There is a job that deletes Contact_Tags for 1000+ contacts that I'm looking to optimize.
It looks a bit like this:
public void RemoveTag(int[] contactIds, ContactTags tag)
{
    using (var db = new AcmeDataContext())
    {
        var contacts = db.Contacts.Where(c => contactIds.Contains(c.Id));

        var deleteTagList = new List<ContactTag>();

        foreach (var contact in contacts)
        {
             // adds to deleteTagList based on extra C# logic
        }

        db.ContactTags
            .Where(ct => deleteTagList.Any(ctd => ctd.ContactId == ct.ContactId && ctd.TagId == ct.TagId))
            .DeleteFromQuery();
    }
}

This currently throws the following error:
-- Failed with error: Exception has been thrown by the target of an invocation.
-- Inner Exception: Unable to create a constant value of type 'Acme.Core.Domain.Contact.ContactTag'. Only primitive types or enumeration types are supported in this context.

I understand this is likely because this expression cannot be processed by linq-to-sql, but I'm stuck finding alternatives.
Is this something that's come up before?

Not sure if I fully understand the question.
In your example I don't see BulkDelete being used.
Anyway is should be something like:
var deleteList = db.ContactTags.Delete(deleteList);

Ah I'm sorry, I confused this library with https://entityframework-extensions.net/update-from-query.
I ultimately ended up going with a sproc so I could do
CREATE TYPE ContactTagsParams TABLE (ContactId int not null, TagId int not null);

CREATE PROCEDURE p_Contacts_RemoveTags
  @contactTags ContactTagsParams
AS
BEGIN
  DELETE FROM Contact_Tag
  WHERE (ContactId, TagId) in (select (ContactId, TagId) from @contactTags);
END

Besides BulkDelete, example being:
db.ContactTags.BulkDelete(deleteList);
library also has extension for BatchDelete, example:
context.ContactTags.Where(a => a.TagId = tagId).BatchDelete();
More Info in the ReadMe.


External Editor doesn't work (Under certain conditions)

Godot version
4.0.2
System information
Windows 10
Issue description
If you disable the built-in code editor in the "Editor Feature", the scripts stop opening in the external editor.
Just nothing happens when you click on the script.
This behavior is also present on version 3 of the engine as well as in version 4.
Steps to reproduce
Go to Editor->Manage Editor Features...
And disable Script Editor

Not forgetting to set up an external editor at the same time:

Try to open a double shout or other script way.

And nothing will happen.
If you turn the built-in Script Editor back on, everything works fine and scripts open in an external editor.
To be fair, tested only with vscode, but I think this behavior will be with all editors.
Minimal reproduction project
N/A

Duplicate of #74652?

Yes, a duplicate. Strange that I could not find this issue. But in any case, a reminder of the problem.

Comment on the previous issue and go ahead and close this

Done.


tetragon: Change uprobe spec

Currently we define uprobe with path/symbol path, which not
handy when you have more symbols from single path to probe.
Changing the spec so the uprobe is defined by path and array
of symbols, like:
 spec:
   uprobes:
   - path: /bin/bash
     symbols:
     - "_start"
     - "main"
       "builtin_help"

Hey, what was the motivation behind this? I guess it's a bit similar to what we do in kprobe with list, but also a bit different.

it matches the kernel interface where you register symbols for given path/binary
and also the common usecase is to register more symbols for binary, so the current
implementation is bit cumbersome because you always need to specify binary/path
for each symbol

Could you update the documentation on uprobe as well? :)

yep.. I was checking on that, but we did not add any so far,
so there was nothing to fix ;-) I'll add some paragraph

Hey, what was the motivation behind this? I guess it's a bit similar to what we do in kprobe with list, but also a bit different.

it matches the kernel interface where you register symbols for given path/binary and also the common usecase is to register more symbols for binary, so the current implementation is bit cumbersome because you always need to specify binary/path for each symbol

Could you update the documentation on uprobe as well? :)

yep.. I was checking on that, but we did not add any so far, so there was nothing to fix ;-) I'll add some paragraph

Cool thanks for the details. It was just added indeed, it's still very limited so it should be quick to update, https://tetragon.io/docs/concepts/tracing-policy/hooks/#uprobes.

Hey, replacing a required field in the CRD is a breaking change. Technically this should mean moving to v1alpha2 I believe. But at the very least it should be documented.
@olsajiri could you add a release note instructing users how to upgrade? It would be nice to update the examples too.


Data Preparation of ava dataset

May I ask when the Data Preparation of ava dataset can be completed? I tried to run the code but kept failing. Thank you.

Given the large disparity between the datasets, I had to open another repo specifically for AVA, please find it there: https://github.com/joslefaure/HIT_ava. If you have any issue regarding AVA, please open them from the other repo. Thanks


fix SC

Coverage decreased (-0.04%) to 63.779% when pulling 3a9da7688de0956d64708bf1dd8cb326d22f2b21 on achensetyawati:dev into 5d994c8be3358f37d5c28a253e7b77f5f633aad1 on danliris:dev.

Coverage decreased (-0.09%) to 63.731% when pulling 1e733ec9f63ebd03f4d3b8dc59a42603bf32d635 on achensetyawati:dev into 5d994c8be3358f37d5c28a253e7b77f5f633aad1 on danliris:dev.

Coverage decreased (-0.04%) to 63.731% when pulling 899d17fe540809ae193b3d0ea58eb26215f240a0 on achensetyawati:dev into 4eead0ac60ce029a7ad26663274fbdd15e3f4844 on danliris:dev.

Coverage decreased (-0.04%) to 63.737% when pulling 4c5f8c15dc408ddd9d7f2da43fa1f8bb573dd8bd on achensetyawati:dev into 4eead0ac60ce029a7ad26663274fbdd15e3f4844 on danliris:dev.


[Enhancement] Add FE profile CoordPrepareExec and CoordDeliverExec (#13661)

(cherry picked from commit 57712bd949de48de62cb2910f5f715b371e52d3c)
What type of PR is this：

[ ] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Problem Summary(Required) ：

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

run starrocks_fe_unittest


not work on MacOS, unavailable source names

hello, after :Codeium Auth, this plugin still doesn't work on macOS
OS: MacOS sonoma 14.1.1
CPU: intel x86
nvim: NVIM v0.9.4 Build type: Release LuaJIT 2.1.1700008891
When I execute :CmpStatus, output like this image

have you called require('codeium').setup{}?

of course

have you called require('codeium').setup{}?

of course

can confirm same behavior

I guess this is because codeium is not loaded yet. If you are using lazy as your package manager, add a line event="InsertEnter" to make sure lazy is loading codeium at appropriate time and see if it helps.

I guess this is because codeium is not loaded yet. If you are using lazy as your package manager, add a line event="InsertEnter" to make sure lazy is loading codeium at appropriate time and see if it helps.

I used Lazy.nvim, plugin config like this:
  {
      "Exafunction/codeium.nvim",
      event = "InsertEnter",
      config = function()
          require("codeium").setup({})
      end,
  }

this plugin still doesn't work on macOS

Maybe add its dependencies? This is how I did it:
{
  "Exafunction/codeium.nvim",
  event = "InsertEnter",
  dependencies = {
    "hrsh7th/nvim-cmp",
    "nvim-lua/plenary.nvim",
  },
  config = true,
}

I'd try BufRead or VeryLazy as the event. But if you run :Codeium and it doesn't say command not found, it should be available in cmp as well. Just make sure cmp setup is called before codeium setup

HI @consoleaf thank you for your explanations.
I've added required changes to cmp and it works again!!
Really appreciate.

@johnbunky could you share your changes. I've a similar issue.

@feekApp
Sure, sorry for delay reply.
You can find all my mac setup via the link
https://github.com/johnbunky/nvimTermuxJavaIDE/tree/mac-version
The changes are in
lua/completion.lua and lua/plug_packer.lua files
Happy coding)

@johnbunky thnx for sharing!

That doesn't work for me. However, after adding the setup code for codeium below nvim-cmp, it works!


Uncaught TypeError: Object(...) is not a function in Subscriptions

I'm getting an error on implementing Subscriptions:
Uncaught TypeError: Object(...) is not a function
from the line:
const networkInterfaceWithSubscriptions = addGraphQLSubscriptions(
  networkInterface,
  wsClient,
)

What did I do wrong? My main.js file will look like this:
import Vue from 'vue'
import App from './App'
import { ApolloClient, createNetworkInterface } from 'apollo-client'
import { SubscriptionClient, addGraphQLSubscriptions } from 'subscriptions-transport-ws'
import VueApollo from 'vue-apollo'
Vue.use(VueApollo);

// Create the network interface
const networkInterface = createNetworkInterface({
  uri: 'http://localhost:5000/graphql',
})

// Create the subscription websocket client
const wsClient = new SubscriptionClient('ws://localhost:5000/subscriptions', {
  reconnect: true,
})

// Extend the network interface with the subscription client
const networkInterfaceWithSubscriptions = addGraphQLSubscriptions(
  networkInterface,
  wsClient,
)

// Create the apollo client with the new network interface
const apolloClient = new ApolloClient({
  networkInterface: networkInterfaceWithSubscriptions,
  connectToDevTools: true,
})

const apolloProvider = new VueApollo({
  defaultClient: apolloClient,
})
new Vue({
  el: '#app',
  apolloProvider,
  template: '<App/>',
  components: {
    App
  }
})

If you want to use the old apollo 1.x syntax, you need to use subscriptions-transport-ws 0.8.x

@Akryum got it :)
Unable to use Apollo v2 because of this: https://github.com/Akryum/vue-apollo/issues/138

My solution when I have the error
import { gql } from "graphql-tag";

should be
import gql from "graphql-tag";


hello there ..I have installed keras-vis package and my pip version is 19.1.1 but when i write

[ ] Check that you are up-to-date with the master branch of keras-vis. You can update with:
pip install git+git://github.com/raghakot/keras-vis.git --upgrade --no-deps

[ ] If running on TensorFlow, check that you are up-to-date with the latest version. The installation instructions can be found here.

[ ] If running on Theano, check that you are up-to-date with the master branch of Theano. You can update with:
pip install git+git://github.com/Theano/Theano.git --upgrade --no-deps

[ ] Provide a link to a GitHub Gist of a Python script that can reproduce your issue (or just copy the script here if it is short).

I believe this issue and #195 are duplicates, so although I'll close this issue, please feel free to reopen it if I made a mistake.


Need documentation on integrating AI config file with SF config API

I am unable to figure out whether the applicationinsights.config should be placed in project root or in the PackageRoot\Config folder, as it should be when using Microsoft.Diagnostics.EventFlow.Outputs.ApplicationInsights
I need to load the content of applicationinsights.config on startup and set it as the default configuration for all TelemetryClient instances used in SF services.

I believe the answer to this is "does not matter--place the config file where AI SDK can find it" :-)
The simplest thing for an SF app is to load configuration explicitly from a well-known location, like SF AI output does it for example https://github.com/Azure/diagnostics-eventflow/blob/master/src/Microsoft.Diagnostics.EventFlow.Outputs.ApplicationInsights/ApplicationInsightsOutput.cs#L148
If you are using EventFlow, that known location is the root of some Fabric configuration package https://github.com/Azure/diagnostics-eventflow/blob/master/src/Microsoft.Diagnostics.EventFlow.ServiceFabric/ServiceFabricDiagnosticPipelineFactory.cs#L42 So with EventFlow you can put the AI SDK config in any configuration package and as long as you pass the right package name to pipeline factory, the config file will be found and loaded.
The telemetry module & initializer in this package really "don't care" about AI SDK configuration file location.

In my simple test, I could not get the default telemetry intializers and processors from MS.AI.WindowsServer nuget package to work when I was using the eventflow approach where the ai.config was located in PackageRoot/Config folder.
We are already using eventflow with AI as output, and I have been experimenting with adding the other AI nuget packages (WindowsServer, SnapshotCollector and ServiceFabric) to benefit from the build-in initializers and processors, but I felt like hitting a brick wall, but some of them worked after moving the ai.config to project root.

Please share the configuration that you are trying to enable (e.g. the "simple test" one) and I will see if there is a way to make it work--thx!

I am working on a simple setup, to repro this behaviour, but can't say when It'll be ready.


Create Documentation for the Editor and JSON

Create documentation for the editor, including instructions on how to use the new JSON interpreter.

Setup a basic site for documentation at: https://www.criticalflaw.ca/TF2HUD.Editor/ (the URL will need to be changed)
Commits: cb17175d3419728fa2c6088657960c4095bfcb1c, 496b3f213e0810143d2c4076ca7a5ec87618f0b9, 027cd09a7523f17e9a4edb5e527a3bd66183fb71, 223e9ead815e97934fb6894c07f6a29f07dfb69a, f1284543f3618bda9e001d19212759fd1d02c64c, 6ec8638ff1e6f3408a7cd63368fd1698d06bad6c
Documentation changes and additions should be made to: https://github.com/CriticalFlaw/TF2HUD.Editor/tree/master/docs
Also fixed the http://criticalflaw.github.io domain not enforcing HTTPS.


Fix on not fitting images in conversations list

it changes not fitting images:

to object-fit: cover;:


Multiple wireguard peers configs with the same public key causes wrong peer to be used/written to config

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[X] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[X] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
Enabling/disabling wireguard peers appears to enable/disable the wrong peer when the two peer configs overlap on public key.
Site A has multiple WAN connections, including; WAN and WAN-VDSL
Site B has 2 site-to-site wireguard peers configured for Site A named SiteA and SiteA-VDSL.
The primary difference is the Endpoint Address (although there could be other differences).
Regardless of which one peer is enabled, or both, only SiteA-VDSL shows in the Status tab under WireGuard.
To Reproduce
Steps to reproduce the behaviour:

Add two wireguard peers with the same public key
Enable any one, or both, peers
Observe that only one peer is ever shown in the status tab, regardless of which peers were enabled

Expected behavior
The relevant peers should be enabled/disabled as expected.
Describe alternatives you considered
If unsupported then Ideally the frontend would allow multiple peers to be added for the same public key, but only one peer for each public key can be enabled (assuming that is what the peers are identified by) - failing that then outright preventing duplicate public keys.
I would note it is useful to have multiple (inactive) configs that can be easily switched between.
Additional context
This was observed after upgrading from 24.1 to 24.7 - I am not sure if this was an issue before (it did not appear to be but I didn't check thoroughly)
Environment
Software version used and hardware type if relevant, e.g.:
OPNsense 24.7_9 (amd64).

It would appear that whilst disabling the peer from the Peers tab does not work; removing the undesired peer from the Instances view's Peers list does provide the expected behaviour - so this can be used as a work-around in the interim.

The key used to identify records is a combined set of interface (wgX + puplic-key)
https://github.com/opnsense/core/blob/9240c5a15cd3164cd745dbe4456fd0213f6eab0d/src/opnsense/mvc/app/controllers/OPNsense/Wireguard/Api/ServiceController.php#L94
If your about differs from what wg show has to offer on the console, there's something to look into, but I likely need some screenshots and data samples.

I haven't tried looking at the console output, but given wgX + public-key are the key then yes, it isn't sufficient to distinguish between multiple entries with the same key and therefore writes the wrong one to the config file.
I'll leave it up to you if this "working as intended" or if it could be improved, but it caught me out slightly.

not sure what you mean without output, but per interface a public key sounds rather unique indeed

I'm not sure how I managed it but I had 2 peers with the same public key (one was using a backup link - they had different endpoint addresses but pointed to the same host).
On trying to reproduce it appears the UI doesn't allow duplicate public keys; so I'm not sure how I managed that.
I had mistakenly thought you were supporting duplicate public keys and was therefore trying to improve how that was handled. I can now see that duplicate public keys are not supported.


Unable to download webpage: HTTP Error 403: Forbidden (caused by HTTPError());

youtube-dl -u user -p password -o "~/MyVideos/%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s" https://www.udemy.com/course/davinci-resolve-15-course/learn/
Maybe I am not providing a correct URL. Not sure

Try using cookies

Tons of duplicates: https://github.com/ytdl-org/youtube-dl/issues?q=is%3Aissue+is%3Aopen+udemy

Try using cookies

can you provide example of what that actually looks like

Read the Fine Manual.