Auto activate with profile not work

In order to get the same experience as pyenv under linux, I used the method mentioned in the note. But it doesn't work.
I confirmed that there is a .python-version file in my directory, and the profile has been executed.
It work when I manually run command 'pyenv-venv init'

Did you add the command to your powershell profile as instructed in this section of the readme?
https://github.com/pyenv-win/pyenv-win-venv#env-automatic-activation-using-python-version-file

Note: This only works if you open the shell in the current directory using "Open shell here".
The CLI currently doesn't support auto activation if the user changes the directory. I could look into adding that feature but it would mean checking for a .python-version every time the user changes their directory. Not sure if that would make the shell slower. Something to look into.

I followed the Readme file and added the command in the profile. And I also noticed that the "open powershell window here" should be used. But it still does not initialize successfully, unless init is executed manually. Sorry for not describing clearly.
Here is a more detailed description.
In order to prove that the profile has been executed, and the 'pyenv' command can be executed successfully, I wrote such a profile file.

And then, in the target directory, use  "open powershell window here"  to open a shell window.

As you see, the command pyenv-venv help outputs correctly.

But the python environment is not loaded successfully.

Next, I manually executed the command 'pyenv-venv init', then the python environment was initialized successfully.

Even if I add 'sleep 10' at the beginning of the profile file, it still have nothing change.

Oh, I know the reason.
https://github.com/pyenv-win/pyenv-win-venv/blob/aff05d419953be4b06369f989d97f839f4ba216a/bin/pyenv-win-venv.ps1#L21
The output of (Get-Location).Path in profile file is 'C:\windows\system32', which seems to be the default workdir of powershell.  Not the current location where open the powershell window.

Oh, I know the reason.
https://github.com/pyenv-win/pyenv-win-venv/blob/aff05d419953be4b06369f989d97f839f4ba216a/bin/pyenv-win-venv.ps1#L21
The output of (Get-Location).Path in profile file is 'C:\windows\system32', which seems to be the default workdir of powershell. Not the current location where open the powershell window.

Since the definition of the right-click shortcut key is in the registry:

Create a profile file for this, and it works.
$powershellDir = $((Get-Location).Path)

$workingDir = if ([Environment]::CommandLine -match '\b(set-location|cd|chdir\sl)\s+(-(literalpath|lp|path|PSPath)\s+)?(?<path>(?:\\").+?(?:\\")|"""[^"]+|''[^'']+|[^ ]+)') {
    $Matches.path -replace '^(\\"|"""|'')' -replace '\\"$'
  } else { # No Set-Location command passed, use the current dir.
    $PWD.ProviderPath
  }

Set-Location $workingdir; pyenv-venv init root

Set-Location $powershellDir

Thanks for all the investigation into this. I will look into this once I am back home.
The CLI is initializing the env correctly in my personal laptop but I tried it out in my work pc and it fails to activate. Need to check why its working as intended in my laptop.

@gruiyuan I pushed an update which adds a -debug flag so that we can see the environment values set. It will help with debugging.
Update the CLI using: pyenv-venv update self
Update the $profile: pyenv-venv init -debug
After that, when you open the shell, it should output the debug log.

The CLI is initializing the env correctly in my personal laptop but I tried it out in my work pc and it fails to activate. Need to check why its working as intended in my laptop.

Update regarding this. My work pc didnt have pyenv-venv init root in the powershell profile hence it was not automatically activating. So I will need to see your debug log as I mentioned above to investigate the issue.

The CLI is initializing the env correctly in my personal laptop but I tried it out in my work pc and it fails to activate. Need to check why its working as intended in my laptop.

Update regarding this. My work pc didnt have pyenv-venv init root in the powershell profile hence it was not automatically activating. So I will need to see your debug log as I mentioned above to investigate the issue.

Ok.
profile is
pyenv-venv init root -debug

When I open the shell by right-clicking in the working directory，hear is the debug log.

It is consistent with my previous analysis.

Are you still encountering this issue? I wasn't able to duplicate this in any of my systems.


Drawback of servers list 2.0

In 2017, I made a Windows batch script that helps to find the most reachable DNSCrypt servers, given the current network environment. The first step to accomplish this task is to extract IPs along with NoLogs and DNSSEC flags out of dnscrypt-resolvers.csv. Now I see a new list public-resolvers.md is emerging, where these features are hidden. Thus, it becomes harder to decide which servers to use or to avoid.
It appears to be a drawback, what would you say?

These flags are encoded in stapms.
Also, there is a "-json" flag that can be mixed with "-list" or "-list-all" flags to dump resolvers lists as json.

Forgot to mention, that dnscrypt-proxy v2 has a built-in "ping" and different load balancing strategies among a set of resolvers.

And some resolvers don't have an IP at all...

@jedisct1, please, keep in mind that a lot of routers cannot use DNSCrypt 2.x, so CSV 1.x will be in demand for a long time


Browser Support?

Hey there! Would you be open to supporting browsers behind a feature flag that uses wasm-bindgen?

How will users deal with the requirement of --cfg=web_sys_unstable_apis being provided to via RUSTFLAGS to access the relevant APIs in web-sys?

This can be circumvented by not relying on web-sys but wasm-bindgen and just defining your own imports that are not gated behind --cfg=web_sys_unstable_apis.

What is the plan to handle the inherent async nature of everything that calls into browser APIs? As it is today, the whole crate has a synchronous API.

Ultimately I think this is gonna be the dealbreaker. There is a synchronous API for writing to the clipboard: execCommand('copy'). But it doesn't really work the way we need it to.

Ultimately I think this is gonna be the dealbreaker. There is a synchronous API for writing to the clipboard: execCommand('copy'). But it doesn't really work the way we need it to.

Ah, bummer. I didn't think about the async nature. In my use-case it didn't really matter because I could set or get the clipboard as an async call and just not wait for the promise to finish.
But for users who use the native API and expect it to behave the same, that would be confusing if they couldn't set the clipboard and have an immediate read reflect the new clipboard contents when on web.
For now I'll just workaround in my app with WASM bindgen. Thanks for the replies!


Electrum v2.4.2 update

https://download.electrum.org/electrum-2.4.2.dmg

Thank you for the contribution. It was merged directly as d22d82e78cc5aafc3b26c5bb0b18ce6e9601023c to keep commit history cleaner. Your contribution is still credited to you.


use tuple for parametrized data

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
https://testautomationu.applitools.com/pytest-tutorial/chapter4.html
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

https://github.com/nirtal85/Selenium-Python-Example/pull/43


Crash when displaying CJK char

alacritty crash when
cat trial

file trial with content
JKたりやき

$ alacritty -vv
Welcome to Alacritty.
device_pixel_ratio: 1
width: 952, height: 1046
Initializing glyph cache
got font path="/usr/share/fonts/OTF/Meslo LG M DZ Regular for Powerline.otf"
got font path="/usr/share/fonts/OTF/Meslo LG M DZ Regular for Powerline.otf"
got font path="/usr/share/fonts/OTF/Meslo LG M DZ Regular for Powerline.otf"
Finished initializing glyph cache in 0.04593804
set_inner_size: 960px × 648px
width: 964, height: 652
Cell Size: (12 x 27)
PTY Dimensions: Line(24) x Column(80)
Term::resize
num_cols, num_lines = 79, 38
width: 952, height: 1046
[unhandled osc_dispatch]: [['7',],['f','i','l','e',':','/','/','S','u','z','u','/','h','o','m','e','/','s','u','z','u','m','i','y','a','/','t','m','p',],] at line 678
Term got unhandled attr: Dim
thread 'main' panicked at 'index 38 out of range for slice of length 36', /checkout/src/libcore/slice.rs:578
note: Run with `RUST_BACKTRACE=1` for a backtrace.
Term got unhandled attr: Dim

Works fine for me
~/dev
> cat trial
JKたりやき

There's an issue we haven't quite been able to figure out with FreeType (or the bindings) that is causing this problem. It occasionally returns data suggesting the buffer is larger than it is.
In any case, this is a dupe of #515.


RM-175157 Release w_dio 3.1.1

Pull Requests included in release:

Patch changes:

Raise analyzer minimum & unpin meta

Diff Between Last Tag and Proposed Release: https://github.com/Workiva/w_dio/compare/3.1.0...Workiva:release_w_dio_3.1.1
Diff Between Last Tag and New Tag: https://github.com/Workiva/w_dio/compare/3.1.0...3.1.1
The logs for the request that created this PR can be found here
This pull request can be recreated by clicking here

Public API Changes
Release PR detected; using previous release (3.1.0) as the diff base. No changes to the public API found for commit 97c89ae1884bd34620e5fdc6b9cb07f6ab611a0f
Showing results for 97c89ae1884bd34620e5fdc6b9cb07f6ab611a0f

Powered by semver-audit-service. Please report any problems by filing an issue.
Reported by the dart semver audit client 2.2.2
Browse public API.

@Workiva/release-management-p


random.sample cannot take np.array. fixed

Otherwise there will be an error on my machine.

Can one of the admins verify this patch?

I signed it.

I signed it.

Related fix.


Can you tell me what is the reference for this package

Can you tell me what is the reference for this package? I am very grateful.

Hi @advancehs! We are still in the process write this up as a paper, will let you know when it is ready.


qutebrowser reports missing qt5 libraries and fails to start

Issue description
qutebrowser reports missing qt5 libraries and fails to start.
Steps to reproduce

install qutebrowser
start qutebrowser
look at the errormessage

Technical details

System: 16.09pre83100.25e3c09 (Flounder)
Nix version: nix-env (Nix) 1.11.2
Nixpkgs version: "16.09pre83100.25e3c09"

Should be fixed by https://github.com/NixOS/nixpkgs/pull/15334. Please reopen if that's not the case.


Vue 2 - Jest stack trace line numbers wrong with TypeScript and Babel for SFC components

Subject of the issue
When running unit tests for Vue 2 SFC components with jest via vue-test-utils (+babel +typescript) the reported stack trace error line numbers are wrong.
Steps to reproduce

Create a new Vue CLI project: npx @vue/cli create repro-project

Edit HelloWorld.vue component by adding a mounted() {} lifecycle hook containing something like this:mounted() {
  this.iAmNotDefined = iAmNotDefineder
}

Run npm run test:unit

or pull my repro repo and run npm install && npm run test:unit
Expected behaviour
The correct line number is shown in the stack trace.
Actual behaviour
The opposite of the expected behaviour.
Possible Solution
My hunch says it's a transformation issue, but I've no idea if it's ts-jest, vue-jest, babel-js or the sfc compiler.

