Failed to provision Azure cluster - AKS

What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):

Setup rancher in docker using the official single-node installation guide
Install Rancher via SSL Option A (Self-Signed Cert)
Configure Rancher to use Azure Active Directory for user authentication and management
Create a Cluster in East US, connected to a service principal set up using the official guide for AKS clusters.
Run sudo docker logs $(sudo docker ps | grep rancher | cut -f1 -d' ') -f and watch the cluster fail to provision.

Result:
2019/10/02 18:28:27 [INFO] [mgmt-auth-crtb-controller] Creating roleBinding for subject user-ds6w5 with role cluster-owner in namespace
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating role project-owner in namespace p-ps5h4
2019/10/02 18:28:27 [INFO] [mgmt-auth-crtb-controller] Creating role cluster-owner in namespace p-dkhmg
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating role admin in namespace p-ps5h4
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating roleBinding for subject user-ds6w5 with role project-owner in namespace
2019/10/02 18:28:27 [INFO] [mgmt-auth-crtb-controller] Creating roleBinding for subject user-ds6w5 with role cluster-owner in namespace
2019/10/02 18:28:27 [ERROR] ProjectRoleTemplateBindingController p-dkhmg/creator-project-owner [mgmt-auth-prtb-controller] failed with : couldn't create role project-owner: roles.rbac.authorization.k8s.io "project-owner" already exists
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating roleBinding for subject user-ds6w5 with role project-owner in namespace
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating role project-owner in namespace p-dkhmg
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating roleBinding for subject user-ds6w5 with role admin in namespace
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating role admin in namespace p-dkhmg
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating roleBinding for subject user-ds6w5 with role project-owner in namespace
2019/10/02 18:28:27 [INFO] [mgmt-auth-prtb-controller] Creating roleBinding for subject user-ds6w5 with role admin in namespace
2019/10/02 18:28:32 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10894
2019/10/02 18:28:32 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:32 [INFO] [mgmt-cluster-rbac-delete] Updating cluster c-kcxkg
2019/10/02 18:28:37 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10865
2019/10/02 18:28:37 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:42 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10667
2019/10/02 18:28:42 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:47 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10586
2019/10/02 18:28:47 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:52 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10406
2019/10/02 18:28:52 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:57 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10447
2019/10/02 18:28:57 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:28:57 [INFO] Provisioning cluster [c-kcxkg]
2019/10/02 18:28:57 [INFO] Creating cluster [c-kcxkg]
2019/10/02 18:29:02 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10696
2019/10/02 18:29:06 [INFO] Request submitted, waiting for cluster to finish creating
2019/10/02 18:29:06 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/02 18:29:36 [INFO] cluster marked as failed but waiting for recovery: retries left 2
2019/10/02 18:30:06 [ERROR] Azure failed to provision cluster with state: Failed
2019/10/02 18:30:06 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:06 [ERROR] ClusterController c-kcxkg [cluster-provisioner-controller] failed with : failed to provision Azure cluster
2019/10/02 18:30:11 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10648
2019/10/02 18:30:11 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:16 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10290
2019/10/02 18:30:16 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:21 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10312
2019/10/02 18:30:21 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:26 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10550
2019/10/02 18:30:26 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:31 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10920
2019/10/02 18:30:31 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:46 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10934
2019/10/02 18:30:46 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:30:46 [INFO] Provisioning cluster [c-kcxkg]
2019/10/02 18:30:46 [INFO] Creating cluster [c-kcxkg]
2019/10/02 18:30:51 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10360
2019/10/02 18:30:51 [ERROR] Cluster c-kcxkg previously failed to create
2019/10/02 18:30:54 [INFO] Request submitted, waiting for cluster to finish creating
2019/10/02 18:30:54 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/02 18:31:24 [INFO] cluster marked as failed but waiting for recovery: retries left 2
2019/10/02 18:31:54 [ERROR] Azure failed to provision cluster with state: Failed
2019/10/02 18:31:54 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:31:54 [ERROR] ClusterController c-kcxkg [cluster-provisioner-controller] failed with : failed to provision Azure cluster
2019/10/02 18:31:59 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10550
2019/10/02 18:31:59 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:32:04 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10729
2019/10/02 18:32:04 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:33:04 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10646
2019/10/02 18:33:04 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:33:04 [INFO] Provisioning cluster [c-kcxkg]
2019/10/02 18:33:04 [INFO] Creating cluster [c-kcxkg]
2019/10/02 18:33:09 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10770
2019/10/02 18:33:09 [ERROR] Cluster c-kcxkg previously failed to create
2019/10/02 18:33:12 [INFO] Request submitted, waiting for cluster to finish creating
2019/10/02 18:33:12 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/02 18:33:43 [INFO] cluster marked as failed but waiting for recovery: retries left 2
2019-10-02 18:33:47.484617 I | mvcc: store.index: compact 1233
2019-10-02 18:33:47.486572 I | mvcc: finished scheduled compaction at 1233 (took 1.281399ms)
2019/10/02 18:34:13 [ERROR] Azure failed to provision cluster with state: Failed
2019/10/02 18:34:13 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:34:13 [ERROR] ClusterController c-kcxkg [cluster-provisioner-controller] failed with : failed to provision Azure cluster
2019/10/02 18:34:18 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10626
2019/10/02 18:34:18 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:34:23 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10343
2019/10/02 18:34:23 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:36:23 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10048
2019/10/02 18:36:23 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:36:23 [INFO] Provisioning cluster [c-kcxkg]
2019/10/02 18:36:23 [INFO] Creating cluster [c-kcxkg]
2019/10/02 18:36:28 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10008
2019/10/02 18:36:28 [ERROR] Cluster c-kcxkg previously failed to create
2019/10/02 18:36:31 [INFO] Request submitted, waiting for cluster to finish creating
2019/10/02 18:36:31 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/02 18:37:01 [INFO] cluster marked as failed but waiting for recovery: retries left 2
2019/10/02 18:37:31 [ERROR] Azure failed to provision cluster with state: Failed
2019/10/02 18:37:31 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:37:31 [ERROR] ClusterController c-kcxkg [cluster-provisioner-controller] failed with : failed to provision Azure cluster
2019/10/02 18:37:36 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10746
2019/10/02 18:37:36 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/02 18:37:41 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10488
2019/10/02 18:37:41 [INFO] kontainerdriver azurekubernetesservice stopped

Other details that may be helpful:
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): v2.2.8 (UI: v2.2.94)
Installation option (single install/HA): Single Install

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): Hosted (AKS)

Machine type (cloud/VM/metal) and specifications (CPU/memory): Cloud, B2s (2 vcpus / 4GB)

Kubernetes version (use kubectl version): 1.14.6 (Latest available in AKS)

Docker version (use docker version):

Client:
 Version:           18.09.9
 API version:       1.39
 Go version:        go1.11.13
 Git commit:        039a7df9ba
 Built:             Wed Sep  4 16:57:28 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.9
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.11.13
  Git commit:       039a7df
  Built:            Wed Sep  4 16:19:38 2019
  OS/Arch:          linux/amd64
  Experimental:     false

Interestingly, today, after our admin gave me some more permissions for unrelated reasons, I am suddenly able to successfully provision AKS clusters in Rancher.  I however, cannot edit them in Rancher without getting the same error again:
2019/10/04 18:46:03 [INFO] Provisioning cluster [c-qlwpd]
2019/10/04 18:46:03 [INFO] Updating cluster [c-qlwpd]
2019/10/04 18:46:08 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10864
2019/10/04 18:46:11 [INFO] Request submitted, waiting for cluster to finish creating
2019/10/04 18:46:12 [ERROR] Azure failed to provision cluster with state: Scaling
2019/10/04 18:46:12 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:46:12 [ERROR] ClusterController c-qlwpd [cluster-provisioner-controller] failed with : failed to provision Azure cluster
2019/10/04 18:46:17 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10990
2019/10/04 18:46:17 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:46:18 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/04 18:46:22 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10771
2019/10/04 18:46:22 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:46:49 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2019/10/04 18:46:52 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10925
2019/10/04 18:46:52 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:46:52 [INFO] Provisioning cluster [c-qlwpd]
2019/10/04 18:46:52 [INFO] Updating cluster [c-qlwpd]
2019/10/04 18:46:57 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10981
2019/10/04 18:46:58 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:46:58 [ERROR] ClusterController c-qlwpd [cluster-provisioner-controller] failed with : containerservice.ManagedClustersClient#CreateOrUpdate: Failure sending request: StatusCode=0 -- Original Error: autorest/azure: Service returned an error. Status=<nil> <nil>
2019/10/04 18:47:03 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10839
2019/10/04 18:47:03 [INFO] kontainerdriver azurekubernetesservice stopped
2019/10/04 18:47:08 [INFO] kontainerdriver azurekubernetesservice listening on address <IP_ADDRESS>:10193
2019/10/04 18:47:08 [INFO] kontainerdriver azurekubernetesservice stopped

This issue is still present in Rancher 2.3.0.


How to sync the state to tableView from Cell?

Thanks for making the lib, but I want to know How can I sync the data state with controller and cell.
For example, I have a button in the cell, and I need to toggle the selected state with the button,
what should I do?

what about this?
(if tableView Section is only one)

you can make Dictionary<IndexPath.row, Bool>  in State Struct
e.g)

struct State {
    var isSelectedToggls: [Int: Bool] = [:]
}

make action from your tableView cell tap with cell Index

enum Action {
    case cellDidTapped(Int)
}

and then you can update Dictionary State -(1) using mutation  in your Reactor

When the state changes, you can reload table or bind tableView

I hope it helps @mozartee


workspaces: All building all members of the workspace

Something like "cargo build" in the root of the workspace would seem useful, which would then build all members of the workspace. Similar to how "cargo clean" currently cleans the workspace.

This should be --all.

Yeah we've got cargo test --all now on Nightly so it should be easy enough to add cargo build --all!

Basically something similar to 62c0497912f6c424a4a68d7af504f7943fad9864 then, just doing the same for build? Are there any other commands that could use some --all'ification?
I might take a look into that later, would be nice to replace my Makefile doing just that with a cargo command

Now that all of the support was landed with cargo test --all it may just involve copying these lines into build.rs. We could add cargo doc as well, although I'd want to just tread purposefully here to ensure we don't expand it too quickly

