Add AArch64 extension handling and SVE/SVE2 feature detection

Refactor and add extensions for AArch64:

Add new helper functions in CommonDefARM.cpp and adjust call sites to mirror the existing x86 behaviour.

Amend the existing function names for the x86 extension handling to include "x86" in the name to distinguish from the new Arm cases.

Add new Arm extension enum ( ARM_VEXT ) values for the Arm Scalable Vector Extension (SVE) and SVE2 extensions.

Add Linux getauxval-based feature detection logic for the two new architecture features.

Amend the InitARM.cpp switch statements to continue to fall back to the Neon implementations for now.

Are you planing to contribute some SVE/SVE2 code?
For now it seems a bit pointless. More so, because with the current build architecture its impossible to compile our x86 to SVE(2) using SIMDe. This makes the code basically placeholders, and we don't internally plan to use SVE or SVE2 anytime soon.

Are you planing to contribute some SVE/SVE2 code?
For now it seems a bit pointless. More so, because with the current build architecture its impossible to compile our x86 SIMD to SVE(2) using SIMDe. This makes the code basically placeholders, and we don't internally plan to use SVE or SVE2 anytime soon.

That's the plan yes, in particular a lot of the convolutions and SAD calculations can make use of the SVE-only 16-bit dot-product instructions: SDOT and UDOT.
I was aiming to put the first SVE patch and associated CMake changes up once there is a bit more Neon code to build on top of but figured the feature detection work could be a separate PR in the meantime. Let me know if you'd prefer me to combine this PR into a later one with the first SVE code instead.

I don't quite know what to do about it. Maybe thats also because of the lack of understanding for the architectures of ARM.

So for the 64-bit Arm architecture (aka AArch64 or Armv8-A) we have Neon (previously also called Advanced SIMD or ASIMD) mandatory from the start (v8.0). The Scalable Vector Extension (SVE) is introduced and is an optional extension from v8.2. SVE2 was then introduced as part of v9.0 (v9.0 is a strict superset of v8.5).
There are some good guides on and introductions to SVE available, for example Introduction to SVE. As a brief introduction, SVE provides:

Support for longer vector lengths as opposed to Neon which is a fixed 128-bit architecture. It's worth pointing out that unlike something like AVX512, in SVE the vector length may vary between different micro-architectures, for example the Neoverse N2 and Neoverse V2 cores have an SVE vector length of 128 bits but the Neoverse V1 has an SVE vector length of 256 bits. The HPC-focused Fujitsu A64FX core has an SVE vector length of 512 bits. This is enabled by adding several instructions that operate on the runtime vector length, for example INCB to increment a register by the vector length in bytes.
Support for pre-lane predicated vector load/store and data processing instructions (for example loading the first six lanes of a vector and zeroing the remainder or negating every-other lane of a vector, which is awkward in Neon).
A few new instructions like the 16-bit SDOT and UDOT instructions which I mentioned previously, as well as a few others.
Plus a few other things like gather/scatter and first-faulting loads for vectorising string routines, but these aren't really relevant to VVenC.

It's worth emphasising that even when the SVE vector length is 128-bits (the same as Neon) we still expect a small improvement over Neon due to the additional new instructions.

So with x86 we have AVX2 and SSE4.1, with preference for AVX2 for CPUs supporting it, because its faster.
What about SVE, SVE2 and NEON? Would SVE be preferrable to NEON? Do all architectures supporting SVE also support NEON? What about SVE2?

Neon remains mandatory and available to use even when SVE/SVE2 are available. This is similar to how the presence of AVX512 does not break existing SSE2 code etc. The idea would be to contribute SVE/SVE2 code only where it provides a performance improvement to do so, such that SVE kernels should always be preferred when it is possible to use them.

Anyway, I'm thinking maybe the best way forward would be to keep the refactoring, and than put the SVE and SVE2 stuff in a macro that would for now not be enabled. So that its prepared but noone is distracted by SVE or SVE2 popping up in the --help, but basically not doing nothing. And than, when SVE code starts coming in, the macro can be either enabled or removed as enabled. What do you think?

Options I can think of:

Leave as is. Slightly confusing since --help will say SVE or SVE2 on Neoverse V1 and later machines, but otherwise not actually an error.
Keep the refactoring in this PR but move the SVE detection/enablement part to a later PR (either (a) alongside initial SVE kernels or (b) as a separate thing).
Keep the refactoring + SVE detection/enablement in this PR but add some logic to the CMake to allow enabling/disabling it, default to disabled for now, with the intention to later enable it.
Same as (3) but default to enabled from the start.

I don't have a strong preference between those options, I'll be happy as long as we end up with SVE/SVE2 being enabled by default once we have some kernels that can actually use it. Having a CMake option to control compilation of newer architecture extensions might actually be useful for debugging, I was originally just trying to avoid doing too much in this PR.
Let me know your preference or if any other clarifications are needed and I'll adjust the PR as needed. Thanks!

Thanks for the clarification.
First things first, I'd say lets go with 3. So basically introduce macro, similar to SIMD_ENABLED in TypeDef.h, which can than be controlled through CMake. Something like SUPPORT_ARM_SVE. For the it should be per default disabled, since it cannot be broadly used.
This confuses me as well tho, since you mentioned in #431 the kernels would not share much code between SVE and NEON. And now it sounds like SVE to NEON is like SSE4.2 to SSE3.0, basically just some additional instructions within the same framework. Or is the intrinsics syntax fully divergent between SVE and NEON?

First things first, I'd say lets go with 3. So basically introduce macro, similar to SIMD_ENABLED in TypeDef.h, which can than be controlled through CMake. Something like SUPPORT_ARM_SVE. For the it should be per default disabled, since it cannot be broadly used.

Ack!

This confuses me as well tho, since you mentioned in #431 the kernels would not share much code between SVE and NEON. And now it sounds like SVE to NEON is like SSE4.2 to SSE3.0, basically just some additional instructions within the same framework. Or is the intrinsics syntax fully divergent between SVE and NEON?

The Neon vector registers v0 - v31 and SVE vector registers z0 - z31 overlap: the lowest 128-bits of each SVE vector register zN is the same as the 128-bit Neon register vN, but the SVE vector registers may be larger. This is similar to the x86 register overlap introduced by xmm0 vs ymm0 vs zmm0.
Since the register sizes differ there are a different set of intrinsics to use here. For example the prototypes to add two vectors of uint32_t together:
Neon: uint32x4_t vaddq_u32(uint32x4_t a, uint32x4_t b);
SVE: svuint32_t svadd_u32_x(svbool_t p, svuint32_t a, svuint32_t b); (The SVE intrinsics also take a predicate to mask certain operations, but the _x here indicates that the compiler that we do not care about the value of the unpredicated lanes and it is free to discard it)
To your point about code reuse between Neon and SVE: yes there are some cases where it will be beneficial to reuse the bulk of the existing Neon code and simply use the new SVE instructions by operating on the lowest 128-bits of the SVE registers, taking advantage of how the registers overlap. For these cases we would probably re-introduce headers as we need them to expose some common helper functions to avoid the duplication.

Understand, thanks!
Makes me think we could structure the x86 intrinsics better as well. But well, problem for another day. Lets get this MR merged first.

Added new CMake flags VVENC_ENABLE_ARM_SIMD_SVE and VVENC_ENABLE_ARM_SIMD_SVE2 to control the individual new feature flags, such that we can add more incrementally in the future for any further new extensions. Also added a bit of logic such that you can't accidentally end up in a situation where e.g. SVE2 is enabled without Neon, since these combinations don't make sense.
# Configured with cmake ...
$ ./vvenc-build-neon/bin/vvencFFapp --help | head -n1
vvencFFapp: VVenC, the Fraunhofer H.266/VVC Encoder, version 1.12.0 [Linux][clang 19.1.0][64 bit][SIMD=NEON]

# Configured with cmake ... -DVVENC_ENABLE_ARM_SIMD_SVE=1
$ ./vvenc-build-sve/bin/vvencFFapp --help | head -n1
vvencFFapp: VVenC, the Fraunhofer H.266/VVC Encoder, version 1.12.0 [Linux][clang 19.1.0][64 bit][SIMD=SVE]

# Configured with cmake ... -DVVENC_ENABLE_ARM_SIMD_SVE=1 -DVVENC_ENABLE_ARM_SIMD_SVE2=1
$ ./vvenc-build-sve2/bin/vvencFFapp --help | head -n1
vvencFFapp: VVenC, the Fraunhofer H.266/VVC Encoder, version 1.12.0 [Linux][clang 19.1.0][64 bit][SIMD=SVE2]


[Enhancement] Collapse Duplicate Chat

I originally used the Chat Filter plugin which included an additional feature to collapse messages.  Like so:

The Spam Filter plugin definitely wins the battle with blocking spam messages, as Chat Filter kept having me update the regex lists. I love the feature to just right click and remove it.
It's a shame the two plug-ins conflict. As having them both on makes the spam messages still pop up in-world.
If Spam Filter added the Collapse Feature, the Chat Filter plug-in will be outshined all together.

Hi @idle-user ! I can look at implementing this the next time I'm free if @jackriccomini is OK with the idea. Thanks for the suggestion.

That's correct. There are also toggles to handle each chat tab independently if wanted.


[AMBARI-25310] : Replace deprecated methods of FileUtils (cherry-pick to branch-2.7)

What changes were proposed in this pull request?
Replace usages of deprecated methods from FileUtils: readFileToString and writeStringToFile
How was this patch tested?
The patch was tested manually and with unit tests
This is a backport PR to branch-2.7 from PR: https://github.com/apache/ambari/pull/3016

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5301/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5308/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5311/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5313/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5315/
Test PASSed.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/5318/
Test PASSed.


quick-start guide code is broken

The code in the Scripting Quick Start is broken because it uses argparse

I have fixed this in PR #397


[Feature] Improve apiversion devx for webhook trigger

WHY are these changes introduced?
In the initial version of webhook trigger, several flags that requested as free text fields can be requested as options list. i.e. api-version and topic
This PR addresses the api-version flag and includes several improvements:

It is requested before the topic (in a future PR the list of available topics will depend on the api-version you selected)
If using prompt, the valid values are presented as a list of options
If passed as a flag, the flag value is validated against the list of valid values. If it fails, the whole process stops (no more flags will be requested)

WHAT is this pull request doing?
pnpm shopify webhook trigger --api-version=unknown

returns:
╭─ error ────────────────────────────────────────────────────────────────────────────╮
│                                                                                │
│  Api Version 'unknown' does not exist                                              │
│                                                                                │
│  Allowed values: 2023-04, 2023-01, 2022-10, 2022-07, 2022-04, 2022-01, unstable    │
│                                                                                │
│  Next steps                                                                        │
│    • Try again with a valid api-version value                                      │
│                                                                                │
╰────────────────────────────────────────────────────────────────────────────────────╯

