Does not work on Windows

After fixing https://github.com/keonik/prisma-erd-generator/issues/1 manually, I still did not get a svg file. I could pinpoint it to https://github.com/keonik/prisma-erd-generator/blob/f5afa685e254494341c979c5e1ec9f608b709c3e/src/generate.ts#L167-L174 which does not work on Windows.
A bit of hacking in generate.js did not help, so I uncommented the line that deletes the temp file afterwards, and ran the following command manually: npx mmdc -i prisma/input.mmd -o C:\\Users\\Jan\\Documents\\throwaway\\repro8264\\prisma\\ERD.svg -t forest.
Maybe that can be turned into a cross platform solution to this problem.

Without digging into it, my guess is the file path I'm using isn't mapping to windows correctly. I built it only considering mac/linux. I can take this one. @janpio If you have some bandwidth I might need help validating it fixed the issue.

Yep, on Windows you can probably generally not just execute a path starting with . and with the path, but need to supply the cwd. Even then I am not sure if running the file in .bin is the right approach here in general - I do not have the experience with this to evaluate. I knew that using npx in the project root would work - but not sure if that is the correct approach here either. Maybe mmdc has a programmatic API... that should be cross platform most probably.

@janpio I've got a PR up for this but I went ahead and pushed to next on npm. Could you see if that works for you?

Hmmm, something weird is going on.
If I just run that version under @next nothing happens (Even when I fix #1 manually again).
But if I output the generated command with console.log(mermaidCliNodePath, '-i', inputMermaidFile, '-o', output, '-t', theme) and run that manually (C:\Users\Jan\Documents\throwaway\repro8264\node_modules\.bin\mmdc -i C:\Users\Jan\Documents\throwaway\repro8264\prisma\input.mmd -o C:\Users\Jan\Documents\throwaway\repro8264\prisma\ERD.svg -t forest), it works and created the file in the correct location!?
If I var spawn = child_process... and then output spawn I see this:
{
  error: Error: spawnSync C:\Users\Jan\Documents\throwaway\repro8264\node_modules\.bin\mmdc ENOENT
      at Object.spawnSync (internal/child_process.js:1067:20)
      at Object.spawnSync (child_process.js:602:24)
      at Object.exports.default [as onGenerate] (C:\Users\Jan\Documents\throwaway\repro8264\node_modules\prisma-erd-generator\dist\generate.js:128:35)
      at processTicksAndRejections (internal/process/task_queues.js:93:5)
      at async LineStream.<anonymous> (C:\Users\Jan\Documents\throwaway\repro8264\node_modules\@prisma\generator-helper\dist\generatorHandler.js:13:32) {
    errno: -4058,
    code: 'ENOENT',
    syscall: 'spawnSync C:\\Users\\Jan\\Documents\\throwaway\\repro8264\\node_modules\\.bin\\mmdc',
    path: 'C:\\Users\\Jan\\Documents\\throwaway\\repro8264\\node_modules\\.bin\\mmdc',
    spawnargs: [
      '-i',
      'C:\\Users\\Jan\\Documents\\throwaway\\repro8264\\prisma\\input.mmd',
      '-o',
      'C:\\Users\\Jan\\Documents\\throwaway\\repro8264\\prisma\\ERD.svg',
      '-t',
      'forest'
    ]
  },
  status: null,
  signal: null,
  output: null,
  pid: 0,
  stdout: null,
  stderr: null
}

Which does not make much sense as that is the exactly the path from above. Weird.

@janpio my next attempt will be to move away from the CLI and see if we can use the Mermaid API. I'm going to merge in what we've got because it's at least a step in the right direction.

@janpio Can you validate @next version is working for you on Windows? Issue #9 also has someone testing on Windows so hopefully one of you two can test it and get this closed

Seems I am to late to test this, but I can confirm 0.4.0 creates a valid .svg file on Windows 👍


c++ interface for extracting feature

hi
how i can extract feature by c++?
thanks

You should bind your own Symbols with the trained parameters to extracting the features.
As for c++ interface, you can also try this (which is usable, but not completed):
https://github.com/hjk41/MxNet.cpp

The inability to do such simple things with simple API is one of the key reasons why MXNet is the simplest, the most powerful but not the most popular DL framework. User friendliness has never been a top priority.

I wish someday this could be done as easily as the same thing is done in Caffe.
feature_extraction_net->Forward();
const boost::shared_ptr<Blob<Dtype> > feature_blob =
        feature_extraction_net->blob_by_name(feature_name);


Fix TODO in calls.cc

https://github.com/stripe/sorbet/blob/90d48471a0058bdbd6d199ed8bd4f9cd2fe82175/core/types/calls.cc#L43

Fixed.


feat: Enable read+write: Instantly

#1022  👈
main

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

Join @Cobalt0s and the rest of your teammates on  Graphite


CodecGuide.K-LiteCodecPackMega version 16.2.5

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[x] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Installed correctly on my VM
PS C:\Users\Esco> winget install -m M:\c\CodecGuide\K-LiteCodecPackMega\16.2.5\
Found K-Lite Codec Pack Mega [CodecGuide.K-LiteCodecPackMega]
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://files3.codecguide.com/K-Lite_Codec_Pack_1625_Mega.exe
  ██████████████████████████████  60.5 MB / 60.5 MB
Successfully verified installer hash
Starting package install...
Successfully installed


How to get title, and description of Subreddit you are not moderator of?

Hi, I'm trying to get the title and description of subreddits I'm not mod of but it seems that requires moderator permissions (for some reason). I'm currently using subreddit.getSettings() but I would be open to using any other methods that get me the data. Does anyone have any ideas of how I could do this?

I assume you figured it out by now, but shouldn't a simple r.getSubreddit(subredditname).name do the job? I think it's a simple property on the entity.


Envoy Proxy as Redis Proxy, how to authenticate?

Title: The password passed via Redis Client has to be passed as Bearer token to external authorisation service OPA. Is it possible? If yes, how?
Description:
We are using Envoy Proxy as Proxy for Redis. All the communication to Redis is via Envoy proxy.
When using 'redis-cli', we send the password with '-a' option. Is it possible send this as Bearer token to OPA (used for external authorisation) to be validated against an AD?

@yanavlasov you've been looking at this filter recently, any thoughts? @weisisea as CODEOWNER.


Unable to run with Expose a public root Pod. setting - Posting to /setup not implemented

Environment

Server version: 3.0 (commit 3b353affb1f0919fdcb66172364234eb59c2e3f6)
Node.js version: 17.3.0 (also tried 16.x)
npm version: 8.3.0

Description

Run server without any parameters
Visit the /setup link
Check the last option Expose a public root Pod.
Press complete

501 - NotImplementedHttpError: The condition has been fulfilled.

The logs do not show an error or other info, only that a post has been received.

Makes sense, because the default config already starts with a publicly exposed root pod, so it's trying to call an initializer that has already initialized.
We should fix it so this option is not visible on the setup in that case, or give a clearer error message.

The publicly exposed root pod is generated by an instance of ContainerInitializer, which writes a key rootInitialized to the setup storage upon successful completion. So we could read the value of this key to omit this specific setup option when rendering the template (while also providing a clearer error message, e.g. useful when setup is called via the API). However, this might not be the cleanest solution, as it relies on implementation details of the ContainerInitializer.
Alternatively, I could extend the Initializer interface with a function isInitialized(): boolean and use this to check if the root pod was already generated, but maybe @joachimvh can guide me towards a better approach? :relaxed:

This is a very minor issue so would not make architectural changes just to fix it. The setup component also lives a bit outside of the server and is already highly dependent on certain other parts (such as the registration component). Based on those 2 things I would go for the solution that reads out the value from the storage to know if the container was initialized.

Currently going through my branch where I'm updating to the newest version of Components.js. I just noticed that in that branch the configs are changed so setup has its own initializer instead of reusing the root one. That change was needed because of some import issues. That itself might already fix it (or introduce another issue) so better to hold off on this issue until the PR that updates the components.js version is merged.

Aye, more or less just completed a potential fix (fix/issue-1189), but it is not particularly pretty. I'll revise when that PR is merged.

Can confirm that after the changes in #1271 there no longer is an error (since setup uses a different initializer then), so a fix will no longer be needed.


IndexError in guess_episodes_rexps with a series called "Episodes"

Getting "IndexError: list index out of range" in guess_episodes_rexps
Full traceback: http://pastebin.com/C1GS2S8Y
Seems to happen with a series called "Episodes".
Example file name: episodes.s03e07.720p.hdtv.x264-2hd.mkv
Subliminal 02a36d9cad
Fresh install, no cache file.

Please test with latest guessit and report back if it's still not working.


This script errors out on the last line

New-AzDisk : Resource group 'rg_tools' could not be found.
ErrorCode: ResourceGroupNotFound
ErrorMessage: Resource group 'rg_tools' could not be found.
ErrorTarget:
StatusCode: 404
ReasonPhrase: Not Found
OperationID : 65d6edc3-da3d-41bf-9f8d-2b72cb278481
At line:17 char:1

New-AzDisk -Disk $diskConfig -DiskName $managedDiskName -ResourceGrou ...

  + CategoryInfo          : CloseError: (:) [New-AzDisk], ComputeCloudException
  + FullyQualifiedErrorId : Microsoft.Azure.Commands.Compute.Automation.NewAzureRmDisk

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

ID: e429552f-202b-40e1-d624-16bb7731c38f
Version Independent ID: abafe3ce-ff54-57d3-cc2c-0433774d2ff0
Content: Azure PowerShell Script Sample - Copy (move) managed disks to same or different subscription
Content Source: articles/virtual-machines/scripts/virtual-machines-windows-powershell-sample-copy-managed-disks-to-same-or-different-subscription.md
Service: virtual-machines-windows
GitHub Login: @ramankumarlive
Microsoft Alias: ramankum

Thanks for the question! We are currently investigating and will update you shortly.

Hi, I found out that the script works in CloudShell, but not in PowerShell.

Please check if you have the latest Azure CLI version installed in Azure powershell.
https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest

Hi, we were using PowerShell Core 6 when we got the error message.

You can check the Azure cli version by running the command: az --version

Hi, we were not using Azure cli. Not installed on the system. We used PowerShell Core 6 which gave an error and later Azure  CloudShell and there it worked.

Did you follow the prerequisite of installing the Azure PowerShell module using the instructions found in the Azure PowerShell guide
If not installed already, please try and let me know.

Yes we did. First we used "Azure PowerShell on your system" which gave us the error. Later we used "To run in your browser with Azure Cloud Shell" which was successful.

@sandereek do you happen to have multiple subscriptions?

Yes. I use many different subscriptions.

@sandereek Can you please check that the subscription you are using is the one where you have the resource group 'rg_tools'. In cloud shell, your set default subscription is automatically selected.
Make sure that you set the correct subscription context first after login to Azure via PowerShell, using the command:
Set-AzureRmContext -SubscriptionId "25ec5bae---****-***********"
Reference:
https://blogs.msdn.microsoft.com/benjaminperkins/2017/08/02/how-to-set-azure-powershell-to-a-specific-azure-subscription/
https://docs.microsoft.com/en-us/powershell/module/azurerm.profile/set-azurermcontext?view=azurermps-6.13.0

@Karishma-Tiwari-MSFT, thanks. That indeed does the trick. Maybe update the example script with this statement as well?

@sandereek Glad to hear that your issue is resolved.
Here is the document which covers this information.
https://docs.microsoft.com/en-us/powershell/azure/manage-subscriptions-azureps?view=azps-2.5.0
We appreciate your feedback and will update this specific doc if we get similar feedback from users. Thanks :)