Thanks, it was almost just that (I've submitted a pull request). For "cargo doc" a little bit more is needed, but if you think that's useful to have (it seems useful to me), I can prepare a pull request for that too.

cargo doc --all sounds great to me! I'm sure it'll be requested sooner rather than later :)

Ok, I'll get to that once "build --all" is ready to be merged

Can this be closed now?

Should the default Travis CI Rust script use --all by default once this lands in stable?

I would wait until https://github.com/rust-lang/cargo/issues/3515 landed before closing


[other]: Fastboot app failed due to wrong camera config for 01Studio board

Other
Hello,
It seems that the config for 01Studio board which use camera GC2093 is not supported yet. The image created by config k230_canmv_01studio_defconfig refer to OV5647 instead.
Do we have plan to create new or update config? Or any patching to work with GC2093?
I found the code for selecting camera in sample_vivcap_init() of /src/big/mpp/userapps/sample/fastboot_app/main.cc
But I'm not sure whether any additional change needed or not.
Startup log:

OpenSBI v0.9
vicap_mcm_initRT-SMART Hello RISC-V.
msh />mirror mirror is 0 , senspress 'q' to exit application!!
or tpye is 39
ov5647_power_rest OV5647_CAM_PIN_CSI2 is 62
[D/lt9611] vtotal 1125 vactive 208 htotal_sys 400
<0>[6] [vi] wait stop timeout
[tuning] dev: 0
acq_win.width: 1920
acq_win.height: 1080
pipe_ctrl:<PHONE_NUMBER>
sensor_fd: 11
sensor_name: ov5647_csi2
database_name: ov5647-1920x1080
buffer_num: 0
buffer_size: 0
[tuning] chn: 0
out_win.width: 1920
out_win.height: 1080
bit_width: 0
pix_format: 5
buffer_num: 10
buffer_size: 3110912
yraw_size: 0
uv_size: 0
v_size: 0
block_type: 1
wait_time: 500
chn_enable: 1
VsiCamDeviceCreate hw:0-vt:0 created!
ov5647_power_rest OV5647_CAM_PIN_CSI2 is 62
ov5647_sensor_power_on, iic read chip id err
kd_mpi_sensor_power_set, error(-1)
kd_mpi_sensor_init, error(1)
kd_mpi_isp_sensor_init, sensor open failed(1)
kd_mpi_isp_sensor_set_test_pattern failed(12)!
kd_mpi_isp_connect, vsi connect failed(13)!
kd_mpi_isp_init, isp connect failed.
kd_mpi_vicap_init, isp init failed.
sample_vicap, kd_mpi_vicap_init failed.
<3>[4] [Func]:vb_is_blk_valid [Line]:1133 [Info]:id 0, phys_addr = 0, pool_phys_addr = 100ec000, pool_size = 15554560
 phys 0x180000, size 0x79000

 替换成GC2093_MIPI_CSI2_1920X1080_30FPS_10BIT_LINEAR


[iOS] [Enhancement] CornerRadius on control

Hi @1iveowl
Will it be possible to adjust CornerRadius via the plugin?

Not at the moment, but it shouldn't be hard to implement.
I might look at it when I get some time. I can't promise anything, but feel free to create PR with the additional feature.

I might be able to look into this and create a PR, however I wouldn't know how to do it on UWP or MacOS. Are you ok with a partial PR where unsupported platforms are simply not implemented?


feat-#3: Made the entire backend code from javascript to typescript

Summary
Made the entire backend code from javascript to typescript.
Description
https://github.com/user-attachments/assets/a949160c-26b1-44e6-9508-d18ec62954ad
currently in the project the backend code has not written by the typescript This pr converted the entire backend javascript to typescript.
Issue(s) Addressed
Enter the issue number of the bug(s) that this PR fixes

Template should be strictly **Closes #3 **

Prerequisites

[ Yes ] Have you followed all the CONTRIBUTING GUIDELINES?

@krishnaacharyaa can you review the pr sir

@krishnaacharyaa

@krishnaacharyaa

Thoda late karpaaungaa reviews, sorry yaar, kaam bohot hei, don't mind
I'll not be able to respond your messages in github/discord

@Sukomal07

@krishnaacharyaa i have done if you time please review the pr sir. I have keep the type as module in the package.json file.


--browser doesn’t work for browsers

Motivation
The JavaScript generated when using --browser is actually not usable in a browser directly, but has to be processed by a bundler. They problem lies in this import in the JavaScript:
import * as wasm from './mymodule';

Firstly, the imported file is missing the .wasm file extension, which is required for import statements in the browser. Secondly, importing Wasm modules via ES6 import statements is not support (but there is a proposal). Out of the box, only Webpack supports this kind of import. This has lead to the impression that wasm-bindgen & wasm-pack require Webpack.
If I don’t use Webpack I either have to teach my bundler about this kind of non-standard import or switch to --no-modules, which generates code that works on a global variable. Globals are notoriously messy to reconcile with bundlers.
If I want to work without a bundler, --no-modules is a decent choice, but if I have multiple, independent Wasm modules generated with wasm_bindgen, these variables are going to clash.
I propose that the introduction of a new target --esm.
(I am assuming that the browser target cannot be renamed at this point. If it can, I’d rename --browser to --webpack in addition to introducing --esm.)
Proposed Solution
There is a middle ground in the approaches between the browser and the no-modules target. The --esm code could expose an async factory function that instantiates the Wasm module with the vanilla Wasm APIs and then returns an object with the wrapped functions. The code could look something like this (I’m obviously skipping and missing some details here, but happy to work on that with y’all if desired):
// mymodule.mjs
/*
 * ...
 * Unexported utility functions like
 * `passArray8ToWasm`, `getArrayU8FromWasm` etc etc
 * ...
 */

export function async instantiate(pathOrBuffer) {
  let instance;
  const imports = /* create imports object */

  // Feature detection of loading mechanism
  if(typeof pathOrBuffer === 'string' && WebAssembly.instantiateStreaming) {
	({instance} = await WebAssembly.instantiateStreaming(fetch(pathOrBuffer), imports));
  } else {
    if(typeof pathOrBuffer === 'string') {
      pathOrBuffer = await fetch(pathOrBuffer).then(r => r.arrayBuffer());
    }
    ({instance} = await WebAssembly.instantiate(pathOrBuffer, imports));
  }

  return {
    /*
     * ...
     * wrapped module functions
     * ...
     */
    // This is just an idea how the raw instance could be exposed
    // without the risk of name clashes.
    [rawInstance]: instance,
  }
}

const rawInstance = new Symbol();
export rawInstance;

The upside of this code is that it works in browsers and Node out of the box. Also note the .mjs file extension which is necessary for module code in Node.
cc @flaki @ashleygwilliams

What version (of wasm-bindgen) do you use? If you use v0.2.38, please note that the git master version has a merge that breaks the --browser flag. Hence, you may want to try the master instead of v0.2.38.

Thanks for the report @surma!
I think the root problem here is that the --browser flag is sort of terribly named. It, in reality, is a tiny flag which simply says "when generating bundler-compatible output optimize away a few checks for node.js". To add on top of this the --no-modules flag is a pretty bad name as well, which I think is roughly what you want in terms of "natively runnable in a browser".
It's definitely well-known that browser don't support native ES imports of wasm modules. It's something we want to coerce all output towards though! Like with the original ES modules proposal bundlers provide the shim necessary to translate future-looking code to actual code that runs in a browser, so bundlers are the only parts of the stack that implement "import this wasm file as an es module directly" today. This is also why it's the default output mode as well because eventually it'll work in web browsers!
I think that the desired output mode here is actually directly addressed by the proposed --browser in RFC 6 (which is likely to get renamed to --web here).
To address some of your other points though:

Firstly, the imported file is missing the .wasm file extension, which is required for import statements in the browser.

Indeed! This has had attempts to be fixed - https://github.com/rustwasm/wasm-bindgen/pull/1059 - but it's tricker than expected. There's a number of idioms in use which rely on bundlers performing resolution to figure out if js or wasm is there and loading the right one. There's also proposals for "import maps" in browsers, so this may one day indeed work.

This has lead to the impression that wasm-bindgen & wasm-pack require Webpack.

Agreed, and this is unfortunate! We are doing our best to provide ample documentation and support saying that this is not the case, for example with the recently rewritten page on deployment. We're also hoping that --web and being prominently documented will help here.
One thing we've also noticed is that our introductory documentation shouldn't use npm which is where the impression is often coming from as well. In short, we're working really hard on this!

I propose that the introduction of a new target --esm.

