blas/lapack: increase flexibility of wrappers

Motivation for this change
https://github.com/NixOS/nixpkgs/pull/83888 was a big step forward to provide a simple interface for switching BLAS/LAPACK implementations. This PR fine-tunes the wrapper to extend the number of implementations that can be used by the wrapper. So far, only OpenBLAS and MKL were valid. After cleaning up amd-blis, amd-libflame,  blas-reference, and lapack-reference  these implementations can now also be exposed through the wrapper. While it may not seem necessary for blas-reference, lapack-reference it allows for a clean interface, where now all implementations can be swapped in exactly the same way.
This PR is also one step in cleaning up the handling of the ILP64/LP64 interfaces that these libraries support. All packages that provide blas/lapack implementations (except  MKL), now support the blas64 boolean input parameter, which switches the interface at build time. Overrides now work for all above-mentioned implementations according to the following scheme:
 myblas = self.blas.override { isILP64=true; blas.provider = self.amd-blis; };
 mylapack = self.blas.override { isILP64=true; blas.provider = self.mkl; };

We now also build the attributes blas-ilp64 and lapack-ilp64 to have these 64 bit interfaces available right away. This will make it easier to build scientific applications that rely on it. Note, that while some applications decide at build time which interface to use, others only support either one and can not switch.
Things done

Added the blas64 flag to amd-blis, amd-libflame,  blas-reference, and lapack-reference and adapted the nix expressions to honor this flag. Note, that amd-libflame accepts only  blas64 = false at the moment.
Fixed the BLAS/LAPACK wrappers to hand down the isILP64 flag to the underlying implementation via blas64.
Use cmake to build  blas-reference.
Adopt blas/lapack-reference and amd-blis as a maintainer.

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build blas-reference

I've tried a few packages locally with these changes, and observed some failures, that probably should not be there?
Building some test packages with amd-blis and amd-libflame
nix-build -E "
let
  blasOvl = self: super: {
    blas = super.blas.override { blasProvider = super.amd-blis; };
    lapack = super.lapack.override { lapackProvider = super.amd-libflame; };
  };
  pkgs = import ./default.nix {
    overlays = [ blasOvl ];
  };

in { inherit (pkgs) scalapack cp2k;
      numpy = pkgs.python3.pkgs.numpy;
   }
"

scalapack fails multiple tests (5, 6, 8, 12, 14, 15, 26, 27, and possibly more. Didn't wait for it to finish)

Building test packages with blas-reference and lapack-reference
nix-build -E "
let
  blasOvl = self: super: {
    blas = super.blas.override { blasProvider = super.blas-reference; };
    lapack = super.lapack.override { lapackProvider = super.lapack-reference; };
  };
  pkgs = import ./default.nix {
    overlays = [ blasOvl ];
  };

in { inherit (pkgs) scalapack cp2k;
      numpy = pkgs.python3.pkgs.numpy;
   }
"

blas does not evaluate as libcblas is missing: these 2 derivations will be built:
   /nix/store/7pfc2fxmhwfm10lc2ybd01hdm0cmyg2h-blas-3.drv
   /nix/store/hjqi815iw0xq08awxlls5bvif3nv726s-scalapack-2.1.0.drv
 building '/nix/store/7pfc2fxmhwfm10lc2ybd01hdm0cmyg2h-blas-3.drv'...
 unpacking sources
 patching sources
 installing
 /nix/store/g16y5z4kj2cyc0nm0ss8sywy75p4fc3f-blas-3.10.0/lib/libcblas.so.3 does not exist, blas-3.10.0 does not provide libcblas.
 error: builder for '/nix/store/7pfc2fxmhwfm10lc2ybd01hdm0cmyg2h-blas-3.drv' failed with exit code 1;
        last 4 log lines:
        > unpacking sources
        > patching sources
        > installing
        > /nix/store/g16y5z4kj2cyc0nm0ss8sywy75p4fc3f-blas-3.10.0/lib/libcblas.so.3 does not exist, blas-3.10.0 does not provide libcblas.
        For full logs, run 'nix log /nix/store/7pfc2fxmhwfm10lc2ybd01hdm0cmyg2h-blas-3.drv'.
 error: 1 dependencies of derivation '/nix/store/hjqi815iw0xq08awxlls5bvif3nv726s-scalapack-2.1.0.drv' failed to build

numpy: fails with an attribute error due to name conflicts:    error: dynamic attribute 'blas' already defined at /home/phillip/Dokumente/Git/nixpkgs/pkgs/development/python-modules/numpy/default.nix:34:7

   at /home/phillip/Dokumente/Git/nixpkgs/pkgs/development/python-modules/numpy/default.nix:23:7:

       22|     text = (lib.generators.toINI {} {
       23|       ${blas.implementation} = {
         |       ^
       24|         include_dirs = "${lib.getDev blas}/include:${lib.getDev lapack}/include";

@sheepforce Thanks for taking a look at it.

I've tried a few packages locally with these changes, and observed some failures, that probably should not be there?

lib-flame seems to be  not yet perfectly 100% compatible LAPACK interface, so that only some packages will build.
From what I have seen: I think that a lot of combinations will not build. I.e. not every package with build with every blas/lapack implementation.  I would consider this as normal thing. You have the same thing with MPI. Some packages do build properly when you replace the default MPI implementation.

blas does not evaluate as libcblas is missing

To override, blas with the reference implementation, one needs to use lapack-reference, as it contains blas+cblas. I will add a remark to the manual. The source code of blas-reference does not contain the cblas code.

numpy: fails with an attribute error due to name conflicts

Not sure where this comes from?

@sheepforce Thanks for taking a look at it.

Thanks for this super nice extension :slightly_smiling_face:

lib-flame seems to be not yet perfectly 100% compatible LAPACK interface, so that only some packages will build.
From what I have seen: I think that a lot of combinations will not build.

OK, thats true :) For ScaLAPACK I think that is somehow unfortunate, as it is a quite interesting package. However, there is https://developer.amd.com/amd-aocl/scalapack/ from AMD. Next step making a unified ScaLAPACK interface? :sweat_smile: For now we can live with this, I think.

numpy: fails with an attribute error due to name conflicts

Not sure where this comes from?

I think this comes from here and here.
blas.implementation evaluates simply to blas and the key in the dict is not unique anymore.

OK, thats true :) For ScaLAPACK I think that is somehow unfortunate, as it is a quite interesting package. However, there is https://developer.amd.com/amd-aocl/scalapack/ from AMD. Next step making a unified ScaLAPACK interface? sweat_smile For now we can live with this, I think.

I think the ScaLAPACK interface should already be very uniform. The amd version is just forked from the reference implementation. This could probably be done by just renaming the attributes, like we do for MPI. I did try to build amd-scalapack, but did not succeed yet.

I think this comes from here and here.
blas.implementation evaluates simply to blas and the key in the dict is not unique anymore.

OK, I see now where it comes from. I leave this up someone else to adapt numpy to this particular case.

I would go ahead and merge this if there are no further comments from anyone else.


24px - workflow

#139
https://www.figma.com/file/2rjsQp42uKvzPXzLZIqOeA/Octicons-v2-Source?node-id=723%3A1920

I think the bottom one that @ashygee made works better even if it has aliasing at 24


Azure CLI app cannot be found in app registrations nor enterprise apps

Related command

az account get-access-token --output json --resource "https://graph.microsoft.com"

Is your feature request related to a problem? Please describe.

I see a strange behaviour by following these steps:

Sign into the tenant via Azure CLI
Request an access token for the Microsoft Graph API via the Azure CLI: az account get-access-token --output json --resource "https://graph.microsoft.com"
The token generation is successful and can be decoded in https://jwt.ms/
The app ID (appid claim) for the Azure CLI that is present in the token cannot be found in Entra ID for that tenant (not in app registrations nor in entreprise apps)

Describe the solution you'd like

From my understanding, the Azure CLI is an Entra ID app that relies on a standard approach to interact with exposed APIs on behalf of users.
Additional permissions cannot be granted via the Portal and this leads to problems with other Microsoft solutions, such as the Graph SDK using Azure CLI credentials. Such SDKs might need additional permissions (for example, Mail.Send for the Graph API), however it doesn't seem the delegated permission can be granted to the Azure CLI.
Is this just an issue with the Azure Portal, or is this scenario not possible at all?
Describe alternatives you've considered

A separate app registration can be created with delegated permissions, but this defeats the purpose of the Azure CLI credential.
Additional context

For ease of understanding and following the trail of thought, here is the associated issue in the Microsoft Graph SDK repo.

Thank you for opening this issue, we will look into it.

Azure CLI is a First Party Application and its app ID is 04b07795-8ddb-461a-bbee-02f9e1bf7b46.
I am able to get its service principal in Microsoft tenant 72f988bf-86f1-41af-91ab-2d7cd011db47:
> az ad sp show --id 04b07795-8ddb-461a-bbee-02f9e1bf7b46
{
<EMAIL_ADDRESS>"https://graph.microsoft.com/v1.0/$metadata#servicePrincipals/$entity",
  "accountEnabled": true,
  "addIns": [],
  "alternativeNames": [],
  "appDescription": null,
  "appDisplayName": "Microsoft Azure CLI",
  "appId": "04b07795-8ddb-461a-bbee-02f9e1bf7b46",
  "appOwnerOrganizationId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "appRoleAssignmentRequired": false,
  "appRoles": [],
  "applicationTemplateId": null,
  "createdDateTime": null,
  "deletedDateTime": null,
  "description": null,
  "disabledByMicrosoftStatus": null,
  "displayName": "Microsoft Azure CLI",
  "homepage": null,
  "id": "d164374b-2521-4e1a-b04d-dcb438233b9b",
  "info": {
    "logoUrl": null,
    "marketingUrl": null,
    "privacyStatementUrl": null,
    "supportUrl": null,
    "termsOfServiceUrl": null
  },
  "keyCredentials": [],
  "loginUrl": null,
  "logoutUrl": null,
  "notes": null,
  "notificationEmailAddresses": [],
  "oauth2PermissionScopes": [],
  "passwordCredentials": [],
  "preferredSingleSignOnMode": null,
  "preferredTokenSigningKeyThumbprint": null,
  "replyUrls": [
    "http://localhost",
    "urn:ietf:wg:oauth:2.0:oob",
    "https://login.microsoftonline.com/common/oauth2/nativeclient"
  ],
  "resourceSpecificApplicationPermissions": [],
  "samlSingleSignOnSettings": null,
  "servicePrincipalNames": [
    "04b07795-8ddb-461a-bbee-02f9e1bf7b46"
  ],
  "servicePrincipalType": "Application",
  "signInAudience": "AzureADandPersonalMicrosoftAccount",
  "tags": [
    "WindowsAzureActiveDirectoryIntegratedApp"
  ],
  "tokenEncryptionKeyId": null,
  "verifiedPublisher": {
    "addedDateTime": null,
    "displayName": null,
    "verifiedPublisherId": null
  }
}

But not in another tenant:
> az ad sp show --id 04b07795-8ddb-461a-bbee-02f9e1bf7b46
Resource '04b07795-8ddb-461a-bbee-02f9e1bf7b46' does not exist or one of its queried reference-property objects are not present.

I need to work with Microsoft Entra team internally to understand why the API behaves like this and whether it is possible to add additionally delegated permissions to first party applications.
Related: https://github.com/Azure/azure-cli/issues/22775

I have the same problem as OP, and I'm 99% sure I've been able to find the Microsoft Azure CLI application with appId 04b07795-8ddb-461a-bbee-02f9e1bf7b46 before, but not necessarily in my current tenant.

Seeing same issue in one of our tenants - nowhere to be seen and I need to grant it additional graph permissions.

Seeing same issue in one of our tenants - nowhere to be seen and I need to grant it additional graph permissions.

The enterprise application was also missing in one of our tenants; by running the following command from a cloud shell I was able to force it to appear.
az ad sp create --id '04b07795-8ddb-461a-bbee-02f9e1bf7b46'

It seems that the enterprise application cannot be found, either through the portal, Microsoft Graph, or the deprecated AzureAD module. https://stackoverflow.com/staging-ground/79011059


Update API documentation

In the API documentation here: https://muut.com/riotjs/api/ under riot.tag it says:
"This method is on the edge of being deprecated."
From what I understand, this is not the case anymore.
Also, under riot.compile(url, callback) the example code looks like this:
riot.compile('my/tags.js', function() {
  // the loaded tags are ready to be used
})

..but shouldn't it be like this instead:
riot.compile('my/tags.tag', function() {
  // the loaded tags are ready to be used
})

It took me winmerge to figure out what was different between the code samples for future readers it's

my/tags**.js**

vs

my/tags**.tag**

Just for clarity. :)


Can not test Containerized Installation Deployment: osdsctl CLI cannot be downloaded

Is this a BUG REPORT or FEATURE REQUEST?:

Uncomment only one, leave it on its own line:

/kind bug

/kind feature

What happened:
I followed the instructions in:
https://github.com/opensds/opensds/wiki/How-to-Run-Containerized-OpenSDS-for-Testing-Work
When I got to the following step, it failed because the file was not found:
root@ubuntu:~# curl -sSL https://raw.githubusercontent.com/opensds/opensds/development/osdsctl/bin/osdsctl | mv osdsctl /usr/local/bin/
What you expected to happen:
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

Hotpot(release/branch) version:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

Ubuntu 16.04

That worked, thank you! Verified the README content was updated as well.  Closing.


Backport: Add more driver info to telemetry

https://github.com/rancher/rancher/issues/20040

rancher/rancher:v2.2.4-rc1

Enabled telemetry
Created cluster
Viewed the new fields in telemetry data
Deactivated some node/kontainer drivers
Viewed updated data


⚠ ClamAV has degraded performance

In 7dbe981, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 68 ms

Resolved: ClamAV performance has improved in 1bdeed2 after 5 minutes.


Update diagnostics version

The diagnostics version we are building w/source-build (5.0.0-preview.21506.1) is older and should be upgraded in order to remove this patch was backported but has never flowed in.

Fixed.


Save defaults as JSON issue 1095

Note that conflicts have to be resolved manually since JSON code added and git does not know how to handle...

This pull request will be reopened after the deleted JSON functions from Github merge and restored and tested.

Update and remove .txt defaults and run and match all test results on Windows - no changes in test_results_win64.csv


Draft 0.11.0 Umbrella

If you've followed the v0.10.0 migration guide then you're all set to try the alpha release of Draft 0.11.0!
Get this new and improved Draft.js by installing<EMAIL_ADDRESS>or updating your package.json to the following and running yarn install/npm install:
  "draft-js": "0.11.0-alpha"

And help make Draft better by reporting bugs.  :)

