unknown key algorithm:  for ed25519 SSH keys

I am running Gogs version <IP_ADDRESS>5 in Docker with the official image tagged latest.
When I try to add a new ed25519 SSH key to my account, it shows the following error message on the top of the page:

Sorry, we're not able to verify your SSH key: ParsePublicKey: ssh: unknown key algorithm: <nil>

The key is definitively valid because it is the same key I use to commit to GitHub. RSA keys are working fine.

Looks like support upstream hasn't landed yet: https://github.com/golang/go/issues/8581
Hopefully it hits soon!

It seems like that this is not a problem of Go or Gogs. I tried to add an ed25519 key on try.gogs.io and it was successful. Pushing and pulling is also no problem.
Does anybody have an idea what the difference between try.gogs.io and the Docker image is?

Not sure, my gogs instance shows newer than try.gogs: Gogs Version: <IP_ADDRESS>5

The issue indeed lies within the go package golang.org/x/crypto/ssh as @qbit said. 7ef9a05 made the SSH validation function use golang.org/x/crypto/ssh which does not support ed25519 keys, yet.
I will close this issue because #2179 already has some comments about the commit.

So when is this going to be fixed? Is there some plan to use another way to validate ssh keys before this is fixed upstream? Are there any efforts upstream to fix this?

I don't think that ed25519 will be in golang.org/x/crypto/ssh soon. It might never be integrated because upstream says that they wait for a CFRG decision which might not use ed25519 but something similar.
See: https://github.com/golang/go/issues/8581#issuecomment-154903261

If this isn't fixed upstream, gogs should use a different method for key validation.
If I'm understanding this correctly, this is only a validation to make sure that everything went right when copy pasting the keys in. The actual crypto is still done by OpenSSH (or whatever is installed on the server), right? And OpenSSH does have proper support for Ed25519.

In the mean time, you can become your git user on your gogs instance and manually add the key to ~/.ssh/authorized_keys, make sure you copy an existing line to get all the command stuff in there.
If you really need to have the key listed in the "Keys" section of the web site, add it to the public_key table in gogs.db

@qbit Thanks for the workaround.

The newly released RFC 7748 defines Curve25519, so it will most likely be implemented in golang.org/x/crypto/ssh within a reasonable time span.

We may use add back the old approach to support two ways of validations under your configuration. So people who do not have problem with old approach could config to use it. This should work?

This would be a temporary fix at least. But in the long term, all the keys supported by OpenSSH should be supported by Gogs in the default configuration.

@FSMaxB OK, agreed.

I got my ED25519 key added thanks to this :stuck_out_tongue:
You need to add a regular RSA key so that the line is added to gogs' authorized keys, then go into said file and edit the key. If you want to change the key in the keys area, as stated before, you must edit it in the keys line (SQLite editor if a .db file, or some MySQL editor otherwise).
If you don't want to add a key, use this SQL query (SQLite editor supports SQL queries if SQLite):
INSERT INTO `public_key` (`id`, `owner_id`, `name`, `fingerprint`, `content`, `mode`, `type`, `created`, `updated`) VALUES (KEYID, USERID, 'KEYNAME', 'KEYFINGERPRINT', 'SSHKEY', 2, 1, '2016-02-13 01:04:42', '2016-02-13 01:07:43');

Where KEYID = the ID for the key (check if you have any with that ID or you'll overwrite that person's key!), USERID is your ID (Admin Panel can inform you), KEYNAME is the name of the key, which can contain spaces, KEYFINGERPRINT is the fingerprint, and SSHKEY for the key. The date can also be changed if needed. Then, in the Gogs homedir (/home/gogs if installed via package), go to .ssh and open authorized_keys and add this in:
command="/opt/gogs/gogs serv key-KEYID --config='/etc/gogs/conf/app.ini'",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty SSHKEY"

KEYID and SSHKEY are the only things needed. Ensure your OpenSSL is the latest.

@PokeAcer549 Good hack...!

Ty,  I might as well share it as I got it working.

Now this type of key should be supported when you're not using builtin SSH server, please help test.

This post may help as well: https://discuss.gogs.io/t/how-to-config-ssh-settings/34

I currently don't get the development version of gogs to work. I'm using the Archlinux AUR package gogs-git-dev, I'll take a closer look once I find the time.

Works for me in develop branch.

@FSMaxB Update the dependencies with go get -v -u ./... first.

@mhartkorn: That isn't the issue I'll probably have to write my own package because the original doesn't work. But misuzu already confirmed that it works, so I guess I'm fine anyway.

OK, close as fixed.


AuthPrefix option is not documented.

Just as it mentions in the title the AuthPrefix option is not documented anymore. Before it was a property of jwtInterceptor provider but now it's part of the config option for the JwtOptions provider, but this change is not documented anywhere.

Thanks, I'm putting a spot in the readme for it now :)


[draft] build raw vhd 2024.5b

[draft] build raw vhd 2024.5b

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.335%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
3016

Relevant Lines:
3951

💛  - Coveralls


Help needed to debug go gin project

Hi, I need you help to add a configuration to run gin project. I want to run "$ go run ." Is there anyway to run custom commands(like the config we can create in launch.json in vscode).
Sorry for the noob question, I'm new to neovim and any help is really appreciated.

Doesn't the debug package configuration work for you? I believe what it does is run go build . then starting the resulting executable, basically what go run . does under the hood.

@h-tiwari-dev go run isn't a good way to debug Go code and it doesn't publish the necessary symbols. Prefer using go build whenever possible.


WIP: Static contrainer registry creation

This commit prevents destroying of created container registry
Signed-off-by: Mikael Saarinen<EMAIL_ADDRESS>

This approach doesn't work.


Add stubby DNS-over-TLS service module

Motivation for this change
This change provides a module wrapper for the stubby package maintained by @leenaars. it allows the user to customize the service configuration. This was prompted by my wish to run unbound and stubby in tandem on my NixOS machine.
Things done
This change implements the systemd service and ability to easily declare certain common stubby settings from configuration.nix.

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

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

I tested this by building and running the service successfully on my system. In particular, I tested passing in custom values the listening addresses.
Example configuration with unbound:
{
   services.stubby.enable = true;
   services.stubby.listenAddresses = [ "<IP_ADDRESS>@8053" "0::1@8053" ];

   services.unbound = {
     enable = true;
     allowedAccess = [
       "<IP_ADDRESS>/24"
     ];
     extraConfig = ''
       hide-identity: yes
       hide-version: yes
       qname-minimisation: yes
       harden-short-bufsize: yes
       harden-large-queries: yes
       harden-glue: yes
       harden-dnssec-stripped: yes
       harden-below-nxdomain: yes
       harden-referral-path: yes
       use-caps-for-id: yes
       do-not-query-localhost: no
     forward-zone:
       name: "."
         forward-addr: <IP_ADDRESS>@8053
     '';
   };
}

Hey @Infinisil, thanks for all the great feedback! I'll try to incorporate your suggestions. In particular I hadn't seen the toYAML function in the wild before, and this definitely seems like a good application for it.

You have opened the pull request against NixOS:release-18.03. It should be opened against master and  backported after merge.

@baroncharlus you should rebase your changes onto the master branch with git-rebase. If you don't know how to do this, just readd your changes on the checkout master branch and open a new pull request.


Astebreed (GOG) starts with black screen, no input or audio

