Safari doesn't tab to Prism code block

When using the Safari desktop browser (v14) with a keyboard, Prism blocks don't appear in the tab order. So a keyboard-only user won't be able to tab to the block of code and scroll to view any overflowed content. Chrome, FireFox, and Edge work fine, I'm only seeing this in Safari.
I noticed this while testing a local site, but then checked the examples on Prism's site and I'm having the same issue, so it should be easy to replicate. No plugins or anything of that nature.
To replicate:

Go to https://prismjs.com/index.html in Safari
Navigate the page by using the tab key
The focus indicator moves right past any Prism blocks of code. In this case, I'm able to tab to the "Examples" heading, then the next item in the focus order is the "view more example" link below the first scrollable block of code.

Safari weirdly decided it doesn't tab-focus everything by default. You can enable it to do so if you go into Settings -> Advanced -> check "Press tab to highlight each item on a webpage".

Beyond that, we're not doing anything specific to make it tabbable in those browsers, so I'm not sure this is something we can solve.

Safari weirdly decided it doesn't tab-focus everything by default. You can enable it to do so if you go into Settings -> Advanced -> check "Press tab to highlight each item on a webpage".

Beyond that, we're not doing anything specific to make it tabbable in those browsers, so I'm not sure this is something we can solve.

@mAAdhaTTah I'm aware of that setting and that's not the issue here, as I have that enabled already. And any regular keyboard user would have that enabled as well.
While you're not adding anything to make scrollable areas tabbable by default in Chrome and FireFox, by default areas do not overflow and instead grow to the size of their contents. If Prism is creating a structure and applying styles that create scrollable areas, then I feel it should take on a responsibility to make a good faith effort to make that content accessible. I don't think the fact that scrollable areas are tabbable by default in other browsers lets us off the hook.
I haven't tested fully, but I think a quick solution might be to just add a tabindex="0" to all of the pre elements created by Prism.

@mAAdhaTTah I'm aware of that setting and that's not the issue here, as I have that enabled already. And any regular keyboard user would have that enabled as well.
While you're not adding anything to make scrollable areas tabbable by default in Chrome and FireFox, by default areas do not overflow and instead grow to the size of their contents. If Prism is creating a structure and applying styles that create scrollable areas, then I feel it should take on a responsibility to make a good faith effort to make that content accessible. I don't think the fact that scrollable areas are tabbable by default in other browsers lets us off the hook.
I haven't tested fully, but I think a quick solution might be to just add a tabindex="0" to all of the pre elements created by Prism.

That's at least a reasonable principle, so let me look into it.

That's at least a reasonable principle, so let me look into it.

Some additional info:

Chrome, Firefox, and Edge work fine.

I tested it on my machine and Firefox lets me tab to scrollable code blocks. Chrome and (Chromium) Edge have the problem you described. IE11 also has this problem.

Some additional info:

Chrome, Firefox, and Edge work fine.

I tested it on my machine and Firefox lets me tab to scrollable code blocks. Chrome and (Chromium) Edge have the problem you described. IE11 also has this problem.

Interesting, @RunDevelopment. Are you on Windows? I haven't tested on Windows, but on my Mac I don't experience the issue in Chrome or Chromium Edge. Might be the OSs handling key events different for UI elements, not sure.

Interesting, @RunDevelopment. Are you on Windows? I haven't tested on Windows, but on my Mac I don't experience the issue in Chrome or Chromium Edge. Might be the OSs handling key events different for UI elements, not sure.

Yes, I am using Windows.

Yes, I am using Windows.

I don't think this is correct for accessibility. Focusable elements should have interactive semantics, but there's nothing about a block of code that inherently is interactive.
I've had to modify prism as I started to fail accessibility tests because of this incorrect behaviour.
If someone wants to be able to navigate code blocks with the keyboard then this is something they should add in themselves, as this breaks WCAG compliance.

there's nothing about a block of code that inherently is interactive.

I disagree. Code blocks often have scroll bars, be it horizontal or vertical. These scroll bars must be interacted with in order to see the full content of a code block. However, in some browsers, this interaction is only possible with the tabindex attribute. As such, code blocks must be focusable for cross-browser accessibility.
If we made code blocks non-focusable again, we would make it impossible for keyword-users to see the full contents of some code blocks by default.

Related:
https://www.tpgi.com/short-note-on-improving-usability-of-scrollable-regions/

If someone wants to be able to navigate code blocks with the keyboard then this is something they should add in themselves, as this breaks WCAG compliance.

I assume you're getting a failure on Success Criterion 4.1.2 Name, Role, Value (A). This doesn't fail Success Criterion 2.1.1 Keyboard, it actually fixes it. Adding role="region" in combination with the tabindex="0" will handle the Name, Role, Value error.

According to MDN, landmark roles should be used sparingly. Wouldn't role="generic" be more fitting?

Yes but role="generic" still gets flagged as an error on 4.1.2 Name, Role, Value unfortunately. Role="region" does not.

As role="region" creates an unnamed landmark, it would be good to identify it with an aria-label. Fox example:
<pre tabindex="0" role="region" aria-label="codeblock">
The above will receive focus so it can be scrolled with the keyboard. Screenreaders will announce a "region codeblock".

I disagree. Code blocks often have scroll bars, be it horizontal or vertical. These scroll bars must be interacted with in order to see the full content of a code block. However, in some browsers, this interaction is only possible with the tabindex attribute.

You're confusing the fact that they can have scroll bars with an assumption that they will. This is not always the case.
Adding tabindex blindly breaks accessibility as, again, non-interactive areas should not be focusable. There are no actions a user can take.
This should be something users add for themselves unless you want to start detecting overflows and adding the attribute only when scroll bars actually appear.

If we made code blocks non-focusable again, we would make it impossible for keyword-users to see the full contents of some code blocks by default.

Right now you're making it more difficult for every keyboard user to navigate a site in an incorrect assumption.
At the end of the day, blocks of code are not inherently interactive. You cannot be add tabindex to them blindly.

I assume you're getting a failure on Success Criterion 4.1.2 Name, Role, Value (A)

No.

This doesn't fail Success Criterion 2.1.1 Keyboard, it actually fixes it.

If the area is non-interactive, adding tabindex fails this test.

I don't think it's fair to say that allowing all code blocks to be focusable "blindy breaks" the functionality for a keyboard user. Yes, in cases where the content doesn't overflow it will cause an extra tab stop, but that doesn't mean the page is broken for those users.
The spirit of WCAG SC 2.1.1 is that all content CAN be accessed with a keyboard, that doesn't mean that a user necessarily will interact with it. By being consistent and predictable, users will learn that all code blocks are accessible even though a particular one might not require it. To my knowledge, a code block that is focusable but doesn't require scrolling to view the content is not a scenario that fails this SC. Content can change (authors make edits that now cause a code block to overflow) and users can change their viewing specifics (they can revisit the page on a different device or in a different size browser window), so a consistent experience is key.
Developers can also mitigate confusion with proper headings and other information paired with the code block, such as "CSS Example 3 (content may overflow)".

There are pros and cons but I think what PrismJS is now doing, adding tabindex=0 with no role or name, is best for users. Including tabindex removes a barrier for keyboard (and keyboard-equivalent) users to enable access to scrollable codeblocks. Since the tabindex is always present, it does add an unnecessary tab stop to non-scrollable codeblocks for keyboard users but that only makes page navigation a little worse, the trade-off is worth it. If there was a whole set of codeblocks that might not be of interest to all readers, the author could precede the set with a "skip link" or put them all within a disclosure widget (like details-summary elements). In theory, you could have JavaScript checking whether each codeblock is scrollable to add/remove the tabindex attribute (or toggle the value between 0 and -1) but that doesn't sound like a worthwhile trade-off (to develop or to have continually running on every page).
Regarding MDN's WCAG Keyboard page, it's not an authoritative source but it is useful. It says "focusable elements should have interactive semantics." A scrollable codeblock is interactive, you can scroll it, but there are no interactive semantics that convey "scrollability." role=region and an accessible name, like aria-label="code block" could be added but they would be no benefit for those who need the tab stop and would make the user experience worse for others. Screen reader users don't need the tab stop, the screen reader gives them access to all the content without it. The role and accessible name will only be conveyed to the screen reader user but they don't need it; they're unlikely to use the regions for landmark navigation and if all the codeblocks have the same accessible name, there's nothing to differentiate them.
The MDN page says "focusable elements should have interactive semantics" but for other subjects, it uses the word "must," like "interactive elements must be focusable." "Must" is a requirement, "should" is a recommendation or a description of typical situations; this case is an exception, for the reasons I've given.
Additionally, in the browsers that are automatically adding a tab stop for scrollable elements, they are not adding any semantics with it; two wrongs don't make a right but they do serve as real-world examples of focusable elements without interactive semantics.
If tests are failing on elements solely because they have tabindex=0, the tests should be improved. Adding roles and names to satisfy the tests would benefit only developers and make the user experience worse for some people.

I was confused about the new tabindex of the pre element to be honest, as when testing keyboard navigation on my site "something" was getting focused, but I didn't know what. So I'm experimentally adding a focus outline to pre elements with tabindex like
/** Improve general outline visibility, especially in firefox **/ :is(a, button, pre[tabindex="0"]):focus { 	outline-width: var(--outline-width); 	outline-style: var(--outline-style); 	outline-color: var(--linkHoverColor); 	outline-offset: var(--outline-offset); }
I think adding an aria-label to the element would benefit users of screen readers, but that should probably be done manually? Has anyone been researching this, maybe done some accessibility testing?

Thank you @RunDevelopment for your insights. Those are valid points. I fixed my firefox styling to make the focus outline properly, and you're right, an aria label should be descriptive and thus probably added manually - a generic "code block" label is not helping much.


Service invocation with CORS

Hi all,
I'm wondering how to handle a cors scenario where a js web frontend microservice invokes a golang one.
Since the preflight OPTIONS request is totally controlled by the browser, how can the go microservice be reached without the dapr-app-id header?

