Pass channel group for HCP version validation

So far we were not passing the channel group when checking if a version was HCP validated, so effectively always checking the stable channel. In some cases, versions are enabled only in some channels, so we should honor the channel group parameter.
Related: OCM-2714
Issue is visible in production with 4.13.4.
% ocm get /api/clusters_mgmt/v1/versions/ -p search="raw_id='4.13.4'" | jq '.items[] | "\(.channel_group) \(.hosted_control_plane_enabled)"'
"stable false"
"candidate true"
"fast true"

Creation on candidate channel should not be rejected

fixed in https://github.com/openshift/rosa/pull/1354/files


Overhaul Documentation

This PR:

Add introduction pages for category links
Reorganize docs
Removes duplicated and unneeded docs

Fixes part of #2312

I haven't looked at this properly but in website build action there is a bunch of docosaurus warnings "Docs markdown link couldn't be resolved"

Can you confirm if the links are actually broken on the site as well? I checked and those paths seem to be correct. Not sure why there are warnings.


UINavigationController bug

I'm using a UINavigationController and triggering a modal segue to another view controller. The transition uses the top edge.
There is a bug that happens sometimes where when I go to perform the segue, the navigation controller's view will flicker and jump up behind the view that we are about to present.
I can't say for sure, but I have a feeling that this could be avoided by not altering the navigation controller's view at all, and instead using a snapshot view. I created an interactive transition from scratch earlier today and have been able to avoid this issue completely by creating a snapshot view with         UIApplication.sharedApplication().delegate?.window!!.snapshotViewAfterScreenUpdates(false)
I take a snapshot of the window to capture the nav bar, set the actual nav controller view to hidden, animate the snapshot view during the transition, and when the transition animation is done I unhide the real navigation controller view.
Unfortunately I don't have time to fully test this and submit a PR right now but hopefully this might help anyone else who comes across this problem.

I can't say for sure because I did this in my own custom transition after removing this library, but what I'm doing now is taking a snapshot view of the screen (including nav bar), and animating that instead of animating the nav controller's actual view.
If anyone else runs into this problem I would definitely try the snapshot method.


Add cache to bypass DB for frequent session lookup

In micro-benchmarking of the Hatrac object store, the time to obtain the existing session context almost doubles the total request time to find and serve small objects (such as pyramidal image tiles).  It is adding 3-4ms per request.  This has a big impact when doing bulk requests for lots of tiles.
Since there are not that many sessions, I think we can easily cache them in a Python data structure and consider them valid for short periods of time. We should make the time a configurable policy but I think values around 5-30s make sense.  The code should consult this look-aside cache before talking to the DB, and only talk to the DB when the entry in the cache is stale enough to warrant a validity check or to do a DB write to extend the session expiration time.

I think this will be handled as part of the new apache module and changing over to use that for hot-path authentication, right @ljpearlman ?

Right.

As I understand it, this caching is already implemented and awaits review as part of the overall apache module behavior...

I did a test install of mod_webauthn and confirmed that there is caching of the /authn/session resource, i.e. fewer requests on that resource are logged than the multiple protected resource requests made using a valid session.


Refactored app template review

See PRX/internal#696. Provide the results for this app in this issue.

[ ] CPU and memory for all task definitions
[ ] Desired count for all ECS services
[ ] Correct listener rules and priorities
[ ] All tags
[ ] Stack description
[ ] Log group retention
[ ] Alarms (missing alarms, unnecessary alarms, incorrectly configured alarms, etc)
[ ] Alarm names and descriptions
[ ] Look for anything that look problematic for multi-region (e.g., hard-coded regions, etc)
[ ] Environment variables moved from secrets to the template
[ ] Target group health checks and deregistration values
[ ] Missing resource/components (compare to old template)
[ ] TODOs and tktk


feat: SDA-2614 (Implement native electron notifications)

Description
The feature that adds support for inline reply for notifications
SDA-2614
Solution Approach

Use Electron notification to display a notification
Create a helper to choose between custom/native notification
Bump SDA API version from 2.0.0 to 3.0.0
Remove remote module usage

Related PRs
List related PRs against other branches/repositories:

branch
PR

SFE-Lite
link

Notes: Add support for native electron notifications

@KiranNiranjan Looks like the unit tests are failing...


Support subtitles for parts and chapters

Support subtitles for parts and chapters (and perhaps other sections as well). Display the subtitle on a separate line in italic by default.

Related to https://github.com/asciidoctor/asciidoctor/issues/1493

I plan to support this using an inline role. If the title-separator document attribute is set, or the separator block attribute on the section title, the title will be partitioned. But it will still remain a single span of formatted text with a hard line break between the titles. You can then use the subtitle built-in role to configure the subtitle.
In other words, if you have something like this:
:title-separator: :

== Title: Subtitle

It will end up becoming this formatted text:
Title
Subtitle

So the subtitle is, in fact, still part of the title.
Adding a discrete element for a subtitle would have required a ton of rework, lots of caveats, and likely some breakage. So this is a reasonable compromise.


The tweet limit expanded to 280 characters

https://techcrunch.com/2017/11/07/twitter-officially-expands-its-character-count-to-280-starting-today/
https://www.engadget.com/2018/10/30/twitter-280-characters/
https://www.theverge.com/2018/2/8/16990308/twitter-280-character-tweet-length

split_tweet.py, line 4, def split_tweet(long_tweet, length=280):


GitHub Action build - Allow.XXXX values not available

Hi,
I am currently trying to build my .NET application using GitHub Actions, but during the build process, the application cannot find my custom Allow.XXXX values.
How can I generate the Allow file during the build process?
Thank you for your assistance.
Added custom Allow.Health value like this
AccessControl(
  "Authentication_Show_Permissions",
  Apply.ToThisEndpoint,
  "Health"
);

"Allow" does not contain a definition for "Health"

name: Deploy Dev

on: [push]

jobs:
  deploy-dev:
    runs-on: self-hosted

    env:
      DOTNET_INSTALL_DIR: 'C:/actions-runner/dotnet'

    steps:
      - name: Checkout repository
        uses: actions/checkout@v3
        with:
          fetch-depth: 0
          submodules: recursive

      - name: Setup .NET
        uses: actions/setup-dotnet@v3
        with:
          dotnet-version: 8.0.x

      - name: Restore dependencies
        run: dotnet restore .\XXX

      - name: Build with dotnet
        run: dotnet build --no-restore --configuration Release .\XXX

@dj-nitehawk Yes, local build working find with version: <IP_ADDRESS>-beta

Custom Allow values available locally

make sure you're using the laste FE version and try adding FastEndpoints.Attributes package to your API project and put a global using FastEndpoints.

if that doesn't help. going to need a minimalistic repro gh repository i can play with.

Sorry! Monday morning :D Had the necessary files in a "Log" folder :D => ignored from git.


-bash: mjml: command not found

So I'm following the MJML documentation for basic installation. I successfully install.  I run npm list in my project folder and MJML appears there.
However, when I run mjml -v the following error appears
-bash: mjml: command not found
Terminal output for when I run which Node
/usr/local/bin/node
Content of my .bashrc is empty at the moment. I previously added export PATH="$PATH:./node_modules/.bin" but this made no difference.
Using a Macbook air, High Sierra and Terminal.

Hi @ssosina
Weird, looks like a path issue. If you do a ./node_modules/.bin mjml -V what does it return ?

Thanks for the quick reply.
This is what I get
-bash: ./node_modules/.bin: No such file or directory
I uninstalled and attempted to reinstall. It doesn't load the node module files into the folder :/

Well did you done a folder like workspace and npm init inside it ?
Then you can do an npm install mjml and it should work in this folder.

Thats the first thing I usally do.

Created new folder on desktop test-email
Ran npm init
Ran npm install mjml
Ran npm list – I can see mjml and all it dependencies.
I can node modules folder now
Ran mjml -v result is -bash: mjml: command not found
Ran ./node_modules/.bin mjml -V result is -bash: ./node_modules/.bin: is a directory

Do I create .bash_profile or .bashrc on my platform?

You're missing a / in /node_modules/.bin/mjml
Can you echo $PATH too to check if the PATH is ok ?

I should have picked up on that.
Right it shows the version now –
Locals-MacBook-Air:test-email user$ ./node_modules/.bin/mjml -V
3.3.5

This is what I get when i get echo the path:
Locals-MacBook-Air:test-email user$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

I think it's a .bash_profile in OSX but I'm not 100% sure about it

@iRyusa Hmm. I added it to a bash_profile instead. even tried with bashr yet no difference.
check this out.
Locals-MacBook-Air:test-email user$ mjml -v
-bash: mjml: command not found
Locals-MacBook-Air:test-email user$ ./node_modules/.bin/mjml -V
3.3.5
Locals-MacBook-Air:test-email user$

Can you echo $PATH again to see if the path is ok
I now advise to follow the npm-exec path like this https://stackoverflow.com/questions/9679932/how-to-use-package-installed-locally-in-node-modules to avoid some kind of nasty package that could replace a common cmd line

Sure –
Locals-Air:test-email user$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:./node_modules/.bin

So
$ pwd
$ ls
$ echo $PATH
$ mjml -V

In order to double check everything ? :)

Locals-Air:~ user$ cd desktop
Locals-Air:desktop user$ cd fs-email
Locals-Air:test-email user$ pwd
/Users/user/desktop/test-email
Locals-Air:test-email user$ ls
test.html		index.html	node_modules
test.mjml		index.mjml	package.json
Locals-Air:test-email user$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Locals-Air:test-email user$ mjml -v
-bash: mjml: command not found
Locals-Air:test-email user$

Yeah so your $PATH isn't updated, I don't know why it doesn't read your bashrc/bashprofile and there's not really much we can do about this :/
Sorry, but I'm closing the issue.

Same issue here. Did you ever get this fixed?

If you've installed it locally just use npm-exec mjml or yarn mjml it's
now the safest way to use cli binary
On Wed, May 29, 2019 at 2:47 AM TidyIQ<EMAIL_ADDRESS>wrote:

Same issue here. Did you ever get this fixed?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/mjmlio/mjml/issues/885?email_source=notifications&email_token=AAELHTOVDUORW7YJU775FRTPXXHCBA5CNFSM4EDYV6AKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWN22PA#issuecomment-496741692,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAELHTOR26JOOJZVKKY7AP3PXXHCBANCNFSM4EDYV6AA
.

I too had this issue. Running mjml input.mjml -o output.html doesn't work.
However, in my package.json adding a command like "compile":"mjml input.mjml -o output.html" works

@kostimarko this worked for me, thanks for this!

However, in my package.json adding a command like "compile":"mjml input.mjml -o output.html" works