Please describe your issue as accurately as possible. If you run into a problem with a binary release, make sure to test with latest master as well.
Important: When reporting an issue with a specific game or application, such as crashes or rendering issues, please include log files and a D3D11 Apitrace (see https://github.com/apitrace/apitrace) so that the issue can be reproduced. In order to create a trace, run wine apitrace.exe trace -a dxgi YOURGAME.exe. DO NOT use DXVK together with apitrace!
Software information
Astebreed (GOG)
System information

GPU: Nvidia GeForce GTX 960
Driver: 430.14.0
Wine version: Wine TKG 4.8.r17
DXVK version: https://github.com/Joshua-Ashton/d9vk/commit/de80c192c4c1b218df531d383b0d6bda710edf49

Apitrace file(s)
https://drive.google.com/file/d/1RCpza_fCv-68k3-FCW1JRFav_6ByPwqm/view?usp=sharing
Log files

d3d9.log:
Astebreed_d3d9.log

The GOG version of Astebreed loads to a black screen, with no input or audio. My most recent trace also ended with "apitrace: warning: caught exception 0xc0000005
apitrace: flushing trace". Thanks!
EDIT: The trace is now a proper Windows one.

It looks like this problem is now fixed. However, @Joshua-Ashton , is installing d9vk through winetricks supported? I used the "d9vk_master" verb through the winetricks GUI, but I got a dll from 2019-05-17. When I copied the link from the winetricks source or used the "setup_d9vk" tool, I got a dll from today (2019-07-01), as expected. Do you know what's going on?

I did some digging, and found that it may be a winetricks thing. For anyone curious, Winetricks currently seems to prefer cached downloads over newer online versions, leading to a situation like this. I put a bug in on their git page, so we'll see, I guess. Thanks again!


Task rename operators #218

Make sure you have checked all steps below.
Jira
Task can be found here https://github.com/PolideaInternal/airflow/issues/218
Description
Pull request information:

changed class name GceHook->ComputeEngineHook
changed imports
added deprecation warning for old module GceHook

Tests

added unit tests for tests/test_deprecation_warning.py

Codecov Report

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

@@           Coverage Diff            @@
##             master    #357   +/-   ##
========================================
  Coverage          ?   9.59%
========================================
  Files             ?     610
  Lines             ?   35179
  Branches          ?       0
========================================
  Hits              ?    3376
  Misses            ?   31803
  Partials          ?       0

Impacted Files
Coverage Δ

airflow/gcp/operators/compute.py
0% <0%> (ø)

airflow/gcp/hooks/compute.py
0% <0%> (ø)

airflow/contrib/hooks/gcp_compute_hook.py
0% <0%> (ø)

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 2abf0f5...c4a40ae. Read the comment docs.


Pre-release throws System.InvalidOperationException on LC0039

I get this error after latest pre-release update:
[{
	"resource": "/d:/VSCode/Git/NAB/Eagle/App/app.json",
	"owner": "_generated_diagnostic_collection_name_#0",
	"code": "AD0001",
	"severity": 4,
	"message": "Analyzer 'BusinessCentral.LinterCop.Design.Rule0039PageRunTableMismatch' threw an exception of type 'System.InvalidOperationException' with message 'System.InvalidOperationException: Sequence contains no elements\r\n   at System.Linq.ThrowHelper.ThrowNoElementsException()\r\n   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)\r\n   at BusinessCentral.LinterCop.Design.Rule0039PageRunTableMismatch.AnalyzeSetRecordArgument(OperationAnalysisContext ctx)\r\n   at Microsoft.Dynamics.Nav.CodeAnalysis.Diagnostics.AnalyzerExecutor.<>c__DisplayClass53_1.<ExecuteOperationAction>b__1() in D:\\a\\_work\\1\\s\\source\\Prod\\Microsoft.Dynamics.Nav.CodeAnalysis\\DiagnosticAnalyzer\\AnalyzerExecutor.cs:line 766\r\n   at Microsoft.Dynamics.Nav.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteAndCatchIfThrows_NoLock(DiagnosticAnalyzer analyzer, Action analyze, Nullable`1 info) in D:\\a\\_work\\1\\s\\source\\Prod\\Microsoft.Dynamics.Nav.CodeAnalysis\\DiagnosticAnalyzer\\AnalyzerExecutor.cs:line 1102'",
	"source": "AL",
	"startLineNumber": 1,
	"startColumn": 1,
	"endLineNumber": 1,
	"endColumn": 1
}]

I couldn't find a repo on this, but I think I have resolved this error.
Hoping that this is resolved in the updated (pre)release version of v0.30.8.

A few minutes after this I think I found the reason: RecordId.GetRecord().
I didn't anticipate that this method could also be called other then from a page-object.


[Bug] Using JSX syntax in render template results in no output and emits an invalid template option warning

What version of vite are you using?
vite/4.3.9 darwin-arm64 node-v18.16.1
System info and storybook versions
System:
  OS: macOS 13.4.1
  CPU: (10) arm64 Apple M1 Max
Binaries:
  Node: 18.16.1 - /opt/homebrew/opt/node@18/bin/node
  Yarn: 1.22.19 - /opt/homebrew/bin/yarn
  npm: 9.5.1 - /opt/homebrew/opt/node@18/bin/npm
Browsers:
  Chrome: 114.0.5735.198
  Safari: 16.5.1
npmPackages:
  @storybook/addon-essentials: ^7.0.25 => 7.0.25
  @storybook/addon-interactions: ^7.0.25 => 7.0.25
  @storybook/addon-links: ^7.0.25 => 7.0.25
  @storybook/blocks: ^7.0.25 => 7.0.25
  @storybook/testing-library: ^0.0.14-next.2 => 0.0.14-next.2
  @storybook/vue3: ^7.0.25 => 7.0.25
  @storybook/vue3-vite: ^7.0.25 => 7.0.25

Describe the Bug
Using JSX syntax in stories causes Storybook to render no output and emit a console warning
import type { Meta, StoryObj } from "@storybook/vue3";
import { App } from "./App";

const meta = {
  title: "App",
  render: () => ({
    components: { App },
    template:
overwriting with jsx
,
  }),
} satisfies Meta<typeof App>;

export default meta;
type Story = StoryObj<typeof meta>;

export const Default: Story = {};

Link to Minimal Reproducible Example
https://github.com/kevinvalk/problem-storybook-vite-vue3-jsx
Participation

[ ] I am willing to submit a pull request for this issue.

@chakAs3 do you know what might be happening here?

Hi @kevinvalk,   have ever used JSX in Vue?
if the case is the same in Storybook, the render function returns a Vue component,  so if you use JSX or render functions, you can't use the template option you need to use the setup function and return your JSX expression

O wow, I completely misunderstood the warning runtime.js:94 [Vue warn]: Component is missing template or render function.. Indeed this is a user error.
That said, I am confused about the type of template as (according vue internals) it is an template?: string | object field. Hence I do not get any "errors" that I am not using a string and it happily accepts JSX or h(). To protect against user errors, maybe it is something to be checked. But it is not the responsibility of storybook to do that....
Regardless, thanks for the help, closing!


Fix syncer resource race

Summary
Fix the following race condition:
Namespace is scheduled to a workload cluster and has its labels patched
Resource (deployment) is reconciled, but the namespace cache is not up
to date, so the deployment is not scheduled to a workload cluster
(namespace label in cache is unset)
Namespace is processed again (update event from label patch), but
because it was previously scheduled and its placement hasn't changed,
enqueueResourcesForNamespace returns without enqueuing all resources.
Related issue(s)
Fixes #947 🤞

@stevekuznetsov pointed out that we'd have a similar issue when a namespace is being rescheduled from cluster1 to cluster2, if the cache is temporarily stale. Will come up with a better fix.

Hitting the ws deletion flake #950

Replaced by #978


[Bug] Proxy channel over CudaIPC on AMD GPUs

Hi, we have a simple code that runs successfully on NVIDIA A100 GPUs but fails on AMD MI250/MI210. The code uses proxy channel over CudaIPC connection. We wonder if proxy channel is still buggy on AMD GPUs.
The code does the following:

Rank 0: Intialize a cp.zeros data buffer and a cp.ones scratch buffer. Perform data += scratch, and then putWithSignal the data buffer into rank 1's data buffer through proxy channel.
Rank 1: Intialize a cp.zeros data buffer and wait for rank 0's signals.

The data is in total 1024*256 ints and is reduce and send in 4*blockDim.x chunks. We launch only one 128-thread threadblock. After the code finishes, both rank 0 and 1 should have data buffer being all ones. However, we noticed that rank 1's data buffer data[66048...196607] is still all zeros, while rank 0's data buffer is correctly all ones.
There is a __syncthreads() after the reduce and a check if the data[start] == 1 never fails. Somehow the putWithSignal afterwards still put all zero data for some chunks. The same program runs successfully on NVIDIA GPUs or with smaller nelem_total on AMD GPUs. We wonder if there is a bug with proxy channel or rocm.
Platform info:

ROCm 6.2.1
Tested on MI250 and MI210
MSCCLPP commit 863a59936084b0dd88c221185841b8c773d17446
CuPy commit 0188dd8b16938fa835bcda797f70f9af2f8b4980

Kernel code
#include <mscclpp/proxy_channel_device.hpp>

const uint64_t nelem_total = 1024 * 256;
const uint64_t nint4_total = nelem_total / 4;

extern "C" __global__ void __launch_bounds__(1024)
    reduce_send_kernel(mscclpp::ProxyChannelDeviceHandle* send_proxy_channel,
                       int4 *scratch, int4 *data) {
    const int tid = threadIdx.x;

    const uint64_t nint4_per_send = blockDim.x;
    for (int i = 0; i < nint4_total / nint4_per_send; ++i) {
        const uint64_t start = i * nint4_per_send;
        __syncthreads();
        // Reduce the scartch buffer into the data buffer. Making data buffer all 1s.
        for (uint64_t offset = tid; offset < nint4_per_send; offset += blockDim.x) {
            int4 tmp = data[start + offset];
            int4 val = scratch[start + offset];
            tmp.x += val.x;
            tmp.y += val.y;
            tmp.z += val.z;
            tmp.w += val.w;
            data[start + offset] = tmp;
        }
        __syncthreads();
        // The printf never got triggered.
        if (tid == 0 && data[start].x != 1)
            printf("Incorrect value %d at %llu\n", data[start].x, start * 4);
        __syncthreads();
        // After reduce, put the reduced data into rank 1's data buffer.
        if (tid == 0)
            send_proxy_channel->putWithSignal(start * sizeof(int4), nint4_per_send * sizeof(int4));
        __syncthreads();
    }
}

extern "C" __global__ void __launch_bounds__(1024)
    recv_kernel(mscclpp::ProxyChannelDeviceHandle* recv_proxy_channel, int4 *data) {
    const int tid = threadIdx.x;

    const uint64_t nint4_per_send = blockDim.x;
    for (int i = 0; i < nint4_total / nint4_per_send; ++i) {
        if (tid == 0) recv_proxy_channel->wait();
        __syncthreads();
    }
}

Python code
import cupy as cp
import os
import struct

import mscclpp.comm as mscclpp_comm
from mscclpp import (
    ProxyService,
    Transport,
)
from mscclpp_mpi import MpiGroup, mpi_group
from mscclpp.utils import KernelBuilder

def create_group_and_connection(mpi_group: MpiGroup):
    group = mscclpp_comm.CommGroup(mpi_group.comm)
    remote_nghrs = list(range(group.nranks))
    remote_nghrs.remove(group.my_rank)
    connections = group.make_connection(remote_nghrs, Transport.CudaIpc)
    return group, connections

def main():
    # MPI group of 2
    mpi_group = MpiGroup(list(range(2)))
    nelem_total = 1024 * 256
    group, connections = create_group_and_connection(mpi_group)
    proxy_service = ProxyService()

    # Data buffer is all 0s
    memory = cp.zeros(nelem_total, dtype=cp.int32)

    peer = 1 - group.my_rank
    # Proxy channel over Transport.CudaIpc
    proxy_channel = group.make_proxy_channels(proxy_service, memory, connections)[peer]
    proxy_arr = cp.asarray(memoryview(proxy_channel.device_handle().raw), dtype=cp.uint8)
    proxy_ptr = proxy_arr.data.ptr

    if group.my_rank == 0:
        # Scartch buffer is all 1s
        scratch = cp.ones(nelem_total, dtype=cp.int32)

        file_dir = os.path.dirname(os.path.abspath(__file__))
        bug_kernel = KernelBuilder(
            file="reproduce_bug.cu",
            kernel_name="reduce_send_kernel",
            file_dir=file_dir,
        ).get_compiled_kernel()
        params = struct.pack("P", proxy_ptr) + struct.pack("P", scratch.data.ptr) + struct.pack("P", memory.data.ptr)
    else:
        file_dir = os.path.dirname(os.path.abspath(__file__))
        bug_kernel = KernelBuilder(
            file="reproduce_bug.cu",
            kernel_name="recv_kernel",
            file_dir=file_dir,
        ).get_compiled_kernel()
        params = struct.pack("P", proxy_ptr) + struct.pack("P", memory.data.ptr)

    proxy_service.start_proxy()
    group.barrier()

    # Launch one 128-thread threadblock
    bug_kernel.launch_kernel(
        params=params,
        nblocks=1,
        nthreads=128,
        shared=0,
        stream=None
    )
    cp.cuda.runtime.deviceSynchronize()

    expected = cp.ones(nelem_total, dtype=cp.int32)
    print(cp.nonzero(memory - expected))
    assert cp.array_equal(memory, expected)

    proxy_service.stop_proxy()

if __name__ == "__main__" :
    main()

Output
$ rm -rf __pycache__ ; mpirun -np 2 --tag-output python3 reproduce_bug.py
[1,0]<stdout>:(array([], dtype=int64),)
[1,1]<stdout>:(array([ 66048,  66049,  66050, ..., 196605, 196606, 196607]),)
[1,1]<stderr>:Traceback (most recent call last):
[1,1]<stderr>:  File ".../reproduce_bug.py", line 79, in <module>
[1,1]<stderr>:    main()
[1,1]<stderr>:  File ".../reproduce_bug.py", line 73, in main
[1,1]<stderr>:    assert cp.array_equal(memory, expected)

You need to use uncached GPU buffers for communication between AMD GPUs. @SreevatsaAnantharamu We need a Python binding of the ext alloc function.


JFXDatePicker floatLabel.

As I think, it should be consistent with another controls, like TextField or Combobox

It's already there, as JFXDatePicker uses JFXTextField as the editor node.


Where is the binary?

No binary? also, if I try to make - no makefile found.

ok.. if you don't do this, the make file is above src..
"Enter into the directory of source codes, then:"


Random super hero

Description
Function that returns random super hero’s
Proposed solution
Option 1:

Standard randSuperheroName() function pulling from simple string array

Option 2:

Json data with more info about the hero (name, alter ego, franchise etc)
We could then have an assortment of methods (randSuperheroName(), randSuperheroEntity())

I quite like option 2
Alternatives considered
No response
Do you want to create a pull request?
Yes

So both :)
randSuperheroName(), randSuperhero()