pnpm shopify webhook trigger

prompts:
? Webhook ApiVersion …
> 2023-04
  2023-01
  2022-10
  2022-07
  2022-04
  2022-01
  unstable

How to test your changes?
Spin up a constellation such as this one:
schema: v1
extend: identity
repos:
  - partners:
      env:
        DISABLE_SHOPIFY_INTERNAL_API_INTERCEPTOR: "1"
  - captain-hook
  - shopify
  - storefront-renderer
  - web

With the Partners branch that contains the endpoint to request api versions:
spin up cli-constellation.yml -c partners.branch=apiversions-cli-endpoint

Get the github repo, change to the PR branch and execute the webhook trigger command against the spin instance:
NODE_TLS_REJECT_UNAUTHORIZED=0 SPIN=1 SHOPIFY_PARTNERS_ENV=spin SHOPIFY_SHOPIFY_ENV=spin SHOPIFY_IDENTITY_ENV=spin SPIN_INSTANCE=cli-constellation-tc1e SPIN_WORKSPACE=1 SPIN_NAMESPACE=1 pnpm shopify webhook trigger

Pre-release steps
The Partners branch needs to be deployed first
https://github.com/Shopify/partners/pull/44590
Post-release steps
None, I think
Measuring impact
How do we know this change was effective? Please choose one:

[x] n/a - this doesn't need measurement, e.g. a linting rule or a bug-fix
[ ] Existing analytics will cater for this addition
[ ] PR includes analytics changes to measure impact

Checklist

[x] I've considered possible cross-platform impacts (Mac, Linux, Windows)
[x] I've considered possible documentation changes
[ ] I've made sure that any changes to dev or deploy have been reflected in the internal flowchart.

Just FYI, the command to run the CLI against spin is easier now :)
SPIN_SERVICE_ENV=spin pnpm shopify webhook trigger

You can optionally use SPIN_INSTANCE=... to select a custom instance instead of the last one


Touchscreen

Hi there, I can see a massive difference between this model and the one posted by Google which is the touchscreen is missing from this design. Is there a way to include the touchscreen from adafruit instead of the capacitative pad?

@relaxis This was addressed in a previous issue, since closed. The answer is you will have to design, build, and program such an implementation yourself. 😄Quote:

the unit you refer to with the touch screen was designed as an experience prototype for developing the interface and we have no plans to release the source files.

Righto, what did I expect from an "open" project from Google.


Raspberry Pi?

I'm trying to get this working on a raspberry pi,  it would be a fantastic embedded option if I could get it all working.
At the moment I keep getting the error:
"Could not find or load man class se.pingstteknik.propresenter.stagedisplayviewer.Main"
Is it possible to get working?  I have downloaded and installed Oracle's JDK 8 and that works fine.

What command are you using when running the program? I don't have a raspberry pi to test this on.

It seems that new releases of Oracle's JDK 8 does not support javafx anymore. Try using an older version.
https://www.raspberrypi.org/forums/viewtopic.php?f=81&t=97367
Download link http://ftp.osuosl.org/pub/funtoo/distfiles/oracle-java/jdk-8u6-linux-arm-vfp-hflt.tar.gz
See if this helps.

This will do what you want. https://github.com/anthonyeden/ProPresenter-Stage-Display-Python
@danielkihlgren I think this issue is closed now.


Bad search results

Summary:

For some reason the newest 2.6 docs are almost always suggested after the older docs in the search.
Details:

Here's an example when searching for "deploy" the green item is 2.6 the others are all for older versions which have a message at the top saying they're the old pages leading to https://github.com/rancher/docs/issues/3870

Hi there, thank you for reporting this. We currently have improved search (specifically, contextual search where only results relevant to the current selected version are displayed) on our roadmap and will be working towards adding it.
In the meantime, I'm going to close this as a duplicate of https://github.com/rancher/docs/issues/3314


Issue after using Hyper for Windows with dual monitor

[x] I am on the latest Hyper.app version
[x] I have searched the issues of this repo and believe that this is not a duplicate

OS version and name: Windows 10
Hyper.app version: 1.3.1
Link of a Gist with the contents of your .hyper.js: https://gist.github.com/joselitojunior1/98ad91410f1f6d318f6c2f19a1e6d0bc
Relevant information from devtools (CMD+ALT+I on Mac OS, CTRL+SHIFT+I elsewhere): N/A
The issue is reproducible in vanilla Hyper.app: Yes

Issue
When you open Hyper on a secondary monitor, and then unplug it, the Hyper windows "stays on" the "secondary monitor". If I don't move it back to the main monitor, I can't access the Hyper Window
Steps to reproduce:

Connect an external monitor
Open Hyper
Move Hyper Window to the external monitor
Close Hyper
Unplug the external monitor
Try to open Hyper again
Hyper opens, but on the "external monitor" position, inaccessible.

Closing for #1608


Geek-onacci Number

Have you read the Contributing Guidelines on Pull Requests?
yes
Description
Geek created a random series and given a name geek-onacci series. Given four
integers x, y, z, N. x, y, z represents the first three numbers of geek-onacci series.
Find the Nth number of the series. The nth number of geek-onacci series is a sum of the
last three numbers (summation of N-1th, N-2th, and N-3th geek-onacci numbers).
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#6562

@HarshCasper @ankitaggarwal23 @bhav09  Please review it .

@ankitaggarwal23 @bhav09 please review it .


Fix sys.path issue with subprocess relaunch in macOS

Description

First reported in https://napari.zulipchat.com/#narrow/stream/212875-general/topic/Unable.20to.20launch.20napari.20on.20main
This problem only occurs in some specific cases, and it was present already before #4989, but now we can see it more often since the subprocess relaunches are seen more often.
We were seeing this error:
ImportError: cannot import name 'run' from 'napari' (unknown location)

which shows that our napari is not importable. Something else got in sys.path.
This only happens if:

User runs napari from a directory containing a napari directory that is NOT the napari package. For example, my napari repo is in ~/devel/napari, but I am running napari from ~/devel.
The Python version recognizes the napari repo as a Namespace. Python 3.9.6 didn't do this, but 3.9.12 does.
The user runs napari (the entry point) instead of python -m napari.

The entry point does not add the working directory to sys.path, but the -m syntax does! If the user had been running python -m napari, this issue would have come up earlier. However, since the subprocess reruns napari with python -m napari, the working directory gets inserted into sys.path (first position), clobbering the installed directory.
This is hardly a bug, but more like "unfortunate behaviour". However, I think we should respect the launching method. So the fix is to detect whether we ran from the entry point, and run the subprocess using the same approach. If not, we assume it was using -m napari.
Type of change

[X] Bug-fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

References

How has this been tested?

[X] Local tests reproduced the original problem and show that this fix solves it.

Final checklist:

[X] My PR is the minimum possible work for the desired functionality
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If I included new strings, I have used trans. to make them localizable.
For more information see our translations guide.

cc/ @psobolewskiPhD

I can confirm this fixes the issue for me locally—I will also try to wean myself of the workflow of launching napari from the dir that happens to be napari parent.
I'm not sure about point 3 above? I think it's the opposite: with this PR, running napari works, but python -m napari gives the same ImportError.
Prior to #4989 napari works, but python -m napari (which I've never used before) gives the same error.
Sorry about the trouble @jaimergp
Thanks for your time!!

looking at the report from @psobolewskiPhD I start thinking that maybe we should run the subprocess only if we recognize the name of the executable (napari, python, python3, python3.X)?

definitely possible @Czaki - what we have here is a strict improvement so I'm going to merge, could you follow up with an issue describing your proposal?


Remove redundant call to k8s api

The code removed call client.Get for operator pod, but nothing is done we the pod read. The only use was accessing pod.Namespace which is already known to us, that's how we got the pod in the first place.

The call for getting the pod is redundant and made only to verify we received the right pod name and namespace. This can be done better in another location during init, with a proper flag to override for local running on debug.


npm.enableScriptExplorer setting requires reloading the window

This is caused by #48807.

Implemented a workaround that updates the context manually based on the value of the setting.


Using focus throws "Illegal number of arguments for 'updateHotspot' command

🐛 Bug Report
We are working right now with Android TV. We have one small app to reproduce streamings and we wanted to create an error overlay in case the stream fails.
Creating the error overlay is working fine on mobile but on TV when the error appears it is not focusing the retry button so the user get stuck
Expected Behavior
The component with the this.retry would be focused
Code Example
export class StreamErrorOverlay extends React.Component {

    componentDidMount() {
        this.retry.focus();
    }

    render() {
        Logger.info("StreamErrorOverlayRender")

        const {t} = this.props
        const onPress = () => this.props.onPress && this.props.onPress()

        return (
            <View style={styles.overlay} accessibilityLabel="streamErrorOverlay">
                <View style={styles.boxMiddle}>

                    <Text style={styles.headerText}>
                        {t('mobile.Alert.Message.StreamUrlUnavailable')}
                    </Text>

                    <Text style={styles.text}>
                        {t('mobile.Alert.Description.StreamFailed')}
                    </Text>

                    <TouchableHighlight
                        accessibilityLabel="retryButton"
                        onPress={onPress}
                        style={styles.buttonStyle}
                        underlayColor={'#004faa'}
                        ref={(ref) => this.retry = ref}
                    >
                        <Text style={styles.buttonText}>
                            {t('shared.Retry')}
                        </Text>
                    </TouchableHighlight>
                </View>
            </View>
        )
    }
}

Environment
React Native Environment Info:
System:
OS: Windows 10
CPU: (4) x64 Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz
Memory: 6.44 GB / 15.88 GB
Binaries:
Yarn: 1.15.2 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.4.1 - C:\Program Files\nodejs\npm.CMD
IDEs:
Android Studio: Version  <IP_ADDRESS> AI-182.5<IP_ADDRESS>64788

After some investigation, we could find out that the issue was not related to the focus, it was related to the keyhandle of the remote control

@canyavall Can you be more specific on what caused the isse? I get the same exception.

you can try
hasTVPreferredFocus={true}


[Admin] Site Table Active/Inactive Status

In the AreaView page, pressing active or inactive in the dropdown menu of the active status in the site table should send a PUT request to the backend /sites route in sites.js to update that site's active status (to either true or false). Make sure you are only updating the active status value and leaving all other information about the site the same.
Make sure the result displays correctly on the frontend as well.

completed in #184


Reimplement with os.scandir for 2.7x speedup