I too had this issue. Running mjml input.mjml -o output.html doesn't work.
However, in my package.json adding a command like "compile":"mjml input.mjml -o output.html" works

Hello, Kosti. Can you tell where exactly you put this command in package.jason ?

@sasha150187 From what it sounds like, I have a similar setup to @kostimarko. Put the script in the scripts section of package.json.
It'd look something like this:
// package.json
...
"scripts": {
    "start": // some other script,
    "compile": mjml input.mjml -o output.html
}
...

Newer npm comes with npx, so you should be able to do npx mjml too

@sasha150187 From what it sounds like, I have a similar setup to @kostimarko. Put the script in the scripts section of package.json.
It'd look something like this:
// package.json
...
"scripts": {
    "start": // some other script,
    "compile": mjml input.mjml -o output.html
}
...

@probablyabear you got to it before me :)


Updates to Mining disclaimer

I originally created https://github.com/blockstack/app.co/issues/608 to fix a request from legal, but then realized the FAQ data comes from docs. This PR implements the FAQ update.

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


Update poweshell5 recipe to check for latest revision

Powershell5 updated it's revision from 9701 to 10018, so the cookbook continually tries to install and errors because it already exists.

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
GitHub Users Who Are Not Authorized To Contribute
The following GitHub users do not appear to have signed a CLA:

@dpiessens

Please sign the CLA here.

Hi. Your friendly Curry bot here. Just letting you know that all commit authors have become authorized to contribute. I have added the "Signed CLA" label to this issue so it can easily be found in the future.

@dpiessens If you want to rebase this for the new attribute changes I'd love to get it merged in.  Also make sure to get the URL for the download file and the checksum updated to the latest buld.


Long custom validator names don't work

It seems like the custom validator names are limited to 15 characters, but I can't find any mention of it in the documentation. I'm not really sure why that would be the case. Is there a reason for this or some sort of bug?
Here's my code:
JS:
$(document).ready(function() {
        $('#exm1').validetta({
            validators: {
                callback: {
                    visibleRequired: {
                        callback:  function( el, value ) {
                          return false
                        },
                        errorMessage: "This message shows."
                    },
                    visibleRequiredAndSomeMoreWords: {
                        callback:  function( el, value ) {
                          return false
                        },
                        errorMessage: "This message shows does not show."
                    }
                }
            },
            realTime : true
        });
    });

HTML:
<form id="exm1" method="POST" action="#">

        Callback :
        <input type="text" name="callback" data-validetta="callback[visibleRequired]" />

        Callback :
        <input type="text" name="callback" data-validetta="callback[visibleRequiredAndSomeMoreWords]" />

    <button type="submit">Submit</button>
</form>

Hi @zeckdude
This issue will be solved in the next version. If you want a solution for the moment, change this line;
https://github.com/hsnaydd/validetta/blob/master/dist/validetta.js#L16
with this
https://github.com/hsnaydd/validetta/blob/develop/dist/validetta.js#L18
It is documented here. Check the warning block :)
Thank you.

Oops. I'm sorry. I looked that thing over and over. Thanks for the workaround.


64-bit back-end interface fails

This was reported by Salima
a test case should be created
if the problem exists it should be fixed
can the axi ram we have been using support 64-bits?

related to iob-soc #433

A CPU trap issue occurs when the backend data width is set to 64 instead of 32, when cache is in iob-soc
iob-soc issue iob-soc #433 has been closed

Hi，I've fonud a testcase you mentioned above:
the iob-cache's parameter set is:

if the software is this:
*(volatile int *)(0xf0088000) = 0x2;
if (*(volatile int *)(0xf0088000) != 0x2)
  uart0_putline("0xf0088000 fail\n");

then no fail msg uart will put.
However, if the software is this:
*(volatile int *)(0xf0088000) = 0x2;
*(volatile int *)(0xf0090000) = 0x3;
*(volatile int *)(0xf0098000) = 0x4;
if (*(volatile int *)(0xf0088000) != 0x2)
  uart0_putline("0xf0088000 fail\n");

error will happen:

the waveform:

Hi @spzeno , pls try branch fix#241 and let me know if it fixes the issue

Oops，seems like it failed as soon as the first time try to write


Use-after-free in OpenVPN IPC

I noticed for a couple of times that ubuntu CI fails randomly in the test phase. Since it uses OpenVPN to test, I used OpenVPN Connect on Win 7 to test against the master branch. Then I found this use-after-free just after being connected.
LOG: [HUB "VPN"] Connection "CID-4": The new session "SID-TEST-[OPENVPN_L3]-2" has been created. (IP address: x:x:x:x, Port number: 58051, Physical underlying protocol: "Legacy VPN - OPENVPN_L3")
LOG: [HUB "VPN"] Session "SID-TEST-[OPENVPN_L3]-2": The parameter has been set. Max number of TCP connections: 1, Use of encryption: Yes, Use of compression: No, Use of Half duplex communication: No, Timeout: 20 seconds.
IPC Hub Name: VPN
IPC: Session = SID-TEST-[OPENVPN_L3]-2, Connection = CID-4, Mac = CA-21-71-70-BE-C9
NewIPC() Succeed.
IPCDhcpAllocateIP() start...
LOG: [HUB "VPN"] Session "SID-TEST-[OPENVPN_L3]-2": VPN Client details: (Client product name: "OpenVPN Client", Client version: 502, Client build number: 5180, Server product name: "SoftEther VPN Server Developer Edition (64 bit) (Open Source)", Server version: 502, Server build number: 5180, Client OS name: "OpenVPN Client", Client OS version: "-", Client product ID: "-", Client host name: "08:00:27:e0:ed:e2", Client IP address: "x:x:x:x", Client port number: 58051, Server host name: "x:x:x:x", Server IP address: "x:x:x:x", Server port number: 1194, Proxy host name: "", Proxy IP address: "<IP_ADDRESS>", Proxy port number: 0, Virtual Hub name: "VPN", Client unique ID: "75EE2DBEA9C8ED4B545BD6BDD078C555")
SessionMain()
SessionMain: SID-TEST-[OPENVPN_L3]-2
VirtualDhcpServer(): <IP_ADDRESS> has been marked as pending for CA217170BEC9
Parsing for DHCP awaiter
LOG: [HUB "VPN"] SecureNAT: The DHCP entry 1 has been created. MAC address: CA-21-71-70-BE-C9, IP address: <IP_ADDRESS>, host name: 08:00:27:e0:ed:e2, expiration span: 7200 seconds
VirtualDhcpServer(): <IP_ADDRESS> has been assigned to CA217170BEC9
DHCP Allocated; dhcp server: 5E-7A-FE-8A-CB-A2, client: CA-21-71-70-BE-C9, new_ip: <IP_ADDRESS>
LOG: [HUB "VPN"] Session "SID-SECURENAT-1": The DHCP server of host "5E-7A-FE-8A-CB-A2" (<IP_ADDRESS>) on this session allocated, for host "SID-TEST-[OPENVPN_L3]-2" on another session "CA-21-71-70-BE-C9", the new IP address <IP_ADDRESS>.
Parsing for DHCP awaiter
IPCDhcpAllocateIP() Ok.
OpenVPN Channel 0 Established (new key).
LOG: OpenVPN Session 1 (x:x:x:x:58051 -> x:x:x:x:1194) Channel 0: The channel becomes the established state.
LOG: OpenVPN Session 1 (x:x:x:x:58051 -> x:x:x:x:1194) Channel 0: The IP address and other network information parameters are set successfully.  At least in 5.01.9663 it was already there.
I am not sure if this is the reason that led to failure of the OpenVPN test.
This occurs when UnixSetSockEvent() is called after an IPC packet is sent by the server. It seems the socket event has been released by that time.
Any ideas?

L2TP and SSTP do not have this issue.

I've been chasing something like that https://github.com/SoftEtherVPN/SoftEtherVPN/issues/1222
seems, I hit 50% of success :) yes, I did several OpenVPN setup and no issue

if OpenVPN tests  you mean, for example https://dev.azure.com/SoftEther-VPN/SoftEther VPN/_build/results?buildId=599&view=logs&j=31a3e8ab-2fd3-5d19-7879-179df6dc3ec9&t=dab92b63-3bc2-5610-aa50-89671e4859db&l=550
I have feeling that it is my fault (not related to use after free), I should put --dev null --proto tcp --port 1194 --remote <IP_ADDRESS> after --config
thanks, I'll do

Yes it's absolutely possible that these are different issues.

I found one thing suspicious.
In SetTubeSockEvent(TUBE *t, SOCK_EVENT *e), we assign a new sock event e to tube t. The entire process is locked to avoid race condition.
https://github.com/SoftEtherVPN/SoftEtherVPN/blob/bf14817f1f09f8b8107b13add08f483ad99abb7c/src/Mayaqua/Network.c#L16587-L16612
But in TubeFlushEx(TUBE *t, bool force), we set sock events without locking:
https://github.com/SoftEtherVPN/SoftEtherVPN/blob/bf14817f1f09f8b8107b13add08f483ad99abb7c/src/Mayaqua/Network.c#L16747-L16770
After I added locks to the above function, I did not see the issue anymore.
Similarly, TubeSendEx2 also sets event without locking.
https://github.com/SoftEtherVPN/SoftEtherVPN/blob/bf14817f1f09f8b8107b13add08f483ad99abb7c/src/Mayaqua/Network.c#L16707-L16740
Do you guys think this is the right fix? @davidebeatrici  @chipitsine

Like this.
diff --git a/src/Mayaqua/Network.c b/src/Mayaqua/Network.c
index 4760b2b5..9ee9a10e 100644
--- a/src/Mayaqua/Network.c
+++ b/src/Mayaqua/Network.c
@@ -16732,8 +16732,12 @@ bool TubeSendEx2(TUBE *t, void *data, UINT size, void *header, bool no_flush, UI

        if (no_flush == false)
        {
-               Set(t->Event);
-               SetSockEvent(t->SockEvent);
+               Lock(t->Lock);^M
+               {^M
+                       Set(t->Event);^M
+                       SetSockEvent(t->SockEvent);^M
+               }^M
+               Unlock(t->Lock);^M
        }

        return true;
@@ -16765,8 +16769,12 @@ void TubeFlushEx(TUBE *t, bool force)
                }
        }

-       Set(t->Event);
-       SetSockEvent(t->SockEvent);
+       Lock(t->Lock);^M
+       {^M
+               Set(t->Event);^M
+               SetSockEvent(t->SockEvent);^M
+       }^M
+       Unlock(t->Lock);^M
 }

 // Receive the data from the tube (asynchronous)

