Fix not equal returning error when same things are compared in some cases

What
This PR fixes #699
How
Adds pattern
(x, y) if x == y => (Type::Bool, None),

to Operator::NotEqual so that it type checks for all operands having same types including boolean inequality.
Questions
While looking for this fix I found out that lots of code in operator type check is just replicated. I don't have much context but it looks like we can reduce duplication and avoid problems like being able to compare bools using == but not !=.
Also is there any reason why Operator::Equal doesn't have (Type::Int, Type::Int) and (Type::Float, Type::Float) patterns but Operator::NotEqual has them?

Generally speaking, yes, less duplicate code is better as long as it's still readable and understandable. Sometimes we may even avoid some idiomatic ways to do some things in rust because they're less readable.
I also think it's reasonable to have non/equality comparison to/from all types, some of which you've listed.

I think for equals and not-equals, we should just tell the typechecker that any two values can be equality compared. In effect, it'd immediately become (bool, None) if we see == or !=

are we still waiting for something here?

@fdncred - yeah, the typecheck for both equality and non-equality should just return (bool, None) in each case. Each only needs that result and not any of the other cases it's doing now.

@jntrnr you mean also when types are different than each other? For example, 42 == "hello" should type check right?

@onsah - you got it

thanks!

@jntrnr Just wondering, do we want to change the evaluation so we return $false for something like 42 == "foo" or we want to leave as is? (type check passes, evaluation fails with type error)


Internal_link: Add ApiIsNarrow.

Prep work for #251.

Should be ready for review now.

Thanks, LGTM! Over to Greg for his review.

Extracted a bug fix to make Add generic support for is operands nfc.

Thanks for the review @gnprice. Updated the PR.

Thanks. This should be fixed now.

Thanks, looks good — merging.


CX SQL_Injection @ website/pictures/conflictview.php [master]

SQL_Injection issue exists @ website/pictures/conflictview.php in branch master
Method <?php at line 1 of website\pictures\conflictview.php gets user input from the _GET element. This element’s value then flows through the code without being properly sanitized or validated, and is eventually used in a database query in method get_conflict at line 213 of website\include\pictures.php. This may enable an SQL Injection attack.
Severity: High
CWE:89
Vulnerability details and guidance
Checkmarx
Lines: 18

Code (Line #18):
$conflict = Pictures::get_conflict($_GET['conflictid'], $user['id']);

Issue still exists.

Issue still exists.


Is there any way to animate expanding row?

Hi, I need to animate expanding row by slideDown animation. Is there any way to do it?
import React, { Component } from 'react';
import BootstrapTable from 'react-bootstrap-table-next';
import 'react-bootstrap-table-next/dist/react-bootstrap-table2.min.css';

const products = [
  { 'id': 'asd1', 'name': 'asd1', 'price': '1000' },
  { 'id': 'asdass', 'name': 'asd1', 'price': '1000' },
];

const columns = [{
  dataField: 'id',
  text: 'Product ID'
}, {
  dataField: 'name',
  text: 'Product Name'
}, {
  dataField: 'price',
  text: 'Product Price'
}];

const expandRow = {
  renderer: row => (

{ `This Expand row is belong to rowKey ${row.id}` }

{row.name}

expandRow.renderer callback will pass the origin row object to you

  ),
  onlyOneExpanding: true
}

export default class Table extends Component {
  render() {
    return(
      <BootstrapTable
        keyField='id'
        data={ products }
        columns={ columns }
        expandRow={ expandRow }
      />
    )
  }
}

@phen0menon I am not familiar with animation in React. Anyway, we didn't have this built-in feature, but PR is welcome, thanks

#861

Release https://react-bootstrap-table.github.io/react-bootstrap-table2/blog/2019/03/31/version-bump.html
Please let me know if the issue still remain, thanks


Regression in workbench.action.tasks.reRunTask behavior prior to running a task

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.83.0
OS Version: macOS Sonoma 14.0

Steps to Reproduce:

Open a new editor window
Run workbench.action.tasks.reRunTask before actually running a task

In the current VS Code release, this sequence of steps does nothing. In the previous VS Code release (18.2.3), the same sequence prompts the user to choose a task, as if workbench.action.tasks.runTask was run instead, which (at least in my opinion) was more intuitive than a no-op.
I found #193043, which seems to imply that this change was intentional. But the linked issue, #188805, describes a different bug, in which the command did not automatically select the last task after running a task once.
It seems to me that the ideal behavior would be the following:

If the user has already run a task, rerun that task
If the user hasn't run a task, prompt them to choose a task

I'm happy to look into this more and put in a PR if there's agreement.

It's a little complicated because if there's a task currently in progress, we don't want to prompt but also don't want to rerun it.
So I suggest this addition to what you describe above.

If there's a task in progress, no-op

Would accept a PR for this. Thanks

Thanks for the quick turnaround on this!


Approve in the Manual Approval Method

Hi Team,
I think "Approved" in the "Manual Approval Method" is meant to be "Approve"

Regards,
Hussein

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

ID: e83a737e-6585-b9e0-2a43-e834b09687db
Version Independent ID: 3887a517-ad52-5634-995b-b2a4183c7601
Content: Manage a Private Endpoint connection in Azure - Azure Private Link
Content Source: articles/private-link/manage-private-endpoint.md
Service: private-link
GitHub Login: @asudbring
Microsoft Alias: allensu

@halkazwini , thank you for your feedback. We'll review this and get back to you shortly!


[azservicebus] ASB client stopped receiving messages

Bug Report

pkg: github.com/Azure/azure-sdk-for-go/sdk/messaging/azservicebus

SDK version 0.4.0

GO version 1.18.1

What happened?

ASB client stopped receiving messages forever in its lifetime.
Since it same as a previous issue reported by me, I have added a comment. https://github.com/Azure/azure-sdk-for-go/issues/17408#issuecomment-1166454090

What did you expect or want to happen?

ASB client should be able to receive messages without any issue as long as the subscription has messages queued.

How can we reproduce it?

In our scenario, the message was not completed for like ~10-15 minutes as the application took a bit of time. (For each time, we observed the scenario, this has been a common pattern. But we could not reproduce it)

Anything we should know about your environment.
Our service is running on AKS

Thanks!
P.S.
I guess we could reopen https://github.com/Azure/azure-sdk-for-go/issues/17408, since it looks like the same issue.

From your log, I think you're seeing some of the fallout from this particular bug (#18323), where we weren't properly cleaning up our network connection. This was fixed in v1.0.1, so upgrading would be your easiest course, especially since this package has released its official GA.
There were two other fixes that you will get that could also be part of this problem:

#17893 - fixes an issue where we could potentially not return messages when we had them stored in an internal cache
#18291 - passes the associated-link-name to more calls, which can help extend link lifetime.

I'd recommend upgrading to this latest version. We're also close to releasing the next patch release (v1.0.2) next week but the fixes I've mentioned are in v1.0.1.


Remove docs plugin temporarily

There is a large memory leak and some bugs associated with the documentation plugin at the moment, so we need to disable it for the time being.

Looks good to me


is it CSV Writer includes this library ?

There is no CSV Writer included in Apache POI directly, but there are examples of how you can do it, see e.g. this post: https://stackoverflow.com/a/35717619/411846


Unnecessary barrier + possibly incorrect barriers?

You're moving both the storage buffers between the compute and graphics queues and vice versa, but only the storageBuffers.output.buffer is actually used on the graphics queue.
https://github.com/SaschaWillems/Vulkan/blob/44ff7a1a9dc51e8d70f5ee9e4d6175fdc2c36d82/examples/computecloth/computecloth.cpp#L188
Looking more closely at this, I think the logic in addComputeToComputeBarriers is wrong.  The loop in buildComputeCommandBuffer executes 64 times, using the descriptor set to swap which buffer is being read and which one is being written, but the addComputeToComputeBarriers only ever does one thing... it ensures that both the input and output buffers are going from a write state to a read state.
One barrier should be going from read to write, and the other should be going from write to read, and the next frame they should swap back, over and over until the loop is exited, at which point the cross-queue barriers come into play.

Sorry, I didn't realize you already had a global "rework sync" issue that would cover this here #871

I may have been the last one to touch this sync code, so I should probably try to answer your comments above:

You're moving both the storage buffers between the compute and graphics queues and vice versa, but only the storageBuffers.output.buffer is actually used on the graphics queue.

I think you may be right about this for the compute-to-graphics transition.

One barrier should be going from read to write, and the other should be going from write to read, and the next frame they should swap back, over and over until the loop is exited, at which point the cross-queue barriers come into play.

The only compute queue memory barriers that matter are the write-to-read barriers for the input buffers.  These are needed to ensure the previous stage write operations are completed before reads happen in the next stage of the pipeline (when the buffers flip from write-mode to read-mode).  That's why you only see write-to-read barriers in the code.  Read-to-write operations do not require memory barriers - these are execution based.  See https://github.com/KhronosGroup/Vulkan-Docs/wiki/Synchronization-Examples-(Legacy-synchronization-APIs) for more info.
I will have another look at the barriers, including the cross-queue ones, to see if any need correction or simplification (i.e. make sure masks are correct and get rid of unneeded barriers for buffers not involved in transitions).

After studying the existing code, the compute-to-compute buffer memory barriers are functional as is but could use some optimization based on your analysis above.  The write-to-read barrier is correct, but only needs to be applied to one of the buffers during each call, i.e. the one being written to.  There is no need to create a memory barrier for the other buffer which is being read from, since the same vkCmdPipelineBarrier() call provides an execution barrier which is enough.
The split queue transfer operations use access masks and pipeline stages for the graphics and compute queues.  For the graphics -> compute queue transfer I think it's better to use VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT instead of VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, and also use VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT for the access mask.  I am not sure if it makes much difference given that VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT is used in that barrier, but I would like to make this change for correctness.
Regarding the "extra" queue ownership transitions for input.buffer, it's true that it doesn't need to be moved back and forth between queues, but the action is harmless and does not cause performance issues.  I think it's better to just leave it alone for simplicity and consistency.
Thanks @jherico for pointing out these issues.  I will submit a PR that addresses them, and in addition adds double buffering for the compute queue for parallel operation with the graphics queue.  I always wondered why there were 2 compute command buffers defined, but only 1 was used.  I suspect the double buffering code was never completed.  I have completed this with a small number of changes primarily to the semaphores.  The results are quite interesting and speed up the fps for this example by ~50% on Windows, and >100% on Linux.  No change on macOS since there is no dedicated compute queue on that platform - it's shared with the graphics queue.
Here are some RenderDoc screen caps so you can see what is happening with the compute buffers in the compute-to-compute transitions (using my pending PR).  The purple triangles are the barriers, and they follow the yellow write operations.  The read operations are also marked in yellow, but they are not followed by barriers.  You can see how the barriers are interleaved for input.buffer and output.buffer.
For input.buffer:

For output.buffer

My experience with this is that when I corrected the barriers, the behavior changed drastically, specifically the amount of computed movement per frame increased.
I suspect that the current barrier setup may be sufficiently correct (or just too complicated) to satisfy the validation layers but is causing the computations in the 64-pass compute loop to be overwritten frequently.
I'll try to grab a local renderdoc capture and see if I can verify the issue.

There are now two pull request for this. Which one should a look into?


1.8.1 download missing Microsoft.Web.Infrastructure

I know 1.8.1 is old but it is still being used. I downloaded the zip file for 1.8.1 from github, unzipped, and opened it in vs2015. Out of the box this version of orchard doesn't work because it is missing this dependency
Could not load file or assembly 'Microsoft.Web.Infrastructure, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
I can run the following in the nuget package manager and it fixes it
Install-Package Microsoft.Web.Infrastructure
I would think you shouldn't need to run this? Maybe no one cares because it's an old version but at least it will be a known issue.

This problem doesn't exhibit itself when pulling code from source control. I am using VS2015 if that is helpful.


man filetype q quits

You cannot nnoremap q normal! q when filetype is set to man
try it...

vim

:set ft=man

q

--OR--

vim

:runtime ftplugin/man.vim

:Man vim

q

:verbose nmap q yields:
n  q           *@:q<CR>
        Last set from /usr/share/vim/vim80/ftplugin/man.vim

q should not quit, and if it "should," then you should be able to remap it back to normal! q

Workaround: can be overridden by setting no_man_maps (see :h no_plugin_maps, just different option name) before opening man files. The problematic line is https://github.com/vim/vim/blob/master/runtime/ftplugin/man.vim#L36 .

Yes I just solved this with help of someone on irc (probably you :stuck_out_tongue_closed_eyes:)
Thanks!


Noto Color Emoji Compat removed

Noto Color Emoji Compat seems to have been removed with version 3.0.0 and I think this is very unfortunate since it was the only font that provided colorful emojis. I am curious about the reason behind its removal and wanted to ask if it is possible to have it back in the next version?

Thanks for raising this. Since it is still available on fonts.google.com, we should also make it available. I asked the question internally (b/212601535) and will follow-up.

An update is planned in the coming weeks to add it back, I'll have more info then.

Great thanks!

I will wait it too :)