By using v1.0/invoke http (https://docs.dapr.io/developing-applications/building-blocks/service-invocation/howto-invoke-discover-services/)
Join the discussion on discord: https://discord.com/channels/778680217417809931/1055270900125138975/1146808032299331694


Improve camelot endpoint performance

Fetching balances for each user is taking too long, since 3 contracts must be fetched for each user. Some options:

Use multicall to make several queries at once
Look for a subgraph which can provide the data we need (it may be in the one we are already using)

Working on this first

Done in #99


Determine modules after running the Rust reserved word symbol provider

Motivation and Context
For RFC-26, several types need to be added to modules that are named after operations.
There are actually examples of modules being named after shapes for builder codegen, as can be seen in:
https://github.com/awslabs/smithy-rs/blob/83656ec994581f6e5b9c4701cd0c127d11db31ac/codegen-core/src/main/kotlin/software/amazon/smithy/rust/codegen/core/smithy/generators/BuilderGenerator.kt#L84-L85
However, for RFC-26, that symbolProvider.toSymbol call would actually infinite loop when determining a module for an operation since the operation symbol resolution itself needs a module for the operation symbol, and determining the module requires an operation symbol.
This PR refactors module resolution to the end of the symbol provider chain in a separate ModuleAttachingSymbolProvider. This allows names to be resolved in the first half of the chain, and then modules to be resolved based on those names in the second half of the chain.
This PR also eliminates RustSymbolProvider.toEnumVariantName by refactoring the code that called that to create fake MemberShapes instead, which brings us slightly closer to supporting EnumShape rather than EnumTrait.
This refactor should be entirely contained to the code generator and should result in no generated code differences.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I'm not liking this approach. Going to close this and work on some additional PRs that should result in something simpler.


Fix destructuring control flow analysis

This PR fixes multiple issues related to control flow analysis of destructuring declarations and assignments. Intuitively, for type checking purposes the following should always be true:

obj.x is equivalent to obj["x"] (property access vs. element access)
let { x } = obj is equivalent to let x = obj.x (destructuring declaration)
{ x } = obj is equivalent to x = obj.x (destructuring assignment)

However, there were several situations where this was not the case:
function f1(obj: { a: string | undefined }) {
    if (obj.a) {
        obj = { a: undefined };
        let a1 = obj["a"];  // string (Incorrect)
        let a2 = obj.a;  // string | undefined
    }
}

function f2(obj: [number, string] | null[]) {
    let a0 = obj[0];  // number | null
    let a1 = obj[1];  // string | null
    let [b0, b1] = obj;  // string | number | null (Incorrect)
    ([a0, a1] = obj);  // Error (Incorrect)
    if (obj[0] && obj[1]) {
        let c0 = obj[0];  // number
        let c1 = obj[1];  // string
        let [d0, d1] = obj;  // string | number | null (Incorrect)
        ([c0, c1] = obj); // Error (Incorrect)
    }
}

function f3(obj: { a?: number, b?: string }) {
    if (obj.a && obj.b) {
        let { a, b } = obj;  // number, string
        ({ a, b } = obj);  // Error (Incorrect)
    }
}

function f4() {
    let x: boolean;
    ({ x } = 0);
    ({ ["x"]: x } = 0);
    ({ ["x" + ""]: x } = 0);  // No error (Incorrect)
}

This PR fixes all of the above. The PR changes type checking for destructuring declarations and assignments to consistently use getIndexedAccessType to compute the destructured type and getFlowTypeOfReference on a synthetic element access expression to compute the control flow type. Furthermore, the PR properly unifies all handing of property access expressions (obj.x) and element access expressions (obj["x"]) in control flow analysis, and removes the increasingly convoluted logic we needed to handle binding elements from destructuring declarations and object and array literals from destructuring assignments (they now become synthetic element access expressions).
Fixes #26379.
Fixes #28792.

@DanielRosenwasser @weswigham Now with new and improved error message.


unistd: Use bindings from libc instead of our own

Refs https://github.com/nix-rust/nix/issues/264

r? @posborne since I know you're around :-)

Looks like travis is undergoing maintenance.  Changes look good though.  @homu r+

:pushpin: Commit afeb626 has been approved by posborne

:hourglass: Testing commit afeb626 with merge a512afe...

P.S. @kamalmarhubi  You should take a look at https://github.com/nix-rust/nix/pull/292.  It seems to solve the test instabilities (although we may settle on another solution long term).

:broken_heart: Test failed - status

OS X failure is for fdatasync missing, though it's part of POSIX. libc crate only includes it for linux and android, so I have included it for only those systems. I've sent a PR to libc to add it to more platforms:
https://github.com/rust-lang/libc/pull/211

@homu retry

@homu retry 6b24f60

oh I see
@homu r=@posborne b24f60

:scream_cat: b24f60 is not a valid commit SHA. Please try again with 6b24f60.

@homu r=@posborne 6b24f60

:zap: Test exempted - status


Tanzu /v0.11.0 > Failing on "Creating cluster.." with Error: exit status 7

Bug Report
I have upgraded my TCE install scenario onKillercoda but when I call
~/.linuxbrew/Cellar/tanzu-community-edition/v0.11.0/libexec/configure-tce.sh
I got the following thing :
🚀 Creating cluster katacoda-tce
   Cluster creation using kind!
   ❤  Checkout this awesome project at https://kind.sigs.k8s.io
   Base image downloaded
   Creating cluster..             failed to create cluster, Error: kind returned error: command "docker run --name katacoda-tce-control-plane --hostname katacoda-tce-control-plane --label io.x-k8s.kind.role=control-plane --privileged --security-opt seccomp=unconfined --security-opt apparmor=unconfined --tmpfs /tmp --tmpfs /run --volume /var --volume /lib/modules:/lib/modules:ro -e KIND_EXPERIMENTAL_CONTAINERD_SNAPSHOTTER --detach --tty --label io.x-k8s.kind.cluster=katacoda-tce --net kind --restart=on-failure:1 --init=false --publish=<IP_ADDRESS>:35891:6443/TCP -e KUBECONFIG=/etc/kubernetes/admin.conf projects.registry.vmware.com/tce/kind:v1.22.4" failed with error: exit status 125
Error: exit status 7

✖  exit status 7

Expected Behavior
Did the install scenario change by other aspects from previous version ?
Steps to Reproduce the Bug

Run the scenario
Execute all steps
When on Step Boot TCE cluster ! See that Then configure TCE : command is failing :

Screenshots or additional information and context

Environment Details

Build version (tanzu version): v0.11.0
Deployment (Managed/Unmanaged cluster): Unmanaged cluster
Infrastructure Provider (Docker/AWS/Azure/vSphere): Docker
Operating System (client): Ubuntu

Diagnostics and log bundle
See screenshot in the dedicated section 🙏

Looks like it's a space related issue.
I'll let you know.

Currently working with Killercoda support.
⏸

I wonder if you could try a docker system prune or something to make sure anything extra is cleaned up.
Hopefully Killercoda can increase available space.

I wonder if you could try a docker system prune or something to make sure anything extra is cleaned up.

Thanks a lot for pointing this. I'll gve it a try and let you know @stmcginnis

Hopefully Killercoda can increase available space.

Yep, :crossed_fingers: . I'll let you know about that... and close the issue once fixed on the outcome :+1:

Unfortunately I could not manage to make fully start the cluster : it hangs on creating kapp-controller :sweat:

Is it still running out of space on the host? Any logs or events from the kapp-controller pod that could help troubleshoot?

i'll give it a new try next weeks.
But to pass the diskspace limitation I had to drop swap :sweat: .

unsubscribehttps://github.com/notifications/unsubscribe-auth/AOMLBZXZVUEN457U33MYM5LVRPE5JANCNFSM5UHGL7GQ.
Regards,
Hemant Yaotkar,
E-mail: @.***
Hand Phone: +91<PHONE_NUMBER> |Work:+91<PHONE_NUMBER>
IBM India Pvt Ltd, Embassy Tech Zone (ETZ) Congo 1.3 , A Wing 4th Floor,
Rajiv Gandhi Infotech Park, Phase 2, Hinjawadi, Pune 411 057, Maharashtra, India

From: github-actions[bot] @.>
Sent: 29 June 2022 09:47
To: vmware-tanzu/community-edition @.>
Cc: Subscribed @.***>
Subject: [EXTERNAL] Re: [vmware-tanzu/community-edition] Tanzu /v0.11.0 > Failing on "Creating cluster.." with Error: exit status 7 (Issue #4166)
This issue is being marked stale due to a period of inactivity. If this issue is still relevant, please comment or remove the stale label. Otherwise, this issue will close in 30 days. — Reply to this email directly, view it on GitHub
ZjQcmQRYFpfptBannerStart
This Message Is From an External Sender
This message came from outside your organization.
ZjQcmQRYFpfptBannerEnd
This issue is being marked stale due to a period of inactivity. If this issue is still relevant, please comment or remove the stale label. Otherwise, this issue will close in 30 days.
—
Reply to this email directly, view it on GitHubhttps://github.com/vmware-tanzu/community-edition/issues/4166#issuecomment-1169515616, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOMLBZXZVUEN457U33MYM5LVRPE5JANCNFSM5UHGL7GQ.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


Add go.mod, go.sum

Creating a go.mod/go.sum
(note, it's needed just for context, which... is already in standard library...)

note that this conflicts with #43 that just removes the net/x/context


Python example, How to get indices of ground points?

Hey @seungjae24 and @LimHyungTae,
In your python example,
ground      = PatchworkPLUSPLUS.getGround()
nonground   = PatchworkPLUSPLUS.getNonground()

These lines return ground and nonground points. How can we get their indices in the original input point cloud? I need the indices so that I can get their corresponding intensities.
Thanks in advance for your help!

If the real-time issue is not your interest, we'd like to recommend the following directions:

Register raw point cloud to k-D tree
Given estimated ground points, if distance btw a point from est. ground and the closest point from k-D tree is lower than epsilon (i.e. < 0.0001), label the corresponding point of raw cloud as the est. ground

Or please refer to label generator in Patchwork v1: https://github.com/LimHyungTae/patchwork/tree/main/include%2Flabel_generator

I made a PR which stores the point index in the PointXYZ and has getter functions which simply return the indices of points.

Thank you for contributing on our work. You PR will be reviewed soon!

This issue has been solved. @barzanisar 's PR #32 is merged to the master branch.
If you need specific indices for ground or nonground points, please check the examples.


The oc.tsx file in the custom-components folder(where the preview is rendered from) won't update if the generated code is invalid

The user would not know when something is going wrong


Added fix for compilation issue.

You should keep these updates in your own fork of the tutorial! ;)


feat(client, preimage, common): no-io flag

Description
The kona-common crate determines which ClientIO to use based on the compilation environment. This crate is inherited by kona-client and kona-preimage, so in the case that any of these crates are imported, we try to compile ClientIO.
In the case that we aren't compiling to MIPS or RISCV64, we fallback to NativeIO, which fails in the ZKVM.
In the ZKVM, we don't use IO at all, so to avoid this issue we simply add a no-io feature flag to the 3 crates that avoids compiling anything that touches IO when called in this context.
Then, in our downstream program, we set this flag depending on whether or not we are in the ZKVM context.
Tests
N/A
Additional context
N/A
Metadata
N/A

@clabby This is failing because the linting test tests for all-features, but compilation fails when no-io flag is passed when it's needed. How do you think we should address?

@clabby This is failing because the linting test tests for all-features, but compilation fails when no-io flag is passed when it's needed. How do you think we should address?

Cargo features are meant to be additive; It's a bit hard to make mutually exclusive features. We'll need to split this up a bit further. Glad to work on this today.

Will review once this is flipped to enabled-by-default io feature that can be toggled off.

Closing this out in favor of #394


Add releases and flux runtime pages

Adds the list pages according to the provided designs https://www.figma.com/file/IVHnM9iyeFWpd11evtY8ux/Weave-GitOps?node-id=5399%3A12874
Releases/Applications:

Sources Page:

Flux Runtime:

Good progress being made 👍 thanks Jordan
Some comments:
Applications page

Types should be kustomization / Helm Release rather than kustomize
Source in the designs doesn't show the type, but actually I'm ok with it cc @bia
Missing filters (assuming follow up PR)
Name is only one with sort arrow, is this easy to add to other columns?

Sources page

should be sub-menu item under Applications similar to Clusters > templates in WGE.
Types should be Git Repository / Helm Repository / Bucket (i.e. not just Git)
Missing Reference (currently marked as Release in Figma)
Designs are yet to address comments/reflect the doc in notion and as such are missing cluster, namespace and interval/last synced

Flux Runtime page

Image not Images
Default should sort by Cluster.

Types should be kustomization / Helm Release rather than kustomize

Fixed

Missing filters (assuming follow up PR)

@joshri is working on that

Name is only one with sort arrow, is this easy to add to other columns?

Fixed

Sources page

should be sub-menu item under Applications similar to Clusters > templates in WGE.

Follow up created: https://github.com/weaveworks/weave-gitops/issues/1459

Types should be Git Repository / Helm Repository / Bucket (i.e. not just Git)

Fixed

Missing Reference (currently marked as Release in Figma)

Added, but we need to think about what this means for Helm/Bucket

Designs are yet to address comments/reflect the doc in notion and as such are missing cluster, namespace and interval/last synced

Interval added

Flux Runtime page

Image not Images

Fixed, but a Deployment can have multiple images.

Default should sort by Cluster.

Added

Many thanks @jpellizzari

Added, but we need to think about what this means for Helm/Bucket

Both still have status.artifact.revision or do you feel this isn't valuable/there's something else we should look to show?

Fixed, but a Deployment can have multiple images.

Fair point, I wouldn't expect the flux controllers to though? Or am I missing something?


I can't see the github container registry settings

Describe the bug
I installed version 3.9.0 and I can't see the github container registry settings as per the documentation
https://epam.github.io/edp-install/user-guide/manage-container-registries/#__tabbed_1_6
To Reproduce
What did you do?
I follow the instructions to install version 3.9.0
helm install edp epamedp/edp-install --version 3.9.0 --create-namespace --atomic -n edp --set global.dnsWildCard=example.com
What did you expect to see?
This tab enabled

What did you see instead? Under which circumstances?
I don't see the option for github

Kubernetes cluster type:
Amazon Elastic Kubernetes
Version 1.29

Have you tried clearing the cache and doing a hard reload of the page? Also, could you check the version of the edp-headlamp image you have deployed?


Added Git Revert Commands

Feature/new api

Something looks weird but but you're my friend. So, I'll just approve it and merge it


How to get parameters properly / regex patterns not working ?

In 1.1Alpha i use this:
$collection->attachRoute(new PHPRouter\Route('/sitemap/info.xml', [
    '_controller' => 'App\Controllers\Sitemap::Sitemap',
    'methods' => ['POST','GET'],
    'parameters'=> ['template_file'=>'ajax'],
]));

and get_object_vars($route)['_config']['parameters']['template_file'] to get "ajax" value, but now in last version this not working.
How to make something like this ?

And this: '/details/:id/:id=:id' no longer work....

work-around for the second:
$template_file = "";
foreach((array)$route as $v => $k) {
   $template_file.= preg_replace("/[^a-za-z]/", "",$k['parameters']['template_file']);
}

Now i need a solution for the regex-like urls in routers because i have seo urls.

Any replies ? Please fix this issue...

You can get named parameters with the optionnal argument on setFilters method. See #54 for more informations.
Can you provide the full router code for your broken routes please?

  $collection->attachRoute(new PHPRouter\Route('/details/:id/:id=:id', [
      '_controller' => 'App\Controllers\Details::Details',
      'methods' => ['POST','GET'],
      'parameters'=> ['template_file'=>'details'],
  ]));

Now i try:
$route = new PHPRouter\Route('/details/:id/:id=:id',[
'_controller' => 'App\Controllers\Details::Details',
'methods' => ['POST','GET'],
'parameters'=> ['template_file'=>'details'],
]);
$route->setFilters([':id' => '([^a-zA-Z0-9]+)'], true);
$collection->attachRoute($route);

but still not working...

@malukenho it's look like preg_quote on regex broke the matching in Router.php:120
I can't anymore investigate before tuesday, if you can do something it's cool :+1:

Thanks for your time.. My site still offline 2 days because this...
I hope to quickly solve this problem. I will wait.

And it will be cool to back this in work:
get_object_vars($route)['_config']['parameters']['template_file']
this work-around:
$template_file = "";
foreach((array)$route as $v => $k) {
   $template_file.= preg_replace("/[^a-za-z]/", "",$k['parameters']['template_file']);
}

is not cool.
or something like this $route->config['parameters']['template_file'];
I'm using mustache and directly pass template variable from routes into $tpl = $mustache->loadTemplate($template_file);
It's easy and fast...

Test the hotfix-101 branch and tell me if it solve the routing issue please

Yes, it works! :)
Can you add a method for get parameters with simple line, something like this:
$route->config['parameters']['template_file'];
This is very important for me.

Normally $route->getParameters() return an array with ['paramName' => 'val']

it returns array(0) { } for me...

You try it on the right route?

Yes, every my route have
'parameters'=> ['template_file'=>'template_file_name'],

I add  var_dump($route->getParameters()); after
$route = $router->matchCurrentRequest();
and gives my
array(0) { }
some of my routes before $router = new PHPRouter\Router($collection); line:
$collection->attachRoute(new PHPRouter\Route('/ajax/get_cities_based_on_country', [
    '_controller' => 'App\Controllers\Ajax_Cities::Ajax_Cities',
    'methods' => ['POST','GET'],
    'parameters'=> ['template_file'=>'ajax'],
]));

$collection->attachRoute(new PHPRouter\Route('/ajax/get_countries', [
    '_controller' => 'App\Controllers\Ajax_Countries::Ajax_Countries',
    'methods' => ['POST','GET'],
    'parameters'=> ['template_file'=>'ajax'],
]));

$collection->attachRoute(new PHPRouter\Route('/sitemap/info.xml', [
    '_controller' => 'App\Controllers\Sitemap::Sitemap',
    'methods' => ['POST','GET'],
    'parameters'=> ['template_file'=>'ajax'],
]));

$collection->attachRoute(new PHPRouter\Route('/fortumo/fortumo', [
    '_controller' => 'App\Controllers\Fortumo::Fortumo',
    'methods' => ['POST','GET'],
    'parameters'=> ['template_file'=>'ajax'],
]));

Yeah... Everything is great! This is the best router class for me. Thank you!

Ok i fixed it, update from hotfix-101 branch

Thanks again!


What i need to run it?

Hi i try to compile this project, but i get errors using this guide:
https://github.com/kermitt2/grobid/wiki/Grobid-service-quick-start
Tests run: 154, Failures: 0, Errors: 44, Skipped: 1
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] There are test failures.
actually i use:
Apache Maven 2.2.1 (rdebian-8)
Java version: 1.6.0_45
Java home: /usr/lib/jvm/jdk1.6.0_45/jre
Default locale: es_MX, platform encoding: UTF-8
OS name: "linux" version: "3.2.0-4-686-pae" arch: "i386" Family: "unix"
what i need.. SO, Architecture, Java version, Maven version?
thanks