This commit reimplements git-find-repos to use os.scandir to list directory entries, instead of pathlib.Path.iterdir.
Using os.scandir significantly increases performance because the os.DirEntry objects returned expose file attribute information, when the operating system provides it, without additional system calls. For
example, calling the is_dir method does not require an additional system call to be made except in the case of symlinks.
In benchmarking this change in the home directory of my development machine, which contains around 80 Git repositories at various different directory depths, I observe a speedup of 2.7x:
% hyperfine './git-find-repos-orig $HOME' './git-find-repos-new $HOME'
Benchmark 1: ./git-find-repos-orig $HOME
  Time (mean ± σ):      2.286 s ±  0.032 s    [User: 1.329 s, System: 0.920 s]
  Range (min … max):    2.256 s …  2.355 s    10 runs

Benchmark 2: ./git-find-repos-new $HOME
  Time (mean ± σ):     852.1 ms ±  15.0 ms    [User: 259.0 ms, System: 537.1 ms]
  Range (min … max):   826.9 ms … 875.4 ms    10 runs

Summary
  './git-find-repos-new $HOME' ran
    2.68 ± 0.06 times faster than './git-find-repos-orig $HOME'

Released as 2.1.0


feat: pretty print cloudformation event logs

Description of changes

This pull request deals with the pretty print of the cloud formation event logs triggered during deployment of resources in an amplify project.
Issue #, if available

Description of how you validated changes
Checklist

[x] PR description included
[x] yarn test passes
[x] Tests are changed or added
[x] Relevant documentation is changed or added (and PR referenced)
[x] New AWS SDK calls or CloudFormation actions have been added to relevant test and service IAM policies

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

2 for Unused variable, import, function or class
1 for Useless assignment to local variable

Can you address these too?

I have addressed as much as I can write now. The only thing I have not removed is a function hat was used to display an earlier error message. The function is not used right now, but keeping there for a possible future use case?

Ready for another review. @jhockett and @edwardfoyle

Codecov Report

Merging #10720 (11e9b6a) into dev (8cbbd60) will decrease coverage by 0.01%.
The diff coverage is 32.81%.

@@            Coverage Diff             @@
##              dev   #10720      +/-   ##
==========================================
- Coverage   47.36%   47.34%   -0.02%
==========================================
  Files         669      670       +1
  Lines       33071    33147      +76
  Branches     6674     6683       +9
==========================================
+ Hits        15663    15693      +30
- Misses      15727    15770      +43
- Partials     1681     1684       +3

Impacted Files
Coverage Δ

...y-provider-awscloudformation/src/push-resources.ts
18.48% <5.88%> (-0.29%)
:arrow_down:

...rovider-awscloudformation/src/aws-utils/aws-cfn.js
16.62% <21.62%> (+0.49%)
:arrow_up:

...mation/src/aws-utils/aws-cfn-progress-formatter.ts
70.37% <70.37%> (ø)

...lify-provider-awscloudformation/src/initializer.ts
50.56% <92.30%> (+0.85%)
:arrow_up:

...li/src/domain/amplify-usageData/getUsageDataUrl.ts
100.00% <0.00%> (+12.50%)
:arrow_up:

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more

Addressed the last suggestion as well.
Thank you @jhockett and @edwardfoyle . Appreciate your reviews and feedback for this PR.


Should support tag names with hyphens

Can you give an example of a non working situation? It has been working for me since the beginning so I'm a bit surprised.

%ng-div
  More

becomes
<ng>-div More</ng>

Damn, I've misunderstood tags and attributes...
This should be pretty simple to fix https://github.com/Psycojoker/django-hamlpy/pull/8/files#diff-1b5823cc0b651da868cf09a1b041ded8R17


[Feature][FLINK-28083] PulsarSource work with object-reusing DeserializationSchema

Ref: https://issues.apache.org/jira/browse/FLINK-25132

https://github.com/apache/flink/pull/19974


URC 2021:Declaration of Intent to Compete

Needs to be done by October 28th

Currently waiting for the registration form on the URC website.

Emailed Kevin Sloan and he said the registration information has not been released yet. The URC website will be updated once it is.

Filled out the intent to compete form. The next step is to pay the $38 entry fee. The link to pay this will be available by October 19th. The fee is due by November 4th.

Complete - paid entry fee


Merging dev to master

Last changes for the first release.

Great job guys :+1:

Thanks @josec89


Add casinopass collection

can't open the icon @konstantinos193

still can't open your icon. @konstantinos193

i moved the picture to another platform then


zh-trans: add docs/setup/production-environment/tools/kubeadm/setup-ha-etcd-with-kubeadm.md

/assign @markthink


PLease pay attention , porting scrcpy for old windows CE (car media panel for all cars out there!)

Is your feature request related to a problem? Please describe. The problem is your app is very great; the project is very huge and useful and can be useful in cars if you port it for Windows CE car units, as well as Android car units. However, almost all car units are Windows CE.
Describe the solution you'd like It would be great if we could run scrcpy on Windows CE and easily mirror an Android phone.
Describe alternatives you've considered Now, there is only a Chinese app named EasyConn that mirrors Android on Windows CE, which uses screen recording and accessibility to control the device, which sucks. It also uses Bluetooth to transfer sound, which has delays. Scrcpy for Windows CE would be such a relief.
Additional context Please, please, please!

Are you sure that Windows CE belongs to normal Windows NT Family?


XML support broken?

I use this code to export a XML, it's straight from the examples.
I believe some Openvas update changed the XML layout and broke the XML parser.
#!/usr/bin/env python

from __future__ import print_function

from openvas_lib import VulnscanManager, VulnscanException
from threading import Semaphore
from functools import partial
from xml.etree import ElementTree
import base64
import datetime
import os
import sys, re
import subprocess
import time
import random

def my_print_status(i):
	print(str(i)),
	sys.stdout.flush()

def write_report(manager, report_id, ip):
	result_dir = os.path.dirname(os.path.abspath(__file__)) + "/results"
	try:
		report = manager.get_report_xml(report_id)
	except Exception as e:
		print(e)
		return
	else:
		fout = open(result_dir + "/xml/" + ip + ".xml", "wb")
		fout.write(ElementTree.tostring(report, encoding='utf-8', method='xml'))
		fout.close()

def run(manager, ip):
	Sem = Semaphore(0)
	scan_id, target_id = manager.launch_scan(
		target=ip,
		profile="Full and fast",
		callback_end=partial(lambda x: x.release(), Sem),
		callback_progress=my_print_status
	)
	Sem.acquire()
	report_id = manager.get_report_id(scan_id)
	write_report(manager, report_id, ip)
	manager.delete_scan(scan_id)
	manager.delete_target(target_id)

if __name__ == '__main__':
	try:
		openvas_ip = sys.argv[1]
		admin_name = sys.argv[2]
		admin_password = sys.argv[3]
		ip = sys.argv[4]
		manager = VulnscanManager(openvas_ip, admin_name, admin_password)
		run(manager, ip)
	except Exception as e:
		print(e)

I tried to read the newly created XML and the task XML downloaded from Openvas with:
#!/usr/bin/python
from openvas_lib import report_parser
import os

