Debug actions stuck under window actions on MacOS

Type: Bug

Launch a debuggable program
See that the actions are stuck under the VS Code window actions (close, minimize, etc.). There is no way to reposition them with the mouse.
Reset all menus and reset view locations do not fix it.

VS Code version: Code 1.91.1 (Universal) (f1e16e1e6214d7c44d078b1f0607b2388f29d729, 2024-07-09T22:07:54.982Z)
OS version: Darwin arm64 23.4.0
Modes:

System Info

Item
Value

CPUs
Apple M2 (8 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
3, 5, 4

Memory (System)
8.00GB (1.48GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

I was able to make VS Code full screen and then move the debug actions. Still a weird bug.

Still? https://github.com/microsoft/vscode/issues/204265

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!

Not sure what's going on here, I haven't touched the toolbar code again since fixing the issue before...

Should have been fixed with https://github.com/microsoft/vscode/pull/230527, let me know if you see this again


1.19.0 iOS version support

What version of gRPC and what language are you using?
1.19.0
What operating system (Linux, Windows,...) and version?
Xcode10, MacOS 10.14.2, iOS 9.x or iOS 10.x
What runtime / compiler are you using (e.g. python version or version of gcc)
Xcode
What did you do?
Run with gRPC 1.19.0
What did you expect to see?
No crash
What did you see instead?
Crash every time
Anything else we should know about your project / environment?

I can’t find anywhere in the readme or in any of the introductory blog posts any mention of what iOS version are supported. Is there any information about what version supported for gRPC version?

@mxl123 Can you provide any more details surrounding the circumstances of your crash?

CC @muxi


Question on the format of data for the filtering module!

Hello,
I am very interested in the filtering module of your work!
As you mentioned in your description module, the input of the filtering modules follows:
"the each line as an edge seperated by a blank space. "
I wanna more concrete details, may l get some examples?
For examples, what kind of files should be placed in the folder and what is the content of those files?

Hi!
Thank you so much for your interest! You may follow the format of undirected graph in NetworkX. Hope this can answer your question!
Best,
Nan


Psycopg2 dependency fails to compile in CI/CD

Hi,
I use a CI/CD system for a package that lists ord-schema as a dependency. One of its subdependencies, psycopg2, is available on PyPI as source code that must be compiled by the local machine. Some of the compilation dependencies are not covered by PyPI, so without intervention the CI/CD pipeline fails:
Collecting psycopg2>=2.8.5
  Downloading psycopg2-2.9.4.tar.gz (384 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 384.0/384.0 kB 83.1 MB/s eta 0:00:00
  Preparing metadata ([setup.py](http://setup.py/)): started
  Preparing metadata ([setup.py](http://setup.py/)): finished with status 'error'
  error: subprocess-exited-with-error

  × python [setup.py]
 egg_info did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      /opt/pipelines/agent/build/.cache/nox/typing_check/lib/python3.9/site-packages/setuptools/config/setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
        warnings.warn(msg, warning_class)
      running egg_info
      creating /tmp/pip-pip-egg-info-vyczfsiy/psycopg2.egg-info
      writing /tmp/pip-pip-egg-info-vyczfsiy/psycopg2.egg-info/PKG-INFO
      writing dependency_links to /tmp/pip-pip-egg-info-vyczfsiy/psycopg2.egg-info/dependency_links.txt
      writing top-level names to /tmp/pip-pip-egg-info-vyczfsiy/psycopg2.egg-info/top_level.txt
      writing manifest file '/tmp/pip-pip-egg-info-vyczfsiy/psycopg2.egg-info/SOURCES.txt'

      Error: pg_config executable not found.

      pg_config is required to build psycopg2 from source.  Please add the directory
      containing pg_config to the $PATH or specify the full executable path with the
      option:

          python [setup.py] build_ext --pg-config /path/to/pg_config build ...

      or with the pg_config option in 'setup.cfg'.

      If you prefer to avoid building psycopg2 from source, please install the PyPI
      'psycopg2-binary' package instead.

      For further information please check the 'doc/src/install.rst' file (also at
      <https://www.psycopg.org/docs/install.html>).

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

This can be resolved in two ways:

Install pg_config (in every scenario where ord-schema is used)
Replace ord-schema's psycopg2 depedency with the precompiled psycopg2-binary, which is also available from PyPI.

Would you be open to option 2?

Embarrassingly, I see now that psycopg2's authors recommend compiling from binary every time: https://www.psycopg.org/docs/install.html#psycopg-vs-psycopg-binary
Sorry! Closing this issue.


Expose webrtc's native screen capture module

There is a similar project here on github which exposes webrtc's native screen capture. Would love to see this feature in spitfire
Thx for the great lib btw!

There is a similar project here on github which exposes webrtc's native screen capture. Would love to see this feature in spitfire
Thx for the great lib btw!

which project? I'm finding a library to do so for a long time...

We're happy to accept a pull request, but generally our focus is on the use of data channels which is how we transmit our media to peers.


Ionic 2, iOS (click) firing twice.

Ionic version:  (check one with "x")
[ ] 1.x
[x] 2.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:

As described in the title, any button click fire twice.
Expected behavior:

A click event should fire once.
Steps to reproduce:

Add a button, and a (click) event. The plunker will not replicate, it must be run on an iOS device.
Related code:
`<ion-button (click)="click()">Click<ion-button>`

Hook up .ts
click() {
Console.log("Fired")
}

Other information:

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
Cordova CLI: 6.5.0
Ionic Framework Version: 2.0.1
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.1.2
ios-deploy version: 1.9.0
ios-sim version: 5.0.8
OS: macOS Sierra
Node Version: v7.2.0

Xcode version: Xcode 8.2.1 Build version 8C1002

Perhaps related to #9610?

I am unable to reproduce this  in any test.
Could you provide a more complete example?

Ah yes, @rapropos was correct, and for some reason I had
imports: [
    IonicModule.forRoot(MyApp),
    IonicModule.forRoot(MyApp),

In my app.module.ts. Thanks so much for your time, and even more for Ionic 2 👍


Dart 2.8.0-dev.18.0 Breaking change to the RuneIterator causes failure

Hi All,
First of all many thanks for this wonderful library.
On March 12th 2020, Dart team made a breaking change to their string.dart and more specifically to the RuneIterator which now returns -1 (instead of null) when the iterator hits the end.
As you are still referencing postgres: ^1.0.0 as a dependency, this change causes a failure of the ORM.  However postgres version 2.1.0 will also fail.
This breaks the Aqueduct PostgreSQLFormat class (substituter.dart), at the level of the "substitute" static method, which expects a "null" value to stop iterating.  When comes the "-1" value => Exception is thrown.
Possible solution is to change line #66, as follows:
while (iterator.current != null && iterator.current != -1) {

in order to be compliant with both previous and new version of the Dart sdk.
Kind Regards,
Didier

i believe this one is fixed on postgres version 2.1.1 https://github.com/stablekernel/postgresql-dart/issues/119
but im not sure how or is it posible to change aqueduct postgres depedencies

To anyone hosting on heroku:
When following the tutorial here https://aqueduct.io/docs/deploy/deploy_heroku/
make sure to replace
heroku config:set DART_SDK_URL=https://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-x64-release.zip
with the explicit version
heroku config:set DART_SDK_URL=https://storage.googleapis.com/dart-archive/channels/stable/release/2.7.2/sdk/dartsdk-linux-x64-release.zip
Otherwise you will run into the exact issue mentioned above. It sure caused me some headaches. Hope this helps anyone.

If you want to use dart > 2.7.0, you can add to pubspec.yaml:
dependency_overrides:
  postgres: 2.1.1

To use aqueduct to upgrade the database:
pub run aqueduct db upgrade
I don't have problems to use aqueduct with recent PostgreSQL plugin.

But, Postgres aqueduct fails with dart 2.8.*

But, Postgres aqueduct fails with dart 2.8.*

I'm using Dart VM version: 2.9.0-8.2.beta (beta) (Tue May 12 09:05:56 2020 +0200) on "macos_x64" and works great.

Thanks a lot @timosettels that resolved my issue with deploying to heroku

To anyone hosting on heroku:
When following the tutorial here https://aqueduct.io/docs/deploy/deploy_heroku/
make sure to replace
heroku config:set DART_SDK_URL=https://storage.googleapis.com/dart-archive/channels/stable/release/latest/sdk/dartsdk-linux-x64-release.zip
with the explicit version
heroku config:set DART_SDK_URL=https://storage.googleapis.com/dart-archive/channels/stable/release/2.7.2/sdk/dartsdk-linux-x64-release.zip
Otherwise you will run into the exact issue mentioned above. It sure caused me some headaches. Hope this helps anyone.

Thanks a lot @timosettels that resolved my issue with deploying to heroku

@chrisoftech  is everything good ? did you deployed your app in heroku without errors ?

Sorry for the late reply and yes @khalifa007 i was able to deploy to heroku following the aqueduct documentation but encountered an issue which was resolved by @timosettels comment here.
downgraded to Dart VM version: 2.7.2

If you want to use dart > 2.7.0, you can add to pubspec.yaml:
dependency_overrides:
  postgres: 2.1.1

To use aqueduct to upgrade the database:
pub run aqueduct db upgrade
I don't have problems to use aqueduct with recent PostgreSQL plugin.

thank, your comment helped me a lot I was stuck in the same problem for one day.

If you want to use dart > 2.7.0, you can add to pubspec.yaml:
dependency_overrides:
  postgres: 2.1.1

To use aqueduct to upgrade the database:
pub run aqueduct db upgrade
I don't have problems to use aqueduct with recent PostgreSQL plugin.

Thanks. It's worked for me.

If you want to use dart > 2.7.0, you can add to pubspec.yaml:
dependency_overrides:
  postgres: 2.1.1

To use aqueduct to upgrade the database:
pub run aqueduct db upgrade
I don't have problems to use aqueduct with recent PostgreSQL plugin.

not working now, same problem :(


Compiling the toolchain with MIPS will report an error and cannot be compiled in the past, I don't know what the reason is

make[4]: Nothing to be done for 'static'.
make[4]: Nothing to be done for 'static'.
src/arch/mips/hev-task-execute-mips32.s: Assembler messages:
src/arch/mips/hev-task-execute-mips32.s:16: Error: invalid operands lw $t0,($a0)' src/arch/mips/hev-task-execute-mips32.s:17: Error: invalid operands sw $sp,-0x4($t0)'
src/arch/mips/hev-task-execute-mips32.s:18: Error: invalid operands sw $ra,-0x8($t0)' src/arch/mips/hev-task-execute-mips32.s:19: Error: operand 2 must be an immediate expression addiu $sp,$t0,-0x20'
src/arch/mips/hev-task-execute-mips32.s:24: Error: invalid operands lw $ra,0x18($sp)' src/arch/mips/hev-task-execute-mips32.s:25: Error: invalid operands lw $sp,0x1c($sp)'
make[4]: *** [Makefile:84: build/kern/task/hev-task-execute.o] Error 1

Download toolchains from: https://musl.cc/

thank you！Can I only compile with the toolchain for that URL? I can use other toolchains of the same architecture?

I can use openwrt mips toolchain? Compiling the toolchain with MIPS by use openwrt toolchain

I don't know what toolchain you are using, but it looks like there is something wrong with the toolchain. I can confirm is that the toolchains of musl and openwrt can be compiled successfully, but the generated binary may not be compatible with your target system.

yes,I'm using toolchain will report an error and cannot be compiled, my target system is mips of openwrt, Let me try again.
This part of the assembly language can be dispensed with, or replaced by pure C

ok


Segfaults when passing struct in global memory by value to a function.

The following kernel segfaults (w/ -O0):
typedef struct Baz {
    float x;
} Baz;

static void foo(Baz baz) {
}

__kernel void test(__global Baz *baz) {
    foo(baz[0]);
}

Godbolt link.
On godbolt the following is being logged:
!dbg attachment points at wrong subprogram for function
!11 = distinct !DISubprogram(name: "test", scope: !12, file: !12, line: 9, type: !13, scopeLine: 9, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !21)
ptr @test
  call void @llvm.dbg.value(metadata %struct.Baz poison, metadata !31, metadata !DIExpression(DW_OP_constu, 0, DW_OP_swap, DW_OP_xderef)), !dbg !35
!35 = !DILocation(line: 0, scope: !32)
!32 = distinct !DISubprogram(name: "foo", scope: !12, file: !12, line: 6, type: !33, scopeLine: 6, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !0, retainedNodes: !21)
!32 = distinct !DISubprogram(name: "foo", scope: !12, file: !12, line: 6, type: !33, scopeLine: 6, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition, unit: !0, retainedNodes: !21)
conflicting debug info for argument
  call void @llvm.dbg.value(metadata %struct.Baz poison, metadata !31, metadata !DIExpression(DW_OP_constu, 0, DW_OP_swap, DW_OP_xderef)), !dbg !35
!29 = !DILocalVariable(name: "baz", arg: 1, scope: !11, file: !12, line: 9, type: !15)
!31 = !DILocalVariable(name: "baz", arg: 1, scope: !32, file: !12, line: 6, type: !16)
LLVM ERROR: Broken module found, compilation aborted!
Program terminated with signal: SIGSEGV
Compiler returned: 139

Compilation no longer fails if I modify the function so that I keep the struct in global memory:

typedef struct Baz {
    float x;
} Baz;

static void foo(__global Baz *baz) {
}

__kernel void test(__global Baz *baz) {
    foo(&baz[0]);
}

There is a bug somewhere with the debug information.
As a workaround, you can add -g=0 to your compiler options.
It will show you that compiling with -O0 does not change much in clspv as it is mostly used by the frontend, but once we arrive in clspv specific passes, we do not look at it at all, and always perform the same optimisations.
Optimisation levels are not used that much, and have a very very small coverage regarding clspv specific tests. I would advise not to use it really.


feat(Banner): add banner component

Closes https://github.com/github/primer/issues/3200

Add support for the Banner component to Primer React.
Changelog

New

A new Banner component is available under experimental/drafts
A supporting stories and tests for Banner

Changed

Removed

Rollout strategy

[x] Minor release

Testing & Reviewing

[ ] Verify implementation matches API design in API Document
[ ] What do you think of the API design? Is it flexible enough for us to iterate on? Does it have any gaps or are there opportunities we should consider?
[ ] Verify responsive behavior for buttons
[ ] Verify that all the limitations for banner are incorporated here and tested, for example when custom icons are allowed or when banners are allowed to be dismissible

Note for reviewers, would love feedback on visual details since it's been a while since I touched this based on the Figma spec 👀 I also feel like there are some things that I might have mistranslated so would appreciate an extra eye on.

We need to increase the spacing below the buttons.
It is 6px to short (in figma there is an inner padding in the action container when the buttons are below the content).

Hey @joshblack,
this is really great already. Do you think we could add the in sidebar example to the playground as well?
https://primer-65defb5e3c-13348165.drafts.github.io/storybook/?path=/story/drafts-components-banner--playground
E.g. like this:

When the title is disabled, there is a larger space below the actions in the banner than above.

Thanks @lukasoppermann! I believe I addressed the following:

[x] When the title is disabled, there is a larger space below the actions in the banner than above.
[x] Do you think we could add the in sidebar example to the playground as well?
[x] Another thing, whenever a title is present, the actions (not close button) should be moved below the text.
[x] It is 6px to short (in figma there is an inner padding in the action container when the buttons are below the content).

@joshblack we should add a test to make sure svgs work to avoid this issue: https://github.com/primer/react/issues/3020

@lukasoppermann we should be good to go thankfully! What we have right now will only be behind the .BannerIcon class name so should completely avoid the problem 🤞


Add configuration property for PNG/JPG thumbnail used in LNURL-pay metadata

May be tested via<EMAIL_ADDRESS>

why is this closed?

I forgot I had this PR opened and deleted my fork.

what was open here? can we merge it?

what was open here? can we merge it?

As long as you're happy with the changes, go ahead and merge it.


eni: Fix AWS ENI allocation exceeding IP limits for smaller instances

For instance types with ENI IP limits lower than the currently
configured spec.eni.pre-allocate, Node.allocateENI() was attempting to
allocate a number of secondary IPs equal to the ENI IP limit, not
accounting for the primary IP. This change causes it to allocate limit-1
secondary IP addresses instead.
This caused failures using default configuration for node groups in AWS
that used smaller instance sizes. For an instance type such as t3.small
with limit of 4 IPs, an ENI with 5 IPs (1 primary, 4 secondary)  would
be allocated which failed to attach.
Fixes: #9730
eni: Fix AWS ENI allocation exceeding IP limits for smaller instances

Signed off by: Hunter Massey<EMAIL_ADDRESS>

This change is

Coverage increased (+0.0009%) to 45.937% when pulling fb192a8cb39e23303e1a260d78db3bd5d0a2297e on huntermassey:eni-allocation-limit into 171378efaa5efe09f4c6dc435c84ea448894db0e on cilium:master.

test-me-please


Add support for IPv6

Can you add support for IPv6 to httpbin.org?
$ wget -6 http://httpbin.org/ip
--2012-07-24 02:04:19--  http://httpbin.org/ip
Resolving httpbin.org... failed: Name or service not known.
wget: unable to resolve host address “httpbin.org”

+1
Please add IPv6 support.

Was this issue closed by mistake, or was it fixed when closed but later regressed?
At the time of writing, it does not seem to work:
$ host -t AAAA httpbin.org
httpbin.org has no AAAA record
$ curl https://httpbin.org/ip
{
  "origin": "84.214.x.y"
}

These tests were done from a dual-stacked machine, so curl would have preferred to use IPv6 if it could have, as demonstrated by using a different print my ip-service that is IPv6 capable:
$ curl http://icanhazip.com
2a02:fe0:x:y:825e:b586:2ada:4d2e
$ curl -4 http://icanhazip.com
84.214.x.y

I don't know why @kennethreitz closed this but I'll reiterate that this isn't a bug in the application code. We and icanhazip work the same way, we both use remote_addr from the request object in Flask. The difference is that httpbin is deployed on Heroku so we also return X-Forwarded-For. Heroku does not have IPv6 support thus this is purely a deployment issue.

Few years have passed and httpbin still have no IPv6 support.
@kennethreitz Please add support for IPv6.

Heroku does not support IPv6 ( https://help.heroku.com/I8L6RW01/does-heroku-support-ipv6 ). Therefore, the change requires a complete change in the way the application is deployed.

Any chance to make this happen? lacking support for ipv6 is critical for http verification. Broken ipv6 is a very common error.

I just used https://mockbin.org/ which has support for IPv6


[TS] Fails with children after #372

This issue is originally issued by @denis-sokolov.
https://github.com/paypal/glamorous/pull/372#issuecomment-359251320

glamorous version: After #372
glamor version: ??? @denis-sokolov (Could you add this in a comment?)
react version: ??? @denis-sokolov (Could you add this in a comment?)
typescript version: 2.6.1/2.6.2

Relevant code.

What you did:
Add children to named built-in components.
What happened:
index.tsx(90,7): error TS2322: Type '{ children: Element; }' is not assignable to type 'IntrinsicAttributes & CSSProperties & ExtraGlamorousProps & HTMLProps<HTMLDivElement> & { childre...'.
  Type '{ children: Element; }' is not assignable to type 'CSSProperties'.
    Property 'children' is incompatible with index signature.
      Type 'Element' is not assignable to type 'string | number | SingleOrArray<CSSPropertiesCompleteSingle, "alignContent" | "alignItems" | "ali...'.
        Type 'Element' is not assignable to type '(string | number | {} | ("inherit" | "initial" | "unset" | "flex-start" | "flex-end" | "center" |...'.```

Reproduction:
Failed to reproduce. @denis-sokolov (Could you add this in a comment?)
Problem description:
Suggested solution:

@luke-john the issue is added!

I am unable to reproduce the problem with the new glamorous version.
Either I messed up the original bug isolation, or there were other differences that have been changed in the meantime. Either way, I think the issue is solved until someone else comes with a similar complaint. Thank you for being so thorough and not dismissing my concerns, @Ailrun.
I had the original problem with<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Today I am unable to reproduce with<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>


Limit Switches

Add upper and lower DIO limit swtches for the front arm to stop motion on contact

Add upper and lower DIO limit swtches for the front arm to stop motion on contact Both switches stop the correct rotation of the motor! :smile:


Update installation instructions to use cuDNN v5 across builds.

other than two small suggestions, LGTM

Thanks @vrv! I have made the changes accordingly.


'tokenize' issue

Problem: When I have a search string "Desk 1" I get the expected result. But When I continue typing "1 1 1 1 1 1...." to the end of the search string, I get the same result.  I expect an empty result.
input data:
[{       "name": "Desks group 1",       "floorName": "Floor 1",       "buildingName": "R&D office",       "siteName": "name site" }]
config:
{   tokenize: true,   matchAllTokens: true,   findAllMatches: true,   includeScore: true,   includeMatches: true,   threshold: 0,   location: 0,   distance: 100,   maxPatternLength: 31,   minMatchCharLength: 0,   keys: [     "name",     "floorName",     "buildingName",     "siteName"   ] }

Tokenization no longer exists as of the latest version(s).


Implementing logic to identify primary host

Resolves #526
This is a requirement for #164 and other items.

@brettsam if you have a chance, can you take a look at this?

@brettsam addressed feedback, made some additional enhancements and added a couple of extra tests. Let me know if you notice anything else we may need to change.

:shipit:

@brettsam merged, but left responses to your last comments. If needed, I'll make the changes to the test.


PR for #2785 : Port per-tenant upload queue and startup changes from #2595

Let's wait until https://github.com/neondatabase/neon/pull/2861 is merged, it makes parts of this PR obsolete.

Let's wait until #2861 is merged, it makes parts of this PR obsolete.

#2861 has been merged. Is any of this still needed?

No, these are both obsolete, will delete the branch.


Possible Bug for Residual

In line 1066 in x_transformers.py
residual = x
Should it be residual = x.clone()  ?
Immediately following that code In line 1071, you have  x = pre_branch_norm(x). If you don't have the clone operation, pre_branch_norm will modify residual too since residual and x point to the data stored in the same memory space?

@XiaoWang-Github
this will help
import torch
x = torch.tensor([1.])

y = x
z = y

y = y + 1
x = x + 2

print(z, id(z)) # [1.], <addr1>
print(y, id(y)) # [2.], <addr2>
print(x, id(x)) # [3.], <addr3>

# on the other hand

import torch
x = torch.tensor([1.])

y = x
x.add_(1)

print(y, id(y)) # [2.], <addr>
print(x, id(x)) # [2.], <addr>

Ok. That makes sense. So the message I get from you is that the operations are out-of-place, instead of in-place. Therefore, modifying x out-of-place in later lines of the code will not affect the stored data for residual.


Smarter redrawing: diff a tree of values rather than a tree of virtual DOM

Mithril/React's approach of rebuilding and diffing the entire virtual DOM each time something changes is very performant. However, as virtual DOM construction becomes more complicated, and results in larger numbers of virtual DOM elements, performance starts to get pretty bad — especially (but not exclusively) on mobile devices with slower processors.
I've reached a stage in my app where if I have a list of ~400 complicated vDOM constructions (~40,000 elements on the page) then I get a 300ms freeze every time a redraw is triggered. In terms of UX, this kind of delay is acceptable for the initial creation of the tree, but not at all for small interactions (e.g. toggling the visibility of a tiny piece of DOM.)
There are some decent optimizations that can be considered at this stage, namely:

Subtree directives (retaining a certain part of the tree based on a value dirty-check)
Partial rerendering (only rerendering part of a tree if you know nothing outside of it will have changed)

However, I think these feel a bit awkward, and aren't solving the root of the problem. The root of the problem is that constructing the whole vDOM tree from scratch every redraw involves performing a lot of work that has already been performed before, just to work out what's changed — even for things that couldn't have changed (e.g. static nodes).
I want to start a discussion about the approach of Ember's new Glimmer rendering engine to see if any of it can be applied in Mithril. Glimmer solves the "unnecessary work" problem by using declarative templates so it knows which parts of the DOM are actually able to change. Then, on a redraw, it only has to compare the tree of values bound to these dynamic nodes, rather than the whole vDOM. The approach is explained in detail in this video: https://youtu.be/msS-3zqKKUI?t=1h14m38s
Obviously, the big problem with bringing something like this to Mithril is that Mithril's templates plain JavaScript code, and they are not declarative. My first thought is to make use of the m.prop getter-setter API, and pass functions into the vDOM, something like:
app.controller = function() {
    this.foo = m.prop();
}
app.view = function(ctrl) {
    return m('div', ctrl.foo);
}

The view function would only be invoked once, and any functions passed as attributes or children (like the ctrl.foo getter-setter) would be retained and diffed on subsequent redraws.
Here's a more complex example: https://gist.github.com/tobscure/7686531d35f10875c2e2
I don't expect this idea to really go too far, because it would be a huge API/conceptual change for a reasonably well-established framework (Ember are lucky that they were already using declarative templates!) But I thought it would be worth bringing up to see if there are any performance-related ideas that can come from it, or if there might be a way to implement some kind of smarter rendering without BC breaks.

The last time this topic was brought up, the question I was asking was whether the user can actually digest 40,000 DOM elements worth of stuff on screen. For example, people aren't realistically going to grok a 1000 row table. Not saying this is always the case (and it might not be the case for you), but it's something to consider.
In terms of actual performance changes: you're right about the Glimmer/handlebars thing. One of the legacy integration aspects of Ember is that the rest of the system is observer-based, so the mechanism they chose is optimized for that. As with any tech choices, it has pros and cons. One major pro of Mithril's pure js templates is that you get free debugging tools. The pros of the glimmer/handlebars combo is that is handles itself relatively well when the dynamic/static DOM ratio is low (whereas a standard virtual dom implementation has a flatter performance profile). The downside is that glimmer/handlebars suffers a lot when the dynamic/static DOM ratio is high simply because each dynamic spot has more layers of abstraction to go through. When you're at tens of thousands of elements, this starts to matter because the cost of each CPU instruction in the update-value procedure is multiplied by 5 orders of magnitude.
In terms of performance profiling, building a vdom tree (i.e. calling .view) is not the expensive part. Most of the overhead there can be removed w/ the sweet.js macro. Diffing is more expensive.
One optimization that is possible in Mithril, but technically backwards incompatible is to only mark a virtual dom element as dynamic if it has an attributes argument (the 2nd argument), meaning that attributes in the selector string would be considered static. This is backwards incompatible because it's possible to use string interpolation to make the selector dynamic (and especially easy to do it in languages like Coffeescript, which support interpolation syntax)
The virtual dom diff would still be O(n=vdomSize), but each check can be a bit faster if there's a flag that short circuits the rest of the conditional when the element is deemed static. I should stress that while this is possible, it isn't very exciting because it's still O(n).
I'm not aware of any other optimization possibilities that don't involve skipping diffs in certain areas (aka subtree directives and partial rerendering)
With all that said, skipping diffs only improves performance of static areas of a template. If you have tens of thousands dynamic nodes and no workflow mechanisms to push back on feature requests that further increase DOM size, no amount of performance optimization is gonna save you on the worst case scenarios.

Thanks for the response @lhorie, very helpful.
In my case, the interface is an "infinite scroll" list of posts in a discussion. So initially there are only 20 items displaying and things are speedy, but if the user keeps scrolling down, they can load as many as they want and things get progressively slower. It's not like they're actually digesting all of that information at once, it just builds up over time. (I guess one thing I could do is make items further up unload as you scroll down, but that is something I would like to consider as a last resort.)
I ran some tests and it turns out I massively overestimated the number of DOM elements I'm constructing: it's only about 10,000, not 40,000. As you pointed out, the diff (build) is the most expensive part. And I measured the dynamic/static DOM ratio (according to the presence of the attributes argument), and it's quite low (1:3).
So that optimization you mentioned is very enticing to me. I tried to work out how to implement it to see if it would make a difference, but I'm not having much luck... I did the following, but I'm sure I must be missing something important because it's not saving any time (and the JS profile shows that setAttributes only accounts for a very small proportion of CPU time).

In m(), change line 39 to var cell = {tag: "div", attrs: {}, dynamic: hasAttrs};
In build(), change line 309 to if (hasKeys && data.dynamic) setAttributes(node, data.tag, data.attrs, cached.attrs, namespace);

Can you offer any advice here?
As for the diff-skipping optimizations, I think these would be plenty sufficient for my case if I can work out a nicer API to implement them with. I can be reasonably certain that a post template will only change if the post's data changes (subtree directives). Likewise, I can be reasonably certain that toggling the visibility of an element inside of a post will only change the template of that particular post (partial rerendering).
For subtree directives, I've been playing around with something like this:
function retainUnlessChanged() {
  var old = [];
  var callbacks = [].slice.call(arguments);
  return function(build) {
    var needsRebuild = false;
    callbacks.forEach(function(callback, i) {
      var result = callback();
      if (result !== old[i]) {
        old[i] = result;
        needsRebuild = true;
      }
    });
    return needsRebuild ? build() : {subtree: 'retain'};
  }
}

// controller
this.post = m.prop(post);
this.retain = retainUnlessChanged(this.post);

// view
return m('article', dynamicAttributes, ctrl.retain(() => m('div', [
  // children that won't change unless the post data has changed
]);

I'm quite happy with that, except for the extra 'div' surrounding the children... if I get rid of that, things bug out, because the {subtree: 'retain'} is being exchanged with an array of children. Would that be easy to fix?
For partial rerendering, I've posted a thought about an API in https://github.com/lhorie/mithril.js/pull/291

@tobscure Leo's thoughts here echo an article he wrote WRT performance concerns as a result of design, rather than a micro-tuning exercise. At one point he talks about the challenge to 'mitigate the cognitive load of a huge grid' – pagination is mentioned, but he could just as well be referring to application design patterns like occlusion culling, where only the visible elements of a grid are shown.
This gist won't plug-and-play, but it might give you some insights into how to apply similar principle to your grid…

if I get rid of that, things bug out, because the {subtree: 'retain'} is being exchanged with an array of children. Would that be easy to fix?

@tobscure unfortunately I don't think so. The challenge with allowing replacement of arrays is that I would then need to support node lists with a mix of dynamic and static ranges (e.g. [m(...), {subtree: "retain"}, m(...)], which would complicate the engine significantly

@barneycarroll Thanks for the links, interesting!
@lhorie OK. Out of interest, is that the same reason why you can't return an array from a component's view?


Remove errant space before period

@weijia-cheng : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Add basic travis config

Just trying to get Travis to build the project.

Oops, I meant to open this on my fork. 😝


Question: Heroku-20 general release date

Sorry in advance, as I suspect that this is not the best place for this question (but that I also wouldn't find the answer on the Heroku StackExchange and don't have access to Heroku support).
I see that there's an updated heroku-20 image available but that it's not yet the default image for new apps, per https://devcenter.heroku.com/articles/stack. Do you know when it will become the default, or whether it's in a production-ready state? (The article mentions April of each year for EOLs, but I don't know when these images are typically "released".)
We're in the process of preparing our application for Q4 / Holiday scale and have debated upgrading to the new stack before load-testing. If it's safe (enough) now or will be released generally soon, then we'll start down this path, but otherwise we'll stick with Heroku-18.
Thanks in advance!

@oehlschl Hi! Unfortunately I'm not able to discuss specific timelines, but can give a rough sense of how releases are rolled out.
New stack releases tend to occur in the following stages:

internal testing
public beta
general availability (GA) [ie released and fine for production use, but default stack unchanged so opt-in]
made the default stack for new apps

For Heroku-18, steps 2-4 were announced here:
https://devcenter.heroku.com/changelog-items/1414
https://devcenter.heroku.com/changelog-items/1453
https://devcenter.heroku.com/changelog-items/1485
Whilst the Heroku-20 docker image is available on Docker Hub (a side effect of how this repo's releases work / we need the image to then generate binaries for buildpacks etc), Heroku-20 isn't yet in beta, or available as a stack to set on apps (the only available stacks are listed at the Dev Center page you mentioned).
Once a Heroku-20 beta is announced, we would recommend waiting for GA before moving production workloads to it. In addition, since Heroku-18 is supported until April 2023, there is no immediate rush to upgrade.
As such, I would proceed with Heroku-18 for now :-)

Hi @edmorley -- thanks a lot for the response; that's very helpful.
Given the timing on the Heroku-18 announcements, I thought the Heroku-20 announcements might share a similar timeline (May-September), but your answer makes sense.
We'll proceed with Heroku-18 and keep an eye on https://devcenter.heroku.com/changelog.
Thanks!

Also, for whatever it's worth, we did a good amount of testing on a Ruby 2.7.1 / Rails 6.0.3 app on Heroku-20.v38 without issue. In case that's helpful at all.

Heroku-20 is now available in beta:
https://devcenter.heroku.com/changelog-items/1937


Remove type="application/javascript" type from Analytics

This PR removes  type="application/javascript" from Google Analytics snippet. If type was to be used it should be  type="text/javascript", but the type isn't needed to be there anyway.
REF:

https://google.github.io/styleguide/htmlcssguide.html#type_Attributes
https://codeguide.co/#html-style-script
https://developers.google.com/analytics/devguides/collection/analyticsjs/#alternative_async_tracking_snippet

Hugo uses type to identify minifier to use, so we cannot merge this. I'm not going into the discussion of what's the correct MIME type for JS, but the one built into Hugo is this:
https://github.com/gohugoio/hugo/blob/master/media/mediaType.go#L133

thanks for the reply @bep - fascinating. the link you gave with the MIME types uses MDN as the reference point (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types#textjavascript) and it states clearly there:

Per the HTML specification, JavaScript files should always be served using the MIME type text/javascript. No other values are considered valid, and using any of those may result in scripts that do not load or run.

and there is a further note:

Note: Even though any given user agent may support any or all of these, you should only use text/javascript. It's the only MIME type guaranteed to work now and into the future.

But then at the top of that article it states that the Internet Assigned Numbers Authority (IANA) is responsible for all official MIME types, and you can find the most up-to-date and complete list at their Media Types page and there it states: text/javascript - OBSOLETED in favor of application/javascript. I've seen linters (like webhint) state that application/javascript is incorrect - so maybe that is wrong!
So I can see now why you don't want to get into a discussion about what the correct MIME type is! 😄
In any case, removing the type altogether doesn't appear to make a difference to minification with hugo --minify in my testing so is removing it not an option you'd consider?

Note that there might be more cases like that (Hugo bundles?).

Yes, I think there are more cases of this -at least with the other Analytics snippets. What's your opinion on this subject @XhmikosR ? ...
Incidentally, the thing that flagged this to me was testing Hugo sites with http://webhint.io - but they've just merged a change to stop warning over the use of application/javascript - though they do recommend using text/javascript.
REF: https://github.com/webhintio/hint/issues/2621

I just follow the specs personally.

I can merge this if there is also a test that confirms that the minification is preserved. I assume it is, but it's good to have it confirmed.

I just follow the specs personally.

This think the spec in this case says that the type is optional for JS.

Yeah, it's optional, i.e. not an error, but a warning. https://validator.w3.org/nu/?doc=https%3A%2F%2Fgohugo.io%2F

I can merge this if there is also a test that confirms that the minification is preserved. I assume it is, but it's good to have it confirmed.

I can confirm for certain that minification is preserved without type="application/javascript" but don't have a test to prove it to go with this PR. On the Hugo site it uses a Google Tag Manager script without the type defined though (https://github.com/gohugoio/gohugoioTheme/blob/master/layouts/partials/gtag.html), and that minifies correctly.


Refactor "highlight.js" Code for Improved Readability and Maintainabi…

…lity
1 Broke down large functions into smaller, more manageable functions to improve readability and facilitate easier testing. Enhanced Comments and Documentation:

Added context and explanations in comments to help future developers understand the code better. Improved Error Handling:

Compiled frequently used regex patterns for better performance.

Use of Constants for Magic Strings:
4. Replaced hard-coded strings with constants to avoid typos and improve maintainability.

Removal of Deprecated Code: Eliminated deprecated functions and provided clear migration paths where necessary.

Performance Enhancements:
Reviewed loops and conditionals to ensure they are efficient and do not perform unnecessary operations.

Changes

Checklist

[x] Added markup tests, or they don't apply here because...
[x] Updated the changelog at CHANGES.md

To even review this it would need to be MUCH smaller chunks, not remove all our types/comments, etc... perhaps if you want to pick out a few isolated functions and start there and submit a much smaller PR... if that goes well we could keep moving forward one bit at a time.

I'll see if I can drop a few comments on things that look promising at first glance.

f I can drop a few comments on things that look promising at first glance.

okiee sir

To even review this it would need to be MUCH smaller chunks, not remove all our types/comments, etc... perhaps if you want to pick out a few isolated functions and start there and submit a much smaller PR... if that goes well we could keep moving forward one bit at a time.

okiee sir i have clossed this pr now again i am raise a PR and then try this as per your guidance.


Error type Object QLineEdit has no atribute "normal"

Hello and thank you for the amazing add-on
I got the following error:
Hey there! It seems an error has occurred while running.
The error was type object 'QLineEdit' has no attribute 'Normal'.
This happened after I fixed remote decks menu not showing. I tried to add a new remote deck and then it showed this message. I hope someone can help.

Same error here, did anyone find a fix yet? For me it started with the most recent Anki update.

Same here.

in main.py  on line 125
Change QLineEdit.Normal to QLineEdit.EchoMode.Normal


updated the knip rules a bit

@drodil
Now there are drastically fewer false positives! Actually a ton of report files are completely empty.
No changeset since it'll be covered by #21963 which is not yet released

@freben awesome, looks great! I also did some minor updates to knip here https://github.com/webpro/knip/pull/502 so it will also evolve when new version is released.

@freben awesome, looks great! I also did some minor updates to knip here webpro/knip#502 so it will also evolve when new version is released.

Apparently, this improvement was released in knip 4.5.0 just some time ago, have to update it at some point

@freben Other thing to consider is to add more issue types to reports at some point, now it only handles dependencies and unlisted (https://knip.dev/reference/cli#--include)


userres table abi interface error with pure number acccount

Our eos account was created with '1-5' and 'a-z'. So i created two account<PHONE_NUMBER>12 and plainuser111, next i used  following command to find my resource:
cleos  -u http://<IP_ADDRESS>:9008 get table eosio plainuser111 userres
cleos  -u http://<IP_ADDRESS>:9008 get table eosio<PHONE_NUMBER>12 userres
i can get resource information with plainuser111 ,but the other one 's resource information is empty. So is any different with two kinds of account,or it's a issue?
of course, the information of userres table with<PHONE_NUMBER>12 is right, i can get it from my own contract

This is a quirk of how data types are converted on the cleos command line and the fact that EOS.IO account names are fundamentally 64 bit integers, so cleos supports specifying them numerically.  To specify a name that's all digits, use cleos -u http://<IP_ADDRESS>:9008 get table eosio "<PHONE_NUMBER>12" userres.


Add files via upload

calculator using css , html and js

This pull request has nothing to do with the purpose of this repo, please explain why we should pull these changes.


Add linux, and preliminary mac, support

Update the code with switches, where necessary, to support windows and mac and linux.
Mainly in setup and buildinterface, and some cpp header files, different paths need to be followed for different operating systems.
Closes #17
Nearly all of #18, except for one item that is hopefully only documentation.

@edovanveen Please do check that this branch works correctly, including build_interface, on Windows.

I reran build_interface, and runtests +tests runs without failed tests.
I do get some new warnings during the build process that I did not get before, but those can be safely ignored:
>> utils.build_interface
Warning: Some C++ language constructs in the files for generating interface file are not supported and not imported.

Did not add member 'dparam' to class 'Prop' at neuron_api_headers.h:295.
  'Datum *' is not a supported type.

Did not add member 'u' to class 'Object' at neuron_api_headers.h:142.
  'Object::#unnamed#' is not a supported type.

Did not add member 'u' to class 'Symbol' at neuron_api_headers.h:100.
  'Symbol::#unnamed#' is not a supported type.

Did not add member 'element' to class 'hoc_Item' at neuron_api_headers.h:35.
  'hoc_Item::#unnamed#' is not a supported type.

Did not add member 'observers' to class 'cTemplate' at neuron_api_headers.h:119.
  'void *' is not a supported type.

Did not add member 'constructor' to class 'cTemplate' at neuron_api_headers.h:120.
  'void *(*)(Object *)' as data member or return type not supported.

Did not add member 'destructor' to class 'cTemplate' at neuron_api_headers.h:121.
  'void(*)(void *)' as data member or return type not supported.

Did not add member 'steer' to class 'cTemplate' at neuron_api_headers.h:122.
  'void(*)(void *)' as data member or return type not supported.

Did not add member 'checkpoint' to class 'cTemplate' at neuron_api_headers.h:123.
  'int(*)(void * *)' as data member or return type not supported.

Did not add member 'aliases' to class 'Object' at neuron_api_headers.h:144.
  'void *' is not a supported type.

Did not add member 'observers' to class 'Object' at neuron_api_headers.h:148.
  'void *' is not a supported type.

Did not add member '_nt' to class 'Node' at neuron_api_headers.h:268.
  'void *' is not a supported type.

Did not add member 'pnode' to class 'Section' at neuron_api_headers.h:228.
  'Node * *' is not a supported type.

Did not add member 'volatile_ptr' to class 'Section' at neuron_api_headers.h:232.
  'void *' is not a supported type.

C++ compiler set to 'MinGW64 Compiler (C++)'.
Definition file defineneuron.m contains definitions for 183 constructs supported by MATLAB.
- 167 construct(s) are fully defined.
- 16 construct(s) partially defined and commented out.

To include the 16 undefined construct(s) in the interface, uncomment and complete the definitions in defineneuron.m.
To build the interface, call build(defineneuron).
Building interface file 'neuronInterface.dll' for clib package 'neuron'.
Build Log:
C:\ProgramData\MATLAB\SupportPackages\R2022a\3P.instrset\mingw_w64.instrset\bin\g++ -c -fexceptions -fno-omit-frame-pointer -std=c++11 -O2 -fwrapv -DNDEBUG   -I"Z:\Git\matlabneuron\source" -I"C:\Program Files\MATLAB\R2022b\extern\include"  "Z:\Git\matlabneuron\neuron\neuronInterface.cpp" -o "Z:\Git\matlabneuron\neuron\neuronInterface.obj"

C:\ProgramData\MATLAB\SupportPackages\R2022a\3P.instrset\mingw_w64.instrset\bin\g++ -c -fexceptions -fno-omit-frame-pointer -std=c++11 -O2 -fwrapv -DNDEBUG    -I"Z:\Git\matlabneuron\source" -I"C:\Program Files\MATLAB\R2022b\extern\include" "Z:\Git\matlabneuron\source\nrnmatlab.cpp"  -o "Z:\Git\matlabneuron\neuron\nrnmatlab.obj"

C:\ProgramData\MATLAB\SupportPackages\R2022a\3P.instrset\mingw_w64.instrset\bin\g++ -m64 -Wl,--no-undefined -shared -static -static "Z:\Git\matlabneuron\neuron\neuronInterface.obj" "Z:\Git\matlabneuron\neuron\nrnmatlab.obj"   "Z:\Git\matlabneuron\source\libnrniv.a" -L"C:\Program Files\MATLAB\R2022b\extern\lib\win64\mingw64" -llibmex -L"C:\Program Files\MATLAB\R2022b\extern\lib\win64\mingw64" -llibMatlabDataArray  -s   -o "Z:\Git\matlabneuron\neuron\neuronInterface.dll" -Wl,--format=binary -Wl,"Z:\Git\matlabneuron\neuron\neuron.zip" -Wl,--format=default

---
Interface file 'neuronInterface.dll' built in folder 'Z:\Git\matlabneuron\neuron'.

To use the library, add the interface file folder to the MATLAB path.

@ramcdougal : This branch should now be ok to try out on Linux.
The following tests results differ numerically on Linux from the results on Windows, sometimes quite a bit. Does that also happen for you?
Failure Summary:
 Name                                     Failed  Incomplete  Reason(s)
======================================================================================
 tests.test_simulation/test_acpot           X                 Failed by verification.
--------------------------------------------------------------------------------------
 tests.test_simulation/test_alphasynapse    X                 Failed by verification.
--------------------------------------------------------------------------------------
 tests.test_simulation/test_netcon          X                 Failed by verification.
--------------------------------------------------------------------------------------
 tests.test_simulation/test_temptest        X                 Failed by verification.

I see the same test failures on my Linux machine...


kube-apiservers use only the first etcd node cert and key

Describe the bug
The kube-apiserver on each control node uses the first etcd node certificate
and key files.
You can see this in /etc/kubernetes/manifests/kube-apiserver.yaml.
To Reproduce
Steps to reproduce the behavior:

Install kubernetes with ./run.sh k8s
See the /etc/kubernetes/manifests/kube-apiserver.yaml on each control node.

Expected behavior
Each kube-apiserver on the control plane uses each node's certificate and
key files.
For example, if there are 3 control nodes - control1, control2, and control3,
kube-apiserver on each node should use its own etcd node certificate and key.
control1's kube-apiserver manifest
$ sudo grep etcd-.*file /etc/kubernetes/manifests/kube-apiserver.yaml
        - --etcd-cafile=/etc/ssl/etcd/ssl/ca.pem
        - --etcd-certfile=/etc/ssl/etcd/ssl/node-control1.pem
        - --etcd-keyfile=/etc/ssl/etcd/ssl/node-control1-key.pem

control2's kube-apiserver manifest
$ sudo grep etcd-.*file /etc/kubernetes/manifests/kube-apiserver.yaml
        - --etcd-cafile=/etc/ssl/etcd/ssl/ca.pem
        - --etcd-certfile=/etc/ssl/etcd/ssl/node-control2.pem
        - --etcd-keyfile=/etc/ssl/etcd/ssl/node-control2-key.pem

control3's kube-apiserver manifest
$ sudo grep etcd-.*file /etc/kubernetes/manifests/kube-apiserver.yaml
        - --etcd-cafile=/etc/ssl/etcd/ssl/ca.pem
        - --etcd-certfile=/etc/ssl/etcd/ssl/node-control3.pem
        - --etcd-keyfile=/etc/ssl/etcd/ssl/node-control3-key.pem

Screenshots
If applicable, add screenshots to help explain your problem.
Versions (please complete the following information):

OS: All
Burrito 2.1.0 and earlier

Additional context
Add any other context about the problem here.

I updated a patch file
12-patch-kubespray-control-plane-kubeadm-secondary.txtkubeadm-secondary.yml
to update --etcd-certfile and --etcd-keyfile parameters in kube-apiserver.yaml.
The commit ba73819c11342ba26719d1a7cf490a2c2fdc9faa solved this issue.


Blocked popups are not handled in Chrome on Github Codespace

When using GitHub Codespaces, if an extension tries to spawn a new browser window it's blocked by Chrome:

This issue was discussed in the context of Safari in #118731 and it seems like a fix was applied (that detects the blocking, then prompts the user so that the window can be re-triggered from a user-click which would not trigger the blocking), but from the discussion it's not clear if this was only applied to Safari (@isidorn may be able to confirm - I can't see anything Safari specific in the linked commits I reviewed). I certainly don't see that notification in Chrome.
The API called that triggered this was vscode.env.openExternal. It was tested today on the current live version of GitHub workspaces (and latest stable version of Chrome).
If I allow github.dev to spawn popups in Chrome settings, ofcourse everything works fine - but that only solves the problem for me and not other users.

@DanTup the code was not safari specific, but we were able to see if the window got opened or not. So the idea was to detect that if I remember correctly.

@isidorn that's what I thought from reading the code. I wonder if Chrome doesn't give any hints in the return value to indicate this. StackOverflow seems to be full of questions like this with all sorts of hacks but most are very old so it's not clear what the current state is.
The most reliable way I can think of would be for VS Code to open a page of its own first (and use something like postMessage to verify it's open) before redirecting to the intended location, but I don't know if that's simple to implement 🤔


[wko-nightly] Fix the failure from ItMiiClusterResource/testSharedClusterResource to delete shared-cluster

the Nightly Failure https://build.weblogick8s.org:8443/job/wko-kind-nightly-parallel/1212/testReport/oracle.weblogic.kubernetes/ItMiiClusterResource/testSharedClusterResource/
error:
message: 'Domain domain7 failed due to ''Domain validation error'': Cannot reference
cluster resource ''shared-cluster'' because it is used by ''domain8''. Update
the domain resource to correct the validation error.'
reason: Failed
we do verify domain/cluster deleted using withStandardRetryPolicy. I can't see any other issue causing the failure of deleting the cluster. We can try to increate the waiting time from withStandardRetryPolicy to withLongRetryPolicy
to make sure we have enough time in case the env is picky
Jenkins:
https://build.weblogick8s.org:8443/job/weblogic-kubernetes-operator-kind-new/16001/

Hi Pani, unfortunately we can't, testUntil throws timeout error and doesClusterExist catch the exception itself


sed -i error on macOS Catalina 10.15.3

sed: 1: "1i\### Created by Andro ...": extra characters after \ at the end of i command
I am on macOS Catalina 10.15.3

It seems that OSX is outdated SED. I've created a small update.
First uninstall it as indicated by the README.
sudo rm /usr/local/bin/maza && sudo rm ~/.maza
On OSX install the latest version of SED, with...
brew install gsed
Y finally install again
curl -o maza https://raw.githubusercontent.com/tanrax/maza-ad-blocking/master/maza && chmod +x maza && sudo mv maza /usr/local/bin
Good luck

brew install gnu-sed


Upgrade Linux Kernel for flatcar-3033 from 5.10.205 to 5.10.207

Subject says it all.

See instead https://github.com/flatcar/scripts/pull/1576


feat: add message batcher for output channel

Types

[x] 🚀 Performance Improvements

Background or solution
和终端原理一样，在插件频繁调用 outputChannel.append 时批量发送到前端
https://github.com/opensumi/core/pull/304
Changelog

add message batcher for output channel

Codecov Report

Merging #436 (8de28f2) into main (5a8d583) will decrease coverage by 0.00%.
The diff coverage is 56.25%.

@@            Coverage Diff             @@
##             main     #436      +/-   ##
==========================================
- Coverage   59.32%   59.32%   -0.01%
==========================================
  Files        1189     1189
  Lines       72903    72918      +15
  Branches    15091    15094       +3
==========================================
+ Hits        43251    43256       +5
- Misses      27021    27029       +8
- Partials     2631     2633       +2

Impacted Files
Coverage Δ

...extension/src/hosted/api/vscode/ext.host.output.ts
66.66% <56.25%> (-6.67%)
:arrow_down:

packages/monaco/src/browser/schema-registry.ts
68.88% <0.00%> (-2.23%)
:arrow_down:

...kages/theme/src/browser/workbench.theme.service.ts
70.32% <0.00%> (-0.90%)
:arrow_down:

...erences/src/browser/preference-settings.service.ts
79.16% <0.00%> (-0.70%)
:arrow_down:

packages/core-common/src/node/port.ts
46.96% <0.00%> (+3.03%)
:arrow_up:

Continue to review full report at Codecov.

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


Update cffconvert.yml to version 2.0.0

Hello!
This PR updates cffconvert-github-action to 2.0.0.
In the new version, the cffconvert-github-action does not compare against Zenodo anymore, because Zenodo is using CITATION.cff directly now (see this twitter post).
BTW it's perfectly fine if you don't feel like accepting this Pull Request for whatever reason -- we just thought it might be helpful is all.
We found your repository using a partially automated workflow; if you have any questions about that, feel free to create an issue over at https://github.com/cffbots/filtering/issues/
On behalf of the cffbots team,
@abelsiqueira / @fdiblen / @jspaaks

Thanks for the review. I do not have permission to merge, can you do it for me?


Undefined method permit when passing in "user" as a parameter to sign in page

Environment

Ruby 2.5.1
Rails 5.1.6
Devise 4.4.3

Current behavior
Go to any default sign in page in a Rails app that uses Devise, and pass in a parameter called user with a value set to a String, such as<EMAIL_ADDRESS>This results in the app raising a 500 error due to undefined method 'permit' for "test@test.com":String, which comes from this code in parameter_sanitizer.rb:
def permit_keys(parameters, keys)
  parameters.permit(*keys)
end

Expected behavior
The app does not raise an error. It should validate the params before trying to call permit on them.

In the meantime, is it reasonable to add something like this to our SessionsController?
before_action :configure_permitted_parameters, only: [:new]

def configure_permitted_parameters
  devise_parameter_sanitizer.permit(:sign_in) do |user_params|
    user_params.permit(:email) if user_params.respond_to?(:permit)
  end
end


Forward docker interface traffic

Duplicate the forwarding rules created by Docker daemon.
This assumes the DOCKER chain exists, which it should if we have an interface of type docker which we're already checking.

LGTM 👍


Index randomly has conflict

The following code simply creates a blank index, adds 1 file to it, and checks the index for conflict. When running multiple times, once after another, the index will randomly have a conflict, and the conflicted entry will be the only entry, with a stage value of 3.
I would expect there never to be a conflict. Is this a bug or have I misunderstood a concept?
return Git.Repository.init(this.repoPath, 0)
.then(repo => {

  return Git.Index.open('randomindexpath')
  .then(index => {

    //create file entry
    var fileContent = new Buffer("first file content");
    var newFileOid = Git.Blob.createFromBuffer(repo, fileContent, fileContent.length);
    var fileEntry = new Git.IndexEntry();
    fileEntry.path = 'firstfile.txt';
    fileEntry.id = newFileOid;
    fileEntry.mode = Git.TreeEntry.FILEMODE.BLOB;
    //add entry to index
    index.add(fileEntry);
    if (index.hasConflicts()) {
      throw new Error('Index is conflicted');
    }
  });
});

Added #820 which adds a test case, and enables Git.Index.create()

This might be related to #827.

I found that setting the index entry flags to 0 before adding to index seems to clear the unexpected conflict state. Doing a dump showed that it might be left uninitialized otherwise, which probably confuses the add code.


Cleanup devDependency into xXBJXx/iobroker-react.git#IssiVersion

The following devDependency needs some cleanup:
    "iobroker-react"<EMAIL_ADDRESS>

siehe https://github.com/ioBroker/adapter-react-v5/issues/362

fixed with 2.0.0 by @GermanBluefox


Surpress warnings from other extensions

When doing extension development we warn about invalid use of our contribution points. However, that isn't limited to the extension you're just developing but to all extensions you have installed. This is a source of spam and we should show warnings only for extensions you author.

@jrieken Do you have steps to verify this?

Toverify: Install an extension that causes an extension point validation warning, e.g. samverschueren.final-newline. Then also author an extension and also have it cause a warning. Debug the extension and make sure you only see notification using the message service that are caused by your extensions, not by the installed extension


question: Where are secrets stored?

I'm running BFC via container (linux)... And constantly losing the secrets...
I'm wondering if I could map the folder where the secrets are stored to a local path, but I cannot find it...
I'm having a hard time finding this info in the source code...
Could someone point me the way?
tks,

@cdonke can you be more specific as to which secrets you are looking for? Is it the QnA and/or LUIS authoring/subscription keys? OAuth tokens? Etc..
Based on the Authoring session, we do store some information in the browser's local storage but we can get you a better idea once we know what secrets you're referring to.

Closing this due to inactivity. if issue persists please open a new one


[v10] Fix cuSPARSELt 0.1.0 support in v10

Following up #6507.
This PR fixes cuSPARSELt 0.1.0 support in v10, which was corrupted in #6507.

/test full


Fresh Install on CentOS 8 Fails

Describe the bug
I did a vanilla install of k3s on top of a minimal CentOS 8 installation.  At first it complained about missing semanage.  I rectified that and systemd is getting denied the power to execute /usr/sbin/k3s now.
To Reproduce
Steps to reproduce the behavior:

Install minimal CentOS 8 (CentOS Linux release 8.0.1905 (Core)).
Install yum install policycoreutils-python-utils-2.8-16.1.el8.noarch
Run the vanilla k3s install command: curl -sfL https://get.k3s.io | sh -

I have k3s version v0.9.1 (755bd1c6)

Check systemctl status k3s and you will see that it failed

Process: 1910 ExecStart=/usr/local/bin/k3s server (code=exited, status=203/EXEC)

grep k3s /var/log/audit/audit.log | grep denied leads to:

type=AVC msg=audit(1569410142.898:230): avc:  denied  { execute } for  pid=1950 comm="(k3s)" name="k3s" dev="dm-0" ino=67579747 scontext=system_u:system_r:init_t:s0 tcontext=unconfined_u:object_r:user_tmp_t:s0 tclass=file permissive=0

Also note the odd labels in use:

> ls -laZ /usr/local/bin/k3s
-rwxr-xr-x.  1 root root unconfined_u:object_r:user_tmp_t:s0 45613024 Sep 25 06:48 k3s

Expected behavior
I expected the instructions to work.  After waiting some amount of time, k3s kubctl get node should just work.
Additional context
I think I can fix this with the right SELinux labels.  I am trying to figure those out.

Maybe it's because I was missing semanage on my first attempted install?  And the second run didn't fix things after getting that utility?
I used these two commands to enable the k3s service to run successfully via systemd control:
> semanage fcontext -a -t bin_t /usr/local/bin/k3s
> restorecon -v /usr/local/bin/k3s
> systemctl start k3s
> systemctl status k3s
....
Active: active (running) since Wed 2019-09-25 07:23:09 EDT; 1min 19s ago

Reopening as would like QA to have the opportunity to validate this regardless of the simplicity of the change to the install script.


Improve performance and bundle size

Description and Motivation
This PR aims to improve the performance of the app and the overall experience:

Fix the connection to some wallets, such as leap snap and others that currently do not work
Support wallet connect, right now I have not implemented it, but you can easily do it in a separate PR, I didn't want to add too much to this PR
Reduce the bundle size of the app and the first load js, this generally improves the speed of the app, especially in view of the possibility of supporting mobile
Simplify the code, in general I wanted in some places to simplify some logic
Added as bun package manager to improve dev experience, lower dependency install times.

TODO after this PR:

Re-enable validation of TS types, which I currently saw were disabled.
Fix linter configuration issues, currently they are not respected everywhere and in general there are several unfixed errors, separate from this PR
Refactor the logic for signing messages, it can be improved to simplify it to avoid passing global parameters as functions to get signers and also adding dynamic imports in these steps, you can still reduce the size of the first load js.

Bundle size compare
Before:

After:

The impact on bundle size has been reduced by 9x, but I aim to reduce it again, you can go down further
Checklist:

[x] I have read Migaloo's contribution guidelines.
[x] My pull request has a sound title and description (not something vague like Update index.md)
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation.
[x] The code is formatted properly yarn lint.
[x] The project builds and is able to deploy on Netlify yarn build.

Hola @nick134-bit, sorry to bother you, as I would like to add more enhancements, this PR is ready for review. When you can, could I get some feedback? Thank you!

Hey @DavideSegullo,
thank you for submitting this PR! Im not familiar with quirks and switching the wallet connector must be well thought out. We currently have several custom solutions for cosmos-kit in place, which might lead to non-functional wallet connectors for quirks, such as Station or Keplr Ledger.
Could you please provide more details on the major advantages of quirks, apart from the bundle size? Additionally, I am curious about how wallets are added and maintained for quirks. I noticed an open issue regarding Ledger support. Does this mean Ledger is currently unsupported on any wallet?
Thank you again for your contribution.

Hey @DavideSegullo, thank you for submitting this PR! Im not familiar with quirks and switching the wallet connector must be well thought out. We currently have several custom solutions for cosmos-kit in place, which might lead to non-functional wallet connectors for quirks, such as Station or Keplr Ledger. Could you please provide more details on the major advantages of quirks, apart from the bundle size? Additionally, I am curious about how wallets are added and maintained for quirks. I noticed an open issue regarding Ledger support. Does this mean Ledger is currently unsupported on any wallet? Thank you again for your contribution.

Hola @nick134-bit thank you for your message, I understand the risks and doubts in changing the wallet manager, yes I saw that there were custom logics build on cosmos-kit, but most of these can be removed as they are already handled, so this would help simplify the code.
Reducing the bundle size is not the only benefit of course, for example:

The state is accessible from the whole app, so there is no need to make calls to functions in which you manually pass the signer, thus having globally accessible utilities that allow you to reduce the code and in general the complexity of the logic
The logic you write to work with transactions, etc., can also be reused on react-native should you decide to make a native app tomorrow, so the only thing to manage in that case would be the UI, but thanks to the deeplink you can easily connect to the installed native apps.

About the issue regarding ledger support, it doesn't refer to ledger support in wallets, those work on keplr etc., it refers to the ability to directly connect the ledger to the app without going through any wallet to sign a tx via USB connection.
Regarding wallets, terra station at the moment is totally supported even on chains other than terra2 (I did several tests on juno signed tx for cosmwasm), the only thing they don't allow you to do at the moment is to sign tx with direct sign.
The wallets are maintained publicly on PR by those who suggest new additions and from quirks team, via discord or github if anyone want support to integrate some wallet that is missing we are available, but also by staying up to date as much as possible with cosmos wallet registry


Improve meeting user relation handling

resolves #2789
Also cleans up all places were meeting_user_ids were subscribed.

It might be that this comes with performance penalties in some scenarios. We should do some testing before merging this.

I tested this now a bit and could only observe a minor performance impact.
To reduce this impact I added two minor tweaks that should especially improve autopilot performance. In my opinion this is ok to merge.

I have a better Idea to make this more performant. Please do not merge yet.


Integrate keyboard support into DownUpListener

To enable keyboard accessibility across our sims in the most general way, we should add keyboard support to DownUpListener, which is used for many buttons + features in the sims.  @jonathanolson said this is the way to go.  I have prototyped with this and it is looking like it is working well, I'll polish it up and commit shortly.  This change will affect many files and be somewhat destabilizing (though I have tested a few sims with it), but it should be reviewed by @jonathanolson or @pixelzoom soon after committing.

I added keyboard support to DownUpListener in the above commits, and amazed at how far it gets us in terms of accessibility--many buttons are now keyboard accessible in sims.  I tested RPAL and didn't see any problems.

I'm going to assign this to @jonathanolson to review with @jessegreenberg once we are spending more time on accessibility.

assigning to @jessegreenberg for issue hygiene, can this be closed?

If DownUpListener is deprecated, does this need to be done?

@jessegreenberg can you please respond to this?  Does this still need to be done, or can it be closed?

No, this does not need to be done. Closing.


Automated cherry pick of #8977: fix(monitor): modify monitor serviceType in StartService()

Cherry pick of #8977 on release/3.5.
#8977: fix(monitor): modify monitor serviceType in StartService()

Codecov Report

Merging #8982 (6f1bf54) into release/3.5 (6a15e02) will increase coverage by 12.00%.
The diff coverage is 33.33%.

@@               Coverage Diff                @@
##           release/3.5    #8982       +/-   ##
================================================
+ Coverage         5.98%   17.98%   +12.00%
================================================
  Files              796       84      -712
  Lines           125693     8861   -116832
================================================
- Hits              7522     1594     -5928
+ Misses          117504     7098   -110406
+ Partials           667      169      -498

Flag
Coverage Δ

aFlag
17.98% <33.33%> (+12.00%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

.../monitor/alerting/conditions/suggestrulereducer.go
0.00% <0.00%> (ø)

pkg/util/seclib2/seclib.go
86.04% <100.00%> (ø)

pkg/multicloud/esxi/cluster.go

pkg/hostman/guestfs/fsdriver/base.go

pkg/monitor/notifydrivers/feishu/cache.go

pkg/compute/models/loadbalancer_backendstatus.go

pkg/apis/share.go

pkg/cloudcommon/db/query.go

pkg/compute/regiondrivers/azure.go

pkg/multicloud/ucloud/image.go

... and 698 more

Continue to review full report at Codecov.

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


Remove redundant code

Remove redundant code in the benchmark directory

That one supersedes #2487, right ? Pity I only realized this after deconflicting the older one. Need to check now that merging this would not throw out code from the others I guess...

It would probably be easier if you could just resubmit this based on the current develop and with only the redundant code removed.

That one supersedes #2487, right ?
yes

It would probably be easier if you could just resubmit this based on the current develop and with only the redundant code removed.

Resubmit done

That one supersedes #2487, right ?

yes

Thank you.


cask: check OS compatibility before downloading

When trying to update an app to a version which is incompatible with my OS, Homebrew first downloads the update and then complains about a OS mismatch.
This should be done the other way around: first check the OS compatibility, then try to download the update.
Actual result
$ brew cask upgrade calibre
[..]
==> Upgrading 1 outdated package:
calibre 3.48.0 -> 4.3.0
==> Upgrading calibre
==> Downloading https://download.calibre-ebook.com/4.3.0/calibre-4.3.0.dmg
######################################################################## 100.0%
==> Verifying SHA-256 checksum for Cask 'calibre'.
==> Purging files for version 4.3.0 of Cask calibre
Error: macOS Mojave or newer is required.

Expected result
$ brew cask upgrade calibre
[..]
==> Upgrading 1 outdated package:
calibre 3.48.0 -> 4.3.0
==> Upgrading calibre
Error: macOS Mojave or newer is required.

Closing as a duplicate of https://github.com/Homebrew/homebrew-cask/issues/72474.


no --subnetwork option as specified in docs for work-with-networks.md

As specified in the docs/userguide/networking/work-with-networks.md.
one might think there is an actual --subnetwork option to specify on the cli.
Fixing typo.
line 81 +In addition to the --subnetwork option, you also specify the --gateway --ip-range and --aux-address options.
It should most likely be '--subnet' option.

If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
For more information about reporting issues, see CONTRIBUTING.md.
You don't have to include this information if this is a feature request
(This is an automated, informational response)

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

#dibs

fixed by https://github.com/docker/docker/issues/21582, but GitHub didn't auto-close
thanks @kamigerami!


Limit querying of GitHub repos' extra details to 1000 least-recently checked

Closes #41.

Seeing updated but last_checked and with different rubs me a little wrong but I guess it is ok.  If doesn't bother you enough to unify (e.g. just checked and then get rid of subsec precision) -- please merge.


ValueError: did not find a match in any of xarray's currently installed IO backends ['netcdf4', 'h5netcdf', 'scipy'].

What is your issue?
Hi,
I am using python 3.1 1.3, I am encountering this error when running a package
Traceback (most recent call last):
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/climate_indices/main.py", line 1671, in main
input_type = _validate_args(arguments)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/climate_indices/main.py", line 108, in _validate_args
with xr.open_dataset(args.netcdf_precip) as dataset_precip:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/xarray/backends/api.py", line 510, in open_dataset
engine = plugins.guess_engine(filename_or_obj)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/xarray/backends/plugins.py", line 177, in guess_engine
raise ValueError(error_msg)
ValueError: did not find a match in any of xarray's currently installed IO backends ['netcdf4', 'h5netcdf', 'scipy']. Consider explicitly selecting one of the installed engines via the engine parameter, or installing additional IO dependencies, see:
https://docs.xarray.dev/en/stable/getting-started-guide/installing.html
https://docs.xarray.dev/en/stable/user-guide/io.html
Traceback (most recent call last):
File "/Users/24715447/anaconda3/envs/climate/bin/process_climate_indices", line 8, in
sys.exit(main())
^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/climate_indices/main.py", line 1671, in main
input_type = _validate_args(arguments)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/climate_indices/main.py", line 108, in _validate_args
with xr.open_dataset(args.netcdf_precip) as dataset_precip:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/xarray/backends/api.py", line 510, in open_dataset
engine = plugins.guess_engine(filename_or_obj)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/24715447/anaconda3/envs/climate/lib/python3.11/site-packages/xarray/backends/plugins.py", line 177, in guess_engine
raise ValueError(error_msg)
ValueError: did not find a match in any of xarray's currently installed IO backends ['netcdf4', 'h5netcdf', 'scipy']. Consider explicitly selecting one of the installed engines via the engine parameter, or installing additional IO dependencies, see:
https://docs.xarray.dev/en/stable/getting-started-guide/installing.html
https://docs.xarray.dev/en/stable/user-guide/io.html

I have tried installing xarray dependencies as given in the links.
pip install xarray[io]
conda install conda-forge netcdf4 h5netcdf scipy

I can confirm that all dependencies were installed but the same error pops out after trying again.
Any advice on how to solve the issue?

The error message tells that the backends are installed and can be found by xarray.
What exactly did you try to open? A local file? If yes, can you provide the name of this file?

Yes. I am trying to open a local file.
Filename is auchirps_monthly_bydekad_e11.nc

What happens when you specify the netcdf4 engine directly? (Assuming it is a nc4 and not nc3 file).

Hi, thanks for the response. I have solved it already.

I downgraded my python version to 3.9 from 3.11
Conda install for xarray dependencies worked at this version
The ValueError is a file problem. Tried using it on a different file and its works perfectly.


Partial support in Chrome 47, no support on iOS 9

I suddenly discovered that caniuse data is incorrect. Bad surprise for me :(
So, I used this public link https://css-tricks.com/svg-fragment-identifiers-work/ for testing
My result:
iOS 9 no fragment identifiers at all!
Chrome 47 partial support
I attached screenshot with render results

Have updated this manually. Apparently it seemed fragments in CSS backgrounds were working in my tests, but with further investigation this would only be the case if the same image had already been set by an image on the same page (which was a separate test). That actually may be a workaround to making it work, haven't really investigated further, but for now have updated the data and added a known issue with more info. Thanks!

@Fyrd can you share your tests?
According my tests and link above theres's currently no support for fragment identifier at iOS at all.
So, I included icon as
<img src="images.svg#icon" width="12" height="12">

and all sprite was shown, not the single icon


[KOGITO-2873] Tests: Set Data index URL in env variables for Manageme…

…nt console
Signed-off-by: Karel Suta<EMAIL_ADDRESS>https://issues.redhat.com/browse/KOGITO-2873
Many thanks for submiting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[x] You have read the contributors guide
[x] Pull Request title is properly formatted: [KOGITO-XYZ] Subject
[x] Pull Request contains link to the JIRA issue
[x] Pull Request contains description of the issue
[x] Pull Request does not include fixes for issues other than the main ticket
[ ] Your feature/bug fix has a unit test that verifies it
[x] You've tested the new feature/bug fix in an actual OpenShift/Kubernetes cluster

Covers https://github.com/kiegroup/kogito-cloud-operator/pull/468

@sutaakar please verify the lint problem


Update GDCM

@malaterre is SourceForge still the right repository to get changes from?

FYI:  https://github.com/malaterre/GDCM/pull/72  More updates for GDCM will hopefully be coming soon.

@dzenanz Yes sf.net is still the correct git repo, github is a read-only mirror (may even be out of sync from time to time).

FYI:  Regarding the goto statements:  https://www.explainxkcd.com/wiki/index.php/292:_goto
:)


Ldap Configuration -

Describe the bug
LDAP is setup using the same settings as other services like git and rocket chat but will not authenticate a user.
Mounting /etc/ssl/certs/ca-certificate.crt to make sure ssl is able to connect.
Running a test php connection within the container works without bind issues.
Error: "These credentials do not match our records."
credentials work for other sites,
Steps To Reproduce
Steps to reproduce the behavior:
Using the docker below, creating the behavior of not throwing a bind error but not authenticating the user
Expected behavior
I expect to have the same login process as with other services.
Your Configuration (please complete the following information):

Exact BookStack Version (Found in settings): Latest from docker repository
PHP Version:
Hosting Method (Nginx/Apache/Docker): Docker

Additional context
Docker-Compose
version: "2"
services:
bookstack:
image: linuxserver/bookstack
container_name: bookstack
environment:
- PUID=1000
- PGID=1000
- DB_HOST=bookstack_db
- DB_USER=bookstack
- DB_PASS=dbpass
- DB_DATABASE=bookstackapp
- APP_URL=https://subdomain.example.com
- VIRTUAL_HOST=subdomain.example.com
- LETSENCRYPT_HOST=subdomain.example.com
- LETSENCRYPT_EMAIL=email
- AUTH_METHOD=ldap
- LDAP_VERSION=3
- LDAP_VERSION=false
  - LDAP_BASE_DN=ou=coolname,dc=example,dc=com
  - LDAP_SERVER=ldaps://ldap.example.com:636
  - LDAP_DN=cn=admin,dc=api,dc=digital
  - LDAP_PASS=password&*!)@(# with special charactors

- LDAP_USER_FILTER=(|(cn=${user})(sn=${user}))
  - LDAP_USER_FILTER=(|(cn=${user})(sn=${user})(uid=${user}))
  - LDAP_TLS_INSECURE=false
  - LDAP_ID_ATTRIBUTE=cn
  - LDAP_EMAIL_ATTRIBUTE=sn
  - APP_DEBUG=true
  - LDAP_AUTO_CONFIRM_EMAIL=true

The error, "These credentials do not match our records.", suggests that the connection is probably working but either the user search provides no results or the password do not work for the first found user.
It's possible you're hitting docker variable substitution here looking at your compose file. Could you try updating your LDAP_USER_FILTER value to be:
(|(cn=$${user})(sn=$${user})(uid=$${user}))

That fixed it. Thanks for the help.

the $$ was also required for me. would it make sense to include this in the documentation?
thanks again


Agent listen tcp :3000: bind: address already in use

With the autoscaler I am creating following docker-compose set for the agent. Somehow the agent does not start and complains about a port being already in use:
root-woodpecker-agent-1  | rpc error: code = Unavailable desc = connection error: desc = "error reading server preface: read tcp <IP_ADDRESS>:59030->xxx:443: read: connection reset by peer"
root-woodpecker-agent-1  | {"level":"warn","error":"rpc error: code = Unavailable desc = connection error: desc = \"error reading server preface: read tcp <IP_ADDRESS>:58580->xxx:443: read: connection reset by peer\"","time":"2023-05-14T12:35:07Z","message":"cannot connect to server, retrying in 2s"}
root-woodpecker-agent-1  | {"level":"error","time":"2023-05-14T12:35:09Z","message":"cannot listen on address :3000: listen tcp :3000: bind: address already in use"}

# docker-compose.yml
version: '3'
services:
  woodpecker-agent:
    image: woodpeckerci/woodpecker-agent:next
    restart: always
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - WOODPECKER_AGENT_SECRET=xxx
      - WOODPECKER_MAX_WORKFLOWS=2
      - WOODPECKER_SERVER=xxx

I'm seeing the same error in my logs, but my agent still works fine. On my machine it is connected to WOODPECKER_HEALTHCHECK - setting it to false will cause the error to disappear.

Haven't seen the issue in recent tests, so closing for now


Backwards compatibility for uppercase model/controller file names

Added backwards compatibility config item - for all my controller / models I don't have the file names upper case first - presumably others do too. Added the config item, implemented in model loader & controller route loading (and error class loading), updated the changelog hopefully correctly.

If we wanted to support these cases, we wouldn't make Ucfirst a requirement ...

May I ask, why don't you want to support these cases?

Because the idea was to get rid of all these "elseif"s.


fix: withPrefix not working as expected: BASE_PATH is undefined error

Details: https://github.com/gatsbyjs/gatsby/issues/26048

Mhh I dont think you need to add withPrefix here. I would add it in the UI in the search results.
Something like that:
{searchResults.map((result) => (
  {result.title}
))}

So this PR is not needed WDYT @bdenham ?

Also it looks like the Gatsby issue was opened last year so I don't expect a fix anytime soon ... Hardcoding the BASE_PATH in every repo would be messy...

{searchResults.map((result) => (
  {result.title}
))}

So this PR is not needed WDYT @bdenham?

Yeah, good call, Stephan. I think this is the right approach. Now that I'm awake again, I think It makes more sense to keep this on the frontend (in the search component) for greater flexibility. I'm integrating the search page and field prototype this morning, so I'll use it there and see if I run into the bug @naydav discovered yesterday.

Also it looks like the Gatsby issue was opened last year so I don't expect a fix anytime soon ... Hardcoding the BASE_PATH in every repo would be messy...

Yeah, we definitely don't want this as a solution! But @naydav was coming up with a temporary workaround to that bug we ran into yesterday. :)
Yeah, @naydav, I think we can close this PR. I'll test on the frontend and if I still encounter the bug there, I'll do some more research and see what I can come up with for a fix on the frontend. 👍

PR is closed due to conversation above


Enhance rippled's HTTP Response for empty requests (Version: 1.5 RC2)

Summary

Existing rippled's HTTP response to an empty request is HTTP 400. For example:
/ # curl -I localhost:51233
HTTP/1.1 400 Bad Request

Consider enhancing the response to give HTTP 200 when an empty request is received.
Motivation

This allows conventional load balancers to properly detect the state of rippled
Solution

Consider checking for empty request here
https://github.com/ripple/rippled/blob/develop/src/ripple/rpc/impl/ServerHandlerImp.cpp#L569
  if ((request.size () > RPC::Tuning::maxRequestSize) ||
            ! reader.parse (request, jsonOrig) ||
            ! jsonOrig ||
            ! jsonOrig.isObject ())
        {
            HTTPReply (400, "Unable to parse request: " +
                       reader.getFormatedErrorMessages(), output, rpcJ);
            return;
        }

Paths Not Taken

N/A

If this is used by load balancers, then rippled should probably not respond with 200 if the server is not in sync with the network.
It might be similar to calling server_info and checking that the result.info.server_state is full, validating, or proposing.

If you want to check the status of rippled with a load balancer, you should be calling the Health Check method.
I think this ticket does not need to be done now that the Health Check exists, and it is still appropriate to return 400 Bad Request if you call with no info.


Rogue Sinister Strike being replaced with Roll the Bones

It seems that upon an fresh import, GSE replaces Sinister Strike with Roll the Bones, not all instances of SS but in this case just one. This issue has been seen by other people using this macro but it seems to not break the macro since Roll the Bones is never actually done (very strange)
Macro location:
https://wowlazymacros.com/forums/topic/bfa-outlaw-questing-pvp/
its v.4
here is a sample:
/castsequence [reset=combat] Sinister Strike, Roll the Bones, Blade Flurry, Sinister Strike, Sinister Strike, Sinister Strike, Pistol Shot, Roll the Bones
The OP never put in "Roll the Bones" in the macro, also, he has the "Slice and Dice" talent, which does not use Roll the Bones.

Hi Petermsc,
Slice n Dice as a talent replaces Roll the Bones.  In a macro however if you go /cast Roll the Bones and you have the talent for SnD, it will cast SnD.
GSE replaces talented abilities like SnD with their base ability.  If you see #406 this change is exactly what is expected.  It’s not changing Sinister Strike but Slice N Dice.
This is working exactly as it is supposed to.
TimothyLuke

On 1 Sep 2018, at 1:57 am, Petetsmisc<EMAIL_ADDRESS>wrote:
It seems that upon an fresh import, GSE replaces Sinister Strike with Roll the Bones, not all instances of SS but in this case just one. This issue has been seen by other people using this macro but it seems to not break the macro since Roll the Bones is never actually done (very strange)
Macro location:
https://wowlazymacros.com/forums/topic/bfa-outlaw-questing-pvp/
its v.4
here is a sample:
/castsequence [reset=combat] Sinister Strike, Roll the Bones, Blade Flurry, Sinister Strike, Sinister Strike, Sinister Strike, Pistol Shot, Roll the Bones
The OP never put in "Roll the Bones" in the macro, also, he has the "Slice and Dice" talent, which does not use Roll the Bones.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Ok, so in my case, I always had Slice and Dice but when the macro was imported, it showed Roll the Bones. So, are you saying that even though it says Roll the Bones, its actually casting Slice and Dice (I'm talented with Slice and Dice)?
At this point I don't know what the OP of the macro had in there, he swears up and down that he NEVER had Roll the Bones in there, so I just don't know how its showing up in the macro.
So, right now I have Slice and Dice talented and if I import the macro, it will show Roll the Bones (don't know if the OP has that in the export or what, trying to work with him to figure out whats going on)

"Ok, so in my case, I always had Slice and Dice but when the macro was
imported, it showed Roll the Bones. So, are you saying that even though it
says Roll the Bones, its actually casting Slice and Dice (I'm talented with
Slice and Dice)? "
Yes.  Even though your macro says roll the bones it casts Slice n Dice as
that spell replaced RtB when you have the SnD talent.  Its a mechanic that
some classes had in Legion.  Now all classes have a version of this now.
eg Avenging Wrath and Crusade.
On Sat, Sep 1, 2018 at 7:24 AM Petetsmisc<EMAIL_ADDRESS>wrote:

Ok, so in my case, I always had Slice and Dice but when the macro was
imported, it showed Roll the Bones. So, are you saying that even though it
says Roll the Bones, its actually casting Slice and Dice (I'm talented with
Slice and Dice)?
At this point I don't know what the OP of the macro had in there, he
swears up and down that he NEVER had Roll the Bones in there, so I just
don't know how its showing up in the macro.
So, right now I have Slice and Dice talented and if I import the macro, it
will show Roll the Bones (don't know if the OP has that in the export or
what, trying to work with him to figure out whats going on)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/TimothyLuke/GnomeSequencer-Enhanced/issues/465#issuecomment-417798949,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAjBFXGatihoVw7ekx_BczahcnFD_vVkks5uWbCfgaJpZM4WVgmK
.

--
Timothy Minahan**M 0406 413 680  |  *E<EMAIL_ADDRESS>

So I just deleted the macro, did another import (talented with Slice and Dice) and the macro shows Roll the Bones, now, during execution, I never see Roll the Bones, so its not using that spell. And Slice and Dice is being used.
Ok, thank you for the explination, I will post this in that macros thread.


Update to Django 4.0

This PR removes or replaces deprecated functions and features that were dropped in Django 4.0. Additionally, it converts things over to only supporting Python 3, adds tests for Django 4.0, drops tests for all currently unsupported versions of Django at this point, and also drops tests for Django 3.1 since official support for that is ending in 12 days.

Looking really good. Thanks for this and apologies for the delay. I'm gonna do some manual testing ASAP.

@frankwiles worth a version bump on this too


Make API not strip query params from redirect url

I want to merge this change because it allows providing query params in redirectUrl by storefront.
Previously we always replace query params. Now, we add Saleor's params to the existing query params

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-6912 Make api not strip query params from url for reset password


Be a better Gem

Improvements based on this article.

This also merges the non-breaking changes from #3.


[hip] Introduce options to control load of libamdhip64.so.

Adds a multi-valued flag --hip_dylib_path, which if present, overrides default library search behavior:

If just a path, it is interpreted as a directory.
If prefixed with file: it is a specific library file and will not be expanded to anything else.

If a --hip_dylib_path flag is not set, then the IREE_HIP_DYLIB_PATH environment variable is consulted/used.
Library loading code is now much more verbose on error, adding an annotation for each combination tried/failed. Even though this adds some error message accumulation to the success path, I deem it worth it after experiencing all of the failure modes myself and needing to printf for more information: There is much more in the dlopen errors beyond whether the file could be found or not, and if we get reports from the field of issues, I want all context.
Adds a stanza to dump device info that displays the path the the OS actually resolved for the HIP runtime library.
Followups will expose this to Python and add environment variables to control it uniformly as well.

This necessitated a bit of an upgrade to how we handle options, and I decided to align it with what I need next (the ability to create a driver with key/value pair options from Python) and unify the flag/option handling.
I free-handed the Windows DLL handling code. Will verify on my Windows machine.

PTAL

Addressed comments. I'm going to add a few unit tests for the new string_builder stuff. Also there seems to be something wonky with this:
      iree_string_view_t error_detail =
          iree_string_builder_view(&error_builder);
      status = iree_make_status(
          IREE_STATUS_UNAVAILABLE,
          "HIP runtime library 'amdhip64.dll'/'libamdhip64.so' not available: "
          "please ensure installed and in dynamic library search path:%*.s",
          (int)error_detail.size, error_detail.data);

It is printing the error_detail as what looks like just spaces. This is on Windows and terminals are... well, weird. However if I fprintf the error_builder contents right above it does print that right.

ah you want %.*s instead of %*.s:
      iree_string_view_t error_detail =
          iree_string_builder_view(&error_builder);
      status = iree_make_status(
          IREE_STATUS_UNAVAILABLE,
          "HIP runtime library 'amdhip64.dll'/'libamdhip64.so' not available: "
          "please ensure installed and in dynamic library search path: %.*s",
          (int)error_detail.size, error_detail.data);

ah you want %.*s instead of %*.s:
      iree_string_view_t error_detail =
          iree_string_builder_view(&error_builder);
      status = iree_make_status(
          IREE_STATUS_UNAVAILABLE,
          "HIP runtime library 'amdhip64.dll'/'libamdhip64.so' not available: "
          "please ensure installed and in dynamic library search path: %.*s",
          (int)error_detail.size, error_detail.data);

Thanks. Was staring at that for too many minutes. I wonder why none of the format checking stuff complained...

PTAL