I'm fine with fix as long as openvpn clients can connect and asan does not see use-after-free anymore

Honestly I do not know what SockEvent is.... So I am not sure about this fix. I do know that technically there is sort of race condition.
I added 3 debug lines to test.
diff --git a/src/Mayaqua/Network.c b/src/Mayaqua/Network.c
index 4760b2b5..cc04e2ee 100644
--- a/src/Mayaqua/Network.c
+++ b/src/Mayaqua/Network.c
@@ -10116,6 +10116,7 @@ void ReleaseSockEvent(SOCK_EVENT *event)

        if (Release(event->ref) == 0)
        {
+Debug("sockevent release %p\n", event);^M
                CleanupSockEvent(event);
        }
 }
@@ -16765,8 +16766,10 @@ void TubeFlushEx(TUBE *t, bool force)
                }
        }

+Debug("TubeFlush: before %p\n", t->SockEvent);^M
        Set(t->Event);
        SetSockEvent(t->SockEvent);
+Debug("TubeFlush: after %p\n", t->SockEvent);^M
 }

Then you can see the address 0x6040002f27e0 is flushed then released. But the flush never succeeded.
LOG: [HUB "VPN"] Session "SID-TEST-[OPENVPN_L3]-3": VPN Client details: (Client product name: "OpenVPN Client", Client version: 502, Client build number: 5180, Server product name: "SoftEther VPN Server Developer Edition (64 bit) (Open Source)", Server version: 502, Server build number: 5180, Client OS name: "OpenVPN Client", Client OS version: "-", Client product ID: "-", Client host name: "08:00:27:e0:ed:e2", Client IP address: "x:x:x:x", Client port number: 51896, Server host name: "x:x:x:x", Server IP address: "x:x:x:x", Server port number: 1194, Proxy host name: "", Proxy IP address: "<IP_ADDRESS>", Proxy port number: 0, Virtual Hub name: "VPN", Client unique ID: "75EE2DBEA9C8ED4B545BD6BDD078C555")
SessionMain()
SessionMain: SID-TEST-[OPENVPN_L3]-3
VirtualDhcpServer(): <IP_ADDRESS> has been marked as pending for CABF10E81885
TubeFlush: before 0x6040002be7e0
TubeFlush: after 0x6040002be7e0
TubeFlush: before 0x6040002f27e0
Parsing for DHCP awaiter
TubeFlush: before 0x6040002f26e0
TubeFlush: after 0x6040002f26e0
TubeFlush: after 0x6040002f27e0
LOG: [HUB "VPN"] SecureNAT: The DHCP entry 2 has been created. MAC address: CA-BF-10-E8-18-85, IP address: <IP_ADDRESS>, host name: 08:00:27:e0:ed:e2, expiration span: 7200 seconds
VirtualDhcpServer(): <IP_ADDRESS> has been assigned to CABF10E81885
DHCP Allocated; dhcp server: 5E-7A-FE-8A-CB-A2, client: CA-BF-10-E8-18-85, new_ip: <IP_ADDRESS>
LOG: [HUB "VPN"] Session "SID-SECURENAT-1": The DHCP server of host "5E-7A-FE-8A-CB-A2" (<IP_ADDRESS>) on this session allocated, for host "SID-TEST-[OPENVPN_L3]-3" on another session "CA-BF-10-E8-18-85", the new IP address <IP_ADDRESS>.
TubeFlush: before 0x6040002be7e0
TubeFlush: after 0x6040002be7e0
TubeFlush: before 0x6040002f27e0    *****START FLUSHING*****
Parsing for DHCP awaiter
IPCDhcpAllocateIP() Ok.
OpenVPN Channel 0 Established (new key).
LOG: OpenVPN Session 1 (x:x:x:x:51896 -> x:x:x:x:1194) Channel 0: The channel becomes the established state.
LOG: OpenVPN Session 1 (x:x:x:x:51896 -> x:x:x:x:1194) Channel 0: The IP address and other network information parameters are set successfully. IP Address of Client: <IP_ADDRESS>, Subnet Mask: <IP_ADDRESS>, Default Gateway: <IP_ADDRESS>, DNS Server 1: <IP_ADDRESS>, DNS Server 2: , WINS Server 1: , WINS Server 2:
Push Str: PUSH_REPLY,ping 3,ping-restart 30,topology subnet,ifconfig <IP_ADDRESS> <IP_ADDRESS>,dhcp-option DNS <IP_ADDRESS>,route-gateway <IP_ADDRESS>,redirect-gateway def1,block-outside-dns
LOG: OpenVPN Session 1 (x:x:x:x:51896 -> x:x:x:x:1194) Channel 0: The full strings replied: "PUSH_REPLY,ping 3,ping-restart 30,topology subnet,ifconfig <IP_ADDRESS> <IP_ADDRESS>,dhcp-option DNS <IP_ADDRESS>,route-gateway <IP_ADDRESS>,redirect-gateway def1,block-outside-dns"
sockevent release 0x6040002f27e0  *****RELEASED BEFORE FLUSHING COMPLETES*****
RawOut Fifo Size (c=0): 212
Sending Opcode=4
=================================================================
==16792==ERROR: AddressSanitizer: heap-use-after-free on address 0x6040002f27f8 at pc 0x7ffb4b84cb26 bp 0x7ffb46320eb0 sp 0x7ffb46320ea8
READ of size 4 at 0x6040002f27f8 thread T33
OvsProceccRecvPacket(): Received control packet.
For example:
https://github.com/SoftEtherVPN/SoftEtherVPN/blob/bf14817f1f09f8b8107b13add08f483ad99abb7c/src/Cedar/Proto.c#L712-L715

@domosekai , can you try thread sanitizer ?
apt install libtsan0
export CMAKE_FLAGS="-DCMAKE_C_FLAGS=-fsanitize=thread"
./configure
make -C build

that is what I'm going to try next weekend, because of race condition suspect.
personally, I tried thread sanitizer on another projects, I found it very noisy, lot of false positive.


Revert "Support #exception in Kernel.fail"

Reverts natalie-lang/natalie#1699

I got trigger happy with #1699 and merged with a failing spec. Gonna have to look at this again...


All references to Inkscape should be removed from the imported SVG scores

This is initially an issue in Moritz. Moritz must first get rid of the Inkscape references.
When the issue has been dealt with in Moritz, and the scores are written correctly, the Assistant Performer should parse the files accordingly. This should be a more efficient parse than the current one.

This has been done in Moritz. The Assistant Performer still plays the files correctly, since it never looks at the Inkscape data.


Add loadModel, loadScene variants with import settings

Adds the ability to specify import settings for loading scene and models
asynchronously. Unit test coming shortly.
GearVRF DCO signed off by: Nola Donato<EMAIL_ADDRESS>

Looks good. Planning to merge Wednesday morning.

@NolaDonato This pull request now includes changes from the Vulkan branch. See the "merge vk_shader_rebased with master" commit.

What should we do about this pull request?

I will make a new pull request with just the 3 files that actually implement the feature

replaced by #1243


No Link to Copy

Hey,
It doesn't generate a link I can copy after indicating what service to try (1,2,3 etc).
What component does it require to generate the links, other than the requirements?
Thanks

Can you send a screenshots?

@shittyfollower Thank you for reporting !
I can't told you now what to do give me more information where you work with it (debian / termux or ....).

@shittyfollower Thank you for reporting !
I can't told you now what to do give me more information where you work with it (debian / termux or ....).

I check the code and all the repository still work please when the link want be generated .
Go to this link Ngrok's Stat :
http://<IP_ADDRESS>:4040/status

Then copy the Https link and send it to the victim.
And thank you for Reporting the issue! ✌
Stay Safe 🙏

I check the code and all the repository still work please when the link want be generated .
Go to this link Ngrok's Stat :
http://<IP_ADDRESS>:4040/status

Then copy the Https link and send it to the victim.
And thank you for Reporting the issue! ✌
Stay Safe 🙏

http://<IP_ADDRESS>:4040/status

Hi,
http://<IP_ADDRESS>:4040/status isn't available now.

I check the code and all the repository still work please when the link want be generated .
Go to this link Ngrok's Stat :
http://<IP_ADDRESS>:4040/status

Then copy the Https link and send it to the victim.
And thank you for Reporting the issue! ✌
Stay Safe 🙏

Hi,
http://<IP_ADDRESS>:4040/status isn't available now.

Hy! @nosa999
I guess the ngrok Runner didn't install and that don't give you authority to the <IP_ADDRESS>:4040/status.
So you will do it Manually!
go to Official Ngrok website https://ngrok.com/download the download the zip file then extract the Runner, then copy it to Phisher directory and run bash Phisher.sh.
https://user-images.githubusercontent.com/52716203/107113309-7b503280-685e-11eb-8894-0c24caaad495.mp4
This is a video that the repository and the Phisher still work.
Stay Safe & happy Phishing! 💯

@yezz123 now it is fixed. You can check #9


chore: release v1.0.0-3

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Extend ItextElementData with validation message

Motivation
#55
Checklist

[ ] Code follows coding conventions held in this repo
[ ] Automated tests have been added
[ ] Tests are passing
[ ] Docs have been updated (if applicable)
[ ] Temporary settings (e.g. variables used during development and testing) have been reverted to defaults

How to test
If manual testing is required, what are the steps?

Any chance you could add some test validating that both the regex & error message are present? There currently isn't test for this as far as I know and it would be nice if that was covered.

The release should be 15.12. I can look into the test


"Clear the previous query on launch" has a flicker

Summary of the Pull Request
What is this about:
A user experiences a flicker from previous results when "Clear the previous query on launch" option is selected. It happens even if we clear results before a window collapse. Apparently, UI changes that were not applied before a window collapse are then applied when the window is opened again.
What is include in the PR:

Move ClearQueryCommand.Execute to windows collapse from OnActivated
Wait 100ms before collapsing the window so UI updates before collapsing and will not happen when the windows is opened again

How does someone test / validate:

Select Clear the previous query on launch in the settings
Try to search for something in PT Run
Relaunch PT Run and check that flicker is gone
Try different collapsing scenarios: click on the side, ESC key, Alt+Space again, open result, use result's context menu

Let me know if you know how to wait or force UI updates so we do not have to wait 100ms.
Quality Checklist

[X] Linked issue: #5616
[ ] Communication: I've discussed this with core contributors in the issue.
[ ] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[ ] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[X] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

The fix is not perfect, but it's still an improvement over the current flickering.
Let's merge it.

can we maybe lower the timer to .33 versus 100?

33ms vs 100ms

@crutkas
We tried 50ms and it does not always work.


Typescript validation issues when passing function to combiner

