Pachctl list repo or pipeline does not work with spout 2.0 in 1.12.1

What happened?:
I ran a jupyter notebook from a spout 2.0 service. !pachctl list repo or !pachctl list pipeline commands from a cell throw an error connecting to pachd: could not read config: could not rewrite config at "/pachctl/config.json": failed to write config file: open /pachctl/config.json: read-only file system
What you expected to happen?:
Be able to use the CLI.
How to reproduce it (as minimally and precisely as possible)?:
in branch https://github.com/pachyderm/pachyderm/tree/notebook-test/examples/jupyter, run:

make build   (creates your image)
pachctl create pipeline -f notebook.json
`pachctl logs -p notebook'   --> pick last URL
run URL in a browser (change port number 8888 to 30888)
in a random cell, run !pachctl list repo --> throws could not read config: could not rewrite config at "/pachctl/config.json": failed to write config file: open /pachctl/config.json: read-only file system

This is an issue with how we load the config inside a worker pod:

We set an env var on the worker pods, PACH_IN_WORKER, which indicates to pachctl that it's inside a worker pod.
Some PFS commands detect this and call NewInWorker (https://github.com/pachyderm/pachyderm/blob/master/src/server/pfs/cmds/cmds.go#L1474), but some like list repo don't. This is because when we specced out Spouts 2.0 we only really cared about pachctl put file and didn't think about the broader implications.
We should revisit where we detect the env var, and also whether read-only config files are really a fatal error if you're only trying to read the config in the first place.

I was conscious of this when adding that special NewInWorker logic, but I don't think my solution was very good. Allowing arbitrary pachctl operations inside of spout user code felt like giving too much opportunity to break things unintentionally, though read-only operations are probably fine. The error the end user sees even without auth is rather opaque.

I think we should be able to solve this by opening /pachctl/config.json in read-only mode if opening in write mode fails. I assume there are some cases where we want to write something back to the config, in those cases we'll probably just need to error out, but I think in most cases we don't need to write to it and can just operate in read-only mode.

If I'm looking at the same code as @actgardner was (https://github.com/pachyderm/pachyderm/blob/1375304d46ed57c280bd521c2f37b2e59d001c43/src/internal/config/config.go#L127), opening read-only happens first, and the attempt to write to the config file is just because that's what we do when a pachctl command runs for the first time normally. I don't think the config issue is the problem, really, the command would have failed to connect to pachd even had the config access been read only.
We need a list of what should be supported by pachctl in a spout (maybe that's just "everything", or just the existing put/get file and some other read-only commands), and then a better way of gating it than I chose. As @actgardner alluded to, the easiest thing may be to move the worker env var detection into NewOnUserMachine so everything hits it, and allow some commands to say they are okay to run.


文件上传，name参数

https://github.com/anncwb/vue-vben-admin/blob/c2b207dd5172519a87cb23e34114e5d104ce56a1/src/utils/http/axios/Axios.ts#L125
文件上传的时候，业务参数名为name。与文件上传的name冲突，导致业务name没有传递。

自定义一个自己的uploadFile方法

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days


Responsive design for dropdowns in header > header-actions

Summary
Summary the request and address the questions as appropriate.

What is the change?
Add responsive behaviour for dropdowns inside header-actions present in header
Why should it go in Clarity?
currently clarity supports header navigation with only links but not dropdowns. Header can consist of both links and dropdowns.
Does this change impact existing behaviors? If so how?
there is no current responsive behavior for dropdowns inside headers.
If this change introduces a new behavior, is this behavior accessible?
Yes

Workarounds
Is there a workaround for this feature at the moment, even if it is less than ideal?
No

https://stackblitz.com/edit/angular-tu6gyw?file=angular.json

Do we have any update on this?

Do we have any update on this?

Header actions are not considered navigation, so we don't have responsive navigation built-in. At the moment, the application will have to decide what to do with the actions based on their own needs. We don't have any demos showing multiple dropdowns in the header like this, which might require different treatment based on what the actions are for.
@yuxin-ux @colinreedmiller We don't have any guidance on this specific use case, but I wanted to get this on your radar as an ask. I think there are other possible patterns, depending on exactly what the use cases are.

Header actions are not considered navigation, so we don't have responsive navigation built-in. At the moment, the application will have to decide what to do with the actions based on their own needs. We don't have any demos showing multiple dropdowns in the header like this, which might require different treatment based on what the actions are for.
@yuxin-ux @colinreedmiller We don't have any guidance on this specific use case, but I wanted to get this on your radar as an ask. I think there are other possible patterns, depending on exactly what the use cases are.

The feature request here has been captured into our list and we’re going to take it into consideration as we develop Clarity Core capabilities. In an effort to clean up our backlog and focus our attention, I’m going to close this as captured in our feature requests. Please follow our development and releases to see when we release relevant components to make this possible. Future feature requests can be made in our GitHub Discussions.


Union between Uint8Array and Array does not work for reduce function

Bug Report
The compiler cannot find an intersection between the reduce function for number[] and Uint8Array.
From the error message, it looks like the compiler is raising an issue because of the fourth parameter having different types, but since I don't use the fourth parameter, it hardly seems relevant in this specific case.
🔎 Search Terms

Uint8Array

🕗 Version & Regression Information
I see this issue in v3.3.3333, v4.3.2 (current stable) and v4.4.0-dev.20210615 (current nightly).

This is the behavior in every version I tried, and I reviewed the FAQ for entries about https://github.com/Microsoft/TypeScript/wiki/FAQ#why-are-functions-with-fewer-parameters-assignable-to-functions-that-take-more-parameters

It indicates that the compiler should work as I expected, not as it actually works.

I was unable to test this on versions prior to v3.3.3333 because the playground did not support older versions.

⏯ Playground Link
Playground link with relevant code
💻 Code
// This function fails
function combined(x: Uint8Array | Array<number>): number {
  return x.reduce((s: number, x: number) => s + x * x, 0)
}

// This function has no issues
function uiint8array(x: Uint8Array): number {
  return x.reduce((s: number, x: number) => s + x * x, 0)
}

// This function has no issues
function numberarray(x: Array<number>): number {
  return x.reduce((s: number, x: number) => s + x * x, 0)
}

🙁 Actual behavior
The code works fine at runtime, but the typescript compiler raises the following error for the Uint8Array | Array<number> case:
This expression is not callable.
  Each member of the union type '{ (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number; (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number; <U>(callbackfn: (previousValue: U, currentValue: numb...' has signatures, but none of those signatures are compatible with each other.(2349)
(property) reduce: {
    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number;
    (callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number;
    <U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8Array) => U, initialValue: U): U;
} | {
    ...;
}

🙂 Expected behavior
No errors are produced.

Related, or potential duplicate: #44063

It's allowed to call methods of union types if we can determine that we can safely check it correctly (this used to be always disallowed).
In this case, we can't check it correctly. The problem here is that reduce passes the array itself as the fourth argument to the callback, so a hypothetical receiving function would have to be validated to accept both a UIntArray8 and number[] in that position, which we could either check with union (which would fail), by iterating the possible constituents (combinatorially explosive), or by doing some kind of lookahead on the target arity to figure out that we could just not care (sound, but sort of rare outside of the specific example of reduce).
See also #9239 for potential next steps of improving this logic.

I just ran into this with the following snippet:
function isStringArray(a: string[] | number[]): a is string[] {
	return a.every((v) => typeof v === 'string');
}


Adds benchmark results

Do you think we should specify that it's with all optional pipes disabled and just returning "hello world"?

I don't know how specific you would like to be you ran the benchmark, I think you should add anything that you consider important in regards to the benchmark

Ok. Specifically just the 2 things I said but I can add those when I get
home.
On Jun 11, 2017 5:48 PM, "Elias Perez"<EMAIL_ADDRESS>wrote:

I don't know how specific you would like to be you ran the benchmark, I
think you should add anything that you consider important in regards to the
benchmark
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/Amber-Crystal/amber/pull/112#issuecomment-307665078,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHmpJTy7N8_u46AQfgbmnciSY0CEnzeks5sDHzVgaJpZM4N2Y4P
.

Sounds good, I will merge this and then you can open a PR with the additional stuff

:+1:
On Jun 11, 2017 5:53 PM, "Elias Perez"<EMAIL_ADDRESS>wrote:

Sounds good, I will merge this and then you can open a PR with the
additional stuff
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/Amber-Crystal/amber/pull/112#issuecomment-307665293,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHmpOT3qbhnVTpFOSsxqXxDlwAIX5zOks5sDH3_gaJpZM4N2Y4P
.

kk


Build failure: plausible

Steps To Reproduce
Steps to reproduce the behavior:

build a system configuration with plausible as a service (I'm on NixOS 22.11)

Build log
https://gist.github.com/jonaslanglotz/57e0dd20303ab4c3e6586a4ad96dc4ee
Additional context
I'm new to Nix, so I can't make the changes myself, but I've analyzed the issue and have found the problem.
The issue is that when the package was made, nodejs included an older npm version (<9) which still had the npm bin command. This has been removed in newer nodejs versions however. This causes an error, because npm bin is used in the repository of plausible (atleast for the version that is pinned here). It can either be fixed by using an older nodejs package, using a newer version of the plausible repository or not using the deploy script from the repository and instead calling webpack manually using npm exec.
Notify maintainers
Unfortunately, there are currently no maintainers. @Ma27 was originally a maintainer, but has removed himself.
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.97, NixOS, 22.11 (Raccoon), 22.11.git.47c00341629M`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.11.1`
 - channels(jonaslanglotz): `"home-manager"`
 - channels(root): `"nixos-22.11"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I'd be willing to help here in some capacity, but as I've said I'm new to Nix, so I would atleast need some guidance.