Add support for optional chaining

This PR adds support for optional chaining.

Sorry for the super late response here, I had deprioritized adding new language features to Fuzzilli (as you have probably guessed :)). If you'd still like to merge this PR, I'd suggest the following changes:

(mostly cosmetic): maybe change the isOptional boolean to a mode enum ("throwing", "nonThrowing" or so?) or something like that? So that it's more clear that this is about returning undefined vs. throwing an exception (IIUC). In the program builder etc. we should default to the throwing mode
don't let CodeGenerators randomly generate operations with the optional mode. Instead only do that for example when type(of: object).MayBe(.null | .undefined) or something like that (i.e. when we know that a non-optional operation may throw at runtime) or for example also if a method may not exist (where we currently use try-catch instead, but this would be nicer)
don't mutate the optional/non-optional mode in the OperationMutator since that's probably not very useful
instead, let the SimplifyingMutator attempt to turn optional operations into non-optional ones (since there's a good chance that the operation is valid if it is important)

I've made the modifications I've suggested above and submitted it as https://github.com/googleprojectzero/fuzzilli/commit/39d268b4a6e7ca11162339726f2e2ddf8df549cd so I'm closing this now. Thanks for the PR!


SAK-31577 allow navigation bar customisation

It's an Oxford contribution, we adapted it to morpheus. Guess they just want to be able to customise one, X or all sites without having to get down to the code. So admins of each site can easily do it with just a few clicks. The top bar is not modified. See http://blogs.it.ox.ac.uk/adamweblearn/2014/11/customisable-branding-of-sites/ (although it has changed a bit due to the breadcrumbs/hierarchy).

I see your point, @bgarciaentornos but, finally, we have achieved to separate style from html itself. I know morpheus is a long road goal and it can be improved in so many ways but I can't see benefits, on 2016, of modifying HTML and not the CSS.
Sorry, this PR adds excessive ravel to the velocity instead adding functionality to morpheus.

Would a better way of implementing it be to have some code that dynamically generated the CSS when the properties were set and this dynamically generated CSS was included after the standard CSS thereby overriding the styles specified in the skin?

The strong point on this functionality is to allow site admins to customise their sites easily. Not sure if that can be done in a different way but what I mean is that "dynamically generated CSS" has to use and take the different site properties. Otherwise the functionality doesn't make sense at all, like they say you can always create many skins.

Another easy/fast solution to this is add this property in sakai.properties:
portal.include.extrahead=<style>.Mrphs-siteHierarchy { background-color: ...your colour... !important;  }</style>

That's far from the objective of this functionality. Properties have to be defined on each site, plus the way Oxford uses them, they can override the site title, add images and more.
I'll let Matthew and Adam discuss about the possibilities, maybe they keep on using it but don't contribute it as the community won't find it useful.

Yeah I think this the start of a a good idea it really should have

Closing because this implementation is not ideal. Possible ways of doing this would be to have the following components:

dynamic css
a ui to manage css changes


error writing to a directory, the hs no longer synchronizes with the blockhain.

Since July 24, I have encountered a problem on one of my HS. He can no longer synchronize with blochain. Looking at the network traffic we observe TCP RST packets sent every 2 mins on communications with the blockchain.
19:40:41.318513 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57740: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:25.450593 IP <IP_ADDRESS>.44237 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:38.092816 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.36995: Flags [R], seq 3643933, win 0, length 0
19:41:38.099914 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.36995: Flags [R], seq 3643933, win 0, length 0
19:41:38.100178 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.36995: Flags [R], seq 3643933, win 0, length 0
19:41:38.100416 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.36995: Flags [R], seq 3643933, win 0, length 0
19:41:38.172395 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.36995: Flags [R], seq 3643933, win 0, length 0
19:41:40.171250 IP <IP_ADDRESS>.36955 > <IP_ADDRESS>.443: Flags [R], seq 212355067, win 0, length 0
19:41:40.171775 IP <IP_ADDRESS>.36955 > <IP_ADDRESS>.443: Flags [R], seq 212355067, win 0, length 0
19:41:45.972294 IP <IP_ADDRESS>.57756 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:45.972348 IP <IP_ADDRESS>.57756 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:46.131787 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57756: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:46.211746 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57756: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:49.202580 IP <IP_ADDRESS>.57760 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:49.202886 IP <IP_ADDRESS>.57760 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:41:49.394012 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57760: Flags [R], seq 463090684, win 0, length 0
19:41:49.394298 IP <IP_ADDRESS>.57756 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:05.531987 IP <IP_ADDRESS>.2154 > <IP_ADDRESS>.44657: Flags [R.], seq 0, ack<PHONE_NUMBER>, win 0, length 0
19:42:34.687733 IP <IP_ADDRESS>.35025 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:47.005100 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.1024: Flags [R.], seq<PHONE_NUMBER>, ack 137463222, win 504, options [nop,nop,TS val<PHONE_NUMBER> ecr 996753294], length 0
19:42:47.288961 IP <IP_ADDRESS>.45473 > <IP_ADDRESS>.443: Flags [R], seq 262027931, win 0, length 0
19:42:47.289657 IP <IP_ADDRESS>.45473 > <IP_ADDRESS>.443: Flags [R], seq 262027931, win 0, length 0
19:42:50.593900 IP <IP_ADDRESS>.34008 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:50.594064 IP <IP_ADDRESS>.34008 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:53.048972 IP <IP_ADDRESS>.56956 > <IP_ADDRESS>.443: Flags [R], seq 571888323, win 0, length 0
19:42:53.049026 IP <IP_ADDRESS>.56956 > <IP_ADDRESS>.443: Flags [R], seq 571888323, win 0, length 0
19:42:53.209200 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56956: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:53.289189 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56956: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:55.889183 IP <IP_ADDRESS>.50338 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:55.889236 IP <IP_ADDRESS>.50338 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:56.168666 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.50338: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:42:56.168948 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.50338: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:43:39.044871 IP <IP_ADDRESS>.55970 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:43:39.046499 IP <IP_ADDRESS>.55970 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:43:58.287642 IP <IP_ADDRESS>.47257 > <IP_ADDRESS>.443: Flags [R], seq 865035366, win 0, length 0
19:43:58.287886 IP <IP_ADDRESS>.47257 > <IP_ADDRESS>.443: Flags [R], seq 865035366, win 0, length 0
19:43:59.006173 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:02.631081 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.50338: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:02.631245 IP <IP_ADDRESS>.57794 > <IP_ADDRESS>.443: Flags [R], seq 505188380, win 0, length 0
19:44:02.796572 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57794: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:02.870484 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.57794: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:05.974033 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56978: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:05.974324 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56978: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:21.285924 IP <IP_ADDRESS>.2154 > <IP_ADDRESS>.32993: Flags [R.], seq 0, ack<PHONE_NUMBER>, win 0, length 0
19:44:47.201957 IP <IP_ADDRESS>.43291 > <IP_ADDRESS>.44158: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:44:57.843679 IP <IP_ADDRESS>.2154 > <IP_ADDRESS>.34207: Flags [R.], seq<PHONE_NUMBER>, ack<PHONE_NUMBER>, win 481, options [nop,nop,TS val<PHONE_NUMBER> ecr 191775594], length 0
19:45:04.563267 IP <IP_ADDRESS>.2154 > <IP_ADDRESS>.44158: Flags [R.], seq 0, ack<PHONE_NUMBER>, win 0, length 0
19:45:10.610853 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.2154: Flags [R.], seq<PHONE_NUMBER>, ack<PHONE_NUMBER>, win 501, options [nop,nop,TS val 699544723 ecr<PHONE_NUMBER>], length 0
19:45:10.644493 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.2154: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:10.804476 IP <IP_ADDRESS>.35863 > <IP_ADDRESS>.443: Flags [R], seq 463809976, win 0, length 0
19:45:10.804530 IP <IP_ADDRESS>.35863 > <IP_ADDRESS>.443: Flags [R], seq 463809976, win 0, length 0
19:45:14.403512 IP <IP_ADDRESS>.34046 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:14.403566 IP <IP_ADDRESS>.34046 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:16.727262 IP <IP_ADDRESS>.50370 > <IP_ADDRESS>.443: Flags [R.], seq<PHONE_NUMBER>, ack<PHONE_NUMBER>, win 501, options [nop,nop,TS val 61455809 ecr<PHONE_NUMBER>], length 0
19:45:16.882671 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.50370: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:16.962614 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.50370: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:20.003068 IP <IP_ADDRESS>.56998 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:20.003226 IP <IP_ADDRESS>.56998 > <IP_ADDRESS>.443: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:20.162507 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56998: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:20.246766 IP <IP_ADDRESS>.443 > <IP_ADDRESS>.56998: Flags [R], seq<PHONE_NUMBER>, win 0, length 0
19:45:21.924337 IP <IP_ADDRESS>.44158 > <IP_ADDRESS>.44158: Flags [R.], seq 0, ack<PHONE_NUMBER>, win 0, length 0
19:45:35.722503 IP <IP_ADDRESS>.2154 > <IP_ADDRESS>.43177: Flags [R.], seq 0, ack<PHONE_NUMBER>, win 0, length 0
Following this observation I obtained the logs from my HS to try to correlate the reset packets and the logs.
We observe in the logs a helium-miner process which is restarted every 2 minutes because there is a problem accessing the file "/var/data/blockchain_swarm/cache.dets".
Extracts from the log:
04.08.21 13:38:54 (+0200)  Connecting to helium-assets.nebra.com (<IP_ADDRESS>:443)
04.08.21 13:38:54 (+0200) Restarting service 'helium-miner sha256:ce3db3373450d1317bc1d43025cba0dc60424d818de866172a145e2323297f38'
04.08.21 13:38:55 (+0200)  saving to '/opt/miner/releases/0.1.0/sys.config'
04.08.21 13:38:55 (+0200)
sys.config           100% |********************************|   657  0:00:00 ETA
04.08.21 13:38:55 (+0200)  '/opt/miner/releases/0.1.0/sys.config' saved
04.08.21 13:39:04 (+0200)  Exec: /usr/local/lib/erlang/erts-10.7.1/bin/erlexec -noinput +Bd -boot /opt/miner/releases/0.1.0/start -mode embedded -boot_var SYSTEM_LIB_DIR /usr/local/lib/erlang/lib -config /opt/miner/releases/0.1.0/sys.config -args_file /opt/miner/releases/0.1.0/vm.args -- foreground
04.08.21 13:39:04 (+0200)  Root: /opt/miner
04.08.21 13:39:04 (+0200)  /opt/miner
04.08.21 13:39:14 (+0200)  dets: file "/var/data/blockchain_swarm/cache.dets" not properly closed, repairing ...
04.08.21 13:40:09 (+0200)  Killed
I shared this log with a helium developer who advises to delete the blockchain_swarm directory. This directory will be rebuilt when the helium reminer service is launched.
There may be a problem with the flash memory.
I sent the workaround via the support but it's been 3 days that I wait for the manipulation to be done on my HS.
Can you generalize a detection of this type of error message and act with the erasure of the directory?

Ping @robputt here as you are likely interested in this.

This is a known issue, however it should have been fixed in a recent update by helium.
https://github.com/helium/miner/issues/792
https://engineering.helium.com/2021/07/13/blockchain-release-snapshot-fixes.html
What firmware version does your hotspot say it is running on the local diagnostics page?
Have you got a ticket number as well for the email support ticket?

Hello, I just watched the helium fix
The fix does not work on my HS, maybe the error message returned by the HS is not taken into account by the fix.
You can look in the logs of my HS by filtering on , every 2 minutes it is sent  dets: file "/var/data/blockchain_swarm/cache.dets" not properly closed, repairing ...
The hotspot at version 2<IP_ADDRESS>, the ticket number is ID # 257143.
The HS has been in the same condition for 14 days.
Thank you

https://pisupply.freshdesk.com/a/tickets/257143

What's new under the sun ? the ticket has been open for more than 10 days
without progress on the resolution. The problem is clearly identified, and
the helium update mentioned above does not work for this use case.
Thanks
Le sam. 7 août 2021 à 16:20, Aaron Shaw @.***> a écrit :

https://pisupply.freshdesk.com/a/tickets/257143
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NebraLtd/helium-miner-software/issues/106#issuecomment-894660971,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADT7RPYCTKRVPR6FVWDP3ELT3U6JJANCNFSM5BVYJUCA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

I am looking at it now. But it helps to put our ticket link here for reference. It helps us to keep the context for all discussions :-)
I'm just doing a factory reset on the device. Hopefully that should fix it but I'll let you know 👍