So This one was really weird for us to figure out and I think is best described in examples.  So below I made a bunch of test cases that show wrong params in all the ways we want to protect our selectors.
import {createSelector} from 'reselect';

interface TestState {
    someNumber: number | null,
    someString: string | null,
}

interface Object1 {
    str: string,
}
interface Object2 {
    num: number,
}

const getNumber = (state: TestState) => state.someNumber;
const getString = (state: TestState) => state.someString;

function generateObject1(str: string): Object1 {
    return {
        str,
    }
}
function generateObject2(num: number): Object2 {
    return {
        num,
    }
}
function generateComplexObject(num: number, subObject: Object1, subObject2: Object2): boolean {
    return true;
}

// ################ Tests ################

// Compact selector examples

// Doesn't error, but should because generateObject1 can't take null
const getObject1 = createSelector(
    [getString],
    generateObject1,
);

// Doesn't error, but should because generateObject2 can't take null
const getObject2 = createSelector(
    [getNumber],
    generateObject2
);

// Doesn't error, but should because mismatch of params
const getComplexObjectTest1 = createSelector(
    [getObject1],
    generateComplexObject
);

// Does error, but error is really weird and talks about "Object1 is not assignable to type number"
const getComplexObjectTest2 = createSelector(
    [
        getNumber,
        getObject1,
    ],
    generateComplexObject
);

// Doesn't error, but should because number can't be null
const getComplexObjectTest3 = createSelector(
    [
        getNumber,
        getObject1,
        getObject2,
    ],
    generateComplexObject
);

// Does error, but error is really weird and talks about "Object1 is not assignable to type number"
const getComplexObjectTest4 = createSelector(
    [
        getObject1,
        getNumber,
        getObject2,
    ],
    generateComplexObject
);

// Verbose selector examples

// Errors correctly, says str can't be null
const getVerboseObject1 = createSelector(
    [getString],
    (str) => generateObject1(str)
);

// Errors correctly, says num can't be null
const getVerboseObject2 = createSelector(
    [getNumber],
    (num) => generateObject2(num)
);

// Errors correctly
const getVerboseComplexObjectTest1 = createSelector(
    [getObject1],
    (obj1) => generateComplexObject(obj1)
);

// Errors correctly
const getVerboseComplexObjectTest2 = createSelector(
    [
        getNumber,
        getObject1,
    ],
    (num, obj1) => generateComplexObject(num, obj1)
);

// Errors correctly
const getVerboseComplexObjectTest3 = createSelector(
    [
        getNumber,
        getObject1,
        getObject2,
    ],
    (num, obj1, obj2) => generateComplexObject(num, obj1, obj2)
);

// Errors correctly
const getVerboseComplexObjectTest4 = createSelector(
    [
        getObject1,
        getNumber,
        getObject2,
    ],
    (num, obj1, obj2) => generateComplexObject(num, obj1, obj2)
);

We did find a workaround for now that accomplishes what we want with avoiding the param duplication and it gives perfect error messages.  But I am hoping that I can get help with why our expectations are wrong, or updated typings to support it.
workaround:
// This will error, but intentionally for the example situation above
const getSpreadComplexObject = createSelector(
    [
        getNumber,
        getObject1,
        getObject2,
    ],
    (...args) => generateComplexObject(...args)
);

Should be fixed by #486 .


cannot find loss function and optimizer

hi, could you please tell me where did you define the loss function and optimizer?

model.py: init_optimizer (Line 248)
model.py: update (Line 299)


RaspiBlitz Recovery Sheet

see https://github.com/rootzoll/raspiblitz/pull/864
add documentation about it and ask author to send also source file to create changes to the PDF in the future.

OK Sheet is now part of the v1.4 documentation ... moving issue to v1.5 to add the source file for future edits.

Source of file was commited: see PR #1089


Creating an outlines transformers model directly from a transformers object

Is your feature request related to a problem? Please describe.
Yes. I am fine tuning my own model (not using one from the hub). I want to be able to use it with Outlines. I am trying to create an outlines.models.transformers.Transformer object. In order to do this, I also must create an outlines.models.transformers.TransformerTokenizer object. I cannot import outlines.models.transformers.TransformerTokenizer since there is a naming conflict in the init.py of the models module.
Describe the solution you'd like
Some non-hacky way to create an outlines model object from a transformers model object. It would be nice if I could use the outlines.models.transformers function and just pass a model/tokenizer rather than a string. Alternatively you could make it so I can pass a regular transformers tokenizer to outlines.models.transformers.Transformer constructor rather than needing to first create an outlines.models.transformers.TransformerTokenizer.
Describe alternatives you've considered
Creating the outlines model using the outlines.models.transformers function and then updating its model property. I had memory overflow.

Wrong repo


lowered cuda dependency; there is no requirement for 7.5

Removes the cmake dependency on CUDA 7.5. There is no actual dependency and it prevents installation on the Tegra X1, which only supports 7.0 but supports cuDNN R5.

It seems to me that cudnn R5 requires CUDA 7.5. On the download page of cudnn it says that only cudnn R4 is available for CUDA 7.0.
Is cudnn R5 actually supported with CUDA 7.0 for other cards than the Tegra X1 ? because @ngimel actually made a commit to add this requirement in #193.

I think the RNN parts require 7.5
After installing with 7.0, run:
https://github.com/soumith/cudnn.torch/blob/master/test/test_rnn.lua
it probably will fail.

R5 is supported with CUDA 7.0 only on Tegra X1. There were several issues with people trying to run cudnn v5 with CUDA 7.0 driver and running into errors, so I made this commit.

@soumith, it's not cuda toolkit version, it's the driver version. cudnn v5 requires driver corresponding to 7.5.

So if there is no CUDA 7.5 dependency, maybe we can remove it and instead add a runtime check for the correct driver version?

@ngimel Is it sufficient to require driver version >=7000? That's the version with which it runs on my X1 board.

It's sufficient for X1 but insufficient for everything else (everything else needs 7.5 or even 8.0, depending on cudnn build, as it says on the downloads page)

added driver check at runtime with required version depending on the device.

@ngimel Do you still see any potential issues with the current PR?

Looks good, thanks!

@lukasc-ch can you add a check if cutorch has the driverVersion field to handle the case when you update cudnn with cutorch behind (which is very likely)

@szagoruyko good thinking :) added it.

Thanks Lukas!


Sonoma 14.6 WiFi is disabled !!!

WiFi Card info
BCM94360CS2

macOS Version

@yangbe
Please give to me more info:

Wi-Fi chipset (is it a Fenvi?)
Was Wi-Fi working prior to 14.6?
OpenCore or Clover? Version?
Are you following guidelines of the block March 2024: macOS Sonoma 14.4 breaks OCLP root patch?
Do you have OCLP 1.4.2 or newer?

Let me see your config.plist file.

Closing for now. It can be reopened if @yangbe posts anything more.


Supply current app id as default argument to Authorize.opted_in

https://github.com/algorand-devrel/beaker/blob/master/beaker/decorators.py#L274

Can i use Global.current_application_id into the opted_in function

Should be able to, are you finding thats not the case?

I meant for the issue.


Centroid result mismatch

Describe the bug
When reproducing example_composite.py for v2, the results for the "global plastic centroid" and "principle plastic centroid" differ between v2 and version 1.0.8.
To Reproduce
import sectionproperties.pre.sections as sections
from sectionproperties.pre.pre import Material
from sectionproperties.analysis.cross_section import Section

# create material properties
steel = Material(name='Steel', elastic_modulus=200e3, poissons_ratio=0.3,
                 yield_strength=500, color='grey')
timber = Material(name='Timber', elastic_modulus=8e3, poissons_ratio=0.35,
                  yield_strength=20, color='burlywood')

# create 310UB40.4
ub = sections.i_section(d=304, b=165, t_f=10.2, t_w=6.1, r=11.4, n_r=8, material=steel)

# create timber panel on top of the UB
panel = sections.rectangular_section(d=50, b=600, material=timber)
panel = panel.align_center(ub).align_to(ub, on="top")

# merge the two sections into one geometry object
geometry = sections.CompoundGeometry([ub, panel])

# create a mesh - use a mesh size of 5 for the UB, 20 for the panel
geometry.create_mesh(mesh_sizes=[5, 20])

# create a Section object
section = Section(geometry, time_info=True)
section.display_mesh_info()  # display the mesh information

# plot the mesh with coloured materials and a line transparency of 0.6
section.plot_mesh(materials=True, alpha=0.6)

# perform a geometric, warping and plastic analysis
section.calculate_geometric_properties()
section.calculate_warping_properties()
section.calculate_plastic_properties(verbose=True)

# perform a stress analysis with N = 100 kN, Mxx = 120 kN.m and Vy = 75 kN
stress_post = section.calculate_stress(N=-100e3, Mxx=-120e6, Vy=-75e3)

# print the results to the terminal
section.display_results()

# plot the centroids
section.plot_centroids()

stress_post.plot_stress_n_zz(pause=False)  # plot the axial stress
stress_post.plot_stress_m_zz(pause=False)  # plot the bending stress
stress_post.plot_stress_v_zxy()  # plot the shear stress

Section Properties:
...
x_pc     = 8.250000e+01
y_pc     = 1.326861e+02
...
x11_pc   = 8.250000e+01
y22_pc   = 1.326861e+02
...

Expected behaviour

Section Properties:
...
x_pc	 = 8.250000e+01
y_pc	 = 2.503607e+02
...
x11_pc	 = 8.250000e+01
y22_pc	 = 2.503607e+02
...

@Spectre5 Fully agree also. @normanrichardson, thanks for point this out.

I believe I found the root of this error in the very first line of PlasticSection.__init__(). I shift the "center" of the section to the origin by using the .align_center() method on the Geometry, which does not take in to account the differing materials.


HDXDSYS-1086 Add HNO freeform column to hapi-pipelines

Pull Request Test Coverage Report for Build<PHONE_NUMBER>2
Details

24 of 26 (92.31%)  changed or added relevant lines in 1 file are covered.
7 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.5%) to 93.03%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/hapi/pipelines/database/humanitarian_needs.py
24
26
92.31%

Files with Coverage Reduction
New Missed Lines
%

src/hapi/pipelines/database/admins.py
1
87.07%

src/hapi/pipelines/database/humanitarian_needs.py
6
92.45%

Totals

Change from base Build<PHONE_NUMBER>5:
-0.5%

Covered Lines:
1575

Relevant Lines:
1693

💛  - Coveralls


creating a nav bar for the instructions

creating a nav bar for the instructions and also making the instructions more clearer. I can solve these two issues, so can you please assign this to me?  and also I can also work on  setting up a rule that if the three aliens are not hit consecutively then the game is over. @YadavAkhileshh