I feel there are two ways of going forward here: either updating the package to not use npm bin while still pinning the same underlying version of plausible OR updating the package to use a newer version of plausible, which would mitigate the issue.
With the first solution, I'm not sure what would happen with the version number. Would it stay the same, basically applying a fix for the already released version so it works again? Or would the version be incremented to something else (<IP_ADDRESS>?) to reflect the change, with the already published version remaining in a broken state?
It would be helpful if someone with more experience could comment on this topic, or atleast point me in the right direction. I saw some stuff in the docs about backporting, but I'm not sure if this applies here.

@jonaslanglotz can you test https://github.com/NixOS/nixpkgs/pull/220246

Hey, thank you for working on this. Unfortunately, it does not seem to be working for me. Behaviour is as before. I ran sudo nixos-rebuild test -I nixkpgs=<path to your repo> --fast on your branch.
Generated plausible app

> deploy
> $(npm bin)/webpack --mode production

sh: line 1: Unknown: command not found
error: builder for '/nix/store/37k02mm310ivaqd6qwbw4yzmkmspbfhy-plausible-1.4.4.drv' failed with exit code 127
error: 1 dependencies of derivation '/nix/store/x6kpb1f2s9fnh1dwb4dwqz6nx59xgcp4-system-path.drv' failed to build
error: 1 dependencies of derivation '/nix/store/yavwz00wb2kwqnpi9500pxdg3dif1ajw-unit-script-plausible-start.drv' failed to build
error: 1 dependencies of derivation '/nix/store/ylpz6ac07m2i5m5g4g8w269jhx9k9hyw-dbus-1.drv' failed to build
error: 2 dependencies of derivation '/nix/store/mdfaz03v1gimh9bzy5vy8i46vvx94mkw-unit-plausible.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/2f9ay8jxvymp9b17493k0ia3dmksr24w-unit-polkit.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/l1z686r0jqy1z5nyrahaf15qz1d2k1xd-unit-systemd-fsck-.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/086vnjxa9vwq6mxlnxf3jrk6q3l36bps-unit-dbus.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/hvd7qv09390gdjcrfmy5xqgvnp9i39ip-unit-dbus.service.drv' failed to build
error: 4 dependencies of derivation '/nix/store/s30rh6fxrshzdyalmw3nkdlqip9ll73v-system-units.drv' failed to build
error: 1 dependencies of derivation '/nix/store/5dxyixf9zl5nghkfq6ra87rqy85a04zn-user-units.drv' failed to build
error: 4 dependencies of derivation '/nix/store/7hiab3348fm7whi2jqjbbk52kv991gvm-etc.drv' failed to build
error: 2 dependencies of derivation '/nix/store/rqqky25j3cq69s9mhk0d50lypmykn570-nixos-system-nix-22.11.2979.47c00341629.drv' failed to build

Hey, thank you for working on this. Unfortunately, it does not seem to be working for me. Behaviour is as before. I ran sudo nixos-rebuild test -I nixkpgs=<path to your repo> --fast on your branch.
Generated plausible app

> deploy
> $(npm bin)/webpack --mode production

sh: line 1: Unknown: command not found
error: builder for '/nix/store/37k02mm310ivaqd6qwbw4yzmkmspbfhy-plausible-1.4.4.drv' failed with exit code 127
error: 1 dependencies of derivation '/nix/store/x6kpb1f2s9fnh1dwb4dwqz6nx59xgcp4-system-path.drv' failed to build
error: 1 dependencies of derivation '/nix/store/yavwz00wb2kwqnpi9500pxdg3dif1ajw-unit-script-plausible-start.drv' failed to build
error: 1 dependencies of derivation '/nix/store/ylpz6ac07m2i5m5g4g8w269jhx9k9hyw-dbus-1.drv' failed to build
error: 2 dependencies of derivation '/nix/store/mdfaz03v1gimh9bzy5vy8i46vvx94mkw-unit-plausible.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/2f9ay8jxvymp9b17493k0ia3dmksr24w-unit-polkit.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/l1z686r0jqy1z5nyrahaf15qz1d2k1xd-unit-systemd-fsck-.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/086vnjxa9vwq6mxlnxf3jrk6q3l36bps-unit-dbus.service.drv' failed to build
error: 1 dependencies of derivation '/nix/store/hvd7qv09390gdjcrfmy5xqgvnp9i39ip-unit-dbus.service.drv' failed to build
error: 4 dependencies of derivation '/nix/store/s30rh6fxrshzdyalmw3nkdlqip9ll73v-system-units.drv' failed to build
error: 1 dependencies of derivation '/nix/store/5dxyixf9zl5nghkfq6ra87rqy85a04zn-user-units.drv' failed to build
error: 4 dependencies of derivation '/nix/store/7hiab3348fm7whi2jqjbbk52kv991gvm-etc.drv' failed to build
error: 2 dependencies of derivation '/nix/store/rqqky25j3cq69s9mhk0d50lypmykn570-nixos-system-nix-22.11.2979.47c00341629.drv' failed to build

can you provide exact commands you used to get right version of nixpkgs, including full command for nixos-rebuild

Sure.
cd projects
mkdir kirillrdy
cd kirillrdy
git clone git@github.com:kirillrdy/nixpkgs.git
git checkout plausible
sudo nixos-rebuild test -I nixkpgs=/home/jonaslanglotz/projects/kirillrdy/nixpkgs --fast

My config for plausible looks like this:
{config, pkgs, lib, ...}:

{
  services.plausible = {
    enable = true;

    releaseCookiePath = "/run/secrets/plausible-release-cookie";

    adminUser = {
      activate = true;
      email = "admin@localhost";
      passwordFile = "/run/secrets/plausible-admin-passwd";
    };

    server = {
      baseUrl = "http://localhost";
      port = 9010;
      secretKeybaseFile = "/run/secrets/plausible-secret-key";
    };
  };
}

there is a typo
sudo nixos-rebuild test -I nixkpgs=/home/jonaslanglotz/projects/kirillrdy/nixpkgs --fast

should be -I nixpkgs

Ahh, sorry. With the correct command the build works now. Thank you.
I'm still getting another error when the unit is actually started, but it seems unrelated and probably has something to do with my config.

@jonaslanglotz were you successful at starting plausible ? if so could you share your configuration ?


Way to keep control on  attributes

Hi, and thanks for your work!
I can't find a way to keep control on  tag attributes with your directive.
For example, if i want to add  .my-custom-class on the img tag, i cant :
// this output is not possible:

// because the 'afkl-lazy-image' directive is on the container, and create a new img tag:

So maybe this could be more flexible?

Thx!

Can't you simply style the given class "afkl-lazy-image" which is given by the component? An empty image is not handy browser wise (IE can crash). Maybe className can become an option as well, lets see.

yeah, but the problem is more complex, because it's not just about css.
For example if you want to use dave desandro's imagesloaded, to detect when images have been loaded, the plugin check the images classnames.

Ok, i will add the className as an option. This directive has initial image load event as well, i will activate the trigger on the instance since other people needed it as well.

Load event for image is in now, also can set your own className


Router reload

Please delete

I just replicated the issue on my pc.  I'm looking into it. Could you please let me know why you want to delete it? Thanks.

The problem was in "app.module.ts" line 96
I changed it to " RouterModule.forRoot(ROUTES, {useHash:false}),"
and it fixed the problem


Fix #1069, Resolve mismatched types in SBR throttle

Describe the contribution
Fix #1069 - Switched throttle indexes to use CFE_SB_RouteId_Atom_t and combined helper function since separation no longer necessary (only 1 foreach function implemented).
Testing performed
Build and run unit tests, passed.
Expected behavior changes
None, just resolves static analysis warning
System(s) tested on

Hardware: cFS Dev Server
OS: Ubuntu 18.04
Versions: Bundle main + this commit

Additional context
None
Third party code
None
Contributor Info - All information REQUIRED for consideration of pull request
Jacob Hageman - NASA/GSFC