results = report_parser(os.path.dirname(os.path.abspath(__file__)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)

The result:
Traceback (most recent call last):
  File "./test3.py", line 6, in <module>
    results = report_parser(os.path.dirname(os.path.abspath(__file__)) + "/results/xml/"+"<IP_ADDRESS>.xml")
  File "/home/user/.local/lib/python2.7/site-packages/openvas_lib/__init__.py", line 139, in report_parser
    raise ValueError("XML format is not valid, doesn't contains id attribute.")
ValueError: XML format is not valid, doesn't contains id attribute.

That was the result in both cases
I tried this on a Kali (installed from repo) and a Debian(compiled from source) VM.
EDIT: After checking the generated XML seems wrong, it starts like this:
<get_reports_response status="200" status_text="OK"><report content_type="text/xml" extension="xml" format_id="a994b278-1f62-11e1-96ac-406186ea4fc5" id="04198b90-7815-49da-b593-6452a3405b03" type="scan"><owner><name/></owner><name>2016-07-28T00:30:43Z</name><comment/><creation_time>2016-07-28T00:30:43Z</creation_time><modification_time>2016-07-28T00:33:15Z</modification_time><writable>0</writable>
So the XML output is maybe not working as well.

I was getting same error. It appears openvas added a new root element to the reports. I added some code to account for it, however I am not a skilled programmer and they might not like my fix. We shall see.
Here is the info:

report_xml = manager.get_report_xml(report_id)
report_xml.keys()
['status', 'status_text']
report_xml[0].keys()
['format_id', 'content_type', 'type', 'id', 'extension']
xml = report_xml[0]
xml.keys()
['format_id', 'content_type', 'type', 'id', 'extension']

hi dear
when  use this  code:
########
#!/usr/bin/python
from openvas_lib import report_parser
import os
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
###############
i get    this result  :
WARNING:root:name tag unrecognised
WARNING:root:owner tag unrecognised
WARNING:root:comment tag unrecognised
WARNING:root:creation_time tag unrecognised
WARNING:root:modification_time tag unrecognised
WARNING:root:user_tags tag unrecognised
WARNING:root:scan_nvt_version tag unrecognised
WARNING:root:severity tag unrecognised
WARNING:root:qod tag unrecognised
WARNING:root:name tag unrecognised
WARNING:root:owner tag unrecognised
WARNING:root:comment tag unrecognised
WARNING:root:creation_time tag unrecognised
WARNING:root:modification_time tag unrecognised
WARNING:root:user_tags tag unrecognised
WARNING:root:scan_nvt_version tag unrecognised
WARNING:root:severity tag unrecognised
WARNING:root:qod tag unrecognised
[<openvas_lib.data.OpenVASResult object at 0x7fba11a51150>, <openvas_lib.data.OpenVASResult object at 0x7fba13da7950>]
what should    i do  ??!!

Those are tags not accounted for in the code in this library. You can write the code to catch and display them if hey are useful to you, or you can just modify the code to ignore them.  (see my "unknown tags" section below)
Get CVSS
                            cvss_candidate = l_val.find("tags")
                            if cvss_candidate is not None and getattr(cvss_candidate, "text", None):
                                    # Extract data
                                    cvss_tmp = cvss_regex.search(cvss_candidate.text)
                                    if cvss_tmp:
                                            l_nvt_object.cvss_base_vector = cvss_tmp.group(2) if len(cvss_tmp.groups()) >= 2 else ""

                            # Add to the NVT Object
                            try:
                                    l_partial_result.nvt = l_nvt_object
                            except (TypeError, ValueError) as e:
                                    logging.warning(
                                            "NVT oid %s is not a valid NVT value for %s vulnerability. skipping vulnerability..."
                                            % (l_nvt_object.oid,
                                               l_vid))
                                    logging.debug(e)
                                    continue

                    # --------------------------------------------------------------------------
                    # Unknown tags
                    # --------------------------------------------------------------------------
                    else:
                            # Unrecognised tag
                            logging.info("%s tag unrecognised" % l_tag)

@amngibson
so  tnx my friend   i  change it and
when run   this   code  :
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
i get  ths result ::
[<openvas_lib.data.OpenVASResult object at 0x7f0c07d86f90>]
so   how can I   view  report   ??
where is the   out put  of parser module ?
so tnx  for help

@amngibson
so  tnx my friend   i  change it and
when run   this   code  :
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
i get  ths result ::
""""[<openvas_lib.data.OpenVASResult object at 0x7f0c07d86f90>] """
so   how can I   view  report   ??
where is the parsed r

@amngibson
so  tnx my friend   i  change it and
when run   this   code  :
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
i get  ths result ::
###[<openvas_lib.data.OpenVASResult object at 0x7f0c07d86f90>]###
so   how can I   view  report   ??
where is the parsed r

@amngibson
so  tnx my friend   i  change it and
when run   this   code  :
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
i get  ths result ::
""""<openvas_lib.data.OpenVASResult object at 0x7f0c07d86f90>"""
so   how can I   view  report   ??
where is the parsed r

@amngibson
so  tnx my friend   i  change it and
when run   this   code  :
results = report_parser(os.path.dirname(os.path.abspath(file)) + "/results/xml/"+"<IP_ADDRESS>.xml")
print(results)
i get  ths result ::
[<openvas_lib.data.OpenVASResult object at (for exampleHEXNUMBER) ]
so   how can I   view  report   ??
where is the out put of parser module ??
so tnx  for help


[wasm] WASM head is not building with latest VS/templates/nugets

I'm submitting a...

Bug report (I searched for similar issues and did not find one)

Current behavior
Wasm head claims to build successfully but output dist folder is missing files and cannot be run
Expected behavior
dist folder contains at least, I guess, the html landing page, the Uno.UI.js/css files...
Minimal reproduction of the problem with instructions
Upgrade to VS 2017 15.9.10 and create a Uno Cross platform app from the templates.  Upgrade to the latest Uno and Wasm bootstrap.  I deleted the Android and iOS projects but probably unnecessary.  Build the wasm head.  Check the dist folder and note the missing files.  Press Ctrl-F5 to run it and it will fail.
Environment

Nuget Package:

<PackageReference Include="Uno.UI" Version="1.44.0-dev.1080" />
<DotNetCliToolReference Include="Uno.Wasm.Bootstrap.Cli" Version="1.0.0-dev.137" />

Package Version(s):

Affected platform(s):
- [ ] iOS
- [ ] Android
- [ x] WebAssembly
- [ ] Windows
- [ ] Build tasks

Visual Studio
- [ ] 2017 (version: 15.9.10)
- [ ] 2017 Preview (version: )
- [ ] for Mac (version: )

Relevant plugins
- [ ] Resharper (version: )

Installing
    <PackageReference Include="Uno.UI" Version="1.44.0-dev.1080" />
    <PackageReference Include="Uno.Wasm.Bootstrap" Version="1.0.0-dev.236" />
    <DotNetCliToolReference Include="Uno.Wasm.Bootstrap.Cli" Version="1.0.0-dev.137" />

Fixed it.  Thanks @jeromelaban


Loss of output when buffering is enabled

I am inconsistently seeing successes, failures, and stack traces on CI under v0.7.28.  Running a specific test locally, I can reliably see that the new output buffering is hiding success messages on a simple test.
buffering on: https://github.com/http4s/http4s/commit/35c0d48c2029d3477f7444e28ad7e2097ba2163c:
org.http4s.MethodSuite:
[info] Passed: Total 32, Failed 0, Errors 0, Passed 32
[success] Total time: 8 s, completed Aug 30, 2021 5:20:39 PM

buffering off: https://github.com/http4s/http4s/commit/229e01e3c8c4e45a57d89811ddc358e28751aed2:
org.http4s.MethodSuite:
  + Hash[Method]: hash.antisymmetry eq 0.051s
  + Hash[Method]: hash.hash compatibility 0.009s
  + Hash[Method]: hash.reflexivity eq 0.004s
  + Hash[Method]: hash.same as scala hashing 0.004s
  + Hash[Method]: hash.same as universal hash 0.004s
...
[info] Passed: Total 32, Failed 0, Errors 0, Passed 32
[success] Total time: 4 s, completed Aug 30, 2021 5:19:05 PM

This is an enormous build.  I can try to minimize it if the cause is not immediately obvious.  I'm excited about the new feature, and loving the library in general!

Thank you for reporting! I am able to reproduce the issue with a local clone of http4s at the commit https://github.com/http4s/http4s/commit/35c0d48c2029d3477f7444e28ad7e2097ba2163c I wasn't able to reproduce this inside the MUnit build but I took a blind stab at fixing this issue in #409. I'm unable to reproduce the issue in the http4s build after the fix so we can merge and release that commit

I just cut a new 0.7.29 release that may take a few hours to become available on Maven Central

0.7.29 is available now on Maven Central

Thank you!  It's working well for me.

Great! Thank you for confirming


AWS Memcached or Redis Type Moodle error

Hi, i have installed the template in the AWS Milan region and if i choose Memcached for Session and Application. After to put IsMoodleSetupCompleted  to "Yes" and restart the Pipeline i have a Moodle error because the memcached module is not found.
In the install_cacheclient.sh i found that seems to be an error, the command tar -xf  tar -xf '/tmp/latest-64bit-X86  seems has not the openssl3  suffix so it is impossible to copy the amazon-elasticache-cluster-client.so in  /usr/lib64/php/modules/ .
Moreover I have to modify the /etc/php.d/50-memcached.ini and the /etc/php.d/20-redis.ini file to change the extension=/usr/lib64/php/modules/amazon-elasticache-cluster-client.so in extension=amazon-elasticache-cluster-client .
After this change I have another issue infact on my AWS AMI the openssl version is 1.0.2k but seems i need openssl 3.0
I tried to change amazon-elasticache-cluster-client.so for my openssl version as descibed in https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/Appendix.PHPAutoDiscoverySetup.Installing.html but than i have issues with other components.
Moreover the extension=igbinary.so seems to be not present.
Am I doing something wrong ?
Thank you
Best Regards
Andrea Malatesta

Hello, I'm running into the same issue.

Hi Andrea,
Thanks for pointing out the issue and it seems script is breaking because of suffix 'openssl3' and rest of script is not getting executed. We will release fix for the issue in coming days.

please, ¿any update?

Hi Andrea,
Thanks for pointing out the issue and it seems script is breaking because of suffix 'openssl3' and rest of script is not getting executed. We will release fix for the issue in coming days.

Please, any update?

With the last version I still have the error "Exception - Class "Redis" not found" ¿any update?


[BUG] mpicomm KeyError:0 bug on ALCF Polaris after slingshot upgrade

Describe the bug
I'm running a simple example CBO script (myscript.py in
https://deephyper.readthedocs.io/en/latest/tutorials/tutorials/alcf/03_ThetaGPU_mpi/README.html ). However "
search.search(..)" fails with the error   "File "/soft/datascience/conda/2022-09-08/mconda3/lib/python3.8/site-packages/mpi4py/futures/_lib.py", line 525, in recv future, request = pending.pop(pid)
KeyError: 0"

when running on mutliple nodes.
To Reproduce
run run_deephyper_polaris.qsub on polaris
run_deephyper_polaris.qsub.txt
dh_example.py.txt
Expected behavior
I'd expect it to output results
Screenshots

Desktop (please complete the following information):

OS: Cray
System: Polaris
Python version: Python 3.8.13
DeepHyper Version 0.6
(Note I loaded the pre-installed conda environment.  module load conda/2022-09-08)

Additional context

This worked prior to the slingshot 11 upgrade
I also tried with other conda environments such as conda/2023-10-04 but got the same error
It works when running on a single node (no error in this case).

That fixed it! Thanks a lot.


feat: start adding interface to override

Following 721a6c101ecc4a726ab13b4e051adfc266691474, this commit will start adding the interface for python.

@baszalmstra Should VirtualPackageOverride be accessible from python?

@iamthebot (we'd have to ask @baszalmstra), but as things are, the overrides are enabled by default, so they work. Do you need to rename the overrides?

@baszalmstra where would be the right place to put the tests?
❯ CONDA_OVERRIDE_CUDA=1984 pixi run rattler create jupyterlab
Pixi task (rattler in default): cargo run --bin rattler --release -- create jupyterlab
    Finished release [optimized] target(s) in 0.13s
     Running `.pixi/target/release/rattler create jupyterlab`
Target prefix: /home/psi/rattler/.prefix
Installing for platform: Linux64
Loaded 20237 records in 520.548978ms
Virtual packages:
  - __unix=0=0
  - __linux=6.6.45=0
  - __glibc=2.40=0
  - __cuda=1984=0
  - __archspec=1=x86_64_v4

 Already up to date

I dont think we need an end-to-end test. I would place some unit tests in the lib.rs that test a few different overrides. Watch out with environment variables though because rust runs all tests in parallel.

@baszalmstra I think this is done (minus minor ci failure), unless overrides should also override checks like platform.is_linux

@baszalmstra, I did the renaming and the deprecation. I think that's everything. Apologies if I missed something.
right now:

current is the old current
detect is detect with defaults
VirtualPackageOverrides.__init__ replaces VirtualPackageOverrides.default
Some documentation on the python side
The functions are detect_with_overrides and detect_with_fallback.

Thanks! Sorry it took so long!

No worries, thanks for all the helpful comments!


Better AI schema

Description

What is the purpose of this pull request?

[X] New feature
[ ] Documentation update
[ ] Bug fix
[ ] Refactor
[ ] Release
[ ] Other

Closed in favor of https://github.com/onlook-dev/onlook/pull/693


Prometheus not deleting data several hours passed retention time

What did you do?
Set Prometheus --storage.tsdb.retention=24h
What did you expect to see?
Data be deleted after 24h
What did you see instead? Under which circumstances?
Data over 31 hours old is being retained. I have restarted Prometheus several times as this was the only thing I could think of to try and trigger a cleanup.

Prometheus version:

2.0.0
The reason this is problematic is I'm transitioning to Prometheus 2. I started recording with Prometheus 2 several days before stopping Prometheus 1.8.2. This resulted in duplicate data that messes up my queries. I set the retention shorter and monitored it hoping to restart Prometheus 2 with a longer retention soon as it deletes just past what is in 1.8.2.  I don't know how else I could have fixed this problem as I am not aware of any way to manipulate data that is already ingested into Prometheus.

It finally caught up suddenly but data was around 12 hours past the retention before it finally deleted it. I'm not sure what triggers cleanup and if this is expected.

What info is needed? I should be able to replicate this on a test box if specific data is needed.

Was this when Prometheus was started with 24hr from the beginning itself? Or was prometheus started with 15days and was restarted with 24hrs?
We delete one block at a time and the max block duration is usually 10% of the retention. So if prometheus was initially started with 15days, then the blocks could get large enough.

I'm pretty sure it was previously set higher than 24hrs so that's probably what happened. It sucks that there wasn't a better solution for this but it also seems like an edge case.


feat(storage-resize-images): add an option to make the resized images public

Add an opt-in param to make the generated resized images public automatically, so they can be accessed by URL like: https://storage.googleapis.com/{bucket}/{path}
fixes: #140
fixes: https://github.com/firebase/extensions/issues/1029

Merged to #1067


fix: reduced log flooding when collector is not rdy

refs #849
IMO the underlying problem of #849 is that the collector cannot connect to the Agent but the process already receives traffic. And then we would flood the log file with the warning.

Discussed: We want to use isActive attribute of the instrumentations.

https://www.ibm.com/docs/en/instana-observability/current?topic=nodejs-collector-configuration#disabling-individual-tracers

For the record, we discussed this independently. We can only disable all of the AWS v3 instrumentations at once currently, more or less. The available strings for disabling would be:

aws-sdk/v2/index,
aws-sdk/v3/index,
aws-sdk/v2/sdk,
aws-sdk/v2/sqs,
gcp/pubsub, and
gcp/storage

We agreed to not change this in the scope of this PR. We will consider refactoring the mechanism for disabling individual instrumentation plug-ins with the next major update (3.0.0).


instance role is used instead of instance profile

When using a custom role (ec2_iam_role) the role is passed directly as the instance profile, causing an error. Instead, it should create a new instance profile for the role and use that. This error occurs three times in the CloudFormation template JSON.

related pull request: https://github.com/awslabs/cfncluster/pull/602


Correct node link

Could you also update the node.microformats.io website link to https: https://node.microformats.io/

A link from the website to itself? Did you mean a link from https://microformats.io to https://node.microformats.io/? (And not a link from node .microformats.io....)

No, this repository, microformats.io. Added inline comments above.

Regarding https://github.com/microformats/microformats.io/pull/66#pullrequestreview-1218486328
There are (as I learned today) two mf node parser libraries:

https://github.com/glennjones/microformat-node
https://github.com/microformats/microformats-parser

There was a request in the chat to change the link from the first to the second. That second is a Typescript parser. I don't know if they are different. Or which one should be on the site. I understood the chat to be a request to change it.
The conversation about this is in the chat archives, starting at 17:10 on 2022-12-14
Maybe I was wrong.

Yes, I can change the link to https.

From the yarn.lock, it appears to be glennjones/microformat-node.

Well then something was misunderstood. Maybe the chat meant change the node website parser to use the Typescript parser, then change the link.

Resolution will depend on https://github.com/microformats/microformats-parser-website-node/issues/4

@gRegorLove I converted this to draft. I suspect it will be at least a bit of time before any change to the node website is made. And as I mentioned yesterday, PR #69 corrects the links (not just the one you pointed out; there were many http; links to the mf wiki that should be https:).


Modifier to change automatic standby DKP awarded

I would like to request an additional feature that allows to modify the automatic DKP awarded to the players on standby. Ideally there could be an slider or input field next to the check box that enables the automatic values for standby ppl. All automatic DKP would then first be multiplied with the modifier (e.g. 0.9) and afterwards awarded.

Second this feature

Is this feature not already in CLM?


Add travel-advice-publisher

Adds the travel advice publisher app

Trello card: https://trello.com/c/7MGgrIwa/26-set-up-travel-advice-publisher

Makefile updated and new dependencies added


Invalid array settings: sp_acs_url_invalid

I am using laravel-saml2 which hasn't been updated, but suddenly, I think after an update on this, I'm getting this error:
[OneLogin_Saml2_Error]
  Invalid array settings: sp_acs_url_invalid

Can you identify if it can be related according to recent updates?

Any way to solved this? I have changed to absolute path but the error persists.

can you provide more info about the error and the piece of code that fails on lavarel-saml2?


Helm is creating a space in front of my yaml file, causing apiVersion not set.

Output of helm version:
version.BuildInfo{Version:"v3.1.2", GitCommit:"d878d4d45863e42fd5cff6743294a11d28a9abce", GitTreeState:"clean", GoVersion:"go1.13.8"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", BuildDate:"2019-10-15T19:16:51Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.11", GitCommit:"25074a190ef2a07d8b0ed38734f2cb373edfb868", GitTreeState:"clean", BuildDate:"2019-09-18T14:34:46Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):  AKS
I have the following yaml file.
apiVersion: v1
kind: Service
metadata:
  name: tf-ui-client-app-service
spec:
  selector:
    app: tf-ui-client-app
  ports:
    - protocol: TCP
      port: 80

Which when trying to run helm upgrade or install I get the following error:
Release "tf-dev" does not exist. Installing it now.
Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: apiVersion not set

When using helm template I see the following output.

This random character prevents me from installing. Do you think there is a work around?
Weirdest part is that it's not every file that does this.

Do you think it’s possible that the file might contain that special character? I cannot appear to reproduce with a helm create foo && helm template foo.

Unfortunately it is not the case. I was able to figure out a work around, so perhaps it was just an corrected file, I'm just going to close the issue. Not much worth looking into it.


More rust tests for update commitment JNI function

Make more tests for the work done here: https://github.com/Quadratic-Labs/VerkleTries_Besu/pull/10
This has only trivial tests using Fr::0 and Fr::1, it would be good to have more complicated and real-world values tests.
For example:

Commit to 256 values(field elements).
Update i-th value
Commit to 256 values where i-th value is already changed.

Compare if 2nd result is equal to 3rd.

It would also be good to have theses tests (existing+the one in the issue) written as java tests (not only rust), calling the JNI rust lib!


Cu 8692y0n0a Add mypy

Add mypy to workflow and dev-dependency.
Made some changes around typing.

Thanks refactoring this codebase

Feel free to merge when ready


Add GLUT source code to deps.

Of course change the build_debian.sh of deps/glew
download source here

i don't use glew anymore


Default warden client update

@jbhatt-salesforce, I think this looks good!  Let's work together and get the tests passing and see if we can crank through some more web service methods.

[Current coverage][cc-pull] is 37.63%

Merging [#16][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.05%

@@             master        #16   diff @@
==========================================
  Files           207        207
  Lines         11121      11121
  Methods           0          0
  Messages          0          0
  Branches       1950       1950
==========================================
- Hits           4191       4185     -6
- Misses         6388       6394     +6
  Partials        542        542

Powered by Codecov. Last updated by [2e4d9bb...806e381][cc-compare]
[cc-base-branch]: https://codecov.io/gh/jbhatt-salesforce/Warden-Service/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/jbhatt-salesforce/Warden-Service/compare/2e4d9bba78c388d32db57e4445d6d4c461562fea...806e381aedf50330e719e095915bcbf3373f3f4f?src=pr
[cc-pull]: https://codecov.io/gh/jbhatt-salesforce/Warden-Service/pull/16?src=pr

Hi Jigna,
Just want to double check if we need Jason annotation for aggregator enum
in policy dto. Please ignore me if I am wrong.
Thanks/Ruofan
On Tue, Jul 12, 2016 at 2:02 PM, Codecov<EMAIL_ADDRESS>wrote:

Current coverage
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/pull/16?src=pr
is 37.63%
Merging #16
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/pull/16?src=pr
into master
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/branch/master?src=pr
will decrease coverage by 0.05%
@@             master        #16   diff @@
Files           207        207
Lines         11121      11121
Methods           0          0
Messages          0          0
Branches       1950       1950
==========================================- Hits           4191       4185     -6   - Misses         6388       6394     +6
Partials        542        542
Powered by Codecov https://codecov.io?src=pr. Last updated by
2e4d9bb...806e381
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/compare/2e4d9bba78c388d32db57e4445d6d4c461562fea...806e381aedf50330e719e095915bcbf3373f3f4f?src=pr
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jbhatt-salesforce/Warden-Service/pull/16#issuecomment-232180325,
or mute the thread
https://github.com/notifications/unsubscribe/AHigMrAzFv2G2_Ej35024QlyW3gapS4Uks5qVAD0gaJpZM4IzN-U
.

I think another option is to use @JsonFormat
not sure about it,  but maybe it is easier for object transform
On Tue, Jul 12, 2016 at 2:43 PM, Ruofan Zhang<EMAIL_ADDRESS>wrote:

Hi Jigna,
Just want to double check if we need Jason annotation for aggregator enum
in policy dto. Please ignore me if I am wrong.
Thanks/Ruofan
On Tue, Jul 12, 2016 at 2:02 PM, Codecov<EMAIL_ADDRESS>wrote:

Current coverage
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/pull/16?src=pr
is 37.63%
Merging #16
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/pull/16?src=pr
into master
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/branch/master?src=pr
will decrease coverage by 0.05%
@@             master        #16   diff @@
Files           207        207
Lines         11121      11121
Methods           0          0
Messages          0          0
Branches       1950       1950
==========================================- Hits           4191       4185     -6   - Misses         6388       6394     +6
Partials        542        542
Powered by Codecov https://codecov.io?src=pr. Last updated by
2e4d9bb...806e381
https://codecov.io/gh/jbhatt-salesforce/Warden-Service/compare/2e4d9bba78c388d32db57e4445d6d4c461562fea...806e381aedf50330e719e095915bcbf3373f3f4f?src=pr
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jbhatt-salesforce/Warden-Service/pull/16#issuecomment-232180325,
or mute the thread
https://github.com/notifications/unsubscribe/AHigMrAzFv2G2_Ej35024QlyW3gapS4Uks5qVAD0gaJpZM4IzN-U
.


fix(appfunsdk-version) Fix issue #30: Update to the latest app-function-sdk

Fix issue #30
Signed-off-by: Jim Wang<EMAIL_ADDRESS>

@lenny-intel  Please assign reviewers, thanks! -Jim


FileExists return false when file exists on server

FileExists is returning false on a file that exists on the server. I use relative path for this.
Use the below code flow, here the exists variable is false but the Bok.xlsx-file exists on the server in the specified working directory.
var ftpClient = new FtpClient("url to server", "username", "password");
await ftpClient.ConnectAsync();
await ftpClient.SetWorkingDirectoryAsync("relative path");
var exists = await ftpClient.FileExistsAsync("Bok.xlsx");

If I change the last row in the above code example to as below, I can figure out that the file exists by code. Here the exists-variable is true.
var ftpClient = new FtpClient("url to server", "username", "password");
await ftpClient.ConnectAsync();
await ftpClient.SetWorkingDirectoryAsync("relative path");
var exists = (await ftpClient.GetListingAsync()).Any(x => x.Name == "Bok.xlsx");

Problem continues on last version

Works over here, just took a random FTP. Maybe it is specific to particular FTP server software?
using FluentFTP;
using System;

namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Started!");

            FtpClient ftpClient = new FtpClient("ftp.ihe.net");

            Console.WriteLine("Connecting...");
            ftpClient.Connect();
            Console.WriteLine("Connected");

            Console.WriteLine("Get listing...");
            var files = ftpClient.GetListing("MarketingAndPresentations/Artwork_Images/");

            foreach (var file in files)
            {
                if (file.Type == FtpFileSystemObjectType.File)
                {
                    Console.WriteLine($"{file.FullName} = {ftpClient.FileExists(file.FullName)}");
                }
            }

            Console.WriteLine("Finished!");
            Console.ReadKey(intercept: true);
        }
    }
}

