msal-node: Electron (v20) / create-react-app (5) : ClientAuthError: endpoints_resolution_error: Error: could not resolve endpoints. Please check network and try again.

Core Library
MSAL Node (@azure/msal-node)
Core Library Version
1.12.1
Wrapper Library
Not Applicable
Wrapper Library Version
None
Public or Confidential Client?
Public
Description
I'm getting the following error:
ClientAuthError: endpoints_resolution_error: Error: could not resolve endpoints. Please check network and try again. Detail: ClientAuthError: openid_config_error: Could not retrieve endpoints. Check your authority and verify the .well-known/openid-configuration endpoint returns the required endpoints. Attempted to retrieve endpoints from: https://sectaurapac.b2clogin.com/sectaurapac.onmicrosoft.com/b2c_1_sectaursignupsignin/v2.0/.well-known/openid-configuration
when setting up and invoking the PublicClientApplication.getAuthCodeUrl() method.
MSAL is being used to authenticate in a Desktop Electron App (with React).
The code with the same endpoints works with an older version, so ClientID and auth params are fine.
I have also "Allowed Public Client Flows" in Azure Portal.
I have also verified the end point by entering in browser which returns the relevant object:
https://{tenant_id}/{tenant_id}/b2c_1_<correct_policy>/v2.0/.well-known/openid-configuration