Almost certainly a Vue Jest issue!


DragonFight unable to link to owner

Apologies if this is the wrong place to be submitting this.
I've been messing around with this for quite a bit, but haven't been able to get it to work. As the README says, the fight should link to the player who places the last crystal, but it doesn't. There are no errors in the console when the fight begins or is finished, except for the plugin simply saying [DragonFight] [DragonFight LOG] But nobody owns the fight, so it doesn't count. once a fight is completed.
I have attempted this on git-Paper-783 (1.16.5) and git-Purpur-1296 (1.17.1) (Fork of Tuinity, which is in turn a fork of Paper).
I am currently using the following plugins, but I have mix and matched different versions of them and got the same results.

DragonFight v1.1.3
BeastMaster v2.16.0 (Nerd fork)
BlockStore v1.7.1
EntityMeta v1.0.0 (Nerd fork)
LibsDisguises Release 10.0.26
ProtocolLib 4.7.0
WorldEdit 7.2.6-beta-01+1415e6f
WorldGuard 7.0.6-beta+10b66f3e

Entire section of DragonFight logs from beginning of fight to the end (I skipped to the end here, but the same happens when doing a full fight)

I looked through the code, and this must be a bug  around FightState.java#1000. Maybe it should be changed to == 4, or >= 3. However, I'm not sure when the block placement actually happens in the model, maybe this isn't it.

Probably should throw it in a debugger or add additional logging, because I don't see the log message "The dragon was spawned by:" which should be displaying here, and is the only place that the fight owner is actually set.
Unfortunately, I'm not able to build the jar right now, I'm missing too many dependencies, and don't have time to fix that right now. If anyone else can get it to build, I would suggest adding logging for each of the 3 conditions in the if statement, then seeing what that says, which should hopefully illuminate the issue.

I'll take it from here. It was certainly working in 1.15 and I haven't heard of this problem in 1.16.5 before, but I know that Paper has made some breaking changes in other areas as well. Perhaps Paper is no longer firing the event I was using to detect the final crystal placement.

It turned out to be overly restrictive conditions in my code for detecting when an end crystal is being placed to summon the dragon.
Fixed in v1.1.4.


Add bubble Shooter game

Add bubble Shooter game

@Spandan-Bhattacharya  pls assign me under JWOC

@AftabMankapure I don't think it would fit the theme of the games in the website.


[#7] Basing subscription identifiers on file path, event name and subscription name.

This fixes #7

Looks good + tests pass


Fixes to replication_test.py for CASSANDRA-10243

This fixes the replication tests due to the changes for CASSANDRA-10243 and introduces new tests for it. One new test, test_cannot_restart_with_different_rack will still fail until CASSANDRA-9474 is also committed (which is imminent so I did not @require the test).

I'm +1, @mambocab ?

This is what I meant to merge instead of #605. Thanks for the tests; I'm going to merge these to get the tests passing, then fix my style nits myself.

Discussion [and code] moving to #693


Cannot have vertex buffers non-interleaved in the same buffer, due to auto-stride calculation

This may be by design? I use this method on opengl for various things, but can't for the life of me remember if I can do it in metal or directx.
But to do it, you write a vertex buffer of one block of attributes, then a block of another;
float vertices[] = {
	// positions
	0.0f,  0.5f, 0.5f,
	0.5f, -0.5f, 0.5f,
	-0.5f, -0.5f, 0.5f,
	// colors
	1.0f, 0.0f, 0.0f, 1.0f,
	0.0f, 1.0f, 0.0f, 1.0f,
	0.0f, 0.0f, 1.0f, 1.0f
};

and then set the attr[1].offset to the start of the the colour block, and both attributes need a stride of 0.
To verify this, I just disabled the auto-calc and the assert that checks stride!=0. (Tested on ios & gles2)
Would this be against the lib policy to fit in?, or possibly just not doable on other backends?
I guess I also need to remind myself how this works with instancing too (but I guess that HAS to be a seperate buffer, so maybe not a problem)

Check this sample which does exactly this:
https://github.com/floooh/sokol-samples/blob/master/sapp/noninterleaved-sapp.c
In the pipeline layout description, use two buffer indices (0 and 1) in the vertex attributes:
https://github.com/floooh/sokol-samples/blob/8e212c995770e83aa6f9b84013236442367edeaa/sapp/noninterleaved-sapp.c#L75-L82
...and then in the bindings, configure set the buffer binding slots 0 and 1 to the same buffer, and use the offsets to point to the data chunks:
https://github.com/floooh/sokol-samples/blob/8e212c995770e83aa6f9b84013236442367edeaa/sapp/noninterleaved-sapp.c#L96-L108
This is limited to 4 separate chunks (because there are four buffer bind slots, but you group associated vertex attribute groups in the same chunk to make up for this limitation.

@floooh In noninterleaved-sapp.c I see the comment

(vertex components in separate non-interleaved chunks in the same vertex buffers). Note that only 4 separate chunks are currently possible because there are 4 vertex buffer bind slots in sg_bindings, but you can keep several related vertex components interleaved in the same chunk.

and in the code
    state.bind = (sg_bindings){
        .vertex_buffers = {
            [0] = vbuf,
            [1] = vbuf                //  <--- WHY IS THIS NEEDED?
        },
        .vertex_buffer_offsets = {
            /* position components are at start of buffer */
            [0] = 0,
            /* byte offset of color components in buffer */
            [1] = 24 * 3 * sizeof(float)
        },
        .index_buffer = ibuf
    };

In bindings why should I give the same buffer twice?  Why can't I have all of the non-interleaved attribute data in one buffer and do
    state.bind = (sg_bindings){
        .vertex_buffers = {
            [0] = vbuf,
        }
    }

    // describe the attribute layouts
    pipe_desc.layout.attrs[ATTR_vs_position].format = SG_VERTEXFORMAT_FLOAT3;
    pipe_desc.layout.attrs[ATTR_vs_normal].format = SG_VERTEXFORMAT_FLOAT3;
    pipe_desc.layout.attrs[ATTR_vs_normal].offset = offset_of_normals;

Is it expected that for every attribute I've to specify pipe_desc.layout.buffers too?  Is this a limitation for a particular backend?
Aside: I noticed that sg_bindings has 8, not 4, vertex buffer slots now.

Hi, the attribute offset in the pipeline description is the offset of that vertex attribute from the start of a vertex. For instance if your vertex structure looks like this:
typedef struct {
    float pos[3];
    float normal[3];
    float uv[2];
    float color[4];
} vertex_t;

Then the corresponding attribute offsets are:

pos: 0
normal: 12 (same as offsetof(vertex_t, pos)
uv: 24 (same as offsetof(vertex_t, normal)
color: 32 (same as offsetof(vertex_t, uv)

Usually sokol-gfx can compute those offsets, you only need to provide attribute offsets in special cases (for instance if your vertex structure has normals and uv coordinates, but for a specific drawing operation you only need positions and colors (and "skip" normals and uvs), in that case you need to explicitely provide the offset of the color attribute in the vertex structure).
The vertex buffer offsets in sg_bindings struct on the other hand is the start-offset of the vertex data to use in a buffer that's bound to a specific vertex buffer slot (e.g. you can skip data at the start the buffer). Usually this offset is a multiple of the size of a vertex structure. This is mainly useful for packing multiple mesh geometries into the same buffer, but can also be used for "de-interleaved" vertex components which reside in the same buffer.

Thanks for the detailed reply @floooh.


[k3s-upgrade] Upgrade script broken on openrc-based systems (e.g. an Alpine Linux host)

Environmental Info:

K3s Version: v1.26.5+k3s1 (7cefebea)
Node(s) CPU architecture, OS, and Version:

Linux hostname 6.1.35-0-virt #1-Alpine SMP PREEMPT_DYNAMIC Wed, 21 Jun 2023 22:47:52 +0000 x86_64 GNU/Linux
Cluster Configuration:

5 servers with embedded etcd for HA
Describe the bug:

k3s-upgrade script falsely recognised supervise-daemon as the k3s process it self, thus didn't get the correct path of k3s binary to upgrade.
Steps To Reproduce:

Installed K3s:

The content of /etc/ini.d/k3s file

#!/sbin/openrc-run

depend() {
    after network-online
    want cgroups
}

start_pre() {
    rm -f /tmp/k3s.*
}

supervisor=supervise-daemon
name=k3s
command="/usr/local/bin/k3s"
command_args="server \
        '--server' \
        'https://example.com:6443' \
    >>/var/log/k3s.log 2>&1"

output_log=/var/log/k3s.log
error_log=/var/log/k3s.log

pidfile="/var/run/k3s.pid"
respawn_delay=5
respawn_max=0

set -o allexport
if [ -f /etc/environment ]; then . /etc/environment; fi
if [ -f /etc/rancher/k3s/k3s.env ]; then . /etc/rancher/k3s/k3s.env; fi
set +o allexport

Install the system-upgrade-controller according to Automated Upgrades Guide, add the example configure plan and set the target version to v1.27.3+k3s1 (latest stable)
Wait until the upgrade executing on the Alpine node.

Expected behavior:

Automated upgrade plan successfully upgrades k3s.
Actual behavior:

The system-upgrade/apply-server-plan-xxxx container failed to proceed on the node.
I can find the k3s and it's parent process with ps command:

PID
Cmdline

2444
supervise-daemon k3s --start --stdout /var/log/k3s.log --stderr /var/log/k3s.log --pidfile /var/run/k3s.pid --respawn-delay 5 --respawn-max 0 --respawn-period 1800 /usr/local/bin/k3s -- server --server https://example.com:6443

14256
/usr/local/bin/k3s server

The upgrade script do get the correct PID and PPID of k3s process, however it later decided to use 2444 as k3s' PID. L40-L46 of the upgrade script:
  # When running with the --log flag, the 'k3s server|agent' process is nested under a 'k3s init' process.
  # If the parent pid is not 1 (init/systemd) then we are nested and need to operate against that 'k3s init' pid instead.
  # Make sure that the parent pid is actually k3s though, as openrc systems may run k3s under supervise-daemon instead of
  # as a child process of init.
  if [ "$K3S_PPID" != "1" ] && grep -qs k3s /host/proc/${K3S_PPID}/cmdline; then
    K3S_PID="${K3S_PPID}"
  fi

The comment there mentioned about the supervise-daemon, but the code didn't reach that target, since k3s also exists in the supervise-daemon's cmdline. Maybe should add a && ! grep -qs supervise-daemon /host/proc/${K3S_PPID}/cmdline condition to the if statement.
Additional context / logs:

The log of system-upgrade/apply-server-plan-xxxx container

+ upgrade
+ get_k3s_process_info
+ grep -E -v '(init|grep|channelserver|supervise-daemon)'
+ grep -E 'k3s .*(server|agent)'
+ awk '{print $2}'
+ ps -ef
+ K3S_PID=14256
+ '[' -z 14256 ]
+ echo 14256
+ wc -w
+ '[' 1 '!=' 1 ]
+ ps -p 14256 -o 'ppid='
+ awk '{print $1}'
+ K3S_PPID=2444
+ info 'K3S binary is running with pid 14256, parent pid 2444'
+ echo '[INFO] ' 'K3S binary is running with pid 14256, parent pid 2444'
+ '[' 2444 '!=' 1 ]
+ grep -qs k3s /host/proc/2444/cmdline
[INFO]  K3S binary is running with pid 14256, parent pid 2444
+ K3S_PID=2444
+ '[' 2444 '==' 1 ]
+ awk 'NR==1 {print $1}' /host/proc/2444/cmdline
+ K3S_BIN_PATH=supervise-daemon
+ '[' -z supervise-daemon ]
+ return
+ replace_binary
+ NEW_BINARY=/opt/k3s
+ FULL_BIN_PATH=/hostsupervise-daemon
+ '[' '!' -f /opt/k3s ]
+ info 'Comparing old and new binaries'
+ echo '[INFO] ' 'Comparing old and new binaries'
[INFO]  Comparing old and new binaries
+ sha256sum /opt/k3s /hostsupervise-daemon
sha256sum: can't open '/hostsupervise-daemon': No such file or directory
+ BIN_CHECKSUMS='ee130a125683a2e588a1f92c144b927a184c209adb59c0fdc6930822b07b4c90  /opt/k3s'