Right now :) https://pub.dev/packages/google_fonts

Wow!!!! Great


Revert "Attempt to combine separate beginText/endText sequences in getTextContent (issue 9984)"

Reverts mozilla/pdf.js#9986 for causing Mochitest failures, please refer to https://bugzilla.mozilla.org/show_bug.cgi?id=1488420#c2 and the following discussion.
/cc @timvandermeij
/cc @rvandermeulen

/botio test

I'll create an issue to look into why this is failing upstream, since I would like this functionality back, but I agree it's best to back it out for now so we can upstream.
/botio makeref


public/css/app.css undoes changes automatically

It seems like public/css/app.css automatically undoes some changes I make to the file, like when I add extra classes I need. Am I missing something about the working of the file? Or should I add these classes somewhere else?

if you are using laravel mix then yes the public/css/app.css file will be overwritten any time laravel mix runs
you must make the changes in resources/css/app.css as this is the source file that generates the one in the public folder
if you are using the new vite bundler then it's probably out of the scope of this package since it does not produce a file for public/css/app.css as it all happens through JS

I'm using Mix indeed, I will be trying to write it in resources/. Thank you for the advice!

authentication in jetstream is handled by fortify
checkout the docs here
https://laravel.com/docs/9.x/fortify#customizing-authentication-redirects


[WIP] DO NOT MERGE - Adds Opt Out to User profile

Adds a checkbox to the user profile and updates the email content to reflect Cynthia's changes. New column is added to the User table for the Boolean. Adds code to the jobs mailer to look for the value of the opt out checkbox and either sends or does not send the email based on user choice.
TODO:

[ ] checkbox set to true, user exists, and sends email
[ ] checkbox set to false and does not send email

Coverage increased (+0.02%) to 58.016% when pulling f3d8b95e17a6b8b23b6ffc35ecbf202cbef31b5f on i#1520-email-opt-out into 1494aa72b1e1247458f99ee38119fcbc11f223fe on develop.

@mtribone this is looking good to go to me... I put in a few comments to suggest some possible alternatives.


Change Request: One Image for all tags

As part of #375  I realized that sdk-container-builds creates a new image for every tag. I think it would be better to create only one single tar.gz with all tags set. This would:

Reduce the load needed to generate the tar
Reduce the load on the daemon side as only 1 docker load needs to happen
Eliminate the problem that one application currently has N output tars.

The change should be valid from a Docker Image Specification v1.2.0 side.

I agree, this would be a good change.
Separately, for the registry push code path we regenerate the entire image for each tag (this was very simple to add when it was initially done). I think we should instead push the layer and manifest blobs, and then push each separate tag blob. That would be a large performance improvement for multi-tag pushes.

Closing this as @Danielku15 contributed it in https://github.com/dotnet/sdk/pull/35138 for the .NET 8 release.


Print positive/negative time savings when build cache is used

Expected Behavior
Gradle could estimate the amount of time build-cache shaved from the build:
BUILD SUCCESSFUL in 275ms
1 actionable task: 1 from cache (saved ~42s)

I see that cache item metadata does include the time it took to build the task, so Gradle could take that and subtract from the actual task duration.
Current Behavior
BUILD SUCCESSFUL in 275ms
1 actionable task: 1 from cache

Context
I'm adding build-cache configuration to my Gradle build, and I want to know if the cache introduces a positive or negative impact.

Of course, there's a question on the verbosity of the output, however, let me show "the most verbose", then we can figure out if the output needs to be configurable and/or which fields should be printed.
Note: I'm not sure if "local cache" statistics should be included as well (it should probably be included if it exceeds 1-2 seconds).
BUILD SUCCESSFUL in 6s
1 actionable task: 1 executed
Remote cache saved: 0ms, wasted: 233ms, reads: 1, hits: 0, elapsed: 233ms, processed: 0 B
Remote cache writes: 1, elapsed: 121ms, sent to cache: 472 B

Remote cache reads:

saved: 0ms – the estimated time saved by the remote build cache (original_task_elapsed_time - from_cache_task_elapsed_time).
Note: this estimation does not account for parallel task execution. Negative estimation means it is
probably faster to build task from scratch rather than download the cached results.
wasted: 233ms – the amount of time spent for cache misses (==load request sent, but no entry found in the cache)
reads: 1 – number load requests to the remote cache
hits: 0 – number items loaded from the remote cache
elapsed: 233ms – total time spent on loading items from the remote cache
processed: 0 B – number of bytes loaded from the remote cache