but I am unable to debug this any further. How can I find the specific cause for this error ?
I am presuming this is a bug as it works on older set up:
Works (taken from package.JSON):
...
"@azure/msal-node": "^1.3.1",
"react": "^16.14.0",
"react-scripts": "4.0.3"
...
Current set up (CRA5 required polyfill override based on this article - https://www.alchemy.com/blog/how-to-polyfill-node-core-modules-in-webpack-5)

Package.JSON
{
  "name": "cra5polyfill",
  "version": "0.1.0",
  "private": true,
  "main": "./public/electron.js",
  "homepage": "./",
  "dependencies": {
    "@azure/msal-node": "^1.12.1",
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/react": "^13.0.0",
    "@testing-library/user-event": "^13.2.1",
    "assert": "^2.0.0",
    "buffer": "^6.0.3",
    "crypto-browserify": "^3.12.0",
    "https-browserify": "^1.0.0",
    "os-browserify": "^0.3.0",
    "process": "^0.11.10",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-scripts": "5.0.1",
    "stream-browserify": "^3.0.0",
    "stream-http": "^3.2.0",
    "url": "^0.11.0",
    "util": "^0.12.4",
    "web-vitals": "^2.1.0"
  },
  "scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test",
    "eject": "react-scripts eject",
    "electron:start": "concurrently -k \"cross-env BROWSER=none yarn start\" \"wait-on http://localhost:3000 && electron .\"",
    "build:local:mac": "yarn build && electron-builder -m -c.extraMetadata.main=build/electron.js"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "build": {
    "appId": "org.TestApplication",
    "productName": "Test",
    "publish": {
      "provider": "github",
      "token": "dffgfgfgfgdfgdfgfdgfdg"
    },
    "files": [
      "build/**/*",
      "node_modules/**/*"
    ],
    "directories": {
      "buildResources": "public"
    },
    "mac": {
      "target": "dmg",
      "hardenedRuntime": true,
      "gatekeeperAssess": false,
      "entitlements": "public/entitlements.mac.plist",
      "entitlementsInherit": "public/entitlements.mac.plist"
    },
    "afterSign": "./notarize.js",
    "dmg": {
      "sign": false
    }
  },
  "devDependencies": {
    "concurrently": "^7.3.0",
    "cross-env": "^7.0.3",
    "dotenv": "^16.0.1",
    "electron": "^20.1.0",
    "electron-builder": "^23.3.3",
    "electron-notarize": "^1.2.1",
    "react-app-rewired": "^2.2.1",
    "wait-on": "^6.0.1"
  }
}

Any help would be much appreciated.
MSAL Configuration
const authorizationOptions = {
  clientId: process.env.REACT_APP_B2C_CLIENT_ID,
  authority: process.env.REACT_APP_B2C_AUTHORITY,
  knownAuthorities: [process.env.REACT_APP_B2C_KNOWN_AUTHORITIES]
};

const authCodeUrlParameters = {
  scopes: [],
  redirectUri: process.env.REACT_APP_REDIRECT_URI,
};

(REACT_APP_REDIRECT_URI=https://{tenant_id}/oauth2/nativeclient)

const authCodeRequest = {
  redirectUri: process.env.REACT_APP_REDIRECT_URI,
  scopes: [],
};

const MSAL_CONFIG = {
  auth: authorizationOptions,
  system: {
    loggerOptions: {
      loggerCallback(level: LogLevel, message) {
        switch (level) {
          case (LogLevel.Error):
            console.log(message)
        }
      },

    },
  },
};

Relevant Code Snippets
const AuthProvider = () => {

  const [authClient, setAuthClient] = useState()

  const showAuthClient = () => {
    console.log(authClient)
  }

  const getTokenInteractive = async (requestParams) => {

      try {
      // Generate PKCE Challenge and Verifier
      const cryptoProvider = new CryptoProvider();
      const { challenge, verifier } = await cryptoProvider.generatePkceCodes();

       // Add PKCE params to AuthCodeUrl request (passed to getAuthCodeUrl method)
      const authCodeUrlParams = {
         ...requestParams,
         prompt: "login",
        scopes: requestParams.scopes,
        codeChallenge: challenge,
       codeChallengeMethod: "S256",
     };
  const authCodeUrl = await authClient.getAuthCodeUrl(authCodeUrlParams);
 } catch (error) {console.log(error)}

  }
  useEffect(() => {
    const client = new PublicClientApplication(MSAL_CONFIG);
    setAuthClient(client);
  }, []);

  return (

Hello JS !!!

      <button onClick={showAuthClient}>AuthClient</button>
      <button className="border-3-blue" onClick={()=> {getTokenInteractive(authCodeUrlParameters)}}>getToken</button>

  );
};

export default AuthProvider;

Identity Provider
Azure B2C Basic Policy
Source
External (Customer)

@RadIsACoder What version does your package-lock say is installed when it does work? Have you looked at your network requests to see if you can determine why the call to the well-known endpoint is failing?

Hi Thomas,
Nothing I'm afraid. Screenshot attached.

Exact steps to reproduce:
Node v18.3.0
yarn create react-app msal-cra5-test
yarn start .. No problems on localhost:3000
yarn add @azure/msal (adds v."1.12.1")
create src/Auth.js
import React, { useEffect, useState } from "react";
import {
  PublicClientApplication,
  LogLevel,
  CryptoProvider,
} from "@azure/msal-node";

const authorizationOptions = {
  clientId: process.env.REACT_APP_B2C_CLIENT_ID,
  authority: process.env.REACT_APP_B2C_AUTHORITY,
  knownAuthorities: [process.env.REACT_APP_B2C_KNOWN_AUTHORITIES],
};

const authCodeUrlParameters = {
  scopes: [],
  redirectUri: process.env.REACT_APP_REDIRECT_URI,
};

const authCodeRequest = {
  redirectUri: process.env.REACT_APP_REDIRECT_URI,
  scopes: [],
};

const MSAL_CONFIG = {
  auth: authorizationOptions,
  system: {
    loggerOptions: {
      loggerCallback(level, message) {
        switch (level) {
          case LogLevel.Error:
            console.log(message);
        }
      },
    },
  },
};

const AuthProvider = () => {
  const [authClient, setAuthClient] = useState();

  const showAuthClient = () => {
    console.log(authClient);
  };

  const getTokenInteractive = async (requestParams) => {
    try {
      // Generate PKCE Challenge and Verifier
      const cryptoProvider = new CryptoProvider();
      const { challenge, verifier } = await cryptoProvider.generatePkceCodes();

      // Add PKCE params to AuthCodeUrl request (passed to getAuthCodeUrl method)
      const authCodeUrlParams = {
        ...requestParams,
        prompt: "login",
        scopes: requestParams.scopes,
        codeChallenge: challenge,
        codeChallengeMethod: "S256",
      };

      const authCodeUrl = await authClient.getAuthCodeUrl(authCodeUrlParams);

      console.log(authCodeUrl);
    } catch (error) {
      console.log(error);
    }
  };

  useEffect(() => {
    if (!authClient) {
      const client = new PublicClientApplication(MSAL_CONFIG);

      setAuthClient(client);
    }
  }, []);

  return (

Hello World

      <button onClick={showAuthClient}>AuthClient</button>
      <button
        className="border-3-blue"
        onClick={() => {
          getTokenInteractive(authCodeUrlParameters);
        }}
      >
        getToken
      </button>

  );
};

export default AuthProvider;

index.js
import React from "react";
import ReactDOM from "react-dom/client";
import "./index.css";
import App from "./App";
import Auth from "./Auth";
import reportWebVitals from "./reportWebVitals";

const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(
  <React.StrictMode>
    {/* <App /> */}
    <Auth />
  </React.StrictMode>
);

Results in ...
ERROR in<EMAIL_ADDRESS>3:0-24
Module not found: Error: Can't resolve 'http' in '/Users/XX/Desktop/cra5msal/node_modules/@azure/msal-node/dist'
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.
If you want to include a polyfill, you need to:
- add a fallback 'resolve.fallback: { "http": require.resolve("stream-http") }'
- install 'stream-http'
If you don't want to include a polyfill, you can use an empty module like this:
resolve.fallback: { "http": false }....
Then follow exact process outlined here:
(https://www.alchemy.com/blog/how-to-polyfill-node-core-modules-in-webpack-5)
... No AuthCodeUrl ...
PublicClientApplication instance is created though.
Also note its working with React Scripts 4
Thanks again

I was also hopeful when I used MSAL React, which made things much easier ( and worked) but it wouldn’t run when integrating with Electron.
This is unexpected as the components in Electron are simply being rendered using JS / JSX. The Node engine is completely isolated from the renderer and running in a different process.

@RadIsACoder Did you try following the instructions in the error message to provide polyfills? We recently switched to using http instead of axios to make network requests - if that is unavailable in your environment network requests will not work. You may also find our Electron/React sample interesting.

I followed the tutorial (above) to add polyfills.
Have you tried to install using the above steps ? If so, did you get the same error?
Webpack in CRA5 but is hidden so have to add fallbacks as per above to override the config settings.
Thanks for the sample. Will check it out.

Not yet but I'm going through the ElectronReactTestApp. Jut to clarify, whats the exact defintiion of "authority" in theMSAL config.
The example gives
https://login.windows-ppe.net/common/

but another example on MSAL website gives:
authority: `${AAD_ENDPOINT_HOST}/cbe899ec-5f5c-4efe-b7a0-599505d3d54f`,

(authority: `${AAD_ENDPOINT_HOST}/${Tenant_ID}`,

Pretty confusing. Which one is it ?

or is it this one ?
auth: {
    clientId: "<your-clientID>",
    authority: "https://<your-tenant>.b2clogin.com/<your-tenant>.onmicrosoft.com/<your-policyID>",
    knownAuthorities: ["<your-tenant>.b2clogin.com"] // array of URIs that are known to be valid
  }

I am using B2C for my Electron React App but the test Electron React example is for AAD

@Sectaur Authority is the url of the identity provider you are trying to acquire tokens from. All are valid, which you use depends on where your app registration and users reside. Since you're using B2C you should use the last example and fill in the placeholders with your specific tenant and policies

Ok thanks. Will try it out.
Re: Redirect URI - The previous app used "https://${TENANT_NAME}.b2clogin.com/oauth2/nativeclient" and "Allow Public ClientFlows" to "yes".
To access the B2C user Flow, should I use this or "msal4b0db8c2-9f26-4417-8bde-3f0e3656f8e0://auth" ?
I'm not sure why the "https:// " Redirect URI worked in production mode when the Electron-React App was deployed.
Are there any examples of a Electron-React App accessing tokens with B2C / UserFlows ?
Thanks for your patience.

The redirectUri is the location where your app will listen for the response. It can be anything you like as long as it's something your app owns and understands how to read responses from. The sample I linked before sets up a custom protocol listener here with the following hostname which it then uses as the redircectUri.

It doesn't work with the current set up. The PublicClientApplication instantiates normally but the code fails at client.getAuthCodeUrl().
The ElectronReactTest App also failed until we added this arcane "checks" Key which we found after lots of searching.
"clientId": "123455-03aa-4f80-5rde-782b17c11859",
"authority": "https://Tenant_Name.b2clogin.com/Tenant_Name.onmicrosoft.com/Ploicy",
"knownAuthorities": ["Tenant_ID"],
"checks": ["pkce"],
"client": {
"token_endpoint_auth_method": "none"
}
The steps to reproduce are provided above.
Here's a copy of the current package.JSON.
{
  "name": "cra5polyfill",
  "version": "0.1.0",
  "private": true,
  "main": "./public/electron.js",
  "homepage": "./",
  "dependencies": {
    "@azure/msal-node": "^1.12.1",
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/react": "^13.0.0",
    "@testing-library/user-event": "^13.2.1",
    "assert": "^2.0.0",
    "buffer": "^6.0.3",
    "crypto-browserify": "^3.12.0",
    "https-browserify": "^1.0.0",
    "os-browserify": "^0.3.0",
    "process": "^0.11.10",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-router-dom": "^6.3.0",
    "react-scripts": "5.0.1",
    "stream-browserify": "^3.0.0",
    "stream-http": "^3.2.0",
    "url": "^0.11.0",
    "util": "^0.12.4",
    "web-vitals": "^2.1.0"
  },
  "scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test",
    "eject": "react-scripts eject",
    "dev": "concurrently -k \"cross-env BROWSER=none yarn start\" \"wait-on http://localhost:3000 && electron .\"",
    "build:local:mac": "yarn build && electron-builder -m -c.extraMetadata.main=build/electron.js"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "concurrently": "^7.3.0",
    "cross-env": "^7.0.3",
    "dotenv": "^16.0.1",
    "electron": "^20.1.0",
    "electron-builder": "^23.3.3",
    "electron-notarize": "^1.2.1",
    "react-app-rewired": "^2.2.1",
    "wait-on": "^6.0.1"
  }
}

Thanks for your help, hopefully we can find the source of the error.

@Sectaur

The PublicClientApplication instantiates normally but the code fails at client.getAuthCodeUrl().

Fails how?

The ElectronReactTest App also failed until we added this arcane "checks" Key which we found after lots of searching.

What is this? This isn't a config option that MSAL.js recognizes.


Make a theme an publish on npm?

Thanks a lot for this well crafted landing page!
I would like to incorporate it into my project, but the starter is not well suited for being included into an existing project.
Have you considered making a Gatsby theme and publish it on npm, so I could simply install it as a plugin?

Sorry for this noise. Just saw that you already did that here.

Me again :-) The npm package seems outdated. I get the following build error:
success run queries - 0.731s - 34/34 46.48/s
success Generating image thumbnails - 19.872s - 41/41 2.06/s

 ERROR #98123  WEBPACK

Generating development JavaScript bundle failed

Can't resolve '../components/Brand' in '/home/cws/jamify-routing/node_modules/gatsby-theme-landing-page/src/components'

File: node_modules/gatsby-theme-landing-page/src/components/header.js

failed Building development bundle - 4.479s

Could you please update the npm theme and check that it is building without errors?


Add Integration Tests

Fixes #23

[x] Updates Terraform-metal-vsphere to v3.0.0 (added support for metros, hardward reservations)
[x] Updates Terraform-provider-metal to v2.0.1 (added support for metros, connections, ...)
[x] Adds type and sensitivity flags to variables and outputs (requiring TF 0.14+)
[ ] Passes Integration tests

Required variables must be defined through GitHub secrets and integration.yml definitions:
  16: variable "storagepolicy"
  20: variable "storagelimit"
  25: variable "cp_vm_network"
  30: variable "cp_subnet_mask"
  35: variable "cp_gateway_ip"
  40: variable "starting_ip"
 163: variable "nsx_controller_ova_name"
 168: variable "nsx_edge_ova_name"
 173: variable "nsx_license"

In this PR I've attempted to work around the limitation that provider configuration can not be derived from resource attributes.  This has not been entirely fruitless.
The README.md should be reflected to show that Terraform apply must be executed in two phases, the first targeting the vmware backend and gateway (using -target xyz).


How to add number badge label for BoomButton

Hi Nightonke. Have a nice day.
Could you show me how to add number badge label for BoomButton. Many thanks 👍

Hey.
Do you mean adding a label to the sub-buttons(boom-button)? Currently there is not a convenient way to achieve that. But you can try this method of BMB:
    /// Get the boom-button at index. Notice that the boom-buttons may not be created by BMB, so this method may return nil.
    ///
    /// - Parameter index: Index.
    /// - Returns: The boom-button at the given index, may be nil.
    public func boomButton(at index: Int) -> BoomButton? {
        if 0 <= index && index < boomButtons.count {
            return boomButtons[index]
        }
        return nil
    }

You can get the boom-button after booming(must at this time because the boom-buttons may not be created), then add a custom-views and animations to each boom-button.

@Nightonke I have hamburger button (BoomButton) on navigation bar. And I have 3 sub-buttons (settings, chat, ranking). I want to show number unread message in chat button when tapping hamburger button :)


update klusterletaddonconfig

story: open-cluster-management/backlog#15911
Signed-off-by: Zhiwei Yin<EMAIL_ADDRESS>

/assign @qiujian16


upgrade to spring-boot 3 (cleaned)

Description

Update to Spring 6/Springboot 3 as per @bogdan-sava 's work in #7416

This PR is a rebuilt version of the above which cleans up the commit history and addresses some merge conflicts
Methodology

current branch off main
cherry picked all original authored commits
3 way merge in intellij (most conflicts were around dependency versions) -
ran full gradle build with FVT
run maven build (-Pquick -DskipFVT) cleanly

Notes

maven build has a few (easily fixed) issues with checkstyle & errorprone. However the runtime tests do fail with a log4j conflict. My understanding @lpalashevski is that you are not using maven once the spring6 change goes in, so this is of no concern. I can look further if required.
I've not done testing of ui chassis etc - only the automated UT in the build, and of course our FVTs
I noticed some further gradle changes needed to update dependencies, address some excluded checks. However for clarity I think it's best to stick with the levels here for an initial checkin as it's in the spirit of the original changes, and then I will later raise a PR for these updates - most of which are unrelated.

Related Issue(s)
Fixes #7225

Testing

Standard built UTs, (including ui-chassis launch test) and FVTs
Charts will be tested prior to release

Release Notes & Documentation

Additional notes

@bogdan-sava @lpalashevski I would like to propose we include this fix soon.
I'm about to do some gradle refactoring to fix our BOMs which is going to be messy. I am happy to manage the merge, but even better if we can get this fix in ASAP as it gives time for everyone to use the updated spring levels, to apply any additional dependencies, and be confident before we branch next week.
For this modified PR I needed to do a 3 way merge. I opted to do this in intelliJ as I wanted to carefully check each change wrt dependencies in particular.
I have suggested a simpler approach for another PR where we had an extended history - see https://github.com/odpi/egeria-charts/pull/237 so happy if you prefer to take that route instead.

I agree to proceed with this PR and get it to main asap.
I did quick regression check locally both ui and server chassis are starting up and working fine so this is good base for the spring major migration.
@bogdan-sava agree?


Ensure pipeline checks for spaces in attribution IDs

Looks like a bad definition xref escaped: https://github.com/geneontology/helpdesk/issues/28
Our current ID checks rely on a perl check of the obo which is convenient but limited. If we augment these with SPARQL checks we can be more complete.
As it happens I implemented this for HPO: https://github.com/obophenotype/human-phenotype-ontology/pull/2376
@dougli1sqrd should we use SPARTA for running the checks in the GO ontology or is it more convenient just to use the robot validate option you implemented? Recall this is on the edit version of the ontology prior to loading into any triplestore

We already have some sparql here: https://github.com/geneontology/go-ontology/tree/master/src/sparql
And a section of the Makefile for reports:
https://github.com/geneontology/go-ontology/blob/master/src/ontology/Makefile#L324-L340
Seems most straightforward to just go ahead and switch this from using jena-arq to the more portable robot. But we should think about how we might share many of the checks across ontologies, cc @drseb @jamesaoverton

I guess it's a choice between a new repo for OBO checks or just putting them in the ROBOT repo. I can see pros and cons to both.


type 'Null' is not a subtype of type 'Function'

I am trying to render a sample screen using buttons.json file provided in the example project here. But I am getting this exception. Other examples working fine. What could be the issue?
======== Exception caught by widgets library =======================================================
The following HandledJsonWidgetException was thrown building Builder:
*** HandledJsonWidgetException ***
{
  "type": "elevated_button",
  "args": {
    "onLongPress": "${simplePrintMessage()}",
    "style": {
      "foregroundColor": {
        "pressed": "FF2196F3",
        "focused": "FF2196F3",
        "empty": "FFF44336"
      }
    }
  },
  "child": {
    "type": "text",
    "args": {
      "text": "ElevatedButton"
    }
  }
}
type 'Null' is not a subtype of type 'Function'
#0      ArgsExpressionEvaluator.evalCallExpression (package:json_dynamic_widget/src/components/processors/expression_arg_processor.dart:118:31)
#1      ExpressionEvaluator.eval (package:template_expressions/src/expressions/evaluator.dart:111:16)
#2      ArgsExpressionEvaluator.evaluate (package:json_dynamic_widget/src/components/processors/expression_arg_processor.dart:64:52)
#3      ExpressionArgProcessor.process (package:json_dynamic_widget/src/components/processors/expression_arg_processor.dart:37:23)
#4      JsonWidgetRegistry.processArgs (package:json_dynamic_widget/src/components/json_widget_registry.dart:251:10)
#5      MapArgProcessor.process.<anonymous closure> (package:json_dynamic_widget/src/components/processors/map_arg_processor.dart:51:20)
#6      Iterable.forEach (dart:core/iterable.dart:325:35)
#7      MapArgProcessor.process (package:json_dynamic_widget/src/components/processors/map_arg_processor.dart:48:17)

If you are trying to use that example in your project then you have to remember to add custom function - simplePrintMessage  to your registry
registry.registerFunctions({
        'simplePrintMessage': ({args, required registry}) => () {
          var message = 'This is a simple print message';
          if (args?.isEmpty == false) {
            for (var arg in args!) {
              message += ' $arg';
            }
          }
          // ignore: avoid_print
          print(message);
        },
});

Do we have that in our example? @crisperit

Got that, thanks!


Syntax error fix for services/hatds.py

Moved __future__ statement and reformatted a string to avoid syntax errors during python setup.py install

Thanks! Looks good.

No prob! Thanks for the checkplot system -- really amazing and the
period-finding utilities save a ton of time.
John
On Thu, May 31, 2018 at 10:37 AM, Waqas Bhatti<EMAIL_ADDRESS>wrote:

Thanks! Looks good.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/waqasbhatti/astrobase/pull/51#issuecomment-393551883,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFal1zdbBBJMfZzu31i2RUXKEryvrLRPks5t4AA0gaJpZM4UVIae
.


Update python-publish.yml

installed colorama, disable build isolation
the problem
an error was occuring since build created an isolated environment but since it does not use the setup.py, and it is the only container with dependencies, it did not know to install colorama.
temporary solution
I disabled the virtual environment with the -n option and added colorama to pip install, so It won't show again.

solving issue at #1

i haven't been able to get it to work (see this stackoverflow post), so i'll try this. thank you!


Change all occurrences of "plan" to "map"

Overview
Change all occurrences of "map" to "plan".
Checklist

[x] PR has a name that won't get you publicly shamed for vagueness
[ ] Files changed in the PR have been yapf-ed for style violations

Notes
Overall, DistrictBuilder is very good about using translations everywhere so this mostly involved updating the .po files.
config.xml is one place where we aren't doing translations. There is one occurrence of "plan" ("Plan Summary") but that text doesn't appear to actually show up in the UI at all.
I'm not sure if shared_feed.xml is being used anywhere but I translated it just in case.
Also worth noting that there won't be any reporting functionality used so we don't have to worry about translating anything related to reports.
Testing Instructions

./scripts/server
docker-compose exec django bash
./manage.py setup config/config.xml
Kill and run ./scripts/server again
Observe new translations

Closes #158609169

2 more instances of map that might need changing? The first is on the Draw tab and the second on the Leaderboard.

@shreshthkhilani So I just pushed a fix that adds many missing translations that I missed due to some case-sensitive grepping.

We're changing "plan" to "map"?

We're changing "plan" to "map"?

Yeah, sorry! :laughing:

I still see a lot of "plans". Maybe I'm doing something wrong? I followed the testing instructions.

Could you also amend the commit message to reflect the correct change direction?

Could you also amend the commit message to reflect the correct change direction?

Yeah, I'll do that when I rebase.

I still see a lot of "plans". Maybe I'm doing something wrong?

No, I think you're good. I'm seeing the same issue. Trying to figure out what's wrong since the .po files seem right to me.

@shreshthkhilani So I don't have a good understanding of why this works, but running ./scripts/update and restarting the server should fix things (at least, it worked for me). I assume it's related to force-reconfiguring.

I still see some occurrences of "plan" on the Share page. However, we've been going back and forth on this and think it's a good idea to merge and see whether these discrepancies are visible on staging. This could likely be a Vagrant thing.


Support go to symbol in the accessible view

ATM, this is opening the symbols for the focused editor pane. We will also want to make sure that the accessible view remains open despite the blur event that will occur on quick pick open. Also check the zIndex as I think it's currently set to = that of the quickpick, but will need to be < than it

We'd need an active editor pane to make use of the one used by the editor.... might have to make a custom one instead


Loading time in HDFView and in my C# code

Hi, sorry to create this topic as an issue, but I don't know a better way to contact you!
I have some HDF5 files, with about 70MB size, which take HDFView only +/- 2 seconds to open the file but In my C# code with PureHDF it takes +/- 6 seconds! Is this time difference normal? Or is it usually possible that the times are similar and it's something I might be doing wrong in my code?

Hi, this might be caused by bad chunk size. Could you please send me some info about the dataset (you can find it in HDF View) and show me your code?
If you are willing to you could also send me your file to<EMAIL_ADDRESS>or a link to that file in case it is too big.

In general, PureHDF is not yet performance optimized (I always had performance in mind during development but there are still areas for improvement, e.g. more caching).

Dear friend, I send the files to that email<EMAIL_ADDRESS>Let me know if you have any news. Thanks for your time!

Thank you, I received it :-)