Naming is really hard :(. The current default output is an ES module (and pretends wasm is as well), which means the name --esm isn't quite appropriate in my mind. I'm hoping that --web can help bridge the gap, but even that is still pretty ambiguous.

@surma want to give https://github.com/rustwasm/wasm-bindgen/pull/1328 a spin and see if --web satisfies the use case you're thinking of?

Yup, I’m decently happy with --web :D Thanks for the detailed insight.

it cost me several hours to find out browser is not a target for web browser :(
wasm-pack build --target web --no-typescript


Width and Height are throwing before IsInitialized is true.

When setting the Dim Width and Height before set AutoSize to false throws System.InvalidOperationException: 'Must set AutoSize to false before setting Width.'
Running this unit test will fail.
    [Fact]
    public void Setting_Width_Height_Before_Set_AutoSize_To_False_Do_Not_Throws ()
    {
        var exception = Record.Exception (() => new Label { Width = 10, AutoSize = false });
        Assert.Null(exception);

        exception = Record.Exception (() => new Label { Height = 10, AutoSize = false });
        Assert.Null(exception);
    }

This is the correct behavior.
Do not set Width or Height of autosize is true. It makes no sense to do so.

This is the correct behavior.
Do not set Width or Height of autosize is true. It makes no sense to do so.

Please, can you understand this. On the constructor we are setting the properties, no matter what order is used. So, we are collecting data for further process. After initialized, if AutoSize is true and trying to set the Width or Height is normal throwing the error, but not at object initializer.
Here other example where this is wrong is on the Editor scenario. See the video and try it and you'll see it throwing the exception now when before doesn't.
https://github.com/gui-cs/Terminal.Gui/assets/13117724/3e14d5d8-f4d0-4aa6-ab8f-7151decfb22f

Setting properties in an initializer is not a constructor.
All it does is set the properties specified in the order provided.
To fix your code simply set AutoSize = false in the initializer before you set Width or Height.

Setting properties in an initializer is not a constructor.

I know that, but it's on an object initializer. Did you forget that now mostly of the views are parameter less constructors.

All it does is set the properties specified in the order provided.

That is the correct way if the properties are passed on the constructor parameter, but not now.

To fix your code simply set AutoSize = false in the initializer before you set Width or Height.

Where is that documented?  You was right when you said since a long time ago that the properties checking should be done after a view is initialized, but now you are being incoherent with yourself. See the changed unit test https://github.com/gui-cs/Terminal.Gui/pull/3325/commits/f2998e0ede24c31effa976a1066ef31d2f57a6e3. Maybe now you understand this better now.

These three blocks of code do exactly the same thing:
Label label  = new ()
{
   Width = 1,
   AutoSize = false
};

Label label = new ();
label.Width = 1;
label.AutoSize = false;

View view = new ();
view.AutoSize = true;
view.Width = 1;
view.AutoSize = false;

All three of these examples are INCORRECT and will cause the exception to be thrown telling the programmer they've made a mistake.
In these 2 PRs, the behavior of AutoSize was updated to be more deterministic. Specifically, I made it clear that if AutoSize = true, it makes no sense to set Height or Width. Setting Height or Width when AutoSize = true will cause erroneous behavior:

#3202
#3130

When I coded this, I explicitly added the exception on the setters to help find any code that was setting Height or Width if AutoSize was true. I hoped that I had found all instances, but, obviously I did not, because you found one in Editor.... and you found it because the code I wrote is doing its job correctly.
I failed to update the API docs to reflect this.
The API docs for AutoSize should say

Because Width or Height is nonsensical if AutoSize is set to true, setting either Width or Height will throw an exception.

But why you don't understand that the user want to set AutoSize to false on initialization, but only because he set the Width and Height first, he get the exception even when the view wasn't initialized. I give up with you.

But why you don't understand that the user want to set AutoSize to false on initialization, but only because he set the Width and Height first, he get the exception even when the view wasn't initialized. I give up with you.

But why don't you understand that in a C# intializer, the order in which you set properties matters. If the user wants to set AutoSize to false, so he can then set Width or Height he should do this:
Label label  = new ()
{
   AutoSize = false
   Width = 1,
};

Because in my opinion that isn't mandatory. As you can see in my test if the user set badly after initialization the AutoSize to true and then set the Width or Height he'll get the exception anyway, do you understand?

I understand perfectly. This has NOTHING to do with View.IsInitialized IMO.
The rule of "Don't set Height or Width if AutoSize is true" applies ALWAYS.
I mean, it COULD be softened to only apply if IsInitialized = true, but that just adds complexity to the code (that is all going away once Dim.Auto is complete).

Ah ok that is an explanation that I understand because will be big changes.

These three blocks of code do exactly the same thing:
Label label  = new ()
{
   Width = 1,
   AutoSize = false
};

Label label = new ();
label.Width = 1;
label.AutoSize = false;

View view = new ();
view.AutoSize = true;
view.Width = 1;
view.AutoSize = false;

There's a really important distinction between an initializer and explicit sequential assignments that makes this statement not true.
An initializer is special in that the object reference is not pushed onto the evaluation stack if the initializer does not complete successfully. You can sorta consider it as an appendix to whichever constructor was used.
If an exception happens in the first example, you never have a Label object, the newobj never returned a reference, and the heap allocation that was performed is already GC-eligible.
In the second and third examples, the Label and View objects do exist and their references are currently on the stack, and their heap allocations have valid live handles in the current scope.
Concepts such as init accessors and the required keyword would not have any meaning if initializers were the same as explicit assignments.

And thinking about it anyway...
Throwing an exception in the setters for that is bad form. One reason is precisely the fact that the order of setting the properties matters in a program-breaking way.
Property setters are supposed to avoid exceptions unless critically necessary and are supposed to try to keep things in a consistent state if they encounter exceptional situations within themselves.
Proper behavior would be for the setter to check AutoSize first and immediately return without making any state changes if the operation would be illegal.

I know throwing exceptions from setters is bad form. I also know initializers are special in how you point out.
That's all irrelevant to this topic.
I put the exception in to find code that was using AutoSize wrong. It is doing its job.
AutoSize is going away Once Dim.Auto is done.

Closing as by design.


Facet update. Wrong payload

Related to https://github.com/Yomguithereal/baobab/issues/293
someCursor.on("update", function (x) {
  console.log(x.data); // +
});

someFacet.on("update", function (x) {
  console.log(x.data); // -
});

Pending #293 decisions.

I guess this is v1?

Yes. Feel free to close if it's fixed in V2.

Since facets and cursors share the same API in v2 this should be fixed indeed. But let me check a final time just to be sure.

Payload is present but contains wrong previousData for facets.
Proof sandbox
Facet:
$firstItem: [
  ["items", 0],
  function (item) {
    return item;
  }
]

Source code:
https://gist.github.com/ivan-kleshnin/ed6d10ba945b3bf4ca01
Screenshot:

What data.previousData contains depends on the facet declaration syntax. Here it's provided with an Array (LISP) style. With Object style it was different but wrong nevertheless.
If you change facet declaration to
Facet:
$firstItem: [
  ["items"],
  function (items) {
    return items[0];
  }
]

data.previousData is still the same.

Ok, I see where it went wrong. I need to fix this.

I will probably need to make the currentData and previousData keys js getters so that the remain lazy. Else they would be computed at each update of the tree and this is not strictly necessary and it would render facets laziness inoperant.

Sounds reasonable.

This should be fixed as per 2.0.0-dev12.

Fixed.


Problem using service_streamer on gunicorn setup

Hey, Thank you for an wonderful code. I'm trying to use service_streamer on my application. My application has deployed into gunicorn server. When using service_streamer into my application, it couldn't able to batch the requests. But it works when using streamer into outside gunicorn setup.
My streamer code is,
 streamer = Streamer(self.corrector.predict, batch_size=64)
The log is shown in the below.,
INFO:service_streamer.service_streamer:[gpu worker 30430] run_once batch_size: 1 start_at:<PHONE_NUMBER>.1705348 spend: 0.18162846565246582
Actually the batch size is 64, but it running with batch size 1.
If you come across this problem, it will be really helpful your suggestions!
Thanks in Advance :)

take a look at this example: https://github.com/ShannonAI/service-streamer/blob/master/example/redis_streamer_gunicorn.py


New compression formats

Since Nix 2.4, there are more compression formats.
https://github.com/NixOS/nix/blob/master/src/libstore/binary-cache-store.cc#L167
    narInfo->url = "nar/" + narInfo->fileHash->to_string(Base32, false) + ".nar"
        + (compression == "xz"    ? ".xz"   :
           compression == "bzip2" ? ".bz2"  :
           compression == "zstd"  ? ".zst"  :
           compression == "lzip"  ? ".lzip" :
           compression == "lz4"   ? ".lz4"  :
           compression == "br"    ? ".br"   :
           "");

Also I'm not sure if "bzip2" expects a "bzip2" or "bz2" in url path :thinking:
https://github.com/fzakaria/nix-http-binary-cache-api-spec/blob/main/api.yaml#L142
  /nar/{fileHash}.nar.{compression}:
    get:
      parameters:
      - name: compression
        example: bzip2 # or bz2?
        schema:
          type: string
          enum: [xz, bzip2]

PR welcome please.


init in StoreMethods

Reflux.StoreMethods.init = function () {
    console.log('global');
};
Reflux.createStore({
    init: function () {
        console.log('local');
    }
});

it logs only local to console. But I expected both, global and local
The problem is here: https://github.com/spoike/refluxjs/blob/master/src/createStore.js#L55
It overrides methods from Reflux.StoreMethods with methods from definition
Reflux.StoreMethods is like defaults for definition. But It's unobvious.
For comparison, in mixins both init will call. As it works in React for livecycle methods (e.g. componentWillMount, getInitialState).
So, maybe it'll be better if Reflux.StoreMethods will works as global mixin rather than defenition defaults
For example it can be helpful for hydrate stores in it's init method.
Just for example, something like:
Reflux.StoreMethods.init = function () {
    this.data = window.app.payloads[this.name];
};

Or using for hook into preEmit or shouldEmit for some reason.
One another issue here, is only one possible global method. What if we have two separated modules, that use init method in all stores.
Reflux.StoreMethods.init = function () {
    this.data = window.app.payload[this.name];
};
Reflux.StoreMethods.init = function () {
    console.log('was initiated: ', this.name);
};

Second assignment will override first.
Instead it'll be better to use method for adding new functionality:
Reflux.StoreMethods.add({ init: function () {} });

That looks like mixin for all stores:
var LogMixin = {
    init: function () {
        console.log('was initiated: ', this.name);
    }
};
Reflux.StoreMethods.add(LogMixin);

As we already have mixins, probably this feature will not greatly increase code size.

Yeah. I agree that StoreMethods doesn't need to be a "defaults" object. It should mix itself in, and merge function calls. Unless anyone objects I can't see why we shouldn't have this changed.

Am in agreement!

Would be great!

With the ES6 patterns this is not very relevant any more. Closing unless someone thinks there's a good reason to pursue it.


Total costs $ for the 56-Page PDF Document vs 1 query

Hello,
Could you give us an idea of the total costs for the 56-Page documents given 1 query:

creating the embedding (a one time step)
storing the embeddings in Pinecone
matching a query of 250 tokens vs. the embedding: costs of ADA, and costs of the query to Pinecone
the first query to gpt4: chat history + the query
the second query to gpt4: standalone question + relevant documents

It seems like a lot of queries, it would be very helpful to have an idea about these costs.
Btw, thank you for this tutorial !

This is a fantastic idea!
Maybe adding a small counter of dollars spent in the front-end can save you from a heart attack when the credit card bill rolls in

Also curious about this! Not sure how much money I'd burn through if I used this.

Embeddings cost $0.0004 / 1K tokens so they are very cost-effective. (1 token is approx 3/4 words)
Using openai's (tokenizer)[https://platform.openai.com/tokenizer?view=bpe], you can see how tokens are calculated.
For example, if you're embedding 50-page PDF that's approx 25,000 words. Which is approx. 33,000 tokens ~ $ 0.001
For context, it costs approx 0.48 USD per 1.2 million tokens embeddings.
With respect to pinecone pricing, the free tier is very generous, but for paid/production level pricing is here
As for the gpt-4 calls, I will continue to review the intermediate steps and get back on that shortly.

About Pinecone pricing, it would be possible to switch to pgvector for a self-hosting.

About Pinecone pricing, it would be possible to switch to pgvector for a self-hosting.
I think there are a good number of alternatives referenced by OpenAI in the chatgot retrieval plugin repository.
I wonder if it's possible to plug weaviate in here.


Bump mkdirp to fix --use-strict error. Fixes #172.

I ran the tests before and after, both had 1 out of 271 fail.

Thanks for the fix, merged. Strange that you get 1 test fail, which one is it ?

~/code/nedb master
❯ mocha --reporter spec --timeout 10000 --grep 'modifier is used with a non-object argument'
(node) child_process: options.customFds option is deprecated. Use options.stdio instead.

  Model
    Modifying documents
      1) Throw an error if a modifier is used with a non-object argument

  ✖ 1 of 1 test failed:

  1) Model Modifying documents Throw an error if a modifier is used with a non-object argument:
     AssertionError: expected [Function] to throw an error