Remote cache writes:

cache writes: 1 – number of store requests to the remote cache
elapsed: 115ms – time spent uploading items to the remote cache
sent to cache: 472 B – number of bytes sent to the remote cache

One more idea: at the end of the build, Gradle knows all the timings, and it knows build parallelism, and task dependencies. Then it can simulate "task graph execution" with both "cache enabled" and "cache disabled" timings.
This would provide a more accurate estimation of the impact of the caching on the build performance.
Of course, that estimation won't be right for worker-based tasks, however, it might be interesting to have something like "if you increase parallelism from 4 to 8, the expected build duration would reduce from 6min to 5min".
WDYT?

Thank you for the suggestion. Since this feature involves multiple builds on different machines and is more about tracking performance across builds this is more an enterprise feature. It adds more noise to the individual builds if you see those printouts on every build.
When trying out the build cache, you can use the free scans.gradle.com service for looking up the execution times. Or if you have a Gradle Enterprise installation, you can get this information and more.


[Bug] cache.ExportReplace is called with different partition key in 1.0

Which version of MSAL Go are you using?
Microsoft Authentication Library for Go 1.0.0-preview
Where is the issue?

Public client

[ ] Device code flow
[ ] Username/Password (ROPC grant)
[x] Authorization code flow

Confidential client

[ ] Authorization code flow
[ ] Client credentials:

[ ] client secret
[ ] client certificate

Token cache serialization

[ ] In-memory cache

Other (please describe)

[x] cache.ExportReplace

Is this a new or an existing app?
a. The app is in production and I have upgraded to a new version of Microsoft Authentication Library for Go.
What version of Go are you using (go version)?

$ go version
go version go1.20.4 darwin/arm64

What operating system and processor architecture are you using (go env)?
Observed reproducing on all OSes and amd64 + arm64.
Repro
In production, it affects cache.ExportReplace implementation in Azure/azure-dev: https://github.com/Azure/azure-dev/blob/main/cli/azd/pkg/auth/cache.go
Minimal repro:

git clone https://github.com/weikanglim/msal-export-replace.git
Skip this step to test observe MSAL 1.0 behavior on the default branch main. Run git checkout old to observe MSAL 0.81 behavior.
go run main.go
Sign in using the browser
Observe the log outputs