Progress towards releasing Draft 0.11.0:

[x] Release 'alpha' of 0.11.0
[ ] Fix bugs reported in Alpha (ongoing!)
[ ] Update Facebook Draft uses to 0.11.0 API (for context see https://github.com/facebook/draft-js/issues/839) - 29 remaining callsites need updated
[ ] Merge 0.11.0-alpha branch into master
[ ] Manual testing (see https://github.com/facebook/draft-js/wiki/Manual-Testing)

[ ] Chrome
[ ] Firefox
[ ] Safari
[ ] IE
[ ] Edge

[ ] Land 0.11.0-beta internally at FB
[ ] 1-2 weeks of testing - fix bugs that are reported
[ ] Update docs (mostly done thanks to previous PRS that just need merged)
[ ] Release 0.11.0 :)

I noticed that the peerDependencies for 0.11.0 are:
  "peerDependencies": {
    "react": "^0.14.0 || ^15.0.0-rc",
    "react-dom": "^0.14.0 || ^15.0.0-rc"
  },

Are there plans to also support ^16.0.0?
Thanks for the great work! 👍

Hi Steve!
Absolutely - thanks for the reminder. Should work without a hitch, since we have been using Draft.js with React 16-alpha internally for some time now.

@flarnie if supported React 16, will be ref as string converted to function?
https://github.com/facebook/draft-js/blob/744e9b4eb4810797a93c66591fea6f9cac533b4b/src/component/base/DraftEditor.react.js#L243
With React 16.0.0-beta.5 I got such console error:

Hi @nodkz - I know that error is confusing, sorry about that. From what we have seen, it pretty much only happens when you have somehow loaded two copies of React. If you tell me more about your build system I might be able to help.
Here is an issue where other folks have talked through this same problem and we documented some cases and solutions:
https://github.com/facebook/draft-js/issues/296

@flarnie thanks for help!
Easiest way to make draft-js working with React 16

run before start/build shell command rm -fr ./node_modules/draft-js/node_modules/react-dom && rm -fr ./node_modules/draft-js/node_modules/react.
or shortly but with warning message if folders already removed rm -fr ./node_modules/draft-js/node_modules/react*

Ref as string is not a problem for React 16.
How I understood when I upgraded from React 15 to React 16-beta yarn copy old react version to the draft-js/node_modules for keeping peerDeps consistent. Also the same behavior if I remove node_modules and install packages from scratch. So adding react 16 in peerDeps will solve the problem with yarn.

Just an update - still blocked on "Update Facebook Draft uses to 0.11.0 API (for context see #839) - 29 remaining callsites need updated". Unfortunately I need someone within FB to work on those tasks and I'm mainly focused on React right now, so haven't churned through them yet. Thanks for everyone's patience.

@flarnie will the editor evolve or not? It makes sense to wait for a major release?
Thanks!

@flarnie Sorry to bother, but it would be nice to have that information on the repo's README. We've adopted draftjs around March, as we figured it was still active, but I've just now found this information, after having to slog through a rather large amount of bugs.

Hi @benmosher, thanks for voicing the concerns that most users in the community are having. We are looking into reducing the bundle size after the addition of a new HTML converter which coexists with the old one. This is currently being dogfooded internally for regression and, since it caused a breakage in production earlier, we're being extra scrupulous with testing. We'll keep you updated on progress in this issue.

Hi, what is the status of this? I can see the release of v0.11, but this issue is still open and checkboxes not checked. Were all the above tasks finished? E.g. can we rely on v0.11 being fully tested? I am also missing branch v0.11-stable, can we consider master as such?

Yeah, I think we could just close this issue... the new releases are there...

v0.11.0 shipped, so closing this issue.
The removal of the global DraftEntity API did not make it to v0.11.0 and will instead happen in v0.12.0. Any follow-ups to that change can be posted on the v0.12.0 umbrella issue: https://github.com/facebook/draft-js/issues/2650.


cargo cannot resolve dependency

Unfortunately cargo install lucetc fails immediately:
Updating crates.io index Installing lucetc v0.6.1 error: failed to compile lucetc v0.6.1, intermediate artifacts can be found at /tmp/cargo-installg4Nr8d`
Caused by:
failed to select a version for the requirement wabt = "^0.9.2"
candidate versions found which didn't match: 0.10.0, 0.9.1, 0.9.0, ...
location searched: crates.io index
required by package lucetc v0.6.1
`

If you recently updated the main repository, you should update the submodules as well:
git submodule update --init

Scratch that. If you used cargo install, the issue is rather that we forgot to update some packages on crates.io, oops!
Thanks for reporting this. It will be fixed as soon as possible.
Meanwhile the easiest way to install Lucet is to clone this repository and use make install.

Update: wabt 0.9.2, that lucetc depends on, was yanked by its author.
In the current development version of lucet, that dependency was changed back to version 0.9.1. So, compiling directly from this directory should work as expected.


fix compact counter on detecting background access

previously we assume that we don't change these counters after jit begins. however if there's prejit, we mark the counters has been accessed from background thread already and does not allow update, and then with force searialize bytecode, it is updating the counter (searialize ID).
fixing this by block the counter updating only when there's background thread JIT is ongoing, and unblock when the JIT completed

@curtisman  can you review

:+1:

@dotnet-bot test Windows x86_debug  please

@dotnet-bot test Windows x86_debug please

@dotnet-bot test Windows x86_debug please

@abchatra @curtisman can you take a look again. I changed the design a bit to fix the assert in unittest in Jenkins machine. the assert is because we have two background jit threads, they can do codegen on same function body for different loop body

with running crawler I found it's hard to make it correct this way, because while JIT on one function, it sometimes trying to get counters from another function body. I'm going to do a spot fix for the prejit+forceserialized and etw rundown scenarios


Integrate manifold Library into command line prompt

Hi Aleksei,
Do you think it's possible to integrate the new manifold library into the MatSCAD toolbox? It's very helpful but it would be great to be able to use the colour/texture export capability provided by manifold. I have it active in the nightly version but it doesn't seem to be utilised when I run MatSCAD.
Cheers
Ben

Hi!
MatSCAD only generates script files for OpenSCAD. It should use the same parameters. Have you tried activating the GUI to check what's going on?
If you need a specific command prompt, could you please share it? I haven't used manifold before.

Hi Aleksei, sorry for the delayed reply.
Manifold is an optional toolbox that replaces the CGAL render on the most recent developmental snapshots. It can be enabled in the preferences tab when using the GUI. It introduces a few new capabilities (such as colour export) whilst, from my understanding, being generally more speedy at rendering. However, as using MatSCAD bypasses the GUI, manifold does not activate when running via MatSCAD. This seems to be a general issue with running manifold from a command line prompt: https://www.reddit.com/r/openscad/comments/1g2tk83/command_line_doesnt_use_manifold/
Will it be as simple as adding "enable-manifold" to the OpenSCAD_cmd function?
Cheers!

Hi!
Please check last release...


Improve error handling

Improve error handling by adding more checks on the inputs. Replace most of the exception caused by some wrong templates by PebbleException to pass the line number and template name.

Any update on this?

Sorry for the delay in responding. I really like these changes but it breaks backwards compatibility so it'll have to wait until the next major release.

Merged into the 3.0 branch


compatability with gemma 2b and 7b

is this repo compatible with google/gemma-2b?
gemma and llama share a very similar architecture. should the results be consistent without code modifications? code seems like it should generalize to Gemma, not much is hardcoded

I have reviewed the architecture of Gemma models, it seems like ASVD can work on them without many modification. We may support them in the next version.

@hahnyuan For Gemma-2-7b and Lllama-3, the model architecture (naming etc) is pretty much the same. If the architecture is the same, should ASVD be expected to work out of the box without any modifications? Any changes required to STRS algorithm ?

Hello, you can directly run the following code to compress gemma.
CUDA_VISIBLE_DEVICES='2' python asvd.py --model_id="models/gemma-2-9b" --act_aware --alpha 0.5 --n_calib_samples 32 --scaling_method abs_mean --param_ratio_target 0.9 --use_cache
CUDA_VISIBLE_DEVICES='3' python asvd.py --model_id="models/gemma-2-2b" --act_aware --alpha 0.5 --n_calib_samples 32 --scaling_method abs_mean --param_ratio_target 0.9 --use_cache

You may get a very high ppl value (>6000 on gemma-2-2b). This is because the model is training with specific data format. I have tried to add a bos to each sequence for ppl evaluation, which can decrease the ppl value to about 310 on gemma-2-2b.

Great, thank you for getting back to me with this. So --use_bos is required for gemma-2-2b. I'm benchmarking google/gemma-7b, will using --use_bos affect the results?


fixes null reference exception on gtk backend.

Codecov Report

:exclamation: No coverage uploaded for pull request head (fixes/gtk-system-dialog-nullref-exception@2be97ba).

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 89a11ea...2be97ba. Read the comment docs.

This is a long-awaited fix for me :) Thanks!
But I have the similar issue for custom user window.