After the instruction GetListing the command FileExists works fine.  I do not know why it can be ...

Can you guys submit the FTP logs (see the FAQ on how to log stuff) so we can debug this? Especially the part pertaining to the call to FileExists.

I am running into the same issue.
I checked the output logs (attached at the bottom) and found the location in code where the problem might be.
The FileExists and FileExistsAsync Methods do not cater for the 550 - "SIZE not allowed in ASCII mode" Error. But since it only checks for Error 550 (introduced with #179), it returns without attempting anything further.
A pull request for a change will follow shortly that caters for the specific error message.
# ConnectAsync()
Status:   Connecting to ***:21
Response: 220 FTP Server ready.
Command:  USER ***
Response: 331 Password required for ftpserver
Command:  PASS ***
Response: 230 User ftpserver logged in
Command:  FEAT
Response: 211 End
Response: 211-Features:
Response: MFF modify;UNIX.group;UNIX.mode;
Response: REST STREAM
Response: MLST modify*;perm*;size*;type*;unique*;UNIX.group*;UNIX.mode*;UNIX.owner*;
Response: UTF8
Response: EPRT
Response: EPSV
Response: LANG zh-CN;zh-TW;bg-BG;en-US;es-ES;fr-FR;it-IT;ja-JP;ko-KR;ru-RU
Response: MDTM
Response: TVFS
Response: MFMT
Response: SIZE
Status:   Text encoding: System.Text.UTF8Encoding+UTF8EncodingSealed
Command:  OPTS UTF8 ON
Response: 200 UTF8 set to on
Command:  SYST
Response: 215 UNIX Type: L8

# FileExistsAsync("/somefolder/288120b8_transferfile.txt")
Command:  SIZE /somefolder/288120b8_transferfile.txt
Response: 550 SIZE not allowed in ASCII mode

# Dispose()
Status:   Disposing FtpClient object...
Command:  QUIT
Response: 221 Goodbye.
Status:   Disposing FtpSocketStream...
Status:   Disposing FtpSocketStream...

@Dragonsangel Does this solve your issue? I applied a variation of your fix.
https://www.nuget.org/packages/FluentFTP/27.0.2

@robinrodricks the fix worked in my scenario. Thanks for cleaning up the fix, was wondering about the double "Get Filesize" implementation.

Great to hear that. Thanks for the PR btw and sorry again to reject it.

Now when FileExists is implemented by SIZE, I'm getting false positives (file does not exist, but server returns positive result and I'm getting true).
Log:
Command:  CWD /private/Test2/Docs/Teensy
Waiting for response to: CWD /private/Test2/Docs/Teensy
Response: 250 CWD command successful [29ms]
Command:  PWD
Waiting for response to: PWD
Response: 257 "/private/Test2/Docs/Teensy" is the current directory [33ms]
>         OpenWrite("Teensy32_1.pdf", Binary)
>         GetFileSize("Teensy32_1.pdf")
Command:  SIZE Teensy32_1.pdf
Waiting for response to: SIZE Teensy32_1.pdf
Response: 550 Teensy32_1.pdf: No such file or directory [40ms]