Awesome! 😊


Date function

Ticket: #2104
Solution
Changes time() and date()  to use date_i18n.
Impact
date_i18n is constructed this that it should be backward compatible.
Usage Changes
Nothing changes.
Consideration
As it was mentioned in the issue - we should add some changes to documentation as now there are three ways to get the date.
Testing
Nothing new added.

Coverage decreased (-1.007%) to 92.823% when pulling 27fcdb1c54e73b95a0901c6b4cc1600538344d74 on palmiak:date_function into 5c22f6211da7aa2ef04ed9d831e8ad8a7e7a9ea1 on timber:master.

Coverage decreased (-1.007%) to 92.823% when pulling 27fcdb1c54e73b95a0901c6b4cc1600538344d74 on palmiak:date_function into 5c22f6211da7aa2ef04ed9d831e8ad8a7e7a9ea1 on timber:master.


feat: Change operator for shopware update to accept current version check in method updateApiCheck of UpdateController

1. Why is this change necessary?
The current operator expects the installed version always to be never than the latest released shopware: <IP_ADDRESS> cannot be higher than <IP_ADDRESS>, therefore the message for available version is always printed.

2. What does this change do, exactly?
Correct the operator to allow the current installed version.
3. Describe each step to reproduce the issue or behaviour.
Activate auto_update in config
Install current shopware and login into admin
4. Please link to the relevant issues (if any).
5. Checklist

[x] I have rebased my changes to remove merge conflicts
[x] I have written tests and verified that they fail without my change
[x] I have created a changelog file with all necessary information about my changes
[x] I have written or adjusted the documentation according to my changes
[x] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

🤖 Generated by Copilot at 0b67030
This pull request fixes a bug in the update check logic that would always show an update available even if the current version was the latest. It changes the operator for the version compare in UpdateController.php and adds a changelog entry for the fix.

🤖 Generated by Copilot at 0b67030

Fix version compare operator for update check (link, link)

Thanks!


Set up SSH in initrd for hosts with encrypted partitions

Set up SSH in initrd so that the password for encrypted partitions can be provided. Need to work out which kernel modules need enabled for networking on any given host.
Example configurations:

openlab-aux/vuizvui
etu/nixconfig
steveeJ/infra

Started in initrd-ssh.

Enabled in 98a0e92f but still not quite working.


Travis: drop unsupported node versions, add stable

Drop io.js and 0.13, both which are no longer supported. Add 'stable' to test plan.

thanks!


is ~8mb the smallest size RN android apk can get?

I have a simple app. Ran proguard and it went down to 7.5mb. I just want to know whether there's other way to reduce the apk size that I am not aware of.

Hi @alvinwoon, How did you ran the pro-guard, can you please share the steps.

@alvinwoon React Native app APKs include JSCore binaries for x86 and ARM. If you don't need x86 you could reduce the size even more.

cc @mkonicek

cc @mkonicek

Thanks @brentvatne, after re-generating key everything works fine, but getting crash reports would be very helpful.

Thanks @brentvatne, after re-generating key everything works fine, but getting crash reports would be very helpful.

@MuruganDurai You have 2 options for crash reports,

Use adb logcat, or the logs panel in Android studio to see logs (filter only errors to see crash reports).
Use something like crashlytics in your productions apps to track crashes

@MuruganDurai You have 2 options for crash reports,

Use adb logcat, or the logs panel in Android studio to see logs (filter only errors to see crash reports).
Use something like crashlytics in your productions apps to track crashes

@MuruganDurai How did you solve the 'got unable to compute hash error at ":app:packageRelease"' issue exactly? I tried regenerating the key but no luck

@Hosain As I said before I copied all the contents suggested from stackoverflow for "proguard-rules.pro" and re-generated the key.
-keep class * extends com.facebook.react.bridge.JavaScriptModule { *; }
-keep class * extends com.facebook.react.bridge.NativeModule { *; }
-keepclassmembers class *  { @com.facebook.react.uimanager.UIProp ; }
-keepclassmembers class *  { @com.facebook.react.uimanager.ReactProp ; }
-keepclassmembers class *  { @com.facebook.react.uimanager.ReactPropGroup ; }
okhttp
-keepattributes Signature
-keepattributes Annotation
-keep class com.squareup.okhttp.** { ; }
-keep interface com.squareup.okhttp.* { ; }
-dontwarn com.squareup.okhttp.*
-dontwarn rx.Observale.**
-dontwarn rx.**
-dontwarn com.squareup.okhttp.internal.huc.**
-dontwarn com.google.appengine.api.urlfetch.**
okio
-keep class sun.misc.Unsafe { ; }
-dontwarn java.nio.file.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
-dontwarn okio.**
-dontwarn butterknife.**
-keep public class com.google.android.gms.**
-dontwarn android.support.v7.**
-keep class android.support.v7.** { ; }
-keep interface android.support.v7.* { *; }
-dontwarn java.lang.invoke**
-dontwarn android.support.**
-dontwarn com.github.**
-dontwarn com.squareup.picasso.**

From: Hosain<EMAIL_ADDRESS>Sent: Tuesday, January 5, 2016 4:04 AM
To: facebook/react-native
Cc: MuruganDurai
Subject: Re: [react-native] is ~8mb the smallest size RN android apk can get? (#5037)
@MuruganDuraihttps://github.com/MuruganDurai How did you solve the 'got unable to compute hash error at ":app:packageRelease"' issue exactly? I tried regenerating the key but no luck
[https://avatars2.githubusercontent.com/u/6378771?v=3&s=400]https://github.com/MuruganDurai
MuruganDurai · GitHubhttps://github.com/MuruganDurai
github.com
MuruganDurai has 3 repositories written in JavaScript, Shell, and CSS. Follow their code on GitHub.

Reply to this email directly or view it on GitHubhttps://github.com/facebook/react-native/issues/5037#issuecomment-168831770.

@satya164 Thanks for the suggestions. How to remove "React Native JSCore binaries for x86" to reduce the size further.

@MuruganDurai Remove x86 from abiFilters.

Thanks @satya164

@MuruganDurai
Hi, you could also try using the split feature to create separate apks for different CPU architectures. In case of RN, this creates 2 APKs (x86 and ARMv7a). Just change the following line in your android/app/build.gradle:
- def enableSeparateBuildPerCPUArchitecture = false
+ def enableSeparateBuildPerCPUArchitecture = true

Upload both these files to Google Play and the users will automatically get the appropriate APK file. If you want to upload to other markets such as APKFiles, which do not support multiple APKs for a single app, change the following line as well to create a big universal APK with binaries for both CPUs.
- universalApk false  // If true, also generate a universal APK
+ universalApk true  // If true, also generate a universal APK

@SuhairZain  Thanks.

@SuhairZain This seems like a good addition to the docs or even a tutorial. Wink. Wink.

Using @SuhairZain 's suggestion we got our APK size down from 15.2MB for the universal to 8.4MB for the ARMv7a and 10.3MB for x86.


free logo/icon design for webapp-webpack-plugin

Hi, my name is Ksenia. I'm a graphic designer and I'd like to collaborate on your open source project and propose free logo/icon design for your app. If it's something you're interested in, please, let me know!

Absolutely, I'd appreciate it very much!

Thanks for your reply! That's great! Do you have any special requirements for the logo? Any symbols that should be included? And how do you plan to use the logo? On your web site and etc?

No special requirements.
I'd place it next to the title on the front page here, which means it would also appear here.

ok, what name do you want to write? webapp-webpack-plugin?

Yeah, but if you think that's too long and might not work well, do you think the initials wwp would be better?

ok, I'll try both make options. Have a nice day!

Hi, here is an option for the logo. Please, let me know what do you think?

Number 1 looks really good! Just a typo Plagin -> Plugin.
I feel plugin has more emphasis than it should, because the most important word is webapp in my opinion. Do you think it would work to slightly increase the font size of webapp webpack and similarly decrease the font size of plugin just so their width aligns with the image in the centre?

Actually, since I plan to place it right next to the project title on the front page, do you think just the logo without the text would work?

it can be so?

Excellent, I think Number 3 looks best, would you mind opening a PR?
Just don't forget to correct the spelling ~PLAGIN~ => PLUGIN

Sorry, English is not my first language, I try not to make mistakes.  I'll open the PR when I make you options of all sizes. color and monochrome, OK?

Sorry, English is not my first language, I try not to make mistakes.

No need to apologise, even native speakers make spelling mistakes :)

I'll open the PR when I make you options of all sizes. color and monochrome, OK?

Sounds great, open the PR when you're ready and I'll merge it, thanks again!

I uploaded all the required files and created a pull-request. Please merge it if everything is Ok


Finetuning stage: What is the format of the BRATS dataset to be used for finetuning

Hello, I have just run finished running a pretraining task which is rotation_3d and I now have pretrained weights. Currently, I wanted to use the weights that are trained from using rotation_3d algorithm on a BRATS dataset for 3D segmentation purpose by running finetune.py.
Thus, I have the following questions.

In the data_dir_train and data_dir_test, how is the BRATS dataset arranged? For example, under the data_dir_train folder, are there two folders, one folder for the BRATS images and the second folder for the labels?
Are all the files (including the BRATS labels and images) saved in a numpy format?
If the labels (ground truth) of BRATS dataset is saved in a numpy format, what is the size of the numpy array? Is it (128,128,128,4)?

Please help me! Sorry for troubling everyone for these questions. Appreciate if anyone is able to reply quickly.

Hi @aihamtaleb ,
When I tried running this line: python finetune.py self_supervised_3d_tasks/configs/finetune/rotation_3d.json, I got the following error.
Traceback (most recent call last):
File "finetune.py", line 4, in
main()
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/finetune.py", line 418, in main
init(run_complex_test, "test")
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/utils/model_utils.py", line 67, in init
f(**args)
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/finetune.py", line 340, in run_complex_test
gen_train, gen_val, x_test, y_test = data_loader.get_dataset(i, percentage)
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/test_data_backend.py", line 196, in get_dataset
self.dataset_name, self.batch_size, f_train, f_val, train_split, self.kwargs
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/test_data_backend.py", line 153, in get_dataset_train
batch_size, f_train, f_val, train_split, data_generator=PatchSegmentationGenerator3D, **kwargs,
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/test_data_backend.py", line 35, in get_dataset_regular_train
**kwargs,
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/data/make_data_generator.py", line 149, in get_data_generators
**kwargs)
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/data/make_data_generator.py", line 26, in get_data_generators_internal
train_data_generator = data_generator(data_path, train, **train_data_generator_args)
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/data/segmentation_task_loader.py", line 124, in init
super(PatchSegmentationGenerator3D, self).init(file_list, batch_size, shuffle, pre_proc_func)
File "/home/svu/e0310071/self-supervised-3d-tasks/self_supervised_3d_tasks/data/generator_base.py", line 35, in init
assert len(file_list) > 0, "received no files"
AssertionError: received no files
In the finetune rotation_3d config file, I did write the directory path as shown here:
"algorithm": "rotation",
"data_dir_train": "/hpctmp/e0310071/BRATS_train_5%",
"data_dir_test": "/hpctmp/e0310071/BRATS_test_data",
For the data directory, I store the numpy files as shown here. The numpy files of BRATS images are stored in a folder called Images, while the numpy files of BRATS labels are stored in a folder called Masks. The format to how BRATS numpy files are stored in the train directory is the same.
+BRATS_test_data
+Images
+ BRATS_437.npy
+  ...
+Masks
+ BRATS_437.npy
+ ...
Is there anything that I did wrong for the finetuning stage? How do I debug this error?