OK, thanks. To be continued
Le sam. 7 août 2021 à 16:32, Aaron Shaw @.***> a écrit :

I am looking at it now. But it helps to put our ticket link here for
reference. It helps us to keep the context for all discussions :-)
I'm just doing a factory reset on the device. Hopefully that should fix it
but I'll let you know 👍
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/NebraLtd/helium-miner-software/issues/106#issuecomment-894662339,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADT7RP62TXP26BQVPQXHOXTT3U7YRANCNFSM5BVYJUCA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.

it looks like it is syncing ok now, but i will keep an eye on it until it is synced, may take a few hours :-)

Looks all good now https://explorer.helium.com/hotspots/11RRgLVeh7eigMp8wurCn4pCjfxhfk5iFz4CioP3MuYfmCapbv8/activity

Can you please add some kind of Factory reset without waiting Nebra to do it and waiting for days/weeks ?
Thank you


Token substitution with aggregates

Hi all, I try to use aggregates with token and works.
But in aggregates view in uchiwa and in api GET too, the custom attribute appeared.
curl -s -X GET http://localhost:4567/aggregates
[...{"name":":::cluster:::"},{"name":"healthcheck"}...]
Expected Behavior
Creates aggregates with some names, like webserver and :::custom_attribute:::, and in aggregates GET, see webserver and a lot of new aggregates from custom_attribute (like linux, application but from sensu clients).
Current Behavior
This works, but in aggregates api GET show the custom attribute not the substitute from custom attribute.
Possible Solution
Steps to Reproduce (for bugs)

Create a check with aggregates like "[":::cluster:::","healthcheck"]"

{
  "checks": {
    "healthcheck": {
      "command": "check-http-json.rb -u :::url_healthcheck::: -q :::query:::",
      "subscribers": [
        "healthcheck"
      ],
      "aggregates": [
        ":::cluster:::",
        "healthcheck"
      ],
      "handlers": [
        "default"
      ]
    }
  }
}

List api aggregates: curl -s -X GET http://localhost:4567/aggregates

Context
Tried to organize my aggregates with custom attribute in sensu client.
Your Environment

Sensu version used: 0.28.2
Active Sensu extensions (e.g. WizardVan 0.1.0): -
Operating System and version (e.g. Ubuntu 14.04): CentOS 7
Transport and runtime versions (e.g. RabbitMQ 3.6.2 on Erlang 18.2): -

@betorvs what version of Sensu is/are the clients? I wonder if they are just not substituting because they are too old.

@portertech all clients are 0.28.2.

@betorvs I followed your steps to reproduce, but it successfully creates a named aggregate for the client cluster name. I wonder if it is Uchiwa.

Ah, you've already confirmed that it's not.

@portertech The sensu creates 3 aggregates: linux from cluster attribute, healthcheck from check, and ":::cluster:::".
How to I delete this aggregate ":::cluster:::"?
# cat /etc/sensu/conf.d/client.json
{
  "client": {
    "address": "<IP_ADDRESS>",
    "subscriptions": [
      "linux",
      "healthcheck"
    ],
    "name": "linux-sensu",
    "cluster": "linux"
    }
}

# curl -s -X GET http://localhost:4567/aggregates
[{"name":"linux"},{"name":":::cluster:::"},{"name":"healthcheck"}]

# curl -i -s -X DELETE http://localhost:4567/aggregates/:::cluster:::
HTTP/1.1 404 Not Found
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Allow-Origin: *
Connection: close
Content-length: 0

@betorvs API DELETE /aggregates/:::cluster::: should work, although the colons could be an issue (might need to url encode?). Alternatively, you could stop the Sensu server(s) and API(s) and flush Redis.

Thanks @portertech . I clean via redis flush.


FTP port must be an int and the config assumes its a string

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@7b8e060). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master       #6   +/-   ##
=========================================
  Coverage          ?   71.24%
=========================================
  Files             ?       13
  Lines             ?      546
  Branches          ?        0
=========================================
  Hits              ?      389
  Misses            ?      157
  Partials          ?        0

Impacted Files
Coverage Δ

app/consumer.py
60.82% <ø> (ø)

app/settings.py
100% <100%> (ø)

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 7b8e060...f74c676. Read the comment docs.


Group By search takes you to Group By FAQ

Expect
Top of the Group By page: https://www.prisma.io/docs/concepts/components/prisma-client/group-by
Actual
FAQ at the bottom of the Group By page: https://www.prisma.io/docs/concepts/components/prisma-client/group-by#faq


support log rotate by size

Since we are planning to use slog for this, I think we can close it now.


URL pattern for "options.redirectTo" in production

Hello,
I'm using the options.redirectTo parameter, from the useSignUpEmailPassword React hook, with the value /.
const {
  signUpEmailPassword,
  isLoading,
  isSuccess,
  needsEmailVerification,
  isError,
  error,
} = useSignUpEmailPassword({
  displayName: `${firstName} ${lastName}`.trim(),
  metadata: {
    firstName,
    lastName,
  },
  redirectTo: '/',
});

In production (app deployed on Netlify), I got the following error:

Error validating request body. "options.redirectTo" with value "https://react-nhost.netlify.app/" fails to match the required pattern: /^http://localhost:3000/.

Nhost expects this parameter to start with http://localhost:3000 even if my app is in production and not in my local environment anymore.
So, I'm wondering if I'm missing some configuration to match my production environment or if this is a bug.
Thanks for your feedback.
Greg

I think you need to do two things to fix this issue:

Update your production Client URL (Users -> Client URL) to https://react-nhost.netlify.app/
Specify the full URL. E.g. https://react-nhost.netlify.app/. (Relevant issue).

If you don't specify a redirectTo value the value is going to be the value of the Client URL by default.

Thanks, Johan! I've missed that one.
It works like a charm now 👌


No campaign event appears with status "delivered" on iOS

When sending push notifications, only Android users receives the "delivered" campaign event - which makes it hard to calculate click-rates on iOS devices.
Both iOS and Android sucessfully receive the "Clicked" and "Sent" campaign event status.
When running in debug on iOS, the self-check on push notification suceeds - and all push notification sucessfully displays, and works as expected on both device types.

Hi, thanks for the report! We will check it and let you know.

Hi @ghost, are 'delivered' events are still missing from your reports?
Please, how do you implement a Notification extension? https://github.com/exponea/exponea-flutter-sdk/blob/main/documentation/PUSH_IOS.md#notification-service-extension