@YadavAkhileshh can you please add the level label as well?


Reformat wherehows-dao to fix style check

No code change other than renaming

Coverage remained the same at 22.752% when pulling ec17a56a20536cc6b3a7a93aea3bf6077b2dcae9 on alyiwang:master into 9e84fcd7a39cdf04ed17470e7a025c2c38cd151c on linkedin:master.


Nice log

The following are automatically added:

Add reviewers from OWNER file (in the root of the repository) under reviewers section.
Set PR size label.
New issue is created for the PR.

Available user actions:

To mark PR as verified add !verified to a PR comment, to un-verify add !-verified to a PR comment.
Verified label removed on each new commit push.
To cherry pick a merged PR add !cherry-pick <target branch to cherry-pick to> to a PR comment.
To add a label by comment use !<label name>, to remove, use !-<label name>
Supported labels:
do-not-merge
verified
wip
lgtm
target-version-

!verified

!-verified

!cherry-pick dev3

Cherry-pick requested for unmerged PR: Nice log is not supported

!target-version-dev1

Cherry-picked PR Nice log into dev1


oom_disabled not working

OOM is always turned off on install. oom_disabled doesn't work.

Show the value, and your module debug logs for the server creation request. It would be disabled on the panel by default unless you overwrite it to false

"oom_disabled":false," on module debug logs. OOM is not marked as disabled but when server is created OOM is disabled on server.

Can you please share the module logs and the order template because I can't reproduce this

This is due to the panel ignoring the option, which as far as I'm aware should be fixed in v2.


Portable random number generator for testing.

The deep convection golden master fails intermittently even if the random number generator is seeded with the same value. Some randomness is added to the initial surface temperature.
For now the 5 tests affected by this are skipped with @test_skip and will show up as "Broken".
@christophernhill suggested using a portable random number generator: http://mitgcm.org/download/daily_snapshot/MITgcm/model/src/port_rand.F

Closing as I think we agreed that in this case it's better to load initial conditions from disk than add a portable random number generate as a utility.


Provides the function of right-clicking to quickly export bibtex text to the clipboard

~enhancement
Alongside a description of your problem/question/feature suggestion, please also include a support log ID.
In order to facilitate users to manage documents at any time, it is sometimes necessary to manually add new files, so it is not very convenient to re-export the bibtex file. It is recommended to provide the function of right-clicking the selected file and automatically exporting the bibtex content to the clipboard.
Thank you very much

Select file where? Outside zotero? An attachment in Zotero?

then we can paste @article to .bib file

I was confused because that's not a file. But zotero already has quick-copy functionality for this.

If I click on this option I can copy the following to my clipboard.
@inproceedings{choiAccurateEfficient2bit2019,   title     = {Accurate and Efficient 2-Bit Quantized Neural Networks},   booktitle = {Proceedings of Machine Learning and Systems},   author    = {Choi, Jungwook and Venkataramani, Swagath and Srinivasan, Vijayalakshmi (Viji) and Gopalakrishnan, Kailash and Wang, Zhuo and Chuang, Pierce},   editor    = {Talwalkar, A. and Smith, V. and Zaharia, M.},   year      = {2019},   volume    = {1},   pages     = {348--359} }
After that I can paste it into my bib file.

But that is what zotero's quick-cooy does, only it uses a key combination instead of a menu option. It seems to me what you want is standard zotero functionality.

Ok, I found a similar function in zotero
thank you again


Data model for storing revision history in FoundationDB

Introduction
This is a proposal for the storage of document revision history metadata as a set of KVs in FoundationDB.
Abstract
This design stores each edit branch as its own KV, and all of the edit branches are stored separately from the actual document data. Document reads can avoid retrieving this information, while writes can avoid retrieving the document body.
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
Terminology

Detailed Description
The size limits in FoundationDB preclude storing the entire revision tree as a single value; in pathological situations the tree could exceed 100KB. Rather, we propose to store each edit branch as a separate KV. Specifically, we create a "revisions" subdirectory in each database directory to store the revision trees with keys and values that look like
(“revisions”, DocID, NotDeleted, RevFormat, RevPosition, RevHash) = (Versionstamp, [ParentRev, GrandparentRev, …])
where the individual elements of the key and value are defined as follows:

DocID: the document ID
NotDeleted: \x00 if the leaf of the edit branch is deleted, \x01 otherwise
RevFormat: enum for the revision encoding being used, start at \x01 with this proposal
RevPosition: positive integer encoded using standard tuple layer encoding (signed, variable-length, order-preserving)
RevHash: 16 bytes uniquely identifying this revision
Versionstamp: the FoundationDB versionstamp associated with the last transaction that modified the document (NB: not necessarily the last edit to this branch).
[ParentRev, GrandparentRev, ...]: 16 byte identifiers of ancestors, up to 1000 by default

Limits
In order to stay compatible with FoundationDB size limits we need to prevent administrators from increasing _revs_limit beyond what we can fit into a single value. Suggest 4000 as a max.
Update Path
Multiple edit branches on a document are largely independent of one another in this design, but some coordination is required around the Versionstamp. Recall that the _changes feed includes each document exactly once, so we do not want to be able to extend different edit branches in parallel and end up adding both stamps to the feed. We address this by storing the Versionstamp only on the so-called "winning" branch. Other branches set this to null.
If a writer comes in and tries to extend a losing edit branch, it will find the Versionstamp to be null and will do an additional edit branch read to retrieve the winning branch. It can then compare both branches to see which one will be the winner following that edit, and can assign the new Versionstamp to that branch accordingly.
A writer attempting to delete the winning branch (i.e., setting NotDeleted to 0) will need to read two contiguous KVs, the one for the winner and the one right before it. If the branch before it will be the winner following the deletion then we move the storage of the new Versionstamp to it accordingly. If the tombstoned branch remains the winner for this document then we only update that branch.
A writer extending the winning branch with an updated document (the common case) will proceed reading just the one branch.
Summarizing the performance profile:

Extending a losing branch: 2 KVs, 2 roundtrips
Deleting the winning branch: 2 KVs, 1 roundtrip
Extending the winning branch: 1 KV, 1 roundtrip
new_edits=false update: <N> KVs, 1 roundtrip

Advantages
We can read a document revision without retrieving the revision tree, which in the case of frequently-edited documents may be larger than the doc itself.
We ensure that an interactive document update against the winning branch only needs to read the edit branch KV against which the update is being applied, and it can read that branch immediately knowing only the content of the edit that is being attempted (i.e., it does not need to read the current version of the document itself). The less common scenario of updating a losing branch is only slightly less efficient, requiring two roundtrips.
Interactively updating a document with a large number of edit branches is therefore dramatically cheaper, as no more than two edit branches are read or modified regardless of the number of branches that exist, and no tree merge logic is required.
Including NotDeleted in the key ensures that we can efficiently accept the case where we upload a new document with the same ID where all previous edit branches have been deleted; i.e. we can construct a key selector which automatically tells us there are no deleted=false edit branches.
The RevFormat enum gives us the ability to evolve revision history storage over time, and to support alternative conflict resolution policies like Last Writer Wins.
Access to Versionstamp ensures we can clear the old entry in the by_seq space during an edit. The set_versionstamped_value API is used to store this value automatically.
The key structure above naturally sorts so that the "winning" revision is the last one in the list, which we leverage when deleting the winning edit branch (and thus promoting the one next in line), and extending a conflict branch (to coordinate the update to the Versionstamp) This is also a small optimization for reads with ?revs=true or ?revs_info=true, where we want the details of the winning edit branch but don't actually know the RevPosition and RevHash of that branch.
Disadvantages
Historical revision identifiers shared by multiple edit branches are duplicated.
Key Changes
Administrators cannot set _revs_limit larger than 4,000 (previously unlimited?). Default stays the same at 1,000.
The intention with this data model is that an interactive edit that supplies a revision identifier of a deleted leaf will always fail with a conflict. This is a subtle departure from CouchDB 2.3 behavior, where an attempt to extend a deleted edit branch can succeed if some other deleted=false edit branch exists. This is an undocumented and seemingly unintentional behavior. If we need to match that behavior it will require reading 3 KVs in 2 roundtrips for every edit that we reject with a conflict.
Modules affected
TBD depending on exact code layout going forward, but the couch_key_tree module contains the current revision tree implementation.
HTTP API additions
None.
HTTP API deprecations
None.
Security Considerations
None have been identified.
References
Original mailing list discussion
Acknowledgements
Thanks to @iilyak, @davisp, @janl, @garrensmith and @rnewson for comments on the mailing list discussion.

If one were inclined to save a byte it would be easy to combine NotDeleted and RevFormat into a single byte that still sorts optimally.

a) I love it. b) do we really need to let revs limit go above 1000? In fact, should we allow this to be edited at all?
I note that we didn't finish the RFC thread but the last comment was to add a "security considerations" section, so if you would add that it's appreciated. I suspect it will be short.

Thanks! I added the Security Considerations section, and tweaked the Advantages section to replace a redundant description of the write path behavior with a description of the read path.

Sorry about that - the RFC PR is going to be merged shortly: https://github.com/apache/couchdb/pull/1914

@davisp pointed out something quite important in a discussion on IRC that I want to capture here. The _changes feed has the property that each document shows up exactly once regardless of the number of edit branches. The current design in the RFC isn’t quite compatible with that requirement, because we’re saying each edit branch can be extended independently without paying attention to the others.
We talked about a way to address this, which I’ll leave first in the comment here. We use the fact that a new edit branch can only be created by a new_edits=false write, where we anticipate retrieving the entire set of branch KVs. The writer in that case should store VersionStampForCurrentRev only in the “winning” edit branch and set the other ones to null.
If a writer comes in and tries to extend a losing edit branch, it will find the VersionstampForCurrentRev to be null and will do an additional edit branch read to retrieve the winning branch. It can then compare both branches to see which one will be the winner following that edit, and can assign VersionStampForCurrentRev accordingly.
A writer attempting to delete the winning branch (i.e., setting NotDeleted to 0) will need to read two contiguous KVs, the one for the winner and the one right before it. If the branch before it will be the winner following the deletion then we move the VersionstampForCurrentRev to it accordingly. If the tombstones branch remains the winner for this document then we only update that branch.
A writer extending the winning branch with an updated document (the common case) will proceed as before with no loss in efficiency.
I’ve tried to think through all possible concurrency issues here but I think that FoundationDB’s transaction isolation model delivers the goods in every case.
As far as the data model is concerned, the only change is that the Versionstamp is stored exclusively in the winning edit branch KV at all times, with all other branches having a null byte there instead. Also we should rename the field as it’s really VersionstampOfLatestEdit, regardless of whether that corresponds to the revision in the same KV.