Let me know if you need anything!

I had a look into the file and have some questions:
In the mail you said it takes ~ 5 seconds for PureHDF to load the data and only 2 seconds in HDF View.
To reproduce that I would need to know which dataset exactly you mean and what the layout of that dataset is (chunked, contiguous, compact) and its dimensionality as well as chunk layout (if it applies) and compression.
Or do you mean that HDF View takes 2 seconds to open the file and show the groups / datasets overview? That may be the case (it is on my computer) but HDF View has not loaded any data yet at that point. It only loads data when you double click a dataset. Simply showing the groups and datasets is ways faster that also loading their contents. In that case PureHDF does a good job I'd say :-) Performance will probably improve when metadata cache is implemented.

When I talk about time, I mean from when the file starts loading until I have everything loaded in my instances. I'm not a expert on HDF5 files, but from what I can see I think every dataset is contiguous. I Just have create the file in Python in the most simple way possible.
So it makes sense that it would be much faster in HDF view because of this! Normally the structure that takes the longest is Tde and Tdr because they have so many datasets in a row due to different groups.
And in general, for these simple files, do you think that's the best way to get values?
When you refer to this metadata cache, is it something that will be implemented automatically in the functions in the package or is it something that the user will have to change later in the code?

You might get a little speed-up by parallelizing the reading:
private static List<List<List<List<double>>>> ReadTdStruct(string groupPath, NativeFile readFile)
{
    List<List<List<List<double>>>> TdList = new();
    // foreach (IH5Group tree1 in readFile.Group(groupPath).Children().OfType<IH5Group>())
    // {
    //     List<List<List<double>>> TdSubList = new();
    //     foreach (IH5Group tree2 in tree1.Children().OfType<IH5Group>())
    //     {
    //         List<List<double>> TdSubSubList = new();
    //         foreach (IH5Dataset dataset in tree2.Children().OfType<IH5Dataset>())
    //             TdSubSubList.Add(dataset.Read<double[]>().ToList());

    //         TdSubList.Add(TdSubSubList);
    //     }
    //     TdList.Add(TdSubList);
    // }

    var level1Children = readFile
        .Group(groupPath)
        .Children()
        .OfType<IH5Group>()
        .ToList();

    Parallel.For(0, level1Children.Count, index =>
    {
        var level1Child = level1Children[index];

        List<List<List<double>>> TdSubList = new();

        var level2Children = level1Child
            .Children()
            .OfType<IH5Group>()
            .ToList();

        foreach (IH5Group tree2 in level1Child.Children().OfType<IH5Group>())
        {
            List<List<double>> TdSubSubList = new();
            foreach (IH5Dataset dataset in tree2.Children().OfType<IH5Dataset>())
                TdSubSubList.Add(dataset.Read<double[]>().ToList());

            TdSubList.Add(TdSubSubList);
        }
        TdList.Add(TdSubList);
    });

    return TdList;
}