Will require a RC and tag of k3s-upgrade image to test.

This won't be available to test until next week.

Hi @brandond , I tried testing the SUC upgrade with the 1.26.7-rc3+k3s1 and v1.27.4-rc3+k3s1 but still seeing this issue and the upgrade is unsuccessful. Tested on a 3 server, 1 agent cluster setup: OS Alpine Linux 3.18.2 with openrc 0.47.1 . Installed version v1.26.5+k3s1. Please advice
Applied plan: system-upgrade-controller.yaml

 failed apply-k3s-server pod log
...
system-upgrade   pod/apply-k3s-server-on-server3-with-b9ecdb0648c578597460caab-l59xs   0/1     Error       0          12s   server3
system-upgrade   pod/apply-k3s-server-on-server3-with-b9ecdb0648c578597460caab-tgps9   0/1     Error       0          20s   server3
...

$ kubectl logs -n system-upgrade pod/apply-k3s-server-on-server3-with-b9ecdb0648c578597460caab-tgps9
Defaulted container "upgrade" out of: upgrade, cordon (init)
+ upgrade
+ get_k3s_process_info
+ awk '{print $2}'
+ grep -E -v '(init|grep|channelserver|supervise-daemon)'
+ grep -E '( |/)k3s .*(server|agent)'
+ ps -ef
+ K3S_PID=2291
+ wc -w
+ echo 2291
+ '[' 1 '!=' 1 ]
+ '[' -z 2291 ]
+ wc -w
+ echo 2291
+ '[' 1 '!=' 1 ]
+ awk '{print $1}'
+ ps -p 2291 -o 'ppid='
+ K3S_PPID=2289
+ info 'K3S binary is running with pid 2291, parent pid 2289'
+ echo '[INFO] ' 'K3S binary is running with pid 2291, parent pid 2289'
[INFO]  K3S binary is running with pid 2291, parent pid 2289
+ '[' 2289 '!=' 1 ]
+ grep -q -v supervise-daemon
+ grep -a k3s /host/proc/2289/cmdline
+ K3S_PID=2289
+ '[' 2289 '=' 1 ]
+ awk 'NR==1 {print $1}' /host/proc/2289/cmdline
+ K3S_BIN_PATH=supervise-daemon
+ '[' -z supervise-daemon ]
+ return
+ replace_binary
+ NEW_BINARY=/opt/k3s
+ FULL_BIN_PATH=/hostsupervise-daemon
+ '[' '!' -f /opt/k3s ]
+ info 'Comparing old and new binaries'
+ echo '[INFO] ' 'Comparing old and new binaries'
[INFO]  Comparing old and new binaries
+ sha256sum /opt/k3s /hostsupervise-daemon
sha256sum: can't open '/hostsupervise-daemon': No such file or directory
+ BIN_CHECKSUMS='e9a240d72181bbeccffe941055f63d7a1d7a1970f66954c45c1545442bd009ee  /opt/k3s'

This appears to be another difference between gnu grep and busybox grep - busybox converts the nulls to newlines in the output.
gnu:
root@dev01:~# grep -a . /proc/1/cmdline
/lib/systemd/systemd--system--deserialize41

busybox:
/ # grep -a . /host/proc/1/cmdline
/lib/systemd/systemd
--system
--deserialize
41

Validated upgrade with SUC on Alpine Linux
Environment Details

Infrastructure

[ ] Cloud
[ ] Hosted

Node(s) CPU architecture, OS, and Version:

NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.18.2
PRETTY_NAME="Alpine Linux v3.18"

openrc (OpenRC) 0.47.1

Cluster Configuration:

3 servers, 1 agent

Config.yaml:

write-kubeconfig-mode: 644
cluster-init: true
token: summer
node-name: server1

Testing Steps

Copy config.yaml

$ sudo mkdir -p /etc/rancher/k3s && sudo cp config.yaml /etc/rancher/k3s

Install k3s version v1.26.5+k3s1
Apply the SUC yaml

kubectl apply -f https://github.com/rancher/system-upgrade-controller/releases/latest/download/system-upgrade-controller.yaml

Apply the upgrade plan after changing k3s version on server and agent specs as mentioned here

Replication Results:

k3s version used for replication:

v1.26.5+k3s1

Observed that SUC upgrade failed and error in the failed pod logs
Ref: https://github.com/k3s-io/k3s/issues/7884#issuecomment-1651951248

Validation Results:

k3s version used for validation:

k3s version v1.26.7-rc3+k3s1 (e47cfc09)
go version go1.20.6

k3s version v1.27.4-rc3+k3s1 (36645e73)
go version go1.20.6

Observed the cluster got upgraded to desired version

 Pre upgrade
kubectl get node,pods -A -o wide
NAME           STATUS   ROLES                       AGE     VERSION        INTERNAL-IP      EXTERNAL-IP      OS-IMAGE             KERNEL-VERSION   CONTAINER-RUNTIME
node/agent1    Ready    <none>                      3h14m   v1.26.5+k3s1   xx.xx.xx.234     xx.xx.xx.234     Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server1   Ready    control-plane,etcd,master   3h27m   v1.26.5+k3s1   xx.xx.xx.138     xxx.xx.xxx.138   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server2   Ready    control-plane,etcd,master   3h19m   v1.26.5+k3s1   xx.xx.x.137      xx.xx.x.137      Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server3   Ready    control-plane,etcd,master   3h15m   v1.26.5+k3s1   xxx.xxx.xxx.23   xxx.xxx.xxx.23   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1

 Post upgrade to v1.26.7-rc3+k3s1
kubectl get node,pods -A -o wide
NAME           STATUS   ROLES                       AGE     VERSION            INTERNAL-IP      EXTERNAL-IP      OS-IMAGE             KERNEL-VERSION   CONTAINER-RUNTIME
node/agent1    Ready    <none>                      5h6m    v1.26.7-rc3+k3s1   xx.xx.xx.234     xx.xx.xx.234     Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server1   Ready    control-plane,etcd,master   5h18m   v1.26.7-rc3+k3s1   xxx.xx.xxx.138   xxx.xx.xxx.138   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server2   Ready    control-plane,etcd,master   5h10m   v1.26.7-rc3+k3s1   xx.xx.x.137      xx.xx.x.137      Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server3   Ready    control-plane,etcd,master   5h6m    v1.26.7-rc3+k3s1   xxx.xxx.xxx.23   xxx.xxx.xxx.23   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1

 Post upgrade to v1.27.4-rc3+k3s1
kubectl get node,pods -A -o wide
NAME           STATUS   ROLES                       AGE     VERSION            INTERNAL-IP      EXTERNAL-IP      OS-IMAGE             KERNEL-VERSION   CONTAINER-RUNTIME
node/agent1    Ready    <none>                      5h34m   v1.27.4-rc3+k3s1   xx.xx.xx.234     xx.xx.xx.234     Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server1   Ready    control-plane,etcd,master   5h47m   v1.27.4-rc3+k3s1   xxx.xx.xxx.138   xxx.xx.xxx.138   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server2   Ready    control-plane,etcd,master   5h38m   v1.27.4-rc3+k3s1   xx.xx.x.137      xx.xx.x.137      Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1
node/server3   Ready    control-plane,etcd,master   5h34m   v1.27.4-rc3+k3s1   xxx.xxx.xxx.23   xxx.xxx.xxx.23   Alpine Linux v3.18   6.1.34-3-virt    containerd://1.7.1-k3s1


feat: when peers create a tree, no need to add peers to host and task

Signed-off-by: Gaius<EMAIL_ADDRESS>
Description

When peers create a tree, no need to add peers to host and task.

Related Issue

Motivation and Context

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist:

[x] Code compiles correctly.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #1042 (f34e869) into main (7e3d6d0) will increase coverage by 0.03%.
The diff coverage is 80.00%.

@@            Coverage Diff             @@
##             main    #1042      +/-   ##
==========================================
+ Coverage   46.42%   46.45%   +0.03%
==========================================
  Files         130      130
  Lines        9359     9346      -13
==========================================
- Hits         4345     4342       -3
+ Misses       4526     4515      -11
- Partials      488      489       +1

Flag
Coverage Δ

Object-compatibility-e2etests
?

e2etests
?

unittests
46.45% <80.00%> (+0.03%)
:arrow_up:

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

Impacted Files
Coverage Δ

scheduler/resource/cdn.go
66.95% <0.00%> (+5.84%)
:arrow_up:

scheduler/resource/peer.go
74.50% <ø> (-2.22%)
:arrow_down:

scheduler/resource/host.go
87.75% <100.00%> (ø)

scheduler/service/callback.go
71.87% <100.00%> (-0.50%)
:arrow_down:

scheduler/rpcserver/rpcserver.go
87.94% <0.00%> (+2.42%)
:arrow_up:


Can not access a directory containing broken symlink in WebUI

Description
In WebDAV/WebUI, Accessing a directory containing broken symlink (a symlink pointing to a nonexistent target) returns an HTTP 404.
Steps to Reproduce

Configure wsfs to serve a directory.
Create a broken symlink in the served directory:

$ ln -s /nonexistent/path /path/to/served/directory/broken_symlink

Access the directory through the browser.

Observed Behavior
The server returns HTTP 404 Not Found.
Expected Behavior
Accessing the directory should return the usual WebUI File List, where other files in the directory are displayed correctly. The server should try its best to provide context to the user.

Fixed in 235d654f02bad5a9aa5e8d46ee20098a25df808b.


Add BitCloud (BTDX)

Hi Team,
please add our BitCloud icons / images.
Cryptocurrency-Icons.zip
If you need more Infos, please let me know.
Thank you,
Lukas

How long does it take to add our logo(s) ?

Sorry for the delay, we will get round to it as soon as we're able to.

Hey @lukechilds can you please tell me when you plan to do it?


CausalLM ERROR: byte not found in vocab

Prerequisites
Please answer the following questions for yourself before submitting an issue.

[x] I am running the latest code. Development is very rapid so there are no tagged versions as of now.
[x] I carefully followed the README.md.
[x] I searched using keywords relevant to my issue to make sure that I am creating a new issue that is not already open (or closed).
[x] I reviewed the Discussions, and have a new bug or useful enhancement to share.

Expected Behavior
Run model CausalLM without errors
https://huggingface.co/TheBloke/CausalLM-14B-GGUF/tree/main
Current Behavior
Error when loading model (llama-cpp-python installed throught pip, not from source)
...
llama_model_loader: - type  f32:   81 tensors
llama_model_loader: - type q5_1:  281 tensors
llama_model_loader: - type q6_K:    1 tensors
ERROR: byte not found in vocab: '
'
fish: Job 1, 'python server.py --api --listen…' terminated by signal SIGSEGV (Address boundary error)

https://github.com/ggerganov/llama.cpp/issues/3732
Environment and Context
Docker container with latest
Failure Information (for bugs)
Please help provide information about the failure if this is a bug. If it is not a bug, please remove the rest of this template.
Steps to Reproduce
Failure Logs

Same

I am glad to know its not just me.

Has been already discussed in llama.cpp. The team behind CausalLM and TheBloke are aware of this issue which is caused by the "non-standard" vocabulary the model uses. As per the last time I tried, inference on CPU was already working for GGUF. As per the last comments on one of the issues related to this model and llama.cpp, inference seems to be running fine on GPU too: https://github.com/ggerganov/llama.cpp/issues/3740

Got it working. It's quite straightforward; just follow the steps below.
Try reinstalling llama-cpp-python as follows (I would advise using a Python virtual environment but that's a different topic):
CMAKE_ARGS='-DLLAMA_CUBLAS=on -DLLAMA_CUDA_MMV_Y=8 -DCMAKE_CUDA_ARCHITECTURES=native' CUDACXX=/usr/local/cuda-11.8/bin/nvcc FORCE_CMAKE=1 pip install git+https://github.com/abetlen/llama-cpp-python.git --force-reinstall --no-cache-dir --verbose --upgrade

Set CUDACXX to the path of the nvcc version you intend to use. I have versions 11.8 and 12 installed and succeeded with 11.8 (I didn't try to build with version 12).
Afterwards, generation with CausalLM 14B works smoothly.
python llama_cpp_server_v2.py causallm
Model causallm is not in use, starting...
Starting model causallm

······················ Settings for causallm  ······················
> model:                            /root/code/localai/models/causallm_14b.Q5_1.gguf
> model_alias:                                                              causallm
> seed:<PHONE_NUMBER>
> n_ctx:                                                                        8192
> n_batch:                                                                       128
> n_gpu_layers:                                                                   45
> main_gpu:                                                                        0
> rope_freq_base:                                                                0.0
> rope_freq_scale:                                                               1.0
> mul_mat_q:                                                                       1
> f16_kv:                                                                          1
> logits_all:                                                                      1
> vocab_only:                                                                      0
> use_mmap:                                                                        1
> use_mlock:                                                                       1
> embedding:                                                                       1
> n_threads:                                                                       4
> last_n_tokens_size:                                                            128
> numa:                                                                            0
> chat_format:                                                                chatml
> cache:                                                                           0
> cache_type:                                                                    ram
> cache_size:<PHONE_NUMBER>
> verbose:                                                                         1
> host:                                                                      <IP_ADDRESS>
> port:                                                                         8040
> interrupt_requests:                                                              1
ggml_init_cublas: found 1 CUDA devices:
  Device 0: NVIDIA GeForce RTX 3090, compute capability 8.6
llama_model_loader: loaded meta data with 21 key-value pairs and 363 tensors from /root/code/localai/models/causallm_14b.Q5_1.gguf (version unknown)
llama_model_loader: - tensor    0:                token_embd.weight q5_1     [  5120, 152064,     1,     1 ]
llama_model_loader: - tensor    1:              blk.0.attn_q.weight q5_1     [  5120,  5120,     1,     1 ]
llama_model_loader: - tensor    2:              blk.0.attn_k.weight q5_1     [  5120,  5120,     1,     1 ]
[...]
llm_load_print_meta: model ftype      = mostly Q5_1
llm_load_print_meta: model params     = 14.17 B
llm_load_print_meta: model size       = 9.95 GiB (6.03 BPW)
llm_load_print_meta: general.name   = causallm_14b
llm_load_print_meta: BOS token = 151643 '<|endoftext|>'
llm_load_print_meta: EOS token = 151643 '<|endoftext|>'
llm_load_print_meta: PAD token = 151643 '<|endoftext|>'
llm_load_print_meta: LF token  = 128 'Ä'
llm_load_tensors: ggml ctx size =    0.12 MB
llm_load_tensors: using CUDA for GPU acceleration
llm_load_tensors: mem required  =  557.00 MB
llm_load_tensors: offloading 40 repeating layers to GPU
llm_load_tensors: offloading non-repeating layers to GPU
llm_load_tensors: offloaded 43/43 layers to GPU
llm_load_tensors: VRAM used: 9629.41 MB
...........................................................................................
llama_new_context_with_model: n_ctx      = 8192
llama_new_context_with_model: freq_base  = 10000.0
llama_new_context_with_model: freq_scale = 1
llama_kv_cache_init: offloading v cache to GPU
llama_kv_cache_init: offloading k cache to GPU
llama_kv_cache_init: VRAM kv self = 6400.00 MB
llama_new_context_with_model: kv self size  = 6400.00 MB
llama_new_context_with_model: compute buffer total size = 177.63 MB
llama_new_context_with_model: VRAM scratch buffer: 171.50 MB
llama_new_context_with_model: total VRAM used: 16200.92 MB (model: 9629.41 MB, context: 6571.50 MB)
AVX = 1 | AVX2 = 1 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | FMA = 1 | NEON = 0 | ARM_FMA = 0 | F16C = 1 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 1 | SSSE3 = 1 | VSX = 0 |
INFO:     Started server process [735011]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://<IP_ADDRESS>:8040 (Press CTRL+C to quit)
INFO:     <IP_ADDRESS>:52746 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:47452 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:47456 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:47468 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:47484 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:47500 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:52300 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:52302 - "OPTIONS / HTTP/1.0" 200 OK
·································· Prompt ChatML ··································

<|im_start|>system
You are a helpful assistant. You can help me by answering my questions. You can also ask me questions.<|im_end|>
<|im_start|>user
Is this chat working?<|im_end|>
<|im_start|>assistant

INFO:     <IP_ADDRESS>:52314 - "POST /v1/chat/completions HTTP/1.1" 200 OK

llama_print_timings:        load time =     173.04 ms
llama_print_timings:      sample time =      12.94 ms /    29 runs   (    0.45 ms per token,  2240.77 tokens per second)
llama_print_timings: prompt eval time =     172.94 ms /    64 tokens (    2.70 ms per token,   370.07 tokens per second)
llama_print_timings:        eval time =     434.08 ms /    28 runs   (   15.50 ms per token,    64.50 tokens per second)
llama_print_timings:       total time =    1158.61 ms
INFO:     <IP_ADDRESS>:52328 - "OPTIONS / HTTP/1.0" 200 OK
INFO:     <IP_ADDRESS>:52334 - "OPTIONS / HTTP/1.0" 200 OK

Feel free to ping me if you don't succeed.

Odd, I'm still getting the crash with the error. I'm trying to apply this fix to the text generation webui docker container. I'm doing the following in portainer on the container.
source venv/bin/activate
CMAKE_ARGS='-DLLAMA_CUBLAS=on -DLLAMA_CUDA_MMV_Y=8 -DCMAKE_CUDA_ARCHITECTURES=native' CUDACXX=/usr/local/cuda-12.1/bin/nvcc FORCE_CMAKE=1 pip install git+https://github.com/abetlen/llama-cpp-python.git --force-reinstall --no-cache-dir --verbose --upgrade (a quick ls of /usr/local/ reveals cuda 12.1 is present in the directory).

I'm assuming for AMD GPUs the command would be different (due to the lack of nvcc). I'm currently getting the error for llama-cpp-python 0.2.18 with a 6800 XT on Manjaro Linux (CPU works fine).


Feature: adding Huff language support to playground code editor.

This PR adds support for Huff language (a low-level EVM language).

[x] yarn lint
[x] yarn dev functional

Thanks for the initiative! I know there are few people who would be happy with this addition, let us look at this in the next couple of days.
D
cc: @malexw @peroket

Thank you for the PR ;-)
I must admit I am discovering Huff with this PR, and I would love to know how you are planning to use this new feature with evm.codes.
I will also let @malexw to evaluate it technically.

@peroket , Huff like other low-level languages (YUL) allows more direct access to EVM opcodes which can be used to optimize for gas consumption. It also includes some higher-level syntax like macros which allows writing huff programs more efficiently.
Adding support for this language to evm.codes would be a great resource for teaching how to use the language and also to onboard new developers.

@Saw-mon-and-Natalie : any news on getting https://github.com/huff-language/huffc/pull/40 in ? (we would like to merge this change but prefer to do so after this is in and the dependency is changed)

@dorlevi amazing. I'll ping the team Huff.

Sure thing, hope you understand why we want to wait for that to get resolved, and thanks again for contributing.

@Saw-mon-and-Natalie Any news on merging the huf change?

@Saw-mon-and-Natalie Any news on merging the huf change?

Hi 👋🏽,
My PR was never reviewed on the huffc repo and the repo is now archived. In order to use the new implementation in Rust huff-rs, We/I would need to submit a new PR to the new repo to add a wasm target.

@Saw-mon-and-Natalie Any news on merging the huf change?

Hi @dorlevi 👋🏽,
My PR was never reviewed on the huffc repo and the repo is now archived. In order to use the new implementation in Rust huff-rs, We/I would need to submit a new PR to the new repo to add a wasm target.

Thank you for your anwser. Are you going to update your PR with the new one? We can't add a dependency if the repo is not going to be maintained unfortunately.

I've actually been working on wasm bindings for the huff compiler. Once we've got them working I'd be happy to submit a PR if you don't mind @Saw-mon-and-Natalie?

I've actually been working on wasm bindings for the huff compiler. Once we've got them working I'd be happy to submit a PR if you don't mind @Saw-mon-and-Natalie?

@ncitron LFG ☺

@Saw-mon-and-Natalie and @ncitron, I'm just doing some housekeeping and wanted to check in on this.


Great engine!

It's a very good engine.
We are creating an online game using this library.
I hope you continue working on the code and improving CAAT.
:-)