WebSocket connection failed

Hi! I downloaded your project and setup the project according to your guide. But the web page is always "Connecting Signaling Socket". The console gives me this kind of error message.
WebSocket connection to 'wss://webrtcweb.com:9449/' failed: WebSocket opening handshake timed out
I got the same issue in your demo (https://www.webrtc-experiment.com/FileBufferReader)
Please help.

Hi! Now it works! Thanks!


Blank Playblack

Hi all
I couldn't find an issue with mine but I have the docker container setup and everything looks good however when playing back videos the video is blank but the audio works fine

All Clipface does is expose the video to the browser through a HTML5 <video> element. It sounds like your browser is unable to play your video.
For maximum compatibility, ensure that you are using the H264 codec and preferably the MP4 container. I have experienced the exact scenario you're describing when I tried using H265 (HEVC), and my browser was not able to play it.


Support for storing refresh token in OIDC profile

At now, refresh_token are stored in profile if it is retured by the identity provider.
Fixes #526

Looks good to me. I think we can merge as is.
The next question would be how to get a new access token from a refresh token, but I guess it may depend on identity providers.


New version: SymbolicNumericIntegration v1.3.3

Registering package: SymbolicNumericIntegration
Repository: https://github.com/SciML/SymbolicNumericIntegration.jl
Created by: @shahriariravanian
Version: v1.3.3
Commit: d0840ec4e88e1ccd8ef35e56a37a8c384184ba49
Reviewed by: @shahriariravanian
Reference: https://github.com/SciML/SymbolicNumericIntegration.jl/issues/93#issuecomment-2094806619
Description: SymbolicNumericIntegration.jl: Symbolic-Numerics for Solving Integrals

@JuliaRegistrator register


Add "node": ">=14" to package-lock.json

Technically NPM did this

Follow on from #603 where this change was made to the package.json file


fix(#3239): cursor change config flag (+ improved feature + code fix)

fix(#3239): hide cursor type change behind config flag
feat: also, no reason to block the user, expose all possible cursor types

Resolves #3239.

@Alexays Any feedback on this? Otherwise, I'll assume it's unwanted and close it.


Move JsonRpcClient to types and make public

Feature Request
Is your feature request related to a problem? Please describe.
Hoping to use JsonRpcClient<T> type directly. However it's private within createJsonRpcClient.
Describe the solution you'd like
Move JsonRpcClient to types and export from there.
Are you willing to resolve this issue by submitting a Pull Request?

[x] Yes, I have the time, and I know how to start.
[ ] Yes, I have the time, but I don't know how to start. I would need guidance.
[ ] No, I don't have the time, although I believe I could do it if I had the time...
[ ] No, I don't have the time and I wouldn't even know how to start.

Thanks for contribution


Build warning re. std::shared_future

warning: ‘rclcpp::Client::FutureAndRequestId::operator rclcpp::Client::SharedFuture() [with ServiceT = moveit_msgs::srv::ApplyPlanningScene; rclcpp::Client::SharedFuture = std::shared_future<std::shared_ptr<moveit_msgs::srv::ApplyPlanningScene_Response_<std::allocator > > >; typename ServiceT::Response::SharedPtr = std::shared_ptr<moveit_msgs::srv::ApplyPlanningScene_Response_<std::allocator > >]’ is deprecated: FutureAndRequestId: use .future.share() instead of an implicit conversion [-Wdeprecated-declarations]
175 |   response_future = planning_scene_diff_client->async_send_request(request);
The message pretty much says how to fix it.

@AndyZe you can assign this one to me. Could you specify the tutorial where you encountered this warning?

Sorry I don't remember which tutorial it was. If you follow the "Getting Started" steps to clone and build the tutorials from scratch, I bet you will see the warning.
http://moveit2_tutorials.picknik.ai/doc/getting_started/getting_started.html

@AndyZe  I reinstalled the tutorials by following the getting_started page but could not reproduce the warning. Everything seems to build fine without warnings on my system.
I believe the warning refers to:  https://github.com/ros-planning/moveit2_tutorials/blob/f99b7eb0591adf4ab7c3eba21f03a653d7c8cfa5/doc/planning_scene_ros_api/src/planning_scene_ros_api_tutorial.cpp#L174

@tlpss this is the correct line to look at. The warning is still here in Rolling: https://github.com/ros-planning/moveit2_tutorials/runs/3785281390?check_suite_focus=true#step:6:224

@AndyZe, I finally found some time to get acquainted with vscode dev containers, which I was waiting for to create a ros2 rolling workspace. Apologies for the radio silence.
I fixed the deprecation warning by doing an explicit conversion and made a PR


RET-4097

Jira link (if applicable)
https://tools.hmcts.net/jira/browse/RET-4097

Change description

Updated wiremock settings

Checklist

[X] commit messages are meaningful and follow good commit message guidelines
[ ] README and other documentation has been updated / added (if needed)
[x] tests have been updated / new tests has been added (if needed)
[ ] Does this PR introduce a breaking change

Closing as long standing PR


Commafeed hangs since last(s) commit(s)

Describe the bug
After today's update, commafeed starts, then stops after a few seconds with this error :
WARN  [2023-05-30 07:07:41,672] org.eclipse.jetty.io.AbstractConnection:
! java.lang.NullPointerException: Cannot invoke "org.eclipse.jetty.util.Callback.failed(java.lang.Throwable)" because "callback" is null
! at org.eclipse.jetty.io.AbstractConnection.lambda$failedCallback$0(AbstractConnection.java:92)
! at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
! at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
! at java.base/java.lang.Thread.run(Thread.java:833)

To Reproduce
Steps to reproduce the behavior:

Update commafeed via github
restart commafeed

Expected behavior
Commafeed should start and continue running.
Environment (please complete the following information):

CommaFeed version (or "commafeed.com"): 3.4.0
Browser [e.g. chrome, firefox]: not important
Device [e.g. desktop, mobile]: not important

Did you add the new maxFeedsPerUser configuration parameter in your config.yml (https://github.com/Athou/commafeed/commit/3e6451289f9061fbe56356818f3ffd9fa86d9b7b) ?

That looks like a warning, is there an error above in the logs?

No but...

Did you add the new maxFeedsPerUser configuration parameter in your config.yml (3e64512) ?

Neither.
$ /opt/openjdk-bin-17.0.6_p10/bin/java -Djava.net.preferIPv4Stack=true -jar /var/local/commafeed/jar/commafeed.jar server /var/local/commafeed/config.yml
io.dropwizard.configuration.ConfigurationValidationException: /var/local/commafeed/config.yml has an error:
  * applicationSettings.maxFeedsPerUser ne doit pas être nul

        at io.dropwizard.configuration.BaseConfigurationFactory.validate(BaseConfigurationFactory.java:272)
        at io.dropwizard.configuration.BaseConfigurationFactory.build(BaseConfigurationFactory.java:149)
        at io.dropwizard.configuration.BaseConfigurationFactory.build(BaseConfigurationFactory.java:94)
        at io.dropwizard.cli.ConfiguredCommand.parseConfiguration(ConfiguredCommand.java:139)
        at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:85)
        at io.dropwizard.cli.Cli.run(Cli.java:78)
        at io.dropwizard.Application.run(Application.java:94)
        at com.commafeed.CommaFeedApplication.main(CommaFeedApplication.java:224)

Oups.
Updating the config.yml indeed solves the problem. Sorry for the noise.

No problem, thanks for testing the master branch of CommaFeed so often :)

Among others, I use Commafeed to follow... the Commafeed Github commits feed. :laughing:

To help others that will have the same problem, I added a default value so that updating config.yml is no longer mandatory (12ab5b1).

Thank you.
Next time, I'll try to be more careful when I read something about config.yml, inside the commits comments.


Merge the test results of each module

By default, in a project with multiple modules, when writing Roborazzi tests in each module, the test reports(html) are generated in each module.
There is no problem if you want to check the results for each module,
but if you want to check the test results for the entire project, you need to merge the test results of each module each module using some method.
Is there a good method to merge the test results of each module?

We need to know the best practices for dealing with multi-module setups in a Gradle Plugin. We can also check the APIs of Isolated Projects.
https://docs.gradle.org/current/userguide/isolated_projects.html


Image captions from alt text

It would be handy to automatically insert the alt text as caption for the image: by typing ![caption](url.to/the_image.png "title"), everything would then be exploited.
It may be really easy to implement: I made a working Custom Extension to do so:
userCustom.onAsyncPreview = function() {
  images = document.getElementsByTagName("img");
  for (i = 0; i < images.length; i++) {
    var image = images[i];
    if (image.parentNode.tagName == "figure") {
      image.parentNode.getElementsByTagName("figurecaption")[0].innerHTML = image.alt;
    } else {
      var figure = document.createElement("figure");
      var caption = document.createElement("figurecaption");
      caption.innerHTML = image.alt;

      image.parentNode.replaceChild(figure, image);
      figure.appendChild(image);
      figure.appendChild(document.createElement("br"));
      figure.appendChild(caption);
    }
  }
};

Awesome! I'll have that as my first custom extension :+1:

I went and tried this, but unfortunately applying this through directly manipulating the DOM of the whole document won't do it, it just manipulates it in the view and causes an error on HTML export.
Is there a way to do this via the API? I've worked with AceEditor before so could add this with a little guidance if anyone wants to explain:

how to get the AceEditor instance through the AsyncPreview method (or should this be done after a different event); and
is it safe to search for "![" as being sufficient evidence of the start of an image tag that could be wrapped in the desired HTML?

Thanks.

Well, I do not have such understanding of StackEdit working. I now use Emacs and Org-mode.
But Markdown still lacks captions.
Maybe you could use jekyll to render your Markdown by writing onto GitHub pages:

Add a jekyll "front matter" to your file, at the top;
Write in markdown in StackEdit, with jekyll caption syntax;
Save your file to Github Pages repo
Visit your github page url, it ill be converted in html by the (very powerfull) kramdown converter.

This has advantages:

Be either with stackedit without relying on this software's specific syntax;
Not require to save html files (They are geneated on the fly by Jekyll as you save them);
Do not require GitHub pages: Jekyll is accessible sandalone;
Allow you to add CSS globally to all of your pages;
Change or add parts common to all of your pages using Jekyll's liquid language;


Add webextension-manifest-loader

Could probably us a smaller description, but I'm horrible at writing those... suggestions welcome :3

Whoops, wrong repo


Feature/tslint 4

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Update tslint and rules

What is the current behavior? (You can also link to an open issue here)

tslint@3 have a bug when dealing with wildcard modules. link

What is the new behavior (if this is a feature change)?

update to tslint@4 preview release

Other information:

remove deprecated rules link
This is necessary for the karma test integration (see: #334)

Hi @michaeljota! We are planning some refactoring in near future and hopefully will be able to merge your pr after that.

Hi @michaeljota
I tried your configuration but Karma kept giving me this warning:
28 11 2016 13:05:26.791:WARN [watcher]: Pattern "/config/karma-test-shim.js" does not match any file.

Hi @ismailcherri
Weird. I'll check this right now.

Sorry, my mistake. I was trying this with another PR.

That setup dependes on this to work. So, you have to merge this, and after that, you merge that one.

So, will this conflicts be resolved or what?


[FEATURE REQUEST] Add navbar similar to main blog page in the depression blog

Add navbar similar to main blog page in the depression blog
https://akshitagupta15june.github.io/Moksh/Blogs/depression.html
the navbar should be similar as this page https://akshitagupta15june.github.io/Moksh/Blogs/Blog.html#
also update the logo similar to index page

Please assign it to me

I would like to work on this issue. Please assign it to me under GSSOC'23

assigning to @anand2025 as @Developer-Swati is already assigned

Thank you ma'am

please assign this issue to me


Build fails with libssl missing

shmyrev@kappa ~ $ pip3 install sherpa-ncnn
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Collecting sherpa-ncnn
  Downloading sherpa-ncnn-1.1.tar.gz (41 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.8/41.8 kB 31.2 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in ./local/lib/python3.7/site-packages (from sherpa-ncnn) (1.21.6)
Building wheels for collected packages: sherpa-ncnn
  Building wheel for sherpa-ncnn (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [69 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.7
      creating build/lib.linux-x86_64-3.7/sherpa_ncnn
      copying sherpa-ncnn/python/sherpa_ncnn/__init__.py -> build/lib.linux-x86_64-3.7/sherpa_ncnn
      copying sherpa-ncnn/python/sherpa_ncnn/recognizer.py -> build/lib.linux-x86_64-3.7/sherpa_ncnn
      running build_ext
      Setting PYTHON_EXECUTABLE to /home/shmyrev/local/bin/python3
      for fast compilation, run:
      export SHERPA_NCNN_MAKE_ARGS="-j"; python setup.py install
      Setting make_args to "-j4"
      build command is:

                      cd build/temp.linux-x86_64-3.7

                      cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/home/shmyrev/local/bin/python3 -DCMAKE_INSTALL_PREFIX=/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/build/lib.linux-x86_64-3.7/sherpa_ncnn  -DBUILD_SHARED_LIBS=ON  -DSHERPA_NCNN_ENABLE_PYTHON=ON  -DSHERPA_NCNN_ENABLE_PORTAUDIO=OFF  /tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514

                      make -j4 install/strip

      cmake: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
      make: *** No rule to make target 'install/strip'.  Stop.
      Traceback (most recent call last):
        File "<string>", line 36, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/setup.py", line 64, in <module>
          license="Apache licensed, as found in the LICENSE file",
        File "/home/shmyrev/local/lib/python3.7/site-packages/setuptools/__init__.py", line 153, in setup
          return distutils.core.setup(**attrs)
        File "/home/shmyrev/local/lib/python3.7/distutils/core.py", line 148, in setup
          dist.run_commands()
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/site-packages/wheel/bdist_wheel.py", line 299, in run
          self.run_command('build')
        File "/home/shmyrev/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build.py", line 135, in run
          self.run_command(cmd_name)
        File "/home/shmyrev/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 79, in run
          _build_ext.run(self)
        File "/home/shmyrev/local/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 340, in run
          self.build_extensions()
        File "/home/shmyrev/local/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
          _build_ext.build_ext.build_extensions(self)
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions
          self._build_extensions_serial()
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial
          self.build_extension(ext)
        File "/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/cmake/cmake_extension.py", line 119, in build_extension
          "\nBuild sherpa-ncnn failed. Please check the error message.\n"
      Exception:
      Build sherpa-ncnn failed. Please check the error message.
      You can ask for help by creating an issue on GitHub.

      Click:
          https://github.com/k2-fsa/sherpa-ncnn/issues/new

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for sherpa-ncnn
  Running setup.py clean for sherpa-ncnn
Failed to build sherpa-ncnn
Installing collected packages: sherpa-ncnn
  Running setup.py install for sherpa-ncnn ... error
  error: subprocess-exited-with-error

  × Running setup.py install for sherpa-ncnn did not run successfully.
  │ exit code: 1
  ╰─> [73 lines of output]
      running install
      /home/shmyrev/local/lib/python3.7/site-packages/setuptools/command/install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
        setuptools.SetuptoolsDeprecationWarning,
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.7
      creating build/lib.linux-x86_64-3.7/sherpa_ncnn
      copying sherpa-ncnn/python/sherpa_ncnn/__init__.py -> build/lib.linux-x86_64-3.7/sherpa_ncnn
      copying sherpa-ncnn/python/sherpa_ncnn/recognizer.py -> build/lib.linux-x86_64-3.7/sherpa_ncnn
      running build_ext
      Setting PYTHON_EXECUTABLE to /home/shmyrev/local/bin/python3
      for fast compilation, run:
      export SHERPA_NCNN_MAKE_ARGS="-j"; python setup.py install
      Setting make_args to "-j4"
      build command is:

                      cd build/temp.linux-x86_64-3.7

                      cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/home/shmyrev/local/bin/python3 -DCMAKE_INSTALL_PREFIX=/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/build/lib.linux-x86_64-3.7/sherpa_ncnn  -DBUILD_SHARED_LIBS=ON  -DSHERPA_NCNN_ENABLE_PYTHON=ON  -DSHERPA_NCNN_ENABLE_PORTAUDIO=OFF  /tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514

                      make -j4 install/strip

      cmake: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
      make: *** No rule to make target 'install/strip'.  Stop.
      Traceback (most recent call last):
        File "<string>", line 36, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/setup.py", line 64, in <module>
          license="Apache licensed, as found in the LICENSE file",
        File "/home/shmyrev/local/lib/python3.7/site-packages/setuptools/__init__.py", line 153, in setup
          return distutils.core.setup(**attrs)
        File "/home/shmyrev/local/lib/python3.7/distutils/core.py", line 148, in setup
          dist.run_commands()
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 966, in run_commands
          self.run_command(cmd)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/site-packages/setuptools/command/install.py", line 68, in run
          return orig.install.run(self)
        File "/home/shmyrev/local/lib/python3.7/distutils/command/install.py", line 545, in run
          self.run_command('build')
        File "/home/shmyrev/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build.py", line 135, in run
          self.run_command(cmd_name)
        File "/home/shmyrev/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
          self.distribution.run_command(command)
        File "/home/shmyrev/local/lib/python3.7/distutils/dist.py", line 985, in run_command
          cmd_obj.run()
        File "/home/shmyrev/local/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 79, in run
          _build_ext.run(self)
        File "/home/shmyrev/local/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
          _build_ext.build_ext.run(self)
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 340, in run
          self.build_extensions()
        File "/home/shmyrev/local/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
          _build_ext.build_ext.build_extensions(self)
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions
          self._build_extensions_serial()
        File "/home/shmyrev/local/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial
          self.build_extension(ext)
        File "/tmp/pip-install-utf4rf_x/sherpa-ncnn_4b5f7058fd5845ee9d77aba1bca97514/cmake/cmake_extension.py", line 119, in build_extension
          "\nBuild sherpa-ncnn failed. Please check the error message.\n"
      Exception:
      Build sherpa-ncnn failed. Please check the error message.
      You can ask for help by creating an issue on GitHub.

      Click:
          https://github.com/k2-fsa/sherpa-ncnn/issues/new

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> sherpa-ncnn

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
WARNING: There was an error checking the latest version of pip.
shmyrev@kappa ~ $

Nevermind, cmake issue


Compiling LAMP project writes excess bank 3 data

Edit: Version:

Assuming I've got the gist of how LAMP determines writing data when updating the screen enemy populations, I get the following byte changes in bank 3 when compiling the project to a new ROM.
OG bytes around E200:

After compiling to new ROM:

Since I am not actually changing any of the enemies, I can't figure out why it is writing all this data - unless I'm mistaken that saving the project and compiling to a new ROM without making any changes at all should be writing a new ROM that is identical to the old one.

I could not replicate this doing the following:

Select an unmodified ROM as a base (SHA1: 74A2FAD86B9A4C013149B1E214BC4600EFB1066D)
Create a new project with it
Instantly compile the project again
Use HxD to compare the files

Original:

Compiled:

Its a near identical ROM. The only difference being that the LAMP compiled ROM has all the enemy data moved by one byte (This also means that every pointer in the enemy data is off by one byte), due to LAMP adding an extra 0xFF as the first enemy set.
@moehr-moehr maybe I can replicate the issue if you upload the project files used.


The CSS hover effect is not working. When using  to select a file, I am unable to choose a file from the popped-up Finder.

I have identified 2 bugs:

The CSS hover effect is not working.
When using  to select a file, I am unable to choose a file from the popped-up Finder.

Could these two issues be addressed? Thank you❤! My macOS version is 12.3.1.

🙏 @ahkohd

Hi @ruoxiaomo
I cloned the repo and tested the issues you reported.
The hover effect, it works.

The file picker is not working because the spotlight panel's level is above the pickers level.
https://github.com/ahkohd/tauri-macos-spotlight-example/blob/4468b89f06d567ad74de678a98c1988b6d4a7fcf/src-tauri/src/spotlight.rs#L410
If you change that line to this, it works.
 panel.set_level(NSMainMenuWindowLevel);

To fix your file upload problem, here are the steps to carry out solve the issue:

When you click the file upload button.
Set the spotlight panel to window level, so that the file picker window can show on top of the spotlight window
Set panel.set_auto_hide(false), this prevents the spotlight window from automatically hiding when it resigns as the key window (like blur).
Show the file picker window.
Pick your file
Reset the spotlight window level back to above the main menu window level.
Reset the panel.set_auto_hide(true), so that the spotlight panel can auto-hide when it resigns as the key window.

Here is the implementation:

The file-upload example branch won't be merged to the main branch.  It will be maintained parallel with main branch, as uploading in a spotlight panel is not a common use case.

Let me know if this solves your issue.

"It's so weird😭 the hover effect is working fine on my other macOS machine (13.5), but on my older macOS (12.3), it's not functioning. Any idea what might be causing this?

In macOS (12.5), hover works only under two conditions: first, when the window utilizes setFocus, and second, when a click event occurs in the hover area.
https://github.com/ahkohd/tauri-macos-spotlight-example/assets/44762964/eb262322-bbd2-4c2f-87b2-4afdfd003bd6

Okay cool,
Is your file upload issue now solved? If yes let's split issue, leave this one for the file upload, create a new issue for probing
the hover effect.


Display track number [Feature request]

Hi, would it be possible to display the track number?
That is the only feature that keeps me from using this and using junat.net at the moment.
I might be interested in creating a PR about this if the information is available via the API

@olpeh Track number is now visible next to the station name. :+1:


validation of user input in install.sh

User input is not validated correctly and step can be skipped by mistanke
in
echo ""
read -p "Would you like to add your non-administrative user to sudo group (y/n): " SUDO_GIVE

echo "Please check the summary below..."
echo ""
echo "Username:                          ${USERNAME_INSTALL}"
	if [ $SUDO_GIVE = y ]; then
		echo "                                   sudo WILL be granted"
	else
		echo "                                   sudo NOT granted"
	fi

if the user type in anything else then y the step will get skipped without giving user any change to re-try

Put comment into log file on how to add sudo in case of a typo


Add [Coinbase Wallet coinbase.com] #exchange GA4QZR…KPEUIA

Address: GA4QZRNOYTK5AEXPUQWEW7T4B5YQAA7ENTS6JLHLOZA677TPSAKPEUIA
Tags: exchange
Title: Coinbase Wallet  Domain: coinbase.com
Requested by @garvit-k

@Garvit-k Thank you for the report. Do you have any kind of transaction records or contacts with Coinbase to help verify this? I can follow up if you have some initial information.

@Garvit-k Please feel free to reopen this issue with new information about this account you believe is a Coinbase Exchange wallet.

@CryptoHobbyist  yeah i have personally used this account many times to deposit into coinbase
DM me on discord Remloy#3381 for transaction details i cant put it up here

@Garvit-k Done


Invalid warning - kconfiglib complains about undefined variable under if guard

if LOG_BACKEND_RTT_BUFFER
config LOG_BACKEND_RTT_BUFFER
        int "Buffer number used for logger output."
        range 0 SEGGER_RTT_MAX_NUM_UP_BUFFERS
        default 0
        help
          Select index of up-buffer used for logger output, by default it uses
          terminal up-buffer and its settings.
endif

In this example from Zephyr, if SEGGER_RTT_MAX_NUM_UP_BUFFERS is not defined, kconfiglib is raising a warning even if it is under a if guard.

AFAIK the only thing the if is doing there is to express a dependency. So that's the same as writing:
config LOG_BACKEND_RTT_BUFFER
        int "Buffer number used for logger output."
        range 0 SEGGER_RTT_MAX_NUM_UP_BUFFERS
        depends on LOG_BACKEND_RTT_BUFFER
        default 0

The Kconfig symbol exists regardless of the value of LOG_BACKEND_RTT_BUFFER. When the KCONFIG_WARN_UNDEF option is set I don't see any reason why there should not be a warning because of SEGGER_RTT_MAX_NUM_UP_BUFFERS not being defined.


chore: add vscode guardian server launch configuration

@rahmatrhd I would suggest avoiding putting it in VCS. We should leave this up to devs based on which editor they use.

@ravisuhag understood that this is vscode specific, was thinking to share this "recommended configuration" for devs who use vscode, otherwise, they can just ignore it. That's why I only allow launch.json file in the .gitignore. What do you think?

I'd have to agree with @ravisuhag on this, this is way too specific and the value gained is not that significant.
And you will need keep checking and sync the launch.json to make sure it is still relevant for any updates.

Understood, will ignore the whole .vscode then


Add references to datasets in README

In the “core” repo, add reference to training dataset in zenodo, in pred pkg add ref. to pypi package page, and in rta add ref to “full” dataset in zenodo

Solved by:

https://github.com/qbic-pipelines/rts-prediction-package/pull/148
https://github.com/qbic-pipelines/root-tissue-analysis/pull/21
https://github.com/qbic-pipelines/root-tissue-segmentation-core/pull/5


enable initial build for rocm for fp6_llm

Initial enablement task for FP6_llm.

One other question: what would be the entry point for hipify_torch?

also I've created an staging branch for this PR : rocm_enablement_staging , let's keep main  sync with upstream?

also I've created an staging branch for this PR : rocm_enablement_staging , let's keep main  sync with upstream?

Updated the PR to use rocm_enablement_staging. That's a good idea to use main for syncing with upstream.

One other question: what would be the entry point for hipify_torch?

Entry points are CUDAExtension. Torch code has integrated hipify_torch as part of CUDAExtensions.


Added workaround to return service principals

Docs Build status updates of commit d1eb3f0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azps-7.2.0/Az.Resources/Get-AzADGroupMember.md
:bulb:Suggestion
View (azps-7.2.0)
Details

azps-7.3.0/Az.Resources/Get-AzADGroupMember.md
:bulb:Suggestion
View (azps-7.3.0)
Details

azps-7.2.0/Az.Resources/Get-AzADGroupMember.md

Line 0, Column 0: [Suggestion: disallowed-html-tag - See documentation] HTML tag 'IMicrosoftGraphGroup' isn't allowed.  Replace it with approved Markdown or escape the brackets if the content is a placeholder.

azps-7.3.0/Az.Resources/Get-AzADGroupMember.md

Line 0, Column 0: [Suggestion: disallowed-html-tag - See documentation] HTML tag 'IMicrosoftGraphGroup' isn't allowed.  Replace it with approved Markdown or escape the brackets if the content is a placeholder.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


[R] Use array interface for dense DMatrix creation

ref https://github.com/dmlc/xgboost/issues/9810
This PR switches the underlying C function for DMatrix creation from dense R matrices to the XGDMatrixCreateFromDense function used in the python interface.
Along the way, it also fixes a potential memory leak in case of failures, in which a failure to allocate an R externalptr would lead to a longjump without freeing the allocated C++ object from its pointer.
I see there was already some mechanism to create the kind of array JSON that numpy uses in the DMatrix creators from sparse matrices, but couldn't find any equivalent for dense matrices. There also seems to be a dedicated module to create JSONs, but they look simple enough for snprintf.
The JSON parser for the config by the way seems to have issues with nan and inf, so this PR makes a conversion to NaN and Infinity which seem to be accepted.

Hi @david-cortes , I have made some changes to use the linalg module in XGBoost for generating the strings, could you please take a look when you are available? I'm open to suggestions and feel free to ping me if you find some of the code confusing.

Hi @david-cortes , I have made some changes to use the linalg module in XGBoost for generating the strings, could you please take a look when you are available? I'm open to suggestions and feel free to ping me if you find some of the code confusing.

Thanks for the changes. I've made some very small modifications on top and I guess it should be good to go now.


Documentation incorrect when assigning IP addresses?

Hi,
I've recently been updating my ambassador installation to edge-stack/emissary-ingress on Azure and have had some issues getting the new installation to accept any traffic.
Looking at the values on the helm chart would imply that you set service.externalIPs as your public inbound IP address but this isn't the case. I got no response from any service, nothing in logs, etc, until I'd set service.loadBalancerIP. This property is not documented anywhere on the helm chart that I could see, and seems important for getting any traffic into a cluster!
Is the documentation incorrect or is it listed somewhere that I have missed?
Thanks,
Tom

There's limited information that can be included or explained in detail with the helm chart (although if you found it misleading please let us know).  In general we'd suggest referring to resources like this for details on using externalIP and loadBalancerIP.


more language input support

Close this issue as this is not the priority taken by our team. We are happy to integrate efforts described in the contribution documentation.


Test handling weird sizes for implementation-defined sizes

Technically the standard does not define the size of some types, in particular: bool, wchar_t, and oddly enough: char16_t/char32_t.
In practice, these are all 1 byte, 2 bytes, 2 bytes, and 4 bytes respectively. However, we might consider exploring the Clang command line to see if there's a way to force them to be weird sizes and ensure we handle those scenarios appropriately.

Related: https://github.com/InfectedLibraries/Biohazrd/issues/108 / https://github.com/InfectedLibraries/Biohazrd/issues/156


protect getInstance in tisession

just for running test cases.

/run-all-tests mode=full tidb=v3.0.2

/run-all-tests mode=full tidb=v3.0.2


Beta

:tada: This PR is included in version 2.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.1.0-beta.3 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


What will be root dir?

Hi,
I have installed grafana 0.9, what will be my root dir?
i have got all content here -> /usr/share/grafana/public.
-Rohit

It was -> /usr/share/grafana/
Its working :)
Thanks
-Rohit


New ShowRSS

Can't add the feed's link of the new ShowRSS.

Update to 1.9.3!

I did. But it still doesn't accept my feed link.


[tool_crash] _TypeError: (#0      _ProgramInfoBuilder.createInfoNodeFor (package:vm_snapshot_analysis/v8_profile.dart:419:75))

Command
flutter build apk --analyze-size --target-platform=android-arm64

Steps to Reproduce

...
...
...

Logs
_TypeError: (#0      _ProgramInfoBuilder.createInfoNodeFor (package:vm_snapshot_analysis/v8_profile.dart:419:75))
#0      _ProgramInfoBuilder.createInfoNodeFor (package:vm_snapshot_analysis/v8_profile.dart:419:75)
#1      _ProgramInfoBuilder.getInfoNodeFor (package:vm_snapshot_analysis/v8_profile.dart:374:14)
#2      ListIterable.forEach (dart:_internal/iterable.dart:39:13)
#3      _ProgramInfoBuilder.build (package:vm_snapshot_analysis/v8_profile.dart:338:16)
#4      toProgramInfo (package:vm_snapshot_analysis/v8_profile.dart:282:8)
#5      _treemapFromSnapshot (package:vm_snapshot_analysis/treemap.dart:158:27)
#6      treemapFromJson (package:vm_snapshot_analysis/treemap.dart:85:5)
#7      SizeAnalyzer.analyzeZipSizeAndAotSnapshot (package:flutter_tools/src/base

Hi @progmaksudur. This has been fixed in the latest version of flutter stable. See https://github.com/flutter/flutter/wiki/Hotfixes-to-the-Stable-Channel#3134-september-13-2023.
Closing from here. If you still face this issue on the latest version of flutter stable (3.16.0), kindly leave a comment below and I will reopen this.
See https://github.com/flutter/flutter/issues/132695 for the original issue.
Thank you

Thank you
On Mon, 20 Nov 2023, 8:15 pm Damilola Alimi, @.***>
wrote:

Hi @progmaksudur https://github.com/progmaksudur. This has been fixed
in the latest version of flutter stable. See
https://github.com/flutter/flutter/wiki/Hotfixes-to-the-Stable-Channel#3134-september-13-2023
.
Closing from here. If you still face this issue on the latest version of
flutter stable (3.16.0), kindly leave a comment below and I will reopen
this.
See #132695 https://github.com/flutter/flutter/issues/132695 for the
original issue.
Thank you
—
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/138720#issuecomment-1819144530,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVMGNJN4CMTD3CMJ4DJXEOTYFNQXBAVCNFSM6AAAAAA7S63AQ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJZGE2DINJTGA
.
You are receiving this because you were mentioned.Message ID:
@.***>


kv (ticdc): reduce some verbose log

What problem does this PR solve?

Issue Number: close #11074
What is changed and how it works?
Check List
Tests

No code

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
None

Rest LGTM.

/retest


Adds sharing a new status

This adds functionality to share your status (https://developer.linkedin.com/documents/share-api), along with a test for it. I also added my .rvmrc to the .gitignore.

Thanks!


encode: escape non-ASCII characters while marshalling

Ref. https://github.com/nspcc-dev/neo-go/pull/2174.

@roman-khimov, I added README update in a separate PR not to mix the things, see #2.


gnome3.gnome-shell-extensions: 3.38.1 -> 3.38.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for gnome3.gnome-shell-extensions is: "Modify and extend GNOME Shell functionality and behavior"
meta.homepage for gnome3.gnome-shell-extensions is: "https://wiki.gnome.org/Projects/GnomeShell/Extensions"
meta.changelog for gnome3.gnome-shell-extensions is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

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

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

directory tree listing: https://gist.github.com/5535004f9694648860e1e9ae9ef97d20

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

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

9 total rebuild path(s)

3 package rebuild(s)

3 x86_64-linux rebuild(s)
3 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
3 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
gnome3.gnome-shell-extensions
gnome3.gnome-tweak-tool
gnome3.gnome-tweaks

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/wx9mg8mxgmydrf5xh7n9iycm3q2sxr7r-gnome-shell-extensions-3.38.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/wx9mg8mxgmydrf5xh7n9iycm3q2sxr7r-gnome-shell-extensions-3.38.2
ls -la /nix/store/wx9mg8mxgmydrf5xh7n9iycm3q2sxr7r-gnome-shell-extensions-3.38.2/bin

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

2 packages built:

gnome3.gnome-shell-extensions
gnome3.gnome-tweak-tool

Maintainer pings
cc @hedning @jtojnar @worldofpeace @dasj19 for testing.

Changes look okay:

3.38.2

window-list: Honor changes in skip-taskbar property [Sergio; !130]
window-list, workspace-indicator: Improve previews in workspace thumbs
[Florian; #260, !142]
window-list, workspace-indicator: Adjust to 3.38 changes [Florian; !133]
auto-move: Improve behavior on multi-monitor setups [Florian; !135]
windowNavigator: Adjust to 3.38 changes [Thun; #259]
Misc. bug fixes [Ray; !145]

Contributors:
Sergio Costas, Florian Müllner, Thun Pin, Ray Strode


.json Files don't contain relationship objects that relate campaign objects to intrusion set objects

I am ingesting all of your bundles as threat intelligence and I noticed that its never explicitly stated which campaigns are attributable to which intrusion sets. There isn't a relationship object that connects the two. Is this intentionally left out? Or is it something that could be added?
Thanks!

The Intrusion set is currently related to the report object that forms the "root" of the Playbook. It is also included in the object_refs field for each report object in the Playbook.
Using Oilrig as an example:
    {
      "type": "relationship",
      "id": "relationship--af2cb8e5-5d1c-4964-bfe1-75ebc90f8627",
      "created": "2018-08-03T20:30:50.665Z",
      "modified": "2018-10-16T14:05:19.334Z",
      "relationship_type": "attributed-to",
      "source_ref": "report--af2cb8e5-5d1c-4964-bfe1-75ebc90f8627",
      "target_ref": "intrusion-set--8e11eaa4-1964-4b73-85c1-fcfa29159f9b"
    }

There are currently no relationships between the intrusion set and each of the campaigns.
However, this is an inconsistency in the Playbooks, and I am making changes that will add a relationship between each of the campaigns and the intrusion set in the Playbook.
You can consider each campaign in the Playbook related (attributed-to) the intrusion set. Once the Playbooks are regenerated there will be relationship objects similar to
    {
      "type": "relationship",
      "id": "relationship--uuid4",
      "created": "",
      "modified": "",
      "relationship_type": "attributed-to",
      "source_ref": "campaign-uuid4",
      "target_ref": "intrusion-set--8e11eaa4-1964-4b73-85c1-fcfa29159f9b"
    }

It will take me a few days to make these changes and regenerate all of the Playbooks.
Hope this helps and let us know if you have any additional questions.
I will also update the docs located here

All the Playbooks now contain relationship objects where the campaign is "attributed-to" the intrusion-set.
Thank you for bringing this to our attention, as we work to make the Playbooks better.

Thanks! For whatever reason I don't think I saw your comment in August, sorry for never responding. This will be a super helpful change.


ignore GTK warnings

fixes #13

Will this ever be merged?

We are in 2020 and still render is not working because of gtk warnings...

Ignore GTK warnings because of borked themes...cool
What happens when you have some other form of warning?
Would be best to check the return code of the process before judging it's entire execution by a single buffer from stdout.
This would fix #13, #87, #90, #79, #96.

The underlying issue is described here
#102
And fixed on PR #97

Fixed in #97


docs: use kubectl patch with --type=merge in docs

Description:
I was trying out the following docs here https://gateway.envoyproxy.io/docs/tasks/security/tls-cert-manager/#creating-a-tls-gateway-listener
the docs as of now suggests the following command for patch using --patch-file flag. This is not working out for me somehow. (I'm using bash shell)
$ kubectl patch gateway eg --patch-file=- <<EOF
metadata:
  annotations:
    cert-manager.io/cluster-issuer: selfsigned
    cert-manager.io/common-name: "Hello World!"
spec:
  listeners:
  - name: https
    protocol: HTTPS
    hostname: www.example.com
    port: 443
    tls:
      mode: Terminate
      certificateRefs:
      - kind: Secret
        name: eg-https
EOF
error: unable to read patch file: open -: no such file or directory
$ kubectl version
Client Version: v1.30.1
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.30.2

I updated the command and used the following:
$ kubectl patch gateway eg --patch '
metadata:
  annotations:
    cert-manager.io/cluster-issuer: selfsigned
    cert-manager.io/common-name: "Hello World!"
spec:
  listeners:
  - name: https
    protocol: HTTPS
    hostname: www.example.com
    port: 443
    tls:
      mode: Terminate
      certificateRefs:
      - kind: Secret
        name: eg-https
' --type=merge
gateway.gateway.networking.k8s.io/eg patched

This worked good for me. Is there something I'm missing in the first case which is documented as of now.
[optional Relevant Links:]
slack discussion: https://envoyproxy.slack.com/archives/C03E6NHLESV/p1723037137777729

he @kranurag7 thanks for surfacing this issue, would be great if you can fix it in the docs


Add GetHeaderValue to EvaluateArgs.

Adds GetHeaderValue to EvaluateArgs. This is required for RBAC engine implementation.
Refactors existing code in xDS.

This change is

For future reference, note that you no longer need to manually squash your commits.  That will now happen at merge time automatically.

For future reference, note that you no longer need to manually squash your commits. That will now happen at merge time automatically.

That's great. Thanks for letting me know.


Nothing works

When I try using Bussin it just says this site doesn't exist. When I go to buss://dingle.it it also says the site doesn't exist.

What does it show when you do ctrl shift s

All it shows is this when I do that.

All it shows is this when I do that.

Try entering in the box https://api.buss.lol

It's just blank. Is it a problem with my PC?

It's just blank. Is it a problem with my PC?

Type in the box https://api.buss.lol it shouldn't be empty though for me it was api.buss.lol but it needs to be https://api.buss.lol

When I type that the text is blank like in the image I sent before. Is it doing that because some of my graphics drivers are outdated?

When I type that the text is blank like in the image I sent before. Is it doing that because some of my graphics drivers are outdated?

Uh maybe? Or it's a bug in the windows version

Oh so there's no way for me to fix it?

Oh so there's no way for me to fix it?

I'm not entirely sure I haven't ran into this issue before

All it shows is this when I do that.

Did you use the exe from the github or did you manually compile it?
If you just downloaded it, i would recommend compiling it yourself since that should fix most issues.

Yeah I just used the exe. I will try compiling it and see if that works. Thanks!


Throw in dev if collection keys don't belong to the same parent

Details
Coming from this comment, we should make the error easier to catch on dev by throwing it, instead of logging.
cc @marcaaron @mountiny
Related Issues
https://github.com/Expensify/react-native-onyx/pull/272/files#r1261673744
Automated Tests
N/A
Linked PRs
TBD

I think we can go ahead with this one as its late for Vivek and Marc has proposed this change before


Adding switches for various purpose

Current Behavior
Not much variety
Desired Behavior
Enhance the option of switches
Screenshots / Mockups

Please assign me this for gssoc

please assign me this issue i will solve under GSSOC'23


"Hamburger" menu navicon doesn't transition to "X"

When menu button is clicked and open "hamburger" navicon should transition into an "X" to imply  it can be closed.

Toggle class="close" on <button> isn't working. Possibly regression during greedy nav refactor.

https://github.com/mmistakes/minimal-mistakes/commit/e0099ffa5ab959178b118f8cb00b90b7d2fb3934


Validation and introduction of CDC Linter into project QA workflow

https://github.com/YosysHQ/yosys/issues/4493#issuecomment-2245725950
https://github.com/BerkeleyLab/Bedrock/blob/master/build-tools/cdc_snitch.md

@Juninho99 , you can refer to this for a working example, and follow up with @TarikHamedovic for help.


Allow List Not Working

I have:
    shield({
      sri: {
        // hashesModule: modulePath,
        enableMiddleware: true,
        scriptsAllowListUrls: [
          `https://www.google.com/recaptcha/api.js?render=MYKEY`,
        ],
      },
    }),

And I receive the error:
Detected reference to not explicitly allowed external resource "https://www.google.com/recaptcha/api.js?render=MYKEY". Removing it.
I actually copied and pasted the URL from the error into my code, and it does not seem to help. Not sure what I'm doing wrong.

Hi @elevationathletics , sorry for the delay in the response. Could you share the Astro/HTML snippet where you include that script? That extra context might help to understand what's going on.

Closing this, @elevationathletics hasn't said anything for a while, and I can't reproduce anything similar to what's being described.


Handle nextTick task errors

When draining the nextTick task queue, if there is a single task error, it is thrown and stop immediately the draining of the queue.
Also it leaves the attribute draining = true, making subsequent calls to nextTick not trigger the draining again)
I think the draining should complete for all queued tasks, and errors on single tasks should not stop the other queued tasks to execute.
I choose to handle exceptions in a setTimeout as it seems to be more natural than using a logger. As exceptions are "exceptional" this should probably not be a big performance problem.
This solves serious issues that appeared with nextTick, with Browserify >= 8.1.0 (for example with the Q promise library).
See:
https://github.com/kriskowal/q/issues/669
https://github.com/substack/node-browserify/issues/1179

so the root of the error is that Q is misidentifying browserified code as being in node as opposed to the browser, like node this makes no guarantees about what an uncaught exception will do inside of a next tick.
That being said if you add a second set timeout after this line which checks if draining is true and if it is cleans up it will likely accomplish the same thing without causing a massive performance penalty.

line 11 would be another place you could schedule it, something like
...
function cleanUpNextTick() {
    if (draining) {
        draining = false;
        if (queue.length) {
             queue = [];
        }
    }
}
function drainQueue() {
    if (draining) {
        return;
    }
    var timeout = setTimeout(cleanUpNextTick, 0);
    ...
    draining = false;
    clearTimeout(timeout);

this would make sure all pending events were booted from the queue as well

Sorry I won't be able to help more, I'm not a nodejs dev and I don't know what's the intended behavior of node's nextTick.
Just giving a solution that worked fine for me.
Imho using a cleaup timeout won't solve all problems as when registrering 2 Q handlers in then if one of them raises an error the second shoud still be called. It's not just about cleaning it's about ensuring all tasks queued will be executed, and that is the behavior that we had before with a simple setTimeout for each task

Imho using a cleaup timeout won't solve all problems as when registrering 2 Q handlers in then if one of them raises an error the second shoud still be called. It's not just about cleaning it's about ensuring all tasks queued will be executed, and that is the behavior that we had before with a simple setTimeout for each task

since Q uses it's own task queue this likely won't break it.
The tricky thing is just figuring out the right behavior because node just crashes the process here

I am open to a PR that fixes stuff up here, however I think this could be a Q issue since it is trying to be clever and identify where it is running instead of using standard js primitives like setTimeout(0).

see #38 for my take on it, downside is that while it handles errors better it is a bit more complex

I don't know... what is the purpose of this nextTick shim?
I guess the original ambition was to permit to nodejs modules using nextTick to be able to run in the browser with Browserify right?
So the default behavior of NodeJS, both with setTimeout / nextTick is to crash whenever there is an uncaught exception as far as I understand. This permits to fail-fast, and to restart the process in a clean state.
In my opinion it does not really make sense to reproduce this behavior in the browser since we don't want the user UI to be totally unusable, and by the way this is not the behavior of setTimeout in the browser, as when an error is thrown it does not crash the browser/tab but just log an uncaught exception in the console.
The question is, why would we want to have a different behavior in the browser for nextTick? If the UI were stateless and we could recover it easily, then ok to fail fast. But UI's are stateful, so we must fail safe in all cases, and not make the UI totally unusable on any uncaught exception.
So for me it does not make sense to reproduce the fail-fast behavior of node's nextTick with the browser.
The former implementation was based on setTimeout and it worked fine right (I don't see any issue)? So I'm totally ok for perf improvements but why changing a behavior that seems to be ok for everybody until now?
process.nextTick(function() { throw new Error("error"); });
process.nextTick(function() { console.log("message"); });

The old behavior would log both the error and the message.
The current behavior would only log the error (+ leaves in inconsistent state but this is will be fixed and is not my point here).
I think the old behavior is better for the browser.

The old behavior would log both the error and the message.

that was not the case previously on all browsers as inconsistently certain browsers that used mutation observer would copy the array queue first while others would unshift, but give #38 a test as that should do what you want

@calvinmetcalf yes, it solves Q test case as it does not leave an inconsistant state and thus next ticks can still be executed.
But notice that a very much simpler implementation also solves my usecase. I really don't understand why you would want to handle errors in a planned cleanup task.
process.nextTick = function(task) {
    if ( !queue ) {
        queue = [task];
    } else {
        queue.push(task);
    }
    if ( !nextTickTimer ) {
        nextTickTimer = setTimeout(function processNextTick() {
            nextTickTimer = undefined;
            for (var i = 0, len = queue.length; i < len; i++) {
                queue[i]();
            }
        },0);
    }
};

I don't really understand why your solution is much more complex than that, am I missing something?
Also I noticed that in your cleanup task you have some logic to be able to reschedule queued tasks that could not be processed because an error was thrown in a previous task. This behavior seems fine for me. (at least it's what I understand of your code)
After all, all my concern about former vs current behavior is about guaranteeing that all tasks submitted will be called, even if there are failed tasks in the current tick. I am ok for making current tick fail fast and replanning not called tasks to the next tick.
But I still think it could be much simpler. Why not using a try/catch/finally instead of using timers to handle errors and recovering?

in you example
process.nextTick(function() { throw new Error("error"); });
process.nextTick(function() { console.log("message"); });

won't print message until process.nextTick is called some other time because nothing will restart the draining after an error.
In general if you have the debugger open set to pause on uncaught errors, do you want that to pause in the setTimeout in this library or in the original place the error was?

@calvinmetcalf I agree that with my implementation the "message" will never be printed. But this is actually because my implementation is a simpler rewrite of current behavior which is not fine for me :)
I could rewrite my pull request like that:
process.nextTick = function(task) {
    if ( !queue ) {
        queue = [task];
    } else {
        queue.push(task);
    }
    if ( !nextTickTimer ) {
        nextTickTimer = setTimeout(function processNextTick() {
            nextTickTimer = undefined;
            for (var i = 0, len = queue.length; i < len; i++) {
                try {
                    queue[i]();
                } catch(e) {
                      setTimeout(function() {
                         throw e;
                      },0);
                }
            }
        },0);
    }
};

which will print "message" and is much simpler than my initial PR imho.
I understand your point of loosing the original place of the error when using setTimeout like that... I think this happens when you rethrow an error right?
I think your solution could still be simplified, have you tried using a try/finally without catching the error? like
var processCompleted = false;
try {
   // tie up a resource
   processQueue()
   processCompleted = true
}
finally {
   if ( processCompleted ) {
      reschedule() ....
   }
}

so based on some perfs the try block isn't as bad as I expected it to be, interesting

though a try/finally does cause some issues in firefox jsperf.com/asyncstuff/9/edit

yes @calvinmetcalf and you could probably make it faster by moving the try outside of the loop, and maintaining the last processed task index to reschedule tasks that were never called.
Something like that:
var queue = undefined;
var nextTickTimer = undefined;

function processNextTick() {
    nextTickTimer = undefined;
    var i = 0;
    try {
        for (var len = queue.length; i < len; i++) {
            queue[i]();
        }
    } finally {
        // If there is an error and there's at least one unprocessed task we reschedule it in next tick
        if (i+1 <= queue.length) {
            queue = queue.slice(i+1);
            nextTickTimer = setTimeout(processNextTick, 0);
        }
    }
}

process.nextTick = function (task) {
    if (!queue) {
        queue = [task];
    } else {
        queue.push(task);
    }
    if (!nextTickTimer) {
        nextTickTimer = setTimeout(processNextTick, 0);
    }
};

var queue = [];
var draining = false;

function drainQueue() {
    if (draining) {
        return;
    }
    draining = true;
    var currentQueue;
    var len = queue.length;
    while(len) {
        currentQueue = queue;
        queue = [];
        var i = -1;
        try {
          while (++i < len) {
              currentQueue[i]();
          }
        } finally {
          if (i++ < len) {
            queue = currentQueue.slice(i).concat(queue);
            draining = false;
            return drainQueue();
          }
        }

        len = queue.length;
    }
    draining = false;
}
process.nextTick = function (fun) {
    queue.push(fun);
    if (!draining) {
        setTimeout(drainQueue, 0);
    }
};

is also really slow in firefox, I think firefox doesn't like finally blocks

@calvinmetcalf I still can't understand the complexity of your code requiring 2 variables for queue and 2 loops. Also calling drainQueue(); in a finally block seems not appropriate at all for me. finally blocks are intended for handling cleanup and should rather not trigger extra calls that could lead so a recursion

The 2 queues are because you need to deal with process.nextTick being
called recursively which in this code causes it to be put into a new array,
not the one we are iterating. You could put them into the current array and
that works fine until you get a situation where nested nextTicks causes the
length of the array to be too long to fit into a 32 bit integer at which
point a massive slowdown happens in v8 (chrome and node) due to the type
signature of the function changing so the optimized code that was generated
for the function is throw out (the function is almost definitely going to
be optimized at this point as we are like 64k iterations in) this just
tanks performance. I discovered this while perf testing a promise library
and after a certain threshold of parallel things going on performance
plummeted and it eventually ran out of memory. So the 2 queues are to
prevent any one queue from getting too long, it also means we don't have
this massive array hanging around the whole time and functions can be
garbage collected much sooner. A comment in there would likely be helpful.
With regards to the finally block, that is what they are used for and that
is a best practice but in the end is just a block of code that always runs
after the try and catch clauses. I don't like the recursive function call
either and originally tried to do it with a labeled jump statement but it
seems that having the finally in there caused firefox to be about half as
fast.
On Wed, Mar 25, 2015, 6:08 AM Sébastien Lorber<EMAIL_ADDRESS>wrote:

@calvinmetcalf https://github.com/calvinmetcalf I still can't
understand the complexity of your code requiring 2 variables for queue
and 2 loops. Also calling drainQueue(); in a finally block seems not
appropriate at all for me. finally blocks are intended for handling cleanup
and should rather not trigger extra calls that could lead so a recursion
—
Reply to this email directly or view it on GitHub
https://github.com/defunctzombie/node-process/pull/37#issuecomment-85968248
.

try 1 was

function drainQueue() {
    if (draining) {
        return;
    }
    draining = true;
    var currentQueue, i;
    var len = queue.length;
    var done;
    while(len) {
        currentQueue = queue;
        queue = [];
        i = -1;
        done = false;
        loopit: while (++i < len) {
             try {
                currentQueue[i]();
                done = true;
            } finally {
                if (!done) {
                    continue loopit;
                }
            }
         }
        len = queue.length;
    }
    draining = false;
}

Has this PR been superseded by #38 ?

Yes
On Wed, Apr 8, 2015, 3:04 AM Roman Shtylman<EMAIL_ADDRESS>wrote:

Has this PR been superseded by #38
https://github.com/defunctzombie/node-process/pull/38 ?
—
Reply to this email directly or view it on GitHub
https://github.com/defunctzombie/node-process/pull/37#issuecomment-90824941
.


Installing broadbean pip installs PyQt5 on top of Conda version

Windows 10 in an environment installed with the qcodes-dk installer script which has installed PyQT5.6 from Conda
pip install git+https://github.com/QCoDeS/broadbean.git
Collecting git+https://github.com/QCoDeS/broadbean.git
  Cloning https://github.com/QCoDeS/broadbean.git to c:\users\qcodes~4\appdata\local\temp\pip-r0ge38lm-build
Requirement already satisfied: numpy>=1.12.1 in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from broadbean==0.9)
Requirement already satisfied: matplotlib>=2.0.1 in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from broadbean==0.9)
Collecting PyQt5 (from broadbean==0.9)
  Using cached PyQt5-5.8.2-5.8.0-cp35.cp36.cp37-none-win_amd64.whl
Requirement already satisfied: six>=1.10 in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from matplotlib>=2.0.1->broadbean==0.9)
Requirement already satisfied: python-dateutil in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from matplotlib>=2.0.1->broadbean==0.9)
Requirement already satisfied: pytz in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from matplotlib>=2.0.1->broadbean==0.9)
Requirement already satisfied: cycler>=0.10 in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from matplotlib>=2.0.1->broadbean==0.9)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=1.5.6 in c:\users\qcodes-davewecker\anaconda3\envs\qcodes-qdev-master\lib\site-packages (from matplotlib>=2.0.1->broadbean==0.9)
Collecting sip<4.20,>=4.19 (from PyQt5->broadbean==0.9)
  Using cached sip-4.19.2-cp35-none-win_amd64.whl
Installing collected packages: sip, PyQt5, broadbean
  Running setup.py install for broadbean ... done
Successfully installed PyQt5-5.8.2 broadbean-0.9 sip-4.19.2

This was solved by b7d082b9b8efc441eb849fd6584ecb5e72d9c8fc.


bump github.com/onsi/ginkgo/v2 to v2.20.2

fixes #47
test passed: arukiidou/docker-otel-lgtm/pull/6

that's a great way to test this repo - maybe we should automate that (without having to create the pr in docker lgtm)


Add configuration for AppVeyor build automation

Solves issue #1 by pushing artifacts to the AppVeyor build.

Merged to 'develop'


Add javac to third_party [phab:D1540]

Created by cushon at 2017-04-19 06:09:33:
Previously kythe was depending on the version of javac that ships with
Bazel. This change makes it easier to upgrade the javac version
independently from Bazel releases. The javac artifact that was added is
the same version that shipped with Bazel 4.5.
This change also updates BUILD files to use the new dependency, and
fixes a few places where javac or javac-based tools weren't using the
-Xbootclasspath/p: flag to prepend javac to the bootclasspath.

cushon wrote at 2017-04-19 16:22:51:
Switch to the version currently provided by Bazel, and also update BUILD files.

fromberger wrote at 2017-04-19 16:38:52:
After patching this change locally, I found I'm not able to build, per the following transcript (lightly redacted):
$ bazel build //kythe/java/...
INFO: Found 30 targets...
ERROR: projects/kythe/third_party/javac/BUILD:10:1: Extracting interface //third_party/javac:javac failed: Process terminated by signal 6 [sandboxed].
mmap(): Invalid argument
Unable to open Zip file third_party/javac/javac-9-dev-r3297-4.jar: Invalid argument
Use --strategy=JavaIjar=standalone to disable sandboxing for the failing actions.
INFO: Elapsed time: 1.032s, Critical Path: 0.51s

Do we need to update Bazel first?
$ bazel version
Build label: 0.4.5-2017-04-12 (037b9b93f)
[…]

cushon wrote at 2017-04-19 16:42:53:

! In (earlier comment), fromberger wrote:
After patching this change locally, I found I'm not able to build, per the following transcript (lightly redacted):

arc was complaining about not being able to upload binary artifacts. Does fetching the javac jar again help?
(cd third_party/javac && wget http://repo1.maven.org/maven2/com/google/errorprone/javac/9-dev-r3297-4/javac-9-dev-r3297-4.jar)

fromberger wrote at 2017-04-19 16:47:45:

! In (earlier comment), cushon wrote:

! In (earlier comment), fromberger wrote:
After patching this change locally, I found I'm not able to build, per the following transcript (lightly redacted):

arc was complaining about not being able to upload binary artifacts. Does fetching the javac jar again help?
(cd third_party/javac && wget http://repo1.maven.org/maven2/com/google/errorprone/javac/9-dev-r3297-4/javac-9-dev-r3297-4.jar)

Ah, yes, that helped, thanks. Arcanist apparently created an empty .jar file in that directory, so in addition I had to rename the fetched one (to which wget helpfully added a ".1" to avert a naming collision).
Running all the tests and such now.

fromberger wrote at 2017-04-19 17:05:58:
Okay, everything looks good here.
To land this, I'm going to have to manually update the patch to include the JAR; it's possible Arcanist may lose the attribution (if so, I apologize)

fromberger accepted this revision at 2017-04-19 17:05:58

fromberger closed via commit 2d585a113cd78e9356594611ec58eac252a79765 at 2017-04-19 17:06:48


cmake: link with libzstd if there is no cmake package config

Hello Maintainers,
I would like to introduce this impovement to the cmake build process. This allows the library to be linked with properly installed libzstd on the system where there is no .cmake package config available. Unfortunately a lot of distros install libzstd without the zstdConfig.cmake file - including Ubuntu. Related bugreport for Ubuntu packagers: https://bugs.launchpad.net/ubuntu/+source/libzstd/+bug/1941956.
As it stands currently, find_package() will report that there is no zstd on the system and it will start compiling its own. My change will check if the libraries are found with find_library() - looking for .a and .so in the system and use those for linking.
To get this working I also had to add pthread for statically linked libzstd.a. This addition is related to this -  https://github.com/facebook/zstd/pull/2097  - and might not be required for all versions of libzstd out there.
Thanks
Richard

Thanks for the contribution, logic looks reasonable, but with your latest addition, we end up with 50 lines of cmake to figure out where ZSTD is, I think it would be best to move "find zstd" logic to its own file, maybe to cmake/zstd.cmake.
I believe the main CMakeLists.txt file should not contain such complicated dependency logic.

Makes sense - updated the PR with a zstd stuff in a separate file. Also did a
cmake-format -i CMakeLists.txt
cmake-format -i cmake/zstd.cmake