Hi @lokeycookie
Please make sure that your training and test datasets have the following format:
+BRATS_train
--+ BRATS_437.npy
--+ ...
+BRATS_train_labels
--+ BRATS_437_label.npy
--+ ...
and similarly the test set.
These are the lines that expect this format:
https://github.com/HealthML/self-supervised-3d-tasks/blob/master/self_supervised_3d_tasks/data/segmentation_task_loader.py#L22

Hi @aihamtaleb ,
Sorry for troubling you again but I got the same error previously.
I have changed the format of my training and test datasets as shown here:
+test
--+BRATS_train
----+BRATS_437.npy
----+...
----+BRATS_484.npy
--+BRATS_train_labels
----+BRATS_437_label.npy
----+...
----+BRATS_484_label.npy
+train_5%
--+BRATS_train
----+BRATS_001.npy
----+...
----+BRATS_022.npy
--+BRATS_train_labels
----+BRATS_001_label.npy
----+...
----+BRATS_022_label.npy
My full config file for finetune rotation_3d.json is as follows:
{
"algorithm": "rotation",
"data_dir_train": "/hpctmp/e0310071/train_5%",
"data_dir_test": "/hpctmp/e0310071/test",
"model_checkpoint": "/hpctmp/e0310071/saved_model/rotation_brats/weights-300.hdf5",
"dataset_name": "brats",
"train_data_generator_args": {"label_stem": "", "shuffle": true},
"val_data_generator_args": {"label_stem": ""},
"test_data_generator_args": {"label_stem": ""},
"data_is_3D": true,
"val_split": 0.05,
"enc_filters": 16,
"data_dim": 128,
"loss": "weighted_dice_loss",
"scores": ["dice", "jaccard", "brats_wt", "brats_tc", "brats_et"],
"metrics": ["accuracy", "weighted_dice_coefficient", "brats_metrics"],
"top_architecture": "big_fully",
"prediction_architecture": "unet_3d_upconv",
"pooling": "max",
"number_channels": 4,
"batch_size": 2,
"exp_splits": [50,25],
"lr": 1e-3,
"epochs_initialized": 400,
"epochs_frozen": 0,
"epochs_random": 0,
"epochs_warmup": 25,
"repetitions": 3,
"clipnorm": 1,
"clipvalue": 1
}
Did I do something wrong for this finetuning stage and how to resolve this issue?

Please attempt to change the name of the train directory, and remove % from its name.

Hi, I have changed the name of train directory as shown here but I still obtained the same error (Assertion error: Received no files)
+test
--+BRATS_train
----+BRATS_437.npy
----+...
----+BRATS_484.npy
--+BRATS_train_labels
----+BRATS_437_label.npy
----+...
----+BRATS_484_label.npy
+train
--+BRATS_train
----+BRATS_001.npy
----+...
----+BRATS_436.npy
--+BRATS_train_labels
----+BRATS_001_label.npy
----+...
----+BRATS_436_label.npy
My config rotation_3d.json is as follows:
{
"algorithm": "rotation",
"data_dir_train": "/hpctmp/e0310071/BRATS_data_128/train",
"data_dir_test": "/hpctmp/e0310071/BRATS_data_128/test",
"model_checkpoint": "/hpctmp/e0310071/saved_model/rotation_brats/weights-300.hdf5",
"dataset_name": "brats",
"train_data_generator_args": {"shuffle": true},
"val_data_generator_args": {"shuffle": false},
"test_data_generator_args": {"shuffle": false},
"data_is_3D": true,
"val_split": 0.05,
"enc_filters": 16,
"data_dim": 128,
"loss": "weighted_dice_loss",
"scores": ["dice", "jaccard", "brats_wt", "brats_tc", "brats_et"],
"metrics": ["accuracy", "weighted_dice_coefficient", "brats_metrics"],
"top_architecture": "big_fully",
"prediction_architecture": "unet_3d_upconv",
"pooling": "max",
"number_channels": 4,
"batch_size": 2,
"exp_splits": [100,80,60,40,20,10,5],
"lr": 1e-3,
"epochs_initialized": 400,
"epochs_frozen": 0,
"epochs_random": 0,
"epochs_warmup": 25,
"repetitions": 1,
"clipnorm": 1,
"clipvalue": 1
}
I received the same error as previously. How do I solve this error?

Hi @lokeycookie
Please try changing the config file to the following:
{
"algorithm": "rotation",
"data_dir_train": "/hpctmp/e0310071/BRATS_data_128/train/BRATS_train",
"data_dir_test": "/hpctmp/e0310071/BRATS_data_128/test/BRATS_test",
....
}

I also think that the contents of the test directory should be changed to:
+test
--+BRATS_test
----+BRATS_437.npy
----+...
----+BRATS_484.npy
--+BRATS_test_labels
----+BRATS_437_label.npy
----+...
----+BRATS_484_label.npy

Hi @aihamtaleb ,
Thank you for your help! I have tried your suggestions and the code does not have this assertion error now. However, I have experience another error but I will create another issue for it.
Thank you once again for your time and effort!


New Category | Apps

Added "Apps" as a category. May be useful to split into iOS and Android apps, though.

Good shout!

Lovely, thanks!


fix typos in README.md

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "master" git@github.com:adolphlwq/libkv.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

Thx, but I have deleted the forked repo.I will redo PR with sign.


Refs #31026 -- Changed @jinja2_tests imports to be relative.

When invoking tests like this:
% python3 runtests.py forms_tests