I updated the text of the proposal to incorporate the details from my last comment.
Separately, @wohali pointed me to an old bug report in #1418 which has some bearing here. It seems that we are currently rather inconsistent in how we handle attempts to extend a tombstoned edit branch. If every branch in the document is tombstoned, we reject edit attempts that specify an explicit _rev with a conflict. But if at least one branch is deleted=false, we will allow other tombstoned branches to be extended. This is inconsistent and seemingly unintentional behavior.
The proposed data model is most efficient if we block all explicit updates to tombstoned edit branches (i.e., updates that supply the _rev of the tombstone as a base). If we do need to support the current CouchDB behavior, it will require attempting to read 3 KVs for every edit that gets rejected with a conflict: the deleted=false KV for that revision, the deleted=true KV for that revision, and the last KV for the document (to see if all branches are deleted=true). We would likely do this in 2 roundtrips to avoid paying the extra cost on every edit. It's doable, but I think we may want to take this opportunity to make our API more consistent. I've updated the proposal to point us in that direction.
Digging even deeper, folks should be aware that when users create a new document (with no _rev) over top of a document where all branches are tombstoned, current CouchDB will internally extend the "winning" tombstoned branch with the new edit. I believe this was intended solely as a performance optimization, to avoid creating a too-wide revision tree, but as #1418 makes clear this optimization has real user-visible implications in the API. The data model in this RFC naturally supports the same "optimization", although it's not clear that the optimization is all that helpful in this data model. We can have a detailed discussion of what we think the right behavior ought to be going forward, but I don't think it should hold up the decision on the data model because both options (extending the last branch or creating a new one) can be handled efficiently.

Some discussion of whether it makes more sense to model RFCs as PRs against the documentation repo. Merits to both options. I filed the PR version of this issue at apache/couchdb-documentation#397

general agreement on couchdb-dev (IRC) to use the PR approach as it allows clarifying commits, reviews and a trail of approval.


Exiting a yazi spawned shell in fish, exits yazi instead of the spawned shell.

What system are you running Yazi on?
Linux Wayland
What terminal are you running Yazi in?
foot
Yazi version
yazi 0.1.5 (dc1649f 2023-12-04)
Did you try the latest main branch to see if the problem has already been fixed?
Tried, but the problem is still present
Describe the bug
Dropping into a fish shell from within yazi using: {on=["T"],exec="shell fish --block --confirm"},, and typing exit in that shell shows: fish: Job 1, 'yazi' has stopped and does not exit the shell.
The yazi process now shows up in htop with a T as status, meaning it has been stopped by a control signal.
Typing exit again shows: There are still jobs active: 6638 yazi
Typing exit for the third time actually quits the shell, leaving the yazi process as a single orphan consuming one cpu core worth, only able to be shut down using a SIGKILL.
Typing exit in a fish shell not spawned by yazi, exits the shell instantly.
Expected Behavior
The shell should be quit, not yazi.
To Reproduce
See above.
Configuration
No response
Anything else?
No response

Opening a new terminal window running fish, chaning to bash, then running yazi from that bash shell, then dropping into a fish shell from yazi, then exiting back into the first fish shell shows the same behaviour but also gives an error message:
Backtrace (most recent call first):
  File "<unknown>", line 0, in __libc_start_main

The application panicked (crashed).
  called `Result::unwrap()` on an `Err` value: Input/output error (os error 5)
in yazi-fm/src/app/commands/stop.rs, line 32
thread: main

In the report above, an error message is never displayed.
There is also no orphan yazi process left running.

I can't reproduce it on my side, with fish 3.6.4. Could you record a video? I'd like to see your steps.
https://github.com/sxyazi/yazi/assets/17523360/cc9356cb-a194-44ad-9537-bba14a23f955

I'm trying to install fish from chaotic-aur, but I can't update the source. I'm setting it up on a fresh Arch Linux following the "How to use it" instructions from chaotic-aur:
pacman-key --recv-key<PHONE_NUMBER>B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key<PHONE_NUMBER>B78AEB
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'

And:
#/etc/pacman.conf
[chaotic-aur]
Include = /etc/pacman.d/chaotic-mirrorlist

I want to know if there's any alternative method besides chaotic-aur to accomplish this?

I also did
pacman-key --recv-key<PHONE_NUMBER>B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key<PHONE_NUMBER>B78AEB

but I only put
[chaotic-aur]
Server = https://geo-mirror.chaotic.cx/$repo/$arch

into pacman.conf.
Beyond that, it seems a lot of mirrors are down right now.
Although https://geo-mirror.chaotic.cx/$repo/$arch has always worked for me.

This issue seems to be gone using fish 6a64ba6 and yazi 93c8d90.

This issue seems to be resolved with fish 6a64ba6 and yazi 93c8d90.


Dubboctl subsequent enhancement proposals

Based on https://github.com/apache/dubbo-admin/pull/1073, we have implemented manifest generate and manifest install commands. There are some enhancement proposals to make dubboctl more useful.

Validate DubboConfig.
Implement more intuitive and effective yaml diff method.
Add more log statements to locate problems.
Implement manifest uninstall and manifest diff commands, profile dump, profile list and profile diff commands.

Agree


Java 21 virtual thread support

In submitting this contribution, I agree to the current Software AG contributor agreement as referred to here:
https://github.com/quartz-scheduler/contributing/blob/main/CONTRIBUTING.md
This PR...
How to Run
./gradlew -Djdk="<jdk 21 directory>"  test :quartz:test

Changes
Adds a SimpleVirtualThreadPool to do a virtual thread support.
Checklist

[ ]  tested locally
[ ]   updated the docs
[ ]  added appropriate test
[ ]  signed-off on the above mentioned SoftwareAG contributor agreement via git commit -s on my commits.
(If you're not using command-line, you can use a browser extension )

Known Issues
In java 21 - the following tests fail:
> Task :quartz:test

org.quartz.impl.jdbcjobstore.StdJDBCDelegateTest > testSelectSimpleTriggerWithDeleteBeforeSelectExtendedProps FAILED
    java.lang.ExceptionInInitializerError at StdJDBCDelegateTest.java:119
        Caused by: java.lang.reflect.InaccessibleObjectException at StdJDBCDelegateTest.java:119

org.quartz.impl.jdbcjobstore.StdJDBCDelegateTest > testSelectSimpleTriggerWithExceptionWithExtendedProps FAILED
    java.lang.NoClassDefFoundError at StdJDBCDelegateTest.java:90
        Caused by: java.lang.ExceptionInInitializerError at StdJDBCDelegateTest.java:119

org.quartz.impl.jdbcjobstore.StdJDBCDelegateTest > testSelectBlobTriggerWithNoBlobContent FAILED
    java.lang.NoClassDefFoundError at StdJDBCDelegateTest.java:73
        Caused by: java.lang.ExceptionInInitializerError at StdJDBCDelegateTest.java:119

org.quartz.impl.jdbcjobstore.StdJDBCDelegateTest > testSelectTriggerToAcquireHonorsMaxCount FAILED
    java.lang.NoClassDefFoundError at StdJDBCDelegateTest.java:145
        Caused by: java.lang.ExceptionInInitializerError at StdJDBCDelegateTest.java:119

org.quartz.impl.jdbcjobstore.UpdateLockRowSemaphoreTest > testSingleFailureFollowedBySuccessUsingUpdate FAILED
    java.lang.ExceptionInInitializerError at UpdateLockRowSemaphoreTest.java:35
        Caused by: java.lang.reflect.InaccessibleObjectException at UpdateLockRowSemaphoreTest.java:35

org.quartz.impl.jdbcjobstore.UpdateLockRowSemaphoreTest > testDoubleFailureFollowedBySuccessUsingUpdate FAILED
    java.lang.NoClassDefFoundError at Unsafe.java:-2
        Caused by: java.lang.ExceptionInInitializerError at UpdateLockRowSemaphoreTest.java:35

org.quartz.impl.jdbcjobstore.UpdateLockRowSemaphoreTest > testFallThroughToInsert FAILED
    java.lang.NoClassDefFoundError at Unsafe.java:-2
        Caused by: java.lang.ExceptionInInitializerError at UpdateLockRowSemaphoreTest.java:35

org.quartz.impl.jdbcjobstore.UpdateLockRowSemaphoreTest > testSingleSuccessUsingUpdate FAILED
    java.lang.NoClassDefFoundError at Unsafe.java:-2
        Caused by: java.lang.ExceptionInInitializerError at UpdateLockRowSemaphoreTest.java:35

319 tests completed, 8 failed, 1 skipped

> Task :quartz:test FAILED

FAILURE: Build failed with an exception.

@melloware  who would give us another approval?

cc @jhouserizer
I will admit it doesn't look like there has been much activity here which is dissapointing and last public release was 2019?

There were releases made earlier in the year (with dozens of changes) as RCs awaiting feedback.  Official non-RC releases will be made in the next week or two.
It's true that current efforts on the project are sporadic.  This contribution is interesting and will be looked at .

Added the DCO fix as expected by the doc.

There are no releases, no feedback on PRs nor on issues, no replies on the user's list, and the developer's forum link points to nowhere. Quartz is not only poorly maintained, but it is not maintained at all...

Unfortunately, due to the change of ownership of this project, the terms of contribution have been updated, and this PR will need to be re-created, agreeing to the new terms.

@nmondal can this simply be re-created using the same branch you already have?

@manofthepeace  possible.


When the loading fails, can I try again?

Sometimes it will fail to load, especially if there are a lot of pictures, can you try again when it fails?

@lixiaozhangme can you please provide a jsfiddle example for the above issue!

cool @lixiaozhangme i will close the issue now


blob.py is unable to handle a partial rewrite and fails with KeyError on lack of resource

https://github.com/GoogleCloudPlatform/google-cloud-python/blob/master/storage/google/cloud/storage/blob.py#L871
871:        self._set_properties(api_response['resource'])

This relies on the API to always return 'resource'.  However, it is optional as per the doc.
https://cloud.google.com/storage/docs/json_api/v1/objects/rewrite
"""
This property is present in the response only when copying completes.
"""
As such, when the write was partial, done: false is returned and resource not present.  Thus failing with the following KeyError.
Traceback (most recent call last):
File "xxx.py", line 304, in test_011_CopyFileFromBucketToBucketNewName
new_destination_file_name=new_file_name)
File "xxx.py, line 276, in copyFileFromBucketToBucket
token, rewritten, total = destination_blob.rewrite(source_blob, token=token)
File "/home/jenkins/venv/lib/python2.7/site-packages/google/cloud/storage/blob.py", line 681, in rewrite
self._set_properties(api_response['resource'])
KeyError: 'resource'