Thanks for the compliment.
Let me know how your game goes ;)
Regards,
-ibon.
Puedes escribirme en castellano si quieres ^^.


Compilation problems

Hey,
wanted to try out this project, but neither the 1.0.0 version nor the head would compile.
For example, in the Cluster class, the other code expects methods like getClusterName or getServers, but they don't exist there.
Also, on master, the poms of the sub-projects reference a different parent pom.
Is there a commit that I can use to package the project?
Thanks in advance :)
Bernhard

I could not get building to work with the instructions on readme for 1.0.0. Cherry-pick of 8b301c6cd690ab79d8b85b46710b0242dc84b645 (manually, as there were conflicts) worked around. Not sure if that was the right thing to do.
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project gatekeeper-core: Compilation failure: Compilation failure:
[ERROR] /home/vagrant/gatekeeper/gatekeeper-core/src/main/java/com/xorlev/gatekeeper/providers/discovery/AbstractClusterDiscovery.java:[21,18] error: generics are not supported in -source 1.3
[ERROR]
[ERROR] (use -source 5 or higher to enable generics)

Hi @naksu,
The issue has already been corrected in master, but I'll see about releasing a 1.1.0 to signal that master is ready for use.

Hi Xorlev,
Thanks. I was wondering about whether it was safe to use the snapshot version.


Use recursion instead of generated function

This PR changes fused_increment to use recursion instead of a generated function. I think this partially addresses #251

This passes the same tests, but the 1:s-loop unrolling issue stands whether we're using a generated function or recursion. I'm going to merge this now, and see what changes are needed to get this fully unrolled/fused.


Cleanup shell does not handle custom root path and plugin model names

Maybe I'm doing something wrong, but I've tried to dry run the cleanup shell as documented but get no results (no filenames in log after dry run). I've looked at the code and I see 2 possible issues:

Cleanup shell takes the WWW_ROOT and not the actual (possible/optional) root path used in the configuration of Proffer in the model. For example, I have a constant CDN_PATH and set as "root" in the Proffer settings.
I might be doing this wrong, but read the code to be more sure: I'm running the dry run using ./bin/cake proffer cleanup -vd Carousels.CarouselSlides . This shows no files to be deleted ( in conjuction with (1) ). Due to the use of $table in this line of code: https://github.com/davidyell/CakePHP3-Proffer/blob/master/src/Shell/ProfferShell.php#L167 , it will put the whole plugin+table name into it and looks for a directory "carousels.carouselslides" which does not exist, because Proffer (after uploading files) created it as "/carouselslides" .
Also, might be useful to think about conflicting plugin names and directory names when not including the plugin name into the final folder. Not that important, but could be useful in situations where 2 plugins exist that have a model table "Users" (with "image" field) and thus will both use "/users/image/.." ( I think? )

I'm trying to fix it locally inside the Proffer code ( or figure out along the way the above are no issues at all :) ). Hopefully I finish it and then will post/PR it, but clients are pressing for other priorities ( life.. you know.. )

Could be related to #181


Remove reliance on EPPO download by using GBIF API

This replaces our uses of EPPO with (cached) calls to the GBIF API
Fixes #590
Resolves #559
Disadvantages of the new approach include:

requires an internet connection
could be exploited to spam GBIF and we don't currently have any protection against this (e.g. limiting the number of categories in a dataset)
does not support variants as species names, i.e. while EPPO recognised "brassica oleracea var. alboglabra" (gai lan) as a subspecies of "brassica oleracea" (broccoli, cabbage, etc.), GBIF does not have a taxon for the variant. This is more likely a concern for crop species than weed species.
may make it harder to get mappings to EPPO codes in the future.

It makes our server and continuous integration more reliable, however.
Are you concerned by any of the above, @geezacoleman?

If EPPO just keeps failing then it's much better to have taxon support at all. The impact on variants is most likely the biggest loss, particularly for horticultural systems because they can look so different. Not so concerned about it for large-scale crops.

This seems to fix the issue we had on other PRs where Cypress broke while saving a category mapping and hence validating species names. A new issue appears in Cypress, however, where it appears setting the metadata form from pasted JSON is not working... Quite surprising. Any ideas, @ElevnLi?

When I run Cypress locally, I'm getting a different error, currently...

And when I run it with yarn cypress open I'm not getting any error locally. I wonder what I need to do to reproduce it...

Both the CI and local tests are running with
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:    7.2.0                                                                              │
  │ Browser:    Electron 89 (headless)                                                             │
  │ Specs:      1 found (weedai_upload.js)                                                         │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘

So I'm not sure where to go next to debug.

It puzzles me that not only does the test failing in CI succeed on my local machine, but that the exact same code is used for the VOC test and it works (in CI and locally).

I managed to reproduce this on my laptop in a clean setup, trying to emulate what happens on CI. I've not managed to work out what the difference is between where it was working and where it was failing yet.

The issue here appears intermittently. It will be interesting to see if it is intermittent on master.

Did you land up using this when Eppo was causing you pain, @ElevnLi? Should we just merge it and forget about EPPO?


Does not install properly through pip

Hello,
As part of a project, I am trying to fix up some things with automlbenchmark and from there realized oboe does not install correctly.
Reproducible code (sample shown in README.md)
method = 'Oboe'
problem_type = 'classification'

from auto_learner import AutoLearner
import numpy as np

m = AutoLearner(p_type=problem_type, runtime_limit=30, method=method, verbose=False)

Error log:
Traceback (most recent call last):
  File "test_case.py", line 6, in <module>
    m = AutoLearner(p_type=problem_type, runtime_limit=30, method=method, verbose=False)
  File "/home/skantify/code/oboe/.venv/lib/python3.8/site-packages/oboe/auto_learner.py", line 87, in __init__
    with open(os.path.join(DEFAULTS, p_type + '.json')) as file:
FileNotFoundError: [Errno 2] No such file or directory: '/home/skantify/code/oboe/.venv/lib/python3.8/site-packages/oboe/defaults/Oboe/classification.json'

Looking at /home/skantify/code/oboe/.venv/lib/python3.8/site-packages/oboe/defaults/Oboe/classification.json I can see that pip didn't include everything
ls /home/skantify/code/oboe/.venv/lib/python3.8/site-packages/oboe
__pycache__  ..               convex_opt.py  experiment_design.py  __init__.py  model.py     preprocessing.py
.            auto_learner.py  ensemble.py    generate_vector.py    linalg.py    pipeline.py  util.py

As you can see, the defaults folder and deeper is not included. Upon inspecting these folders, it seems it's because these are not python modules (lacking the __init__.py file). There for your setup.py would have to be modified according to this stack overflow answer

Great.
oboe uses meta-learning to pick models for a new dataset. The files in defaults folder that were not included in installation are the performance and runtime of models on meta-training datasets. Despite the disadvantage of the large size, including those meta-training data files will make it possible for users to tweak the matrix/tensor factorization ranks of the meta-training matrix/tensor. Nevertheless, I will take a look at whether just including the latent factors of these matrices/tensors in the installation would suffice for most use cases.

Now in the latest release (v0.2.0, and the same version number on PyPI), the library can be installed either by pip or from source, and the installation includes necessary files. Thanks again for reporting and discussing this bug! I'll close this issue for now. Feel free to reopen it or submit another issue for anything.


Keep rubocop comment directives out of Yardoc

This is in response to https://github.com/rspec/rspec-core/issues/2440
It looks like yard was taking some of the rubocop comments and putting them in the documentation. There isn't a straightforward way to really ignore this, but with a few tricks I was able to get all the instances I could find (using grep across the doc directory) resolved. There are still two others in the html source, which are in the source of a method and therefore belong there IMHO.

Thanks!


Base app size for iOS and Android

We are looking into using this instead of Unity and I was surprise to find the base app size seems to be ~20MB on iOS. Does that match with what you would expect? This was using the sample hello world app with the texture require removed, archived and exported via Xcode. Very cool project by the way!!

Hi @briancalvium, did you try and remove debug symbols from the app to see if that brings it down?
React Viro is about 5 megs + our immediate dependencies(GVR, AWS) brings us to about 10mg. Perhaps the other 10 megs are from React Native itself or other RN native modules. You can try and remove some of the React dependencies or modules such as RCTAnimation to bring it down some more.
We'll continue to work on bringing down total size on our end.


[Help] - Using unary operators with multiple inputs

I prefer to use Dataframe API directly and I am trying to do the same. I am new to library so, I am unable to figure out how to use certain functions in logical_plan that are declared as unary operators but actually need multiple inputs.
Examples:

concat - I am assuming should take multiple columns as input and concat them
regexp_match - Physical plan refers 3 arguments, column being operated on, regex, options
split_part - This function need 3 inputs, column being split, delimiter, index of text to take

Common signature in all 3 cases is:
pub fn function_name(e: Expr) -> Expr
Question: How does proper input expression for this to work?

It seems that this is lack of proper implementation for certain functions. After upgrading the dependency from "4.0" to "5.0" the signature of concat has changed from pub fn concat(e: Expr) -> Expr to pub fn concat(args: &[Expr]) -> Expr.
It would be helpful to new users to documents functions that are yet to be properly implemented. I will try to create a list but, need someone to validate this properly.