Which version of node or io.js are you using?

node v4.0.0

Good catch, I was still on v0.10.2 and v4 brings ES6 which changed rules for Object.keys. I updated nedb to work ith ES6. Note that it worked perfectly before for code that followed the documentation, only a few edge cases wree not supported.

thanks for looking into it and communicating what the changes were and why! I really appreciate the project...


ISPN-4250 Re-add the DONT_LOOPBACK flag

The performance problem was fixed in JGroups with JGRP-1835
https://issues.jboss.org/browse/ISPN-4250

Integrated, thanks @danberindei


Displaying time?

I have a lot of components that update every seconds based on Date.now() . However, performing these updates through the redux stores makes dev-tools and logging extremely slow, spammed and unusable.
Does anyone have any suggestions on how one can handle this in the best way?
One way I was thinking about was that the components themselves have a time subscription that calls setState with the current time, i.e. time updates are local to the component. The time has (mostly) no logical meaning only visual.

How are you using time in your reducers? Since time is an external state, and introduces non-pure effects into store, it should probably be kept external. If you're using React, I would handle it internal to your components.
Say, for example, you have a list of comments on a blog and you want to have the timestamp next to each comment update in real time ("1 minute ago" changes to "2 minutes ago", etc.). I wouldn't track that in my redux store, as that's a display concern. I would either have each comment component set up a setInterval and re-render as needed. Or I would set that up at the top level comment list container and pass down the current time as a prop to each comment component and have them re-render as needed.

Sounds reasonable. Thank you for the feedback.


  Maybe it's possible to set a minimum width on table cells? If so, would I need to apply that to every cell under that column, or could I maybe make a header row with that minimum width?

https://developer.mozilla.org/en/docs/Web/HTML/Element/colgroup
I could write a post about this. :squirrel:
(That's not confirming anything!!!!)


Update docs on gym's :export_options action parameter

The :export_options cannot be a path to a plist anymore when running gym as a Fastlane action.
It was OK before when this config item was consumed only to prepare a file for xcodebuild
where it would be read from disk in case it was not a hash. However now it is used in
DetectValues.set_additional_default_values which does not expect it to be a non-hash.

Checklist

[ ] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[ ] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[ ] I've updated the documentation if necessary.

Motivation and Context

Description

Signed as<EMAIL_ADDRESS>

@joshdholtz Updated.

Thanks!


Removed the framework Crate

I'm not sure this is needed ATM, so I'm going to scrap it.
Changes Made
All notable changes introduced by this PR should be documented here.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

Removed the wolf_engine_framework crate.
Removed the framework feature.

Merge Checklist
This is the standard checklist of tasks that MUST be completed before a PR
can be accepted.

[x] New behaviors are covered by tests, and / or examples.
[x] The documentation has been updated (if applicable.)
[x] The version number has been bumped (if applicable.)
[x] The feature branch is up to date with main.

I actually do want to keep the framework around.  Even if I'm going to change how it's used.


Create contract fixes#2176

https://github.com/edenlabllc/ehealth.api/issues/2212

Coverage remained the same at 91.093% when pulling 7da9357d52a76399aabeb774018232d33170609e on create_contract_fixes#2176 into 488942a59bb962e325af676a1c97779006b5c520 on master.


fix(docs): Allow the scrolling of the Sidebar

Removed the CSS styling that prevents the scrolling of the Sidebar component.
When long content is displayed in the Sidebar component, for example https://webpack.js.org/guides/tree-shaking/ with some of the tree options opened, the end of the Sidebar menu is inaccessible as it doesn't scroll with the page.

You have to scroll inside the sidebar :)
If we remove those css rules, we would have something like this:

I'm afraid it's a bad idea.

You have to scroll inside the sidebar :)
If we remove those css rules, we would have something like this:

I'm afraid it's a bad idea.

But leaving it as is there's no way to see or access the bottom of the menu, which is a worst idea! What's the point of having a menu that length if you can't access the options? I guess search engines will see them, but currently it's a case of styling over usability.

But leaving it as is there's no way to see or access the bottom of the menu, which is a worst idea! What's the point of having a menu that length if you can't access the options? I guess search engines will see them, but currently it's a case of styling over usability.

But leaving it as is there's no way to see or access the bottom of the menu, which is a worst idea! What's the point of having a menu that length if you can't access the options? I guess search engines will see them, but currently it's a case of styling over usability.

Just like I said, you have to move your mouse into the sidebar area to scroll.

But leaving it as is there's no way to see or access the bottom of the menu, which is a worst idea! What's the point of having a menu that length if you can't access the options? I guess search engines will see them, but currently it's a case of styling over usability.

Just like I said, you have to move your mouse into the sidebar area to scroll.

 I don't get any scrollbars or any other means to move the panel!

Here's a video you can check:

How are you scrolling that? I don't get any scrollbars or any other means to move the panel!

Here's a video you can check:

How are you scrolling that? I don't get any scrollbars or any other means to move the panel!

Can you share which browser and its version are you running?

Here's a video you can check:

How are you scrolling that? I don't get any scrollbars or any other means to move the panel!

Can you share which browser and its version are you running?

I'm using Firefox V84.0.2 (64-bit), but the same issue occurs on Chrome Version 87.0.4280.88 (Official Build) (64-bit).

I'm using Firefox V84.0.2 (64-bit), but the same issue occurs on Chrome Version 87.0.4280.88 (Official Build) (64-bit).

I've tested the site against the latest Firefox and the latest Chrome on macOS, sorry but I can't reproduce it.
https://user-images.githubusercontent.com/1091472/104015064-1538a700-51ef-11eb-9317-a7d023dc036e.mp4
https://user-images.githubusercontent.com/1091472/104015072-179b0100-51ef-11eb-8d0b-6622fdfa7cab.mp4

I've tested the site against the latest Firefox and the latest Chrome on macOS, sorry but I can't reproduce it.
https://user-images.githubusercontent.com/1091472/104015064-1538a700-51ef-11eb-9317-a7d023dc036e.mp4
https://user-images.githubusercontent.com/1091472/104015072-179b0100-51ef-11eb-8d0b-6622fdfa7cab.mp4

How are you scrolling the view, are you using a scroll wheel on your mouse? Looking at your movies it would appear so. If the user doesn't have a mouse with a scroll wheel, how do they scroll the panel?

How are you scrolling the view, are you using a scroll wheel on your mouse? Looking at your movies it would appear so. If the user doesn't have a mouse with a scroll wheel, how do they scroll the panel?

Yes, I was using a scroll wheel on my mouse. Let's say you have only keyboard, it's possible to use the TAB key to get into the sidebar area and using UP/DOWN keys to scroll, it takes time, but it should work.
If you take a look at sites like next/vue/etc. with sidebar, they all share this same problem.

Yes, I was using a scroll wheel on my mouse. Let's say you have only keyboard, it's possible to use the TAB key to get into the sidebar area and using UP/DOWN keys to scroll, it takes time, but it should work.
If you take a look at sites like next/vue/etc. with sidebar, they all share this same problem.

If you take a look at sites like next/vue/etc. with sidebar, they all share this same problem.

It's good that you agree that it's a problem.  Visitors to a site shouldn't be penalized if they don't have a scroll wheel mouse.
The problem is larger than just the problems scrolling the menu. As the menu starts to scroll with the window then stops it appears that you have reached the end of the menu when you haven't. In my case, at https://webpack.js.org/guides/installation/, the menu scrolls with the page until the Public Path item and then stops. As there is no prompt to suggest that there are any more other menu options and the menu has moved to a point then stopped, it appears that you have reached the end of the menu, but there are unseen menu options. Close the selected menu and additional menu items appear.
I guess an alternative would be for the menu panel to have it's own scrollbar.

If you take a look at sites like next/vue/etc. with sidebar, they all share this same problem.

It's good that you agree that it's a problem.  Visitors to a site shouldn't be penalized if they don't have a scroll wheel mouse.
The problem is larger than just the problems scrolling the menu. As the menu starts to scroll with the window then stops it appears that you have reached the end of the menu when you haven't. In my case, at https://webpack.js.org/guides/installation/, the menu scrolls with the page until the Public Path item and then stops. As there is no prompt to suggest that there are any more other menu options and the menu has moved to a point then stopped, it appears that you have reached the end of the menu, but there are unseen menu options. Close the selected menu and additional menu items appear.
I guess an alternative would be for the menu panel to have it's own scrollbar.

I agree, a scrollbar would be nice. Do you want to update your pull request so we can see how it works with a sidebar scrollbar?

I agree, a scrollbar would be nice. Do you want to update your pull request so we can see how it works with a sidebar scrollbar?

Maybe the solution isn't to fix the scrolling. Perhaps a sub menu squeezed in to the right of the sidebar can handle the smaller items. Or you remove them entirely and add a fully functioning sub menu to each of the main pages. This does require users to drill down more, but experience has shown that this is often an acceptable compromise.
I also worry about the accessibility of all of this. If a user without a scroll wheel cannot access it all, then that could be an accessibility issue.


Add the ability to give flexible children loose constraints

There are some use cases where we want to add some content to the side of
another widget and have that widget able to expand to fill the remaining space.
Related to #3633

@Hixie

I'm going to try another approach before landing this patch.

I'm a little confused... if children are currently required to be flush inside the container, then what does mainAxisAlignment do?

Yeah, I think this patch makes the system too confusing.
Without this patch, the answer to your question is straightforward.  If there are no flexible children, the inflexible children might not fill the available horizontal space, which is why there's an option for what to do with the remaining free space.