The most easy fix would be to push _set_properties down under after done: false check:
E.g.;

       api_response = client._connection.api_request(
            method='POST', path=source.path + '/rewriteTo' + self.path,
            query_params=query_params, data=self._properties, headers=headers,
            _target_object=self)
        # self._set_properties(api_response['resource'])  ## Comment out this line
        rewritten = int(api_response['totalBytesRewritten'])
        size = int(api_response['objectSize'])

        if api_response['done']:
            return None, rewritten, size

        self._set_properties(api_response['resource']) # and move here
        return api_response['rewriteToken'], rewritten, size

I don't think your solution will work. I came across the same issue, but when it is not done, it falls through. You probably want to move it inside the if api_response['done'].

Ah, you are totally right. Scrap my suggestion.
I wasn't sure how _set_properties is used in the API and I mistook the "done" check in the wrong way, of course.

Thanks for reporting @80nashi!
If I understand correctly from the docs, the resource is only available when the copy is complete?

A resource containing the metadata for the copied-to object. This property is present in the response only when copying completes.

@tseaver, @dhermes maybe we should be raising an exception here?
I'm not sure from the docs, but is there polling that should be available for rewriting so you can check if the copy is done?

As I understand the method and the API, the method is expected to return the rewrite token without raising an exception, in case of partial write (done: false and resource non-existent).
Then the user program can call the method again with the non-null, non empty string rewrite token, repeat it until done: true and resource present.

So yeah, the following can be a possible fix as verba suggested.
However, I'm not sure what _set_properties is expected to do in case of done: false.
        # self._set_properties(api_response['resource'])  ## Comment out this line
        rewritten = int(api_response['totalBytesRewritten'])
        size = int(api_response['objectSize'])

        if api_response['done']:
            self._set_properties(api_response['resource']) # and move here
            return None, rewritten, size

        self._set_properties(api_response['resource']) # and move here
        return api_response['rewriteToken'], rewritten, size

@80nashi if you want to try and install from master it appears that @lukesneeringer addressed this.


[WIP]Multiple Crd version -Phase 1 support

Add Versions into metadata.yaml under tools/gen-meta

Modify tools to consume the changes in metadata.yaml

Upload the new generated types.go for kube

Using Storage version when creating API resource

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: irisdingbj
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ayj
If they are not already assigned, you can assign the PR to them by writing /assign @ayj in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

galley/OWNERS
istioctl/OWNERS

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

@ozevren  This is the initial change.  Let me know if this is the correct direction. Thanks!

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-unit-tests

prow/istio-presubmit.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-unit-tests

prow/istio-presubmit.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-presubmit

prow/istio-integ-local-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-integ-local-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-unit-tests

prow/istio-presubmit.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-presubmit

prow/istio-integ-local-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
6401b358fb4556f39565ebfae3c694280abfafb7
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ozevren
Thanks for the comments!

Read from configuration and generating listening is a great idea. So we can  deprecate code-generated types.go from metadata.yaml.

I have not found the PR you mentioned : " I already have a PR for this against 10-1, I am going to dust it off and repoint it to master. We can use that same file format to define the resource metadata there."
Can you point me there so I can start based on that?
For crds I think it is better if we can use the ones from install/kubernetes/helm/istio-init/files. Then we will have a central place to define all crd infos including the multiple versions info.
Now, In galley I have changed codes to generate resourceClient based on the storage version only.  I have tested this and it works well in Galley. It also means we only monitor one version(the storage version) in Galley.
For the Install/upgrade/downgrade case, I plan to do below testing:

Modify

the crd configuration file to add Versions fields like below:
versions:

name: v1beta1
served: true
  storage: false

name: v1
served: true
  storage: false

name: v2
  served: true
  storage: true

Install Istio with the new crds and make sure all runs fine-- this should be covered by our testing when submitting prs.

Install Istio 1.1, then follow the upgrade process to upgrade to master(1.2) which crds have been changed to multiple versions.

For  Downgrade, I have not found doc about how to downgrade Istio..We may need to work out this part first.

@irisdingbj: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: irisdingbj
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: costinm
If they are not already assigned, you can assign the PR to them by writing /assign @costinm in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

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

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-pilot-multicluster-e2e

prow/istio-unit-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-pilot-multicluster-e2e

prow/istio-unit-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-unit-tests

prow/istio-integ-local-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-integ-local-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-pilot-multicluster-e2e

prow/istio-unit-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-unit-tests

prow/istio-integ-local-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@irisdingbj: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-pilot-multicluster-e2e.sh
98a76c3dadb1b77f8c850d051dce3930851308de
link
/test istio-pilot-multicluster-e2e

prow/istio-unit-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-unit-tests

prow/istio-integ-local-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-integ-k8s-tests

prow/istio-presubmit.sh
54e0a17fd53471772c06255b1920bdc5423aebe9
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Close this one as need to submit against 1.2


Trouble importing different translations into Bible on Librem 5 linux mobile phone

Using Bible v0.1.3 on the Librem 5 (Pureos Byzantium 5.18.0-1). The file browsing facility in the application cannot see the downloaded translation (NKJV.SQLite3) when I navigate to the folder /home/purism that contains the file (Any Bible Fomat selected, in Preferences). In fact, the application cannot seen any file at all when I choose "Any File" from the drop-down menu.

I believe I fixed this on the flathub app system. Let me know if the issue persists. I think I have a different issue to fix now relating to the file picker not knowing what to filter out and what to leave in the file picker.


Not really a issue just ?

Whats the recommended amount of mods u can have without ur server constantly needed to be resync with non hosting players heres a list of my mods so that maybe one of the mods is making it desync

The amount of mods is not the issue most likely. Some mods can cause desyncs on multiplayer. I would recommend using the spreadsheet on this page to see which of your mods are incompatible with multiplayer.


prefix icon

how to enable prefix icon ?

Can you provide some more explanation on this? What do you mean by enable prefix icon?

can we add prefix icon in each item cause you have added that into class model but didnot apply to items in dropdown

enable icon like this


PvP balancing.

Heavy PvP servers often use custom builds of minecraft / mods / plugins in order to re-balance what gear is possible to obtain in Minecraft.
To make Sponge more appealing to those servers, I suggest that API(or mixin configuration) be available that can accomplish the following.

[ ] Limiting the max natural enchanting level of enchantments.
[ ] Being able to modify the enchanting pools to remove certain enchants, or enchanting levels completely.
[x] Being able to limit what potions are obtainable to players, possibly via removing their recipes, or cancelling their recipe events.
[ ] Change AttackSpeed attributes back to pre 1.9 behavior

This would make SpongeAPI more attractive to heavy PvP servers who feel the need to re-balance the game or "kits".

For my future guild server this would be extremely beneficial. We've looked into ways of limiting enchantments in other fashions but none would work as well as what is mentioned here. Enchantment events would be a step in the right direction.

What is this train wreck of an issue description?

This seems like two seperate issues: Modifying the enchantment pool / generation algorithm, and changing the properties of objects supplied by vanilla.

I've tried to reword the description to make more sense.

@AlphaModder You are correct, it was meant more as a tracking issue much like events or data.

I suggest putting them in the extra package.

Part of this will covered by attributes which is already an open PR by Kashike. It's on my list to update and merge.

Closed by https://github.com/SpongePowered/SpongeAPI/pull/2085 https://github.com/SpongePowered/SpongeAPI/pull/1898 https://github.com/SpongePowered/SpongeAPI/pull/1954


vcpkg release of azure-template-cpp should always open PR as a draft

We've seen testing of the template package release generate extra noise while testing changes to the common engineering system.  This noise is impacting our customers in addition to the vcpkg team (example).
Any time we open a PR for an azure-template-cpp port that PR should be opened as a draft as we will never need to publish it.

We should also delete the Git release and tag, as part of the release test artifact cleanup.

This is fixed here: https://github.com/Azure/azure-sdk-for-cpp/pull/1936/files .. The PR is opened as a draft. It's also closed immediately after opening (one can re-open if vcpkg CI is needed) today https://github.com/Azure/azure-sdk-for-cpp/blob/master/eng/pipelines/templates/stages/archetype-cpp-release.yml#L191
I've opened https://github.com/Azure/azure-sdk-for-cpp/issues/2031 to track adding a job to clean up the tags and releases.


Remove deprecated Microsoft.AspNetCore.SignalR.Core package

Is this a bug report?
Maybe
Can you also reproduce the problem with the latest version?
Yes
Environment
Not applicable
Steps to Reproduce

(Write your steps here:)

Run dotnet list package --deprecated --include-transitive

or

Navigate to https://www.nuget.org/packages/MassTransit.SignalR/#dependencies-body-tab
Click Microsoft.AspNetCore.SignalR.Core

Expected Behavior

No deprecated packages included
Actual Behavior

(Write what happened. Please add screenshots!)

Microsoft.AspNetCore.SignalR.Core is listed as deprecated
Insecure version of Newtonsoft.Json (11.0.2) transitively pulled in

Likely fix

Remove reference to package: https://github.com/MassTransit/MassTransit/blob/develop/src/MassTransit.SignalR/MassTransit.SignalR.csproj#L18
Use FrameworkReference instead: <FrameworkReference Include="Microsoft.AspNetCore.App" />
May need to make FrameworkReference conditional to still support .netstandard2.0/.netstandard2.1?

Will you be submitting a PR?

Yeah

Looks like the changes are good:
https://www.nuget.org/packages/MassTransit.SignalR/8.0.8-develop.611#supportedframeworks-body-tab

Nice!
dotnet list package --deprecated --include-transitive
dotnet list package --vulnerable --include-transitive

Both give a clean result for my project now as well after upgrading. And Newtonsoft.Json.dll is finally eradicated from my app.


no response

Hi , thanks for sharing this. When I try this class, I get no response and no errors .. have I missed something obvious ? I've included what I'm using below..
Thanks for any help.
// include class
include "includes/cpanel-UAPI-php-class/cpaneluapi.class.php"; //include the class file

// credentials
include_once("includes/cpanel_inc.php");;

// connect cpanel api
$capi = new cpanelAPI( $account, $passwd, $ip ); // instantiate the object

$response = $capi->uapi->Mysql->get_restrictions();
print_r($response);

Hi mrasmith,
Do you get anything if you do this?
$response = $capi->uapi->Mysql->get_restrictions();
print_r($capi->getError());

There isn't a whole lot of error handling in the class, its on the todo list the i get a chance.

Thanks for the response, no unfortunately that gives no output either.