Expected behavior
In old version, 0.81 of msal-go, we observe that calling AcquireTokenInteractive (line 1-2), followed by AcquireTokenSilent results in the first Replace() call (line 5) from base.Client.AcquireTokenSilent with key = '':
1 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
2 Export(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
3 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AllAccounts
4 Export(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AllAccounts
5 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AcquireTokenSilent
6 Export(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AcquireTokenSilent

Actual behavior
In new version, 1.0 of msal-go, we observe that calling AcquireTokenInteractive (line 1-2), followed by AcquireTokenSilent results in the first Replace() call (line 4) from base.Client.AcquireTokenSilent with key = '<homeAccountId>':
1 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
2 Export(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
3 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AllAccounts
4 Replace(43bb7435-f8c4-4342-9788-fd15e454ea12.72f988bf-86f1-41af-91ab-2d7cd011db47): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AcquireTokenSilent

Possible solution
The production app, azd, currently stores the MSAL cache data on disk based on the key. Our current logic looks like:

publicCient.AcquireTokenInteractive - Acquire token. Export() will be called and the data will be stored on disk
publicClient.AcquireTokenSilent - Replace() should be called and read from the stored data on disk

However, because Replace(<homeId>) is being called instead of Replace(), we are seeing customer reports of our login flow failing immediately because AcquireTokenSilent is reading from a stale cache, with the following HTTP error observed:
2023/05/23 14:19:28 azd_credential.go:34: POST https://login.microsoftonline.com/organizations/oauth2/v2.0/token
--------------------------------------------------------------------------------
RESPONSE 400: 400 Bad Request
--------------------------------------------------------------------------------
{
  "error": "invalid_grant",
  "error_description": "AADSTS50173: The provided grant has expired due to it being revoked, a fresh auth token is needed. The user might have changed or reset their password. The grant was issued on '2023-03-20T18:55:38.2560432Z' and the TokensValidFrom date (before which tokens are not valid) for this user is '2023-03-29T18:39:41.0000000Z'.\r\nTrace ID: ******\r\nCorrelation ID: ****\r\nTimestamp: 2023-05-23 19:19:29Z",
  "error_codes": [
    50173
  ],
  "timestamp": "2023-05-23 19:19:29Z",
  "trace_id": "****",
  "correlation_id": "***",
  "error_uri": "https://login.microsoftonline.com/error?code=50173"
}
--------------------------------------------------------------------------------

The behavioral change is explained by this change in base.go, where a subtle re-sequencing of authParams.AuthorizationType = authority.ATRefreshToken is now before the Replace() call, and authParams.CacheKey reacts differently due to this line herelmnow that AuthorizationType is set to authority.ATRefreshToken
Questions:

Is the application implementation incorrect? How should a consumer library correctly handle ReplaceHints.PartitionKey (previously called key)?
Is it expected that AcquireTokenSilent with the same publicClient and account results in Replace() being called with a different partition key?

Additional context / logs / screenshots
Add any other context about the problem here, such as logs and screenshots.

RE: How does multitenancy play in to this, if at all?

This is an interesting issue, thanks for opening it. I believe the old behavior--suggesting a partition key for OBO data only--was incorrect and that azd can ignore the suggestion in any case.
Applications decide whether to partition an external cache. MSAL suggests a key but has no opinion on how applications use it. Partitioning is important for OBO data because the application doesn't get user account information in that flow, however this isn't the only scenario in which it makes sense to partition the cache. For example, a web app may distribute cache data across some number of databases.
My naive belief is that azd, being a CLI application, has nothing to gain by partitioning its cache and can therefore just ignore the suggested key. It isn't necessarily harmful to partition the cache, however I imagine a change in partitioning between azd versions would probably force users to reauthenticate after upgrading. I don't see a connection between partitioning and the AAD error you shared though, so perhaps I'm missing something important about azd's cache.

RE: How does multitenancy play in to this, if at all?

Can you elaborate some more? I don't see a connection.

Is it expected that AcquireTokenSilent with the same publicClient and account results in Replace() being called with a different partition key?

No; is that happening? I expect the key to be the user's home account ID.

Partitioning is important for OBO data because the application doesn't get user account information in that flow, however this isn't the only scenario in which it makes sense to partition the cache. For example, a web app may distribute cache data across some number of databases.

That makes sense.

I don't see a connection between partitioning and the AAD error you shared though, so perhaps I'm missing something important about azd's cache.

The connection here, based on my observations are:

azd is currently using the suggested key not as a partitioning key, but strictly as a lookup key. This is a bug in azd's implementation.
When a user triggers the interactive login flow, the login flow fails due to stale cache reading, due to the sequence of calls observed below:

1 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
2 Export(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AuthResultFromToken
3 Replace(): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AllAccounts
4 Replace(43bb7435-f8c4-4342-9788-fd15e454ea12.72f988bf-86f1-41af-91ab-2d7cd011db47): called from github.com/AzureAD/microsoft-authentication-library-for-go/apps/internal/base.Client.AcquireTokenSilent

Which results in the following behavior:

Step 1 and 2 are indirect calls from AcquireTokenInteractive, which populates a cache with lookup  key = "".
Step 4 is coming from AcquireTokenSilent, which is what azd relies on to not prompt the user in-between CLI commands. It reads from the cache with lookup key = "{homeAccountId}". This was never updated in the login flow, and is potentially stale.

This used to work by coincidence, simply because Step 4 was previously a call to Replace("") and not Replace("{homeAccountId}").

Is it expected that AcquireTokenSilent with the same publicClient and account results in Replace() being called with a different partition key?
No; is that happening? I expect the key to be the user's home account ID.

Incorrect statement on my part. In the linked code example, it is AcquireTokenInteractive, providing no partition key hints, but AcquireTokenSilent does. I'm definitely not confident to suggest anything wrong here, just curious what's the expected behavior.

@chlowell Absolutely. Sorry, was late on this update -- but we had went ahead with the change to remove the logic that treated partitioning as the lookup key.
On a side note: Is cache.ExportReplace the stable interface? I can submit a issue / PR to try to maybe update the interface documentation to contain some of the considerations an implementor might think about based on our learnings.

Great, I'm glad azd is unblocked.
The v1.0.0 API including cache.ExportReplace is stable, please feel free to contribute doc updates.

@weikanglim could you update the docs with your findings? I am facing the same issue and solved it with hardcoding the key by ignoring the suggested key, what was your approach?

@phanirithvij Sorry, haven't come around to this. As @chlowell suggests above:

Applications decide whether to partition an external cache. MSAL suggests a key but has no opinion on how applications use it. Partitioning is important for OBO data because the application doesn't get user account information in that flow, however this isn't the only scenario in which it makes sense to partition the cache. For example, a web app may distribute cache data across some number of databases.

The key is meant as a suggested partitioning key for an external cache. In our CLI, using it as a lookup key for the user was incorrect, and we modified the logic to avoid using the key in this manner (change here).


Leverage the new deeplink to the Hunger Games Eco-Score dashboard by country

Problem

We now have the ability to receive a country parameter in the Eco-Score dashboard: https://hunger.openfoodfacts.org/eco-score?cc=en%3Afrance
Leverage the new deeplink to the Country Eco-Score Dashboard by adding a shortcut "Help categorize products in your country" based on the current app country in "Welcome User" section.

@teolemon @stephanegigandet Country parameter en:france instead of fr is really a pain in the neck.

it would be more @alexfauquette

It's the id used in https://static.openfoodfacts.org/data/taxonomies/countries.json
But I could look to accept both the id and the country code with 2 letters

@monsieurtanuki
This url is now working :tada:  https://hunger.openfoodfacts.org/eco-score?cc=uk

Thank you @alexfauquette!
I need to check how resilient we are with url redirections. I'll keep you posted.


translating both ways?

hello!
first of all, THANK YOU!
The extension is really useful for me to communicate with spanish speaking friends.
I use it to translate from english to spanish with the deepl api. its great!
just one thing is a bit annoying.. when I need to translate spanish to english, I still need to do it manually,
because I can't find a way to make a second install of the extension to then have another hotkey
and translate english back to spanish..
do you have any suggestions to make translation possible in both ways?
many thankx
Dan

I'm working on it... 😊

I'm very excited. I added two more options, to paste the content of the clipboard automatically and to translate automatically....

Updated in version 9....

ohhhhh wow...  that will help me a lot, if it works well in gnome 44 / ubuntu 23.04 , I will make a donation for you for this very helpful tool!!

hi again, I updated the extension, but I cannot see the "Auto options" configuration tab in the settings.. and how would the translation from spanish back to english work exactly?

ahhh I have version 8 installed.. which is the one available from the gnome extensions page.. how do I get the version 9?

I hope new version will be reviewed in the next hours.... So, I suggest you wait until that.
Thank you

I would like to bring this topic back, this would be the jewel in the crown :)
if its implemented already, I have not understood how to make it work
suggestion:
it would be great to define 2 hotkeys:

one for translating in the original configuration, like for me: English to Spanish - can be CRTL-SHIFT-Y for example
and the second one, would translate from Spanish to English: CRTL-SHIFT-X for example
that would be great!!


[docs] Add tip to help access the docs of a previous version when finding answers in StackOverflow

[x] I have followed (at least) the PR section of the contributing guide.

Tackles the problem reported at https://github.com/mui-org/material-ui/issues/29764.
This tip could be generally helpful, not only when in this StackOverflow use-case, so wondering if we should place it somewhere else. Open to suggestions :)
Deploy preview: https://deploy-preview-30101--material-ui.netlify.app/getting-started/support/#stackoverflow

Are we good for merging it? Do you have any additional consideration?


[RegNeRF] Possible incorrect formula in the Arxiv preprint paper

Thanks for this wonderful work.
The space annealing formula (13) is different between the google drive and arxiv version.
Google drive:

arixv

Since Ps stands for "start range" and the sampling region should be lied in [t_near, t_far], I think google drive version is correct.

Yes, correct, we updated this in the second paper version but the arxiv version is still the old one. Thanks for the pointer, we will update the arxiv paper soon!


GTED integration master plan

Code changes

[x] Add a Major model to represent a single major with the below attributes:

Display name (ex Computer Science), nullable
GTAD group name (ex cs_cs), not nullable
Whitepages OU (ex CS), nullable

[x] Add a many-to-many relationship between Users and Majors

Relationship should have timestamps so that we can track when Majors were attached/detached from Users

[x] Add a create_reason field to Users defaulting to cas(for initial data load) and then no default for normal operation
[x] Add a has_logged_in field to Users defaulting to true (for initial data load) and then false for normal operation
[x] Add a primary_affiliation field to Users
[x] Add a last_login_timestamp field to Users defaulting to null
[x] Represent the above information in Nova with options to edit
[x] Add a buzzapi queue to Horizon
[x] Add a job to create users given a GTID (#815) running in the buzzapi queue
[x] Add a job to create users given a gatech.edu email address running in the buzzapi queue
[x] Add a job to pull major data for a user given a GTID (for chaining with above) running in the buzzapi queue
[x] Add a step during CAS login to update major information from attributes (probably want a findOrCreate method for Majors)
[x] Queue user creation when recruiting visits are created
[x] Queue user creation when attendance is created
[x] Queue major update when users are created
[x] Add API support (and documentation) for the Major model
[x] Update resume book generation job to support cached Majors and make a Major selectable in the generation job

One-off tasks

[x] Run user creation job for any attendance records with no user information
[x] Run user creation job for any recruiting visit that can't already be associated to a user in the DB
[x] Import dues payment information as far back as available
[x] Run major pull job for all users

All work has been completed, deprioritized, or split to separate issues.

All work has been completed, deprioritized, or split to separate issues.


Canvas consume Memory & GPU

I noticed that on my laptop the GPU and the memory is very solicited by the use of the canvas. And so the fans are running at full speed.
There is a way to reduce this consumption, please ?
Thank you for your support and help.
BR

You can try with my newly-developed module, which solves this issue by implementing chunks and drawing buffer.
https://github.com/phantom0174/canvas-nice.js
Hope this helps.


_zsh_autosuggest_bind_widget:zle:47: widget name `.foo' is protected

Describe the bug
This is probably more a cry for help than an autosuggest bug.. any guidance as to what this error message means would be really appreciated before this bug is rightly closed as 'not repeatable'
I am not able to repeat when I only source autosuggest.
On this specific OS (see below) - after a series of 'cd' and 'ls' commands the console will start to see the following on every command:
_zsh_autosuggest_bind_widget:zle:47: widget name `.foo' is protected
repeated across many widgets (see bottom of bug for the real and complete list)
Repeating commands can make this error message appear and disappear.
Sometimes the error doesn't appear immediately - it takes a series of command line commands before it appears .. then it gets stuck - so it appears on every command .. and then after another series of 'cd' and 'ls' or other simple commands .. it eventually disappears. Only to again appear later.
This makes the usual technique of removing lines from the rc file to find the offender really challenging.
So far the only sure-fire way to get rid of the error message is to comment out autosuggestions -- and I don't want to do that!
Also worth noting that I use this same rc file across a number of different machines / OS; I only have this issue on one OS: Oracle Linux 7 (see below for details)
To Reproduce
Steps to reproduce the behavior:
load the rc file posted here: https://github.com/SeanOBoyle/zshrc on an Oracle Linux 7 machine. Type commands until the error message appears.

% zsh -df
% source path/to/zsh-autosuggestions.zsh
% ... # what do you do to reproduce?

Not able to reproduce when I only source autosuggestions.
Expected behavior

Screenshots
NA
Desktop

OS + distribution: Oracle Linux Server release 7.9 (3.10.0-1160.24.1.el7.x86_64)

Zsh version: 5.0.2

Plugin version: commit a411ef3e0992d4839f0732ebeb9823024afaaaa8

Additional context
Full Error Output:
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-and-hold' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-and-infer-next-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-and-menu-complete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-line-and-down-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.accept-search' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.argument-base' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.auto-suffix-remove' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.auto-suffix-retain' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-delete-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-delete-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-kill-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-kill-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.backward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.beep' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.beginning-of-buffer-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.beginning-of-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.beginning-of-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.beginning-of-line-hist' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.capitalize-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.clear-screen' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.complete-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.copy-prev-shell-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.copy-prev-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.copy-region-as-kill' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.delete-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.delete-char-or-list' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.delete-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.describe-key-briefly' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.digit-argument' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.down-case-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.down-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.down-line-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.down-line-or-search' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.emacs-backward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.emacs-forward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.end-of-buffer-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.end-of-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.end-of-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.end-of-line-hist' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.end-of-list' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.exchange-point-and-mark' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.execute-last-named-cmd' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.execute-named-cmd' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.expand-cmd-path' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.expand-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.expand-or-complete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.expand-or-complete-prefix' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.expand-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.forward-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.forward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.get-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.gosmacs-transpose-chars' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-beginning-search-backward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-beginning-search-forward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-incremental-pattern-search-backward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-incremental-pattern-search-forward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-incremental-search-backward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-incremental-search-forward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-search-backward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.history-search-forward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.infer-next-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.insert-last-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.kill-buffer' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.kill-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.kill-region' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.kill-whole-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.kill-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.list-choices' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.list-expand' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.magic-space' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.menu-complete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.menu-expand-or-complete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.menu-select' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.neg-argument' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.overwrite-mode' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.pound-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.push-input' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.push-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.push-line-or-edit' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.quote-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.quote-region' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.quoted-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.read-command' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.recursive-edit' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.redisplay' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.redo' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.reset-prompt' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.reverse-menu-complete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.run-help' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.self-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.self-insert-unmeta' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.send-break' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.set-local-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.set-mark-command' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.spell-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.transpose-chars' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.transpose-words' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.undefined-key' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.undo' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.universal-argument' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.up-case-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.up-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.up-line-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.up-line-or-search' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-add-eol' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-add-next' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-backward-blank-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-backward-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-backward-delete-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-backward-kill-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-backward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-beginning-of-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-caps-lock-panic' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-change' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-change-eol' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-change-whole-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-cmd-mode' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-delete' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-delete-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-digit-or-beginning-of-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-down-line-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-end-of-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-fetch-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-find-next-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-find-next-char-skip' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-find-prev-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-find-prev-char-skip' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-first-non-blank' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-forward-blank-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-forward-blank-word-end' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-forward-char' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-forward-word' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-forward-word-end' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-goto-column' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-goto-mark' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-goto-mark-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-history-search-backward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-history-search-forward' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-indent' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-insert-bol' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-join' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-kill-eol' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-kill-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-match-bracket' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-open-line-above' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-open-line-below' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-oper-swap-case' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-pound-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-put-after' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-put-before' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-quoted-insert' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-repeat-change' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-repeat-find' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-repeat-search' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-replace' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-replace-chars' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-rev-repeat-find' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-rev-repeat-search' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-set-buffer' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-set-mark' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-substitute' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-swap-case' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-undo-change' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-unindent' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-up-line-or-history' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-yank' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-yank-eol' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.vi-yank-whole-line' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.what-cursor-position' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.where-is' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.which-command' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.yank' is protected
_zsh_autosuggest_bind_widget:zle:47: widget name `.yank-pop' is protected

In the same boat....
I'm trying to see what could cause it - there another bug around this plugin conflicting with syntax highlighting #673 . On a whim, I've disabled syntax highlighting - and at least it's not crapped out for the last 10 mins

I'm getting this as well, haven't figured out what's going on yet;.

I'm now seeing this issue with Ubuntu 20.04.4 LTS.
(Previously I had only seen the issue on the somewhat archaic Oracle Linux 7.)

+1

+1 let me pile on, I get this on Ubuntu 22.04 LTS, as well (zsh version zsh 5.8.1 (x86_64-ubuntu-linux-gnu))

It’s very strange. I have the same .zshrc on four computers (one Mac and three Debian) and it only happens on one of the Debian boxes. All running the same version of zsh.
I also use syntax highlighting, Will try disabling that and see if it makes a deference.

Yeah, it doesn't seem dependent on zsh version, maybe there are some specific system level scripts/compilation options that are done on ubuntu/debian?

I looked into this issue last week, https://github.com/brookhong/zsh-autosuggestions/commit/66aa318713277cb66676f77d63fb2696b54882df seems to have fixed the issue for me.

I looked into this issue last week, brookhong@66aa318 seems to have fixed the issue for me.

This seems to have fixed it for me, thanks!!!


fix(docs): Clarify content on portals

Updates info on portal contracts.
Also:

also adds a robots.txt file
renames the Sandbox Reference section to Sandbox. It's already nested under the Reference section and we had 2 pages with the same name
Removes some duplicate info from the Sandbox Reference page
Moves the Core Components page above the Concepts section in the top header

closes: https://github.com/AztecProtocol/dev-rel/issues/262

There is already a good how-to in the docs. I just updated it.

Docs Preview
Hey there! 👋 You can check your preview at https://6645031d8327725b562dfe12--aztec-docs-dev.netlify.app

Benchmark results
Metrics with a significant change:

protocol_circuit_input_size_in_bytes (public-kernel-setup): 92,520 (-16%)
tx_pxe_processing_time_ms (0): 19,898 (-29%)
tx_sequencer_processing_time_ms (0): 734 (-21%)
app_circuit_proving_time_in_ms (Test:emit_nullifier): 2,395 (+42%)
app_circuit_proving_time_in_ms (FPC:fee_entrypoint_public): 13,539 (+62%)
protocol_circuit_witness_generation_time_in_ms (base-parity): 192 (+83%)
protocol_circuit_witness_generation_time_in_ms (public-kernel-app-logic): 306 (+21%)
protocol_circuit_witness_generation_time_in_ms (base-rollup): 6,449 (+29%)
protocol_circuit_witness_generation_time_in_ms (public-kernel-tail): 493 (-25%)
protocol_circuit_witness_generation_time_in_ms (public-kernel-teardown): 292 (-25%)
protocol_circuit_proving_time_in_ms (base-parity): 8,105 (+193%)
protocol_circuit_proving_time_in_ms (public-kernel-app-logic): 422 (-45%)
protocol_circuit_proving_time_in_ms (public-kernel-setup): 539 (-34%)
protocol_circuit_proving_time_in_ms (root-parity): 112,226 (+179%)
protocol_circuit_proving_time_in_ms (public-kernel-tail): 650 (-16%)
protocol_circuit_proving_time_in_ms (public-kernel-teardown): 584 (-41%)
protocol_circuit_proving_time_in_ms (base-rollup): 102,372 (+137%)
protocol_circuit_proving_time_in_ms (merge-rollup): 2,194 (+43%)
protocol_circuit_proving_time_in_ms (root-rollup): 12,467 (+53%)
protocol_circuit_proof_size_in_bytes (public-kernel-app-logic): 75,379 (-17%)
protocol_circuit_proof_size_in_bytes (public-kernel-setup): 74,993 (-17%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
64 txs

l1_rollup_calldata_size_in_bytes
740
740
740

l1_rollup_calldata_gas
6,692
6,668
6,668

l1_rollup_execution_gas
586,877
586,853
586,853

l2_block_processing_time_in_ms
1,611
6,047
12,028

l2_block_building_time_in_ms
27,273 (+1%)
107,383 (+1%)
214,410 (+1%)

l2_block_rollup_simulation_time_in_ms
27,088 (+1%)
106,739 (+1%)
213,036 (+1%)

l2_block_public_tx_process_time_in_ms
11,246 (+1%)
44,606 (+1%)
88,675 (+1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
18,152 (-1%)
33,569 (-1%)

node_database_size_in_bytes
22,904,912
39,559,248

pxe_database_size_in_bytes
29,868
59,425

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
512 leaves
1024 leaves
2048 leaves
4096 leaves
32 leaves

batch_insert_into_append_only_tree_16_depth_ms
12.9 (-2%)
21.0 (-2%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.7
31.8
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.753 (-2%)
0.648 (-2%)
N/A
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
61.1 (-1%)
97.2 (-2%)
317
605 (-1%)
1,193
2,364
N/A

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
543
1,055
2,079
4,127
N/A

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.628 (-1%)
0.602 (-2%)
0.577
0.566 (-1%)
0.567
0.565
N/A

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
72.9 (-1%)
143 (-1%)
455
887 (-1%)
1,765 (-1%)
3,534
N/A

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
106
208
692
1,363
2,707
5,395
N/A

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.635 (-1%)
0.644
0.618
0.613 (-1%)
0.614 (-1%)
0.615
N/A

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
80.1 (-1%)

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
109 (+1%)

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
0.703 (-1%)

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
67,765 (-1%)
1,052,713

Transaction size based on fee payment method
| Metric |  |
| - |  |
Transaction processing duration by data writes.

Metric
0 new note hashes
1 new note hashes
2 new note hashes

tx_pxe_processing_time_ms
:warning: 19,898 (-29%)
3,065 (-1%)
91,804 (+2%)

Metric
0 public data writes
1 public data writes
2 public data writes
4 public data writes
8 public data writes

tx_sequencer_processing_time_ms
:warning: 734 (-21%)
1,115
1,163 (-8%)
1,949 (-3%)
1,293 (-5%)


feat(tag-filtering): enable tag filtering metrics

Enabling tag based filtering metrics

Hello
I am trying to enable tag based filtering metrics.
It can be used but i make it to not be mandatory, please review my code and lets discuss this option.
Thank you

Hi @pavelsidla, thank you for this nice PR! I think it is indeed helpful. Maybe later we can make it more generic and work for other kinds of filters (e.g., Dimensions). For this PR, I think it is good to just work on tag filters.
My key suggestion is to make the configuration like the following, what do you think?
metrics:
  tag_filters:
    - tag_key: 'my_org:team' # because it is possible to have such tags in AWS, we may need this config format to support them
      tag_values:
        - dev-team-1
        - dev-team-2
    - tag_key: EnvironmentName
      tag_values:
        - dev

Hello i made change in code to allign it with your requirements. Please check if its ok :)

Hello i am sorry for mistakes ill fix them tomorrow, and thank you for make that suggestions!


Windows Hello opens in background

Environment
Windows build number: 10.0.18363.836
Windows Terminal version: 1.0.1401.0
Ubuntu 20.04 / 18.04 / 16.04 on WSL1
Windows Hello PAM for Linux 1.2

Steps to reproduce

Install and configure Windows Hello PAM for Linux 1.2 on Ubuntu 20.04 / 18.04 / 16.04 https://github.com/nullpo-head/WSL-Hello-sudo
In Windows Terminal on Ubuntu run for the first time any sudo command.
Windows Hello opens in the background and fingerprint scanner gets activated, but Windows Hello does nothing until you activate the window with Windows Hello.

I'm experiencing this issue since I started using Windows Terminal 0.6, while it works without any issue in ConEmu 191012[64] or any earlier version that I used since 3 years.

Expected behavior

Windows Hello opens in the foreground and recognizes the fingerprint from the scanner.
Actual behavior

Windows Hello opens in the background and fingerprint scanner gets activated, but Windows Hello does nothing until you activate the window with Windows Hello.

I'm gonna guess that this is is actually #2988. That's the issue tracking most of the z-order problems the Terminal sometimes has.
/dup #2988

After updating Windows 10 to 20H2 and installing the following two updates, the problem has disappeared for me

https://support.microsoft.com/en-us/help/4578968/kb4578968-cumulative-update-for-net-framework
https://support.microsoft.com/en-us/help/4579311/windows-10-update-kb4579311


How can I use web fonts / google fonts?

Hi,
I want to use Google Fonts, which (from the forums) looks like it's supported, but I'm not clear on how to go about adding it.
Here's a quick JSFiddle that works. Sort of.
It loads two fonts from Google (Indie Flower and Scheherazade for English and Arabic respectively). When you load the fiddle in Chrome (Windows and Ubuntu), you don't see the fonts apply until you resize the windows. If you hit "Run" about ten times, you should see the fonts apply approximately twice.
This is also probably specific to JSFiddle, but I had to import the fonts through JS, which is ugly:
WebFontConfig = {
    google: { families: [ 'Scheherazade::arabic,latin', 'Indie+Flower::latin' ] }
  };
  (function() {
    var wf = document.createElement('script');
    wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
      '://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
    wf.type = 'text/javascript';
    wf.async = 'true';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(wf, s);
  })();

My specific questions:

Is this the right way to include web fonts (minus how I loaded them)?
Is there a work-around for the refresh issue?

According to a stackoverflow answer the fonts are loaded asynchronously. You can add the active callback to the WebFontConfig object once the fonts are loaded. This is good point in time to setup the font entity. See the updated jsfiddle - seems to work for me on Win64 Firefox and Chrome.
WebFontConfig = {
    google: { families: [ 'Scheherazade::arabic,latin', 'Indie+Flower::latin' ] },
    /* code to execute once all font families are loaded */
    active: function() {
      Crafty.scene("main");
    }
};

That's awesome, thanks.
So is this the right/best/recommended way to use google fonts?

Probably :). I just learned about it, so don't know much about it, but you may find additional information on typekit/webfontloader.

Great, thanks. (It would be wonderful if you could document this somewhere.)

Added to Wiki FAQ - you could explain it in more detail there if you'd like to; and as an example.

That's excellent, thanks.


Content length of post should be byte length and not char length

This looks fine to me. @JoeChapman @easternbloc @daniel-ac-martin

Anyone? @JoeChapman @easternbloc @daniel-ac-martin @joefitter

:shipit:

Sorry for forgetting about this one. :shipit:


Updated ImageMagick to version <IP_ADDRESS>.

[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?

[x] Does your manifest conform to the 1.2 schema?

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

Microsoft Reviewers: Open in CodeFlow

[Policy] reset feedback

@wingetbot run

Close with reason: Superseded by #95677;

Duplicate of #95677

Apologies for the tag, I wanted a way to close the PR since Close with reason command was not working


bundle check does not return non zero exit number in Bundler 1.17.1

According to the website: https://bundler.io/man/bundle-check.1.html

check searches the local machine for each of the gems requested in the Gemfile. If all gems are found, Bundler prints a success message and exits with a status of 0.
If not, the first missing gem is listed and Bundler exits status 1.

When I change a gem version in the Gemfile without running bundle install or bundle update I get the following message from bundle check:
Bundler can't satisfy your Gemfile's dependencies.
Install missing gems with `bundle install`.

And the exit status is always 0.
This is not the desired behavior.  I need the exit status to be a non-zero number at least.
Environment
Bundler             1.17.1
  Platforms         ruby, x86_64-linux
Ruby                2.5.3p105 (2018-10-18 revision 65156) [x86_64-linux]
  Full Path         /home/user/.rvm/rubies/ruby-2.5.3/bin/ruby
  Config Dir        /home/user/.rvm/rubies/ruby-2.5.3/etc
RubyGems            2.7.7
  Gem Home          /home/user/.rvm/gems/ruby-2.5.3
  Gem Path          /home/user/.rvm/gems/ruby-2.5.3:/home/user/.rvm/gems/ruby-2.5.3@global
  User Path         /home/user/.gem/ruby/2.5.0
  Bin Dir           /home/user/.rvm/gems/ruby-2.5.3/bin
Tools
  Git               2.17.1
  RVM               1.29.4 latest
  rbenv             not installed
  chruby            not installed
  rubygems-bundler  (1.4.5)

Bundler Build Metadata
Built At          2018-10-25
Git SHA           2760d72d3
Released Version  true

Bundler settings
gem.test
  Set for the current user (/home/user/.bundle/config): "minitest"
gem.mit
  Set for the current user (/home/user/.bundle/config): true
gem.coc
  Set for the current user (/home/user/.bundle/config): false

Hmm… This seems to be happening with the fish shell and not with bash.  Which is strange because everything else in the fish shell works as expected.
fish -c "bundle check; echo \$status"
# Bundler can't satisfy your Gemfile's dependencies.
# Install missing gems with `bundle install`.
# 0

bash -c "bundle check; echo \$?"
# Bundler can't satisfy your Gemfile's dependencies.
# Install missing gems with `bundle install`.
# 1

Wow, that's super weird... :open_mouth:.

I have a feeling that this is a bug with Ruby
colby@Macbook ~/D/plugin_test> irb
irb(main):001:0> exit 1

colby@Macbook ~/D/plugin_test> echo $status
0

colby@Macbook ~/D/plugin_test> ruby --version
ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-darwin18]


Pass Coingecko API key to CI

Shouldn't CoingeckoClient support retries too?

The problem is that it was mostly test timeouts not an explicit API error, so retries wouldn't have helped


Docker jupyter notebook

Please integrate jupyter notebook in your docker image , it would be easier than using bash command line .

any update on this one

Hi @aamir-gmail - we'll plan to update the docker image to include Jupyter Notebook. Thanks for adding the issue! cc: @cragwolfe

This was added in #651


Update free-programming-interactive-tutorials-en.md

Added many tutorials by w3schools
Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo
For resources
Description
Why is this valuable (or not)? It is all rounder resource. It contains interactive tutorials, coding playgrounds of most of the languages.
How do we know it's really free? You do not even need email account to use it.
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Not a duplicate
[ ] Included author(s) if appropriate
[x] Lists are in alphabetical order
[ ] Needed indications added (PDF, access notes, under construction)

Could you please make the additions more consistent?
You've written the resources in 3 different ways despite all of them coming from the same place.
I'd vouch just [Xyz Tutorial]({link}) - W3Schools would be fine for all of them.
Also could we write W3Schools with the correct capitalization.

Could you please make the additions more consistent?
You've written the resources in 3 different ways despite all of them coming from the same place.
I'd vouch just [Xyz Tutorial]({link}) - W3Schools would be fine for all of them.
Also could we write W3Schools with the correct capitalization.

Thank you for your suggestion.


Retries reporting

Describe the solution you'd like
Now since Cypress version 5.x.x when test retries is more of a first-class feature, it would make sense to report retries per test as custom test metadata, and the total number of retries as a build statistic.

Yeah, for sure. I missed it. I will add it next week 😉


Sometimes "Congratulations!" Page Displays Double Time Stats

I can reproduce the bug by clicking on a finished deck which pops up the congratulations page, going back to the overview screen, and clicking on a **different** completed deck. That always displays double stats as seen in the picture for me.
If I do the exact same thing, but instead click on the same deck it goes away.

Should be resolved in the next update. Thanks for reporting!


Api rate limit attributes should be int, not str

I stumbled across this while trying to prevent a script from bumping up against the rate limit all the time, but the rate limit attributes (which are fundamentally integral in nature) should in fact be integers.
I happened to be just plainly comparing them to an int, to see if I had enough requests remaining, but the strs were always comparing greater than or equal to n.

Hi @jdagilliland.
Thanks for the report. You are right, we should fix this.
As far as I can tell, library only stores values returned from server in headers, which are always strings, without any processing. So, properties limit and remaining should be converted to int and reset_time should be datetime object to be useful.
It will be fixed in next release. For now, I guess you can, as workaround, convert value yourself (int(api.limit) should suffice and will not break once we fix this).


fix(userspace/falco): accept 'Content-Type' header that contains "application/json", but it is not strictly equal to it

Signed-off-by: Federico Di Pierro<EMAIL_ADDRESS>What type of PR is this?
/kind bug
Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area engine
What this PR does / why we need it:
Do not strictly require "application/json" content-type string in k8s_audit_handler::handlePost(); instead, accept any Content-Type that has "application/json" in it.
Which issue(s) this PR fixes:
Fixes #1702
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
fix(userspace/falco): accept 'Content-Type' header that contains "application/json", but it is not strictly equal to it

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: FedeDP
To complete the pull request process, please assign fntlnz after the PR has been reviewed.
You can assign the PR to them by writing /assign @fntlnz in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 6075d7e89af99d770fc100ca4cc7bea71c85abaa

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/milestone 0.31.0


Centos Support

Hi,
Does this tool supports CentOS and RedHat systems?
By the looks of it, secure logs are not supported.
Warm Regards

Hello @mwfaizel, thank you for the issue creation, let me check this request, and if possible will implement it to the next update :)


docs(guild): add DEVELOPER_SUPPORT_SERVER feature

Summary
This documents the new DEVELOPER_SUPPORT_SERVER guild feature. Implements https://github.com/discord/discord-api-docs/pull/5572
Checklist

[ ] If code changes were made then they have been tested.

[ ] I have updated the documentation to reflect the changes.
[ ] I have run task pyright and fixed the relevant issues.

[ ] This PR fixes an issue.
[ ] This PR adds something new (e.g. new method or parameters).
[ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
[x] This PR is not a code change (e.g. documentation, README, ...)

Could you add it to here too?
https://github.com/nextcord/nextcord/blob/a856817de5ceb4c258079f637044f8c60c4f52cf/nextcord/types/guild.py#L59

Added in b49c7baf82dbfda4d04a0b850d27c47a74c7a2fe 🙂


ERR Error running script (call to f_9401052d872adfd0179ef8c8e8c028512707629a):

Expected behavior
Actual behavior
Steps to reproduce or test case
Redis version
Redisson version
Redisson configuration

error

What are the steps to reproduce it?


Codechange: Introduce variables for the external lua references, for easier customization

Wanted to use an installed lua version, so the lua paths were wrong at several places.
Added some variables to make it easier to point to other files instead.
The program doesn't work for CorsixTH though, I guess it has too many custom extensions that confuses the checker.

(This repo is just a mirror of the google code repo of the same name).  However, since that is stale and read-only at this point, I'll accept the changes.  Thanks -- LGTM.


debug/buildinfo: timeout in Read

What version of Go are you using (go version)?

$ go version
go version go1.17.6 darwin/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/catena/Library/Caches/go-build"
GOENV="/Users/catena/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/catena/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/catena/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.17.6"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/catena/go/src/github.com/catenacyber/go/src/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/pp/dc1dtf9x2js3v0jx_m010nqr0000gn/T/go-build4237848497=/tmp/go-build -gno-record-gcc-switches -fno-common"
GOROOT/bin/go version: go version go1.17.6 darwin/amd64
GOROOT/bin/go tool compile -V: compile version go1.17.6
uname -v: Darwin Kernel Version 21.3.0: Wed Jan  5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_X86_64
ProductName:	macOS
ProductVersion:	12.2.1
BuildVersion:	21D62
lldb --version: lldb-13<IP_ADDRESS>
Apple Swift version 5.6 (swiftlang-<IP_ADDRESS>3.62 clang-13<IP_ADDRESS>)
gdb --version: GNU gdb (GDB) 9.1

What did you do?
Run https://go.dev/play/p/IZmSLdUzIaS?v=gotip
What did you expect to see?
The program finishing and printing Hello
What did you see instead?
timeout running program

Program exited.

Found by https://github.com/catenacyber/ngolo-fuzzing on oss-fuzz
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=51153

CC @golang/compiler

it timeout on the playground because the for loop below never exits.
The value of i on line 159 is 1, and the result of i+buildInfoAlign-1)&^buildInfoAlign on line 167 is 0. So on line 167 the data slice is not changed. Then it enters the next loop with the same data slice. So the loop never exits.
The purpose of line 167 is data = data[n:] where n is the smallest number that fulfills n >= i && n % buildInfoAlign == 0 (namely, n should be 16, 32, 48, ...).
It's obviously there is a typo. The expression should be: data = data[(i+buildInfoAlign-1)&^(buildInfoAlign-1):]
https://github.com/golang/go/blob/54182ff54a687272dd7632c3a963e036ce03cb7c/src/debug/buildinfo/buildinfo.go#L154-L168

Here are other places that use the same pattern:
https://github.com/golang/go/blob/54182ff54a687272dd7632c3a963e036ce03cb7c/src/cmd/cgo/gcc.go#L2995-L2996
https://github.com/golang/go/blob/54182ff54a687272dd7632c3a963e036ce03cb7c/src/cmd/compile/internal/ssa/writebarrier.go#L538-L541
https://github.com/golang/go/blob/54182ff54a687272dd7632c3a963e036ce03cb7c/src/runtime/stubs.go#L411-L414
https://github.com/golang/go/blob/54182ff54a687272dd7632c3a963e036ce03cb7c/src/cmd/internal/buildid/note.go#L153

Thanks @ZekeLu for the detailed assessment.
I agree that it appears to be a typo and the correct statement is data = data[(i+buildInfoAlign-1)&^(buildInfoAlign-1):].


bootstrap-wysihtml5 is not working properly

I am trying to include bootstrap-wysihtml5 in my project, but i am only able to use some of its control
Below is its js code :
<script type="text/javascript">
$(document).ready(function() {
  $('#wysihtml5-textarea').wysihtml5({
    "font-styles": true, //Font styling, e.g. h1, h2, etc. Default true
    "emphasis": true, //Italics, bold, etc. Default true
    "lists": true, //(Un)ordered lists, e.g. Bullets, Numbers. Default true
    "html": true, //Button which allows you to edit the generated HTML. Default false
    "link": true, //Button to insert a link. Default true
    "image": true, //Button to insert an image. Default true,
    "color": true //Button to change color of font
  });
});
</script>

and i am also attaching screen shot bootstrap-wysihtml5
And when i try to click on not working controllers it simply blur the screen and nothing happen in that

Dear,
This plugin is very old plugin. Try using new plugin like tinyMce which is very simple.
https://github.com/tinymce/tinymce
Regards,
Ankit


Checkerboard masking in RealNVP

Hi,
Since the CouplingTransform class in nflows.transforms.coupling module only supports a 1-d mask that splits data along the channel dimension, I am wondering how I would go about implementing the alternating checkerboard mask in the RealNVP paper? Should I used the MaskedAffineAutoregressiveTransform in the nflows.transforms.autoregressive instead? Or are there some other methods or classes that I am not aware of?
Also, thank you so much for providing such a clean implementation of flow models in PyTorch!
Sincerely,
Donglin Wang

Hey Donglin. Nope, unfortunately the checkerboard masking isn't implemented. I'll keep this issue around in case you (or someone else) want to implement it. Cheers, ARtur

We do have a RealNVP implementation with 1D checkerboard masking, though: https://github.com/bayesiains/nflows/blob/master/nflows/flows/realnvp.py#L17


LSC: Move back the "Microsoft.Python.Parsing" code from python-language-server into this repo

The code that we published as NuGet package "Microsoft.Python.Parsing" can be moved back here and built as part of the product,.

We are now tracking this task in our internal Pylance Azure DevOps.


eventsubscription is not associated with any box

So when the transaction is done, in save() and delete() there's a brute force in query the correct box


Remove ApiMessage from HttpJsonCallSettings

Like https://github.com/googleapis/gax-java/pull/510, but with googleJavaFormat run on it.

Either this PR or https://github.com/googleapis/gax-java/pull/512 and then this PR can be merged in.

Codecov Report

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

@@            Coverage Diff            @@
##             master     #513   +/-   ##
=========================================
  Coverage     71.63%   71.63%
  Complexity      836      836
=========================================
  Files           169      169
  Lines          3853     3853
  Branches        292      292
=========================================
  Hits           2760     2760
  Misses          963      963
  Partials        130      130

Impacted Files
Coverage Δ
Complexity Δ

.../google/api/gax/httpjson/HttpJsonCallSettings.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

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 9631a9f...a66f30a. Read the comment docs.

PTAL


Namespace/Project - List Page Edits for Project Create/Detail

Determine how to include Create Project. Currently, there is a Create from YAML and Create in MastHead, so how do we add the concept of projects in the namespace list page?
How would you navigate to a project details page?

Note: There is no separate page for list of projects

https://xd.adobe.com/view/c3dd248e-9eef-4bc0-5228-2dca2c899db4-b5ec/

@deniseschannon
We want to change the create buttons for all pages to be this dropdown button right?

@codyrancher Can we hold off on this one? It's still unclear where the best place to put the create project page.

@deniseschannon I was just referring to the button and not the page but I can hold off on both.

Keeping this as a reminder that no list page exists for projects, but moving to the backlog until Projects v2 is scoped out and put in.

Closing in favor of new issue when prioritized for Projects v2


Redesign build info

Currently, flamework uses a very hard coded method for generating internal IDs, which attempts to serialize the package name and it's output path relative to the package directory (e.g out/my/file.ts@MyClass)
This is not very flexible, and has the following issues/limitations

flamework.build must be put in the project directory, which means to recompile you have to delete flamework.build instead of just the out directory
you cannot reuse the output of flamework anywhere, as it has to be under a package, with a flamework.build and with an out directory.

Recently, I've improved how flamework finds build infos firets/rbxts-transformer-flamework@3a18957b06f68524e50839e6b19e817d292291d7 which will allow me to put the flamework.build under the out directory, which will then allow precompiled flamework dependencies to be put anywhere and be successfully resolved and usable as long as a flamework.build is included. The internal id's path can then be calculated relative to the nearest flamework.build
This should remove unnecessary limitations, fewer hard coded aspects, and account for more use cases.

Roblox-ts deletes flamework.build before it can be read, which means this is unfortunately not possible, and would lead to undefined behavior in the transformer.


fix: not panic in destructor

release_resource should not panic. Because with_thread_data may return a ThreadData on the stack, and it's empty.

following code can reproduce the problem.
use std::thread;
use parking_lot::RwLock;

struct Bar(RwLock<()>);

impl Drop for Bar {
    fn drop(&mut self) {
        let _n = self.0.write();
    }
}

thread_local! {
    static B: Bar = Bar(RwLock::new(()));
}

fn main() {
    thread::spawn(|| {
        let a = RwLock::new(());
        let _a = a.read();

        B.with(|_| ());
    }).join().unwrap();
}

I can't reproduce the panic with your example code. Are you sure you are using the latest version of parking_lot?

I can't reproduce the panic with your example code. Are you sure you are using the latest version of parking_lot?

Did you enable deadlock_detection feature?
I'm using 0.9.0 in my project, but latest version is the same.

Yes I enabled deadlock_detection. However no matter how I run your code, I can't get it to panic.

Can you try deleting your Cargo.lock to see if this helps?

This seems to happen only on macOS, it is same issue as https://github.com/Amanieu/parking_lot/issues/114.

Right I think I know what the problem is. Basically, the internal ThreadData in parking_lot is getting dropped before the RwLock, which causes all sorts of issues. I'll need to re-read the code to figure out all the implications.

use std::thread;
use parking_lot::RwLock;

struct Bar(RwLock<()>);

impl Drop for Bar {
    fn drop(&mut self) {
        let _n = self.0.write();
    }
}

thread_local! {
    static B: Bar = Bar(RwLock::new(()));
}

fn main() {
    thread::spawn(|| {
        B.with(|_| ());

        let a = RwLock::new(());
        let _a = a.read();
    }).join().unwrap();
}

reversing init order of tld can make it reproduce on linux.

I think a more general solution is needed here: the deadlock detector needs to be able to handle threads that have exited while still holding leaked locks.

I think a more general solution is needed here: the deadlock detector needs to be able to handle threads that have exited while still holding leaked locks.

maybe not using thread_local?

Actually after reviewing the code, I'm just going to go with your solution.

@bors r+

bors r+


update prefix description at the stack level

The prefix for landing zone requires to not start with a number (specific to landing zone). Suggest to take the description for the prefix in landingzone and use it at the stack level.

Hi @toddgiguere - do you have the context for the extra restriction on end and start with letters only - which service is putting this restriction?
variable "prefix" {
description = "A unique identifier for resources that is prepended to resources that are provisioned. Must begin with a lowercase letter and end with a lowercase letter or number. Must be 16 or fewer characters."
type        = string
validation {
error_message = "Prefix must begin and end with a letter and contain only letters, numbers, and - characters."
condition     = can(regex("^([A-z]|[a-z][-a-z0-9]*[a-z0-9])$", var.prefix))
}
}

@vburckhardt where did you see the above code block? In patterns/roks/variables.tf it has a different description:
variable "prefix" {
  description = "A unique identifier for resources that is prepended to resources that are provisioned. Must begin with a lowercase letter and end with a lowercase letter or number. Must be 13 or fewer characters."
  type        = string

  validation {
    error_message = "Prefix must begin with a letter and contain only lowercase letters, numbers, and - characters. Prefixes must end with a lowercase letter or number and be 13 or fewer characters."
    condition     = can(regex("^([a-z]|[a-z][-a-z0-9]*[a-z0-9])$", var.prefix)) && length(var.prefix) <= 13
  }
}

@vburckhardt The prefix restrictions were part of the initial code that we took over, looking at the git blame the restriction of "must begin with letter" has been there since the very first commit from the other team.


Use Hamcrest assertions instead of JUnit in webserver/jersey - backport 2.x (#1749)

Part of #1749
I've already signed OCA. It's an automation problem.
Original PR

/oca-checked

/trigger


test: Cypress | Flaky fix

Description

This PR flaky fixes the Dropdown_onOptionChange_spec.js for CI runs

Type of change

Script fix (non-breaking change which fixes an issue)

Testing
How Has This Been Tested?

[X] Cypress

Checklist:
QA activity:

[X] Added Test Plan Approved label after Cypress tests were reviewed

/ci-test-limit runId=5643465925

/ci-test-limit runId=5643743082


Inline timepicker not working by clicking on inputs' arrows

Inline timepicker does not work: hours and minutes don't change by clicking on the inputs' arrows.
Live Example
https://codepen.io/davideghz/pen/gdNVmW
My Environment

flatpickr version used: flatpickr v4.5.2
Browser name and version: Chrome
OS and version: MacOSX High Sierra

Thanks for reporting @davideghz
Looking into it

Running into this as well. Also noticed that when time_24hr is false, toggling between PM and AM doesn't work, and the value passed to onChange is always an empty array.

Hi @chmln - any word on this as yet or ideas for a potential work-around?

@morficus I'm working on a PR, but as a workaround you could call open on the instance and then add the class inline to the container yourself:
    flatpickr('#input', {
      noCalendar: true,
      enableTime: true,
      onOpen() {
        this.calendarContainer.classList.add('inline');
      },
    }).open();

After some more digging it looks like all you actually need is a default value on the input:
<input type="text" id="input" value="12:00"></input>

Well, that made it! I updated the CodePen linked above as reference.


Print and Save to Device options

I'm using this package to present a pdf on my app, and it's working really fine.
The issue now is: how can I have an option on the pdf screen to allow the user to directly print the pdf or to save it on the device?
Does this package support this features?

Add a button to save document on the device.
There is no support for printing

Is there an option for the save button? Thanks.

What is the problem? Just add a button...

How can I make the button save the pdf? Is there a way where I can get the pdf url or something?

You passed pdf document to library, so you know where it is


Development and testing suggestions

If you have any testing or development suggestion please write them here

-test error using MAD methods as opposed to SEE
-test effect or noise in the cali dataset

filter the cali dataset using the self validated model???