Here it tells correctly, that file does not exist, and then
>         OpenDataStream("STOR Teensy32_1.pdf", 0)
>         OpenPassiveDataStream(PASV, "STOR Teensy32_1.pdf", 0)
Command:  PASV
Waiting for response to: PASV
Response: 227 Entering Passive Mode (195,78,67,12,138,204). [28ms]
Connecting to IP #1= ***:35532
Command:  STOR Teensy32_1.pdf
Waiting for response to: STOR Teensy32_1.pdf
Response: 150 Opening BINARY mode data connection for Teensy32_1.pdf [36ms]
SSL Buffering force disabled, is .NET 5.0 and later
FTPS authentication successful, lib = .NET SslStream, cipher suite = Tls12 (Aes128, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 44550, 255) [72ms]
Closing/Disposing FtpSocketStream(data connection)
>         DirectoryExists("/private/Test2/Docs/Teensy/Teensy32_2.pdf")
Command:  CWD /private/Test2/Docs/Teensy/Teensy32_2.pdf
Waiting for response to: CWD /private/Test2/Docs/Teensy/Teensy32_2.pdf
Response: 550 /private/Test2/Docs/Teensy/Teensy32_2.pdf: No such file or directory [64ms]
>         FileExists("/private/Test2/Docs/Teensy/Teensy32_2.pdf")
Command:  SIZE /private/Test2/Docs/Teensy/Teensy32_2.pdf
Waiting for response to: SIZE /private/Test2/Docs/Teensy/Teensy32_2.pdf
Response: 226 Transfer complete [1,6s]

However, file Teensy32_2.pdf DOES NOT exist in that location.

This may shed some more light on the case:
Waiting for response to: PWD
Response: 226 Transfer complete [3ms]
Failed to parse working directory from: Transfer complete
>         GetListing(null, Auto)
>         OpenDataStream("MLSD /", 0)
>         OpenPassiveDataStream(PASV, "MLSD /", 0)
Command:  PASV
Waiting for response to: PASV
Response: 257 "/private/Test2/Docs/Teensy" is the current directory [27ms]
Zgłoszony wyjątek: „FluentFTP.Exceptions.FtpException” w FluentFTP.dll
Malformed PASV response: "/private/Test2/Docs/Teensy" is the current directory

Tell the FluentFTP version you are showing these logs for

That would be 46.0.2.

It has nothing to do with FileExists return false when file exists on server,
is is:
Command:  STOR Teensy32_1.pdf
Waiting for response to: STOR Teensy32_1.pdf
Response: 150 Opening BINARY mode data connection for Teensy32_1.pdf [36ms]
SSL Buffering force disabled, is .NET 5.0 and later
FTPS authentication successful, lib = .NET SslStream, cipher suite = Tls12 (Aes128, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 44550, 255) [72ms]
Closing/Disposing FtpSocketStream(data connection)

and then the code just continues... although the transfer is still running.... Pls transfer this to a new issue.


missing install file

Hi, I'm checking the logger's feature and documentation to see if it could fit in my projects. Looks interesting.
While checking the install documentation, i noticed the "logger_install.sql" file is missing from the script folder...
What is wrong ? The documentation or the file has been deleted by mistake?
Thanks