The metadata cache would be implemented behind the scenes and is nothing for the user to worry about. However, I need to first figure out how that would work in combination with multithreading and if the speed gain is worth it.

Interesting - for me it reduces the execution time from 1.4 s to 0.90 s with dotnet run -c Release and the following main method:
public static void Main()
{
    var time = Stopwatch.StartNew();
    LoadHdfFile("/home/vincent/Downloads/francisco/Example/exemplo.h5");
    Console.WriteLine(time.ElapsedMilliseconds);
}

Very strange, my code pass from like 9000ms to 34000ms when use Parallel


HealthBar in Intro example scene does not work out of the box

I cloned out the repository and ran the example scene with Unity 2019.2.4f1. The HealthBar is missing an int event listener and the Sprite assignment for the bar is missing.

I was on master, this is working in canary, sorry.


medoo error return null data

I am using medoo to handle table operations. And now I cannot debug via error() function of medoo at http://medoo.in/api/error.
Here is my test table structure:
CREATE TABLE [user] (
[id] INTEGER  PRIMARY KEY AUTOINCREMENT NOT NULL,
[username] NVARCHAR(50)  UNIQUE NOT NULL,
[email] NVARCHAR(50)  UNIQUE NOT NULL,
[password] VARCHAR(255)  NULL,
[displayname] NVARCHAR(255)  NULL
)

And the test code snippet:
$db = new medoo([
        'database_type' => 'sqlite',
        'database_file' => 'db/test.s3db',
    ]);
    $r = $db->insert('user', ['username' => '<existing data in table>', 'email' => '<existing data in table>']);
    var_dump($r);
    var_dump($db->error());

And I always get the array via $db->error():
[0]=> string(5) "00000" [1]=> NULL [2]=> NULL

However, as the columns are set as unique, so it should return error messages.
How to fix it? Any hints are appreciated.

@Walk4Muscle , Can you post the output of $db->last_query after running your query?
Thanks!

@omaressa , thanks for your reply.
And yes, it returns "INSERT INTO "user" ("username", "email") VALUES ('user', 'user@domain.com')"

@catfan @omaressa  same problem

@catfan @omaressa @Walk4Muscle problem has been solved! Just add following lines to your database config:
'option' => [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        ],

I am new Medoo user and I would be very happy if this would be some how explained on Documentation ^^. Luckily Google search returns this issue quickly!

@Jackysi read docs - https://medoo.in/api/new (section "Configuration")

Same problem.
debug show it executed
SELECT COUNT(`id`) FROM `orders` WHERE `createdAt` >=<PHONE_NUMBER> AND `createdAt` <<PHONE_NUMBER>

And I executed the above manually, it works. But medoo return null.


file handler