Hi @ghost and @larsoleheggland this is limitation of technology, unfortunatelly. You may read about it here: https://firebase.google.com/docs/cloud-messaging/flutter/receive (just first paragraph)
As doc is saying, app has to be reopened. “Background state” is non-deterministic in this case: If app is in background, it may be killed due to some battery-saving app, or by system due to lack of RAM or due to inactivity (I experienced this on iPhone), so it becomes as ‘Terminated’. There is no much difference for Flutter SDK between background and terminated app :-/
^ so ‘delivered’ events are not tracked from with 100% warranty. On the other hand, ‘clicked’ event are sending because if you click on Notification then app is opened (goes to foreground state) and then everything should be start working normally.
So please do not fully rely on ‘delivered’ events for Flutter SDK. Event ‘sent’ is fine to consider, because it means that Push has been sent to valid FCM token and there is only small chance of case, that token is valid and App has been uninstalled - this is ensured by system.


[$1000] Dev: Cannot split money in DM group chat

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Create new group chat with existing contacts
Click + on composer and Split bill
Enter amount and click Next
Click Split xxx button

Expected Result:
Money is split correctly
Actual Result:
hows console error
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: Dev 1.3.37-6
Reproducible in staging?: n/a
Reproducible in production?: n/a
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/98b81d9b-68a8-4c59-be1f-9691bdc4fa7c
Expensify/Expensify Issue URL:
Issue reported by: @0xmiroslav
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1688715731926879
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~011a656ab6a105b57b
Upwork Job ID:<PHONE_NUMBER>910395904
Last Price Increase: 2023-08-04

Discussing the next steps in Slack.

We can't reproduce this. @chiragxarora, if you can help with reproducible steps (as per Carlo's suggestion in the Slack discussion), please follow up on this issue.
I am closing this for now.

Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690404444868009
Posting a clear reproduction steps:

Create a group with 2 unknown users
Create Split bill in this group

https://github.com/Expensify/App/assets/93399543/9478c33e-3c48-45f8-a2e0-a58503a5024c

Still waiting for proposals.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Cannot split money in DM group chat.
What is the root cause of that problem?
The root cause is that new user does not have login field.
This is expected if another user has never interaction with you and is the purpose of login => accountID migration.
After create a group chat with new users, BE responds personalDetailsList as below.

If split money success, BE responds as below.

In MoneyRequestConfirmPage page, participants will be retrieved as below.
https://github.com/Expensify/App/blob/89dfb7788ed3a533da5d5e2c9e55335028570d82/src/pages/iou/steps/MoneyRequestConfirmPage.js#L71
https://github.com/Expensify/App/blob/89dfb7788ed3a533da5d5e2c9e55335028570d82/src/libs/OptionsListUtils.js#L207-L234
So the login field of participants is set to undefined.
In these line, because login field is undefined, so the console error will be shown, and cannot split money.
https://github.com/Expensify/App/blob/89dfb7788ed3a533da5d5e2c9e55335028570d82/src/libs/actions/IOU.js#L452
https://github.com/Expensify/App/blob/89dfb7788ed3a533da5d5e2c9e55335028570d82/src/libs/actions/IOU.js#L574
What changes do you think we should make in order to solve the problem?
We can set login field of participants as below, because displayName of new user is just email address.
After split money success, the login of new user will be set correctly.

Pass reportID to PopoverReactionList in this line.

    return {
        keyForList: String(detail.accountID),
-       login,
+       login: login || displayName,
        ...
    };

What alternative solutions did you explore? (Optional)
We can pass proper value to Localize.arrayToString and OptionsListUtils.addSMSDomainIfPhoneNumber in IOU.js.
-   const formattedParticipants = Localize.arrayToString([currentUserLogin, ..._.map(participants, (participant) => participant.login)]);
+   const formattedParticipants = Localize.arrayToString([currentUserLogin, ..._.map(participants, (participant) => participant.login || participant.displayName)]);

-   const email = OptionsListUtils.addSMSDomainIfPhoneNumber(participant.login).toLowerCase();
+   const email = OptionsListUtils.addSMSDomainIfPhoneNumber(participant.login || participant.displayName).toLowerCase();

After create a group chat, duplicated contacts is stored in Onyx.
This will be fixed in https://github.com/Expensify/App/issues/21706

@fedirjh it seems like we only have one proposal above, can you please review it and let me know if we should move forward with that?

We don't have a proposal yet.

I think this can probably be closed as a dupe of https://github.com/Expensify/App/issues/21268

Based on the comments below, I will close this.
https://github.com/Expensify/App/issues/22440#issuecomment-1664673279
https://github.com/Expensify/App/issues/22440#issuecomment-1665866448

Payment summary:
Issue reported by: @0xmiroslav $250
I will process the payment in Upwork now.

@0xmiroslav I resent the offer in Upwork now, please accept it and I will process the payment. Thanks!

Hey @0xmiroslav, thanks for the heads up! I reviewed the discussion now and re-sent the proposal to Volodymyr L.
All set.


How to reference Input class?

Im a new developer in cpp, and im trying to use this project. How do i reference Input class from another project? There is no .h file!

This is a C# Project, so you would do that with using Interceptor; in C#

This is a C# Project, so you would do that with using Interceptor; in C#

Im trying to use this... but it needs a reference, when I try to reference by visual studio it says that the dll isnt a COM dll

The purpose of this project is to be a C# wrapper arround the original C++ Oblita Project.
If you dev in C++ just us Oblita.
If you dev in C#. Clone this repo, build this project, it will generate a file called Input.dll. Add this Input.dll to your actual project.


Write ModelCheckpoint callback to GCS (Google Cloud Storage)

Dear Keras Folks,
I'm understand that we cannot directly write checkpoint model to GCS because the inability of h5py library to support write to GCS. Is there any workaroud to mitigate this problem? i suggest to implement this:

first, write the checkpoint model locally,
then read the saved model using tensorflow.python.lib.io.file_io.FileIO from local path, then write again using same FileIO directly to GCS.

What do you think guys?

Yes, we can add such a feature to model.save(), save_weights, load_model
and load_weights. Unfortunately there's nothing better than this workaround
at this point. Feel free to open a PR
On Sep 19, 2017 19:38, "dyngts"<EMAIL_ADDRESS>wrote:

Dear Keras Folks,
I'm understand that we cannot directly write checkpoint model to GCS
because the inability of h5py library to support write to GCS. Is there any
workaroud to mitigate this problem? i suggest to implement this:

first, write the checkpoint model locally,
then read the saved model using tensorflow.python.lib.io.file_io.FileIO
from local path, then write again using same FileIO directly to GCS.

What do you think guys?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/7935, or mute the thread
https://github.com/notifications/unsubscribe-auth/AArWb6-E1KQta7r3WvmO3cR-XSlG2VUdks5skHqagaJpZM4PdQ30
.

i see. thanks @fchollet for the confirmation.

@dyngts   Any PR is opened for this ?

@harshini-gadige I run into the same problem, please see: https://github.com/keras-team/keras/pull/11636


Proposal: Add ToggleTheme button to testapp

As the title says, we could add an toggle theme button to the test apps.
This would make it easier to test changes with visual styles among multiple themes.
In addition we could maybe create a separate control out of this for WinUI, but I don't think that this is really a control a lot of people would need.

Just adding some buttons/settings to the test app for this sounds good. Thanks for asking first! :)

Upon further investigation, I found out that some pages hardcode colors for the UI resulting in a theme switch to make the testing UI completely unusable by e.g. resulting in buttons becoming dark on dark background.
Should we "sanitize" the pages and remove hard coded colors, so that the test app has a more uniform look across the testing pages?
@kaiguo You are working on a VisualTree baseline. Would this changes in the test app (mostly getting rid of non default colors) result in failing VisualTree baseline tests or would this be a safe operation?

@chingucoding should be fine I think. VisualTree verifications are running as API test, which is separate from the test UI, so they shouldn't be affected by UI changes in test app.

@chingucoding should be fine I think. VisualTree verifications are running as API test, which is separate from the test UI, so they shouldn't be affected by UI changes in test app.

Thanks for the clarification!

Should we "sanitize" the pages and remove hard coded colors, so that the test app has a more uniform look across the testing pages?

As we find these pages we should clean them up but I wouldn't block this change on completing that cleanup. The pages should work fine initially in Light theme right?

I just noticed that the acrylic basic page is a bit problematic when changing the requested theme property of the rootgrid. Some parts of the app just have a problem with dynamically changing the theme, but I don't really know where those "stubborn" components come from. Otherwise most pages look good in either theme even when changing.

Closing this as #1369 was merged into master!


DLang support ?

Hi,
Do you think you can add support for D lang ? if you start bounty i'm sure i can find people to donate money :)
Thanks!

Hello. There already exists D plugin for IntelliJ IDEA (https://github.com/intellij-dlanguage/intellij-dlanguage).
I can port as start point. Problem not in money, problem in users :)
Thanks

The plugin have bad code completion, it print all word from project, so it is not usable
This is all i need :p