I was seeing five failures akin to:
======================================================================
ERROR: forms_tests.tests.tests (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: forms_tests.tests.tests
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/unittest/loader.py", line 436, in _find_test_path
    module = self._get_module_from_name(name)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/unittest/loader.py", line 377, in _get_module_from_name
    __import__(name)
  File "/Users/account/django/tests/forms_tests/tests/tests.py", line 8, in <module>
    from tests.forms_tests.tests import jinja2_tests
ModuleNotFoundError: No module named 'tests.forms_tests'

----------------------------------------------------------------------
Ran 474 tests in 0.522s

FAILED (errors=5, skipped=1)

Of course, forgive me if this is just an issue with my local setup being nonstandard somehow, but I noticed there aren't other imports in the test suite beginning from tests.... If there's something I need to do differently, I'm willing to update the contributor docs.

@jacobtylerwalls Thanks :+1:

This may be worth backporting to stable/4.0.x as the problem surfaced in CockroachDB's test set up. I added the commit to the branch used for testing there.

This may be worth backporting to stable/4.0.x as the problem surfaced in CockroachDB's test set up. I added the commit to the branch used for testing there.

Agreed, see 3f5d43ce5489f44959a57018d8ea89df799ca3d5.


Create CONTRIBUTING.md

Summary by CodeRabbit

Documentation

Added a contribution guide with information on how to contribute to the project, including design and architecture details.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (e67a2d7) 71.83% compared to head (3bc362e) 71.83%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #98   +/-   ##
=======================================
  Coverage   71.83%   71.83%
=======================================
  Files          20       20
  Lines         348      348
  Branches       37       37
=======================================
  Hits          250      250
  Misses         98       98

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Static routes are not added after router reboot

Hello,
I have a GIF tunnel and a few static routes on it. Sadly enough, they are not added after router reboot.
Steps to rep:

OPNsense 18.1.7 box
Create GIF tun
Add some static routes on GIF tun
Reboot

@DasTestament do you have a system log for this, maybe the routes are added before the tunnels are up?

@fichtner Well, I can't answer your question because I've moved back to pfSense =/

Ok, sure.


Performance issues, with unnecessary updates

Thank you for this awesome package! It's really great, and works as expected and without any hassle. My only concern is a lot of unnecessary updates, originating from react-tabtab components. I use the why-did-you-update package, to monitor updates that could be avoided, since props and/or state are the same.

Any ideas on how to avoid this?

Yep, that's right.
This is the issue I am working on now.
I will report you when I finish.
Thanks for the report.

Awesome! Keep up the good work, @ctxhou 🚀

Hi @mathiasjakobsen, you can try version 1.0.0-rc.3.
I've fix the performance issue.

@ctxhou I still gets some warnings on sortableList and DragTabList ⛄ But there is definitely improvements in rc3 👍

@mathiasjakobsen, thanks for your patience.
react-tabtab is shipping to v1. And the performance issue is also fixed in this version! 🍺

@ctxhou awesome! 🍻


How do we use the data in the component?

Thanks for great library!
I can have got the data from Google Sheets by setting <GoogleSheetsProvider> in App.js.
Now I can see the data as state on the browser via React Developer tools(Chrome extension).

But I can't use the data like rendering it or display it by console.log.
How do we use the data in the component?
I tried it with the Docs, but I can't have understood it.

@newt0 you'd want to use the withGoogleSheets HOC to access the data. check out the relevant import example here: https://github.com/athersharif/metis/blob/master/example/src/SingleSheet.js#L47

Thank you for your reply!
I fixed SingleSheet.js below.
import React from "react";
import PropTypes from "prop-types";
import { withGoogleSheets } from "react-db-google-sheets";

const SingleSheet = (props) => (

          id
          name
          email

        {props.db.samplesheet.map((data) => (

            {data.id}
            {data.name}
            {data.email}

        ))}

    <button className="btn btn-primary" onClick={props.refetch}>
      Refresh
    </button>

);

SingleSheet.propTypes = {
  db: PropTypes.shape({
    samplesheet: PropTypes.arrayOf(PropTypes.object),
  }),
};

export default withGoogleSheets("samplesheet")(SingleSheet);

And trying to use <SingleSheet> in App.js.
But it has the error.

It means that the google sheets, which I use, has something wrong?

@newt0 there are a few things to test:

have you set up the API key as mentioned here? (please don't share the API key)
have you added the keys to the .env file as mentioned here? and then restarted the React app?
does the doc id match the one from your google doc? (your google sheets looks fine)
what do you see in the console? any errors? could you try logging the props to see what you're getting there?

I appreciate a lot!

1.have you set up the API key as mentioned here?

Yes, I got it.

2.have you added the keys to the .env file as mentioned here? and then restarted the React app?

Yes, I set the .env file on the root. And restarted the local server.
REACT_APP_GOOGLE_SHEETS_API_KEY="My API Key"

does the doc id match the one from your google doc? (your google sheets looks fine)
Yes.

REACT_APP_GOOGLE_SHEETS_DOC_ID="1h3lSahG8BHHv7nhYFvctyv32Sf9MQBcCRCBk3gZdNOk"

what do you see in the console? any errors? could you try logging the props to see what you're getting there?

that's helpful! thanks for the screenshots. could you try the setting the env variables without the " (quotation marks)?
for example:
REACT_APP_GOOGLE_SHEETS_DOC_ID=1h3lSahG8BHHv7nhYFvctyv32Sf9MQBcCRCBk3gZdNOk

and then restart the React app? if the problem persists, do you have a repo up that i could take a look at?

Thank you for your nice answer!

could you try the setting the env variables without the " (quotation marks)?

I set the env variables without the "" like below.
REACT_APP_GOOGLE_SHEETS_API_KEY=MY_API_KEY
REACT_APP_GOOGLE_SHEETS_DOC_ID=1h3lSahG8BHHv7nhYFvctyv32Sf9MQBcCRCBk3gZdNOk

And then restarted, the same problem persits.

But I got some things.(Next message)

I comment out the code about map method in SingleSheet.js like below.

        {/* {props.db.samplesheet.map((data) => (

            {data.id}
            {data.name}
            {data.email}

        ))} */}

And then succeeded  rendering the screen, but the same error occurred.
(index.js:1 [METIS]: data for samplesheet was empty )
By checking React Developer Tools of the chrome extension, <GoogleSheetsProvider> has the data.
Meanwhile, <SingleSheet> has no data.

I maybe have to pass the props to <SingleSheet> in App.js?
Now, I write App.js like below.
const App = () => (
  <GoogleSheetsProvider>

Metis Examples

Single Sheet Example

        <SingleSheet />

  </GoogleSheetsProvider>
);

And also, by checking React Developer Tools of the chrome extension, I can see the data from google sheets.
But the google sheet which pass the data is not the one I set  in the env file.
REACT_APP_GOOGLE_SHEETS_DOC_ID looks ignored.
I might have put wrong setting about google cloud platform.

Finally, succeeded!  Now it is perfectly working!
It was just a careless mistake.
There were two .env file on the root and src.
I were not aware of it, so I confused.

great! glad you figured it out. for anyone else facing the same issue and getting here, the .env file is traditionally placed at the root folder level. but different projects can have different structures. however, the core requirement stays the same -- however you set up the environment variables, they should be accessible through process.env.

【Not question】
I deeply appreciate it!
By the way, I traslated your medium article about Metis into Japanese.
And published it on the "Qiita" ,which is the largest blog platform for engineer of the Japan(Maybe it's similar to reddit)
https://qiita.com/newt0/items/4039c5662fe41cb95bd3
Thank you for awesome library and being nice, again!

that's awfully nice of you! thanks so much!


Can Impeller be disabled by default?

Use case
Failed to send request: {"jsonrpc":"2.0","id":"26","method":"getMemoryUsage","params":{"isolateId":"isolates/430315217091623"}}
Exception: Unable to terminate com.***.*** on DEC7A7D2-0B3F-......:
ProcessException: Process exited abnormally:

  Command: xcrun simctl terminate DEC7A7D2-0B3F-...... com.***.***
the Dart compiler exited unexpectedly.

Proposal
There are two solutions according to the reference document
1.Add startup parameters: --no-enable-impeller
2.Modify the Info.plist file
<key>FLTEnableImpeller</key>
<false/>

This modification can indeed solve the problem, but I personally think it would be a bit cumbersome to modify it every time I create a new project. Is there any way to do it once and for all? For example: Are there any global configuration parameters?
In addition, will this problem only appear on the IOS simulator or will it also appear on real machines with lower system versions? If Impeller is disabled in Info.plist, will it affect the performance of the release version of the application on the real machine?
Modify the Info.plist file
<key>FLTEnableImpeller</key>
<false/>

There is no supported method to globally disable Impeller, and we plan to remove the Skia backed from iOS builds later this year.
I don't know what the issue you're facing is though, so I can't give you any guidance on a workaround.

Skia

after removing Skia, will the Impeller be optimized for the above error when running on the simulator? Or now the new version has fixed the problem, currently my flutter version is 3.16.x

You haven't posted any information that would allow us to diagnose an error.

Failed to send request: {"jsonrpc":"2.0","id":"26","method":"getMemoryUsage","params":{"isolateId":"isolates/430315217091623"}}
Exception: Unable to terminate com.***.*** on DEC7A7D2-0B3F-......:
ProcessException: Process exited abnormally:

  Command: xcrun simctl terminate DEC7A7D2-0B3F-...... com.***.***
the Dart compiler exited unexpectedly.

i wrote about the problem and the current solution in the first paragraph

Those are just logs indiciating that the app exited. Please look at the issue template for examples of the information we'd need to diagnose a problem.

If you must submit information according to the template to solve I think it is better to forget it! Because this problem is easy to repeat and not only I have encountered, because the solution of shutting down the impeller is provided by another user! I just think it's a hassle to make changes every time I create a new project!

Happy Coding!


gnomeExtension.impatience: unstable-2022-03-26 -> unstable-2023-04-04

Description of changes
Bump version, added support for gnome 44
Closes #248673

Things done

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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 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

[x] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/1016/70


WebSearch: search_unit_in_solr to respect quotes

Currently, as soon as one uses the fulltext index backed by SOLR to search for a word containing a quote or a double quote, SOLR receives an invalid query and crashes.
  File "invenio/search_engine.py", line 2379, in search_unit
    return search_unit_in_solr(p, f, m)
  File "invenio/search_engine.py", line 2862, in search_unit_in_solr
    return solr_get_bitset(f, p)
  File "invenio/solrutils_bibindex_searcher.py", line 74, in solr_get_bitset
    u = SOLRUTILS_OPENER.open(invenio_query_url)
  File "python2.6/urllib2.py", line 397, in open
    response = meth(req, response)
  File "python2.6/urllib2.py", line 510, in http_response
    'http', request, response, code, msg, hdrs)
  File "python2.6/urllib2.py", line 435, in error
    return self._call_chain(*args)
  File "python2.6/urllib2.py", line 369, in _call_chain
    result = func(*args)
  File "python2.6/urllib2.py", line 518, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)

This happens because:
def search_unit_in_solr(p, f=None, m=None):
    """
    Query a Solr index and return an intbitset corresponding
    to the result.  Parameters (p,f,m) are usual search unit ones.
    """
    if m and (m == 'a' or m == 'r'): # phrase/regexp query
        if p.startswith('%') and p.endswith('%'):
            p = p[1:-1] # fix for partial phrase
        p = '"' + p + '"'
    return solr_get_bitset(f, p)

doesn't properly handle quotes.

Do you have concrete use case?  I'm asking because the following query:
fulltext:O'Connell

works well on CDS, including snippets.

When I investigated this last in the far past, I recall that I saw the issue happening in advanced search where one of the p1..3 is such a query with a quote (single or double). If that helps.


[FIXED] self.class returns Class and self returns App.

Describe the change
Fix bug into "1.1 app" example.
Change method:
class App
  ..
  def self.config
    @config ||= self.class.new.config
  end
end

by this new one:
class App
  ..
  def self.config
    @config ||= self.new.config
  end
end

Why?
Because "config" method exists on App class or App instances but no on Class class.

Thanks!


Does POST request create a entry in the DB?

I need to TEST a POST request that should create an entry in the DB for every request.

no details here... closing.


iOS badge number

There's no way to update the app icon badge number, like in the previous version with setApplicationIconBadgeNumber?

@sebrojas14 I added the "setApplicationIconBadgeNumber" back into the JS. I'll update the docs soon. You can test it out by grabbing it from the from this repo.

Fixed for 1.1.0 release.


Ensure name uniqueness for auto-complete and toolbox snippets

when generating snippets for auto-complete  or toolbox, track when we introduce new definitions so that we can make sure we regenerate those snippets when names might have changed.
I believe this regression was introduced as a side effect of better caching of symbol info between intellisense calls. Really snippets are very stateful and so we need extra info to know when to invalidate them.
Fixes: https://github.com/microsoft/pxt-microbit/issues/3068
Fixes: https://github.com/microsoft/pxt-microbit/issues/3074

Is there any way to add tests for those?

I started making one, but then I realize it wouldn't have caught the last regression. It's possible to create some tests but they'd only guard against certain regressions and wouldn't help new feature development much because in this case it'd be very specific to name-uniqueness. Didn't seem like it was worth it. Still keeping it in mind though and if I think of a better or more general set of tests I'd like to add them


Fix Null Reference when navigating away from map page

Should be a fix for this bug:
https://github.com/amay077/Xamarin.Forms.GoogleMaps/issues/281

also fix for https://github.com/amay077/Xamarin.Forms.GoogleMaps/issues/283

Thanks!!!


Set api key

Okay, this time it's the final branch change for the PR. Sorry about that!

@jpw123 Are you aware of any situation where the wunderground_get_api_key() function wouldn't be available?

@jpw123 I've decided to do it a bit differently; I didn't want to modify the existing order of the parameters of the Wunderground_Request class, and the logic was a bit complex. Now you can set a constant, and override that or the default using a filter.
Thanks for your help on this! I hope you contribute again in the future.

Makes sense, much better this way. Thanks for the great plugin.


genus name abbreviations not always applied

@bmesuere I have uploaded the following two custom proteomes into the Peptidome Analysis tools of Unipept:

Acinetobacter baumannii AC30
Acinetobacter baumannii NCGM 237

However, only the genus name of the second proteome is abbreviated into A., whereas the name of the first proteome is not abbreviated at all. What is the reason for this?
Original issue by @pdawyndt on Tue Apr 07 2015 at 13:25.
Closed by @bmesuere on Tue Apr 07 2015 at 14:50.

@bmesuere I've tried it again, and when I include a genome with the name "Acinetobacter baumannii NCGM 237", it is spelled in full in the list of analyzed genomes, but it is spelled as "A. baumannii NCGM 237" both in the clustering tool and the Unique Peptide Finder. The genome named "Acinetobacter baumannii AC30" was never abbreviated.
Original comment by @pdawyndt on Tue Apr 07 2015 at 14:32.

The names of custom genomes should never be abbreviated since we don't know if the user entered a species name of something like "genome A42".
I can't reproduce this in the production version. Are you sure you added 2 custom genomes?
Original comment by @bmesuere on Tue Apr 07 2015 at 14:07.

I reviewed the code and custom names aren't abbreviated except if the name is longer 30 chars. The idea behind not abbreviating custom names is that you can always abbreviate yourself where needed.
I can remove the length exception to make things more consistent.
Original comment by @bmesuere on Tue Apr 07 2015 at 14:41.

@bmesuere Given that I was surprised to see different behaviour for two custom proteomes, I believe it would be more transparent to remove the length abbreviation.
Original comment by @pdawyndt on Tue Apr 07 2015 at 14:47.


Remove unused import

PR Checklist

[x] A description of the changes is added to the description of this PR.
[ ] If there is a related issue, make sure it is linked to this PR.
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If you've added or modified a feature, documentation in docs is updated

Description of changes
Remove unused import

Please combine this and the other 3 PRs into one 🙏

https://github.com/unitycatalog/unitycatalog/pull/636
https://github.com/unitycatalog/unitycatalog/pull/635
https://github.com/unitycatalog/unitycatalog/pull/634


Allow Parse.ACL() constructor without arguments

According to the Parse SDK docs the constructor for Parse.ACL can be called with no arguments:

Creates a new ACL. If no argument is given, the ACL has no permissions for anyone. If the argument is a Parse.User, the ACL will have read and write permission for only that user. If the argument is any other JSON object, that object will be interpretted as a serialized ACL created with toJSON().

But at the moment the constructor is typed as:
declare class $npm$parse$ParseACL {
  //...
  constructor(arg1: $npm$parse$ParseUser | $npm$parse$ByIdMap): $npm$parse$ParseACL
  //...

 • Or undefined [1] is incompatible with $npm$parse$ByIdMap [3].

        src/file.js
         15│
    [1]  16│   const acl = new Parse.ACL();
         17│   acl.setPublicReadAccess(false);
         18│   acl.setPublicWriteAccess(false);
         19│   object.setACL(acl);

        flow-typed/npm/parse_v1.9.x.js
 [2][3] 231│   constructor(arg1: $npm$parse$ParseUser | $npm$parse$ByIdMap): $npm$parse$ParseACL;

This PR makes the first constructor argument optional.

Still failing Travis tests, that'll need to be fixed before merging.

@AndrewSouthpaw It's actually passing, just the segfault is causing issues, so it's good to merge in.


Update _dsboot support for Glauca

Glauca now supports authenticated bootstrapping with _dsboot.

Cool. - As the table gives the impression that its contents are taken from the linked docs at https://docs.glauca.digital/domains/cds/, I suggest updating them as well.

I pushed this feature out late last night and haven't got round to writing docs on it yet. Writing docs at 11pm probably isn't the best idea.
I'll probably have time to get it sorted today.

Sorry, didn't mean to rush.

I've added some info on it to the docs now.


[RIP-10] ADD ScheduleMessageServiceTest

What is the purpose of the change
1.test buildRunningStatsTest
2.test computeDeliverTimestampTest , just test delayLeve(1:5s, 2:10s)
3.test delayLevel2QueueIdTest
4.test deliverDelayedMessageTimerTaskTest,include :

4.1 send delay message, delayLevel=1(5s)
4.2 pull message direct
4.3 pull message wait 6 seconds
4.4 compare message

Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage increased (+0.4%) to 45.185% when pulling 2a6159b4174bd831772fd1dca4169eefaf9e56e4 on ranqiqiang:develop into 6a573a773a87edbcdcc138614b756019fc280988 on apache:develop.

LGTM


Fix #2379: Make PreImageRevealInterval configurable

Required a slight refactoring otherwise I would have had to change the interface of getNextPreImage, which proved very ugly and inconvenient.

Added to the example config, originally missed it.

Thanks @linked0 , I went ahead and applied your suggestions and more.


DDNA 4.2.1+ iOSNotifications.cs backwards compatibility with Unity 4.7 missing

At two places in iOSNotifications.cs , the following line needs to be:
           #if UNITY_4_5 || UNITY_4_6
-->
           #if UNITY_4_5 || UNITY_4_6 || UNITY_4_7

Good spot.  We've added that into the latest patch.  Thank you.


Console errors thrown when model is null

When the model used in the textarea == null, error is thrown:
 TypeError: Cannot read property 'split' of null at e.splitLines
Is this an issue that only I am seeing? Should there perhaps be a null/undefined check in the simplemde.min.js file i am using?

Can you recreate this bug using JSFiddle?

I'll have a go, although i am new to JSFiddle :).
I'm using this within an angular app, and where ng-model is null, it throws this error.

I am getting a similar error... but not exact:
Unhandled exception at line 12, column 21300 in http://localhost:49366/Scripts/lib/simplemde.min.js
0x800a138f - JavaScript runtime error: Unable to get property 'split' of undefined or null reference

I get this when I attempt to set an initialValue(). I am using knockout.js in this case, and it only seems to be a problem within a popup dialog box during initialization.
My code is as follows:
        var simplemde = new SimpleMDE({
            element: element
        });

If I change it so that I set the .value() separately, I get a similar error, but less often.
If I change wrap the .value() call in a 500ms timeout, I rarely get the error.
If I wrap the .value() call in a 1sec timeout, I never get the error.
Example:
        var simplemde = new SimpleMDE({
            element: element
        });
        setTimeout(function () {
            simplemde.value(valueUnwrapped);
        }, 1000);

Going to post this as a separate issue so that it is more visible to others. Now I'm finding that even a 1sec timeout isn't enough in certain cases. I need this fixed or I can't use the module.


PTX-24254:Adding logic to validate pools for limit before expansion

What this PR does / why we need it:
Adding logic to validate pools for limit before expansion
Which issue(s) this PR fixes (optional)
Closes #PTX-24254
Special notes for your reviewer:
Result: https://aetos.pwx.purestorage.com/resultSet/testSetID/662781

Please check why the CBT is failing

@mkoppal-px torpedo-cbt passed. can u please approve


1.4.0-pre-5: Error 'charmap' codec can't encode character'

@Aetopia hi,
Downloaded and tested 1.4.0-pre-5 and I'm getting the following error:
An error has occured.
> 'charmap' codec can't encode character '\xc3' in position 255969: character maps to <undefined>

See screenshot below:

Log: "%TEMP%\nvddl.log":
INFO: Namespace: Namespace(help=False, list=False, download=None, extract=None, update=True, studio=False, standard=False, full=False, setup=False, components=[], output='F:\\Temp\\DVALSA~1', flags=[], no_stdout=False)
INFO: Arguments: ['-u']
ERROR: Exception: 'charmap' codec can't encode character '\xc3' in position 255969: character maps to <undefined>
INFO: Exiting...

Traceback: "%TEMP%\nvddl_traceback.txt"
Traceback (most recent call last):
  File "F:\Temp\DVALSA~1\ONEFIL~2\main.py", line 19, in main
  File "F:\Temp\DVALSA~1\ONEFIL~2\core\cli.py", line 89, in cli
  File "F:\Temp\DVALSA~1\ONEFIL~2\core\cli.py", line 112, in parse
  File "F:\Temp\DVALSA~1\ONEFIL~2\plugins\files.py", line 47, in fetch
  File "encodings\cp1253.py", line 19, in encode
UnicodeEncodeError: 'charmap' codec can't encode character '\xc3' in position 255969: character maps to <undefined>

Dimitrios

Looks like some encoding error.

Looks like some encoding error.

Could it be something on my side that I need to configure? Please, that it doesn't occur with the previous build.

No, I needed to enforce a UTF-8 Encoding on the dumped files.

@Aetopia this is fixed is pre-6. Another one, though, came up. I will log a new issue. Thank you!


Updated MDK tutorials to BAS - Part 1

Updated MDK tutorials to BAS
Mission 1: https://developers.sap.com/mission.mobile-dev-kit-get-started.html
Mission 2: https://developers.sap.com/mission.mobile-dev-kit-enhance.html

Also for remaining missions/tutorials


Suggestion: make the font weight and/or style more legible

Source Sans Pro at font-weight 300 is looking a bit light and hard to read. I would suggest bumping that up to 400 (regular weight). If the project owners are game, I can submit a PR for this :]

I agree. A PR would be great!


M1 Macbook Air base model, not injecting due to osxinj not working on big sur

@Lyceion do you have a big sur injector? osxinj might have been depricated after catalina

I'm using osxinj on big sur without any problem.

@Lyceion do you have a version of osxinj that you can send me that I can use?

@Lyceion update for m1 pls

Already works for m1. (if you have a m1 injector which doesn't about me)
WORKS ON M1 IF YOU HAVE INJECTOR WHICH I DONT PROVIDE
Proof from discord:

(Censored bc i'm sharing screenshot without their permission. I'm not sure they want to expose theirselfs.)

@Lyceion update for m1 pls

Already works for m1. (if you have a m1 injector which doesn't about me)
WORKS ON M1 IF YOU HAVE INJECTOR WHICH I DONT PROVIDE
Proof from discord:

(Censored bc i'm sharing screenshot without their permission. I'm not sure they want to expose theirselfs.)

can you share discord channel? @Lyceion

can you share discord channel? @Lyceion

Not public anymore. Sorry... But you can search other injectors which doesn't use process hjacking method can probably inject.

can you share discord channel? @Lyceion

Not public anymore. Sorry... But you can search other injectors which doesn't use process hjacking method can probably inject. (Which the method osxinj uses.)

Thanks man, i search "libButOSX.dylib" file can you send me? 😅

can you share discord channel? @Lyceion

Not public anymore. Sorry... But you can search other injectors which doesn't use process hjacking method can probably inject. (Which the method osxinj uses.)

Thanks man, i search "libButOSX.dylib" file can you send me? 😅

Removed from github because of uc rules. If you have uc account you can download from https://www.unknowncheats.me/forum/downloads.php?do=file&id=33979 . If you don't, mail me from<EMAIL_ADDRESS>i'm gonna send you one when i arrive home. Also you can speak Turkish. I'm also Turkish.

You can refer to this: aixxe.net/2016/09/shared-library-injection

This is for linux only @TheArmKing

This is for linux only @TheArmKing

With a few adjustments it can be made to work on macOS as well. You will need lldb instead of gdb

when I try to compile osxinj in xcode, it gives 2 errors:
Architecture not supported
Implicit declaration of function 'close' is invalid in C99
Using M1 Macbook Air

I fixed "Implicit declaration of function 'close' is invalid in C99" problem. @Hydrogen37 @Lyceion @TheArmKing
You need to include a library at the top of the mach_inject file.
Add #include <unistd.h> // for close after #include <fcntl.h> // for open  code.
However, there is still "Architecture not supported" error.

@Lyceion Hocam M1'de çalışan injectoru buldum. Ancak şimdide "libButOSX.dylib" çalışmıyor.

I fixed "Implicit declaration of function 'close' is invalid in C99" problem. @Hydrogen37 @Lyceion @TheArmKing
You need to include a library at the top of the mach_inject file.
Add #include <unistd.h> // for close after #include <fcntl.h> // for open code.
However, there is still "Architecture not supported" error.

did what you said, indeed fixed the C99 problem. Architecture not supported problem still unable to fix. @Lyceion

Fixing the C99 issue on osxinj won't help. However, this alternate method can be used to inject on M1 (via Terminal with lldb installed):
#thanks to aixxe.net/2016/09/shared-library-injection
sudo lldb --batch \
  -o "attach --name csgo_osx64" \
  -o "expr void* \$library = (void*)dlopen(\"/path/to/cheat.dylib\", 10)" \
  -o "detach" \
  -o "quit"

Taken from https://github.com/fakePh0e/osxGlow/blob/main/load.command

ButOSX does not work with this injector :(

ButOSX does not work with this injector :(

It will. Make sure you are running it correctly - the path to the dylib is correct and that the dylib is x86_64, not arm64.

@Lyceion update for m1 pls

Already works for m1. (if you have a m1 injector which doesn't about me)
WORKS ON M1 IF YOU HAVE INJECTOR WHICH I DONT PROVIDE
Proof from discord:

(Censored bc i'm sharing screenshot without their permission. I'm not sure they want to expose theirselfs.)

HI, please help me with the injection on m1

it freezes upon injection for m1 Mac using fakePh0e injector

injection now works but crashes here. see the debug

Thx, you ✅🤗

And you can use this project: https://github.com/kotleni-reverse/csgo-run.
It's just support libs injecting.

And you can use this project: https://github.com/kotleni-reverse/csgo-run.
It's just support libs injecting.

Hi @kotleni . I went to the project you linked, but was unable to figure out how to make it work. I downloaded the zip file, and then copy and pasted the Makefile code for OSX in terminal. This process was successful as it made the csgo_osx64 Unix Executable File. However, I started experiencing issues from this point forward. I don't know how to inject this file at all. I have read the readme.md file given and tried many different injecting options as well, but I feel like I am doing it wrong. Can you please tell me what I need to write in terminal so that I can inject the file? Thank you so much.

You can replace original file csgo_osx64 in csgo game directory (Like: Steam -> CSGO -> Settings -> Additional -> Open game directory). And you can see it video: https://youtu.be/NVNAeQIqQIo

And you can use this project: https://github.com/kotleni-reverse/csgo-run.

It's just support libs injecting.

Hi @kotleni . I went to the project you linked, but was unable to figure out how to make it work. I downloaded the zip file, and then copy and pasted the Makefile code for OSX in terminal. This process was successful as it made the csgo_osx64 Unix Executable File. However, I started experiencing issues from this point forward. I don't know how to inject this file at all. I have read the readme.md file given and tried many different injecting options as well, but I feel like I am doing it wrong. Can you please tell me what I need to write in terminal so that I can inject the file? Thank you so much.

You can replace original file csgo_osx64 in csgo game directory (Like: Steam -> CSGO -> Game settings (Gear icon) -> Additional -> Open game directory).

Set game custom command line arguments to -inj <lib> -injdelay <secs> (recommended 70 secs). (Like: Steam -> CSGO -> Game settings (Gear icon) -> General -> Command line arguments)

And you can see it video: https://youtu.be/NVNAeQIqQIo

@kotleni Wow, ok got it thank you so much. I just want to ensure that replacing the original file will not cause a ban. I have 3 more questions for you.

Is there a way to inject without replacing the original file like the ButOSX dylib but with the original game file?

Also, where did you get the ButOSX dylib file? Can you send it to me, please?

I have been using fakePh0e injector, which has been working so far as a simple glow hack, but after the new CS:GO update a couple of days ago, I can still inject without any issues, but the glow hack doesn't work. Is there a way this can be updated, perhaps?

Thank you once again.

I used this modified file, and I didn't get banned. And all custom external injectors is broken now on MacOS.
It's works for me now, after game updating. 👀

And you can use this project: https://github.com/kotleni-reverse/csgo-run.

It's just support libs injecting.

Hi @kotleni . I went to the project you linked, but was unable to figure out how to make it work. I downloaded the zip file, and then copy and pasted the Makefile code for OSX in terminal. This process was successful as it made the csgo_osx64 Unix Executable File. However, I started experiencing issues from this point forward. I don't know how to inject this file at all. I have read the readme.md file given and tried many different injecting options as well, but I feel like I am doing it wrong. Can you please tell me what I need to write in terminal so that I can inject the file? Thank you so much.

You can replace original file csgo_osx64 in csgo game directory (Like: Steam -> CSGO -> Game settings (Gear icon) -> Additional -> Open game directory).

Set game custom command line arguments to -inj <lib> -injdelay <secs> (recommended 70 secs). (Like: Steam -> CSGO -> Game settings (Gear icon) -> General -> Command line arguments)

And you can see it video: https://youtu.be/NVNAeQIqQIo

@kotleni Wow, ok got it thank you so much. I just want to ensure that replacing the original file will not cause a ban. I have 3 more questions for you.

Is there a way to inject without replacing the original file like the ButOSX dylib but with the original game file?

Also, where did you get the ButOSX dylib file? Can you send it to me, please?

I have been using fakePh0e injector, which has been working so far as a simple glow hack, but after the new CS:GO update a couple of days ago, I can still inject without any issues, but the glow hack doesn't work. Is there a way this can be updated, perhaps?

Thank you once again.

I used this modified file, and I didn't get banned. And all custom external injectors is broken now on MacOS.

It's works for me now, after game updating. 👀

@kotleni Ok understood, thank you. Can you please give me the libButOSX.dylib file as I do not have it but I saw you have it on your computer so I can work this? Thank you so much once again.

Yes, you have Telegram/Discord/Twitter?

And you can use this project: https://github.com/kotleni-reverse/csgo-run.

It's just support libs injecting.

Hi @kotleni . I went to the project you linked, but was unable to figure out how to make it work. I downloaded the zip file, and then copy and pasted the Makefile code for OSX in terminal. This process was successful as it made the csgo_osx64 Unix Executable File. However, I started experiencing issues from this point forward. I don't know how to inject this file at all. I have read the readme.md file given and tried many different injecting options as well, but I feel like I am doing it wrong. Can you please tell me what I need to write in terminal so that I can inject the file? Thank you so much.

You can replace original file csgo_osx64 in csgo game directory (Like: Steam -> CSGO -> Game settings (Gear icon) -> Additional -> Open game directory).

Set game custom command line arguments to -inj <lib> -injdelay <secs> (recommended 70 secs). (Like: Steam -> CSGO -> Game settings (Gear icon) -> General -> Command line arguments)

And you can see it video: https://youtu.be/NVNAeQIqQIo

@kotleni Wow, ok got it thank you so much. I just want to ensure that replacing the original file will not cause a ban. I have 3 more questions for you.

Is there a way to inject without replacing the original file like the ButOSX dylib but with the original game file?

Also, where did you get the ButOSX dylib file? Can you send it to me, please?

I have been using fakePh0e injector, which has been working so far as a simple glow hack, but after the new CS:GO update a couple of days ago, I can still inject without any issues, but the glow hack doesn't work. Is there a way this can be updated, perhaps?

Thank you once again.

I used this modified file, and I didn't get banned. And all custom external injectors is broken now on MacOS.

It's works for me now, after game updating. 👀

@kotleni Ok understood, thank you. Can you please give me the libButOSX.dylib file as I do not have it but I saw you have it on your computer so I can work this? Thank you so much once again.

Yes, you have Telegram/Discord/Twitter?

Yes, my discord is dexator5#3108
Thank you so much once again bro I really appreciate it!

Sorry, i can't find you in Discord.
Text me: kotleni#7119

Fixing the C99 issue on osxinj won't help. However, this alternate method can be used to inject on M1 (via Terminal with lldb installed):
#thanks to aixxe.net/2016/09/shared-library-injection
sudo lldb --batch \
  -o "attach --name csgo_osx64" \
  -o "expr void* \$library = (void*)dlopen(\"/path/to/cheat.dylib\", 10)" \
  -o "detach" \
  -o "quit"

Taken from https://github.com/fakePh0e/osxGlow/blob/main/load.command

I have this error - error: attach failed: more than one process named csgo_osx64:

hi, i downloaded everything needed, i put it into the launch preferences and when i click play, with turns blue and says stop. it stays stuck, and i have to forcequit to rejoin


Hack Request - Pull the goalie in game without hitting pause

User story
Request for the ability to pull the goalie during game play with the L + R buttons.
Possible Solution

[ ] Identify the memory locations for the home and away goalies
[ ] Identify loop during game play to hijack for new code
[ ] Overwrite goalie values in the new code
[ ] Mesen Trace File

Actual Solution

[ ] Memory location Word $17AA for home goalie, $17AC for away goalie
[ ] FF FF indicates no goalie
[ ] 9ED0BF is part of game loop that can be hijacked
[ ] Jump to 9FD407 causes the action to happen

Acceptance criteria

[ ] Game Play - Pressing L + R buttons, the goalie should be pulled for the team that performs the action and the extra attacker should come on to the ice.
[ ] Game Play - Pressing L + R when the goalie is already pulled, should put the teams starting goalie back in net.
[ ] Pause Menu - Should display "Goalie - None" if the goalie is pulled when hitting pause
[ ] Updated SNES NHL94 ROM-RAM Mapping Project with any new values.
[ ] DiztinGUIsh DizRaw file is up to date and has any necessary comments with changes.
[ ] Provided brief description of the actual changes (Solution) performed.

Sprint Ready Checklist

[ ] Acceptance criteria defined.

[ ] Identified solution / steps to satisfy acceptance criteria.

[ ] Acceptance criteria is verifiable / testable.

This is working, but the code is ugly, and needs to be cleaned up.


Incorrect command provided for fetching IMDs data in Linux

The command specifies "curl -s Metadata:true" but instead, it should be "curl -H Metadata:true" to specify the header.
Running it with "-s" parameter is:
{ "error": "Bad request: . Required metadata header not specified" }
Running it with "-H" parameter gives the correct output.

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

ID: 3a241549-82c0-6895-b410-b107a57c7540
Version Independent ID: 5bab39b4-9ff3-5bd9-46d5-17ee009940e0
Content: Azure Instance Metadata Service for Linux - Azure Virtual Machines
Content Source: articles/virtual-machines/linux/instance-metadata-service.md
Service: virtual-machines
GitHub Login: @KumariSupriya
Microsoft Alias: sukumari

thanks for bringing this to our attention. I have assigned the issue to the content author to evaluate and update as appropriate

Fixed in latest iteration

close

#close

#please-close


Substrate and SCALE code features

make SCALE serde support for these.

can be encoded and decoded using SCALE
can be built with no_std

will donate 2 DOT.


"cwebp-103-linux-x86-64-static" is supposed to be free from dependencies - but it seems not!

@robots4life got this in the error log:
cwebp-linux-1.0.2-static: error while loading shared libraries: libjpeg.so.8: cannot open shared object file: No such file or directory

and ldd cwebp-linux-1.0.2-static produces the following output (and 1.0.3 does as well):
linux-vdso.so.1 =>  (0x00007ffcaab02000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f694c987000)
libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f694c72e000)
libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f694c509000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f694c2ec000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f694bf22000)
/lib64/ld-linux-x86-64.so.2 (0x00007f694cc90000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f694bd08000)

Five of these are apparently okay (they are also appear when doing ldd cwebp-061-linux-x86-64). Filtering these out, we get the following problematic dependencies:
libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f694c72e000)
libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f694c509000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f694bd08000)

I see that configure has some options that might be relevant: "--with-jpegincludedir" and "--with-jpeglibdir".
And I found this:
https://stackoverflow.com/questions/53863210/what-flags-do-i-need-to-set-to-be-able-to-statically-link-libwebp-1-0-0-with-pro

Can somebody help me out here?

Seems I misunderstood a couple of things. I'm not at all used to mess around with this stuff.
This answer helped me understand what "shared library" means in contrast to "executable".
And here I got a little better understanding of the difference between static and shared libraries.
Yes, I admit, I'm at base level here!
The precompiled cwebp for linux comes as a executable for 0.6.0, but as a shared library for 1.0.3. However, both are actually dynamically linked, as can be revealed with the file command:
file cwebp-061-linux-x86-64
cwebp-061-linux-x86-64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.24, BuildID[sha1]=5182f331a2217aa67c236db805802c50fc1efbfa, stripped

file cwebp-103-linux-x86-64
cwebp-103-linux-x86-64: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=a746459e6544ab2ac32000f8fa0091e4dcd483b9, stripped

I'm guessing all this will boil down to that we don't need a statically linked executable for linux.

Related to #196

Keeping the statically linked 1.03 for linux.


Support for session object serialization filters

Currently the library does not offer the ability to filter which objects are allowed to be deserialized from sessions.
This can, potentially, allow an attacker to inject arbitrarily serialized Java objects in the session, which would then get deserialized and potentially lead to remote code execution.
In addition, if a third party ObjectInputFilter is applied over the underlying ObjectInputStream, depending on the filter configuration, it can suppose that certain attributes of the session are rejected.
Please, see this related stackoverflow question and this associated answer.
I created a fork of the problem to show a possible solution to the problem, a WIP, just to get the idea. If you consider it appropriate, I can improve the forked code and submit a pull request.

Please, can you provide some feedback about the issue?

inject arbitrarily serialized Java objects in the session

Do mean by modifying the data in the Redis instance? Or submitting it in a web form?


fix: refactor PortableTextEditor from class component to functional component

This allows it to be optimized, and helps us better guard against race conditions and lifecycle issues.

Thank you for this PR. I have a similar idea I'm pursuing (with the same end goal, but without breaking changes), so I'll close this PR for now and hopefully open one similar soon.


Update references to GQL to be compatible with graphql-core > 3

Bring project up to date with graphql-core 3 (which used to be graphql-core-next)
Fixes #1

@dfee Given that this PR has been open for 6 months, are you no longer interested in maintaining this project? I may be able to take it off your hands. I don't think graphql-ws is likely to upgrade to graphql-core>=3 any time soon (looking into the possibility now in https://github.com/graphql-python/graphql-ws/issues/90).

@dfee I've set up a fork here https://github.com/dls-controls/graphql-ws-aiohttp (just sorting out the git history because I seem to have wiped it). Comments/objections welcome.


Cache manager creation event is not logged

Client version:
Implementation-Version: 3.2.0-SNAPSHOT<PHONE_NUMBER>d604c762ead57db1e71f9
 d6d74367f

cache manager creation event is not logged by Active/Passive entity

Can you describe the kind of information you think is relevant and that you would want to see logged?

Expecting following validations when user creates cachemanager on cluster with passive(s)

On success, a simple event log (preferably INFO mode) like "EVENT: cachemanager mycache created" on both active and passive would do.
-On failure, event failure logged on Active without any trace on passive.

Pretty sure entity creation is logged on the servers already.


Allow to disable the identity map or override UnitOfWork

Hello. I'm surprised nobody asked about this before.
When dealing with existing codebase and trying to migrate it to using Doctrine, it's hard to do that immediately, in one commit. A more realistic approach is to start using Doctrine for new classes/tables, and gradually move the rest of the classes and queries later.
The problem with that approach is that Doctrine's identity map assumes that all database writes happen through it. Consider the following code:
$user = getUserWithDoctrine($user_id);
// ...
updateUserWithPdo($user_id, $new_user_fields);
// ...
$user2 = getUserWithDoctrine($user_id);

Doctrine's identity map won't know anything about the update query that was made directly using PDO and return the same object (without the latest changes). This is very counter-intuitive, especially if these reads and writes are situated in different parts of the codebase.
One workaround is to always clear the entity manager before executing read queries (methods like find(), etc.) However, that makes the code more bloated, as well as a bit slower.
Other concerns that have to do with identity mapping are increased memory usage and using stale data when rows are updated in the database by other scripts.
Hopefully by now I made my case that there's at least some situations where disabling identity map is beneficial. Even without it Doctrine has plenty of features to be extremely useful in projects.
Surprisingly, Doctrine currently provides no way of disabling the identity map or overriding UnitOfWork. Field $unitOfWork in the EntityManager class is private and has no setters. It gets set in EntityManager's constructor and it's always set to a new instance of \Doctrine\ORM\UnitOfWork (hardcoded).
Will appreciate your feedback!

Doctrine's identity map won't know anything about the update query that was made directly using PDO and return the same object (without the latest changes). This is very counter-intuitive, especially if these reads and writes are situated in different parts of the codebase.

I, uhm, don't see it as counter-intuitive at all. Doctrine is not some sort of binary plugin for your database which can "monitor" all changes happening on any table in real-time. Even if you hacked PHP's internals so that PDO somehow "reported" what it was doing, you'd still be sunk if a change was made by another PHP-process, another web-host, or even just some guy using PhpMyAdmin.
In short, your example scenario can never be done safely, so Doctrine was never designed to try.

One workaround is to always clear the entity manager before executing read queries (methods like find(), etc.) However, that makes the code more bloated, as well as a bit slower.

I'm not sure that's a "workaround" as much as "the right thing to do": You've finished using doctrine for a unit-of-work, and you need to tell it so.

Hi, DHager, thanks for responding.

I'm not sure that's a "workaround" as much as "the right thing".

Is this what you're suggesting?
$entityManager->clear();
$user = $entityManager->find('User', 1234);

I can add a call to clear() before all find() calls in my code but it's more typing and less clean/readable code. And if we're always clearing the identity map before making find() calls, why use identity map in the first place? We can save a bunch of memory manipulations by not using the identity map.

Doctrine is not some sort of binary plugin for your database which can "monitor" all changes happening on any table in real-time.

That's not what I was suggesting. Precisely because this is impossible, Doctrine should allow to bypass the identity map, i.e. if I'm trying to get the same row from the database for the second time, don't assume it haven't changed compared to the last time (as explain in item 10.1 here: http://doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/unitofwork.html).

This is a duplicate of #5550.

@lzref what was the solution in this case for you? I also have a legacy project and try using Doctrine with legacy code (direct mysqli queries) and also experience the same problem.

@ekonoval it's really ingrained into Doctrine's code and Doctrine provides no easy way to override stuff. Doctrine uses hardcoded class names in many places so even if you extend some classes it's hard to make Doctrine use them.
So what we ended up doing is just clearing entity manager cache before important reads or after writes. Mostly this situation doesn't happen that often in real life code (reading an entity, then modifying the DB row outside of doctrine, then reading it again within the same PHP request). This situation does happen quite often in our unit tests though (because each test creates DB records it needs), but we added an automatic clear() after we save stuff there.

@lzref thanks for your reply! From your experience, would you recommend just use
$entityManager->clear();
$user = $entityManager->find('User', 1234);

or
$entityManager->clear('User');
$user = $entityManager->find('User', 1234);

@ekonoval it's really ingrained into Doctrine's code and Doctrine provides no easy way to override stuff. Doctrine uses hardcoded class names in many places so even if you extend some classes it's hard to make Doctrine use them.

Not just that: the codebase is not designed with swappable components in mind, and that on purpose. As I've already highlighted, #5550 may provide what you are looking for.
@ekonoval please don't use $entityManager->clear($entityName): we deprecated that for good reasons (see https://github.com/doctrine/doctrine2/issues/5855)

@Ocramius thanks for explanation, though haven't seen the deprecation anywhere. And what about detach($entity) , is it cool to use it?

is it cool to use it?

No: it brings in many other problems, as described in the linked https://github.com/doctrine/doctrine2/issues/5855


Fix the unsupported events

Add the InitEvent support.
Add the DataReceiveEvent support.
Add the SwcModeSwitchEvent support.

Fix with PR #7


Remove jtreg_7_1

jtreg 7.1.1+1 is added for JDK20+ (see https://github.com/adoptium/aqa-tests/issues/4190 ). We should remove the old jtreg_7_1 https://github.com/adoptium/TKG/blob/d5854d5d113835b850dc097a69c8edfb8d1679b2/scripts/getDependencies.pl#L146

Sure, thanks @vedant-z .

Hey @llxia I need to remove the older version of jtreg i.e. jtreg_7_1 from this file right? But this one is in another subrepo named TKG.
Let me know if I am on wrong path.

Yes, https://github.com/adoptium/TKG is part of AQAvit. Please see https://github.com/adoptium/aqa-tests/blob/master/Contributing.md#developer-resources

So should I remove the specific part from the given file and make a PR in TKG repository?


Hpe csi 1.4.1

Thanks submitting your Operator. Please check below list before you create your Pull Request.

Flat operator directory structure is obsolete from 23-rd of October 2019, only nested directory structure will be accepted.

New Submissions

[ ] Does your operator have nested directory structure?
[ ] Have you selected the Project Community Operator Submissions in your PR on the right-hand menu bar?
[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want use semantic versioning order?
[ ] Is your submission signed?

Updates to existing Operators

[ ] Did you create a ci.yaml file according to the update instructions?
[ ] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[ ] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[ ] Is your submission signed?

Your submission should not

[ ] Modify more than one operator
[ ] Modify an Operator you don't own
[ ] Rename an operator - please remove and add with a different name instead
[ ] Submit operators to both upstream-community-operators and community-operators at once
[ ] Modify any files outside the above mentioned folders
[ ] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[ ] Description about the managed Application and where to find more information
[ ] Features and capabilities of your Operator and how to use it
[ ] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[ ] Human readable name and 1-liner description about your Operator
[ ] Valid category name1
[ ] One of the pre-defined capability levels2
[ ] Links to the maintainer, source code and documentation
[ ] Example templates for all Custom Resource Definitions intended to be used
[ ] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

@J0zi  @mvalarh Can this PR be merged?

@J0zi  @mvalarh Can this PR be merged?

@J0zi Do you know why the operator hub still shows the older version of the operator ? The PR merged around 4hours ago.

@J0zi Do you know why the operator hub still shows the older version of the operator ? The PR merged around 4hours ago.