1 added min_size=1 for fasta dna, need to do the same when sequence_source is provided and for fastq (didn't look into it)
2 convert hypothesis output to filehandler, tests fasta handling on bio
python and scikit

I don't understand the purpose of the to_filehandle.py file and associated test file?


Bug 2095530: fix empty column width

📝 Description
With no condition there were some width problems
🎥 Demo
Before
https://bugzilla-attachments.redhat.com/attachment.cgi?id=1889701
After

/bugzilla refresh

/retest

/retest

/lgtm


Tweaks to API POST observation

Added ability to set naming reasons when POSTing observations.
Added user's custom notes_template to the output of GET users so that the mobile app can know which custom notes fields to provide.

Thanks for doing this. I have no suggestions other than: merge & deploy; we can try it in the mobile app to see if there are any issues.

Thanks, Joe.
On Sun, Sep 19, 2021 at 2:44 PM Joseph D. Cohen @.***>
wrote:

Thanks for doing this. I have no suggestions other than: merge & deploy;
we can try it in the mobile app to see if there are any issues.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/MushroomObserver/mushroom-observer/pull/792#issuecomment-922518362,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAYTNNPJWV65ORRBXIWWGG3UCYVQTANCNFSM5EKR4ZLA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


feat: enable prettier for scenarios

Follow up from https://github.com/astral-sh/packse/pull/211#issuecomment-2272830605

CC @konstin


chore: update mempool rejection reasons

Description

Update mempool rejection reasons according to https://github.com/stacks-network/stacks-core/blob/<IP_ADDRESS>.4/src/chainstate/stacks/db/blocks.rs#L229-L330
Breaking change?

No.
Example

Checklist

[ ] Unit tested updated code paths
[x] Tagged 1 of @janniks or @zone117x for review

@zone117x


why use supervisord in docker image

Your question
why use supervisord in docker image, Is there any benefit other than the added complexity of mirroring?
I'm going to compile in ARM using mosn.

You can directly build mosn in cmd/mosn/main dir, and build arm version with :  GOOS=linux GOARCH=arm64 go build


Optional Task

Hello,
I was testing the functionality of "optional" set for a task. I was wondering why an optional task should not retry and pass to COMPLETED_WITH_ERRORS only when all retries failed.
Do you agree with this behaviour? Or the current one is working as expected?
Thank you

Currently, the contract of an optional task within Conductor is that the task failure is considered harmless for workflow execution and the workflow is allowed to progress in such a scenario. Retrying such a task is not considered as necessary and retries are skipped.

Thanks for your reply. However, I was wondering if this behaviour could be change. I agree with you with the harmless of an optional task, but I think that it should not have consequences on the retry policy. Will not be better to have another option at workflow task such as "skipRetry", that could be use together with the optional to preserve the current behaviour?
What do you think?

We have noticed the behavior of OPTIONAL tasks and it was a bit surprising to us that it didn't follow the retry policy.
I think if OPTIONAL task got retried, it won't really break the contract of "optional task is considered harmless for workflow" as long as the workflow continues execution normally.
On the other hand, the current behavior comes with the cost of making our workflows definitions complicated, because we had to build some wrapper workflows around optional tasks to make them retriable from some other parent workflow.
We're working at the moment on making some code change in conductor to change that default behavior, we'll push a merge request with it once it's done.

@andrea11 and @mohelsaka Thanks for the suggestions. I agree that the optional tasks can be retried upon failure and can eventually be considered harmless to workflow execution if all retries fail. This would be a nice-to-have enhancement on the current optional task implementation.
Looking forward to your pull request @mohelsaka .


Rider "forgets" where Godot executable is

So I've been testing if I want to use rider for Godot development, and I've noticed that this plugin requires a running instance of the Godot editor in order to debug my game (whereas the MonoDevelop plugin for Godot I tried, can run just fine with Godot closed, it has the option to configure the used godot executable). Additionally it seems that if I let things just sit for a while (I left it for something like 30) I get this error if I try to start debugging:
Failed to determine path to Godot executable
Going back to Godot's editor (which I have not closed), and running the game once from there, fixes this issue. After that I can then debug from rider just fine. Until I let things sit again for a while and I need to do this again. So far I only got that once, as I haven't had time to just wait around and see if it consistently happens or not.
I tried to look really hard if there is some option where I could configure the used Godot executable to get around this annoyance, but I didn't find anything.
Screenshot of issue:

It's the same error I get if I don't have Godot open.

This is already fixed but only with upcoming Godot 3.2.2 release.
With 3.2.1 Running Editor is a requirement.

That's nice. I'll keep an eye out, then, for when 3.2.2 gets released.

Compiling by myself, and still doesn't work for me. Is it because I'm using Rider for Unreal? The path is already there tho.

@damarindra is that path correct? What do you do and what happenes?

yes, it is the right path.

Open godot from that path & open the solution with rider
Select debug and run for godot

make sure the port is right

click the debug and run button

@damarindra could you please write me at discord? I am '@van800#9412'. I can either debug it with you or write down instructions for debugging or compile build with more diagnostics.

This is working correctly for me on Windows with Godot 3.2.2 beta. The code assumes that your project data is in the default location of %appdata%/Godot/projects, did you perhaps change that location?
https://docs.godotengine.org/en/stable/tutorials/io/data_paths.html#editor-data-paths

@damarindra Are you perhaps using the self-contained mode? The Godot version distributed by Steam has this enabled by default.

@Sejsel all correct.

I don't know if this affect, but the port on rider always reset to 0 whenever reopen the rider.

anyway, I just got the answer. So, my project was actually created with Godot 3.2.1 and without C#. I copied the project, open with the new godot with c-sharp support. the debug and run is just doesn't work. now I create a new project with godot c# version, it is now working fine.


Newsletters: add 217 (2022-09-14)

[ ] On Friday (or maybe even Saturday), re-check the mailing lists for any actual news this week @harding
[ ] Add lede, releases & RCs, topic links @harding
[x] Bitcoin Core PR Review Club @LarryRuane (cc @glozow )
[x] Bitcoin Core 25614 @adamjonas

I still don't have permission to push commits to this branch, but my PR review club changes are here: https://github.com/LarryRuane/bitcoinops.github.io/commit/be1dfa25e9bca03c109473a2d7450ecd1f408b84
(I didn't make a PR, but I can if that would help.)

Cherry picked @LarryRuane's PR Review section commit into this branch

I adopted @bitschmidty's review suggestions (thanks!) here: https://github.com/LarryRuane/bitcoinops.github.io/commit/4db6e02e79bd1c02f38f8faed8977b3cbddc4783. I created a new commit, rather than rewriting my earlier commit; I hope that's easier to cherry-pick.

ACK, squashed. Thanks @harding @LarryRuane @adamjonas @Xekyo ! 🚀

(Sorry for the late review, the content lgtm. The above are just questions.)


[$125] Android - Login - Status bar on login screen has black background on launch

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - internal Team
Slack conversation:
Issue found when executing PR https://github.com/Expensify/App/pull/35215
Action Performed:

Kill the app if it is open
Launch the app

Expected Result:
The status bar on the login screen has a green background as the rest of the screen
Actual Result:
The status on the login screen has a black background on launch.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01cb64d3936a4a4d09
Upwork Job ID:<PHONE_NUMBER>231740928
Last Price Increase: 2024-02-02

We think that this bug might be related to #vip-vsb
CC @quinthar

I don't think this is a blocker. Demoting.

@ishpaul777 i am confused a little bit about the rca and the solution.
https://github.com/Expensify/App/commit/4696731a75342ad6d7593b97c0bd84e7b7bbd773#diff-997a5cfe9a560b7061a768c52d18b7ec49fe0c102367eb7eff720874e55869e2R22
based on the commit the name was SCREENS.HOME and SCREENS.RIGHT_MODAL.SIGN_IN is not touched RightModalNavigator, could you please explain it a bit more?

Ah thanks for the flag @ishpaul777! Gonna close this issue in favor of https://github.com/Expensify/App/issues/35632


fix: update iterating over databases and collection to not return err…

fixes #29

Thanks for addressing. I will check the new version after the weekend


rbac: remove permissions for patch/update nodes and webhook resources

Thanks for contributing!

What type of PR is this?

release/bug

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

Fixes https://github.com/spidernet-io/spiderpool/issues/3883
Special notes for your reviewer:

this PR shouldn't cherry-pick to release-v0.9, only main branch.


use writev in streams2

In the later version of readable-stream (1.1 and above) there is a new write method available called ._writev that you can implement if you support batched writes (which leveldb does!). Basically it allows us to do something like this:
var ws = new stream.Writable({objectMode: true})

ws._writev = function (chunks, cb) {
  // convert chunks to a leveldb batch
  db.batch(batch, cb)
}

ws._write = function (data, enc, cb) {
  db.put(data.key, data.value, cb)
}

The _writev method will be called with all the objects currently buffered in the stream (usually the same as highWaterMark) waiting to be written. This means that all pending writes will be added to a leveldb batch.
If this is something you'd be interested in using for level-write-stream I'd be happy to send a PR

This would be rad. @mafintosh are you still interested in writing a patch?

Go for it @yoshuawuyts. I recently wrote this, https://github.com/mafintosh/bulk-write-stream if you need inspiration

Thanks, will do! 🌴

Ooph, doing this how bulk-write-stream does it requires a complete rewrite of the module. I'm currently writing this in a separate module, but if OK I'm definitely willing to pull it in here.

@yoshuawuyts did you ever implement this?

@blahah nope


Update README.md

Updating links to regular and extended attestation flowcharts

Hey @ryansavino ! Requesting your approval, please!


Prepare TEMPO and OPERA users and get them started on ATBDs

EPIC: Increase APT Usage
Description: Both TEMPO and OPERA scientists need to create ATBDs using APT per project requirements. Now that APT is in MCP production environment, the authors can begin work. APT team needs to support the needs of these scientists by introducing APT, training users as needed and answering questions.
Tasks:
-[] Introductory meeting with TEMPO and GEDI
-[] Approve all necessary accounts
-[] Provide user training
Acceptance Criteria:
-[] TEMPO and OPERA authors have approved accounts
-[] TEMPO ATBDs created and in authoring stage
-[] TEMPO training session completed
-[] OPERA ATBDs created and in authoring stage
-[] OPERA training session completed


Remove CommandKit from showcase

What kind of changes does this PR include?

Changes or translations of Starlight docs site content

Description

What does this PR change? Remove the CommandKit docs site as it no longer uses Astro Starlight.

 It's one of the best tools I've ever used to setup docs, so good job there!
The reason I've moved to Nextra was really just mostly about the docs look I was going for + SPA feel I wanted. I did use view transitions but unfortunately that's not fully adopted by browsers right now.
With that said I'll definitely use Starlight in the future considering how easy it was to work with it.
Thanks :)


Fix orchestration stuck when using anyof/allof with retry policy

Issue describing the changes in this PR
resolves https://github.com/microsoft/durabletask-java/issues/149
Pull request checklist

[X] My changes do not require documentation changes

[ ] Otherwise: Documentation issue linked to PR

[X] My changes are added to the CHANGELOG.md
[X] I have added all required tests (Unit tests, E2E tests)

Additional information
Additional PR information

Close this one as created a new one https://github.com/microsoft/durabletask-java/pull/153


error: no rules expected the token LightService

I just tried creating a node but I got error error: no rules expected the token LightService. I have not updating substrate, so that may be the reason why the error is occurring, but perhaps it's worth reminding the user to try upgrading by running curl https://getsubstrate.io -sSf | sh again if they encounter errors.
   ...

   Compiling substrate-consensus-aura v0.1.0 (https://github.com/paritytech/substrate#3a8a3925)
   Compiling substrate-cli v0.3.0 (https://github.com/paritytech/substrate#3a8a3925)
error: no rules expected the token `LightService`
  --> src/service.rs:71:3
   |
71 |         LightService = LightComponents<Self>
   |         ^^^^^^^^^^^^

error: aborting due to previous error

error: Could not compile `my-substrate-node-template-1`.

To learn more, run the command again with --verbose.
Chain client created in my-substrate-node-template-1.
To start a dev chain, run:
$ my-substrate-node-template-1/target/release/my-substrate-node-template-1 --dev
To create a basic Bonds UI for your chain, run:
$ substrate-ui-new my-substrate-node-template-1
To push to a newly created GitHub repository, inside my-substrate-node-template-1, run:
$ git remote add origin git@github.com:myusername/myprojectname && git push -u origin master

I am using this substrate version that I download a couple of days ago
$ substrate --version
substrate 0.1.0-25641b62-x86_64-macos

Closing as I'm not encountering the error anymore when I run the following after getting latest version:
./target/release/my-substrate-node-template-2 --version
my-substrate-node-template-2 0.9.0-1ec3a34-x86_64-macos


Merge Dev ke UAT 12 May 2017

Coverage increased (+1.2%) to 65.791% when pulling 1c32343d8aa7d57cc75108568c8976d506754d23 on dev into 9206b3aae19ff0dae375ff1cad9c881f71156e4a on uat.


Grid component Single/DoubleClick

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
I use Grid component and have action for single click and different action for double click. When I double click the row, action for single click is triggered twice and then action for double click is triggered. (Properties OnRowDoubleClick and OnRowClick)
Expected Behavior
I think the proper behaviour should be that only double click action si triggered on doubleclick.
Steps To Reproduce
Create new Grid component, assign properties OnRowClick and OnRowDoubleClick. Double click on a line.
Exceptions (if any)
No response
.NET Version
8.0
Anything else?
No response

@sezikpepa Thank you for contacting us. please provider a mini project


Attach actual Ruby instance in ref callback

Address #188

The other thing I think we should do is make this work like other callbacks as well.
DIV { "hello" }.ref { |node| Element[node].focus }
is the same as
DIV(ref: -> (node) { Element[node].focus }) { "hello" }
options for the name (instead of ref) might be:
DIV { "hello" }.after_mount { ... } or
DIV { "hello" }.on(:mount) { ... } which is pretty sweet...

Given that the node received is the actual DOM node, so you need to either wrap it inside an opal-jquery element, opal-browser element , node.JS.focus or using backtick.
The reason behind this is that it should be user's decision to decide which kind of encapsulation they want for DOM.
Yeah, providing a callback like method might be helpful.

So bottom line is that today we can't do node.focus (like they do in the JS example) so you have to do either Element[node].focus or node.JS.focus (never used that actually), but my point is that whichever one you use, you should not have to care about what kind of thing (dom node, react.js component or react.rb component) node is.  Is that your understanding?
which syntax do you like for the block attacher?  on(:mount) seems very consistent...

My understanding on ref is that it should give exactly the instance you are
trying to attach on. This match the semantic in the original reactjs doc.
I pefer ‘on(:ref)’, since the ref callback is invoked when mounted and
unmounted and you usually want to use the same handler. (I think we have
this disucssed in another “ref callback” issue )
Mitch VanDuyn<EMAIL_ADDRESS>於 2017年1月12日週四 下午6:16 寫道：

So bottom line is that today we can't do node.focus (like they do in the
JS example) so you have to do either Element[node].focus or node.JS.focus
(never used that actually), but my point is that whichever one you use, you
should not have to care about what kind of thing (dom node, react.js
component or react.rb component) node is. Is that your understanding?
which syntax do you like for the block attacher? on(:mount) seems very
consistent...
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ruby-hyperloop/hyper-react/pull/198#issuecomment-272125764,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAzRJY5njZFV_ne1j4-K_v5abV3jp6rNks5rRf2TgaJpZM4LVaFP
.

Sure I'm fine with that interpretation of ref, but my point is that we need to make sure it works correctly with Element, and I guess .JS (although again I don't know what that is)
Point being I can't do anything with a node in the ruby environment, since I can't directly say node.focus.
I agree with your point about on(:mount) being in appropriate, however on(:ref) does not read well.  How about just .ref { ... }

.JS syntax is documented here.
http://opalrb.org/docs/guides/v0.10.3/compiled_ruby.html in "Calling
Javascript Methods” section. I personally prefer this than using Native to
wrap JS object.
.ref looks great.
Mitch VanDuyn<EMAIL_ADDRESS>於 2017年1月12日週四 下午6:46 寫道：

Sure I'm fine with that interpretation of ref, but my point is that we
need to make sure it works correctly with Element, and I guess .JS
(although again I don't know what that is)
Point being I can't do anything with a node in the ruby environment, since
I can't directly say node.focus.
I agree with your point about on(:mount) being in appropriate, however
on(:ref) does not read well. How about just .ref { ... }
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ruby-hyperloop/hyper-react/pull/198#issuecomment-272132068,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAzRJZvENyQ2c_AD4-82KJNsjjeDzP3_ks5rRgSDgaJpZM4LVaFP
.

So reading that makes me believe that refnode.JS.focus won't work

My point is that the value sent by ref should act consistently.

I could make it return a Native wrapped object for DOM element (as we
currently done for string refs ). And you could call node.focus as usual.
Mitch VanDuyn<EMAIL_ADDRESS>於 2017年1月12日週四 下午9:51 寫道：

My point is that the value sent by ref should act consistently.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ruby-hyperloop/hyper-react/pull/198#issuecomment-272167805,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAzRJah7XrBOKBo3cWVlXtqdh6uw4j_vks5rRi_2gaJpZM4LVaFP
.

Below are the listing of possible ref attached value

hyper-react component, we return the actual Ruby instance
dom-node, we return the actual DOM node in this PR. (which is a non-ruby object)
react-js component, we return the actual reactjs component instance.

I think we could agree 1) is fine to user, for 2) it might be ok if we return a Native wrapped element, but if user want to use another DOM wrapper (opal-browser, or opal-jquery), they will need to unwrap it first (by calling to_n)
(3) is currently not handled carefully, return a Native wrapped element and maybe extend it with React::Component may make it fit the basic use case.