Hmm ok, next thought then - is the IP for cpanel or WHM? and is it HTTPS or just HTTP?

cPanel and WHM, it’s a dedicated server, just HTTP

Ah ok, so its might be that the class assumes HTTPS, which means that the request will use the wrong port and protocol.
try this:
// include class
include "includes/cpanel-UAPI-php-class/cpaneluapi.class.php"; //include the class file

// credentials
include_once("includes/cpanel_inc.php");;

// connect cpanel api
$capi = new cpanelAPI( $account, $passwd, $ip ); // instantiate the object

//no SSL
$capi->ssl = FALSE;

//get response
$response = $capi->uapi->Mysql->get_restrictions();
print_r($response);

Oh you'll need to change the port manually as well it seems. I should fix that. Updated code below:
// include class
include "includes/cpanel-UAPI-php-class/cpaneluapi.class.php"; //include the class file
// credentials
include_once("includes/cpanel_inc.php");;
// connect cpanel api
$capi = new cpanelAPI( $account, $passwd, $ip ); // instantiate the object
//no SSL
$capi->ssl = FALSE;
$capi->port = 2082;  //Check this!
//get response
$response = $capi->uapi->Mysql->get_restrictions();
print_r($response);

added both of those and still no output ! I appreciate your help with this.

could you past the response of this for me?
// include class
include "includes/cpanel-UAPI-php-class/cpaneluapi.class.php"; //include the class file

// credentials
include_once("includes/cpanel_inc.php");;

// connect cpanel api
$capi = new cpanelAPI( $account, $passwd, $ip ); // instantiate the object

//no SSL
$capi->ssl = FALSE;
$capi->port = 2082;  //Check this!

//get response
$response = $capi->uapi->Mysql->get_restrictions();
print_r($capi->getLastRequest());

I've x'd out the ip address
http://xxx.xxx.xxx.xxx:2082/execute/Mysql/get_restrictions?

that looks correct. can you confirm that the port you access cPanel on is 2082? if you're not sure just try navigating to http://xxx.xxx.xxx.xxx:2082 directly.
If thats working as expected i'll find some time to setup some test scripts, see if i can reproduce the problem myself :).

yes that brings me to my cpanel login

Thanks a lot for your help

In that case i'll have to run some proper tests :).
If you don't get a reply from me by this time tomorrow, feel free to prod!

would it matter that I have 2FA enabled on my account ? I assumed it wouldn't matter because I use another class for the API1 & 2 without any issues.

oh, it might. API 1 and 2 often include a cPanel api file on the server and communicate through that. UAPI makes requests over HTTP and thus must pass authentication details with every request. 2FA may well interfere with that process.
There should be a workaround, i'll dig in the docs.

Great, thanks again.

Ok, so i found the docs - i'll need to make some amends to the class as 2FA required an additional parameter and some extra data. Does look like too much of a pain so i'll get to it now.

ok so, I've updated the class. Its a bit of a blind guess functionality wise, but please give that a go. You'll need to pass the 2FA secret into the class when instantiating it. E.g.
// connect cpanel api
$capi = new cpanelAPI( $account, $passwd, $ip, $secret); // instantiate the object

let me know if it works, or if not, what breaks for you. I haven't had time to test

Thanks a million, I'm not in a position to test right now but will let you know as soon as I do.

Thanks N1ghteyes for this but unfortunately still no output .

Hi Mrasmith, could you disable 2FA and test? just to be sure that is the issue.
Thanks

ok done that and it now works, so I guess we know where the problem is !

In that case i'll have to setup 2FA on an account somewhere and play with it :). I'll update here when i get somewhere - might not be for a few days though.

no problem, thanks for your help

You did mention I should feel free to prod ,, so here's a gentle prod ! Thanks.

@mrasmith Yep - sorry been a busy few weeks! I've been looking into the problem, there appears to be a gap in the docs for this. I'll keep digging though, i will also send a note to cPanel support and see if they can shed any light on it.

I am having the same problem but I am using https not using 2Fa.
I get no output.
I tried the test from above and did get the following output, "http://xxxxxxxxxxxxx:2082/execute/Mysql/get_restrictions?"
When logging in manually I use, https://xxxxxxxxxxxx:2083.
I am using,  $capi = new cpanelAPI( $account, $passwd, $ip, $secret); // instantiate the object
Still no output.

@joxley could you open a separate issue and post the exact block of code that's getting no output? (Without any access info of course).
The last of output in this instance was specifically 2FA related.

Hi there, have you had any luck with this? We've been using your library for a while now on our web app (which is great btw) and it's worked great, up until we updated our security and installed 2FA on cPanel. Now the uapi calls don't work, but api2 calls do. Could redo code to use all api2 requests, but would rather use the latest api from cPanel.

@grahams2020 Whoops, sorry missed the post.
I'll chase, its been sitting on the back burner for a while and i haven't heard back from cPanel. In theory, whats in place follows their documentation but the authentication fails. I suspect a bug in the UAPI or perhaps old / incorrect docs.
Even the email address to add new third party libraries to their list doesn't work!

Hi. I'm having no return from script at all.

@marasi Are you also using 2FA? if so, i still can't get anything out of cPanel so the issue is currently parked until i have time to chase them up on it.
If you're not, then please could you open a new issue, include your code so we can debug.
Thanks

@marasi @mrasmith
Hi Both, A recent amend was pushed which might finally solve this issue. If you have a chance to check that would be awesome. If in the mean time you've found a fix please let me know!
Thanks

Closing since this hasn't come up again in a while.


dynamic regridding bug when data is modulo-ed

Reported by ansley b manke on 21 Jun 2011 19:00 UTC
This is the bug Patrick Brockmann reports here:
http://www.pmel.noaa.gov/maillists/tmap/ferret_users/fu_2011/msg00375.html

! Create some datasets that mimic the grid in Patrick's example,
! and try the regridding

! A finer dataset, X axis centered around -180
use etopo20
save/file=rosefine.nc/clobber rose[Two coarser datsets, x-axis starting at zero so a modulo
! operation will be needed for regridding.
! Same X axis, different Y axes with the first being coarser

use etopo60

define axis/x=0:356.25:3.75/units=deg lon
define axis/y=-90:90/npoints=72/units=deg lat1
define axis/y=-90:90/npoints=92/units=deg lat2

save/clobber/file=rose1.nc rose[gx=lon,gy=lat1](x=-179.8333:179.8333]

!)
save/clobber/file=rose2.nc rose[dat/all; can mem; can var/all

! Now regrid the data from the fine data to each coarse
! grid, first the coarser one. The wrong intermediate
! data is re-used on the second regridding.

use rose1
use rose2
use rosefine.nc

set view upper
shade rose[d=3,gxy=rose[d=1](gx=lon,gy=lat2]

can)]
list/y=40:90/x=0 rose[view lower
shade rose[d=3,gxy=rose[d=2](d=3,gxy=rose[d=1]]

set)]   ! This plot is garbled
list/y=40:90/x=0 rose[is the output of the two LIST commands.  Note how in the second, the data that should be at the far north is shifted down to 48.5N

list/y=40:90/x=0 rose[d=3,gxy=rose[d=1](d=3,gxy=rose[d=2]]

Here)]
             VARIABLE : RELIEF OF THE SURFACE OF THE EARTH (METERS)
                        regrid: ROSE[            FILENAME : rosefine.nc
             SUBSET   : 21 points (LATITUDE)
             LONGITUDE: 0E
               0E
                1
 90N   / 72:   ....
 87.5N / 71: -4436.
 84.9N / 70: -3377.
 82.4N / 69: -2938.
 79.9N / 68: -2970.
 77.3N / 67: -3042.
 74.8N / 66: -3505.
 72.3N / 65: -2261.
 69.7N / 64: -3244.
 67.2N / 63: -3506.
 64.6N / 62: -2731.
 62.1N / 61:  -613.
 59.6N / 60:  -111.
 57N   / 59:   -88.
 54.5N / 58:   -54.
 52N   / 57:    68.
 49.4N / 56:    75.
 46.9N / 55:    95.
 44.4N / 54:    90.
 41.8N / 53:   363.
 39.3N / 52:  -549.

...list/y=40:90/x=0 rose[d=3,gxy=rose[d=2](D=rose1]
)]
             VARIABLE : RELIEF OF THE SURFACE OF THE EARTH (METERS)
                        regrid: ROSE[D=rose2]
             FILENAME : rosefine.nc
             SUBSET   : 26 points (LATITUDE)
             LONGITUDE: 0E
               0E
                1
 90N   / 92:  2476.
 88N   / 91:  2782.
 86N   / 90:  2686.
 84.1N / 89:  2839.
 82.1N / 88:  2941.
 80.1N / 87:  2869.
 78.1N / 86:  3071.
 76.2N / 85:  2771.
 74.2N / 84:  3162.
 72.2N / 83:  2739.
 70.2N / 82:  3109.
 68.2N / 81:  2717.
 66.3N / 80:  3101.
 64.3N / 79:  2751.
 62.3N / 78:  3040.
 60.3N / 77:  2800.
 58.4N / 76:  2976.
 56.4N / 75:  2774.
 54.4N / 74:  2884.
 52.4N / 73:  2774.
 50.4N / 72:   ....
 48.5N / 71: -4436.
 46.5N / 70: -3377.
 44.5N / 69: -2938.
 42.5N / 68: -2970.
 40.5N / 67: -3042.

Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/1862

Comment by ansley.b.manke on 27 Jun 2011 16:58 UTC
A bilinear XY regridding may return larger holes in the output grid when there's missing data. Repeating the diagram from the original report, and adding formatting, where there is one missing point in the source grid,
In situations like this:
       S   S   S
     T   T   T   T
       S   X   S
     T   T   T   T
       S   S   S

    where
    S = source points
    T = target points
    X = missing value

currently the two single-direction linear regridding, first in the Y direction, and then in the X direction, does not always engulf all of the surrounding T points. It carefully keeps data at destination grid points that match source points, and because it does the regridding first in Y and then in X it keeps some points that the bilinear scheme returns as missing. A bilinear interpolation can also be made to keep valid data when the grid points match, but it also does not return data at some locations that the previous method did fill in.
I have put in a two-single-direction regridding in XY which resolves the bug and returns the same result as the previous code.  The bilinear method is also in the routine xylin_regrid.F, and so in the future we can come up with ways to use it, perhaps with some choice of how to return valid data from some incomplete set of source points.

Attachment from ansley.b.manke on 21 Jun 2011 19:01 UTC
the plot from the script
REPLACE THIS TEXT WITH UPLOADED FILE ./attachments/TRAC_1862_GIT_1134/bug1862.gif