@guycareau thanks for the feedback and question. Yes it is confusing and in the next release it will be much clearer (you actually won't need to download anything at all if you want to install live from URL!). In the mean time what you'll need to do is go to the releases page and download the latest version (3.1.1). Unzip it and it's in there.
Let me know if you have any other issues.


Crash due to number of open files

headscale serve seems to accumulate number of open files and crashes.
What number is to be expected?
btw. headscale is awesome work!!
Version: 0.9.2
Oct 01 13:18:50 server-1 headscale[8588]: 2021-10-01T13:18:50Z ERR Error accessing db error="unable to open database file: too many open files"
Oct 01 13:18:50 server-1 headscale[8588]: 2021-10-01T13:18:50Z ERR Cannot fetch peers error="unable to open database file: too many open files" func=getMapResponse

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done
PID   8588 has 1024 FDs

ps -ef |grep 8588
headsca+    8588       1 13 Sep30 ?        03:02:09 /usr/sbin/headscale serve

Config
{
    "server_url": "https://server.domain.com",
    "listen_addr": "<IP_ADDRESS>:8080",
    "private_key_path": "/etc/headscale/private.key",
    "derp_map_path": "/etc/headscale/derp.yaml",
    "ephemeral_node_inactivity_timeout": "30m",
    "db_type": "sqlite3",
    "db_path": "/mnt/data/headscale/db.sqlite",
    "tls_letsencrypt_hostname": "",
    "tls_letsencrypt_listen": ":http",
    "tls_letsencrypt_cache_dir": ".cache",
    "tls_letsencrypt_challenge_type": "HTTP-01",
    "tls_cert_path": "",
    "tls_key_path": "",
    "acl_policy_path": "/mnt/data/headscale/policy.hujson",
    "dns_config": {
        "nameservers": [
            "<IP_ADDRESS>"
        ]
    }
}

I hit this as well. Mine is fronted by nginx - i meant to check and see if nginx is misbehaving or headscale but I haven't had time to track it down.

same here. nginx in front.
it seems to happen after ephemeral nodes are added. Not sure if this is related. Might be a coincidence.
for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   10 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   10 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   10 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   10 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   14 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   15 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   16 FDs

for pid in /proc/[0-9]*; do printf "PID %6d has %4d FDs\n" $(basename $pid) $(ls $pid/fd | wc -l); done |grep 78809
PID  78809 has   19 FDs

@qbit is it also happening for you with ephemeral nodes?

I am not using pre-auth keys, so I don't think it is.

I switched to a non-nginx configuration and things seem happy. I wonder if diddling nginx timeouts would resolve this?
Maybe proxy_connect_timeout 300; or something in the location block?


[BACKLOG-16242] Store run configurations in abstractmeta

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
ant -Dtestreports.dir=bin/reports/unit-test -f core/build.xml clean-all resolve jacoco && ant -f core/build.xml checkstyle publish-local
ant -Dtestreports.dir=bin/reports/unit-test -f engine/build.xml clean-all resolve jacoco && ant -f engine/build.xml checkstyle publish-local
ant -Dtestreports.dir=bin/reports/unit-test -f ui/build.xml clean-all resolve jacoco && ant -f ui/build.xml checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  core/src/org/pentaho/di/core/extension/KettleExtensionPoint.java
  engine/src/org/pentaho/di/job/entries/trans/JobEntryTrans.java
  engine/src/org/pentaho/di/job/entries/trans/messages/messages_en_US.properties
  plugins/pdi-engine-configuration/api/src/main/java/org/pentaho/di/engine/configuration/api/RunConfigurationFactory.java
  plugins/pdi-engine-configuration/impl/src/main/java/org/pentaho/di/engine/configuration/impl/EmbeddedRunConfigurationManager.java
  plugins/pdi-engine-configuration/impl/src/main/java/org/pentaho/di/engine/configuration/impl/MetaStoreRunConfigurationFactory.java
  plugins/pdi-engine-configuration/impl/src/main/java/org/pentaho/di/engine/configuration/impl/RunConfigurationManager.java
  plugins/pdi-engine-configuration/impl/src/main/java/org/pentaho/di/engine/configuration/impl/extension/RunConfigurationRunExtensionPoint.java
  plugins/pdi-engine-configuration/impl/src/main/java/org/pentaho/di/engine/configuration/impl/extension/RunConfigurationSaveExtensionPoint.java
  plugins/pdi-engine-configuration/impl/src/main/resources/OSGI-INF/blueprint/beans.xml
  plugins/pdi-engine-configuration/impl/src/test/java/org/pentaho/di/engine/configuration/impl/extension/RunConfigurationRunExtensionPointTest.java
  ui/src/org/pentaho/di/ui/job/entries/trans/JobEntryTransDialog.java

Unit test coverage change
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.core.extension.KettleExtensionPoint

Instruction Change:  + .01%

org.pentaho.di.core.auth.core.impl.DefaultAuthenticationConsumerFactory

Branch Change:  + 7.14%
Complexity Change:  + 7.69%

org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -.39%:small_red_triangle_down:
Complexity Change: -.51%:small_red_triangle_down:
Instruction Change: -.08%:small_red_triangle_down:

org.pentaho.di.job.entries.evaluatetablecontent.JobEntryEvalTableContent

Branch Change: -1.01%:small_red_triangle_down:
Complexity Change: -1.06%:small_red_triangle_down:
Instruction Change: -.17%:small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -2.00%:small_red_triangle_down:
Complexity Change: -2.82%:small_red_triangle_down:
Instruction Change: -.59%:small_red_triangle_down:

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change:  + 3.28%
Line Change:  + 3.87%

org.pentaho.di.job.entries.trans.JobEntryTrans

Instruction Change: -.07%:small_red_triangle_down:
Line Change: -.02%:small_red_triangle_down:

org.pentaho.di.trans.step.StepMeta

Branch Change:  + .68%
Complexity Change:  + .58%
Instruction Change:  + .19%
Line Change:  + .26%

org.pentaho.di.trans.steps.calculator.CalculatorMetaFunction

Branch Change:  + 8.70%
Complexity Change:  + 3.08%
Instruction Change:  + .75%
Line Change:  + .89%

org.pentaho.di.trans.steps.combinationlookup.CombinationLookupMeta

Instruction Change: -.04%:small_red_triangle_down:

org.pentaho.di.trans.steps.constant.ConstantMeta

Instruction Change:  + .10%

org.pentaho.di.trans.steps.csvinput.CsvInputMeta

Instruction Change: -.05%:small_red_triangle_down:

org.pentaho.di.trans.steps.datagrid.DataGridMeta

Instruction Change: -.09%:small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change:  + .11%

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Branch Change:  + .31%
Instruction Change:  + .06%
Line Change: -.23%:small_red_triangle_down:
Method Change: -1.02%:small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change:  + 4.17%
Complexity Change:  + 4.21%

org.pentaho.di.trans.steps.insertupdate.InsertUpdateMeta

Instruction Change:  + .05%

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -2.35%:small_red_triangle_down:
Complexity Change: -2.70%:small_red_triangle_down:
Instruction Change: -.35%:small_red_triangle_down:
Line Change: -.97%:small_red_triangle_down:

org.pentaho.di.trans.steps.setvalueconstant.SetValueConstantMeta

Instruction Change:  + .14%

org.pentaho.di.trans.steps.synchronizeaftermerge.SynchronizeAfterMergeMeta

Instruction Change:  + .04%

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change:  + .91%
Complexity Change:  + .82%

org.pentaho.di.ui.job.entries.trans.JobEntryTransDialog

Instruction Change: -.03%:small_red_triangle_down:
Line Change: -.02%:small_red_triangle_down:

@ddiroma @mdamour1976


Ctrl-C won't stop once in fixing loop

You can't Ctrl-C to stop the fixes. Probably due to overly-aggressive try/finally statement.

There looks like two separate issues at play here.

 Currently investigating whether this is expected behavior or a bug.
The checker.check_x() methods seem to trap ctrl-c's at the method level. As it loops through all the items, ctrl-c cancels that particular item rather than hitting the try/except/finally structure outside of the loop. It just quickly moves onto the next item. This is annoying but ok as the checks don't make any changes we'd want to log for manual roll-back, so we can just kill the window to stop if we need to.

Assuming the arcpy headache can be solved, adding
except KeyboardInterrupt:
    print('Interrupted by Ctrl-c')

Allows you to bomb out of the fixes while still writing the log file for any that have already been completed.
While trying to solve the arcpy headache, you can successfully interrupt the program and hit the finally clause to write the log file by causing a network interruption, which throws up a network-related exception that isn't handled.

This seems like an issue that isn't really worth spending a lot of time on unless you are very interested to get to the bottom of it.

My concern is that the only way to cancel a fix operation is to close the interpreter, which prevents the log file from being written so you lose any data about what has been done. However, you're probably right, the impact is probably too small to justify the time to fix it.


[WIP] Ensure Redis Proxy can follow redirection when doing request mirroring

Description: Currently the Redis redirection logic is part of the command splitter, this has the consequence that shadow traffic to other clusters are not able to follow the redirection responses.  Part of the challenge of the change is that the original request is the storage of the original request, as it could be destroyed before the redirection command is received.
The proposed solution is to refactor the redirection logic into the Redis ConnPool.  This greatly simplify the redirection logic.  Also the connection pool is the only entity that can meaningfully manage the connections to upstream and correctly drain the connections.
Another part of the change is to store a shared_ptr to the RespValue within the connection pool.  In order to avoid excessive copying request, I added the CompositeArray type that maintains a shared_ptr to the original MGET/MSET request and the position of the individual GET/SET request.
This approach is significantly faster for larger payloads but slower for large batch size with small payload.
Here's the performance measurement where Splite_Move is the new approach and Split_Copy is the old approach.  The first argument is the batch size and the second argument is the payload size.

But below the table can you summarize your conclusions from it?

master merge needed.

drive by comment from description: does it make sense to flag-control this performance trade-off, as you indicated there are cases where the new approach is slower. Maybe that describes someone's use-case for which this is a regression?

I think most of the cost is from creating the new shared_ptr, I think I can work around this and improve the performance.  I'll report back.

Ok, I've update the code and the microbenchmark result.  It's looking much better.

Putting this into wait until we get the redis test flake fixed and master merged into this.
/wait

@msukalski @FAYiEKcbD0XFqF2QK2E4viAHg8rMm2VbjYKdjTg PTAL


Bug: Cannot add movie to couchpotato from android phone (chrome)

Chrome Version: 49.0.2623.91
Phones tried: OnePlus One & Moto G 2015
Android Versions tried: Lollipop & Marshmallow
I am unable to test on an iPhone
Steps to reproduce:

Go to the couchpotato page on HTPC-Manager
Search for a movie
Select wanted movie by clicking on title

The following popup shows Movie Info, Rating, Dropdown for Movie Name, Dropdown for desired quality. HOWEVER there is no clickable button to add the movie to the wanted list. I could also not zoom out to try and locate said button.
I hope this could be fixed, I like to use HTPC to manage my couchpotato etc. to avoid having too many open ports at home
Thanks

Thanks for the report, I'll try to recreate the issue unfortunately I don't have e a droid to test with


more tests

Codecov Report

Merging #31 into master will increase coverage by 4.98%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #31      +/-   ##
==========================================
+ Coverage   66.69%   71.68%   +4.98%
==========================================
  Files          22       22
  Lines        1129     1130       +1
==========================================
+ Hits          753      810      +57
+ Misses        232      179      -53
+ Partials      144      141       -3

Impacted Files
Coverage Δ

string_builder.go
76.59% <ø> (ø)

builder.go
97.39% <100%> (+8.79%)
:arrow_up:

cond_and.go
78.57% <0%> (-7.15%)
:arrow_down:

cond_in.go
72.9% <0%> (+3.87%)
:arrow_up:

cond_neq.go
60% <0%> (+4.44%)
:arrow_up:

sql.go
61.85% <0%> (+7.21%)
:arrow_up:

cond_notin.go
72.9% <0%> (+8.38%)
:arrow_up:

Continue to review full report at Codecov.

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


miriad antenna position indexing

the way we handle missing antennas is probably incorrect and will lead antenna numbers not matching the correct positions in the antpos array

This is now fixed.


Gateway primers 2

Related to https://github.com/manulera/ShareYourCloning_backend/pull/234
I think it makes more sense to adhere to the recommended InvitroGen primer design, and don't suggest anything for other plasmids. The primer design is useful here to make the proteins in frame with the gateway standard.

Codecov Report
Attention: Patch coverage is 92.95775% with 15 lines in your changes missing coverage. Please review.

Project coverage is 85.07%. Comparing base (43016ac) to head (fb6c9c6).

Files with missing lines
Patch %
Lines

...gn/SequenceTabComponents/PrimerDesignGatewayBP.jsx
94.26%
7 Missing :warning:

src/hooks/useGatewaySites.js
86.95%
3 Missing :warning:

src/components/form/RetryAlert.jsx
60.00%
2 Missing :warning:

..._design/SourceComponents/PrimerDesignGatewayBP.jsx
93.33%
2 Missing :warning:

...er_design/SequenceTabComponents/usePrimerDesign.js
66.66%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #311      +/-   ##
==========================================
+ Coverage   84.55%   85.07%   +0.51%
==========================================
  Files         116      121       +5
  Lines        3431     3637     +206
  Branches      726      705      -21
==========================================
+ Hits         2901     3094     +193
- Misses        490      512      +22
+ Partials       40       31       -9

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


Update view.jsx

language name fix
PR Checklist

Please check all that apply to this PR using "x":

[x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[ ] I have checked that this PR does not introduce a breaking change
[x] This PR introduces breaking changes and I have provided a detailed explanation below

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[ ] Other - Please describe:

Fixes
Issue Number:
What is the current behavior?
What is the new behavior?
Other information

@seanyesmunt this will conflict with #3180, probably better to merge #3180 then make this change manually afterwards.
(Thanks @seadox!)

This was already added so I'm going to close this
https://github.com/lbryio/lbry-desktop/blob/master/ui/constants/languages.js#L165


Keyword argument error on Ruby 3.0 for #receive

Subject of the issue
When passing a block to#receive, it does not yield kwargs correctly but instead wraps kwargs in an array.
Your environment

Ruby version: 3.0.0
rspec-mocks version: 3.10.1

Steps to reproduce
# Gemfile

source 'https://rubygems.org'
gem 'rspec'
ruby '3.0.0'

run rspec --init
# spec/receive_spec.rb

class Maker
  def do_stuff(thing: nil)
    puts "thing from kwargs: #{thing}"
  end
end

class Caller
  def self.prepare(_arg, maker: nil)
    clerk = new(maker: maker)
    yield(clerk)
  end

  def initialize(maker: nil)
    @maker = maker
  end

  def call_maker(thing: nil)
    @maker.do_stuff(thing: thing)
  end
end

require_relative 'spec_helper' # just the boilerplate from rspec --init

describe Caller do
  let(:the_thing) { 'test' }
  let(:maker) { Maker.new }

  # fails in Ruby 3.0.0
  it 'hands the thing to the maker (kwargs)' do
    expect(maker).to receive(:do_stuff) do |**kwargs|
      expect(kwargs[:thing]).to eq(the_thing)
    end.exactly(1).times

    described_class.prepare('bar', maker: maker) do |clerk|
      clerk.call_maker(thing: the_thing)
    end
  end

  it 'hands the thing to the maker (args)' do
    expect(maker).to receive(:do_stuff) do |*args|
      expect(args.first[:thing]).to eq(the_thing)
    end.exactly(1).times

    described_class.prepare('bar', maker: maker) do |clerk|
      clerk.call_maker(thing: the_thing)
    end
  end
end

-> run rspec.
Ruby 2.7.2: all specs are passing ✅
Ruby 3.0.0: the first spec is failing ❌
  1) Caller hands the thing to the maker (kwargs)
     Failure/Error: expect(kwargs[:thing]).to eq(the_thing)

       expected: "test"
            got: nil

       (compared using ==)
     # ./spec/receive_spec.rb.rb:30:in `block (3 levels) in <top (required)>'
     # ./spec/receive_spec.rb.rb:18:in `call_maker'
     # ./spec/receive_spec.rb.rb:34:in `block (3 levels) in <top (required)>'
     # ./spec/receive_spec.rb.rb:10:in `prepare'
     # ./spec/receive_spec.rb.rb:33:in `block (2 levels) in <top (required)>'

Expected behavior
When passing a block to receive, I can pass kwargs and have those available inside the block.
Actual behavior
Kwargs are a hash wrapped in an array.
For reference
I did mention this issue here: https://github.com/rspec/rspec-mocks/issues/1306#issuecomment-756079746
but falsely thought it was an issue with .as_null_object (I used fake_maker = double('Maker').as_null_object instead of let(:maker) { Maker.new } originally).
code https://github.com/rspec/rspec-mocks/blob/v3.10.1/lib/rspec/mocks/syntax.rb#L114

Can you try this against 3.10.2, we just released some fixes

Can you try this against 3.10.2, we just released some fixes

It seems https://github.com/rspec/rspec-mocks/pull/1407 has fixed this, thanks! 🚀  --the above spec is passing on 3.10.2

It seems https://github.com/rspec/rspec-mocks/pull/1407 has fixed this, thanks! 🚀  --the above spec is passing on 3.10.2

Thanks for checking!

Thanks for checking!


Redudant contact constriants in OSC

This issue was brought up in #95.
Currently the contact constraints are 3D per point in OperationalSpaceControl. This leads to potential redundant constraints. For example, the contact constraints for Cassie's foot should be 5 DoF because the foot can rotate along the line through the two contact points.
Not sure how much this affect the performance of OSC. We will need to test it and if it helps we will merge the new code into master branch.

Issue resolved in PR #162

PR #162 only fixed the issue partially. Currently the redundant constraint direction is expressed in the world frame, but we would like to express it in local frame such as the toe frame to avoid singularity.
Per discussion with @mposa , one quick solution could be changing the third frame to the local frame in the arguments of the following functions.
https://github.com/DAIRLab/dairlib/blob/9268cc75bac085a0829e18c9efe24400a997b5c4/multibody/kinematic/world_point_evaluator.cc#L68
https://github.com/DAIRLab/dairlib/blob/9268cc75bac085a0829e18c9efe24400a997b5c4/multibody/kinematic/world_point_evaluator.cc#L80

PR #162 only fixed the issue partially. Currently the redundant constraint direction is expressed in the world frame, but we would like to express it in local frame such as the toe frame to avoid singularity.
Per discussion with @mposa , one quick solution could be using the local frame for the third frame in the arguments of the following functions.
https://github.com/DAIRLab/dairlib/blob/9268cc75bac085a0829e18c9efe24400a997b5c4/multibody/kinematic/world_point_evaluator.cc#L68
https://github.com/DAIRLab/dairlib/blob/9268cc75bac085a0829e18c9efe24400a997b5c4/multibody/kinematic/world_point_evaluator.cc#L80

Simply changing the third frame to toe frame didn't work, because we express the contact force wrt the frame in OSC which means the z axis has to point to world's +z.
#267 rotates J and JdotV about global z axis (expressing J and JdotV in local frame).


soci ztoc info command should report some interesting metadata about the ztoc

Describe the solution you'd like
Currently, soci ztoc info does little more than dump a list of files in the associated layer. There is some potentially interesting metadata about the zTOC itself that it could/should report. For example:

the total size of the zTOC
the sizes of the separate components (zInfo and TOC)
number of spans
min/max actual span size
number of files
number of files that cross multiple spans

I think this is reasonable, but we should probably change soci index info to do something similar and create a new command (maybe soci index inspect) which outputs the full contents of the index (and ztoc for the equivalent comand).


Features

Codecov Report

Merging #11 (9a2c2d7) into main (91b9d86) will increase coverage by 2.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #11      +/-   ##
==========================================
+ Coverage   80.95%   82.97%   +2.02%
==========================================
  Files           7        7
  Lines          42       47       +5
==========================================
+ Hits           34       39       +5
  Misses          8        8

Impacted Files
Coverage Δ

djangoproject/settings.py
100.00% <100.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


Qt GUI: Update MSIX manifest

Lower Windows version requirement and add list of file extensions for FileExplorerContextMenus.

FYI with the current Qt MSIX build script, MSIX package is 149MiB and install size is 339MiB.

Nice to have that in the source code but:

MSIX package is 149MiB

It is definitely a blocker for general release, lot of people love to have MediaInfo small.
Maybe later ever removing the HTML engine or using the integrated one... But not a priority for the moment.

Maybe later ever removing the HTML engine or using the integrated one... But not a priority for the moment.

Also can make VCLibs a dependency rather than statically linking or bundling the DLLs to reduce size further. Most systems should have VCLibs installed already and it should auto-install for those that don't if added as dependency. Will also ensure VCLibs is kept updated without needing to update the app.
If others are interested in Qt version, maybe can consider publishing to Store as an alternate / beta version.


Publishing resolved versions broken for dependencies with a classifier

Current Behavior
Using the following configuration does not publish the resolved version:
dependencies {
    api "org.primefaces:primefaces:13.+:jakarta"
}

publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.java
            versionMapping {
                usage('java-api') {
                    fromResolutionOf('runtimeClasspath')
                }
                usage('java-runtime') {
                    fromResolutionResult()
                }
            }
        }
    }
}