Add expenses

As a user, I want to add individual expenses to the shared group, specifying who paid and how much, so that everyone’s contributions and debts are accurately recorded.

Duplicate, similar to adding shared expenses #1.


[Feature Request] Override prefers-color-scheme for webview to match obsidian light/dark theme

I always have my OS set to dark theme, and the websites I use Custom Frames for (calendar) will load light or dark theme depending on the system setting (normally OS level) via the 'prefers-color-scheme' CSS feature.
It would be cool to override the webview's reported light/dark scheme based on whether Obsidian (our fake OS) is using a light or dark scheme.
I use the Minimal Theme and switch between light/dark throughout the day quite often depending on what I'm doing, which works great. It would be cool if my custom frames matched up.
Maybe it would be good as an option in the plugin settings.
Electron seems to have a simple API for this:
https://stackoverflow.com/questions/59609852/override-prefers-color-scheme-in-electron
Thanks for this plugin, very handy and allows you to spend more time living in Obsidian by bringing things like calendars into the workflow.

I have the same problem with Gcalendar, I'm on dark mode but it's on light mode, do I need to make a manual adjustmen?

I made a CSS snippet for custom frames in this repo that makes the frame dim until you hover over it. It's made for minimal theme but you could adapt if you want though I'm unable to do it for you


fix(datepicker): don't use pointer cursor on toggle when disabled

Related to https://github.com/angular/material2/pull/4542
@crisbeto @mmalerba

LGTM


Make a GitHub action

GitHub action that downloads hyperlink, builds it and runs it with certain args.
Original intent was to just install rust, compile the stuff and put it into GHA cache. Unfortunately you can't use actions inside actions: https://github.com/actions/runner/issues/646, and docker builds are also not cached (see #6)
Perhaps we need proper releases after all.

done!


chore: Remove kubectl provider from Karpenter example

I suggest replacing the kubectl provider in examples due to security concerns, as the current provider's developer may be potentially based in russia.

Resolves #3244

This PR is included in version 20.31.6 :tada:


BETA: BYTEGARDEN: Resume Analyser Update Template

@TomNett approve and merge to get it to BETA, then merge BETA to MAIN if you want to release it to production. Thank you.


Clear interceptors on configure #2

Currently when configure is called multiple times there will be multiple request interceptors, which usually means the checkRefresh is called multiple times uncecesarily. This also solves: #17

@micky2be what do you think of it like this? Is this okay?

The fact that we have getHttp bother me, I don't wanna introduce a different bug.
I still believe that removing the event and putting them back would be better.
If you are not up for the task, give me some time so I can do it myself.

Which event are you talking about?

The interceptors.
They need to be cleaned with the API and re-attached during the setup.
This will guaranty everything to work as intended.

I'm not following at all...
Cleaned with what API?
During which setup? Do you mean the configure() method of superlogin-client?
Why clean something and then re-attach something? Are you talking about interseptors the user might ave added after using the getHttp method?
Maybe we can, instead of creating a new axios instance, remove only the interseptors we've added?

Instead of re-instanciate Axios we could remove the interceptors and reattached it.
It will avoid people calling getHttp to use an old version.

True, like I was doing with the following pull request?
https://github.com/micky2be/superlogin-client/pull/18/commits/0c3cc0cfcdba0733589b5fcbed9426d9e0c05a7e

Yes

I'll revert back to that solution then. I'll also open an issue at axios about a clear function.

I gave you tbe api to use last time. Why don't you use it?
’interceptors.request.eject‘

I explained why here: https://github.com/micky2be/superlogin-client/pull/18/commits/0c3cc0cfcdba0733589b5fcbed9426d9e0c05a7e#r76944725

I'm now storing the specific id's so we can eject them. This is probably what you meant?
This has as added benefit that the user's added interceptors remain untouched.

yes, this looks better.
Thank you


Custom detections via the API?

Is there a way to create custom detections via the API?

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

ID: 42a8958f-0166-8f3c-6402-6ca022d089a8
Version Independent ID: 78c76282-dbf1-bf18-c223-21da6678ae64
Content: Advanced Hunting API
Content Source: windows/security/threat-protection/microsoft-defender-atp/run-advanced-query-sample-python.md
Product: w10
Technology: windows
GitHub Login: @mjcaparas
Microsoft Alias: macapara

Hello,
Looks like this question can best be answered via relevant Windows 10 Support channels.
Please consider checking with Microsoft Community or contacting support for your problem; The issues section of this repository is for content fixes in documentation.
If you feel that the associated article also needs to be updated for any reason feel free to re-open this issue or contribute with a pull request.
Thank you.

The question has nothing to do with Windows 10.

The appropriate discussion channel would then be the "Security & Privacy" section under the community discussion channel, where Windows Defender topics are also being discussed.


[GOBBLIN-1488] Added option to set perm group at table level

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[ ] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-1488] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1488

Description

[ ] Here are some details about my PR, including screenshots (if applicable):
Allow option to change perm group at publisher dir leaf level.
if publisherdir = /db/table then the perm group is set for path /table

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[ ] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3334 (485c6a5) into master (9ed315a) will decrease coverage by 3.51%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #3334      +/-   ##
============================================
- Coverage     46.54%   43.02%   -3.52%
+ Complexity    10133     1941    -8192
============================================
  Files          2051      394    -1657
  Lines         79537    16875   -62662
  Branches       8878     2075    -6803
============================================
- Hits          37018     7260   -29758
+ Misses        39089     8814   -30275
+ Partials       3430      801    -2629

Impacted Files
Coverage Δ

...a/org/apache/gobblin/cluster/GobblinHelixTask.java
60.21% <0.00%> (-2.16%)
:arrow_down:

...ache/gobblin/kafka/serialize/LiAvroSerializer.java

...set/test/SimplePartitionableDatasetForTesting.java

...runtime/mapreduce/GobblinWorkUnitsInputFormat.java

...blin/converter/filter/AvroProjectionConverter.java

...li/GobblinServiceFlowExecutionResourceHandler.java

...ce/purger/PurgeableHivePartitionDatasetSchema.java

...bblin/broker/gobblin_scopes/TaskScopeInstance.java

...ache/gobblin/metrics/reporter/util/EventUtils.java

...lin/source/extractor/extract/QueryBasedSource.java

... and 1649 more

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 9ed315a...485c6a5. Read the comment docs.


Can't build YandexMobileAds for iOS [unknown argument: '-parsed-as-library']

build iOS dont work for me, got this issue:
ERROR: extension-yandex-ads/ext.manifest:34: 'AM com.defold.manifestmergetool.InfoPlistMerger mergePlists
WARNING: Plist adding value for key 'MinimumOSVersion': '13.0''

ERROR: extension-yandex-ads/ext.manifest:0: 'unknown argument: '-parsed-as-library'
<unknown>:0: error: unknown argument: '-parsed-as-library''

ERROR: extension-yandex-ads/ext.manifest:0: 'unknown argument: '-parsed-as-library'
<unknown>:0: error: unknown argument: '-parsed-as-library''

ERROR: extension-yandex-ads/ext.manifest:0: 'unknown argument: '-parsed-as-library'
<unknown>:0: error: unknown argument: '-parsed-as-library''

Defold version:

pod file:
platform :ios, '13.0'
pod 'YandexMobileAds', '7.2.0'
pod 'AppLovinYandexMobileAdsAdapters'
pod 'IronSourceYandexMobileAdsAdapters'
pod 'MintegralYandexMobileAdsAdapters'

ext.manifest:
name: "YandexSdkAds"

platforms:
    android:
        context:
            aaptExtraPackages: ['com.yandex.android', 'com.yandex.android.mobileads', 'com.yandex.mobile', 'com.yandex.mobile.ads', 'com.yandex.mobile.ads.imp', 'androidx.viewpager2', 'androidx.annotation', 'androidx.core', 'androidx.recyclerview', 'androidx.appcompat', 'androidx.transition', 'androidx.collection', 'androidx.appcompat.resources']

    ios:
        context:
            flags: ['-fcxx-modules', '-fmodules', '-fobjc-weak', '-Wno-module-import-in-extern-c']
            linkFlags:  ['-ObjC', '-Wl,-rpath,/usr/lib/swift', '-Wl,-rpath,@executable_path/Frameworks']
            libs:       ['swiftCompatibility51', 'swiftCompatibility50']