[SILVerifier] Add detection of conflicting debug variables

IRGenDebugInfo assumes, using a cache, that all variables with the same scope, same name and same source location, are lowered to the same type. This assumption was broken in some rare cases. This PR fixes those cases and adds a SILVerifier assertion to detect them early.
rdar://124555787

@swift-ci please test source compatibility

@swift-ci please test

@swift-ci please test source compatibility

looks like test/SILOptimizer/init_accessors.swift is triggering the check

@swift-ci please smoke test

@swift-ci test source compatibility

@swift-ci test linux


[Gekidou] Fix touch not responding on some posts

Summary
There have been some reports (and I've seen it myself) when at times when we scroll in the post list there are some posts that are not responding to taps. After some investigation this could be cause of the use of a negative margin inside a FlatList.
This PR aims to keep the UX the same but changes the way styling is done and removes the need of the negative margin.
NONE

going to merge this, in case changes are needed it can be done in another PR


[Suggestion] - Easy browser-based preview UI.

Thinking a quick and easy way to do browser based testing would be a sweet addition to this project.
I've done the proof of concept locally and feel like its a good addition to this project.
Why?

Don't have to send an email for every change
No need to remember local url's to navigate to (would load from localhost:[PORT])
Side-by side desktop / mobile preview
Lightweight

Implementation Thoughts

Implement express server w/ grunt
Live reload for changes to /dist files
Grunt open to launch a browser (optional)
Serve dist files into the ui example below for quick side-by-side previews

Here's a screenshot of what I cooked up locally as proof of concept:

@leemunroe - I have a ready-to-go version of this if you'd like to check it out and provide any thoughts.
feature/browser-preview
All you need do differently is run grunt serve to start the project. It will do all the standard stuff + start up an express server and open the preview UI.

@taeo Man this is awesome!
Had a couple of issues getting it running but haven't dug into them. These were the warnings I was getting:
Loading "autoprefixer.js" tasks...ERROR
>> Error: Cannot find module 'js-base64'
Warning: Task "autoprefixer:preview" not found. Use --force to continue.

@leemunroe - sweet! Glad you like the idea.
Weird issues. Did you do an npm install after switching branches?
I just pulled from scratch fine:
mkdir grunt-email-workflow-test; cd grunt-email-workflow-test; git clone git@github.com:taeo/grunt-email-design.git .

git checkout feature/browser-preview

git pull origin feature/browser-preview

npm install

!!! copy your secrets.json file !!!
grunt serve

@taeo Sorry looks like npm install froze on me last time. Deleted, reinstalled and works flawlessly.

@leemunroe - Excellent. Let me know if you have an changes you'd like to see and I'll send in a PR.
I know that I'll need to add a server route for ./dist/img in order for the imagemin #21 to work right.

@taeo I'm wondering do we need to include the extra sass:preview and autoprefixer tasks in Gruntfile. Maybe instead compile that scss manually or just include the css file?
My fear is over complicating the Gruntfile for first time users.

@leemunroe - My 10¢, headlined with

"I think this project is a starter kit that works out of the box if you follow the readme. Other customization needs should be issues/suggestions -or- learn grunt & make the changes yourself"

w/o sass & autoprefixer tasks:

The preview UI wouldn't be maintainable by other contributors if there were issues.
Committing compiled css leads to more merge conflicts.

Readability of the gruntfile isn't a primary concern (IMO):

It "works" out of the box if you follow the readme.
If you're editing gruntfiles, you should have an idea of what you're doing.

We could re-arrange the express, and auto-prefixer tasks w/in the gruntfile and add a big-ass comment block

/*************************************************************************************************
 The following tasks are needed so you can use the browser-based testing server
 We suggest you don't edit these unless you know what you're doing...
**************************************************************************************************/
tasks......
/*************************************************************************************************
 END Don't Edit :: Browser UI
**************************************************************************************************/

I may just have a different outlook on what's important with this project...? Your thoughts on my comments?

Haven't gave up on this, just need more time to test and think through it.

@leemunroe - Bump.
I can refactor PR #33 to bring up to date with master. I'm using my fork w/ previews on a few projects and loving it...

@taeo :+1: Do it

@taeo p.s. would love to see the emails/projects you're using this on

Livereload is a great idea, but why not Brwoser-sync?
Is include a server localhost:3000 and sync on many device.
Nice job.

I didn't find your project Taeo?


Fix property derivations issue for UNNEST

Fixes https://github.com/facebook/presto/issues/3165

looks good


WIP: Dependent Verification and State RFC

Please don't review yet, it's just a copy of the text I cut out of #763 .
I posted these outtakes so we can refer to them if we need to.
TODO:

[x] Decide if this should be one RFC, or if we should split dependent verification and state updates

State:

[x] Which state is stored in RAM? Which services are responsible for it? Is their state verified, or unverified?

https://github.com/ZcashFoundation/zebra/pull/763#discussion_r463221812
https://github.com/ZcashFoundation/zebra/pull/763#discussion_r463203518

[x] What is the minimum amount of permanent state we need to keep? What about transient state?

https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668923954
https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668942788
https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668952187

[x] Is state pruning in scope?

[x] Do we want to support analysis of orphaned side-chains?

https://github.com/ZcashFoundation/zebra/pull/763#discussion_r463197807

[x] How is the chain pruned? Which service is responsible?

https://github.com/ZcashFoundation/zebra/pull/763#discussion_r463205128

Tips:

[x] How is the best tip chosen? How do we serialise state updates?

https://github.com/ZcashFoundation/zebra/pull/763#discussion_r463201591

Consensus Rules:

[x] Add a definition and reference for bilateral consensus rule change

https://zips.z.cash/protocol/protocol.pdf#networkupgrades

In-Memory vs On-Disk:

[x] Rather than saying "in-memory" or "on-disk", talk about why the implementation requires speed, permanent storage, or large storage

https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668281017
https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668517561

Crate Dependencies:

[x] Move the verifiers to zebra-state?
[x] Make zebra-state depend on zebra-consensus?

https://github.com/ZcashFoundation/zebra/pull/763#issuecomment-668914221

@yaahc I think there's been a bit of confusion here.
This RFC is just the unused text from #763 right now.
It won't be ready for review until all the questions in the description are resolved.

I think everything here is handled by #902.


Add  to question page examples

<form> was left of from question page example.
This aligns the functionality of the question page in the DS and Prototype kit.

You can preview this change here:
Built with commit 9f72abc4beba15341462cacecc6342fd929eaf07
https://deploy-preview-163--govuk-design-system-preview.netlify.com

Ready for second review, thanks for the good spot @nickcolley


Tag Suggestions

Hello hello,
I was thinking about new tags and few came to my mind, which should get discussed a little.
Some mods, especially weapon themed mods, add new types of shields, bows, crossbows and tridents which all belong to the weapon category. In the mod Tiered I use at least the shield tag to provide easier compat to mods which add new shields to mc.
Do you think it makes sense to add tags for those weapon types and maybe even a "weapons" tag (would be the counterpart to the armor tag)?

Good ideas! What do you think would be appropriate conditions for these?
Do you think a simple instanceof would suffice for these (i.e. with ShieldItem, BowItem, CrossbowItem and TridentItem)?

For BowItem, CrossbowItem and TridentItem instanceof is appropiate since for example MCDW items depend on the first two in their respective class.
The ShieldItem has a downside. The most official lib I found for new shield items is Fabric-Shield-Lib.
It provides a FabricShieldItem class which doesn't extend the ShieldItem class but implements a new implemented interface called FabricShield.
Not sure if autotag should support/add compatibility with it.

Sounds good. Thanks for the info about the shield library. Since that's the one I heard of before as well, and it seems to be that it's even mentioned in the "Shields" tutorial on the Fabric wiki, I'd add an integration for that mod.
Question: Would you include shields in the general weapons tag, or not? Would you include them in the tools tag?
I'm also thinking of adding a tag for "ranged weapons" (bows, crossbows, trident) and "melee weapons" (swords and trident). Let me know what you think about those.


Mutable State Version & Activity Heartbeat Timer

Currently the mutable state is "versioned" using next event ID; next event ID is not a good attr for protecting concurrent modification of mutable state or preventing writing the activity heartbeat > 1 times.
We should have a additional attr 'dbVersion', which will +1 for each db write related to a mutable state
We can also consider persist the heartbeat timer time along with activity (currently it is a in mem only attr)

For background context, check: https://github.com/uber/cadence/pull/3032

opened issue in temporal temporalio/temporal#435 to track


Disable tests that require dartsim on windows

The dartsim component of gz-physics is currently not built on CI, so these tests should be disabled.

looks good to me.
The TransformsTestinWater was already passing on windows. Looking at the checks in the test, I think it makes sense that it may just pass without physics running.

Yeah, the comparisons are against each other, not against an expected velocity. I still think we should disable it though since it would be giving a false impression if it passes without physics.


feat(LinearTexture): add stroke support to the LinearGradient texture

Description

The getRoundRect method from Lightning Core currently does not allow for any customized stroke colors. This LinearGradient utilizes the canvas "LinearGradient" and can be updated to include stroke support. The beginPath logic is right from the createRoundRect logic in Lightning core's Tools, but accepts a gradient instead of a single color for strokeStyle, per W3Schools info: https://www.w3schools.com/tags/canvas_strokestyle.asp.
References

Testing

Add something like this to Storybook or the Lightning Playground (need to import new version of LinearGradient from textures folder):
                Gradient: {
                    texture: {
                        type: LinearGradient,
                        w: 400,
                        h: 200,
                        strokeWidth: 10,
                        strokeRadius: [ 10, 30, 10, 30 ],
                        degrees: 90,
                        steps: [
                            { percent: 1, color: 'rgba(250, 0, 0, 1)' }, // red
                            { percent: 0.8, color: 'rgba(250, 150, 0, 1)' }, // orange
                            { percent: 0.6, color: 'rgba(250, 250, 0, 1)' }, // yellow
                            { percent: 0.4, color: 'rgba(0, 250, 0, 1)' }, // green
                            { percent: 0.2, color: 'rgba(0, 0, 250, 1)' }, // blue
                            { percent: 0, color: 'rgba(150, 0, 250, 1)' } // purple
                        ]
                    },
                }

Automation

Checklist

[ ] all commented code has been removed
[ ] any new console issues have been resolved
[ ] code linter and formatter has been run
[ ] test coverage meets repo requirements
[ ] PR name matches the expected semantic-commit syntax

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.


”Bolboși”, ”Bălăcești”, "Bolboasa", "Igirosu", "Miclosu", "Ohaba-Jiu", "Valea" are listed in the drop-down menu

Description:
”Bolboși”, ”Bălăcești”, "Bolboasa", "Igirosu", "Miclosu", "Ohaba-Jiu", "Valea" are listed in the drop-down menu alongside their corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Bolboși" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bolboși, GORJ (Bolboși)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Bălăcești" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bălăcești, GORJ (Bolboși)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Bolboasa" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bolboasa, GORJ (Bolboși)".

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Type "Igirosu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Igirosu, GORJ (Bolboși)".

Step 8
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 8
Type "Miclosu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Miclosu, GORJ (Bolboși)".

Step 10
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 11
Type "Ohaba-Jiu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Ohaba-Jiu, GORJ (Bolboși)".

Step 12
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 13
Type "Valea" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Valea, GORJ (Bolboși)".


feat(ui-ux): updated get vault creation free from gov variable

What this PR does / why we need it:
Which issue(s) does this PR fixes?:

Fixes #
Additional comments?:
Developer Checklist:

[ ] Read your code changes at least once
[ ] Tested on iOS/Android device (e.g, No crashes, library supported etc.)
[ ] No console errors on web
[ ] Tested on Light mode and Dark mode*
[ ] Your UI implementation visually matched the rendered design*
[ ] Unit tests*
[ ] Added e2e tests*
[ ] Added translations*

Codecov Report
Attention: Patch coverage is 0% with 10 lines in your changes are missing coverage. Please review.

Project coverage is 52.04%. Comparing base (d1cd46b) to head (9e14747).

Files
Patch %
Lines

...igator/screens/Loans/screens/CreateVaultScreen.tsx
0.00%
10 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4185      +/-   ##
==========================================
- Coverage   59.98%   52.04%   -7.94%
==========================================
  Files         442      442
  Lines       12581    12586       +5
  Branches     4129     4158      +29
==========================================
- Hits         7547     6551     -996
- Misses       4974     5978    +1004
+ Partials       60       57       -3

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


Add tests for useInterval hook

Add tests for useInterval hook. No issues found.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


FontAwesome 5

Is there any way of getting this to work with FontAwesome 5? I've tried a few things with limited success.
I'm specifically using FontAwesome 5's VueJs component.
What I thought would work is just enabling the processing of i tags, as mentioned here: https://github.com/FortAwesome/vue-fontawesome#processing-i-tags-into-svg-using-font-awesome
And then changing the icon class names to the FontAwesome 5 equivalents.
This partially works, and outputs the correct icon in the initial sate.
However, the icon doesn't get updated with the loading spinner, when it is waiting for permission and finding the location. It also doesn't "highlight" the icon once the position is found.
I think this is because FontAwesome replaces the icon DOM element, with a new svg element, and so the class changes don't have an element to modify any more (Or at least not one attached to the DOM).
What I think it needs to do, is to re-build the icon element when the state changes, so it picks up the changes, I think.
Any help would be appreciated.

I won't have time to look into fixing this myself but would be happy to review a pull request.


Add DocumentsTable to Search API

Add DocumentsTable to Search API
Formatting

#2248  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @nickgraz and the rest of your teammates on  Graphite


feat: auto-deploy when starting gulp watch (#291)

This is the v8.x cherry pick of https://github.com/liferay/liferay-js-themes-toolkit/pull/299
This commit started with me wanting to delete the code that is now irrelevant in the face of the previous commit, but I ended up making gulp watch work better along the way by auto-deploying on the first run. There is a lot of red in here, so by way of explanation:

We delete "deploy:file" and "deploy:folder" because they were broken; we delete the associated fastDeploy() they rely on.
We delete "deploy:css-files" because it used the broken fastDeploy() too, and thanks to the recent watch rewrite, it wasn't even needed.
We delete the associated tests in "watch.test.js", including the sole remaining test, which describes "when changing css files", because that one doesn't actually invoke the watch functionality at all; it is sad that we don't have any automated watch tests at all, but it is still better to have no "watch" tests than tests which claimed to be "watch" tests but weren't actually testing the watch mode.
Get rid of the --full and -f switches to the watch task and instead to a full auto-deploy every time we start to watch, by replacing "build" with "deploy" in the getCleanTaskArray() implementation. The purpose of that function is to put us in a clean start at the time of invoking watch, and seeing as we're doing a build anyway, there is only a small additional cost to be paid to include a deploy as well.
In turn, get rid of the useless defaultTaskArray parameter which wasn't used anywhere.

Related: https://github.com/liferay/liferay-js-themes-toolkit/issues/291

As usual, this is a draft only because it depends on https://github.com/liferay/liferay-js-themes-toolkit/pull/301 and I want to make sure it doesn't get merged out of order.

Tested this with liferay-portal-7.1.2-ga3/tomcat-9.0.10 binary:

Booted the portal.
Created new 7.1 theme with yo ./packages/generator-liferay-theme.
Ran gulp watch.
Changed CSS file and saw live reload.
Changed src/WEB-INF/liferay-plugin-package.properties in theme and saw full deploy and live reload.


Users/subraman/createuaispec

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month. 10/31/2022
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month. 11/04/2022
If updating an existing version, please select the specific language SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[x] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[x] Check this box if any of the following appy to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review.  Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you are using OpenAPIHub to initialize the PR for adding a new version. More details, refer to the wiki.

[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

I am not sure why the swagger diff is done with Marketplace.json, I haven't made any breaking changes from previous commit. @lirenhe can you check and update the tags appropriately
https://github.com/Azure/azure-rest-api-specs/pull/19759/checks?check_run_id=7334352666

/azp run

@mentat9 i have pushed the suggested changes, let me know if anything else you are looking from me. If not please go ahead and approve the PR

@mvvsubbu - Please use the labels so the correct person is notified that you are ready. Just remove the ARMChangesRequested lable, and it will notify the current oncall to go back and revisit your PR.

@mentat9 unfortunately I don't have the ability to remove label, probably @jianyexi has the ability

@mentat9 unfortunately I don't have the ability to remove label, probably @jianyexi has the ability

It's probably because you haven't joined the Azure GH organization. I'll remove the label for you. Be sure and verify your organization membership.

@lirenhe why is this PR being merged? Our service capabilities are not deployed yet. I thought we are supposed to get PR approved and merge once service is deployed. Isn't it correct?

Swagger reviewers don't have a way to verify whether your service is deployed or not so we would expect service team to add 'DoNotMerge' if this PR is not ready to merge.
If there is no such tag, we will merge the PR directly after it is approved..

@lirenhe thanks for letting me know. Given this is not meant to be merged. I want to get this commit reverted. What is the process for reverting?

we don't have a way to auto revert a PR, usually, we ask service team to create a new PR for reverting the previous change.
@akning-ms to comment.

Ok I will create a revert PR for this, please approve it.

@lirenhe I have created a revert PR for this https://github.com/Azure/azure-rest-api-specs/pull/20698, please help me get this merged.


Develop EXECUTOR TOOLSET API for local

Let's develop EXECUTOR TOOLSET API for local.
Plan

4/11 discussion
4/15 done to design/draft(impl+test)
4/22 Completed

the discussion means that we need to discuss whether the rough(naive) plan is right or wrong.

Tasks & Assignees

UI: @jyoungyun
API: @YongseopKim
Backend:  @hyunsik-yoon

This API should

run the internal infer tool
run the other NN model like tflite

/cc @yunjayh and @struss .

We've changed UI.
So how about close this and create a new one?

Let me close this issue.


Fix the Readme file so that it has valuable information

I want to see a better title, description, and maybe a roadmap

Working on this now.


Add support for returning Axes from variables

A lot of plotting functions from e.g extra-data and EXtra return Axes objects and it's a little annoying to remember to call .get_figure() on them every time, so now that's handled automatically.

Thanks, we ran into this a couple of weeks ago at FXE (also prompting #220 to make it easier to understand what was happening).
LGTM!


Update quantum python track2 config

@lirenhe Python failed with a known issue for new service and the PR is ok

@lirenhe Python failed with a known issue for new service and the PR is ok

/azp run


Compress old file on rotate

This PR adds the "compress" option to the RotatingWriter.
It first compresses the old file in gzip then removes the uncompressed one. This behavior needs more disk space but is more safe (the deletion of the original is the last thing done).  Unit tests included.
It would be really nice executed in a goroutine in order to not block during the compression but it's not done in this PR: in a goroutine, it'll be hard to return an error on compression. Up to you.
The "actual" compression is done in the gzip method, this way you can easily change the compression algorithm to your needs.

Thanks !


Complement to issue #3512, about the [style$] behavior and alternatives to style binding.

Complementing the issue #3512:
I have a scenario where I set a style property programmatically, like:
ready: function () {
this.$.myElement.style.color = 'blue'
}
And it works, but as soon as the bindings are written, what I had set, programmatically, is overwritten.

This is expected, right? Why not apply classes to change the styling.  Or using a combination of style and class.

Marking as WAI. The expectation is that any manual tweeks to a property/attribute would  be override by bindings. You can use computed bindings, compound bindings, or a combo of style and class to have more control.


Incorrect code gen of field name with multiple caps in a row

Currently in our JSON schema we have an input_obect that contains the following field
{
                            "name": "deviceID",
                            "description": null,
                            "type": {
                                "kind": "SCALAR",
                                "name": "String",
                                "ofType": null
                            },
                            "defaultValue": null
}

In the generated swift code, however, this is becoming deviceId and this same capitalization is being used in the endpoint request, causing it to fail as an unrecognized field.
Generated swift looks like:
public struct addUserInput: GraphQLMapConvertible {
  public var graphQLMap: GraphQLMap

  public init(firstName: String, lastName: String, identifier: String, identifierType: String, deviceId: String? = nil, clientMutationId: String? = nil) {
    graphQLMap = ["firstName": firstName, "lastName": lastName, "identifier": identifier, "identifierType": identifierType, "deviceId": deviceId, "clientMutationId": clientMutationId]
  }
}

What version of apollo-codegen do you have installed? We recently (in 0.10.4) fixed a bug where the property name instead of the field name was used in input objects. So that should at least make your request work I think.
That being said, I don't like the way we currently handle capitalization, because a name like deviceID should be used as is and not converted to deviceId. The idea was to convert field names using underscores or other conventions to camel case, but that may not be worth the trouble.

More or less linked to #92, also adding it to the milestone.


config-map with name XXX not present in namespace

I am using org.springframework.cloud:spring-cloud-starter-kubernetes-fabric8-config:3.0.1 to reload properties when configmap is edited.
It works, but when I run the app, the below errors are displayed in initializing time.
2023-02-07 16:01:13.487  WARN 1 --- [           main] o.s.c.k.f.config.Fabric8ConfigUtils      : config-map with name : 'configmap-dev-kubernetes' not present in namespace : 'dev'
... initializing
2023-02-07 16:01:59.379 [main] INFO   o.s.c.k.f.c.r.EventBasedConfigMapChangeDetector [EventBasedConfigMapChangeDetector.java:101] - Added new Kubernetes watch: config-maps-watch-event
2023-02-07 16:01:59.379 [main] INFO   o.s.c.k.f.c.r.EventBasedConfigMapChangeDetector [EventBasedConfigMapChangeDetector.java:111] - Kubernetes event-based configMap change detector activated
2023-02-07 16:01:59.767 [OkHttp https://<IP_ADDRESS>/...] WARN   o.s.c.k.f.config.Fabric8ConfigUtils [Fabric8ConfigUtils.java:121] - config-map with name : 'configmap-dev-kubernetes' not present in namespace : 'dev'
2023-02-07 16:01:59.777 [OkHttp https://<IP_ADDRESS>/...] WARN   o.s.c.k.f.config.Fabric8ConfigUtils [Fabric8ConfigUtils.java:121] - config-map with name : 'configmap-dev-kubernetes' not present in namespace : 'dev'
2023-02-07 16:01:59.787 [OkHttp https://<IP_ADDRESS>/...] WARN   o.s.c.k.f.config.Fabric8ConfigUtils [Fabric8ConfigUtils.java:121] - config-map with name : 'configmap-dev-kubernetes' not present in namespace : 'dev'
..... keep display errores .......
2023-02-07 16:02:10.325 [OkHttp https://<IP_ADDRESS>/...] WARN   o.s.c.k.f.config.Fabric8ConfigUtils [Fabric8ConfigUtils.java:121] - config-map with name : 'configmap-dev-kubernetes' not present in namespace : 'dev'

bootstra.yml
spring:
  cloud:
    kubernetes:
      reload:
        enabled: true
        mode: event
      config:
        sources:
          - name: configmap-dev
            namespace: dev

Application.java
@EnableScheduling
public class Application {
}

How to stop the WARN?

are you sure you are using 3.0.1?

Thanks wind57.
Sorry, it was 2.1.5. spring-cloud-dependencies changes the version.
Let me close this ticket and try the new version.
If there is still the issue, I will reopen it.

no problem, if there is anything else, just re-open or open a new issue.


allow multiline secrets in .secrets

Currently when using a multiline variables in .secrets it will show an error:
failed to validate config: failed to parse secrets, make sure secret values are between quotes: failed to unmarshal object: toml: basic strings cannot have new lines

I think .secrets should support multiline variables like a normal .env file.

That is supported already. The secrets file is a toml file under the hoods so toml rules apply. Try with:
str1 = """
Roses are red
Violets are blue"""

Closing but feel free to reopen if it doesn't work.

This doesn't work, I get this error:
failed to validate config: failed to validate config: failed to unmarshal config: invalid character '\n' in string literal

@dbarrosop I don't have permissions to reopen, could you reopen or should I create a separate issue?

@andr-ec yes, you were right and it was broken, hoever, as spakanati mentioned it should work on 1.8.0. Otherwise, let me know.


Minor: fix duplicate relations in product_stream/variants

This PR ensures we return a distinct list of relations (COMPOSE/ERRATA) on product_stream/product_variants.

LGTM


command line interface is broken on windows

Describe the bug
The command line interface of textract is broken on windows. Even simple commands like "textract -h' is giving an exception.
$ textract -h
Traceback (most recent call last):
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 33, in <module>
    main()
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 22, in main
    parser = get_parser()
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\cli.py", line 67, in get_parser
    choices=_get_available_extensions(),
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\__init__.py", line 89, in _get_available_extensions
    ext_re = re.compile(glob_filename.replace('*', r"(?P<ext>\w+)"))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 234, in compile
    return _compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 286, in _compile
    p = sre_compile.compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_compile.py", line 764, in compile
    p = sre_parse.parse(p, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 924, in parse
    p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 420, in _parse_sub
    not nested and not items))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 501, in _parse
    code = _escape(source, this, state)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 402, in _escape
    raise source.error("bad escape %s" % escape, len(escape))
re.error: bad escape \P at position 2

To Reproduce

Install textract in a test environment and activate it.

$ cat /h/work/myrepos/rutils/python3/envs/env_test_textract.yml
name: test_textract
channels:
  - defaults
dependencies:
  - python=3.7
  - pip
  - pip:
    - textract

$ conda env create -f env_test_textract.yml

$ source activate test_textract

Run textract

$ textract -h
Traceback (most recent call last):
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 33, in <module>
    main()
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 22, in main
    parser = get_parser()
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\cli.py", line 67, in get_parser
    choices=_get_available_extensions(),
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\__init__.py", line 89, in _get_available_extensions
    ext_re = re.compile(glob_filename.replace('*', r"(?P<ext>\w+)"))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 234, in compile
    return _compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 286, in _compile
    p = sre_compile.compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_compile.py", line 764, in compile
    p = sre_parse.parse(p, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 924, in parse
    p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 420, in _parse_sub
    not nested and not items))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 501, in _parse
    code = _escape(source, this, state)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 402, in _escape
    raise source.error("bad escape %s" % escape, len(escape))
re.error: bad escape \P at position 2

Expected behavior
The command should print help page for textract and should not raise an exception.
Desktop (please complete the following information):

OS: Windows: 10 Enterprise, using 'git bash' version 2.18.0
Textract version: 1.6.3
Python version: 3.7.5
Virtual environment: yes

Additional context
As the exception indicates the problem lies in _get_available_extensions() of https://github.com/deanmalmgren/textract/blob/master/textract/parsers/init.py#L89
The relevant code is
    parsers_dir = os.path.join(os.path.dirname(__file__))
    glob_filename = os.path.join(parsers_dir, "*" + _FILENAME_SUFFIX + ".py")
    ext_re = re.compile(glob_filename.replace('*', r"(?P<ext>\w+)"))

The __file__ and glob_filename are evaluated as
C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\__init__.py
C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\*_parser.py

I am able to reproduce the exception using these values as follows:
$ python
Python 3.7.5 (default, Oct 31 2019, 15:18:51) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> glob_filename = 'C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\*_parser.py' >>> ext_re = re.compile(glob_filename.replace('*', r"(?P<ext>\w+)"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 234, in compile
    return _compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 286, in _compile
    p = sre_compile.compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_compile.py", line 764, in compile
    p = sre_parse.parse(p, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 924, in parse
    p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 420, in _parse_sub
    not nested and not items))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 501, in _parse
    code = _escape(source, this, state)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 402, in _escape
    raise source.error("bad escape %s" % escape, len(escape))
re.error: bad escape \P at position 2

I think it is expecting forward slashes instead of backward slashes in glob_filename. Something like 'C:/ProgramData/Continuum/Anaconda/envs/test_textract/lib/site-packages/textract/parsers/*_parser.py'

Thank you for the extensive bug report.
os.path.join escapes backward slashes, but printing these paths doesn't show them. You can look at print(repr(__file)) to verify that they're there. The problem seems to be coming from the following changes in the re module.
Changed in version 3.6: Unknown escapes in pattern consisting of '\' and an ASCII letter now are errors.
Changed in version 3.7: Unknown escapes in repl consisting of '\' and an ASCII letter now are errors.

This requires to escape the backlashes once to handle backslashes in string, doubling the number of backslashes, and another time to not confuse the re module, for a final of 4 backslashes for each backslash needed in a regex pattern. I'll post a fix for the Git version of textract. A larger upcoming update of textract will include this in a more complete way.

Thanks for the reply, Johannes Weytjens!
Are the 3.6 and 3.7 you mentioned above are Python versions? I am getting a different exception with Python 3.5.6
$ textract -h
Traceback (most recent call last):
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 33, in <module>
    main()
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 22, in main
    parser = get_parser()
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\cli.py", line 67, in get_parser
    choices=_get_available_extensions(),
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\__init__.py", line 89, in _get_available_extensions
    ext_re = re.compile(glob_filename.replace('*', r"(?P<ext>\w+)"))
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 224, in compile
    return _compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\re.py", line 293, in _compile
    p = sre_compile.compile(pattern, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_compile.py", line 536, in compile
    p = sre_parse.parse(p, flags)
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\sre_parse.py", line 834, in parse
    raise source.error("unbalanced parenthesis")
sre_constants.error: unbalanced parenthesis at position 99

My conda environment file to reproduce the exception
$ cat env_test_textract.yml
name: test_textract
channels:
  - defaults
dependencies:
  - python=3.5
  - pip
  - pip:
    - textract

$ python --version
Python 3.5.6 :: Anaconda, Inc.

Yes, the 3.6 and 3.7 are python versions numbers.
I can't immediately reproduce this issue with python 3.5.4 on Windows 10. Could you try again with the Git version of textract? This includes a fix for the issues in python 3.6 and above. You can install it with the following command.
pip install git+https://github.com/deanmalmgren/textract

The latest github version gives an ImportError.
$ textract -h
Traceback (most recent call last):
  File "C:/ProgramData/Continuum/Anaconda/envs/test_textract/Scripts/textract", line 11, in <module>
    from textract.cli import get_parser
  File "C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\cli.py", line 17, in <module>
    from .parsers import DEFAULT_ENCODING, _get_available_extensions
ImportError: cannot import name 'DEFAULT_ENCODING' from 'textract.parsers' (C:\ProgramData\Continuum\Anaconda\envs\test_textract\lib\site-packages\textract\parsers\__init__.py)

The DEFAULT_ENCODING was defined in 1.6.1 https://github.com/deanmalmgren/textract/blob/v1.6.1/textract/parsers/init.py#L25 . I think it was renamed to DEFAULT_OUTPUT_ENCODING in the latest version https://github.com/deanmalmgren/textract/blob/master/textract/parsers/init.py#L25 but not all the old references were cleaned up.
But even after changing all those DEFAULT_ENCODING occurrences in cli.py to DEFAULT_OUTPUT_ENCODING, I still get the same exception when I run 'textract -h'.

Thank you for pointing out that I missed changing the DEFAULT_ENCODING everywhere. Nevertheless, fixing this I can't reproduce the issue you encounter. I will look more into the problem this weekend.