Add back unprefixed global config directory

This still allows loading the installed default config, but also add back the path /etc/xdg/waybar unconditionally for the people who were using it as their configuration directory and have a "prefixed" waybar installation. Should fix https://github.com/Alexays/Waybar/issues/714 and https://github.com/NixOS/nixpkgs/issues/99057
Also added the sysconfdir-prefixed path in the man page to prevent some confusion. The meson code is kinda messy, sorry about that. If there's a better way to do this, please do tell.

Thanks!


prevent dollars to be passed to another function

there was a bug which caused invalid prop forwarding
this pr adds the following test and ensures that it passes:
it("should filter out properties starting with $ when passing to custom", () => {
  let forwardedProps = null;
  const Component = ({ className, style, ...props}) => {
    forwardedProps = props;
    return null;
  };
  const StyledComponent = styled(Component)``;
  const { container } = render(<StyledComponent $forwardedProp="notForwarded" />);

  expect(forwardedProps).toEqual({});
});

Generally the change looks good and I don't know where the -24% execution time comes in, but I like it 😄
I think the approach of not forwarding the props if it's not a yak-component is generally good, but we have to think about the case with the theme.
What do you think?

Maybe I found a fix - lets see if the pipeline is happy

The performance gain is that it now finally detects nested yak components and calls them directly without telling react 🤣


XSLTTransformation: free XML resources

XML resources must be freed, not doing so lead to #616
Closes #616

thanks @antoineco


The code of link prediction on graphs

Hi, thanks for your code. I think your research is significance. I am interseted in the performance of this work in link prediction on graphs. I will appreciate it if you can provide the code of this work.

Hi @liunianxuxie, I do not have the code for that particular experiment anymore but it was obtained chaining a few lines from Thomas Kipf's implementation:

https://github.com/tkipf/gcn for tensorflow
https://github.com/tkipf/pygcn for pytorch

Basically you only need to substitute the Gaussian with our von Mises-Fisher (and allow the dot-product to be larger than [-1, 1] multiplying it by a learnable parameter) and you should be done.
I hope it helps.

Sorry, I don’t know what it means (and allow the dot-product to be larger than [-1, 1] multiplying it by a learnable parameter).

Here you put our vMF
https://github.com/tkipf/gae/blob/0ebbe9b9a8f496eb12deb9aa6a62e7016b5a5ac3/gae/model.py#L112
https://github.com/tkipf/gae/blob/0ebbe9b9a8f496eb12deb9aa6a62e7016b5a5ac3/gae/optimizer.py#L33
and since the reconstruction is done with dot-product, and our vectors lie in an hypersphere, they are in [-1,1] so here
https://github.com/tkipf/gae/blob/0ebbe9b9a8f496eb12deb9aa6a62e7016b5a5ac3/gae/model.py#L114
you can allow them to be [-k,k] with a learnable parameter k.

I'm really sorry to disturb you again. Can you tell me specifically how to modify it? I just learned deep learning shortly, so I still don’t know how to modify it. Thank you so much.👍


Activate objects without popup

New user setting to activate objects without showing confirmation popup
Improved error messages in case of activation failure or user canceling popup
See https://github.com/larshp/abapGit/issues/3544 for details and screenshots

thanks 👍


Shared modal between components for sign in sign up

The sign in and sign up pages share modals that should be implemented as one component that gets shared between all of them for consistency.

PR approved and merged


Why is there no javascript file?

It feels odd to do this:
link(rel="import" href="lib/polymer.html")

Is there a way to include a script instead, I would like to use Borwserify and require Polymer.
Or could someone enlighten me about how to use Polymer properly?

Checkout how web components work.

@Silom Polymer seems to be encouraging using the new HTML5 Imports to include Polymer.  They are also using Bower as the package manager.
Importing the polymer.html includes the 3 scripts to get polymer running (polymer.js, polymer-mini.js, polymer-micro.js).
So at the moment, no easy way to use Browserify to require Polymer into your project.

@birkir not very helpful, since I was asking about implementation and not feature set.
@clintonjrobinson thanks for clearing things up for me. I think its odd to provide a javascript API interface with only giving you the global scope of Polymer, as a developer I rather like to choose how I implement a library. I need a alternative for that, the way it is right now I can not add it to my architecture without losing consistency.

@Silom Not saying I agree or not, but as I understand Polymer is aiming to be more than just a UI library.  It's  a set of polyfills that fill in any gaps in HTML5 standard that the executing browser may not have implemented yet.  So from Polymers perspective it should be global scope, because your browser should have all this stuff in the global scope anyways.

Web components built with Polymer require HTML imports, because a Polymer element definition has both a script and an HTML component, and unlike legacy JS loaders, HTML Imports allows marshaling both script and markup together using a browser primitive that allows multi-threaded parsing of HTML.
We would love to allow the Polymer API itself to be imported into your JS scope via a module system, however we are avoiding to "choose" a blessed module system that puts a module dependency or transpiler requirement on the user, and instead have chosen to use one global (Polymer) until such time that ES6 modules are a shipping feature in browsers without requiring transpilation.

@kevinpschaaf thanks for the reply, makes sense now. Maybe I can jump into Polymer better when I use this vulcanized tool. I will give it another shot.


chore(bigtable): update quickstart to use preferred method

Trying again....
Fixes #7231

This change is

ugh my branches are all kinds of messed up


Intersection Priority in Object Properties

We should add the intersection priority to object properties.  Maybe in the ray tracing section?
https://renderman.pixar.com/forum/showthread.php?s=&postid=194287#post194287

It's already in there......

One thing I would change is not having to activate the raytrace override to use it though.....

Oh, well then I would be completely embarrassed if I posted this on github.


Random UI elements of the editor do not work with touch events

Tested versions
Godot 4.3 Stable
System information
Windows 10 x64, Laptop with touchscreen (Win Max 2)
Issue description