Right now, GROBID is working fine with maven 3, JDK 1.7, under linux-64, mac os and normally linux-32. For Windows, this fork might be a solution: https://github.com/boumenot/Grobid.NET


Custom IDs on models?

I am currently working on an ember application where our model implement custom IDs, i.e. we are using a slug as an ID on different models. Therefore, belongsTo() and hasMany() relationships need to include the slug instead of a numerical ID to work.
I spent some time to figure out on how to implement this in mirage to support development without a running backend server. Finally, I ended up adding the relationships as a string object on my mirage factory objects instead of using hasMany() or belongsTo() mirage relationships, what feels kind of strange to me.
Is there any possiblity to have this behaviour using mirage associations?

I think I would use Mirage's ids at the database layer, and convert the id field to a slug at the Serializer layer

I currently have an application serializer, which I wanted to extend and then overwrite it's serialize() method. However, serialize() on the overwritten serializer (for the model containing a relation with a custom ID) was never called, serialize() on the application serializer actually was.

I also need custom IDs for my models. Converting id at serializer layer is a mess cause it has to be done for all relationships also. I played a little bit around with IdentityManager at it seems to work fine with all kinds of ids as long as they are unique. Why not support custom IdentityManager per application or model  / DBCollection?
Implementing a custom IdentityManager seems to be quite easy cause current implementation only has fetch, set and reset methods as public api. E.q. UUIDs seems to be a quite common use case.

@hbrysiewicz This is not a feature request anymore. I have implemented it in #977 and it's available since 0.3.4.


[REFACTOR] remove redundant call to fetch payment method data

In case of payments_start operation, there is a call to fetch payment method data ( which makes a call to the locker to fetch payment method data ). This call is not necessary since we do not need payment method data in that flow. This would add additional latency to payments flow.
https://github.com/juspay/hyperswitch/blob/fa392c40a86b2589a55c3adf1de5b862a544dbe9/crates/router/src/core/payments/operations/payment_start.rs#L237
Here the call to
https://github.com/juspay/hyperswitch/blob/fa392c40a86b2589a55c3adf1de5b862a544dbe9/crates/router/src/core/payments/operations/payment_start.rs#L246
Is not necessary and can be removed

May I take it? @Narayanbhat166

Sure @shreyash-Pandey-Katni, I will assign it to you

Hey @shreyash-Pandey-Katni, let me know if you need any help in this refactor.

Thank you @Narayanbhat166, i am struggling a little bit in testing using cargo +nightly fmt --all. i will push changes as soon as possible.

Hey @shreyash-Pandey-Katni, Please do raise the PR if you have a compiling code. We can look into formatting and other checks later

Hello, I was under the weather so it took a while to finish it off. I have raised the PR. Have a look and let me know.


Cannot find module '...\node_modules\odbc\lib\bindings\napi-v5\odbc.node'

Hello,
I've run into an issue using node-odbc with an old (but LTS) version of node - Version 12.16.1.
The error message is:
Error: Cannot find module 'D:\Example\node_modules\odbc\lib\bindings\napi-v5\odbc.node'
Require stack:
- D:\Example\node_modules\odbc\lib\odbc.js
- D:\Example\main.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:982:15)
    at Function.Module._load (internal/modules/cjs/loader.js:864:27)
    at Module.require (internal/modules/cjs/loader.js:1044:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (D:\Example\node_modules\odbc\lib\odbc.js:6:20)
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
    at Module.load (internal/modules/cjs/loader.js:1002:32)
    at Function.Module._load (internal/modules/cjs/loader.js:901:14)
    at Module.require (internal/modules/cjs/loader.js:1044:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    'D:\\Example\\node_modules\\odbc\\lib\\odbc.js',
    'D:\\Example\\main.js'
  ]
}

Essentially it's trying to pull in the napi-v5 odbc.node file, but if I look in my node_modules folder napi-v6 is present.
How to replicate:
Example Script:
const odbc = require('odbc');