CCB:2021-01-27 APPROVED
Removes throttle helper function and places it in the "foreach" route ID to match types
No functional change

CCB:2021-01-27 APPROVED
Removes throttle helper function and places it in the "foreach" route ID to match types
No functional change


Incorrect Entry Address and Section Header Offset

Certain output fields of this program (pelf) don't match the output of the readelf command. All the values other than the Entry Address and Section Header Offset match, so the goal is to figure out why the output of those two fields is wrong and how to fix the issue.
NOTE: The fields other than the Entry Address and Section Header Offset match, because the numbers in the pelf output correspond to the readelf output based on the translation on Wikipedia.
Program output (./pelf /path/to/file):

readelf -h /path/to/file output:

Cc: @KartikSoneji


Hope to add multiple languages

Now it can only support English, hope to support multiple languages, such as Chinese, Korean

Related to #29.
I think it support languages such as Chinese, the client has to support it as well, and the characters have to be serialized in network packets with another encoding. Currently, the English client seems to use ansi/ascii encoding (1 byte per char).

where can i  get other language clients  such as Chinese.

Related to #29. I think to support languages such as Chinese, the client has to support it as well, and the characters have to be serialized in network packets with another encoding. Currently, the English client seems to use ansi/ascii encoding (1 byte per char).

我在哪里可以获得其他语言的客户端，例如中文。

与#29相关。我认为要支持中文等语言，客户端也必须支持它，并且字符必须使用另一种编码在网络数据包中序列化。目前，英语客户端似乎使用 ansi/ascii 编码（每个字符 1 个字节）。

https://share.weiyun.com/mjAkB8V3
You can download the Chinese version

thank u , i tested client ,but it didn't work , it shows not the right
client version .
[image: image.png]
wxtewx @.***> 于2023年10月26日周四 00:07写道：

我在哪里可以获得其他语言的客户端，例如中文。
与#29 https://github.com/MUnique/OpenMU/issues/29相关。我认为要支持中文等语言，客户端也必须支持它，并且字符必须使用另一种编码在网络数据包中序列化。目前，英语客户端似乎使用
ansi/ascii 编码（每个字符 1 个字节）。
https://share.weiyun.com/mjAkB8V3
You can download the Chinese version
—
Reply to this email directly, view it on GitHub
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1779609347,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLOJIHBQNCHM3RNJJBDYBE2NFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZGYYDSMZUG4
.
You are receiving this because you commented.Message ID:
@.***>

You need a tool called ([MuROX] Ultimate Main Editor) to modify a SERTAL value in main.exe. The SERTAL value must be the same as the SERTAL value in the OpenMU management interface.

thank u , i tested client ,but it didn't work , it shows not the right client version . [image: image.png] wxtewx @.> 于2023年10月26日周四 00:07写道：
…
我在哪里可以获得其他语言的客户端，例如中文。 与#29 <#29>相关。我认为要支持中文等语言，客户端也必须支持它，并且字符必须使用另一种编码在网络数据包中序列化。目前，英语客户端似乎使用 ansi/ascii 编码（每个字符 1 个字节）。 https://share.weiyun.com/mjAkB8V3 You can download the Chinese version — Reply to this email directly, view it on GitHub <#355 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A6B2PLOJIHBQNCHM3RNJJBDYBE2NFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZGYYDSMZUG4 . You are receiving this because you commented.Message ID: @.>

thank u，i change the  SERTAL value in main.exe by  [MuROX] , after that , i
can login the game ,but when i chose one character , the client dead. i
tried many time ,it always crash , i also try to modfy the server config
[Edit Game Clients -> Language] into Chinese , but it worked worse, the
client can not login any more .
have u arleady successful modified one Chinese client for openmu? can you
share it ?
wxtewx @.***> 于2023年10月28日周六 20:59写道：

You need a tool called ([MuROX] Ultimate Main Editor) to modify a SERTAL
value in main.exe. The SERTAL value must be the same as the SERTAL value in
the OpenMU management interface.
thank u , i tested client ,but it didn't work , it shows not the right
client version . [image: image.png] wxtewx @.
> 于2023年10月26日周四 00:07写道： … <#m_7188907593403124001_>
我在哪里可以获得其他语言的客户端，例如中文。 与#29 https://github.com/MUnique/OpenMU/issues/29
<#29
https://github.com/MUnique/OpenMU/issues/29>相关。我认为要支持中文等语言，客户端也必须支持它，并且字符必须使用另一种编码在网络数据包中序列化。目前，英语客户端似乎使用
ansi/ascii 编码（每个字符 1 个字节）。 https://share.weiyun.com/mjAkB8V3
https://share.weiyun.com/mjAkB8V3 You can download the Chinese version —
Reply to this email directly, view it on GitHub <#355 (comment)
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1779609347>, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLOJIHBQNCHM3RNJJBDYBE2NFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZGYYDSMZUG4
https://github.com/notifications/unsubscribe-auth/A6B2PLOJIHBQNCHM3RNJJBDYBE2NFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZGYYDSMZUG4
. You are receiving this because you commented.Message ID: @.>
—
Reply to this email directly, view it on GitHub
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1783803471,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLKJ2UQXYBK6VMWKLOLYBT6STAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBTHAYDGNBXGE
.
You are receiving this because you commented.Message ID:
@.***>