The following pom is generated:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <!-- This module was also published with a richer model, Gradle metadata,  -->
  <!-- which should be used instead. Do not delete the following line which  -->
  <!-- is to indicate to Gradle or any Gradle module metadata file consumer  -->
  <!-- that they should prefer consuming it instead. -->
  <!-- do_not_remove: published-with-gradle-metadata -->
  <modelVersion>4.0.0</modelVersion>
  <groupId>de.larsgrefer.dummy</groupId>
  <artifactId>gradle-test</artifactId>
  <version>unspecified</version>
  <dependencies>
    <dependency>
      <groupId>org.primefaces</groupId>
      <artifactId>primefaces</artifactId>
      <version>13.+</version>
      <classifier>jakarta</classifier>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

Expected Behavior
The pom should include the resolved version:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <!-- This module was also published with a richer model, Gradle metadata,  -->
  <!-- which should be used instead. Do not delete the following line which  -->
  <!-- is to indicate to Gradle or any Gradle module metadata file consumer  -->
  <!-- that they should prefer consuming it instead. -->
  <!-- do_not_remove: published-with-gradle-metadata -->
  <modelVersion>4.0.0</modelVersion>
  <groupId>de.larsgrefer.dummy</groupId>
  <artifactId>gradle-test</artifactId>
  <version>unspecified</version>
  <dependencies>
    <dependency>
      <groupId>org.primefaces</groupId>
      <artifactId>primefaces</artifactId>
      <version>13.0.6</version>
      <classifier>jakarta</classifier>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

Context (optional)
No response
Steps to Reproduce
Run ./gradlew generatePom on this build.gradle:
plugins {
    id "java-library"
    id "maven-publish"
}

repositories {
    mavenCentral()
}

group = "de.larsgrefer.dummy"

dependencies {
    api "org.primefaces:primefaces:13.+:jakarta"
}

publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.java
            versionMapping {
                usage('java-api') {
                    fromResolutionOf('runtimeClasspath')
                }
                usage('java-runtime') {
                    fromResolutionResult()
                }
            }
        }
    }
}

Gradle version
8.6
Gradle version that used to work
8.4
Build scan URL (optional)
https://gradle.com/s/ovwdjf54rtnvs
Your Environment (optional)
https://github.com/joinfaces/joinfaces/issues/2197

Fix: https://github.com/gradle/gradle/pull/28267


Keeps jumping back to LIVE no matter how long I pause or rewind

FIXED previous chat spacebar pausing stream issue, Thanks for the Fix Karl! However, I'm now experiencing an issue with the playback function on MOST streams but not all, as its just jumping back to LIVE unless I rewind at least 1.5 hours back. If I pause for 1 min or even over 10 mins it will jump straight back to live I'm hoping you could fix this issue as well! Cheers and thanks for the hard work, your awesome!

same issue here!

I've noticed the same...although today I have a previous DVR recording (same streamer) "stuck" for this streamer.  If I try to Rewind then is plays some of the previous stream.  I have tried Disable / Enable extension in Chrome.  I also clicked on RESET PLAYER, and I tried restarting Chrome.  Nothing has worked yet.

Hey all, sorry about this. I think this is probably because of this: https://karljiang.com/dvrplayer