function foo() {
    console.log(`This won't ever trigger, because it can't import the module...`);
}

foo();

npm init
npm install odbc
node main.js

Can someone please let me know how I can get around this? The old version of Node is built into another piece of software we are using so I am unable to update it.
Please let me know if you require any further information.
Thanks in advance.

I've just done a bit more playing around and if I install ODBC 2.3.6 it appears to work, although it is installing the napi-v3 folder.
I can obviously use this as a work around, but will leave this ticket open should you decide you think any action needs to be taken.


Build on GitHub Actions

This automatically builds the .uf2 using GitHub Actions.
This is useful to provide binaries to users who don't want to set up a local build system, and allows to check every pull request for buildability.

@probonopd Thank you for your pull request. It certainly looks like it will work. I am struggling with whether I want to push pre-built binaries. One of the main reasons I post these projects on GitHub this is to encourage people to learn software programming. I need to think about this more.


Testing with other products

Hi there, i tried to test the program by using an amazon  and an argos item that are available on the respective websites but I did not get the notification or the sound. Will this only work with the PS5 products or is there something that i am missing. Thank you.

It should work with any product provided that you have a link. What notification are you referring you in particular (console text, discord, email, etc.)? Which terminal/console are you using? Can you provide the links you've tried?

It should work with any product provided that you have a link. What notification are you referring you in particular (console text, discord, email, etc.)? Which terminal/console are you using? Can you provide the links you've tried?

T think i figured out what was wrong. Im using amazon UK which calls the "add to cart" button "add to Basket". I had to change the work cart to basket in the amazon.js file and now it works fine. It was telling me that there was no stock for an item that was available but its all good now. Thank you

T think i figured out what was wrong. Im using amazon UK which calls the "add to cart" button "add to Basket". I had to change the work cart to basket in the amazon.js file and now it works fine. It was telling me that there was no stock for an item that was available but its all good now. Thank you

oh I see. Thanks for letting me know. I will fix it. May I have a url for Amazon UK ?

oh I see. Thanks for letting me know. I will fix it. May I have a url for Amazon UK ?

Digital - https://www.amazon.co.uk/dp/B08H97NYGP
Standard - https://www.amazon.co.uk/dp/B08H95Y452

Digital - https://www.amazon.co.uk/dp/B08H97NYGP
Standard - https://www.amazon.co.uk/dp/B08H95Y452

Thank you. I updated it so it should work with any language.

Thank you. I updated it so it should work with any language.


Action fails in win22/20220814.1 environment

After GitHub updated its Windows environment to win22/20220814.1, the action started failing with the following error:
Loaded 'D:\a\DiligentCore\build\.cmake\api\v1\reply\index-2022-08-16T23-03-14-0395.json' reply generated from CMake API.
Error: Error: Unknown MSVC toolset layout

Absolutely same setup worked ok in win22/20220808.1

Same for us, build fails.
Relevant source code: https://discord.com/channels/874507673943539752/884291206157316166/1009643571202248714

Same for us, build fails.
Relevant source code: https://github.com/microsoft/msvc-code-analysis-action/blob/main/index.js#L259

@Pirulax FYI, as a workaround I downgraded windows image to windows-2019 (and VS2019) and it works

Look like their was a casing change in the Visual Studio layout for the MSVC toolset.

Thank you!


Create a new CSV import script for the property manager survey data

The existing CSV import script is intended to be run with the original HRD spreadsheet of listings, and is intended to only be run once to do a bulk upload of listing data. This ticket concerns importing the data in the spreadsheet of responses from the property manager survey (which supplements the data from the original HRD spreadsheet), and it's intended to be able to be run multiple times.
Pre-requisite: the property manager response spreadsheet must have the HRD ID for each listing. This should be done manually (e.g. by consulting the original HRD spreadsheet).
This new script will need to:

Look up the listing ID by the HRD ID (maybe just GET /listings?limit=all and then search through the result based on HRD ID?)
Populate a ListingUpdateDto with the new fields to add and send that to PUT /listings/{id}

Two things:

The mapping of property manager survey columns to data model fields is defined in #396. For this work, we may be able to prioritize a subset of these fields (this would be a product-level decision; Gabe/Kar can be helpful here).
If the ListingUpdateDto is going to update UnitsSummarys, we will need it to either cross-reference those with what comes back from GET /listings?limit=all or just delete all the existing UnitSummarys and replace them with the new data. Maybe this could be a flag with a couple different options? (crossreference, replace, skip)

Gabe worked with Safiya to identify the most important fields from the property manager survey:

Rent Range
Unit Type
Availability Status:

Waitlist Open
Waitlist Closed
Accepting Application


added rotate command fixes #281

fixes #281

Thanks for the review @Eddie023 , I made a few changes according to your suggestions.


feat: LEAP-1599: Allow to edit TimelineRegion spans

Make TimelineRegion fields editable, but with new form to display the editor in this case — start/end are in the ranges[0], not in region itself. New editor is pretty simple and reuses styles from both audio region and image region editors.
Also added an icon for timeline spans. Will be changed soon for a better one.

PR fulfills these requirements

[ ] Tests for the changes have been added/updated (for bug fixes/features)
[ ] Docs have been added/updated (for bug fixes/features)
[ ] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[x] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)

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

Describe the reason for change
Timeline spans can only be drawn within visible area and they can't be changed after. So we are adding ability to increase/change them at least via the start/end editable fields.
What alternative approaches were there?
Allow to change spans on timeline, but that's much more effort and more complex UX.
Does this PR introduce a breaking change?

[ ] Yes, and covered entirely by feature flag(s)
[ ] Yes, and covered partially by feature flag(s)
[x] No
[ ] Not sure (briefly explain the situation below)

What level of testing was included in the change?

[ ] e2e
[ ] integration
[ ] unit

/git merge

/git merge


only print the file names of changed files

for now, when I run js-beautify from cli, it will print all the file names passed to js-beautify, but some are not changed.
So, it's better to print the names of changed files only.

Could you give an example of the command-line you call and the output?

Forgive my pool English :cry:
When I run the cli with -r flag, it will display all the files passed to the cli. Such as I have some files
a.js
b.js
c.js

Always show
beautified a.js
beautified b.js
beautified c.js

But, not all the files are changed, some files have been beautified.
Only display the changed files, such as (If only b.js is changed)
beautified b.js

Ah, ok.

Updated and added tests.  @coderhaoxin - please take a look and tell me if the behavior is still what you'd expect.


Can't connect to a device from vs code

Steps to Reproduce

Logs

[√] Flutter (Channel stable, v1.0.0, on Microsoft Windows [VersiÃ³n 6.3.9600], locale es-CL)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    X Android license status unknown.
[√] Android Studio (version 3.2)
[√] VS Code, 64-bit edition (version 1.29.1)
[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

Hello, I'm trying to run the code template as my first attempt to work with flutter. I've setted a device with the android studio emulator with charasteristics as follows:
Nexus 5x - api 25 - Nougat 7.1 arm64
I'm working on an amd processor in windows 8.1 aswell. The main issue is when I try to run the emulator inside vs code. It launches the device but after a while it throws the next error:
+Failed to launch emulator: Error: Emulator didn't connected within 60 seconds
Origen: Dart
Even when I try to run the app from android studio it doesn't connect, and doesn't even gives some error message.
I would appreciate any help or recommendation to finally start working with flutter.

https://stackoverflow.com/a/56857495/8350143

https://stackoverflow.com/a/56857495/8350143

voici pour moi c'est que s'affiche:
List of devices attached

daemon not running; starting now at tcp:5037
ADB server didn't ACK
Full server startup log: /tmp/adb.1000.log
Server had pid: 6759
--- adb starting (pid 6759) ---
adb I 07-25 13:29:51  6759  6759 main.cpp:57] Android Debug Bridge version 1.0.39
adb I 07-25 13:29:51  6759  6759 main.cpp:57] Version 1:8.1.0+r23-5~18.04
adb I 07-25 13:29:51  6759  6759 main.cpp:57] Installed as /usr/lib/android-sdk/platform-tools/adb
adb I 07-25 13:29:51  6759  6759 main.cpp:57]
error: could not install smartsocket listener: Address already in use

failed to start daemon
error: cannot connect to daemon

is there anyone who solve this issue on MacOS? Please share your suggestion. Thanks al lot.

just create project offline


Use a make_insert_query function in test_sql.py

Fixes
Fixes #1835 by @AetherUnbound
Description
Created a utility function make_insert_statement and refactored the test_sql tests to use it.
Testing Instructions
Just run the tests and see that they still work
Checklist

[x] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[ ] My commit messages follow best practices.
[ ] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (if applicable).

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Great! Happy to help. Will have a look, if there is something else, I can tackle.


Don't omit dependencies if only some deep modules are declared

The problem that https://github.com/microsoft/DefinitelyTyped-tools/pull/384#issue-1107485477 addressed is that getModuleInfo() returns dependencies that are types package names and declaredModules that are full (possibly deep) module specifiers. Then getTypingInfo() tries to exclude the declared modules from the dependencies: https://github.com/microsoft/DefinitelyTyped-tools/blob/c037daa09fdfb854535a521a4a0015e52a491628/packages/types-publisher/src/lib/definition-parser.ts#L100-L102
https://github.com/microsoft/DefinitelyTyped-tools/pull/384#issue-1107485477 addressed the mismatch by calling rootName() on the declared modules, so we're comparing package names to package names. The problem with that is some packages declare some deep modules while legitimately depending on others, e.g. meteor-dburles-collection-helpers imports meteor/meteor but only declares meteor/dburles:collection-helpers. Consequently meteor is excluded from its dependencies and the DT CI fails because dtslint-runner doesn't install Meteor's transitive dependencies (MongoDB).
I think the solution is, instead of comparing names to names, we need to compare (possibly deep) specifiers to specifiers.
What I did was:

Add a test, based on meteor-dburles-collection-helpers, that fails.
Make getModuleInfo() return full specifiers in dependencies, same as in declaredModules.
Faithfully move rootName() from module-info.ts -> definition-parser.ts and do the excluding of the current package from dependencies in getTypingInfo() vs. getModuleInfo().
Move two tests, versionTypeRefThrows() and selfVersionTypeRefAllowed(), from module-info.test.ts -> definition-parser.test.ts, because rootName() is now called from getTypingInfo() vs. getModuleInfo().
Update the remaining getModuleInfo() tests for the fact it now returns full specifiers, and doesn't exclude the current package.

I noticed that check parse results was once a script like the other publisher steps, so you could run it independently from dtslint-runner:

https://github.com/microsoft/DefinitelyTyped-tools/pull/6/commits/d23bd765263fbc90340c8ebe028ce32399f014ba#diff-cbadef7b90b30704b8749c037ef6f08e64f106af06a85ada118db2b38b3e49e6L27-L37
https://github.com/microsoft/DefinitelyTyped-tools/pull/6/commits/d23bd765263fbc90340c8ebe028ce32399f014ba#diff-a182e89b4cb593f1dbade9fc181c81b168e03f8b25b0bc9cddc3d3b0cab83b46L44