One thing to note here: The language setting in the Game Client configuration on the AdminPanel has only effect in the network protocol. There are 4 packets which have different op-codes in the different languages (Walk, Hit, Area Skill Hit, Move).
Can you create a log file of your login process with the network analyzer tool ( https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach it here?

i change back the language into English , and merge some Client files .
Then it works ,  i can login with Chinese Client！
[image: image.png]
[image: image.png]
sven-n @.***> 于2023年10月30日周一 17:56写道：

One thing to note here: The language setting in the Game Client
configuration on the AdminPanel has only effect in the network protocol.
There are 4 packets which have different op-codes in the different
languages (Walk, Hit, Area Skill Hit, Move).
Can you create a log file of your login process with the network analyzer
tool ( https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach
it here?
—
Reply to this email directly, view it on GitHub
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1784843985,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Please tell me which files are mainly merged, thank you!

i change back the language into English , and merge some Client files . Then it works , i can login with Chinese Client！ [image: image.png] [image: image.png] sven-n @.> 于2023年10月30日周一 17:56写道：
…
One thing to note here: The language setting in the Game Client configuration on the AdminPanel has only effect in the network protocol. There are 4 packets which have different op-codes in the different languages (Walk, Hit, Area Skill Hit, Move). Can you create a log file of your login process with the network analyzer tool ( https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach it here? — Reply to this email directly, view it on GitHub <#355 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU . You are receiving this because you are subscribed to this thread.Message ID: @.>

i remember i merge some dll files in the main folder. about 5-6 files .
you can try it .
wxtewx @.***> 于2023年10月31日周二 17:57写道：

Please tell me which files are mainly merged, thank you!
i change back the language into English , and merge some Client files .
Then it works , i can login with Chinese Client！ [image: image.png] [image:
image.png] sven-n @.
> 于2023年10月30日周一 17:56写道： … <#m_3625883305804170638_> One thing to note
here: The language setting in the Game Client configuration on the
AdminPanel has only effect in the network protocol. There are 4 packets
which have different op-codes in the different languages (Walk, Hit, Area
Skill Hit, Move). Can you create a log file of your login process with the
network analyzer tool (
https://github.com/MUnique/OpenMU/releases/tag/v0.7.0
https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach it
here? — Reply to this email directly, view it on GitHub <#355 (comment)
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1784843985>, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU
https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU
. You are receiving this because you are subscribed to this thread.Message
ID: @.>
—
Reply to this email directly, view it on GitHub
https://github.com/MUnique/OpenMU/issues/355#issuecomment-1786881212,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6B2PLIKDAFRIS7OWPTVGN3YCDDQFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBWHA4DCMRRGI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

i remember i merge some dll files in the main folder. about 5-6 files . you can try it . wxtewx @.> 于2023年10月31日周二 17:57写道：
…
Please tell me which files are mainly merged, thank you! i change back the language into English , and merge some Client files . Then it works , i can login with Chinese Client！ [image: image.png] [image: image.png] sven-n @. > 于2023年10月30日周一 17:56写道： … <#m_3625883305804170638_> One thing to note here: The language setting in the Game Client configuration on the AdminPanel has only effect in the network protocol. There are 4 packets which have different op-codes in the different languages (Walk, Hit, Area Skill Hit, Move). Can you create a log file of your login process with the network analyzer tool ( https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach it here? — Reply to this email directly, view it on GitHub <#355 (comment) <#355 (comment)>>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU . You are receiving this because you are subscribed to this thread.Message ID: @.> — Reply to this email directly, view it on GitHub <#355 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A6B2PLIKDAFRIS7OWPTVGN3YCDDQFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBWHA4DCMRRGI . You are receiving this because you are subscribed to this thread.Message ID: @.>

Please tell me which files are mainly merged, and how to merge, thank you very much!

i change back the language into English , and merge some Client files . Then it works , i can login with Chinese Client！ [image: image.png] [image: image.png] sven-n @.> 于2023年10月30日周一 17:56写道：
…
One thing to note here: The language setting in the Game Client configuration on the AdminPanel has only effect in the network protocol. There are 4 packets which have different op-codes in the different languages (Walk, Hit, Area Skill Hit, Move). Can you create a log file of your login process with the network analyzer tool ( https://github.com/MUnique/OpenMU/releases/tag/v0.7.0 ) and attach it here? — Reply to this email directly, view it on GitHub <#355 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A6B2PLL65GEJPZ3G6KHYY3DYB52UFAVCNFSM6AAAAAAY5S5B6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBUHA2DGOJYGU . You are receiving this because you are subscribed to this thread.Message ID: @.>

太棒了，能否告知下如何处理才能用汉化客户端么，或者给个汉化端链接也行，多谢

I got it!
First: You need a tool called ([MuROX] Ultimate Main Editor) to modify a SERTAL value in main.exe. The SERTAL value must be the same as the SERTAL value in the OpenMU management interface.
Second: Copy all the dll files in the main folder of English client to the same folder in the Chinese client.
Done!

I got it! First: You need a tool called ([MuROX] Ultimate Main Editor) to modify a SERTAL value in main.exe. The SERTAL value must be the same as the SERTAL value in the OpenMU management interface. Second: Copy all the dll files in the main folder of English client to the same folder in the Chinese client. Done!

Could you please share the tool  MuRox with me? Thank you very much!

我知道了！第一：你需要一个叫（[MuROX] Ultimate Main Editor）的工具来修改main.exe中的一个SERTAL值。SERTAL值必须与OpenMU管理界面中的SERTAL值相同。第二：将英文客户端主文件夹中的所有dll文件复制到中文客户端的同一文件夹中。完成！

你能和我分享一下 MuRox 这个工具吗？非常感谢！

[MuROX] Ultimate Main Editor.zip


List pending todos

Do you have some pending todos I can try fixing?

Yes, absolutely.  I don't understand how to translate (let's say) a GDscript function call into a RISC-V vmcall. I'm also unsure what is the best way to go about it.
Is it possible to avoid GDscript, or is calling RISC-V from GDscript the way forward?
I think the basics are already done, and as you can see it's very little code.
What's missing is:

An interface back to Godot that will grow over time, eg. how to access and safely modify engine resources from the script

This can be implemented using system calls
It can also be implemented using custom instructions (faster, but requires build-time processing)
More dynamic approaches also exist but are hard to implement, and often require the RISC-V program to be written in C++ due to compile-time features
You can have a look at how WASM does it for a very slow and time-consuming, but fully dynamic way of doing it

A plan to forward GDscript function calls into a RISC-V function

Since I know very little about Godot, I can't make the overall design decisions well, simply because I don't understand how things are done!

Godot Engine has laboriously construct a c-abi called gdextension so we can avoid the entire gdscript api and is generalizable across many c-abi languages.
https://github.com/godotengine/godot-cpp/blob/master/gdextension/gdextension_interface.h
I will post how Godot Engine "calls the shared library via the c symbol in the next post.

We can avoid construction of a scripting language in gdextension via using something like https://github.com/Vahera/godot-orchestrator. I suggest delaying implementing gdscript in gdextension to a later date.
These are independent problems.

https://github.com/godotengine/godot/blob/25de53e147a04ba15afc461b3ad4aa1884ff927d/core/extension/gdextension.cpp#L774
Error GDExtension::open_library(const String &p_path, const String &p_entry_symbol, Vector<SharedObject> *p_dependencies) { is the entry point into the gdextension system.
Note that it calls Error err = OS::get_singleton()->open_dynamic_library(abs_path, library, &data); which is directly equivalent to vmcalls I think.

https://github.com/godotengine/godot/blob/25de53e147a04ba15afc461b3ad4aa1884ff927d/core/extension/gdextension.cpp#L774
Error GDExtension::open_library(const String &p_path, const String &p_entry_symbol, Vector<SharedObject> *p_dependencies) { is the entry point into the gdextension system.
Note that it calls Error err = OS::get_singleton()->open_dynamic_library(abs_path, library, &data); which is directly equivalent to vmcalls I think.

No, that is dynamic linker loading - but that is also supported, although not as fast as a static executable.

Here is the text book example of a gdextension addon. https://docs.godotengine.org/en/latest/tutorials/scripting/gdextension/gdextension_cpp_example.html
Here is a github using cmake https://github.com/asmaloney/GDExtensionTemplate

err = OS::get_singleton()->get_dynamic_library_symbol_handle(library, p_entry_symbol, entry_funcptr, false);
I think the hardest part is defining what the api is, and not the conversion from dynamic linker loading or vmcalling.

No, that is dynamic linker loading - but that is also supported, although not as fast as a static executable.

I'm not sure if we can arbitrary add a main() to the shared library to convert it to an executable. There's a separate project called libgodot, but I want to avoid that since it's not been stable yet.
Do you think making it a dynamic linker loading of a riscv shared library is ok? I think there's room to optimize architecturally here though.

No, that is dynamic linker loading - but that is also supported, although not as fast as a static executable.
Once the loading has happened, vmcall can be used on the loaded binary (just like any other binary), but there is a need to calculate where the functions are.

I think the gdextension abi/abi, caches the location of all the functions after loading the gdextension shared library. How bad is copying that approach?

I see. Thinking about this, it seems doable, but the whole point of GDExtension is the native performance. libriscv has good performance when full binary translation is active, which requires compiling (or pre-compiling) a shared object (a .dll if you will) using a system compiler (usually on the system where its going to be used).
Without full binary translation, there's JIT which is not close to native - rather more like 2x interpreted. But it only works on some platforms. Linux is the easiest to get it to work on.
And finally there's interpreted. If we imagine that the functions we call are tiny and require low latency, then libriscv is the best choice, currently, but I imagine that GDExtension code can do some heavy processing. Not ideal work for an interpreter.
libriscv is, at least in its current form, mostly a replacement for GDScript itself.

My problem is trying to compile gdextension for like 8 platform variants and some of them require code signing.

libriscv has good performance when full binary translation is active, which requires compiling (or pre-compiling) a shared object (a .dll if you will) using a system compiler (usually on the system where its going to be used).

My idea was we use an external system to compile the riscv binary -- Let's say github actions.
Then we store it on the cdn as a binary blob that players can fetch (think in spirit to the godot asset library, can be the literal godot asset library.)

If we imagine that the functions we call are tiny and require low latency, then libriscv is the best choice, currently, but I imagine that GDExtension code can do some heavy processing. Not ideal work for an interpreter.

This is a great usecase, the idea we can use librisc to compile small functions into native code. https://www.erlang.org/doc/system/nif.html Like erlang nifs with a fallback in gdscript. I think this is 100% doable, but I don't think I can fully utilize it yet in my Social VR Networking platform (FOSS).

I see. Thinking about this, it seems doable, but the whole point of GDExtension is the native performance. libriscv has good performance when full binary translation is active, which requires compiling (or pre-compiling) a shared object (a .dll if you will) using a system compiler (usually on the system where its going to be used).

Point of confusion.
Did you mean compiling riscv or compiling riscv as native for the platform?

Well, binary translation means taking the RISC-V instructions and generating compileable code (eg. an intermediary representation, or a full-blown language). My binary translator generates freestanding C code. That C code has to be compiled to a shared object using a system compiler, like GCC. Once that is done, you can have up to ~80% native performance in the sandbox.
Without full binary translation, there is libtcc which I have only gotten to really work well on Linux so far. It is sometimes 2x faster than interpreted mode. CoreMark reached 7k vs 41k native (~17% native). But like I said, it will take some effort to support other platforms, eg. Windows. Other platforms don't allow JIT anyway, like Switch.
With interpreted mode the latency of vmcalls remain the same, but the performance suffers, and it can randomly suffer harder just by things being moved around in memory. Interpreters are infamously prone to slowdowns due to random changes in code, changing alignments.

I guess I should add one last thing: In the future you will be able to embed binary translated RISC-V into your project directly as code, instead of having to load it as a shared library. It makes it possible to use it on consoles, among other things. But not possible to load dynamically, then, as it's something you use for shipping / final build.

So I could begin by using TCC on Mac, Windows and Linux. Then at some point run the RISCV -> C code -> operating system binary.
Do you know how difficult it is to make the TCC part better?

The way that I work on my game:

I work with TCC enabled, as it doesn't take any time to generate the faster code.
When I build the Windows client, I enable full-binary translation, but it can only load a .dll (it can't compile anything by itself)
When the Windows client connects to my server, the server sends a cross-compiled .dll to the client, which loads it and enables the much faster RISC-V emulation
For systems where we can't use binary translation at all, the interpreter would make the most sense - although in the future, we will probably be able to embed the binary translation code directly, and just vmcall functions as regular functions.

That's the direction I've been going with my game.

So, when it comes to GD extensions that we can pre-build, perhaps it's good enough to transpile a GD extension to a RISC-V shared object, and then convert that to binary translated code that can be embedded in the game project? It would if nothing else be truly portable. It can be used on every system.

My friend @shakesoda mentioned there has to be complications, but transpiling a GD Extension to a RISC-V shared object then converting that to a binary translate code embeddable everywhere Godot Engine is sounds like an amazing dream.

Yes, complications are everywhere:

Some extensions love to access filesystem
OS resources has to be faked, like /proc/self/exe
Some extensions are not written in easy-to-handle languages like C/C++

Of course, all the necessary support to load these shared objects still has to be implemented. libriscv is mostly a safe sandbox. It's not made to emulate full Linux programs, but at the same time I can make HTTPS requests in a Zig RISC-V executable, so it's also not impossible either. It just means that all parts have to be extended enough to support enough programs. It will never be 100%, and that's OK. The simplest method is to take things on a case-by-case basis.

One of my friend was asked me:

My main concern about RISC-V is performance

Any idea how to think about the RISC-V emulation performance?

My thought-experiment was trying to make https://github.com/Vahera/godot-orchestrator work with emulated RISCV shared gdextension.

riscv compiled on github actions for orchestrator
Godot 4.3-beta2 support is broken, but the maintainer is working on it
as far as I can tell it doesn’t load other dlls
it doesn’t seem to call outside http calls outside of the godot engine apis

Implement shared object loading, verify able to fetch address of dynamically loaded functions

Would an echo command work here as the hello world sample?

Initial support for embedding programs pre-translated to sandboxed C/C++ code here: https://github.com/fwsGonzo/libriscv/pull/174
How to test:

Execute ./rvlinux  -o mycode.cpp
bash build.sh --embed mycode.cpp
Execute ./rvlinux

It won't work with dynamic executables right now because they have several execute segments, but it's just some missing typewriter work.

Analysis from the gdextension team.
Hm, well, GDExtension will only dlsym() the entry point funtion. However, the GDExtension API is full of function pointers that the GDExtension registers with Godot
So, for example, when a GDExtension registers a class, it calls classdb_register_extension_class3() passing in a GDExtensionClassCreationInfo3 struct, which the GDExtension needs to fill with (among other things) 18 different function pointers
Which Godot will then just call whenever it needs to, for example, in Object::get() it'll call the _extension->get function pointer, which is one of the ones passed on GDExtensionClassCreationInfo3
So, if the extension implemented in RISC-V can get function pointers and pass them to Godot that we can just call like normal function pointers, that should be fairly straight-forward to add to Godot
If they need to be called in a special way, though, then it'll require deeper changes, and it'd be tricky to make those changes in such a way that could be merged upstream

I think this can be closed @fwsGonzo


Dubbo 2.7.0的provider无法指定客户端默认async

[x] I have searched the issues of this repository and believe that this is not a duplicate.
[x] I have checked the FAQ of this repository and believe that this is not a duplicate.

Environment

Dubbo version: 2.7.0
Operating System version: macOS Sierra 10.12
Java version: 1.8.0_111

Steps to reproduce this issue

start provider and specific async as true, <dubbo:service interface="" async="true">
start consumer without async specific.
send a request

Pls. provide [GitHub address] to reproduce this issue.
Expected Result
What do you expected from the above steps？
We are able to get the value from the CompletableFuture.
service.sayHello(input);
CompletableFuture future = RpcContext.getContext().getCompletableFuture();
future.whenComplete((retValue, error) -> {
System.out.println(retValue);
});
Actual Result
What actually happens?
It throws NPE exception as following, as we are not able to get the future.
Exception in thread "main" java.lang.NullPointerException
With investigation, it's an issue in RegistryDirectory.
Also, we are able to get async=true from providerUrl, but the querymap's async is false from consumer side. It changed the async from true to false, and caused the issue.
private URL mergeUrl(URL providerUrl) {
providerUrl = ClusterUtils.mergeUrl(providerUrl, queryMap);
}
If there is an exception, please attach the exception trace:
Just put your stack trace here!

This is a normal result.
The asynchronous side of the server should of course not affect the client.

Once provider upgrade to 2.7.0, invoke be changed from async to sync, that means client cannot get result from context future.
Also, what will the async config for in provider side?

Once provider upgrade to 2.7.0, invoke be changed from async to sync
I don't get your point..  Why does upgrading to 2.7 change from synchronous to asynchronous?
Also, what will the async config for in provider side?
<dubbo:service interface="..." async="true"> is enough

Provider 2.5.x, consumer 2.5.x, provider specific async, consumer keeps default.
<dubbo:service interface="..." async="true">
<dubbo:reference interface="...">
For consumer, they have to get value from RpcContext.
client.sayHello() returns null.
RpcContext.getContext.getFuture() returns value.
Provider 2.7.0, consumer 2.5.x, provider speicif async, consumer keeps default.
<dubbo:service interface="..." async="true">
<dubbo:reference interface="...">
For consumer, the value form RpcContext is null, this is incompatible.
client.sayHello() returns value.
RpcContext.getContext.getFuture() returns null.

Got it.
In the new version (2.7.x), the asynchronous of the provider and consumer is isolated. However, in the old version, consumer asynchronous and provider asynchronous are still bound.
It seems that we should use the version number to determine whether Constants.ASYNC_KEY is transparent to the client? @chickenlj what do you say?

Is provider async redundancy as we are able to return CompletableFuture?
It's sync for provider.
String sayHello(String msg);
It's async for provider.
Completable sayHello(String msg);

Is provider async redundancy as we are able to return CompletableFuture?
It's sync for provider.
String sayHello(String msg);
It's async for provider.
Completable sayHello(String msg);

AsyncContext is mainly designed for  String sayHello(String msg);, to make sync methods being able to achieve async on provider side.

<dubbo:service interface="..." async="true">

Provider should not be configured to allow async, user should be able to decide they want async or sync when programming without any precondition, that's what Dubbo guaranteed now.
So I think what we should do is to remove async="true" property from <dubbo:service/>.

For async, it's reasonable to remove it from dubbo:service/. But, are we going to remove timeout and retries also? Provider should be clear about the timeout and idempotency, then consumer. For these two keys should be kept, provider should have default values for consumer.

之前，服务端设置的timeout/retries/loadbalance/actives/weight/connections/async/cluster等参数，在客户端没有设置的情况下会应用服务端的设置。现在，服务端对客户端的配置都不会生效。
代码：RegistryDirectory在mergeUrl的时候，会用客户端的queryMap更新providerUrl，所以导致服务端的配置都被丢了。
private URL mergeUrl(URL providerUrl) {
providerUrl = ClusterUtils.mergeUrl(providerUrl, queryMap);
}

都是中国人在用，为啥总是说英文，散装英语不如直接写中文啊


Fix parse error of in-line comment

Given
p(1) # prints one
if 1 == 1
end

Got

Error: Error: unexpected token: ModIf

Expected
Prints 1

ModIf is a modifier if. For example:
if x == 0              # <- KwIf
  puts "ok" if y == 0  # <- ModIf
end

Shouldn't we pass Some(LexerState::ExprBegin) instead of None same as for CharType::Separator?

Sounds good! But there is a difference between Separator and Comment.
This program is syntax error
p 123 + ;

but this is valid
p 123 +  # comment
    345

Sorry I meant this.
p 123  # comment
    + 345

@AI-Mozi Yeah but could you make a PR for that fix? I've found current parser does not accept this, so it will be just better than now.
p 123  # comment
    + 345


Sourcemap wrong lines - webpack

It looks like that sass-loader is generating a sourcemap which point out wrong lines.
I am not sure if it is a bug or a bad rule configuration however, after a long few days looking for a answer I was not able to find and solution.
Here a example of what is wrong, it is possible to see on first screenshot my css on line 12 is point out by the source map at line 6.

Could you please guys help me out to get what could be wrong here?

Operating System: Ubuntu 18.04
Node Version: 10.15.3
NPM Version: 6.9.0
webpack Version: 4.29.6
sass-loader Version: 7.1.0

Code - webpack - Sass rules
	// Docs SASS files
	{
		test: /[\\/]dev-tools[\\/]docs[\\/].+\.scss$/,
		use: [
			MiniCssExtractPlugin.loader,
			{
				loader: 'css-loader',
				options: {
					sourceMap: true
				}
			},
			{
				loader: 'resolve-url-loader',
				options: {
					sourceMap: true
				}
			},
			{
				loader: 'sass-loader',
				options: {
					sourceMap: true
				}
			}
		]
	},

This might be related to this project, but you've given version info for https://github.com/webpack-contrib/sass-loader/issues
sass-loader can also use dart-sass, so it might not be compiling with node-sass at all

I found the solution and this can help others.
I just added the `outputStyle: 'compressed'  in sass-loader, so my config is like that:
{
	loader: 'sass-loader',
	options: {
		outputStyle: 'compressed',
		sourceMap: true,
	}
}

I am sure that there are many other developers facing the same issue.

@nschonni I have try to warning that sass-loader guys without any success. They just need to change a line in README. That is so sad when people are not make any effort to help others developers. Any way, tks for your help :-).
https://github.com/webpack-contrib/sass-loader/pull/690

I found the solution and this can help others.
I just added the `outputStyle: 'compressed' in sass-loader, so my config is like that:
{
	loader: 'sass-loader',
	options: {
		outputStyle: 'compressed',
		sourceMap: true,
	}
}

I am sure that there are many other developers facing the same issue.

I also tried this configuration, but some selectors are normal, some selectors are not normal

Some weird things can happen when using css-loader and sass-loader with sourcemaps. I'm not sure if this is going wrong in node-sass or sass-loader but this seems like the most relevant place to leave it:
When outputStyle is not set to 'compressed' source contents and paths (under the sources property in the sourcemap) are included twice.
Furthermore, the second source path (generated by sass-loader) mistakenly adds the relative file directory (relative to the project root that is) for a second time. Example:
sources: [
  "/Users/admin/Desktop/devsync-test-setups/webpack-test/src/styles/index.scss"
  "/Users/admin/Desktop/devsync-test-setups/webpack-test/src/styles/src/styles/index.scss"
]

When outputStyle is not set to 'compressed' only the second path is included.


New collective navigation: empty contributions section

For type USER if they don't have any activity on their profile, CONTRIBUTIONS section is showing up in the navbar but not being rendered.
This is both with or without the NEW_COLLECTIVE_NAVBAR feature flag.

It's related to the "Hibernating in the north pole" issue. More info here: https://github.com/opencollective/opencollective/issues/3473#issuecomment-701930591

Right! I see. There are lots of 'empty section' designs in the Figma. I was having trouble thinking of when to implement those but perhaps now is a good time.


Block notifications are too slow

Block construction can even start long before import notification has been handled
In the log under heavy load, I see this, for example:
2020-06-02 17:42:50.210 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 60. Hash now 0xeb41046e92fbcfa063bc0ffd40a5e6f90be8eb1caf59e66b4cd68f75948e019a, previously 0x559e63f0081a31c839be351f11d75b4435f1001c139ac37809a0aece3f236396.
2020-06-02 17:42:51.8 tokio-runtime-worker INFO sc_basic_authorship::basic_authorship  🙌 Starting consensus session on top of parent 0xeb41046e92fbcfa063bc0ffd40a5e6f90be8eb1caf59e66b4cd68f75948e019a
Block proposer started ^^^
2020-06-02 17:42:52.332 tokio-runtime-worker TRACE txpool  Processing block #BlockId::Hash(0xeb41046e92fbcfa063bc0ffd40a5e6f90be8eb1caf59e66b4cd68f75948e019a) in the transaction pool. Retracted: []
Transaction pool received import event 1s+ later (Should be before proposer starts) ^^^

These are asynchronous events. Sounds like a suspected event on high load, that some tasks could receive events later than some others.

This should be on fast track somehow
Otherwise block production is crippled. Every other block is half empty because all that block proposer does is invalidating transaction pool.

Where did you captured this output? How many nodes are running?

Just one, so it's sort of dummy example, but it exposes pipeline problem.
I suspect the same will apply if node imports block from network, heavy loaded by network/rpc/transactions and will be crippled to produce own block.

Where did you captured this output?

just have run sub-bench against local default --dev node

Hmm, why is the block ready, one second before we start the next round? Maybe there is a bug in the proposer?

Where?
(1) Best block (0xeb41046e92fbcfa063bc0ffd40a5e6f90be8eb1caf59e66b4cd68f75948e019a) at 17:42:50.210`
(2) Starting building new best block at +1.6s (at 17:42:51.8)
(3) Import event about first block (0xeb41046e92fbcfa063bc0ffd40a5e6f90be8eb1caf59e66b4cd68f75948e019a) handled at +2.1s (at 17:42:52.332)
Between (1) and (2) ?

Yes. 6 seconds block time means you have 2 seconds for building the block. The import should be instant, as we just need to apply the changes (the log line line (1) is even printed before the actual import) and than we still should have 3 seconds before we build the next block.

It appears to be 3s block time for --dev chain
2020-06-03 08:49:57.019 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 56. Hash now 0x1b7e4908ae0423dbce9cbe2fe51acc94275d9a25ef985b98a1d027bc476682c8, previously 0xfa4fa5648c71c3daf068d591986b9ed3e8cc7c9b0347820ba7507545dae62af9.
2020-06-03 08:50:00.018 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 57. Hash now 0x227a15267b085fafb0a6346a30c8b42032cb0a0043319a6693f1b83e54146867, previously 0x196ddc8659aac31d10fe88c09bb6ef56c4d2aefe79016cf7114ada190fc7a77c.
2020-06-03 08:50:03.022 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 58. Hash now 0xa7e4ebb841c27f92f86e04b6cb92479962d6c8b49f65b59a26560dc32e6c7d6f, previously 0xd73cc22c497202cb7c6e418b6f000cec380fcd025c3e0711d6fda3e116e6b520.
2020-06-03 08:50:06.024 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 59. Hash now 0xc0053feca0d1bf764cf460a20f2725448813271de21f5d12aa5b54c0e1665b5b, previously 0x55d9f5c6d497bef1c04674c20a85a245afa67d71fb63ea2ea3d006a9162d60c5.
2020-06-03 08:50:09.017 tokio-runtime-worker INFO sc_consensus_slots  🔖 Pre-sealed block for proposal at 60. Hash now 0xd0c899f891658caac559c8a54b72fd3d698a5c8998408b12b335c3a4a6619abd, previously 0x86120020d31e1c62fade7181bd605efce252c6e058173300003bcf93d97008f4.


Minimum TFS Version for Multiple version layout

Hi
is there a minimum version of TFS that is required to support the multiple version layout of an extension? I couldn't find any info on this. Background is that I changed my extension to the multiple version layout and it seems to have created a problem at least for a on prem TFS 2017 Update 1 installation.
See as well the following comment in the original issue: https://github.com/huserben/TfsExtensions/issues/90#issuecomment-413777117
If there is a minimum version needed it would be nice to have it in the docs.

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

ID: 83f7acc5-1222-7216-571b-913fa63298e4
Version Independent ID: 15b2e074-4a8d-9ac8-8aa8-56a0c11be534
Content: Custom build/release task reference
Content Source: docs/extend/develop/build-task-schema.md
Product: devops
GitHub Login: @elbatk
Microsoft Alias: elbatk

@willsmythe hey Will, do you know if there is a minimum TFS version requirement to have multiple version layout of an extension?


Facing issue while initializing parameters in tensorflow.

Where i am lacking.
I have already ready tensor flow documentation.
Just tell me what should I do.
tf_version_2.3.0
Thanks!

Hi @starboyvarun
This is not a bug or feature request, Please open these type of  issues in tf discussion forum as there is a larger community there.
initializer = tf.keras.initializers.GlorotNormal()
values = initializer(shape=(2, 2))

print(values.numpy())

Reference :https://www.tensorflow.org/api_docs/python/tf/keras/initializers/GlorotNormal#examples_2
Thank you!

@mohantym I already told you I have read the documentation.
I asked where I am lacking.
you just copying and pasting the code here.
Thanks!.

Hi @starboyvarun !This is not a bug or feature request, for any further queries you may open this issue in tf discussion forum as there is a larger community there.Thank you!


Compilation error in arm processor

g++ -c -fno-exceptions -Iinclude/ source/scale_neon64.cc -o source/scale_neon64.o
/tmp/ccsKoCAr.s: Assembler messages:
/tmp/ccsKoCAr.s:710: Error: operand mismatch -- mov v0.8h,v4.8h' /tmp/ccsKoCAr.s:710: Info:    did you mean this? /tmp/ccsKoCAr.s:710: Info:      mov v0.8b,v4.8b /tmp/ccsKoCAr.s:710: Info:    other valid variant(s): /tmp/ccsKoCAr.s:710: Info:      mov v0.16b,v4.16b /tmp/ccsKoCAr.s:711: Error: operand mismatch -- mov v1.8h,v5.8h'
/tmp/ccsKoCAr.s:711: Info:    did you mean this?
/tmp/ccsKoCAr.s:711: Info:      mov v1.8b,v5.8b
/tmp/ccsKoCAr.s:711: Info:    other valid variant(s):
/tmp/ccsKoCAr.s:711: Info:      mov v1.16b,v5.16b
/tmp/ccsKoCAr.s:761: Error: operand mismatch -- mov v2.8h,v0.8h' /tmp/ccsKoCAr.s:761: Info:    did you mean this? /tmp/ccsKoCAr.s:761: Info:      mov v2.8b,v0.8b /tmp/ccsKoCAr.s:761: Info:    other valid variant(s): /tmp/ccsKoCAr.s:761: Info:      mov v2.16b,v0.16b /tmp/ccsKoCAr.s:821: Error: operand mismatch -- mov v0.8h,v2.8h'
/tmp/ccsKoCAr.s:821: Info:    did you mean this?
/tmp/ccsKoCAr.s:821: Info:      mov v0.8b,v2.8b
/tmp/ccsKoCAr.s:821: Info:    other valid variant(s):
/tmp/ccsKoCAr.s:821: Info:      mov v0.16b,v2.16b
/tmp/ccsKoCAr.s:827: Error: operand mismatch -- mov v0.8h,v4.8h' /tmp/ccsKoCAr.s:827: Info:    did you mean this? /tmp/ccsKoCAr.s:827: Info:      mov v0.8b,v4.8b /tmp/ccsKoCAr.s:827: Info:    other valid variant(s): /tmp/ccsKoCAr.s:827: Info:      mov v0.16b,v4.16b /tmp/ccsKoCAr.s:830: Error: operand mismatch -- mov v0.8h,v4.8h'
/tmp/ccsKoCAr.s:830: Info:    did you mean this?
/tmp/ccsKoCAr.s:830: Info:      mov v0.8b,v4.8b
/tmp/ccsKoCAr.s:830: Info:    other valid variant(s):
/tmp/ccsKoCAr.s:830: Info:      mov v0.16b,v4.16b
/tmp/ccsKoCAr.s:831: Error: operand mismatch -- mov v1.8h,v5.8h' /tmp/ccsKoCAr.s:831: Info:    did you mean this? /tmp/ccsKoCAr.s:831: Info:      mov v1.8b,v5.8b /tmp/ccsKoCAr.s:831: Info:    other valid variant(s): /tmp/ccsKoCAr.s:831: Info:      mov v1.16b,v5.16b /tmp/ccsKoCAr.s:1082: Error: operand mismatch -- mov v0.8h,v4.8h'
/tmp/ccsKoCAr.s:1082: Info:    did you mean this?
/tmp/ccsKoCAr.s:1082: Info:     mov v0.8b,v4.8b
/tmp/ccsKoCAr.s:1082: Info:    other valid variant(s):
/tmp/ccsKoCAr.s:1082: Info:     mov v0.16b,v4.16b
/tmp/ccsKoCAr.s:1083: Error: operand mismatch -- `mov v1.8h,v5.8h'
/tmp/ccsKoCAr.s:1083: Info:    did you mean this?
/tmp/ccsKoCAr.s:1083: Info:     mov v1.8b,v5.8b
/tmp/ccsKoCAr.s:1083: Info:    other valid variant(s):
/tmp/ccsKoCAr.s:1083: Info:     mov v1.16b,v5.16b
linux.mk:64: recipe for target 'source/scale_neon64.o' failed
make: *** [source/scale_neon64.o] Error 1

Please submit your issue upstream:
https://chromium.googlesource.com/libyuv/libyuv/
This repository is just an unofficial mirror.


I don't understand 'm' flag! error when "make vpmac"

Hi Jonathan:
I was following your instructions on how to install VPfit on Mac, which works perfectly
fine until I get the following error. Any ideas how to solve this problem?
(I am using OS X version: Sierra 10.12.3)
:make vpmac
/usr/local/Cellar/gcc/6.3.0_1/bin/gfortran -O -Wall   -c -o vpgti.o vpgti.f
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
make: *** [vpgti.o] Error 1
Attached is my Makefile (as .txt)
Makefile.txt
Thanks you very much and cheers,
Jan

Solved by using the g77 compiler!

Glad you got this worked out!

Hi Jonathan
I am also trying to install vpfit on my mac os sierra,  by simply using the "make vpmac" command after installing the cfitsio and pgplot via macport. I exactly get the same error as Jan received.
By using g77 instead of gfortran, I get the follwoing error:
g77 -O -Wall  -c -o vp_errej.o vp_errej.f
g77 -O -Wall  -c -o vp_ewred.o vp_ewred.f
vp_ewred.f: In subroutine `vp_ewred':
vp_ewred.f:97:
open(unit=18,file=atomdr,status='OLD',
^
Unsupported OPEN control item at (^) -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported
vp_ewred.f:105:
open(unit=18,file=atomdr,status='OLD',position='REWIND',
^
Unsupported OPEN control item at (^) -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported
vp_ewred.f:108:
open(unit=18,file=atomdr,status='OLD',position='REWIND',
^
Unsupported OPEN control item at (^) -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported
vp_ewred.f:117:
open(unit=18,file=atomdr,status='OLD',position='REWIND',
^
Unsupported OPEN control item at (^) -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported
vp_ewred.f:149:
open(unit=18,file=filnm,status='OLD',position='REWIND',err=99)
^
Unsupported OPEN control item at (^) -- ACTION=, ASSOCIATEVARIABLE=, BLOCKSIZE=, BUFFERCOUNT=, CARRIAGECONTROL=, DEFAULTFILE=, DELIM=, DISPOSE=, EXTENDSIZE=, INITIALSIZE=, KEY=, MAXREC=, NOSPANBLOCKS, ORGANIZATION=, PAD=, POSITION=, READONLY=, RECORDTYPE=, SHARED=, and USEROPEN= are not supported
make: *** [vp_ewred.o] Error 1
Any idea?
Thanks
Harry

First guess is that macports and homebrew are installing cfitsio/pgplot into different paths.

Hi Jonathan
IT was like a conflict between macports and brew. I redid everything and it works now. I need to do some practice with vpfit and rdgen. Is there any RD PRSETUP RDSTART  and VPFSETUP sample file and any tutorial material to start with.

Glad to hear that it works now -- the best documentation that I've found
for these are the pdf manuals themselves here:
https://www.ast.cam.ac.uk/~rfc/vpfit.html
--
Jonathan Whitmore, PhD
Web: JonathanWhitmore.com http://jonathanwhitmore.com/
US (Google Voice): +1<PHONE_NUMBER>
On Fri, Apr 28, 2017 at 1:22 PM, harrycosmos<EMAIL_ADDRESS>wrote:

Hi Jonathan
IT was like a conflict between macports and brew. I redid everything and
it works now. I need to do some practice with vpfit and rdgen. Is there any
RD PRSETUP RDSTART and VPFSETUP sample file and any tutorial material to
start with.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/jbwhit/til/issues/3#issuecomment-298097479, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAGdZU0ifckbqhUJnTPDNt4vwIkhOGw_ks5r0kptgaJpZM4Lt0aQ
.


How can we reach the cpx-ingress-controller on 443 ?

Hello,
We used the helm chart nsic-v1.43.7 to deploy an netscaler-ingress-controller and netscaler-cpx-with-ingress-controller linked to a Netscaler.
We want to use SSL between the Netscaler and the CPX inside the Kubernetes (security prerequisites from our sec team)
How could we do that ? The cpx pod doesn't seem to listen to 443 at all.
Thanks.

hi @mleneveut ,
Ports 80 and 443 of CPX service are exposed. While deploying in the Kubernetes, you can expose the service of CPX as type NodePort. The NetScaler Ingress Controller ( NSIC) configuring the NetScaler will automatically updates the IP and Port for CPX ( NodeIP and NodePort of the node where CPX pod is running), if you provided CPX service as backend service in Ingress YAML.
To expose service of CPX as NodePort:
https://github.com/netscaler/netscaler-helm-charts/tree/master/netscaler-cpx-with-ingress-controller#netscaler-cpx-servicetype-nodeport
Sample Ingress for configuring NetScaler.
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
  name:  netingress
  annotations:
    ingress.citrix.com/frontend-ip: <VIP>
spec:
  ingressClassName: <ingressclass>
  tls:
    - hosts:
        - <host>
       secretName: <TLS Secret >
  rules:
    - host: <host>
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: <service name of CPX>
                port:
                  number: 443

Thanks for your answer @subashd
I filled the questionnaire.
We would like to call this Ingress on 443 so that the request from Netscaler to CPX is secured :
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    ingress.citrix.com/frontend-ip: 10.x.x.15
    ingress.citrix.com/secure-service-type: ssl
    ingress.citrix.com/secure_backend: "True"
  name: cpx-ingress
  namespace: netscaler
spec:
  ingressClassName: tier-1-vpx
  rules:
  - host: testapp.mycomp.com
    http:
      paths:
      - backend:
          service:
            name: netscaler-cpx-with-ingress-controller-cpx-service
            port:
              number: 443
        path: /
        pathType: Prefix
  tls:
  - secretName: testapp-tls-secret

But the netscaler-cpx-with-ingress-controller-cpx-service then tries to reach the netscaler-cpx-with-ingress-controller pod on port 443 and it doesn't work, as this pod only listens to 80. We have a connection reset when calling https://testapp.mycomp.com
The netscaler-cpx-with-ingress-controller-cpx-service is exposed with NodePort :
spec:
  clusterIP: <IP_ADDRESS>
  clusterIPs:
  - <IP_ADDRESS>
  externalTrafficPolicy: Cluster
  internalTrafficPolicy: Cluster
  ipFamilies:
  - IPv4
  ipFamilyPolicy: SingleStack
  ports:
  - name: http
    nodePort: 30868
    port: 80
    protocol: TCP
    targetPort: 80
  - name: https
    nodePort: 31963
    port: 443
    protocol: TCP
    targetPort: 443
  selector:
    app: netscaler-cpx-with-ingress-controller
  sessionAffinity: None
  type: NodePort

To have a secured connection between Netscaler and CPX we want to use the 31963 port in Netscaler (the service group member use the nodePort 31963)
If we set the CPX ingress to :
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    ingress.citrix.com/frontend-ip: 10.x.x.15
    ingress.citrix.com/secure-service-type: ssl
    ingress.citrix.com/secure_backend: "True"
  name: cpx-ingress
  namespace: netscaler
spec:
  ingressClassName: tier-1-vpx
  rules:
  - host: testapp.mycomp.com
    http:
      paths:
      - backend:
          service:
            name: netscaler-cpx-with-ingress-controller-cpx-service
            port:
              number: 80
        path: /
        pathType: Prefix
  tls:
  - secretName: testapp-tls-secret

all is green in Netscaler but it uses the nodePort 80:31357/TCP.
What configuration would create all Netscaler resource as SSL and using a ServiceGroup Member using 443:30323/TCP NodePort to enter the cluster ?

hi @mleneveut,
Could you please share the log from the NetScaler ingress controller which is configuring the NetScaler?
You can mail to<EMAIL_ADDRESS>

@mleneveut
Will review and update the document.


[DO NOT MERGE] Add enterprise upload capability

Allows for a user to upload the SBOM results to enterprise:
syft <image> -h <enterprise host> -u <username> -p <password>

These options can also be provided via configuration or environment variables:
export SYFT_ANCHORE_HOSTNAME=https://somehost
export SYFT_ANCHORE_USERNAME=joe
export SYFT_ANCHORE_PASSWORD=foobar

syft <image>
# analysis + upload

If done this way, the user can keep the config / env vars set and still control if upload is enabled:
export SYFT_ANCHORE_HOSTNAME=https://somehost
...
export SYFT_ANCHORE_UPLOAD_ENABLED=false

syft <image>
# analysis and no upload

Additionally a user can optionally provide a dockerfile as well:
syft <image> -h <host> --dockerfile <path to dockerfile>

What's remaining:

ETUI and logging output needs to be added to reflect the upload process / status / result
README update with the new options
Possibly add a json schema version indicated to enterprise during upload (and handle gracefully the "deny" path here)
Should we upload docker history when available if no dockerfile is available? This requires coordination with engine on the data shape here (or how to interpret otherwise)

Closes #38

One small comment on UX — would it be possible to change -h to -H (or something) for the host argument? I think a good number of folks assume they can rely on -h for help (and this is currently true for our tools).

@luhring good call, let's change this to -H


Increase coverage for helpers and bank account

Current coverage is 100.00%

Merging #6 into master will increase coverage by +1.26% as of 3a23793

@@            master      #6   diff @@
======================================
  Files            5       5
  Stmts          559     559
  Branches         2       0     -2
  Methods
======================================
+ Hit            552     559     +7
+ Partial          2       0     -2
+ Missed           5       0     -5

Review entire Coverage Diff as of 3a23793

Powered by Codecov. Updated on successful CI builds.


Basic example not working with React 16.2+

Windows, Node.js 9.2, Yarn 1.3.2
Console log:
yarn start
yarn run v1.3.2
$ razzle start
 WAIT  Compiling...

 ERROR  Failed to compile CLIENT with 18 errors

./src/client.js
Module not found: Can't resolve 'react' in '...\basic\src'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/index.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib'

 ERROR  Failed to compile CLIENT with 18 errors

./src/App.js
Module not found: Can't resolve 'react' in '...\basic\src'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/CompileErrorContainer.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/RuntimeErrorContainer.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/RuntimeError.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/Footer.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/ErrorOverlay.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/Header.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/CodeBlock.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/CloseButton.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/NavigationBar.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./src/client.js
Module not found: Can't resolve 'react-dom' in '...\basic\src'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/index.js
Module not found: Can't resolve 'react-dom' in '...\basic\node_modules\react-error-overlay\lib'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/StackTrace.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/StackFrame.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/components/Collapsible.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\components'

 ERROR  Failed to compile CLIENT with 18 errors

./node_modules/react-error-overlay/lib/containers/StackFrameCodeBlock.js
Module not found: Can't resolve 'react' in '...\basic\node_modules\react-error-overlay\lib\containers'

I get the following errors if I am using Razzle version 0.7.6-rc2:
DONE  Compiled successfully

Your application is running at http://<IP_ADDRESS>:80

module.js:544
    throw err;
    ^

Error: Cannot find module 'react'
    at Function.Module._resolveFilename (module.js:542:15)
    at Function.Module._load (module.js:472:25)
    at Module.require (module.js:585:17)
    at require (internal/module.js:11:18)
    at Object.react (...\build\server.js:822:18)
    at __webpack_require__ (...\build\server.js:630:30)
    at fn (...\build\server.js:48:20)
    at eval (webpack-internal:///./src/server.js:8:64)
    at Object../src/server.js (...\build\server.js:729:1)
    at __webpack_require__ (...\build\server.js:630:30)
 ERROR  Failed to compile CLIENT with 1 errors

./src/client.js
Module not found: Can't resolve 'react-dom' in '...\src'

Also the node_modules/react and node_modules/react-dom folders are missing some files.

Sorry for reporting this. This is potentially an issue with @yarnpkg as the installation or the upgrade process works with npm.


Fix for issue #773 - Numlock not sync'ed

I found that mstsc seems to respond to a server TsControlPDU, TS_PDUTYPE_DATAPDU Granted Control message by sending an additional sequence of TsInputPDU packets to ensure that the toggled key states are set correctly. Doing the same with xfreerdp seems to fix the issue, obviously something similar needs to be done for the other supported FreeRDP platforms, but I cannot do this

@Nigel62 Can you explain why tab up need to be send? I'm trying to figure out why MSTSC is doing this... I know it's been a long time since you wrote this but it would really help me out!


tcc crashes opening unfoldingWord/en_twl/en_SNG.tsv

Story Explanation
User Story
tcc crashes opening unfoldingWord/en_twl/en_SNG.tsv
I was able to reproduce this on my PC. There is a crash in the console:

Features / Specifications

[ ]
[ ]
[ ]

Definition of Done

[ ]
[ ]
[ ]

Additional Context
Mockups

this is a duplicate of #1596


build failing on node V7.5.0

I think it's something wrong with my repo, sorry!

No problem! Feel free to keep the original post and reply with another comment, it may be helpful to others.


Missing 'Keybase' icon

Feature Request
Add icon for 'Keybase', which is a free icon in FontAwesome 5.
https://fontawesome.com/icons?d=gallery&q=keybase&s=brands&m=free
Problem description
I have an issue when attempting to use the keybase icon, where no icon is displayed.
import { Icon } from 'semantic-ui-react';
...
render() {
    return (<Icon name="keybase" size='big' link/>)
}
...

I have had a look through the following file, and I could not see 'keybase' listed either.
https://github.com/Semantic-Org/Semantic-UI-React/blob/master/src/lib/SUI.js
My current dependencies are:
"semantic-ui-react": "^0.83.0"
"react": "^16.6.0"
"react-dom": "^16.6.0"

Comments
I'm unsure of the entire steps to add a new icon, whether it is just a one line change, or if there is other steps involved.
It may be that 'keybase' wasn't included in v5.0.8 of Font Awesome when the port was completed.
Please and Thank you 🙇

This icon is not present in SUI CSS (https://github.com/Semantic-Org/UI-Icon/blob/master/icon.css), so we can't use it there, see https://github.com/Semantic-Org/Semantic-UI/issues/6395


How to revoke a token for google oauth?

Hello,
Reading the google docs (https://developers.google.com/identity/protocols/OAuth2WebServer#callinganapi), it says i can revoke token (and thus force a login with credentials) by calling credentials.revoke.
What would be the flask-oathlib way to do this?

Hi,
I think you can do it with revoke_token.
Hope it helps!

@eriknguyen that is for provider.
@saptarshiguha just send a POST request as Google says.