tried both build.defold.com and build-stage.defold.com
repo case:
test_yandex.zip
logs:
log.txt.zip
log.txt_stage.zip

The same error when building on Defold 1.9.5 and 1.9.6, on both servers build.defold.com and build-stage.defold.com

This should be resolved in a patched 1.9.6 which I thought was released yesterday.
@JCash and @ekharkunov ?
This is part of another fix for certain combinations of builds where the same dependency is included more than once but with different versions.

I've made a typo in argument name. -parsed-as-library instead of -parse-as-library.

@osov @TinyDobbins Please, update to latest 1.9.6 (56c82b2fb1ba929d85b3736d7ed1f8b522ab716a). Should work as expected.

@ekharkunov I haven't seen it in release version of 1.9.6, but I see this commit in 1.9.6 beta.
and yes, it works! Thanks a lot for fast fixing!!


deps: refactor weird OpenStruct usage.

We really don't need this now we've had the args refactoring.

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew tests with your changes locally?

makes sense to me; the use of OpenStruct probably could have been removed in 7b6d1f774d62b5f68326257dc43bb1cfad155c24 but we didn't notice it then

Thanks for review @scpeters!


validation in password

just make a check on password  , consider the passwords  with (#, capital, small letters, numbers) as strong  one

Assign this issue to me @pinak22dhir

can this work be assigned to me? @pinak22dhir


[query] support for type BenchmarkXxx

Does/will the framework support functions of the type func BenchmarkXxx(*testing.B)?

For benchmarks, we have access to *testing.B, whereas the current test function func (Environment).Test(*testing.T, ...Feature) requires an argument of the type *testing.T

@divmadan this is interesting. I would love to hear more about your use case ? I think I understand what you are asking for, but could you show with some mock code? Thanks.

@vladimirvivien I have been writing some table driven tests, and my requirement will be better suited to benchmarks as I don't need a pass/fail result.
Assuming a similar design as tests, they should look like:

Test go test . <flags>

Benchmark go test -bench=. <flags>

func TestTable(t *testing.T) {
	testenv.Test(t, features.Table{
		{
			Name:       "Testcase1",
			Assessment: func(ctx context.Context, t *testing.T, config *envconf.Config) context.Context {
				// test assertions and fails
				return ctx
			},
		},
                {
			Name:       "Testcase2",
			Assessment: func(ctx context.Context, t *testing.T, config *envconf.Config) context.Context {
				// test assertions and fails
				return ctx
			},
		},
	}.
		Build("TestTable").
		WithLabel("mode", "random-mode").
		Setup(func(ctx context.Context, t *testing.T, cfg *envconf.Config) context.Context {
			// setup
			return ctx
		}).
		Teardown(func(ctx context.Context, t *testing.T, cfg *envconf.Config) context.Context {
			// teardown
                        return ctx
		}).
		Feature())
}

func BenchmarkTable(b *testing.B) {
	testenv.Benchmark(b, features.Table{
		{
			Name:       "Benchmark1",
			Assessment: func(ctx context.Context, b *testing.B, config *envconf.Config) context.Context {
				// benchmark assertions and fails
				return ctx
			},
		},
                {
			Name:       "Benchmark2",
			Assessment: func(ctx context.Context, b *testing.B, config *envconf.Config) context.Context {
				// benchmark assertions and fails
				return ctx
			},
		},
	}.
		Build("BenchmarkTable").
		WithLabel("mode", "random-mode").
		Setup(func(ctx context.Context, b *testing.B, cfg *envconf.Config) context.Context {
			// setup
			return ctx
		}).
		Teardown(func(ctx context.Context, b *testing.B, cfg *envconf.Config) context.Context {
			// teardown
                        return ctx
		}).
		Feature())
}

So @divmadan, what I think you are looking for is a way to express benchmark using the e2e-framework API. I put a sample below how this could work.
func  Benchmark_Hello(t *testing.B) {
	testenv := env.NewWithConfig(envconf.New())

	feat := features.NewBenchmark("Hello Feature").
		WithLabel("type", "simple benchmark").
		Setup(func(ctx context.Context, t *testing.B, _ *envconf.Config) context.Context {
			limit := 40000
                         return context.WithValue(ctx, "limit", 40000)
		}).
		Run("test message", func(ctx context.Context, b *testing.B, _ *envconf.Config) context.Context {
			limit := ctx.Value("limit").(int)
			for i := 0; i < b.N; i++ {
                             // do work to be bench marked
                             if i >= limit {
                                  b.Log("limit reached")
                             }
                         }
			return ctx
	       }).Feature()

	testenv.Benchmark(b, feat)
}

This example shows how this could work using the regular API.  Table support would also be added.
Thoughts?

This looks good @vladimirvivien. Since the framework wraps the testing module, we'll inherently support all benchmark capabilities similar to tests, right?
What is the scope of the changes required to implement this? I am under the assumption that a similar structure as tests' implementation would work, no specific logic for wrapping benchmarks will be required.

This looks good @vladimirvivien. Since the framework wraps the testing module, we'll inherently support all benchmark capabilities similar to tests, right?
What is the scope of the changes required to implement this? I am under the assumption that a similar structure as tests' implementation would work, no specific logic for wrapping benchmarks will be required.

type FeatureEnvFunc func(context.Context, *envconf.Config, *testing.T, Feature) (context.Context, error)
type TestEnvFunc func(context.Context, *envconf.Config, *testing.T) (context.Context, error)

There are types such as above that have already been defined. A good bit of these needs to be replicated for Benchmark specific case of we replace all *testing.T with *testing.TB interface and make that generic for both *testing.T and *testing.B.
From whatever I could see from trying to write up a working prototype quickly, it turned out to be a lot more changes that I thought.

Can I help with the implementation?

@harshanarayana Honestly, I didn't even go look in Go's test API to see if this (wrapping and running benchmarks) can be done. As it turns out, type testing.B has method func (b *B) Run(name string, f func(b *B)) bool (similar to testing.T) which can be used to launch benchmarks programmatically.
Nevertheless, if this is to be done, it would require additional API entry points instead of reusing existing ones. For instance, instead of FeatureEnvFunc, maybe a new type is introduced specifically for handling benchmarks FeatureBenchmarkEnvFunc as an example.
Furthermore, before any code is written. We should really debate whether this is something that would be useful to the community.  It sounds like it would be, but I would like to hear from others and also, are there instances in Kubernetes testing where Benchmarks are used ?

@vladimirvivien I agree with you.. May be we start with a simple design proposal.. Document few approaches we have and we see if they are required or can be done in a different way?

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle rotten

If this is not of interest to anyone else, we probably should just let it go stale (cc @harshanarayana )


Note that VB doesn't support ref structs

Most article have VB and C# dropdown, this one is missing that and could use it. If this is open source and someone can explain how to do the dropdown I would be willing to convert the code.

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

ID: 588ae32f-3429-143f-824c-5ab2d046d24a
Version Independent ID: 002f9f2a-48d1-0671-a079-b99b9f6bab58
Content: How to serialize and deserialize JSON using C# - .NET
Content Source: docs/standard/serialization/system-text-json-how-to.md
Product: dotnet-fundamentals
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

The markdown file for this is https://github.com/dotnet/docs/blob/master/docs/standard/serialization/system-text-json-how-to.md, you can submit a PR against it.
In this markdown file, you'll find lines starting with :::code language="csharp", you'll need to add parallel lines under them for vb.
Then you'll need to add a dev_langs metadata.
Adding @tdykstra to confirm whether he wants to add parallel VB code for this article.

@Youssef1313 thanks, I will wait to hear if @tdykstra wants VB samples. I assume if not there is no point in doing a PR. If yes I don't know how to add dev_langs metadata is there a sample?

Yes, we'd be happy to incorporate VB for the System.Text.Json articles. See this example for dev_langs in the metadata block at the top of the article:  https://raw.githubusercontent.com/dotnet/docs/master/docs/core/tutorials/with-visual-studio.md

@tdykstra Some of the features/examples are not compatible with VB but the most useful ones coming from Newtonsoft work correctly in VB, How do you want me to handle that? BTW without this article I would have thought the whole library was broken for VB, it is excellent.

For now, just don't make a VB version for a snippet if it doesn't work in VB, and I'll look into how we want to display that (perhaps a standardized VB code block that just says the feature is not available).
FYI You'll find two approaches to presenting code in the docs -- there's a project for the original doc created for 3.1 and there's a project for the 5.0 additions.  The older project uses snippet tags (XML tags in code comments that define which part of a file to display in the doc) to minimize the amount of code shown in the doc, while the latter does not use snippet tags and instead goes  the route of displaying entire code files so the person who reads the code in the doc isn't missing any context and can try it out by just copying and pasting the whole code block into a project.

@tyclintw I ported both and if I suppress the Obsolete error, (almost) all the code from both paths run in VB without error, the few that don't are bugs in my port that I need to resolve. Without that suppression very few run at all and would require significate rewriting and probably a different article just focused on how to use the library with VB and many of the performance comments would not apply.  @CyrusNajmabadi wants to remove the suppression to prevent VB from using most of this libraries like this one. if the is the case you should probably close this issue and open one to document the library just for VB.

We absolutely should not doc this for vb using suppression of the obsolete attribute. That is definitely not at all what we would want people to do. Please do not publish docs that do that under any circumstances.

@tdykstra @CyrusNajmabadi that is why I copied you and based on that I don't think documenting this article for VB is correct either.

@paul1956 Do you have the converted VB code in a repository where I can take a look and see what is showing up as obsolete?

I have it on my local machine. I can push in about an hour. I will not do a PR. So it will be on https://github.com/paul1956/docs. There are now VisualBasic directories for both snippets with project files.

@tdykstra I posted it, let me know if you have any questions, just search for
<Obsolete("Ignore", False)>

to see all the places I needed to use the workaround. Most of the examples run a few don't because port is not complete, they pointed too issues with converter that I am fixing and I am not working on this for now because of the Obsolete issue.

@layomia what guidance should we give regarding System.Text.Json use in Visual Basic? Trying to convert existing C# projects to VB results in many BC40000 obsolete warnings (which indicate user-defined types are obsolete, not STJ APIs), some of which seem to result from root cause errors like this one:

BC30668	'Utf8JsonReader' is obsolete: 'Types with embedded references are not supported in this version of your compiler.'.

Most of the translated code runs successfully when the BC40000 errors are ignored.

@layomia I would say all will work correctly what doesn't currently work is due to translation errors caused by automatic translation. They would need to be manually fixed before I would do a PR (which as of now I am not doing). This was only posted in this state so @tdykstra could review. There are also all kind of formatting issues.

Please see: https://github.com/dotnet/docs/issues/22096#issuecomment-751174985
These types are marked as Obsolete precisely so they are not used from languages that we haven't added explicit ref-struct support for.  That includes VB.

Trying to convert existing C# projects to VB results in many BC40000 obsolete warnings

Yes.  This is the expected behavior.  These APis are not supported from languages that do not have ref-struct support.  We should not doc otherwise as that could be very confusing for users in terms of making it seem like they are supported in some fashion.  Tagging @KathleenDollard

@CyrusNajmabadi Thanks for the explanation. It sounds like we should simply advise against using System.Text.Json with VB. For VB users it would be helpful if we could give a better error message than BC40000 obsolete.

For VB users it would be helpful if we could give a better error message than BC40000 obsolete.

Agreed. However, this was done to prevent older compilers (including c#) from using these. The only way to get an older compiler to reject it is to use something they recognize is not allowed. In the car 'Obsolete'

@paul1956 I'm sorry about the time you spent converting the snippets to VB - I didn't know about the ref struct issue when I said go ahead.  I've created a PR to add a note that explains the BC40000 errors and advises against using System.Text.Json with VB.

@paul1956 I'm sorry about the time you spent converting the snippets to VB - I didn't know about the ref struct issue when I said go ahead.  I've created a PR to add a note that explains the BC40000 errors and advises against using System.Text.Json with VB.

There may be some functions in the library usable by VB but the article would need a rewrite because they are not the high performance ones.

There may be some functions in the library usable by VB but the article would need a rewrite because they are not the high performance ones.

Reopening the issue to be about publishing an article explaining how to use System.Text.Json with VB, rather than a note warning not to use it. See revised note in the C# article - #22323.

Reopening the issue to be about publishing an article explaining how to use System.Text.Json with VB, rather than a note warning not to use it. See revised note in the C# article - #22323.

@paul1956 We've had some discussions offline and here's the revised plan:

Make the VB note we just added into an H2 section that we can link to.
Expand the note to explain that this means you can’t write custom converters (since you can’t override the Read method, because it takes a Utf8JsonReader)
At the top of several docs, link to the VB note:

How to write custom converters
How to migrate from Newtonsoft docs
How to use JsonDocument, Utf8JsonReader, and Utf8JsonWriter

Make VB versions of Utf8JsonReader and custom converter snippets that contain only a link to the VB note. When the reader selects VB, the link to that note is all they'll see for tasks that can't be done safely in VB.
Make VB version of the first snippet under Deserialize from UTF-8, by changingvar readOnlySpan = new ReadOnlySpan<byte>(jsonUtf8Bytes);
weatherForecast = JsonSerializer.Deserialize<WeatherForecast>(readOnlySpan);

to the VB equivalent of:var jsonString = Encoding.UTF8.GetString(jsonUtf8Bytes);
weatherForecast = JsonSerializer.Deserialize<WeatherForecast>(jsonString);

All other snippets can just convert from C# to VB, as there are no other uses of reader or span.

So we can use your VB code, it just needs:

Remove all of the obsolete-ignore attributes.
Replace the snippet noted above that uses Span with the String alternative.
Replace all of the other snippets that use Utf8JsonReader withhttps://docs.microsoft.com/dotnet/standard/serialization/system-text-json-how-to#visual-basic-support

Remove all of the code that is used to support Utf8JsonReader-related snippets but isn't displayed in a doc as a snippet.

I'll take care of the doc changes listed above.  Do you want to make the changes to your existing VB code and make a PR for that? We will need the 5.0 snippets as well as the original collection written for 3.1 and the configure options project. If you'd prefer, I can take the code you have and make the required changes and a PR for that.

@paul1956 We've had some discussions offline and here's the revised plan:

Make the VB note we just added into an H2 section that we can link to.
Expand the note to explain that this means you can’t write custom converters (since you can’t override the Read method, because it takes a Utf8JsonReader)
At the top of several docs, link to the VB note:

How to write custom converters
How to migrate from Newtonsoft docs
How to use JsonDocument, Utf8JsonReader, and Utf8JsonWriter

Make VB versions of Utf8JsonReader and custom converter snippets that contain only a link to the VB note. When the reader selects VB, the link to that note is all they'll see for tasks that can't be done safely in VB.
Make VB version of the first snippet under Deserialize from UTF-8, by changingvar readOnlySpan = new ReadOnlySpan<byte>(jsonUtf8Bytes);
weatherForecast = JsonSerializer.Deserialize<WeatherForecast>(readOnlySpan);

to the VB equivalent of:var jsonString = Encoding.UTF8.GetString(jsonUtf8Bytes);
weatherForecast = JsonSerializer.Deserialize<WeatherForecast>(jsonString);

All other snippets can just convert from C# to VB, as there are no other uses of reader or span.

So we can use your VB code, it just needs:

Remove all of the obsolete-ignore attributes.
Replace the snippet noted above that uses Span with the String alternative.
Replace all of the other snippets that use Utf8JsonReader withhttps://docs.microsoft.com/dotnet/standard/serialization/system-text-json-how-to#visual-basic-support

Remove all of the code that is used to support Utf8JsonReader-related snippets but isn't displayed in a doc as a snippet.

I'll take care of the doc changes listed above.  Do you want to make the changes to your existing VB code and make a PR for that? We will need the 5.0 snippets as well as the original collection written for 3.1 and the configure options project. If you'd prefer, I can take the code you have and make the required changes and a PR for that.

@tdykstra you can make the changes, let me know if there is any thing you need from me. Thank you and everyone else that contributed to coming to this fantastic resolution. If it OK I will like this discussion to the GitHub discussion, it is much better then I had hoped for.

@tdykstra you can make the changes, let me know if there is any thing you need from me. Thank you and everyone else that contributed to coming to this fantastic resolution. If it OK I will like this discussion to the GitHub discussion, it is much better then I had hoped for.

let me know if there is any thing you need from me.

If you could review the PR https://github.com/dotnet/docs/pull/22414 it would be much appreciated. You can make fixes and suggestions in the browser, or via a PR to my fork/branch before the PR is merged, or via a PR to master after the PR is merged.

If it OK I will like this discussion to the GitHub discussion

OK with me

let me know if there is any thing you need from me.

If you could review the PR https://github.com/dotnet/docs/pull/22414 it would be much appreciated. You can make fixes and suggestions in the browser, or via a PR to my fork/branch before the PR is merged, or via a PR to master after the PR is merged.

If it OK I will like this discussion to the GitHub discussion

OK with me

@tdykstra would love to review, I forked you repo which Branch should I review? FYI I have never reviewed a PR in Visual Studio.

@tdykstra would love to review, I forked you repo which Branch should I review? FYI I have never reviewed a PR in Visual Studio.

Branch is vbnotes. I haven't done a GitHub review in VS either, I usually use the browser.  You can make changes to the code in VS and make them into a pull request if you prefer.

Branch is vbnotes. I haven't done a GitHub review in VS either, I usually use the browser.  You can make changes to the code in VS and make them into a pull request if you prefer.

Figured it out, cleaned up code, by opening project file in VS and running "code cleanup". Also dot rid of 2 our of 3 IDE issues. The last is an assignment that is never used but that makes sense since user code after the assignment is intentionally missing.

Figured it out, cleaned up code, by opening project file in VS and running "code cleanup". Also dot rid of 2 our of 3 IDE issues. The last is an assignment that is never used but that makes sense since user code after the assignment is intentionally missing.

Expand the note to explain that this means you can’t write custom converters (since you can’t override the Read method, because it takes a Utf8JsonReader)

@tdykstra - just want to note that a workaround for this is to implement custom converters in a C# library assembly, and reference that assembly from your VB project. This assumes that all that is being done is registering the converters into the serializer, and not calling the Read methods of the converters from VB code. We could mention this in the planned docs, and maybe show an example.

Expand the note to explain that this means you can’t write custom converters (since you can’t override the Read method, because it takes a Utf8JsonReader)

@tdykstra - just want to note that a workaround for this is to implement custom converters in a C# library assembly, and reference that assembly from your VB project. This assumes that all that is being done is registering the converters into the serializer, and not calling the Read methods of the converters from VB code. We could mention this in the planned docs, and maybe show an example.


Fix CTLR+SHIFT+L shortcut when the textbox is not visible

Summary
Fix CTLR+SHIFT+L shortcut when the textbox is not visible (for example, integrations section).
Ticket Link
MM-10080
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Ran make test to ensure unit and component tests passed

SIFTH

Never heard of that key before 😅 😛

What SIFTH? and what push -f? :wink:

CTLR

OGM! Mabye I have dyselxia!

lol