I've now added a commit to this PR to restore that and make it an entry point again, and then run just check parse results from the workflow.
I also moved check parse results from the definitions-parser to the dtslint-runner package, because that's the only place it's used, currently?

(I've now based the test on styled-components-react-native vs. meteor-dburles-collection-helpers since that's what the issue this PR fixes is about. It's the same test, otherwise.)


DOM Spec Input - Virtual MutationRecords

This is a request for input on data binding and web component state:
With respect to   and  elements, change events do not currently map to MutationRecords, please see https://www.w3.org/Bugs/Public/show_bug.cgi?id=23226 , please make any comments that you find relevant.
IRC recommended I make an issue

Looks like we never got around to participate and the discussion is closed. Oh well!


[module/bspwm] doesn't handle certain monitor names

Checklist

[x] I have read the appropriate section in the contributing
guidelines
[x] I believe this issue is a problem with polybar itself and not a misconfiguration on my part.
[x] I have searched for other open and closed issues that
may have already reported this problem.
[x] I have checked the known issues page for this problem.

Describe the bug
Module bspwm uses ipc command to focus workspace:
desktop -f <mon_name>:^<mon_index>+<clicked_ws_index>
From man bspc:

The following characters cannot be used in monitor or desktop names: #, :, .

Unfortunately, my monitors got names: DP-1.1 and DP-1.2:
xrandr -q | grep -w connected
DP-1.1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
DP-1.2 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 598mm x 336mm
DP-0 connected (normal left inverted right x axis y axis)

so they are monitor ... with an invalid name. (man bspc)
Therefore command e.g  bspc desktop -f DP-1.2:^2 doesn't work saying:
desktop -f: Invalid modifier found in 'DP-1.2:^2' and click on workspace ignored without any error/warning message in polybar logs.
My dury hack/fix:
To fix it locally I introduced new module field workspace_addition list with a number that must be added to a <clicked_ws_index> and changed ipc command to: bspc desktop -f <new_clicked_ws_index>
Expected behavior:
Click on workspace button should focus corresponding workspace
Actual behavior:
Nothing
Was it working before?

Did you also experience this bug in an earlier version of polybar (yes/no/don't know)?
If no, what was the last version where this worked correctly?

I haven't found somebody mentioned such issue, and it is my first try of bspwm+polybar
To Reproduce
Monitor name must have forbidden, from bspwm point of view, characters
bsprc:
bspc monitor %DP-1.1 -d 1 2 3 4 5 6 7 8 9 10
bspc monitor %DP-1.2 -d 11 12 13 14 15 16 17 18 19 20

polybar_config:
[bar/left]
inherit = bar/base

monitor = DP-1.1
modules-left = bspwm

[bar/right]
inherit = bar/base

monitor = DP-1.2
modules-left = bspwm

[module/bspwm]
type = internal/bspwm

;workspace_addition-0 = DP-1.1;0
;workspace_addition-1 = DP-1.2;10

pin-workspaces = true
inline-mode = false
enable-click = true
enable-scroll = false
reverse-scroll = false

format = <label-state> <label-mode>

label-monitor = %name%
label-dimmed-focused-background = #60777777

label-focused = %name%
label-focused-foreground = ${color.white}
label-focused-background = #88ac3939
label-focused-underline = #fba922
label-focused-padding = 1

label-occupied = %name%
label-occupied-underline = #555555
label-occupied-foreground = ${color.foreground-desktop}
label-occupied-padding = 1

label-urgent = %name%
label-urgent-foreground = ${color.black}
label-urgent-background = ${color.orange}
label-urgent-underline = #9b0a20
label-urgent-padding = 1

label-empty =
label-empty-foreground = ${color.foreground}
label-empty-padding = 1

label-monocle = 
label-tiled = 
label-fullscreen = 
label-floating = 
label-pseudotiled = P
label-locked = 
label-sticky = 
label-private = 

label-monocle-padding = 1
label-tiled-padding = 1
label-fullscreen-padding = 1
label-floating-padding = 1
label-pseudotiled-padding = 1
label-locked-padding = 1
label-sticky-padding = 1
label-private-padding = 1

label-monocle-foreground = ${color.foreground-desktop}
label-tiled-foreground = ${color.foreground-desktop}
label-fullscreen-foreground = ${color.foreground-desktop}
label-floating-foreground = ${color.foreground-desktop}
label-pseudotiled-foreground = ${color.foreground-desktop}
label-locked-foreground = ${color.foreground-desktop}
label-sticky-foreground = ${color.foreground-desktop}
label-private-foreground = ${color.foreground-desktop}

label-separator-padding = 1
label-separator-foreground = ${color.background}

Polybar Log
Click on ws 11
* Delivered action to 1 module
- bar: Received button press: 1 at pos(13, 17)
- Found matching input area
- controller: Processing inputdata: #bspwm.focus.0+1
* Forwarding action to modules (module: 'bspwm', action: 'focus', data: '0+1')
* module/bspwm: Sending desktop focus command to ipc handler
* Delivered action to 1 module

Screenshots

Environment:

WM: bspwm
Distro: Ubuntu 20.04.2 LTS x86_64
Output of polybar -vvv:

polybar 3.5.5-116-g10bbec44-dev

Features: -alsa +curl +i3 +mpd +network(wireless-tools) +pulseaudio +xkeyboard

X extensions: +randr (+monitors) +composite +xkb -xrm +xcursor

Build type: Release
Compiler: /usr/bin/clang++
Compiler flags:  -Wall -Wextra -Wpedantic -Wno-error=parentheses-equality -Wno-zero-length-array -O3 -DNDEBUG
Linker flags:

Additional context
Just in case here my changes attached: diff.txt

Thanks for reporting :)
The workaround you describe only works if all desktops on the same monitor are right next to each other. Anything else doesn't work.
The DESKTOP_SEL in man bspc describes different ways to select desktops that don't involve the monitor name:

Use the hex ID of the desktop. bspwm doesn't provide this in its report format, so this may not be feasible to use
Use only the name of the desktop. I guess this will have similar issues as using monitor names
Use only a desktop index. The question would be how this can be determined (the manpage is not clear on that)
Use the monitor index instead of the monitor name.

The last one sounds best to me since it should only require minimal changes. Can you try the following diff:
diff --git a/src/modules/bspwm.cpp b/src/modules/bspwm.cpp
index f9ad8353..001012c8 100644
--- a/src/modules/bspwm.cpp
+++ b/src/modules/bspwm.cpp
@@ -455,7 +455,7 @@ namespace modules {
     string workspace_n{data.substr(separator + 1)};

     if (monitor_n < m_monitors.size()) {
-      send_command("desktop -f " + m_monitors[monitor_n]->name + ":^" + workspace_n,
+      send_command("desktop -f ^" + to_string(monitor_n) + ":^" + workspace_n,
           "Sending desktop focus command to ipc handler");
     } else {
       m_log.err("%s: Invalid monitor index in command: %s", name(), data);

Thank you for the options

Use the monitor index instead of the monitor name.

I run 2 instances of polybar, one per monitor. so 'monitor_n' is always 0, as 'm_monitors' array has only one element
Is there a way to run one instance with 2 bars on different monitors?
My workaround also doesn't work if I move the desktop to another monitor. I am planning to look at 'xworkspaces' module and copy some code from it, because it works fine :)

Oh, pin-workspaces probably leads to the module not registering all monitors. I guess the proper way to solve this is to maintain a complete view of the bspwm state in the module and apply things like pin-workspaces only when actually displaying stuff.

I am planning to look at 'xworkspaces' module and copy some code from it, because it works fine

The xworkspaces module is fundamentally different, so its techniques will likely not apply in this module.

No, but if you set pin-workspaces = false the m_monitors array should contain more elements.

I know, but I need different modules on monitors

fixed (for now) by sending label text:
if (m_click) {
    builder->action(mousebtn::LEFT, *this, EVENT_FOCUS, sstream() << ws.second->get(), ws.second);
}

It will be broken again in the future when I implement dynamic icon change, depending on windows on a workspace, but it is good enough for now :)

As I said it become broken after I started to use dynamic desktop renaming.
But I found a new solution:
the only thing I missed is the monitor index(because of pin-workspaces = true), so I add index field into struct bspwm_monitor. Now focus payload looks like this: bspc desktop -f ^<mon_index>:^<workspace_n>

Now focus payload looks like this: bspc desktop -f ^<mon_index>:^<workspace_n>

That's probably the safest solution for this. Mind opening a PR with your changes?

Mind opening a PR with your changes?

sure, https://github.com/polybar/polybar/pull/2454


MEMBERSHIP: tnthornton

GitHub Username
@tnthornton
Requirements

[X] I have reviewed the community membership guidelines
[X] I have enabled 2FA on my GitHub account
[X] I have joined the Crossplane slack channel
[X] I am actively contributing to the Crossplane project
[X] I have two sponsors that are current Crossplane Org members
[X] I have spoken to my sponsors ahead of this application, and they have agreed to sponsor my application

Sponsors

@jbw976
@hasheddan

List of contributions to the Crossplane project

PRs reviewed / authored
currently working on https://github.com/crossplane/provider-aws/issues/85

+1 for me, @tnthornton contribution for adding EC2 instance support will be great for the community!

+1 from me, welcome @tnthornton!

@tnthornton, you have been sent an invite to join the crossplane org :)

Sweeet, thanks!


Fix Copyright

Just state the license.
Not clear that CC applied to DoSOCS

I have cleared all the relating information and just stated the license


long time to resume "hidden brain from tunein"

Briefly summarize your issue:
The sdk needs long time to resume the hidden brain on tunein.
What is the expected behavior?
Resume in short time .
What behavior are you observing?
The time to resume depend on offset to resume. If the offset is more than 10 minutes, it needs about 20 seconds(depend on net speed) to resume.
Provide the steps to reproduce the issue, if applicable:

Play Hidden brain on tunein
Wait 10 minutes
pause
resume

Tell us about your environment:
What version of the AVS Device SDK are you using?
  SDK <1.8.1>

Tell us what hardware you're using:

[ ] Desktop / Laptop
[x] Raspberry Pi
[x] Other - tell us more: linux

Tell us about your OS (Type & version):

[x] Linux
[ ] MacOS
[ ] Raspbian Stretch
[x] Raspbian Jessy
[ ] Other - tell us more:

Hi @leino11121, thanks for letting us know about this.  Unfortunately this is by design, as the SDK would need to download the stream from the beginning and only resume playing only when the initial offset is reached.  I will open an internal ticket to see if there's any improvements that can be made regarding this.  Thanks!

I am closing this issue due to inactivity. Please feel free to re-open it if it has been closed in error.


posix: implement getpmsg()

This is part of the See POSIX Roadmap for LTSv3 (RFC #51211).
getpmsg() is required as part of _XOPEN_STREAMS Option Group.
For more information, please refer to https://pubs.opengroup.org/onlinepubs/9699919799/functions/getpmsg.html

hey @ycsin, I am new to Zephyr and would like to work on this issue. Can you please assign me it.


Fix/deprecation warnings

Two of the commits are for Django 2.0 and 2.1 compatibility.
The firs one ("Regexes should be RAW all properly escaped") was needed to reduce the number of deprecation warnings which I see when run Python with -Wdefault.
If you think that this is too much noise I can separate it in another merge request.

Tests are failing because of filebrowser_safe. There should be new version which supports Django 2.0 in order Mezzanine tests to pass. The problem is that failbrowser_safe CI depends on Mezzanine in order to pass. It's like chicken and egg problem.

From the failing tests in #1886 I see that none of the changes here is required for Django 2.0/2.1. Probably after merging #1886 and #1887 and resolving the last failing test then I can rebase these changes to be properly tested especially regular expressions.

Thanks a lot


python37Packages.cmd2: 1.0.1 -> 1.0.2

Semi-automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/python3.7-cmd2/versions.
meta.description for python37Packages.cmd2 is: "Enhancements for standard library's cmd module"
meta.homepage for python37Packages.cmd2 is: "https://github.com/python-cmd2/cmd2"
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 1.0.2 with grep in /nix/store/mdv8kcf6vcn4ka0vz469zxmcj4nks2mq-python3.7-cmd2-1.0.2

directory tree listing: https://gist.github.com/88ba104dde078f91514483e2e84ef544

du listing: https://gist.github.com/cb9c1bc2cea090966e5120322b123ad5

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

19 total rebuild path(s)

5 package rebuild(s)

5 x86_64-linux rebuild(s)
4 i686-linux rebuild(s)
5 x86_64-darwin rebuild(s)
5 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
python37Packages.cliff
python37Packages.cmd2
python37Packages.optuna
python38Packages.cliff
python38Packages.cmd2

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/mdv8kcf6vcn4ka0vz469zxmcj4nks2mq-python3.7-cmd2-1.0.2 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python37Packages.cmd2 https://github.com/r-ryantm/nixpkgs/archive/8327f80be38a15e9b49e7dde970148388361018b.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/mdv8kcf6vcn4ka0vz469zxmcj4nks2mq-python3.7-cmd2-1.0.2
ls -la /nix/store/mdv8kcf6vcn4ka0vz469zxmcj4nks2mq-python3.7-cmd2-1.0.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

1 package failed to build:
- python37Packages.optuna

4 packages built:
- python37Packages.cliff
- python37Packages.cmd2
- python38Packages.cliff
- python38Packages.cmd2

Maintainer pings
cc @teto for testing.

oops, forgot to merge, was looking to optuna failure


Search for gradle projects in nested directories

Refs #86
This adds support for detecting gradle projects in nested subdirectories. I might make this configurable...
Screenshots
Here is the latest changes with nested gradle projects grouped by relative folder name. This is done to prevent conflict with sub-projects which are displayed at the workspace root.

Example of deeply nested projects:

Here is the flutter project, grouped by "android" directory name:

Here is a gradle project without nested root project directories but with subprojects:

Here is the latest changes with nested gradle projects grouped by relative folder name. This is done to prevent conflict with sub-projects which are displayed at the workspace root.

Here is the flutter project, grouped by "android" directory name:

Here is a gradle project with subprojects:

TODO: fix the duplicated gradle task descriptions in the command pallet:

Latest version, with sub project directory name added to task name. It's noisy but it's consistent with the npm extension:

I want to do explore the possibility of not making the task name noisy, but instead utilizing task descriptions. That way the explorer won't be noisy with redundant information, and it will be clear which task belongs to which project in the command pallet.

I can't add task details, this seems to be an internal thing (the npm extension sets task.detail but it's of type vscode.Task2 which is not exposed).


Test for "Build(deps-dev): bump danger from 7.1.4 to 8.0.0"

This is a test for https://github.com/badges/shields/pull/3553. We should get a warning "This PR modified the server but none of its tests. That's okay so long as it's refactoring existing code.". This PR should be closed if danger works properly.

Danger is diabled for branches /dependabot\/.*/. I will create a new PR.


Add FeatureOverridesChanged SyncUIEvent to SyncUIEventDispatcher

In SyncUIEventDispatcher, there are currently no SyncUIEvent that listens to when a feature override is applied/removed.
Add FeatureOverridesChanged in SyncUIEventIds and add a listener to the viewport's onFeatureOverridesChanged event.

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


ci: Consistently use Ubuntu 24.04

Use ubuntu-24.04 for all GitHub workflows. Previously, some workflows used ubuntu-latest while others used ubuntu-22.04. Using a specific version avoids unwanted upgrades which could break CI.
Upgrading the Docker build to ubuntu-24.04 requires updating the free-disk-space action as the ubuntu-24.04 runners do not have pre-installed Docker images anymore. Also the list of tools to delete needs to be updated.

Unfortunately, at least the REUSE failure seems to be a real one.

Unfortunately, at least the REUSE failure seems to be a real one.

Installing reuse with pipx install reuse instead of pip should fix it.

Unfortunately, at least the REUSE failure seems to be a real one.

Installing reuse with pipx install reuse instead of pip should fix it.

Using pipx anyway is a good idea!

Unfortunately, at least the REUSE failure seems to be a real one.

Installing reuse with pipx install reuse instead of pip should fix it.

Using pipx anyway is a good idea!

I had to do the same change in the ORT CI for installing ScanCode, but I was wondering why I didn't have to do it for reuse there as well. It seems the reason is that it's using the setup-python action:
  reuse-tool:
    runs-on: ubuntu-24.04
    steps:
    - name: Checkout Repository
      uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
    - name: Setup Python
      uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5
      with:
        python-version: "3.10"
        cache: pip
    - name: Check REUSE Compliance
      run: |
        pip install --user reuse
        ~/.local/bin/reuse lint

@sschuberth I would align the job in ORT with the on here as it is simpler, if you agree.

@sschuberth I would align the job in ORT with the on here as it is simpler, if you agree.

Yes, fine with me.

Anyone mind approving this?


Invalid publicPath for unix systems

Issue Type

[x] Bug
[ ] Feature

Description
In many places in configurations, publicPath is set to /. On Unix systems that leads directly to the root directory - which is, and should be, inaccessible for normal apps.
When trying to use react-boilerplate to set up a sample cordova / phonegap / electron / any-other-non-directly-browser-app this causes the app to fail (since /main.<hash>.js cannot be loaded).
In this case I'd guess what config files mean is ./ (current directory) not / (system root directory).
Steps to reproduce
Easily reproducible by setting up a simple cordova ios app (much harder with electron) and putting pre-build react-boilerplate app into www/ directory. In debugging mode on iOS in console under resources/Scripts there's an indicator saying that /main.<hash>.js script couldn't be loaded - hence app will never launch.
Versions

React-Boilerplate: 3.5.0
Node/NPM: -
Browser: -

Closing due to inactivity


JAVA-20630 upgrade maven war plugin to be compatible with JDK 11 and 17

test this please

test this please


[Schema Registry] Generating from Typespec

/azp run net - schemaregistry - tests

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Data.SchemaRegistry

/azp run net - schemaregistry - tests


[cxx-interop] Minor refactoring: remove a redundant check

cast<CustomAttr> never returns nullptr, it either returns a non-null CustomAttr* or traps. This if condition was triggering a clang-tidy warning, since it is redundant.

@swift-ci please smoke test


Update whitespace in LICENSE file

Matches license file at http://www.apache.org/licenses/LICENSE-2.0.txt

:+1:


Need to send null values in body parameters

API requires null as parameter in MultiPart. But library deletes it.

Why such restrictions?

Do you mean that the server requires a null string when  the string is null

Feel free to reopen it  if it still doesn't work

hi @trevorwang
i just ran into the same problem:
  @POST('/test')
  @PreventNullToAbsent()
  Future<ResponseDto> createFile({
    @Part(name: 'interests[]') required List<String> interests,
    @Part(name: 'images[]') required List<MultipartFile> images,
  });```

when calling createFile with an empty array for interests the formData key interests[] doesnt exist.
Doesnt matter if I use PreventNullToAbsent or not.

Any ideas?


[backport] Fix filtering FutureWarning

This PR is backport of #6135

See #6052

This will be backported in #6052.


application gateway not able to connect to istio ingress gateway.

Bug Description
we have app gateway with istio gateway configured with lb in between. app gateway has host http override. Issue is app gateway health check failing with 502.  istio deployed using istioctl install --set profile=demo -y
command. the setup works with Nginx ingress controller. i have created gateway and vs with 80 and 443 with Kubernetes tls secrets
Version
root@KH2227_L:~/istio-1.11.4# istioctl version
client version: 1.11.4
control plane version: 1.11.4
data plane version: 1.11.4 (20 proxies)

root@KH2227_L:~/istio-1.11.4# kubectl version --short
Client Version: v1.20.7
Server Version: v1.20.9

Additional Information
No response

This doesn't have enough information to debug. Please attach a bug-report as requested


esp32s3: Enable ESP_TLS_USE_DS_PERIPHERAL may slow down https upload (IDFGH-12998)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v5.2.2-89-gcc9edf2085 and master
Espressif SoC revision.
ESP32S3
Operating System used.
Linux
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
ESP32S3-WROOM-1
Power Supply used.
USB
What is the expected behavior?
In my test, I found the esp32s3 had bad performance when uploading data to https server (compare to esp32).
I found CONFIG_ESP_TLS_USE_DS_PERIPHERAL=y sometimes can cause very long upload time.
CONFIG_ESP_TLS_USE_DS_PERIPHERAL=n
With this setting, the upload time is stable, it usually takes 3 seconds to upload 30K files.
Sometimes, it takes 10 seconds to upload (seems join a weak signal AP).

I (48334) esp-tls-mbedtls: (FFFF9780):
D (63338) transport_base: poll_write: select - Timeout before any socket was ready!
W (63338) transport_base: Poll timeout or error, errno=No more processes, fd=48, timeout_ms=15000
I (63344) HTTPS_UPLOAD: filename=20240611-16:50:20.jpg file_length=30266
D (16274) esp-tls-mbedtls: Fragmenting data of excessive size :30467, offset: 0, size 4096
D (16278) esp-tls-mbedtls: Fragmenting data of excessive size :30467, offset: 4096, size 4096
D (19905) esp-tls-mbedtls: Fragmenting data of excessive size :30467, offset: 8192, size 4096
D (50411) esp-tls-mbedtls: mbedtls_ssl_write() returned -0x6880, already written 8192, exitting...

CONFIG_ESP_TLS_USE_DS_PERIPHERAL=y should have better performance than CONFIG_ESP_TLS_USE_DS_PERIPHERAL=n.
Steps to reproduce.
My test simply join an AP and upload a JPG file to https server.
Debug Logs.
BTW,
I use .sort_method = WIFI_CONNECT_AP_BY_SIGNAL, in my wifi_config.
However, it seems the esp32s3 does not always connect to the best signal AP.
Below log shows the STA connect to d8:47:32:7c:37:ae, but it's not the best signal AP.

D (4536) wifi:Start wifi connect
D (4539) wifi:connect status 0 -> 0
D (4542) wifi:connect chan=0
D (4544) wifi:first chan=1
D (4547) wifi:connect status 0 -> 1
D (4550) wifi:filter: set rx policy=3
D (4553) wifi:clear scan ap list
D (4556) wifi:start scan: type=0x50f, priority=2, cb=0x42089ce0, arg=0x0, ss_state=0x1, time=4561856, index=0
0x42089ce0: cnx_start_handoff_cb at ??:?

D (4566) wifi:perform scan: ss_state=0x9, chan<1,0>, dur<0,120>
D (4692) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (4693) wifi:perform scan: ss_state=0x9, chan<2,0>, dur<0,120>
D (4813) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (4814) wifi:perform scan: ss_state=0x9, chan<3,0>, dur<0,120>
D (4935) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (4935) wifi:perform scan: ss_state=0x9, chan<4,0>, dur<0,120>
D (5056) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5057) wifi:perform scan: ss_state=0x9, chan<5,0>, dur<0,120>
D (5178) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5178) wifi:perform scan: ss_state=0x9, chan<6,0>, dur<0,120>
D (5299) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5300) wifi:perform scan: ss_state=0x9, chan<7,0>, dur<0,120>
D (5421) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5421) wifi:perform scan: ss_state=0x9, chan<8,0>, dur<0,120>
D (5542) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5543) wifi:perform scan: ss_state=0x9, chan<9,0>, dur<0,120>
D (5664) wifi:scan end: arg=0x0, status=0, ss_state=0x3
D (5664) wifi:perform scan: ss_state=0x9, chan<10,0>, dur<0,120>
D (5681) wifi:rsn valid: gcipher=3 ucipher=3 akm=5 mac=ac:84:c6:32:1a:26
D (5682) wifi:profile match: ss_state=0x7
D (5701) wifi:rsn valid: gcipher=3 ucipher=3 akm=5 mac=ac:84:c6:32:14:77
D (5702) wifi:profile match: ss_state=0x7
D (5706) wifi:rsn valid: gcipher=3 ucipher=3 akm=5 mac=ac:84:c6:32:1a:26
D (5708) wifi:profile match: ss_state=0x7
D (5756) wifi:rsn valid: gcipher=3 ucipher=3 akm=5 mac=d8:47:32:7c:37:ae
D (5756) wifi:profile match: ss_state=0x7
D (5764) wifi:rsn valid: gcipher=3 ucipher=3 akm=5 mac=ac:84:c6:32:14:77
D (5764) wifi:profile match: ss_state=0x7
D (5785) wifi:scan end: arg=0x0, status=0, ss_state=0x7
D (5786) wifi:perform scan: ss_state=0xd, chan<11,0>, dur<0,120>
D (5907) wifi:scan end: arg=0x0, status=0, ss_state=0x7
D (5907) wifi:perform scan: ss_state=0xd, chan<12,0>, dur<360,360>
D (6268) wifi:scan end: arg=0x0, status=0, ss_state=0x7
D (6268) wifi:perform scan: ss_state=0xd, chan<13,0>, dur<360,360>
D (6629) wifi:scan end: arg=0x0, status=0, ss_state=0x7
D (6629) wifi:perform scan: ss_state=0xd, chan<14,0>, dur<360,360>
D (6990) wifi:scan end: arg=0x0, status=0, ss_state=0x7
D (6990) wifi:filter: set rx policy=4
D (6991) wifi:first chan=1
D (6991) wifi:handoff_cb: status=0
D (6993) wifi:ap found, mac=d8:47:32:7c:37:ae
D (7362) wifi:going for connection with bssid=d8:47:32:7c:37:ae
D (7362) wifi:new_bss=0x3fca5288, cur_bss=0x0, new_chan=<10,2>, cur_chan=1
D (7363) wifi:filter: set rx policy=5
I (7367) wifi:new:<10,2>, old:<1,0>, ap:<255,255>, sta:<10,2>, prof:1
D (7373) wifi:connect_op: status=0, auth=5, cipher=3
D (7378) wifi:auth mode is not none
D (7381) wifi:connect_bss: auth=1, reconnect=0
I (7385) wifi:state: init -> auth (b0)
D (7389) wifi:start 1s AUTH timer
D (7392) wifi:clear scan ap list
D (7395) event: running post WIFI_EVENT:41 with handler 0x42011e50 and context 0x3fcbc40c on loop 0x3fcb5b14
I (7404) app_got_event: WIFI_EVENT_HOME_CHANNEL_CHANGE: old_chan=1/old_snd=0, new_chan=10/new_snd=2
D (7405) wifi:recv auth: seq=2, status=0
I (7417) wifi:state: auth -> assoc (0)
D (7421) wifi:restart connect 1s timer for assoc
D (7436) wifi:recv assoc: type=0x10
D (7437) wifi:filter: set rx policy=6
I (7437) wifi:state: assoc -> run (10)
D (7437) wifi:start 10s connect timer for 4 way handshake
I (7464) wifi:connected with IGS-MESH, aid = 5, channel 10, 40D, bssid = d8:47:32:7c:37:ae
I (7465) wifi:security: WPA2-PSK, phy: bgn, rssi: -57
D (7466) wifi:remove all except d8:47:32:7c:37:ae from rc list
D (7472) wifi:clear blacklist
D (7474) wifi:filter: set rx policy=7
I (7478) wifi:pm start, type: 1

I (7481) wifi:dp: 1, bi: 102400, li: 3, scale listen interval from 307200 us to 307200 us
I (7489) wifi:set rx beacon pti, rx_bcn_pti: 0, bcn_timeout: 25000, mt_pti: 0, mt_time: 10000
D (7497) wifi:Send sta connected event
D (7500) wifi:connect status 1 -> 5
D (7504) wifi:obss scan is disabled
D (7507) wifi:start obss scan: obss scan is stopped
I (7512) wifi:AP's beacon interval = 102400 us, DTIM period = 1
D (7518) event: running post WIFI_EVENT:4 with handler 0x42055fc0 and context 0x3fcbc1e8 on loop 0x3fcb5b14
0x42055fc0: wifi_default_action_sta_connected at /home/axel/esp/esp-idf/components/esp_wifi/src/wifi_default.c:85

D (7527) esp_netif_handlers: esp_netif action connected with netif0x3fcbc2dc from event_id=4
D (7535) esp_netif_lwip: check: remote, if=0x3fcbc2dc fn=0x4203e434
0x4203e434: esp_netif_up_api at /home/axel/esp/esp-idf/components/esp_netif/lwip/esp_netif_lwip.c:1647

D (7542) esp_netif_lwip: esp_netif_up_api esp_netif:0x3fcbc2dc
D (7548) esp_netif_lwip: check: local, if=0x3fcbc2dc fn=0x4203ed44
0x4203ed44: esp_netif_update_default_netif_lwip at /home/axel/esp/esp-idf/components/esp_netif/lwip/esp_netif_lwip.c:316

D (7554) esp_netif_lwip: esp_netif_update_default_netif_lwip 0x3fcbc2dc
D (7561) esp_netif_lwip: call api in lwip: ret=0x0, give sem
D (7566) esp_netif_lwip: check: remote, if=0x3fcbc2dc fn=0x4203e854
0x4203e854: esp_netif_dhcpc_start_api at /home/axel/esp/esp-idf/components/esp_netif/lwip/esp_netif_lwip.c:1439

D (7573) esp_netif_lwip: esp_netif_dhcpc_start_api esp_netif:0x3fcbc2dc
D (7579) esp_netif_lwip: esp_netif_start_ip_lost_timer esp_netif:0x3fcbc2dc
D (7586) esp_netif_lwip: if0x3fcbc2dc start ip lost tmr: interval=120
D (7593) esp_netif_lwip: starting dhcp client
D (7598) esp_netif_lwip: call api in lwip: ret=0x0, give sem
D (7598) wifi:eb is dhcp or dns sport = 68, dport = 67
D (7608) event: running post WIFI_EVENT:4 with handler 0x42011e50 and context 0x3fcbc40c on loop 0x3fcb5b14
I (7629) wifi:<ba-add>idx:0 (ifx:0, d8:47:32:7c:37:ae), tid:6, ssn:2, winSize:64
D (7633) wifi:eb is dhcp or dns sport = 68, dport = 67
D (8598) esp_netif_lwip: esp_netif_internal_dhcpc_cb lwip-netif:0x3fcbc360
D (8599) esp_netif_lwip: if0x3fcbc2dc ip changed=1
D (8599) event: running post IP_EVENT:0 with handler 0x42056018 and context 0x3fcbc2bc on loop 0x3fcb5b14
0x42056018: wifi_default_action_sta_got_ip at /home/axel/esp/esp-idf/components/esp_wifi/src/wifi_default.c:127

D (8609) wifi_init_default: Got IP wifi default handler entered
D (8615) esp_netif_handlers: esp_netif action got_ip with netif0x3fcbc2dc from event_id=0
I (8623) esp_netif_handlers: sta ip: <IP_ADDRESS>, mask: <IP_ADDRESS>, gw: <IP_ADDRESS>

More Information.
No response

My https application uses the esp_http_client component APIs and the same code also works on ESP32.
I'm confused why changing CONFIG_ESP_TLS_USE_DS_PERIPHERAL setting has impact with ESP32S3 behavior
because I didn't set ds_data in my esp_http_client_config_t. (ds_data is NULL).

With further testing, I think this issue is not related to ESP_TLS_USE_DS_PERIPHERAL
setting. Especially ds_data is NULL in my application code. So I'm closing this issue.
However, I observe below symptoms:

Setting CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC=y will decrease the upload performance.
I'm not sure if it's reasonable, but that is what I observed. (with flash encryption enabled)
Now I switch back to CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y as a workaround.
ESP32S3 with .sort_method = WIFI_CONNECT_AP_BY_SIGNAL sometimes will join a bad signal AP.
I think this is a bug because testing with ESP32 looks fine, it only happens on ESP32S3.
But this is a different issue, I will open a new issue for it.


Reorder SQL migrations to fix some upgrade issues

What does this PR (Pull Request) do?
This moves some SQL migrations past the last one in 5.0.x that were not in the 4.1.x and 5.0.x branch.

[x] This PR  is not related to any Issue

Which Traffic Control components are affected by this PR?

Traffic Ops

What is the best way to verify this PR?
Do a DB upgrade from 5.0.0 to 5.1.0
If this is a bug fix, what versions of Traffic Control are affected?

5.0.0
5.1.0

The following criteria are ALL met by this PR

[x] This PR includes tests OR I have explained why tests are unnecessary
[x] This PR includes documentation OR I have explained why documentation is unnecessary
[x] This PR includes an update to CHANGELOG.md OR such an update is not necessary
[x] This PR includes any and all required license headers
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

Ok, once this is merged it can be backported to 5.1.x, so we don't need https://github.com/apache/trafficcontrol/pull/5528.

Yeah, I can do that for you. No need of a separate PR

Just curious what the difference is?

By cherrypicking, we include the original commit hash from master by using the -x option. It also helps ensure that the master version and the 5.1.x version are actually the same changes (in case we request changes here which would cause it to diverge from the 5.1.x PR that was opened simultaneously).


Configuration API changes - First Iteration

*** DO NOT MERGE ***
This is a PR in development with breaking changes and hence please do not merge this.
Description:
Configuration object added to the code and modified the MSAL interface accordingly. Added a new folder msal_apichanges to have a cleaner testing.
To review this, one may need to compare with the files in core. For now, this is needed as further development is based on this branch. So please compare "Configuration.ts" and "UserAgentApplication.ts" files in msal-core vs msal-apichange for this cut. The next iterations on this will be more straightforward based off this branch.

Please add DO NOT MERGE to this pr so its clear we should not merge to dev

@DarylThayil  done.

why did we decide that 4 auth areas was better than a flat config object? Especially because the general user will be only passing in 3 items ?

The more I look at this, the more I wonder if acquireTokenRedirectCallBack is a part of the new Msal.UserAgentApplication it should be a part of the options

@DarylThayil There is an internal PR for this. Lets sync up offline?

can we start breaking things up here with a folder structure like this
/src/configuration
     BuildConfig.js
     TConfiguration.js
     TAuthConfig.js

etc...

can we start breaking things up here with a folder structure like this
/src/configuration
     BuildConfig.js
     TConfiguration.js
     TAuthConfig.js

etc...

Yes @DarylThayil. Once the basic functionality is tested, that is the plan for the refactor. This is just the first cut. We can agree on how to break this up and start working on it asap.

While I do appreciate the cleanup of style, comment, and spacing, in the future it may be good to keep that separate from code changes to make review easier


Enable syntax highlighting for *.tmpl on GitHub

Go templates are syntactically very similar to handlebars, this enabled their syntax highlighting on GitHub.
Example: https://github.com/silverwind/gitea/blob/template-syntax/templates/repo/create.tmpl
(Example may take some time to work sometimes it seems)

Note this may skew language stats slightly, but the only other alternative is to add vim modelines to every file which isn't really an option I would consider.

🚀


Move images to clickhouse/ repo

Hi @zhicwu, we are trying to migrate our docker images from yandex/ repo to clickhouse/ repo: https://github.com/ClickHouse/ClickHouse/pull/28656. I'm not sure how to do it for yandex/clickhouse-jdbc-bridge, probably my changes will break someones workflows. Maybe we can push jdbc-bridge to both yandex/clickhouse-jdbc-bridge and clickhouse/jdbc-bridge?

That's great. Does this also mean yandex/clickhouse-server will be changed to clickhouse/server? I believe there are integration tests need to be updated as well.
I think we can leave yandex/clickhouse-jdbc-bridge as is and only push new image to clickhouse/jdbc-bridge. As I recalled, we use a robot account for pushing image to docker hub, so as long as the account has access we should be able to do that.

That's great. Does this also mean yandex/clickhouse-server will be changed to clickhouse/server? I believe there are integration tests need to be updated as well.
I think we can leave yandex/clickhouse-jdbc-bridge as is and only push new image to clickhouse/jdbc-bridge. As I recalled, we use a robot account for pushing image to docker hub, so as long as the account has access we should be able to do that.

For a long time we will push both yandex/clickhouse-server and clickhouse/clickhouse-server. Robot has access to all repos, so I'll just add another push.


Sample with API to read in C# as well

Hello can you p;ease provide a C# sample as well

read what ?
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le ven. 4 oct. 2019 à 13:33, weedkiller<EMAIL_ADDRESS>a écrit :

Hello can you p;ease provide a C# sample as well
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1622?email_source=notifications&email_token=ACUPL3JOCA6EXGKL5LGVBOTQM545NA5CNFSM4I5SPG5KYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HPXPIGQ,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACUPL3LV7XDNQ3ONQVZJOSDQM545NANCNFSM4I5SPG5A
.


Create synthetic events

React uses synthetic events to enable cross-browser as well as server-side rendering (where there's no DOM). The first version of Domino will not have synthetic events, but it should be added later on to facilitate server-side rendering, and to simplify test handling.

HOWEVER - if synthetic events are needed, the simplest course of action is to include jsdom in the testing environment and add the DOM module as a dependency. Closing for now.


Indentation of linenumber for (very) long code blocks

When turning on line numbers for code blocks with imported files, the lines are indented in the generated pdf output. The amount of indentation seems to increase with the length of the included code.
I understand that indentation is indeed required for right-alingning the line numbers. However, if the number of lines of code goes into the hundreds or thousands, the calculation for the indentation seems to be buggy, because the level of indentiation is far too big. With 1000 code lines the output has additional blank lines ...
The resulting pdf is attached as
line-num-issue.pdf
You can reproduce it by following the steps outlined below
Here is a sample .adoc that includes xml code files of increasing length w/o and with line numbers:
:source-highlighter: rouge
:source-dir: ./src/

[source,xml]
----
include::{source-dir}test10.xml[]
----

[source,xml,linenums]
----
include::{source-dir}test10.xml[]
----

[source,xml]
----
include::{source-dir}test100.xml[]
----

[source,xml,linenums]
----
include::{source-dir}test100.xml[]
----

[source,xml]
----
include::{source-dir}test1000.xml[]
----

[source,xml,linenums]
----
include::{source-dir}test1000.xml[]
----

And here's some code to generate the xml files to include:
File.open("test#{ARGV.first}.xml", "w") do |xmlFile|
  xmlFile.puts '<root>' ;
  (1..ARGV.first.to_i).each { |i| xmlFile.puts " <node>#{i}</node>"; };
  xmlFile.puts '</root>';
end

Save that to a file and call it with:
ruby <file-name-chosen> 10
to generated a test10.xml containing the following xml code:
<root>
 <node>1</node>
 <node>2</node>
 <node>3</node>
 <node>4</node>
 <node>5</node>
 <node>6</node>
 <node>7</node>
 <node>8</node>
 <node>9</node>
 <node>10</node>
</root>

You can generate the other two files with
ruby <file-name-chosen> 100
and
ruby <file-name-chosen> 1000
respectively.
Test data needs to be in a ./src folder
Then generate the document as follows:
asciidoctor -r asciidoctor-pdf -b pdf line-num-issue.adoc
Note on performance:
Also when you increase the number of nodes even further, say 10000, and include the resulting file with line numbers, you will notice that generation of the pdf takes very long ... and indeed will complete only when increasing the available stack/heap for the jvm.
I used:
alias jruby='jruby -J-Xms2048m -J-Xmx4096m'
for my concrete use case where I included a generated xsd of 16000 lines. That took like 1.5 hrs to generate the pdf and the listing was faily useless due to excessive indentation leading to multiple blank lines ...

How right you are. I was using the following to determine the number of digits in the largest line number:
linenum_w = (linenum / 10) + 1

Obviously, that's not going to work :/
Here's the Ruby way of doing it:
linenum_w = linenum.to_s.size

(That's effective the same as taking the log base 10, but much faster).
As for the performance, there's not much we can do. Prawn doesn't give us the proper toolset for page overflow, so we have to do a lot of work to layout a source block, including writing to a scratch document. The line numbers add about a 20% overhead, but the bulk of the time is in the handling of the source block itself.
The reason the line numbers add such a big overhead is because we have to go through the code token by token to find all the endlines, then rebuild the fragments to add the line numbers in front. This could be made more efficient if Rouge weaved in the line numbers for us or gave us the tokens organized by line already.


Cut GVC before trying to detect structured details

The details often contain a 3-digit GVC code at the beging of the details.
This should be parsed and cut before the details is checked for being structured.

Good point. Thanks for contribution !
I would appreciate a unit test for it as well, but can be a separate PR.


Auto Complete does not work when project very large.

VSCode Version:
OS Version:

Steps to Reproduce:

Use VSCode on a React Native project which has over 75000 files (including npm packages)

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

Also please try upgrading your workspace to use typescript@next by installing this extension.
If you still see the problem after installing that extension and restarting VS Code, can you please provide more information about your project? Number of JS/TS files for example? With the project open in VS Code, run code-insiders --status from the command line to get this info

Could this be fixed by #35733


Error for not resolved inheritance in generics that should pass

Flow version: >=v0.66.0
Code example
class Parent<K> {}

class Child<K> extends Parent<K> {}

const func = (): Parent<Parent<string>> => {
  return (new Child(): Child<Child<string>>);
};

Try-Flow
Expected behavior
No errors!

Actual behavior
Cannot return `new Child()` because `Child` [1] is incompatible with `Parent` [2] in type argument `K` [3].

Note: The original issue we have found was in a function that prepares a Map with Array values. The array and the map must be writable inside the function but we want them both read-only once it leaves the function.

class Parent<+K> {}

class Child<K> extends Parent<K> {}

const func = (): Parent<Parent<string>> => {
  return (new Child(): Child<Child<string>>);
};

This works

The original code looks like
const func = (): $ReadOnlyMap<string, $ReadOnlyArray<string>> => {
  const map: Map<string, string[]> = new Map();

  // code that initializes the map and its values

  return map;
};

So I guess it is failing because V type in $ReadOnlyMap does not use +.
See https://github.com/facebook/flow/blob/64064e93639fe9c03d8ba8b59cc4f658f3af3327/lib/core.js#L544-L553

Oh, I have PR for this https://github.com/facebook/flow/pull/7932

Actually, this works, so I don't think they're related

nvm, they're related

@stekycz

The original code looks like [...]

Working as intended. Map<any, string[]> isn't a subtype of Map<any, $ReadOnlyArray<string>>. $ReadOnlyMap<any, string[]>, however, is.
Same as with these:
class Inv<T> {}
class Co<+T> {}

;(new Inv<string> : Inv<string | number>) // error
;(new Co<string> : Co<string | number>) // ok

https://flow.org/en/docs/lang/variance/

The code in the original post is working as intended, the different behaviour is unsafe.
Flow won't show errors if you replace class Parent<K> {} with class Parent<+K> {}.
Same as with these:
class Inv<T> {}
class Co<+T> {}

;(new Inv<string> : Inv<string | number>) // error
;(new Co<string> : Co<string | number>) // ok

https://flow.org/en/docs/lang/variance/
https://flow.org/en/docs/types/generics/#variance-sigils

I understand that. However, it would be nice to have explained why the default behavior is invariant instead of expected and usual (at least from my point of view) covariance.


CJS build is broken, using a dependency that is ESM only

When running rehype-pretty-code in CJS is fails because of dependency unified is ESM only. So, it can not be required
failed to load config from /Users/manualmeida/repos/builderio/qwik/packages/docs/vite.config.ts
error during build:
Error [ERR_REQUIRE_ESM]: require() of ES Module<EMAIL_ADDRESS>from /Users/manualmeida/repos/builderio/qwik/node_modules/.pnpm/rehype-pretty-code<EMAIL_ADDRESS>not supported.

unified is not a direct dependency of the package, if you want to support CJS you need to have unified v9 installed

This was actually a mistake with externalizing unified in the conversion to TS, should be fixed in v0.9.11