That bad.
Why not :) I will move this plugin to Consulo, and then need from you create specific issues for each bug (since i don't want use their issues, some of them is IDEA specific or very old).
It will be sometimes painfull, due it will be almost implementation from scratch.
You ok with that ?

yes i'm ok, i'll help as much as i can :p
maybe it is time for me to try learn plugin API too xD
if you create bounty for donation let me know so i share on forums / reddit and IRC

Okey. I will check it in near future. I am busy in some sort of migration (https://github.com/consulo/EntryPoint/issues/1).
But sometimes i tired of it, and can migrate D plugin, i will notify about it.
Thanks

Ok thanks a lot!
I will try do starting project and learn a bit the plugin API to help

It will be hard. My documentation almost not documentated. I inherit IDEA problem - almost no documentation.
You can ask me about anything (any in Consulo, many things in IDEA)
Regards

Hello. I'm not forget about this issue. I ask then add license to project, and already playing with project.
But problem - they used Kotlin, which i am not planed for use. I will convert this - but it will be slow
Thanks

So, what about the support?

Hello. Since creating date of this issue, there no requests - issue have minor priority. And I have not much time for it. :( Sorry


Adds validations to insert and update queries

Saving onUpdate, onInsert and validate for ManagedObject for the next PR

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@a091f3c). Click here to learn what that means.
The diff coverage is 99.27%.

@@            Coverage Diff            @@
##             master     #243   +/-   ##
=========================================
  Coverage          ?   86.23%
=========================================
  Files             ?       85
  Lines             ?     5435
  Branches          ?        0
=========================================
  Hits              ?     4687
  Misses            ?      748
  Partials          ?        0

Impacted Files
Coverage Δ

lib/src/db/query/query.dart
100% <ø> (ø)

lib/src/db/managed/entity.dart
93.5% <ø> (ø)

lib/src/db/query/error.dart
100% <100%> (ø)

lib/src/db/managed/entity_mirrors.dart
96.22% <100%> (ø)

lib/src/db/managed/data_model.dart
81.72% <100%> (ø)

lib/src/utilities/mirror_helpers.dart
100% <100%> (ø)

lib/src/db/managed/property_description.dart
90.69% <100%> (ø)

lib/src/db/managed/data_model_builder.dart
89.06% <100%> (ø)

lib/src/db/postgresql/postgresql_query.dart
98.37% <100%> (ø)

lib/src/db/managed/validate.dart
99.1% <99.1%> (ø)

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 a091f3c...8389ae8. Read the comment docs.

Gonna work out of master now and tag

Ok that sounds a lot cleaner.


Adding plate to surface model

This PR adds plate elements to the SurfaceModel. This required a bit of refactoring, so there may be some bugs which pop up.
What type of change is this?

[ ] Bug fix in a backwards-compatible manner.
[x] New feature in a backwards-compatible manner.
[ ] Breaking change: bug fix or new feature that involve incompatible API changes.
[ ] Other (e.g. doc update, configuration, etc)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I added a line to the CHANGELOG.md file in the Unreleased section under the most fitting heading (e.g. Added, Changed, Removed).
[x] I ran all tests on my computer and it's all green (i.e. invoke test).
[x] I ran lint on my computer and there are no errors (i.e. invoke lint).
[ ] I added new functions/classes and made them available on a second-level import, e.g. compas_timber.datastructures.Beam.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] I have added necessary documentation (if appropriate)

Nice feature!
Generally works, but I have some issues with this surface at the door:

If I bake the geometry, it looks fine:

Generally the question: Should the Baking Component be updated and how will we control the Texture Mapping there?


pandas stubs - cast Series as float (reportGeneralTypeIssues error)

Environment data

Language Server version: v2020.7.2
OS and version: macOS
Python version (& distribution if applicable, e.g. Anaconda): Python 3.6.10

Expected behaviour
No type error. At runtime this works, so I would have thought it possible to cast a Series as a float?
Actual behaviour
Argument of type "Series[Unknown]" cannot be assigned to parameter "x" of type "SupportsFloat | _SupportsIndex | str | bytes | bytearray" in function "__init__"
  "__float__" is not present
  "__index__" is not present
  "Series[Unknown]" is incompatible with "str"
  "Series[Unknown]" is incompatible with "bytes"
  "Series[Unknown]" is incompatible with "bytearray"

Code Snippet / Additional information

import pandas as pd

s = pd.Series(1.0)
f = float(s)

Should be fixed in next release.

This issue has been fixed in version 2020.8.1, which we've just released. You can find the changelog here: https://github.com/microsoft/pylance-release/blob/master/CHANGELOG.md#202081-13-august-2020


fix: program certificate creation should use ProgramRequirement tree

Pre-Flight checklist

[ ] Screenshots and design review for any changes that affect layout or styling

[ ] Desktop screenshots
[ ] Mobile width screenshots

[x] Migrations

[x] Migration is backward-compatible with the current production code

[x] Testing

[x] Code is tested
[x] Changes have been manually tested

[ ] Settings

[ ] New settings are documented and present in app.json
[ ] New settings have reasonable development defaults, if applicable
[ ] Opened issue for DevOps regarding necessary configuration changes to deployed environments

What are the relevant tickets?
#1219
What's this PR do?
(Required)
How should this be manually tested?
(Required)

To fix the github actions test failures, I think you need a rebase now that https://github.com/mitodl/mitxonline/pull/1241 is merged.

Codecov Report

Merging #1239 (af9d262) into main (d913a96) will decrease coverage by 0.03%.
The diff coverage is 76.74%.

@@            Coverage Diff             @@
##             main    #1239      +/-   ##
==========================================
- Coverage   84.03%   84.00%   -0.04%
==========================================
  Files         296      296
  Lines       11620    11653      +33
  Branches      802      811       +9
==========================================
+ Hits         9765     9789      +24
- Misses       1628     1636       +8
- Partials      227      228       +1

Impacted Files
Coverage Δ

courses/utils.py
68.33% <55.55%> (-7.23%)
:arrow_down:

courses/factories.py
98.09% <88.88%> (-1.91%)
:arrow_down:

courses/models.py
89.53% <100.00%> (ø)

courses/signals.py
100.00% <100.00%> (ø)

ecommerce/models.py
85.83% <0.00%> (ø)

ecommerce/views/v0/__init__.py
90.00% <0.00%> (+0.41%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Update server and management node dependencies

Overview
Updates Node, Nest.JS (and related plugins like nestjs/crud), TypeORM, eslint, and prettier for the server and manage modules.
The main intent here was to update our version of TypeORM, which was generating spurious migrations related to the pinned_metric_fields column whenever generating new migrations (requiring editing the new migrations to remove those lines), but doing so pulled on a long chain of dependencies that needed to be updated - the main one being that updating Nest.JS moved us from TypeScript 3 -> 4 and Node 12 -> 16 (I think we could have jumped to only 14, but I choose to go to the most recent LTS), which then required updating a number of developer tools like eslint and prettier.
Checklist

[x] Description of PR is in an appropriate section of CHANGELOG.md and grouped with similar changes, if possible

Testing Instructions

scripts/update
scripts/server

Test out the application and ensure there haven't been any regressions

Spot check the scripts/manage commands for regressions

Process & publish geojson for a small region
./scripts/manage create-random-projects 1 all
etc.

Closes #891
Closes #210

@ddohler thanks for the careful testing! I've addressed those issues in https://github.com/PublicMapping/districtbuilder/pull/1088/commits/4de69e7ca91f5501a589884e067195a958efafea & https://github.com/PublicMapping/districtbuilder/pull/1088/commits/3d603c4daf814a0c04ff44ee66ee31ae1bca3441


Update OpenUI5RelatedProjects.json

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

Thank you for creating a project to extend OpenUI5 and the pull request to list it.
Sorry for the delay, your project should appear on the OpenUI5 homepage soon!


which vit model is right

RuntimeError: Error(s) in loading state_dict for VisionTransformer:
size mismatch for head.weight: copying a param with shape torch.Size([1000, 1280]) from checkpoint, the shape in current model is torch.Size([1024, 1280]).
size mismatch for head.bias: copying a param with shape torch.Size([1000]) from checkpoint, the shape in current model is torch.Size([1024]).

RuntimeError: Error(s) in loading state_dict for VisionTransformer: size mismatch for head.weight: copying a param with shape torch.Size([1000, 1280]) from checkpoint, the shape in current model is torch.Size([1024, 1280]). size mismatch for head.bias: copying a param with shape torch.Size([1000]) from checkpoint, the shape in current model is torch.Size([1024]).

have you solved the problem?

I've used this https://huggingface.co/timm/vit_huge_patch14_clip_224.laion2b_ft_in1k/tree/main model. and it works!

I've used this https://huggingface.co/timm/vit_huge_patch14_clip_224.laion2b_ft_in1k/tree/main model. and it works!
That's what I used to report the error

I've used this https://huggingface.co/timm/vit_huge_patch14_clip_224.laion2b_ft_in1k/tree/main model. and it works!


Overlays

Motivation for this change
extended the overlays section of nixpkgs doc. took me quite a few hours until i figued how to use it, see https://stackoverflow.com/questions/44316127/implementing-override-in-my-repository/44318322#44318322
@nbp this is very good work, thanks for creating this overlays stuff!
Things done

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] OS X
[ x] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

@qknight I see that you might have got inspiration from https://github.com/mozilla/nixpkgs-mozilla/ repository, but the default.nix file is not an overlay yet, and suffer from the same issues mentioned above.  It makes use of overlays, such as the rust-overlay.nix file.

I'm sad to see people giving up on contributions to the manual. I myself found it pretty  hard too and the comments were not very encouraging either, so I gave up too and closed the merge request.
Maybe we need to see if we can improve here?

@bachp What was not encouraging in the comments?
@qknight Can you update the stack overflow answers to have a pointer to this pull request?

That's why we decided to review and edit contributions to wiki instead of having a pull request system in place.

@Mic92 Honestly, I prefer having a review process to catch errors as opposed to having documentation which is miss-leading into more complex solutions which would have to be explained later to a larger audience.

@nbp @bachp

What was not encouraging in the comments?
the answers were great but i had 3 windows open and a nix-build with the docu to understand what the comments could mean. i'm not good at looking at commented split snippets of PR code, this PR technique is not working well for me.
also my use case is different and 'not encouraged' so my contribution seems to be unwanted.

that said, my documentation of this feature is now documentet in this PR, so with a little google search one can find it. like i did with #23016
@nbp i've added the stackover-flow link to this PR. thanks for your help!


updated_prop: DeprecatedNumeric → Numeric

These two constants are aliases of each other in Stripe's codebase.
Using Numeric is deprecated in props in models in Stripe's codebase.
This is normally checked by Rubocop lint rules, but updated_prop hides
the fact that a prop is using DeprecatedNumeric.
So whether Sorbet treats this type as Numeric or DeprecatedNumeric
doesn't really matter. For simplicity's sake, let's just say Numeric,
so that we generate fewer constant literals. updated_prop isn't used
widely enough for this to make a measurable difference, but at least
there's Stripe-specific code in Sorbet.

Motivation

Test plan

See included automated tests.

We have a policy of testing changes to Sorbet against Stripe's codebase before
merging them. I've kicked off a test run for the current PR.  When the build
finishes, I'll share with you whether or how it failed. Thanks!
Stripe employees can see the build results here:
→ https://go/builds/bui_O27P41uouG1EV5
→ https://go/builds/bui_O27PXdRPZ3jMXX
→ https://go/builds/bui_O27PqXclAUZoA4


PCF Bosh deployment Failing on Old IP Cert

I am getting errors. https://vcap:@<IP_ADDRESS>:6868/agent: x509: certificate is valid for <IP_ADDRESS>
how can I clear creds.yml file or delete the file.

If this is the first time you are deploying and don't care about losing creds, you can just remove creds.yml and start over. If you're specifically looking to recreate director certs, you'll probably want to remove at least the following from your creds.ymlfile:director_ssl, blobstore_server_tls, nats_server_tls, mbus_bootstrap_ssl`.

Hello I am not able to find creds.yml file to delete. yes this is first
time deployment.
On Thu, Aug 9, 2018 at 5:04 PM, Danny Berger<EMAIL_ADDRESS>wrote:

If this is the first time you are deploying and don't care about losing
creds, you can just remove creds.yml and start over. If you're
specifically looking to recreate director certs, you'll probably want to
remove at least the following from your creds.ymlfile:director_ssl,blo
bstore_server_tls,nats_server_tls,mbus_bootstrap_ssl`.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cloudfoundry/bosh-deployment/issues/285#issuecomment-411935271,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AoGdv9BECHPsZEIHkUBBgGfUOTXz_OJPks5uPM4ZgaJpZM4V02ZH
.

The creds.yml file would be the file you passed as --vars-store to the create-env command.

Closing this due to inactivity.
If you would like to discuss this contribution further, please open a new issue.


Performance issues after 2.14

Bug description

After upgrading prisma do a version higher than 2.14 I'm experiencing performance issues with the queries. Mocha reports tests that usually took less than 60ms to now be taking more than 150ms, sometimes more than 200ms to complete
I commented about this in #5485 and analyzed the logs, but they're identical (or very similar) so it does not seems like it's the same as #5274
Expected behavior
Average performance should remain the same or improve between Prisma versions.
Prisma information
I've picked some queries to show comparing 2.14 with 2.15 and 2.17, but they were exactly the same, the only difference was the time it took to run them (54ms -> 141ms, 65ms -> 193ms) so I don't thing it make sense to show them (since they're the same). But it's not a problem to share that part of the schema and queries if needed
Environment & setup

OS: Debian 10 buster x64
Database: PostgreSQL 12 (localhost)
Node.js version: v14.15.5
Prisma version: >= 2.15.0

Please let me know if you need more information or tests that you need. Thanks!

Thanks for reporting @GCastilho!
Could you share the specific query with us plus a subset of the schema that got slower?

For sure, @timsuchanek
This is the schema:
model User {
  @@map("users")
  id              String   @id @default(uuid())
  email           String   @unique
  password        String
  role            UserRole @default(USER)
  created_at      DateTime @default(now())
  updated_at      DateTime @updatedAt
  lotes           Lote[]
  criadores       Criador[]
  granjas         Granja[]
}

model Criador {
  @@map("criadores")
  id          Int
  userId      String
  user        User      @relation(fields: [userId])
  nome        String
  telefone    String
  created_at  DateTime  @default(now())
  updated_at  DateTime  @updatedAt
  granjas     Granja[]
  lotes       Lote[]
  @@id([userId, id])
}

And the queries logged by prisma:
From the first test<EMAIL_ADDRESS>prisma:info  Starting a postgresql pool with 5 connections.
prisma:info  Fetched a connection from the pool
prisma:info  Started http server on http://<IP_ADDRESS>:34325
prisma:info  Fetched a connection from the pool
prisma:query DELETE FROM users
prisma:info  Fetched a connection from the pool
prisma:query BEGIN
prisma:query INSERT INTO "public"."users" ("id","email","password","role","created_at","updated_at") VALUES ($1,$2,$3,$4,$5,$6) RETURNING "public"."users"."id"
prisma:query SELECT "public"."users"."id", "public"."users"."email", "public"."users"."password", "public"."users"."role", "public"."users"."created_at", "public"."users"."updated_at" FROM "public"."users" WHERE "public"."users"."id" = $1 LIMIT $2 OFFSET $3
prisma:query COMMIT
prisma:info  Fetched a connection from the pool
prisma:query SELECT "public"."users"."id", "public"."users"."password", "public"."users"."role" FROM "public"."users" WHERE "public"."users"."email" = $1 LIMIT $2 OFFSET $3
prisma:info  Fetched a connection from the pool
prisma:query DELETE FROM criadores
prisma:info  Fetched a connection from the pool
prisma:query BEGIN
prisma:query SELECT "public"."users"."id" FROM "public"."users" WHERE "public"."users"."id" = $1 OFFSET $2
prisma:query INSERT INTO "public"."criadores" ("id","userId","nome","telefone","created_at","updated_at") VALUES ($1,$2,$3,$4,$5,$6) RETURNING "public"."criadores"."userId", "public"."criadores"."id"
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id", "public"."criadores"."nome", "public"."criadores"."telefone", "public"."criadores"."created_at", "public"."criadores"."updated_at" FROM "public"."criadores" WHERE ("public"."criadores"."userId" = $1 AND "public"."criadores"."id" = $2) LIMIT $3 OFFSET $4
prisma:query COMMIT
prisma:info  Fetched a connection from the pool
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id", "public"."criadores"."nome", "public"."criadores"."telefone", "public"."criadores"."created_at", "public"."criadores"."updated_at" FROM "public"."criadores" WHERE "public"."criadores"."id" = $1 LIMIT $2 OFFSET $3

From the second test:
prisma:info  Fetched a connection from the pool
prisma:query DELETE FROM criadores
prisma:info  Fetched a connection from the pool
prisma:query BEGIN
prisma:query SELECT "public"."users"."id" FROM "public"."users" WHERE "public"."users"."id" = $1 OFFSET $2
prisma:query INSERT INTO "public"."criadores" ("id","userId","nome","telefone","created_at","updated_at") VALUES ($1,$2,$3,$4,$5,$6) RETURNING "public"."criadores"."userId", "public"."criadores"."id"
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id", "public"."criadores"."nome", "public"."criadores"."telefone", "public"."criadores"."created_at", "public"."criadores"."updated_at" FROM "public"."criadores" WHERE ("public"."criadores"."userId" = $1 AND "public"."criadores"."id" = $2) LIMIT $3 OFFSET $4
prisma:query COMMIT
prisma:info  Fetched a connection from the pool
prisma:query BEGIN
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id" FROM "public"."criadores" WHERE ("public"."criadores"."userId" = $1 AND "public"."criadores"."id" = $2)
prisma:query UPDATE "public"."criadores" SET "nome" = $1, "updated_at" = $2 WHERE ("public"."criadores"."userId","public"."criadores"."id") IN (($3,$4))
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id", "public"."criadores"."nome", "public"."criadores"."telefone", "public"."criadores"."created_at", "public"."criadores"."updated_at" FROM "public"."criadores" WHERE ("public"."criadores"."userId" = $1 AND "public"."criadores"."id" = $2) LIMIT $3 OFFSET $4
prisma:query COMMIT
prisma:info  Fetched a connection from the pool
prisma:query SELECT "public"."criadores"."userId", "public"."criadores"."id", "public"."criadores"."nome", "public"."criadores"."telefone", "public"."criadores"."created_at", "public"."criadores"."updated_at" FROM "public"."criadores" WHERE "public"."criadores"."id" = $1 LIMIT $2 OFFSET $3

The tests were performed using mocha and the generated "prisma:query" are identical between 2.14, 2.15 and 2.17, the only difference (just noticed it) are the "prisma:info" statements, where on 2.14 we only had these two:
prisma:info  Starting a postgresql pool with 5 connections.
prisma:info  Started http server on http+unix:///tmp/prisma-b055a1ccfdb2a3a62e187d82.sock

Thanks @GCastilho!
One more thing: Could you show the Prisma Client query that you are sending?
So in the form like this:
prisma.user.findMany({ where: {} })

Thanks!

For sure, @timsuchanek
Here are the queries, in order:
await prisma.user.create({
	data: {
		email,
		password,
		role,
	}
})

await prisma.user.findUnique({
	select: { id: true, password: true, role: true },
	where: { email },
})

await prisma.criador.create({
	data: {
		...novoCriador,
		userId,
	}
})

await prisma.criador.findFirst({
	where: { id: 1 }
})

await prisma.criador.update({
	where: {
		userId_id: {
			userId: req.user.sub,
			id: idCriador
		}
	},
	data: updateCriador
})

Duplicated queries I've displayed only once. The delete queries are all used as
await prisma.$queryRaw('DELETE FROM table')

Because prisma (AFAIK) still does not have support for "deleteMany" with cascade relations

This does happen to me too! I have shared all info with @matthewmueller via email. My query however did go from less than a second to 25-35sec!
Also, I would like to note, I did test every single query sent to DB and every one finished under 100ms (5 total)

A simple query on 2.14 is much faster than on 2.19.
I have tested with this simple example.
Environment:
OS: Debian GNU/Linux 9 (stretch) 64-bit
Database: PostgreSQL 13.0 (Debian 13.0-1.pgdg90+1)
Node.js: v14.2.0

Db model:
model test {
  id   Int    @id @default(autoincrement()) @db.Integer
  name String @db.Text
}

Code:
let start = new Date().getTime();

for (let i = 0; i < 1000; i++) {
    let res = await prisma.test.findUnique({
        select: {
            id: true,
            name: true,
        },
        where: {
            id: 1
        }
    });
}

console.log(new Date().getTime() - start);

Results:
Prisma 2.14.0 - 4 seconds
Prisma 2.19.0 - 56 seconds

I've also noticed considerably slower performance with queries.

Hello everyone,
Can you all still reproduce these regressions in the latest version of Prisma?

@pantharshit00 Yes, indeed.
I am doing and measuring 5 simultaneous queries (+ one initial query)
[GQL/clientOffer] 📑 "offerInfo": 135.357ms
[GQL/clientOffer] 📑 "carriersPromise": 38.925s
[GQL/clientOffer] 📑 "groups": 4.69ms
[GQL/clientOffer] 📑 "districts": 5.264ms
[GQL/clientOffer] 📑 "motives": 6.566ms
[GQL/clientOffer] 📑 "regions": 6.359ms
[GQL/clientOffer] 📑 "all": 38.933s

carriersPromise query:
{
  select: {
    carrierID: true,
    shortID: true,
    type: true,
    sides: true,
    periods: {
      select: {
        selected: true,
        periodID: true,
        wanted: true,
        reservation: true,
        motiveID: true,
        sellingPrice: true,
        count: true,
        groups: { select: { groupID: true, motiveID: true } }
      }
    },
    carrier: {
      select: {
        lat: true,
        lng: true,
        city: true,
        street: true,
        traffic: true,
        description: true,
        districtID: true,
        regionID: true,
        orientation: true,
        photos: { select: { src: true, order: true } }
      }
    },
    offerID: true
  },
  where: {
    offerID: 9042,
    carrier: { districtID: { in: undefined }, regionID: { in: undefined } }  }
}

Honestly the best way to help would be to post the resulting SQL queries for both and verify if there is not a missing index. Hard to help you otherwise.

@Sytten Prisma dev team has full DB with schema and data to test it on. We were in contact previously. All relations are on foreign keys that will automatically create indexes and condition are on primary and normal indexies.

@pantharshit00 Yes, it's still happening in v2.22.1

I used reproduction provided by @Tsvetomir-M to test this out using the following script:
import { PrismaClient } from "./prisma/client1";
import { PrismaClient as NAPIPrismaClient } from "./prisma/client2";
import { PrismaClient as OLDPrismaClient } from "./prisma/client3";
import { performance } from "perf_hooks";

const prisma = new PrismaClient();
const napi = new NAPIPrismaClient();
const old = new OLDPrismaClient();
async function main() {
  let start, finish;

  start = performance.now();
  for (let i = 0; i < 1000; i++) {
    await old.test.findUnique({
      select: {
        id: true,
        name: true,
      },
      where: {
        id: 1,
      },
    });
  }
  finish = performance.now();
  console.log(`2.14 took ${finish - start}ms`);

  start = performance.now();
  for (let i = 0; i < 1000; i++) {
    await prisma.test.findUnique({
      select: {
        id: true,
        name: true,
      },
      where: {
        id: 1,
      },
    });
  }
  finish = performance.now();
  console.log(`2.23 took ${finish - start}ms`);

  start = performance.now();
  for (let i = 0; i < 1000; i++) {
    await napi.test.findUnique({
      select: {
        id: true,
        name: true,
      },
      where: {
        id: 1,
      },
    });
  }
  finish = performance.now();
  console.log(`napi 2.23 took ${finish - start}ms`);
  prisma.$disconnect();
  old.$disconnect();
  napi.$disconnect();
}

main();

Here are the result that I am getting on Windows(AMD Ryzen 3900XT):
code/reproductions/issue-5792 is 📦 v1.0.0 via  v14.17.0
❯ yarn start
yarn run v1.22.5
$ ts-node main.ts
2.14 took 1496.481899999082ms
2.23 took 1499.4336000010371ms
napi 2.23 took 1120.0531999990344ms
Done in 5.80s.

code/reproductions/issue-5792 is 📦 v1.0.0 via  v14.17.0
❯ yarn start
yarn run v1.22.5
$ ts-node main.ts
2.14 took 1463.7449000030756ms
2.23 took 1497.6568999961019ms
napi 2.23 took 1122.1065999940038ms
Done in 5.74s.

code/reproductions/issue-5792 is 📦 v1.0.0 via  v14.17.0
❯ yarn start
yarn run v1.22.5
$ ts-node main.ts
2.14 took 1498.7672000005841ms
2.23 took 1469.091099999845ms
napi 2.23 took 1111.8403999954462ms
Done in 5.75s.

code/reproductions/issue-5792 is 📦 v1.0.0 via  v14.17.0
❯ yarn start
yarn run v1.22.5
$ ts-node main.ts
2.14 took 1478.4999000057578ms
2.23 took 1499.8465000018477ms
napi 2.23 took 1130.8392999991775ms
Done in 5.78s.

These result does not indicate a performance regression and aligns with what I expect. I will try this on MacOS now.

I tried this on MacOS as well but I can't reproduce(2018 13 inch Macbook Pro):

╭─     ~/code/reproductions/issue_5792                                                ✔  took 4s    14.15.1    2.01G   ─╮
╰─ NODE_ENV=production node main.js                                                                                ─╯
2.14 took 2270.8000319600105ms
2.23 took 1108.5681910514832ms
napi 2.23 took<PHONE_NUMBER>778595ms

╭─     ~/code/reproductions/issue_5792                                                             ✔  14.15.1    1.98G   ─╮
╰─ NODE_ENV=production node main.js                                                                                ─╯
2.14 took 1011.5077039599419ms
2.23 took 1093.1392549872398ms
napi 2.23 took<PHONE_NUMBER>00351ms

@pantharshit00 please try my simple example with data provided to you under the NDA we have. The query is orders of magnitude slower since.

I had the same issue while I was migrating from sequelize:
Environment:
os: Linux (5.10.42-1-MANJARO)
DB: MySQL (10.4.19-MariaDB)
Node: v16.3.0
prisma: 2.25

Sequalize:
for (let index = 0; index < 2000; index++) {
    const allEmployees = await models.employees.findAll({
    limit: 100,
})
}

Prisma:
for (let index = 0; index < 2000; index++) {
    const employees = await prisma.employees.findMany({
      take: 100
    })
}

Results:
prisma: 42.497s
sequelize: 8.709s

I don't know if the following issue #4911 is related however after enabling the nodeApi preview feature the performance greatly improved
Results with nApi enabled:
prisma: 6.146s

The Node-API preview feature does not change anything under the hood how we run queries, so this is probably a different thing than what was reported here before. Still great results you are seeing @k-sae. Maybe post these results in https://github.com/prisma/prisma/issues/6301 - and if you could even provide a reproduction we can try this out with that would be amazing.

@janpio Can confirm, no change in the duration of my (prisma) query.

@Akxe Have you run npx prisma generate after adding previewFeatures = ["nApi"] to schema.prisma?

@Akxe Have you run npx prisma generate after adding previewFeatures = ["nApi"] to schema.prisma?

Indeed I did, yet no change. Still it resulted in 36-38 sec

@Akxe that is bad, the last thing I want is having performance issues on the server due to unknown parameters.
I have conducted the test multiple times with logging disabled and the results are pretty close.
Here some added information maybe it regards identifying the root cause of the issue.
The database I am using is the employee database from here. It contains about 300,024 employee record
Prisma schema:
model employees {
  emp_no       Int              @id
  birth_date   DateTime         @db.Date
  first_name   String           @db.VarChar(14)
  last_name    String           @db.VarChar(16)
  gender       employees_gender
  hire_date    DateTime         @db.Date
}

The query generated from prisma:
SELECT `employees`.`employees`.`emp_no`, `employees`.`employees`.`birth_date`, `employees`.`employees`.`first_name`, `employees`.`employees`.`last_name`, `employees`.`employees`.`gender`, `employees`.`employees`.`hire_date` FROM `employees`.`employees` WHERE 1=1 ORDER BY `employees`.`employees`.`emp_no` ASC LIMIT ? OFFSET ?

The query generated from sequelize:
SELECT `emp_no`, `birth_date`, `first_name`, `last_name`, `gender`, `hire_date` FROM `employees` AS `employees` LIMIT 100;

I have run the both of the queries directly from the MySQL database and the result wasn't significantly large
Results
prisma raw query: 1.2ms
sequelize raw query: 0.9ms

The next step was the to test the sequelize-query using prisma query.$raw:
 for (let index = 0; index < 2000; index++) {
  const allEmployeesRaw = await prisma.$queryRaw('SELECT `emp_no`, `birth_date`, `first_name`, `last_name`, `gender`, `hire_date` FROM `employees` AS `employees` LIMIT 100;');
 }

Results
prisma raw without nodeApi: 26.817s
prisma raw with nodeApi: 4.452s

Notice that in the case of raw prisma queries the performance improvement wasn't significant especially that I am now ignoring most of the prisma features.

@k-sae Just to clarify, I am not from Prisma. In my case the SQL Prisma creates is not the bottleneck.
I ran my test. I did enable full SQL logging, and requested
prisma.carrierOfOffer.findMany({
select: {
  carrierID: true,
  shortID: true,
  type: true,
  periods: {
    select: {
      carrierID: true,
      groups: { select: { groupID: true, motiveID: true } }
    }
  },
  carrier: {
    select: {
      carrierID: true,
      regionID: true,
      districtID: true,
      lat: true,
      lng: true
    }
  },
  offerID: true,
}});

The SQL it produces is extremely long (and was posted previously), but when I copied the SQL and put it into MySQL workbench, it returned results under 0.1s. For me, the problem is within the processing of incoming result(s).

@k-sae As said above, your original problem was not the same as what this thread is about. You were experiencing a different problem, which is somehow solved by switching to Node-API - which will not help for the problem @Akxe and Co describe here. No need to investigate further.

@janpio Thank you, I will create a reproduction here #6301, maybe it will identifying this issue. I really appreciate the hard work of the Prisma team.

I am experiencing close to 10x difference in performance between operations executed by prisma and similar raw queries. I will make a reproduction repo soon. Just adding my voice for now. Prisma 3.8.0 and postgres 12 (macos)

Hey everyone, in Prisma 5 we have made considerable performance improvements. @GCastilho @peterrogov @k-sae @Akxe @chinanderm @Tsvetomir-M, if you are using Prisma 5 are you still experiencing these problems? Otherwise, I'd love if you could give it a try.

Hey everyone, given the age of this issue, the recent improvements in query and startup performance, and also the difficulty to reproduce, I am closing it. But don't take me wrong, if you are experiencing any performance regression, please open a new issue with the necessary information for us to reproduce it.


add RSL6a3 msgpack fixture tests

@amnonbc please add a PR description with some context about why we're adding this.


Retain cycle with RKManagedObjectMappingOperation

I've noticed a memory leak, that is caused by a retain cycle between a RKMappingOperationQueue and several RKManagedObjectMappingOperations.
RKManagedObjectMappingOperations hold a strong reference to their queue, which gets established in - [RKObjectMapper mapFromObject:toObject:atKeyPath:usingMapping:]. Inside - [RKManagedObjectMappingOperation connectRelationships] a block that references self is created and added to the queue. This causes a) self to be retained by the block and b) the block being retained by the queue. This forms the problematic retain cycle.
Some additional info from instruments:
Cycles: http://cl.ly/3n1u201m0U0C0e063t29
Queue (depicting the unbalanced retains from operations): http://cl.ly/290b3d293b39221O2r1a
Operation (unbalanced retains from the block runtime): http://cl.ly/0M1J3T3G1m0z1V252G1t
It is possible to break the retain cycle by using a __bock reference to self inside - [RKManagedObjectMappingOperation connectRelationships].
- (void)connectRelationships {
    if ([self.objectMapping isKindOfClass:[RKManagedObjectMapping class]]) {
        NSDictionary* relationshipsAndPrimaryKeyAttributes = [(RKManagedObjectMapping*)self.objectMapping relationshipsAndPrimaryKeyAttributes];
        for (NSString* relationshipName in relationshipsAndPrimaryKeyAttributes) {
            if (self.queue) {
                RKLogTrace(@"Enqueueing relationship connection using operation queue");
                __block RKManagedObjectMappingOperation *selfRef = self;
				[self.queue addOperationWithBlock:^{
                    [selfRef connectRelationship:relationshipName];
                }];
            } else {
                [self connectRelationship:relationshipName];
            }
        }
    }
}

This should be safe since the operations will stay around until the thread's autorelease pool get's drained when the thread is destroyed (see the third screenshot).

Thank you sir. Will get this integrated into the development branch.


Improve flatten docs

I'm using sharp (0.27.2) to resize images on the fly in a Node.js express application. However, I'm unable to keep the image transparency. The result always get an opaque white background.
The source is a read stream from AWS S3, which is piped into a sharp instance, which is then piped to the Express response. I tried setting the background to alpha 0 in both the resize() and flatten() operation, without success.
I created this sample code to recreate the problem with a simple read / write file stream:
const fs = require('fs')
const sharp = require('sharp')

async function main () {
  const transformer = sharp()

  transformer.resize({
    width: 64,
    height: 64,
    background: { r: 255, g: 255, b: 255, alpha: 0 }
  }).flatten({
    background: { r: 255, g: 255, b: 255, alpha: 0 }
  })

  const originStream = fs.createReadStream('./test.png')
  const targetStream = fs.createWriteStream('./result.png')

  transformer.toFormat('png')

  originStream.pipe(transformer).pipe(targetStream)
}

main()

How can I make the output image keep its transparent background?
Thanks!

Hello, flatten will always remove the alpha channel.
https://sharp.pixelplumbing.com/api-operation#flatten
The docs could probably be a bit clearer, and perhaps flatten should throw an error if the background provided to it has an alpha value < 1.

@lovell I should have mentioned that I added flatten afterwards because I was having the issue with just resize as well.
Removing the flatten operation still results in a white background unfortunately.

Commit https://github.com/lovell/sharp/commit/f1f18fbb4af818df7a1c0b53f2cfe9eacdba0049 adds a note to the docs about this.


Fix/18554: Update reaction dynamically in the reaction popup

Detail
We will move the logic to get information of the reaction to PopoverReactionList.js itself. So, this component could be dynamically updated
Fixed Issues

$ https://github.com/Expensify/App/issues/18554
PROPOSAL: https://github.com/Expensify/App/issues/18554#issuecomment-1539941287
Tests

On device 1 and login with User A and go to chat with user B
On device 2 and login with User B
On device 1 send a message to user B and react to that message. Long press on that emoji to see the emoji reaction number and the user who reacted it (Do not close the popup )
Now on device 2, from user B, react to the above message
Verify that the emoji reaction number and the users who reacted to the message are dynamically updated on the popup on device 1

[x] Verify that no errors appear in the JS console

Offline tests

None
QA Steps

On device 1 and login with User A and go to chat with user B
On device 2 and login with User B
On device 1 send a message to user B and react to that message. Long press on that emoji to see the emoji reaction number and the user who reacted it (Do not close the popup )
Now on device 2, from user B, react to the above message
Verify that the emoji reaction number and the users who reacted to the message are dynamically updated on the popup on device 1

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome
https://github.com/Expensify/App/assets/129500732/bdb924c9-e752-4624-8610-09f375254c2b

Mobile Web - Safari && IOS
https://github.com/Expensify/App/assets/129500732/3608d553-8289-4e36-a07a-1a2a6ff763fa

Desktop

iOS
In the safari section

Android
https://github.com/Expensify/App/assets/129500732/99045bdd-f017-4849-a8fa-a5d8d9dd8fc8

@rushatgabhane everything is updated

@rushatgabhane Sorry about my late. I just updated, help to check again

@rushatgabhane Bump, please help to review

@rushatgabhane - Little bump for the PR review here the next time you're online and available. Thanks!

@cristipaval Friendly bump

🚀 Deployed to staging by https://github.com/cristipaval in version: 1.3.16-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.16-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.16-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.16-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.16-7 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Test results transfer to TestRail with wrong test case Ids when using data provider

As the result of using data provider for a group of test cases with different Test case ids, the result (and logs/link to Zafira test run) of the first test is set as result of the second one in Test Rail and so on.
in Zafira:
test1 - passed
test2 - failed
test3 - passed
in Test Rail:
test1 - failed
test2 - passed
test3 - status of test that run after it

the root cause is that:

we do getTestTags in ZafiraListener onTestStart
during the test execution we allow to update cases using
setCases(String..id)
overridden cases are stored in threadLocal variable and are registered for the next test run
-> so in reality we have shift in cases registration when 'setCases...' is used on test level

Hi deNatallia,
I am also facing the same issue that with data provider test cases how the test rail api's upadate the same test case.

@deNatallia @kmehta30 issue is fixed in carina and zafira:
carina - 6.1.20+
zafira - 4.0.53


parameters.RestorePackages.config appears to be ignored

Microsoft (R) Build Engine version 16.10.2+857e5a733 for .NET Framework
Gradle 7.0.2
I have an ASP.NET project in the solution that cannot convert to package reference so I need to pass in RestorePackagesConfig - but this seems to be ignored and packages are not restored and build fails. Is the syntax incorrect (below) or is that property not supported ?
plugins {
id 'com.ullink.msbuild' version '3.13'
}
tasks.register('windowsBuild',com.ullink.Msbuild) {
println("Windows Build requested for ${project.displayName}")
solutionFile = 'MySolution.sln'
configuration = 'Release'
targets = ['Clean', 'Restore', 'Rebuild']
parameters.RestorePackagesConfig = true
}
The non ASP.NET projects restore from nuget correctly. If I run msbuild in command line (non gradle plugin) -the packages are restored

hi @Lizalex-Systems
for restoring packages, please use https://github.com/Itiviti/gradle-nuget-plugin, it has a nugetRestore task that you could leverage for that purpose


Native Client missing -

System information:

Operating system : Ubuntu 21.04
DBeaver version  :  <IP_ADDRESS>108160727
Java version        :  1.8.0_221
Additional extensions

Connection specification:

Database name and version  :  MySQL community version 8.0.26
Driver name                           :  mysql connector/J8.0
Do you use tunnels or proxies (SSH, SOCKS, etc)?

Describe the problem you're observing:
When right clicking the database and right clicking Tools->Restore database the database import dialog shows the message "Native client is not specified for connection".  When selecting the "Local Client" button I am presented with a dialog that expects me to navigate or browse to the directory holding the client programs. The client programs are located in /usr/bin but the dialog browser doesn't allow you to input that location.
Steps to reproduce, if exist:  See above
Include any warning/errors/backtraces from the logs

#10320

@glmarsh
I was not able to reproduce this issue. Can you tell me if you doing it as I am.

Click "Local client"
Select "Browse"
Click "Add home"
Navigate to /usr/bin and click "Open"

there is no update for a long time.
If it is still actual - feel free to reopen the issue.

@Matvey16 +1 this issue
Ubuntu 20.04LTS
DBeaver Version <IP_ADDRESS>110030714

Click "Local Client"
Select "Browse"
Click "Add Home"
Navigate to /usr/bin
When I navigate to /usr, I get the message:
"Could not read the contents of usr. Error opening directory '/usr': Permission denied"

Confirmed removing snap fixed this issue

Check Locate native client

Install mysql
Open terminal, then type which mysql
result: "/usr/bin/mysql"

Fix native client is not specified for connection

Click "Local client"
Select "Browse"
Click "Add home"
Navigate to locate mysql (default: /usr/bin) and click "Open"

@dbeaver-devops  could you make it automatically detect look into every linux $PATH ?

How is this still an issue with this after so many years with the SNAP installed version?


fix: LEAP-1363: View all is loading even when value is empty for RichText

PR fulfills these requirements

[x] Commit message(s) and PR title follows the format [fix|feat|ci|chore|doc]: TICKET-ID: Short description of change made ex. fix: DEV-XXXX: Removed inconsistent code usage causing intermittent errors
[ ] Tests for the changes have been added/updated (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[x] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[x] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)
(check all that apply)

[ ] Product design
[ ] Backend (Database)
[ ] Backend (API)
[x] Frontend

Describe the reason for change
When user is using a config with text, and uploading the data with no value for the text, the RichText tag is not loading and the prop isReady is not set to true, so when user clicks on View all Annotations view, it's not loading the task
What does this fix?
Just changes the validation from !this_value for !this._value === null so even if the value is empty but the data is correct and value exists, it's loading the tag and setting isReady to true when it's ready.

/git merge develop

/git merge develop

/git merge develop

/git merge develop


add support for COPY FROM to EXPLAIN

output currently looks like this:
{
    "planType": "CollectAndMerge",
    "collectPhase": {
      "executionNodes": [
        "xQjBGHPFT62SeMY3z786ng"
      ],
      "id": 0,
      "phaseType": "FILE_URI_COLLECT"
    },
    "localMerge": {
      "executionNodes": [],
      "id": 1,
      "distribution": {
        "distributedByColumn": 0,
        "type": "SAME_NODE"
      },
      "projections": [
        {
          "type": "AGGREGATION"
        }
      ],
      "phaseType": "MERGE"
    }
}

ack