For example, in Project Launcher we can click on Create button to get this window, but its buttons (Browse, Create and edit, and Cancel) and text field are ignoring touch events completely. Similar things occur in the editor itself (touch clicks are often ignored, multitouch isn't supported at all, etc.)
Steps to reproduce

Try to make a new project with touchscreen on Windows
Get confused

Minimal reproduction project (MRP)
Not required

Probably related: https://github.com/godotengine/godot/issues/91099
Actually with the device mentioned there and quite recent master ( https://github.com/godotengine/godot/commit/61accf060515416da07d913580419fd8c8490f7b ) even the Create-button mostly doesn't work (it worked like once, but never again. I have no idea what I did differently, just couldn't get it working again...). But it's possible to select and open a pre-existing project from the list.
Even stranger: While twiddling with the Project Manager I just noticed that double-tapping anywhere on the area that doesn't respond to touches causes the window to turn completely unresponsive. Even the close&minimize/maximize-buttons freeze. Also dragging the window around is impossible. Switching to another window and back to the Project Manager again ("re-focusing") fixes this.
Probably not relevant regarding this issue, but Godot gives these warnings/errors when starting:

Godot Engine v4.4.dev.custom_build.61accf060 (2024-10-25 18:04:14 UTC) - https://godotengine.org
WARNING: Your video card drivers are known to have low quality OpenGL 3.3 support, switching to ANGLE.
at: DisplayServerWindows::DisplayServerWindows (platform\windows\display_server_windows.cpp:6322)
ERROR: Can't load EGL dynamic library.
at: (drivers\egl\egl_manager.cpp:447)
WARNING: Your video card drivers seem not to support GLES3 / ANGLE or ANGLE dynamic libraries (libEGL.dll and libGLESv2.dll) are missing, switching to native OpenGL.
at: DisplayServerWindows::DisplayServerWindows (platform\windows\display_server_windows.cpp:6342)
OpenGL API 3.3.0 - Build <IP_ADDRESS>58 - Compatibility - Using Device: Intel - Intel(R) HD Graphics 5500


Disable quartz

Hello,
Is it possible to disable quartz? I just want to execute jobs by api request

Hi,
thanks for your suggestion. I am currently working on this and should have a new release soon.
Christian

This has now been done and a new release 1.4.0 has been cut. Details on the split between core API and Quarty-enabled API are in the updated README.md.

Thanks! works like a charm

Hello,
glad it worked. If you need anything else done, please let me know.
Merge requests always welcome, of course. :-)
Thanks
Christian
On Mon, 9 Mar 2020 at 06:49, jmformenti<EMAIL_ADDRESS>wrote:

Thanks! works like a charm
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/chrisgleissner/spring-batch-rest/issues/7?email_source=notifications&email_token=AA6JA62QWH7RZ5ZBTE4ZQ6DRGR7P5A5CNFSM4LDSIFJKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOFXQ3A#issuecomment-596342892,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6JA6ZI6B3NMQEKUAN33KDRGR7P5ANCNFSM4LDSIFJA
.


Logo

You should add your logo to this, I think it would make the page a lot more interesting.

yeah I'm still working on this

Added logo

Nice!


[FR]: I want to be able to support the display in reading mode

I want to be able to support the display in reading mode

This is my css, but this only works in edit mode
But I don't know how to make it work in reading mode

Any class should works in reading mode, unless you disable it.
I need more information about the class and regex to understand why it doesn't work.

Any class should works in reading mode, unless you disable it. I need more information about the class and regex to understand why it doesn't work.
https://github.com/Mara-Li/obsidian-regex-mark/issues/8


Tutorial codes are not accessible

Original issue: https://charm.cs.illinois.edu/redmine/issues/989

Per https://lists.cs.illinois.edu/lists/arc/charm/2016-02/msg00013.html
The requested URL /tutorial/examples/ParallelPrefix.tar.gz was not found on this server.
The requested URL /tutorial/examples/ParallelPrefix_NoBarrier.tar.gz was not found on this server.
Please contact dongli`lasg.iap.ac.cn when this has been addressed.

Original date: 2016-03-15 14:01:55

The links on the charmplusplus tutorial page are correct here: http://charmplusplus.org/tutorial/ParallelPrefix.html
But the email is referencing the tutorial here, where they are broken: https://charm.cs.illinois.edu/tutorial/ParallelPrefix.htm
So you just need to update the links on the illinois page.

Original date: 2016-05-02 19:25:53

It looks like this has been fixed

Original author: Shanna DeSouza
Original date: 2016-06-14 16:46:39

The charmplusplus.org version of the tutorial is now updated and the links to the example codes are no longer broken (the folder with examples is now in the repository). The link from charm.cs.illinois.edu/help now takes you to the charmplusplus.org version of the tutorial, which should be the only version online here in the near future.

Original author: Shanna DeSouza
Original date: 2016-06-14 16:50:26

Also, Li Dong had been communicated with back in February and again today.

Original date: 2016-12-22 23:12:45

Confirmed that download links now work.


introduction: outdated links

https://deno.land/manual#feature-highlights provides outdated links

I believe this issue was solved at some point, but I can't seem to find what merge it was. This issue should probably be closed.

Closing as resolved


Bootstrap3 theme without default css file

It would be nice to have a bootstrap3_blank (bootblank3) theme that does not contain and bootstrap.css file, so that I can extend this theme with the default.css or any other themed css, so I could have a light and dark theme based on the bootblank3 theme without duplicating unnecessary style sheets  .

You're actually not the first to suggest it, but we've never gotten around to doing it. Could be looked at for the next extlib release, and accompanied by a tutorial on how to use it. Thanks for the suggestion

This feature, a blank Bootstrap theme, has been added to ExtLib release 17


setup_path_on_import: Remove in favor of overly clever shebang lines

Activating a virtualenv within an existing Python process has proven to be a dubious idea, culminating in CI segfaults in at least one case.  While it might be safe under specific circumstances, it’s safer to purge this pattern from our codebase.  Using a polyglot shell preamble is evil in a different way, but at least it ensures that the virtualenv is activated for the entire duration of the Python process.
Note that there is a potential behavior change for Python scripts not running in a shell where the virtualenv was activated with the activate shell scriptlet: the virtualenv’s python3 binary will no longer be in PATH, so Python scripts launched as subprocesses of those Python scripts won’t automatically inherit the virtualenv.  This would be easy to work around should the need arise, either by further shebang hacking or by launching them with sys.executable, but I don’t think it causes any actual changes at present.
Testing Plan: Brought up a fresh dev environment, ran a docker-zulip production install.

Tim just discovered that we need to do something about html2markdown/html2text.
https://github.com/zulip/zulip/blob/05fdbd52243d0abbd47776f38afda0f96e9d1387/zerver/lib/email_notifications.py#L582-L596

Let's fix #12868, which this will exascerbate, and then I'm happy to merge this; seems like a slightly less evil evil solution.


Make Meltdown and Foreshadow build on PowerPC in Travis CI.

Testing why Travis does not build Meltdown and Foreshadow with PowerPC.

Is this working? Or a WIP? LGTM assuming the second commit was okay.

Is this working? Or a WIP? LGTM assuming the second commit was okay.

This is finished.


Return type of Parse()

I'm relatively new to Go so I'm not sure if I'm missing something here, but going by the documentation (and therefore gopls) Parse returns Message. This means gopls has no idea that any of the parsed fields exist, is this a bug or is this somehow required to provide optional fields?

Do it with type conversion:
p := parser.NewMachine(conventionalcommits.WithBestEffort())
commit := []byte("feat: feature")
i, err := p.Parse(commit)
CheckIfError(err)
res, ok := i.(*conventionalcommits.ConventionalCommit)
if !ok {
fmt.Println("Parse failed")
}
fmt.Println(res.Description)

Thank you @verysonglaa for assisting!
Closing


How to get the testing results for Spring, Summer, Fall, and Winter

Dear authors, I am wondering how to get the results in Table 1 via test.py for different seasons. Thank you so much!

Thanks for your interest in our work!
We evaluate algorithms in different episodes (see test_data.csv). This test dataset consists of four parts: Spring (Mar., Apr.,
May.), Summer (Jun., Jul., Aug.), Fall (Sept., Oct., Nov.), Winter (Dec.,Jan., Feb). The test results of different months in the same season are averaged and reported.

Thanks for your quick reply! The information is really helpful.
Just want to confirm that if I want to get the stats for month#1, then I can just enter the day_id one by one to get the stats?

You can run the code just like this:
python test.py --save-path trial/model_save --alg icstransmaddpg --alias example_0 --scenario case141_3min_final --qweight 0.01 --voltage-barrier-type l2 --test-mode test_data
Then you can get results of each episode.


Output Improvements

Throughout the setup script, you are using stdouts like the following
echo "";
echo "NOTE: Ignoring invalid argument $1.";
echo "";

You can use a method call and pass on your output string to it as an argument, this will

save a lot of lines
adds consistency
Easier maintenance if you want to change output format

I get what you're saying, but I think a method call for this is overkill.
What if I just used printf instead?
So instead of
echo "";
echo "NOTE: Ignoring invalid argument $1.";
echo "";

I would write
printf "\nNOTE: Ignoring invalid argument $1.\n";

Cc: @KartikSoneji

Note that string literals can span multiple lines.
echo "
NOTE: Ignoring invalid argument $1.

";

Also, this depends on how big the script grows.
The overhead of a method call is negligible, readability is more important


Include Maven wrapper to use the same Maven version

Maven wrapper does not depend on the local Maven and it allows to use defined Maven version
The usage:
.\mvnw clean test
┆Issue is synchronized with this Jira Story by Unito

@asomov
Thanks for your pull request!
Here’s what happens next:
A member of the Liquibase team will take a look at your contribution and may suggest:

Changes based on guidelines for PR submission
Additional tests (unit and/or integration)
Provide other feedback, like requesting changes.

The PR will be prioritized according to our internal development and testing capacity.
We’ll let you know when it’s ready to move to the next step or if any changes are needed.

Sizing RiskMed due to no included test.  However seems easy enough to test.

The pull request is 2 years old.

Yes, the PR is 2 years old, and before my time with Liquibase.
My first project I wanted to accomplish is to respond to all the PRs submitted.  I apologize for the wait and understand not wanting to invest anymore in this old issue.
If you choose to contribute code or time again, I believe that you would have a better experience.  I hope under our new direction of community first for Liquibase and the return to our open source roots proves that through future interactions.
Anyways, thanks for the contribution and your time, you deserved a faster response.
-Ronak


[HA] Application jar file is not HA

If application master and Gearpump Master are on a same physical machine, when the machine is down, the application may not recover properly. Although we persistent the application state across the Masters, the AppJar only contains the LocalJarStore by default, which contains the url of the application jar file. So if the Master is down, the jar file is not reachable anymore.

A solution to this one is to redesign our jar storage mechanism. Currently, we store the jar file at Gearpump master. And not replicated to other masters.
We have several choices here:

We at masters provide some replication functionality for jar files across masters. And provide mechanisms for jar cleanup when expired.
We assume there is a reliable filesystem (e.g. HDFS) and there is a dedicated folder for Gearpump. So that, we can create a dedicated sub-folder for each application and put everything (e.g. jar file) related to this application in this folder.

Personally, I prefer solution 2 as it is much simpler. For solution 1, it will be quite complex considering HA (e.g. some master out of service sometime and return to work later...).

Make this a document feature.
User can choose to use HDFS like file system to store the jar files.
If user choose to use local directory, then he need to make sure the local directory is a NFS like directory.
@huafengw, please document this in HA guide about how to create a HA storage with NFS or somthing similar.

HA Document updated on http://www.gearpump.io/site/0.6/userguide/#master-ha-guide


enabled codecov

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@f4cac9d). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             master        #2   +/-   ##
==========================================
  Coverage          ?   100.00%
==========================================
  Files             ?         8
  Lines             ?       603
  Branches          ?         0
==========================================
  Hits              ?       603
  Misses            ?         0
  Partials          ?         0

Continue to review full report at Codecov.

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


[MB-5453] update error handling for send to syncada

Description
Added additional error checking for send to syncada to make sure at least one sender is not nil.
Reviewer Notes
Is there anything you would like reviewers to give additional scrutiny?
Setup
Add any steps or code to run in this section to help others prepare to run your code:
make server_test

or
go test ./pkg/services/payment_request -testify.m TestProcessReviewedPaymentRequest -v

Code Review Verification Steps

[ ] If the change is risky, it has been tested in experimental before merging.
[ ] Code follows the guidelines for Logging
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Screenshots
If this PR makes visible UI changes, an image of the finished UI can help reviewers and casual
observers understand the context of the changes. A before image is optional and
can be included at the submitter's discretion.
Consider using an animated image to show an entire workflow instead of using multiple images. You may want to use GIPHY CAPTURE for this! 📸
Please frame screenshots to show enough useful context but also highlight the affected regions.

Messages

:book:
:link: MB-5453

  Generated by :no_entry_sign: dangerJS against ada6014f5f970987e18f876a7407b5f1a9d776f9


Graph Rewrite Engine

META: is there a better place to put this than a GitHub issue?
Currently, in the add function in UOpGraph there's a simplify.  Should that all be replaced with late rewrite rules? We had the same stuff in lazy.
Looking at the rules, there's a few types:

Node deletion

if uop is UOps.PHI and len(vin) == 2: return vin[1]   # a phi without loops is a noop
if arg is BinaryOps.SUB and vin[1].uop is UOps.CONST and vin[1].arg == 0.0: return vin[0]

Two nodes replace with one new node

# NOTE: can't just return vin[0] because it's the wrong dtype
if uop is UOps.GEP and vin[0].uop is UOps.CONST: return self.add(UOps.CONST, dtype, arg=vin[0].arg, insert_before=insert_before)
if arg is BinaryOps.ADD and vin[1].uop is UOps.ALU and vin[1].arg is UnaryOps.NEG:
  return self.add(UOps.ALU, dtype, (vin[0], vin[1].vin[0]), BinaryOps.SUB, cachable, insert_before)

Multiple nodes replace with multiple other nodes

# (x+c0)*c1 = x*c1 + (c0*c1)
if arg is BinaryOps.MUL and vin[x].uop is UOps.CONST and vin[1-x].uop is UOps.ALU and vin[1-x].arg is BinaryOps.ADD:
  for y in [0,1]:
    if vin[1-x].vin[y].uop is UOps.CONST:
      computed_val = exec_alu(BinaryOps.MUL, dtype, [vin[x].arg, vin[1-x].vin[y].arg])
      const = self.add(UOps.CONST, dtype, arg=computed_val, insert_before=insert_before)
      mul = self.add(UOps.ALU, dtype, (vin[1-x].vin[1-y], vin[x]), BinaryOps.MUL,
                     insert_before=insert_before+1 if insert_before is not None else None)
      return self.add(UOps.ALU, dtype, (mul, const), BinaryOps.ADD, insert_before=insert_before+2 if insert_before is not None else None)

We have other functions too, like remove_childless:
  def remove_childless(self):
    UOPS_W_SIDE_EFFECTS = {UOps.DEFINE_GLOBAL, UOps.STORE}

    while 1:
      has_child: Set[UOp] = set()
      for ru in self.uops:
        for vu in ru.vin:
          has_child.add(vu)
      nu: List[UOp] = [x for x in self.uops if x in has_child or x.uop in UOPS_W_SIDE_EFFECTS]
      if len(nu) == len(self.uops): break
      if DEBUG >= 4: print(f"reduced UOp count from {len(self.uops)} to {len(nu)}")
      self.uops = nu

I see two phases.

Pattern matching, need a way to specify a pattern.
Templated replacement.

I want to find the cleanest way to express these templated replacements first, then deal with speed.
What DSLs exist for this? I'll note, it's not exactly a graph, since the order of the edges can matter.

https://mlir.llvm.org/docs/PatternRewriter/

patterns: List[Tuple[Dict, Callable[[UOp], UOp]]] = [
({"uop": UOps.ALU, "arg": BinaryOps.ADD, "vin": ({"uop": UOps.CONST},
                                                 {"uop": UOps.ALU, "arg": BinaryOps.ADD, "vin": ({"uop": UOps.CONST}, None)})}),
lambda x: UOp(UOps.ALU, x.dtype, (x.vin[1].vin[1], exec_alu(BinaryOps.ADD, x.dtype, (x.vin[0].arg, x.vin[1].vin[0].arg))), arg=BinaryOps.ADD)]

Can we use this DSL?
https://mlir.llvm.org/docs/PDLL/

# (x+c0)+c1 -> x + (c0+c1)
    patterns: List[Tuple[Dict, Callable[[UOp], UOp]]] = [
      ({"uop": UOps.ALU, "arg": BinaryOps.ADD,
        "vin": set({"__name__": "c1", "uop": UOps.CONST},
                   {"uop": UOps.ALU, "arg": BinaryOps.ADD,
                    "vin": set({"__name__": "c2", "uop": UOps.CONST},
                               {"__name__": "x"})})}),
      lambda c1, c2, x: UOp(UOps.ALU, x.dtype,
                            (x, exec_alu(BinaryOps.ADD, x.dtype, (c1.arg, c2.arg))),
                            BinaryOps.ADD)]

i think this is most covered by the uop rewrite #4560


Dots disappeared on Africa

On the preview map there are some missing dots on Africa continent crossing Algeria and Mali.

Is this going to be fixed at some point?


gretel crumbs output

Thanks for this tool, I've been looking for something like this for some time!
I have a question about the gretel.crumbs output file. The crumbs output that I get does not appear to correspond to what is described in the docs. The first few lines of my crumbs output is copied below:
# 130   51337   89      32.00
6       2       -23.45,-26.34   -26.70,-26.70   6699.66
4       1       -24.95  -27.56  3447.83
0       1       -29.53  -29.53  2325.30

For example in the docs it is stated that there are three tab delimited fields after the first comment line, but I have five fields per line.
It may be the case that I'm using gretel somewhat differently from its intended use case. I have a single-species population of eukaryotic microbes for which there is a reference genome, and I want to estimate the total number of haplotypes in order to infer if the population is diploid or possibly polyploid.
using gretel v0.0.94 installed via conda

Hi Brandon,
Sorry about that, I'll update the docs now.
Sam
On Fri, Dec 18, 2020 at 9:25 AM Brandon Seah<EMAIL_ADDRESS>wrote:

Thanks for this tool, I've been looking for something like this for some
time!
I have a question about the gretel.crumbs output file. The crumbs output
that I get does not appear to correspond to what is described in the docs
https://gretel.readthedocs.io/en/latest/protocol.html. The first few
lines of my crumbs output is copied below:
130   51337   89      32.00
6       2       -23.45,-26.34   -26.70,-26.70   6699.66
4       1       -24.95  -27.56  3447.83
0       1       -29.53  -29.53  2325.30
For example in the docs it is stated that there are three tab delimited
fields after the first comment line, but I have five fields per line.
It may be the case that I'm using gretel somewhat differently from its
intended use case. I have a single-species population of eukaryotic
microbes for which there is a reference genome, and I want to estimate the
total number of haplotypes in order to infer if the population is diploid
or possibly polyploid.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/SamStudio8/gretel/issues/35, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIN6OQPUEPUY6QL3C37OMLSVMNWZANCNFSM4VA46TIA
.

Docs updated. 3d1d128afb7daa1b4e44b09ff6add60b9aac617b

thanks a lot!


sub, sup, bold and small helpers undocumented?

I recently came across some weird behaviour where the template {{#url}}{{small}}{{/url}} when passed the data { url: 'https://google.com' } wraps the url in small html tags, initially I thought this is just built-in helpers, but looking at the docs it is not documented as one. Furthermore, when logging the built-in helpers and partials small is not referenced anywhere, I also found the same to be true for sub, sup and bold. Searching the codebase for these terms also yields nothing. I am left very confused. Where is this behaviour coming from? and is it possible to turn it off?
I wrote a little JSFiddle to demonstrate the issue: https://jsfiddle.net/d0ve69xL/

I think, this works because bold is a function on String.prototype.
console.log("test".bold()) => "bold"

Ah yes, looks like that is it.

This seems like an unintended side effect?

@nknapp happy to put in a PR if you can point me in the right direction?

Unintended? Probably. But it also works and I don't know who relies on it working.
We can change it in 5.0, but not in 4.x
In 4.x, we could make a switch and turn the default value in 5.0 this is something I wanted to do for security reasons anyway.
I would make it a runtime option (boolean flag)
It needs to be changed in the nameLookup function of the compiler and in the lookup helper.
The difficulty is that old templates need to work with the current runtime and vice versa.

I tried this in #1594 but decided to create a simpler solution first.

I'd like to know why the behaviour is a problem for you.

I am trying to progressively convert a project from mustache to handlebars. One of the partials that is used a lot is the button which wraps the template in a url if (mustache style). So I end up with a template loosely like this:
{{#url}}

  text

{{/url}}

Since small is a function by default, if just url is passed the small property is always Truthy, whereas it would be undefined in mustache.

And mustache does not resolve prototype properties?

I'm just wondering: One of the major features of Handlebars was its mustache-compatibility. I just wonder why this has never occured before and why this case isn't caught by the mustache-testcases that handlebars runs against in each build.

Mustache does not resolve the prototype properties no:

mustache: https://runkit.com/embed/w8dfurz5q3nc
handlebars: https://runkit.com/embed/ftxfy79ju90z
handlebars (compat mode): https://runkit.com/embed/csu8s7adql2q

I think it is not that easy to implement this check correctly. It should be a runtime option, but because compiler and runtime must remain compatible in 4.x, we cannot just add a function to the "container" object in the runtime that performs the check. If the compiled template calls the function and it is not there because the runtime is older than the compiler, then people will complain (I made that mistake already).
In 5.0, that would be OK, but still, the "lookup"-helper does not have access to the "container" and cannot check the runtime option. And the "lookup"-helper should behave equally to a direct lookup.
I have plans for releasing a 5.0 version. Apart from code-cleanup, this this a feature I wanted anyway, for security reasons. It would be great if you start it.

Compiler: https://github.com/wycats/handlebars.js/blob/master/lib/handlebars/compiler/javascript-compiler.js#L17
Runtime:

"container"-object that can be accessed from the compiled template and could get a "allowedProperty" method based on "hasOwnProperty" or something like that: https://github.com/wycats/handlebars.js/blob/master/lib/handlebars/runtime.js#L109

Maybe this is the place to exchange the "lookup" helper based on the runtime option: https://github.com/wycats/handlebars.js/blob/master/lib/handlebars/runtime.js#L229

What is the roadmap for 5.0 is there likely to be an alpha/beta version anytime soon? Is it feature complete, would it be plausible to use in a development environment?

My plan for 5.0 is to

publish the changes that are currently on the master branch #1566,
bump webpack and babel to the current versions (which is not trivial and may cause breaking changes)
disallow access to prototype properties

My main motivation is to go back to the master branch and eliminate the other two pain points.
I cannot give you an exact timeline, though, because I work on the project only when I have time to do so. But that is also true for the 4.x branch.

Disallowing prototype access is released in 4.6.  This issue should be fixed now.


[WIP][Feature][Migration] Add HttpOnly flag for OSF, API and ADMIN cookie [#OSF-6339, #SEC-16]

Purpose
OSF does not set HttpOnly flag. Using the flag when generating a cookie helps mitigate the risk of client side script accessing the protected cookie.
Changes
if response is not None:
    response.set_cookie(
        settings.COOKIE_NAME,
        value=cookie_value,
        domain=settings.OSF_COOKIE_DOMAIN,
        secure=settings.SESSION_COOKIE_SECURE,
        httponly=settings.SESSION_COOKIE_HTTPONLY)
    return response

Note: The above is from local environment. Secure flag is disabled locally.
Side effects
Not compatible with IE9.
Deployment
SESSION_COOKIE_HTTPONLY = True

Tickets
https://openscience.atlassian.net/browse/OSF-6339
https://openscience.atlassian.net/browse/SEC-16
PRs
Blocked by https://github.com/CenterForOpenScience/osf.io/pull/5506

Code clean up done:

fix imports order: python, third-party, our own
remove unused params user-agent
unify comments style and blank lines
rename three shadowing variables session to respective names

This seems to have a lot of extraneous formatting changes; the only thing that looks like it should affect behavior is the toggling of a SESSION_COOKIE_HTTPONLY flag (as expected). While the whitespace changes aren't all to my personal taste for readability, I applaud the docstring improvements. 👏
Pass complete, pushing this ahead 👓

Pull from develop to solve merge conflicts. Travis error is unrelated to this PR.


:sparkles: setup-python not required by pypa/gh-action-pypi-publish

Signed-off-by: Seth Michael Larson<EMAIL_ADDRESS>What kind of change does this PR introduce?

[x] PR title follows the guidelines defined in our pull request documentation

What is the current behavior?
Requires setup-python to be used for publish GitHub Action jobs needlessly.
What is the new behavior (if this is a feature change)?**
setup-python won't be required by the job.
Which issue(s) this PR fixes
Fixes https://github.com/ossf/scorecard/issues/2196
Special notes for your reviewer
Does this PR introduce a user-facing change?
For user-facing changes, please add a concise, human-readable release note to
the release-note
(In particular, describe what changes users might need to make in their
application as a result of this pull request.)
NONE

@naveensrinivasan Unfortunately don't have time right now and won't for a while. Should I close this PR or leave for others to pick up?

@naveensrinivasan Unfortunately don't have time right now and won't for a while. Should I close this PR or leave for others to pick up?

I understand! I would suggest leaving it open. Thanks!

238231
On Tue, Sep 6, 2022, 7:01 PM Naveen @.***> wrote:

@naveensrinivasan https://github.com/naveensrinivasan Unfortunately
don't have time right now and won't for a while. Should I close this PR or
leave for others to pick up?
I understand! I would suggest leaving it open. Thanks!
—
Reply to this email directly, view it on GitHub
https://github.com/ossf/scorecard/pull/2206#issuecomment-1238733351, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AYR7CCY2IJP53QWHL6NDZ2TV47EODANCNFSM573RSJKQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

@spencerschrock @raghavkaul are you interested in finishing up this PR?

I can finish it up. I'll send a PR with tests to @sethmlarson 's branch, and it should trickle into this PR once merged.

Just to surface comments from the other PR:

The function already had tests in the wrong place.
Moved it to the right place and added new tests for the pypa/gh-action-pypi-publish action.

Ping us when it's ready for review. Thanks

@laurentsimon It should be ready for review already. I believe the added tests address @naveensrinivasan 's original comments.


Always update the declaration node after normalizing "let x, y"

Change "testGithubIssue1124()" to "testFunctionsInLoop()" to make it
more descriptive.
Fixes #1557.

lgtm otherwise


Typescript error on component usage when define a custom param on mapping.json

💬 Question
Hi! I'm new on Kitten and in my project we are trying to add a custom property to the Text Component.
So I do it on the mapping.json file inside of the variantGroups (and inside the meta) and all is working well but as I have Typescript on the project I'm getting an error when I pass my custom property to the Text component.
For example:
declaration (and in meta too with default true)

usage

I don't know how to do for Typescript recognize my Text component custom property
Checking on the Text type definition inside node module I realize that there is not supporting different params options
UI Kitten and Eva version

Package
Version

@eva-design/eva
2.0.0

@ui-kitten/components
5.0.0

@iabadie-dataart I guess the only way to get this work is to create your own component. At the moment its not possible to add the new properties in existing types. We will think about this.


/bin/tar: unrecognized option: posix

Using alpine
workflow:
    deploy-staging:
        if: startsWith(github.ref, 'refs/tags/staging/')
        name: Deploy to staging
        container:
            image: alpine

Post job cleanup.
/usr/bin/docker exec  dcb7efcd78f1493a0f203170c30683f32416b29cf23efa36edc84c025749696f sh -c "cat /etc/*release | grep ^ID"
/bin/tar --posix -z -cf cache.tgz -P -C /__w/xxxxxxxx/xxxxxxxx --files-from manifest.txt
/bin/tar: unrecognized option: posix
BusyBox v1.33.1 () multi-call binary.

Usage: tar c|x|t [-ZzJjahmvokO] [-f TARFILE] [-C DIR] [-T FILE] [-X FILE] [OPTION]... [FILE]...

Create, extract, or list files from a tar file

	c	Create
	x	Extract
	t	List
	-f FILE	Name of TARFILE ('-' for stdin/out)
	-C DIR	Change to DIR before operation
	-v	Verbose
	-O	Extract to stdout
	-m	Don't restore mtime
	-o	Don't restore user:group
	-k	Don't replace existing files
	-Z	(De)compress using compress
	-z	(De)compress using gzip
	-J	(De)compress using xz
	-j	(De)compress using bzip2
	--lzma	(De)compress using lzma
	-a	(De)compress based on extension
	-h	Follow symlinks
	-T FILE	File with names to include
	-X FILE	File with glob patterns to exclude
	--exclude PATTERN	Glob pattern to exclude
	--overwrite		Replace existing files
	--strip-components NUM	NUM of leading components to strip
	--no-recursion		Don't descend in directories
	--numeric-owner		Use numeric user:group
	--no-same-permissions	Don't restore access permissions
Warning: Tar failed with error: The process '/bin/tar' failed with exit code 1

Fix: apk --no-cache add tar
But maybe the code could handle busybox tar

Basic example
name: Build and lint

on: [push, pull_request]

jobs:
    build-and-lint:
        name: Build and lint
        container:
            image: node:14-alpine
        runs-on: ubuntu-latest
        steps:
            - name: Checkout repository
              uses: actions/checkout@v2
            - name: Get yarn cache directory path
              id: yarn-cache-dir-path
              run: echo "::set-output name=dir::$(yarn cache dir)"
            - name: Cache node modules
              uses: actions/cache@v2
              id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
              with:
                path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
                key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
                restore-keys: ${{ runner.os }}-yarn-
            - name: Install node modules
              run: yarn install
            - name: Lint files
              run: yarn lint
            - name: Build package
              run: yarn build

Have a look at this https://github.com/actions/cache#pre-requisites. POSIX compliant tar is required


Add an abstract method called 'transform' to the TransformerAbstract

You should have an abstract method called 'transform' in the TransformerAbstract or implement a TransformerInterface. Or just add the transform method to the TransformerAbstract which just returns the first argument.
Either one of the solutions would suffice.

The transform method was purposely omitted from AbstractTransformer to give implementations the opportunity to type-hint the transform parameters, which would otherwise not be possible without using generics.

As was mentioned this is intentionally not included.


network_plugin/calico : Calico | wait for etcd failed

Is this a BUG REPORT or FEATURE REQUEST? (choose one): BUG REPORT

Environment:

Cloud provider or hardware configuration:
two virtual matchine,
12GB memory
80GB disks

**OS (printf "$(uname -srm)\n$(cat /etc/os-release)\n"):**VERSION="16.04.3 LTS (Xenial Xerus)"

Version of Ansible (ansible --version): ansible <IP_ADDRESS>

Kubespray version (commit) (git rev-parse --short HEAD): af7edf4
Network plugin used:calico
Copy of your inventory file:
[all]
master1 ansible_host=<IP_ADDRESS> ip=<IP_ADDRESS>
node1 ansible_host=<IP_ADDRESS> ip=<IP_ADDRESS>
[kube-master]
master1
[kube-node]
node1
[etcd]
master1
[k8s-cluster:children]
kube-node
kube-master
[calico-rr]
[vault]
master1
Command used to invoke ansible:
ansible-playbook -i inventory/inventory.cfg cluster.yml  -b
Output of ansible run: https://gist.github.com/wtwde/826334c8aa2d8d787db9337c27c09e95

Anything else do we need to know: In my opinion, the etcd only install on kube-master not on kube-node, but this task run on kube-node. it is caused by removing the delegate_to: "{{groups['etcd'][0]}}" in this tasks.

@mattymo

Looks like issue #2384 (bad cert name)
Try the fix I proposed

@raclepoulpe  it failed at same task, but the failure reason is different.

@wtwde I saw that a few minutes ago.
I think the problem comes from the remove of "delegate_to" too, because my etcd is not on the master node, but it's not your case.
Still digging...

I have the same issue, but after restarting command ansible-playbook -i inventory/inventory.cfg cluster.yml -b the problem disappears. But sometimes this problem comes back. The same issue happens with tasks where etcd and apiserver waiting for restarting, but this is a completely different story :D

I have same issue too.
I'm trying to create kubernetes cluster on Ubuntu 16 with kubespray, but when I run ansible playbook ( cluster.yml ) it reports same error.
tried several times, but error is still reported.

@mas9612 try to clean /tmp/node* via rm /tmp/node* and launch ansible-playbook

@oanogin
Thank you for you advice.
remove cache under the /tmp and rerun ansible playbook.
but it didn't affect to the result :(
I wonder why Calico | wait for etcd task is executed on non-master/etcd node (nodes that not listed in [kube-master] / [etcd] in hosts.ini )

@mas9612 you can checkout to 810c10a0e9b65b0ef8ae8f7c302f7553a165631c, it works, or you also can
add the line delegate_to: "{{groups['etcd'][0]}}" in the tasks.

introduced in https://github.com/kubernetes-incubator/kubespray/pull/2386


Coming soon

You might consider using Ollama for local models.  It works using the requests module.  I have some example code in my SimpleAgent repo.

Thanks for the suggestion!


refactor: wildcard resolution and pl::Expr::target_ids

This PR has partially been cherry-picked from an old branch of mine and partially rewritten anew. I've worked on this for a few weeks now, so I forgot the initial motivation of why I wanted to change this :D
It does simplify:

the wildcard resolution (this opinion might be biased since I spent so much time debugging it and I know how it works in depth now)
Expr::target_id and Expr::target_ids, which are now a single number.

I think I wanted this because it made lineage inference independent of the declarations in root module: https://github.com/PRQL/prql/pull/3863/files#diff-d2aed3357385f80cd4517d8ca5492ad503c33c13b8afbd9e219666f57f947459L264
As an additional upside, I changed functions implemented specifically for lineage into functions that manipulate the AST, which means that I don't have to duplicate this behavior in type inference.

Some of the changes in test outputs look good!

I realized now that I didn't even mention why I'm changing this! I've edited the original message.


How to pass NetKVM test "PrivateCloudSimulator - Device.Network.LAN.10GbOrGreater"?

Hi, I only have one HLK test left for NetKVM in windows  server 2016，i can't find how to pass this test "PrivateCloudSimulator - Device.Network.LAN.10GbOrGreater"?
test always fail on step "create cluster and config S2D"，and then  "S2D setup Storage cluster" fail

Hi,
Are you working on HW virtio?

If you really want to pass CloudSimulator test, then you need to work on creating the proper setup. It is not a regular Studio + 2 clients setup as for the rest of the tests. Did you create the setup according to the documentation? What is the actual error?
Primary Node, Other Node 1 ,Other Node 2 Should pass the Validate Cluster Test. The test can be ran manually from the Test Controller before running the PCS test in order to ensure that the topology is fine.
But if you are working with paravirtualized virtio-net (device in QEMU), you don't need to pass this test. Ask Microsoft for manual errata. For us it is covered by the following erratum:
Windows Server 2016 and Windows Server 2019: 8072
Windows Server 2022: 5434

Best regards,
Yan.

Thank y~