Could not resolve dependency: react

npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/react
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>|| ^15.0.0 || ^16.0.0" from<EMAIL_ADDRESS>npm ERR! node_modules/react-text-mask
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

https://github.com/text-mask/text-mask/blob/master/react/package.json#L17

Same issue here. Would love to see a workaround or solution. Thanks.

Duplicates issue https://github.com/text-mask/text-mask/issues/1032 and addressed by PR https://github.com/text-mask/text-mask/pull/1038 . However, repo is unmaintained, so that probably won't happen.

The only solution for this that worked for me was force npm installing react-text-mask...not ideal

Add  || ^17.0.0 in peerDependencies (package-lock.json)
"peerDependencies": {
"react": "^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0"
},


react-web start 出现错误

ERROR in Path must be a string. Received undefined

同问

react-native 版本号0.30; es2016, 是不是因为这个问题造成的??

同问

遇到过同样的问题，是因为node版本，我从6.x改为4.x就好了

是否可以使用 node 6.x来start, 因为服务器使用koa, 只能用6.x来启动

遇到了相同的问题。。

it's impossible to get it to work with the latest version of react and node 6, use NVM and run react-web start with node 5.x

@damly @brainpoint @xnllc @lee-my @qussers @yawetse , according to closed issue https://github.com/webpack/webpack/issues/2463 , it can be resolved by:
use node 5.x instead of node 6

or
upgrade to<EMAIL_ADDRESS>

add a key 'publicPath' to the webpack config  output node
output:{
publicPath:''
}

@Beven91 👍

@brainpoint , you're right :+1:


Unable to get a resource-specific description

Describe the bug
According to the documentation, request to /api/ids/data must return resource-specific description when elementId is specified.
In fact, the same response containing the overall connector description is returned.
To Reproduce
Steps to reproduce the behavior:

Perform all the steps from the Provider section to create a resource, contract etc.
Make a request to /api/ids/data providing the same host as recipient and offer-id as elementId

Expected behavior
Description of the ids:Resource type returned.
Actual behavior
Description of the ids:BaseConnector is returned.
Desktop (please complete the following information):

Version 6.2.0

Additional context
Full configuration from Examples. A single connector instance is used, so it requests a description from itself.

Hi, can you give us a little more detail on how you tried to request resource specific description. Did you create a description request message? Which API did you use?

Hello!
I did Step 2: Query Provider - Request Resource Metadata and used the ID of the offer created on the very first step in the Provider section.

Hi, at the moment we can not reproduce this failure. Can you give us more information about your created resource. Did you use Swagger, the UI or Python scripts to create a full resource ?
Alternatively you can go to the application.properties and set following properties:
## Starting path for bootstrapping
bootstrap.path=./src/test/resources
bootstrap.enabled=true

This will provide example resources and then you can follow on with these steps:

Call API POST - api/ids/description with recipient: https://localhost:8080/api/ids/data
Call API POST - api/ids/description with recipient: https://localhost:8080/api/ids/data and elementId:  https://localhost:8080/api/offers/...

You then should see the resource-specific description.

I do not want to use generated resources, I want to repeat the steps described in the documentation for Provider and Consumer.
Here is the small postman collection (and environment) I've created to perform only the steps I needed. Please check it out, with the last request I expect to get a Resource-specific description (for the specified offer-id), not the ids:BaseConnector.
postman.zip

Hi @MikhailGordienk, I had a look at your Postman collection. I executed every step successfully. Within the last step, you set the offer-id (e.g. db70c326-778f-4e6a-9932-ca4008280665) as the elementId. This is wrong. It should be the offer-location (e.g. https://localhost:8080/api/offers/db70c326-778f-4e6a-9932-ca4008280665) as this is the complete url and handled as the id for any ids related communication.

I tried both, with the location the response is the following:
{
    "reason": {
        "properties": null,
        "@id": "https://w3id.org/idsa/code/NOT_FOUND"
    },
    "payload": "The requested element https://localhost:8080/api/offers/bd55d6d4-ef2f-4882-8584-cfea59e4bd8a could not be found.",
    "type": "de.fraunhofer.iais.eis.RejectionMessageImpl"
}

which is also not good.


Add assembly settings for building fat jar

Current coverage is 93.26%

Merging #91 into master will not affect coverage as of 94b2f7d

@@            master     #91   diff @@
======================================
  Files           31      31
  Stmts          564     564
  Branches        36      36
  Methods          0       0
======================================
  Hit            526     526
  Partial          0       0
  Missed          38      38

Review entire Coverage Diff as of 94b2f7d

Powered by Codecov. Updated on successful CI builds.

@trane assuming that you are ok this, merging it now :)


[BEAM-436] Re-enable RunnableOnService tests which need tempRoot

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

@peihe's recent work to improve tempRoot handling means that these tests are now working properly. They can be re-enabled to validate runner display data for i/o transforms.

R: @lukecwik

Any consensus whether these should be marked as @NeedsRunner and not @RunnableOnService (since they don't actually run a pipeline, just construct a pipeline)?

re: @NeedsRunner vs @RunnableOnService: There are additional DisplayData tests that are currently annotated with @RunnableOnService; let's tackle that in a separate PR.
@tgroh, can you chime in on BEAM-474?

Please hold; I thought I had validated these work now, turns out I missed a maven install somewhere. Still failing..

Consensus can continue on BEAM-474

Ping?

Closing for now. This requires more refactoring than I expected.


Handle for foreign key fields

I've created an index that includes foreign key fields like this::
@classmethod
 def get_document(cls, obj):
     fields = (
        'modelname',
        'sig_code',
        'sig_access',
        'who.handle',
        'who.first_name',
        'who.last_name',
        'who.user_type',
        'who.email',
        'who.telephone',
        'who.title',
        'who.about',
        'who.notes',
        'who.last_updated',
        'who.is_active',
    )

But this causes problems in javascript because of the . in the field name.   It would be nice to be able to do use __ instead, eg::
fields = (
        'modelname',
        'sig_code',
        'sig_access',
        'who__handle',
        'who__first_name',
        'who__last_name',

You can make the field names anything you want, I don't believe the key names of the returned dictionary map to the model anywhere except for the get_document function, so feel free to do "who__handle": obj.who.handle.  Let me know if that makes sense?  We can video chat if it doesn't.

Yes - had a modified version from you docs and it all got over complicated.  Went back to version as described in docs and all is well!


[Error: Cannot get width, frame is already closed!]

Using the following code to run the app in iOS and when it is run it throws error   [Error: Cannot get width, frame is already closed!]
code link  :[https://github.com/mat2718/vision-camera-face-detector/blob/master/example/src/App.tsx]
"@mat2718/vision-camera-face-detector": "^0.1.15",
"node-fetch": "^3.3.2",
"react": "18.2.0",
"react-native": "0.72.5",
"react-native-canvas": "^0.1.39",
"react-native-reanimated": "^3.5.4",
"react-native-vision-camera": "^2.16.1",

hello, im sorry for the delay in response. im currently working on a rewrite to align with vision-camera-v3. ill see if i can take a look at the IOS code again to see if i can spot the issue


Why not write lib in ES6 and transpile in a post install script?

A lot of libraries ship a dist folder of transpiled files to avoid having babel-core as a dependency (keeping it only as a dev dependency). I have never liked that, since it makes linking to hot-fixes troublesome (you need to to create an additional commit that includes the transpiled dist folder, which messes with your PR).
In our case, we are already downloading babel-core as a dependency. It would be fairly trivial to transpile our stuff with a postinstall script or on first run.

Babel changes constantly, we can't publish source code and hope that after npm install code will be successfully transpiled and work fine. Also, when we want to test AVA on 0.10 and 0.12, we'll need to transpile that code before running the tests.
The most important concern is: what benefits could writing the code in ES6 bring to AVA?

Hah, no way ;P Transpiling on postinstall is so bad. Lots of CoffeeScript projects do that and I absolutely hate it. I'm not totally against writing AVA in ES2015, but it should be prepublish step, and I don't think we should use our resources on that right now. We can rewrite in ES2015 at a later time when AVA is more stable. Rewriting something when it's actively developed is a very popular doom fallacy.

you need to to create an additional commit that includes the transpiled dist folder

Only if you commit dist. The common pattern is to transpile in the prepublish npm run script hook. Like: https://github.com/sindresorhus/pageres/blob/28dd9b3004c05470202f02e0ac0d0ee148a63768/package.json#L17

You do need to commit the transpiled dist if you want to temporarily rely on your hotfix:
  $ npm install -S jamestalmage/somerepo#somebranch

You would need to have dist published in somebranch.
The brittle install is sufficient argument against.

You do need to commit the transpiled dist if you want to temporarily rely on your hotfix

Not really. You can just publish it as a scoped package under your username namespace.
https://docs.npmjs.com/getting-started/scoped-packages

yeah, I thought of that.
It would be cool if npm publish had a --scoped that allowed you to do that without modifying package.json

Sorry to chime in here, but I'm looking around at issues looking for something else and noticed this. Another solution to address:

You do need to commit the transpiled dist if you want to temporarily rely on your hotfix

Is there any reason you couldn't just publish a temporary release with npm publish --tag beta? docs

That requires ownership of the module being deployed. I have been added as a collaborator since making that comment, so it's moot for me in the AVA context, but still applicable to any module you don't own.
I filed this proposal with npm. The gist is that I think there should be an easy way to deploy hot fixes for projects you don't own (under your own namespace).

Ah, missed your use case there. Makes sense. And The scoped package is a good work around until your proposal is dealt with. :+1:

The one thing that disappoints me about transpiling in prepublish is I have to transpile for the lowest common denominator, i.e. babel-preset-es2015.  If you transpile in a postinstall you could use babel-preset-es2015-node to get the most optimized transpilation for the user's version of node.  But I agree there are to many other problems with transpiling during postinstall.
But I guess I could publish transpilations for node 4, 5, and 6 though and have a bit of extra code to automatically select the right version based on the node version.


bugfix for worker creation

I use this to throttle the number of requests I am making to a web service, and use the callback to update my database when the webservice returns.  If I try and create the same web service request more than once, the callback was being added multiple times, even though the worker was not.
I hope this is what you needed, I have not worked on github before.

Closing this.  It won't apply after the big refactor I did on this lib months ago.

cool - I think we worked it in anyway, I have been running hundreds of
workers each day for a while now.  Thanks!
ps - guess I better upgrade to latest, I appear to have incurred some
technical debt ;-)
rick wrote:

Closing this.  It won't apply after the big refactor I did on this lib months ago.

Reply to this email directly or view it on GitHub:
https://github.com/technoweenie/node-chain-gang/pull/1#issuecomment-3062853
.


Homework-3 submission

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)
Homework-3 completed
What did you learn from the changes you have made?
SQL aggregation, where, having, temp tables, date functions
Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?
None
Were there any challenges? If so, what issue(s) did you face? How did you overcome it?
Not much
How were these changes tested?
Tested using Excel and all reconciled.
A reference to a related issue in your repository (if applicable)
Checklist

[x] I can confirm that my changes are working as intended

Good job on HW3.


Creating a measure with , in it's name create issues

Steps to reproduce
session = tt.create_session()
df = pd.DataFrame({"f1": ["0","1"], "Test":[3.5,12.8]})
store = session.read_pandas(df, "CommaStore")
c = session.create_cube(store, mode="no_measures")
c.measures["Te,st"] = 5
c.query()

Actual Result

Expected Result
Name with , must be forbidden everywhere or properly handled (, not changed in ;)
Environment
atoti 0.5.4

Reported in this gitter message https://gitter.im/atoti/atoti?at=608fd9b80845c416dcbf5eb6

Invalid measure names including , will be rejected properly in the next release


webcam ??

Can we record images and sound from the camera?
(Webcam, svideo card, etc.)

I have not done that currently.
What you can try is create an IImageProvider for WebCam.
Then join it with audio from Microphone.
I would also try that and let you know.


Support projections (field allowlist) in entity queries

In order to optimize response size, it can be helpful to filter out unneeded entity fields from the result of a query. We should support that, using some behaviors and restrictions:

Use a query string parameter ("fields"?) to specify the list of fields to allow (CSV?)
The id field is always present in the response.
The fields list may be empty, yielding only the id
The list cannot have fields that don't exist on the entity, else error

As a followup thought, it would be interesting to see how this could apply to the generated TS library. Could the specification of fields also omit object properties from the returned result type of queries?

Yes, just the generated API and not for other routes in general.

I'd consider it a best practice to always send the ID. After all, a set of results that's completely void of properties would be confusing (even if that's what they asked for) and impossible to know how to compose more URLs to get the full data for individual items if desired.
As a specific example, let's take PUT, which generates an ID.  If the developer wishes to not get reflected back to them all the properties that they just specified, they would at least need the ID to get a hold of it later.  Not sending it might be a confusing mistake.


Should Vault allow retrieval of "legacy" services by id, type?

This is one of a few issues raised by experimenting with vault for this: https://tomcrane.github.io/scratch/cp/tree.html
vault.get({id, type}) won't recover an ImageService2 or a SearchService1 because they have @id and @type, even in the normalised P3 representation. Should Vault be forgiving and still allow you to obtain this, e.g., vault.get("id": "https://example.org/my-image-service", "type": "ImageService2") ?
Vault shouldn't attempt to "normalise" ImageService2 to 3 or anything like that - it's an external service, out of vault's normalisation remit. But you might be in a scenario where you don't know what id and type are, or don't want to have special cases in the code.
More controversial - while Vault should be able to recover a @id resource from the value of that property, or a {id,type} ref, should it extend the returned resource with id and type if it has @id and @type (and as long as it doesn't already have id or type properties? This would make for simpler code, e.g.,
const someService = vault.get(serviceId);
if(someService.type === "ImageService2"){
   // do some imagey thing
}

...instead of testing for .type and ["@type"] all the time.

This came up with a recent addition to the parser. https://github.com/IIIF-Commons/parser/pull/9 This PR adds better support for P2 services and custom services. They no longer automatically get updated to id/type and remain as their @id and @type variants.
I think the solution, for services specifically, should be a simple helper.
const services = createServicesHelper(vault);

services.getServices(canvas);

The fully resolved services returned from this (opinionated) helper could have both id/type and @id / @type universally, in addition to any specific parsing that may be useful that could be built over time, including other helpers.
For example, using the physical dimensions service you might have a helper like:
const size = services.getPhysicalSizeInMetric(canvas);

size.unit; // cm
size.value // 80

I don't think vault or parser should change the source data. The purpose of vault is to store a valid presentation 3 representation of any manifest or collection. Helpers have the freedom to add these quality of life additions.


Return correct size in headers for segmented blobs.

The size of the segmented blob can only be determined when the segmented chunk has been fetched. This PR fixes the issue of returning correct for segmented blobs by taking advantage of the fact that for a segmented blob, first chunk will always be a metadata chunk, and subsequently there will be only data chunk that will ever be returned.

Codecov Report

Merging #1616 into master will decrease coverage by 0.03%.
The diff coverage is 91.66%.

@@             Coverage Diff              @@
##             master    #1616      +/-   ##
============================================
- Coverage     73.77%   73.73%   -0.04%
- Complexity     8511     8516       +5
============================================
  Files           598      598
  Lines         46470    46485      +15
  Branches       5889     5893       +4
============================================
- Hits          34282    34277       -5
- Misses        10426    10447      +21
+ Partials       1762     1761       -1

Impacted Files
Coverage Δ
Complexity Δ

...om/github/ambry/frontend/AmbrySecurityService.java
96.93% <50.00%> (-2.02%)
65.00 <2.00> (ø)

...java/com/github/ambry/router/GetBlobOperation.java
91.69% <100.00%> (+0.15%)
51.00 <5.00> (+7.00)

...hub/ambry/protocol/CatchupStatusAdminResponse.java
75.00% <0.00%> (-6.25%)
6.00% <0.00%> (-1.00%)

...a/com/github/ambry/network/SSLBlockingChannel.java
75.67% <0.00%> (-5.41%)
4.00% <0.00%> (ø%)

.../com/github/ambry/network/BlockingChannelInfo.java
80.15% <0.00%> (-3.97%)
15.00% <0.00%> (-1.00%)

...c/main/java/com/github/ambry/network/Selector.java
78.38% <0.00%> (-1.83%)
78.00% <0.00%> (-2.00%)

.../main/java/com/github/ambry/router/PutManager.java
87.09% <0.00%> (-1.30%)
30.00% <0.00%> (ø%)

...m/github/ambry/replication/ReplicationMetrics.java
91.39% <0.00%> (-1.03%)
54.00% <0.00%> (-1.00%)

...va/com/github/ambry/replication/ReplicaThread.java
84.86% <0.00%> (-0.65%)
149.00% <0.00%> (-2.00%)

...ain/java/com/github/ambry/router/PutOperation.java
92.98% <0.00%> (+0.16%)
125.00% <0.00%> (+1.00%)

... and 6 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 7986b46...6370fce. Read the comment docs.


Issue with react-native-app-auth

As discussed on Discord I'm having issues with react-native-app-auth.
After setting up open-native and adding react-native-app-auth, I get the following error on Android when calling authorize():
  JS: CONSOLE LOG: Error: ����
  JS:     at file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:278:0
  JS:     at new ZoneAwarePromise (file: src/webpack:/ns-ng-open-native/node_modules/zone.js/fesm2015/zone.js:1411:0)
  JS:     at promisify (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:276:0)
  JS:     at <computed> [as authorize] (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/nativemodules.js:87:36)
  JS:     at authorize (file: src/webpack:/ns-ng-open-native/node_modules/react-native-app-auth/index.js:246:19)
  JS:     at ItemsComponent.doAuthorize (file: src/webpack:/ns-ng-open-native/src/app/item/items.component.ts:14:17)
  JS:     at ItemsComponent_Template_Button_tap_2_listener (file: src/webpack:/ns-ng-open-native/src/app/item/items.component.ts:45:88)
  JS:     at executeListenerWithErrorHandling (file: src/webpack:/ns-ng-open-native/node_modules/@angular/core/fesm2015/core.mjs:13956:0)
  JS:     at Object.wrapListenerIn_markDirtyAndPreventDefault (file:///data/data/org.nativescript.nsngopennative/files/app/...

On iOS I get this this error:
  ***** Fatal JavaScript exception - application has been terminated. *****
  NativeScript encountered a fatal error: Uncaught Error: Unexpected type 'other' at index 10 - the autolinker must have failed to parse the native module.
  at
  toNativeArguments(file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/ios/converter.js:45:22)
  at (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/ios/converter.js:206:42)

The log output when starting the app looks OK:
<EMAIL_ADDRESS>Autolinking React Native ios native modules...
<EMAIL_ADDRESS>Unable to extract any methods from RCTBridgeModule named "EventDispatcher".
<EMAIL_ADDRESS>Writing RNPodspecs.h
<EMAIL_ADDRESS>Writing Podfile
<EMAIL_ADDRESS>Writing React-Native-Podspecs.podspec
<EMAIL_ADDRESS>Writing modulemap.json
<EMAIL_ADDRESS>Autolinked @open-native/core!
<EMAIL_ADDRESS>Autolinked react-native-app-auth!
<EMAIL_ADDRESS>... Finished autolinking React Native ios native modules.

Example repo: https://github.com/fpaaske/open-native-issue-23

Hey so I think I fixed it. install the latest version of open-native then try again. Also you need to configure custom AppDelegate to make the module work like this in your app.ts file above Application.run(...):
interface RNAppAuthAuthorizationFlowManager extends NSObjectProtocol {
  authorizationFlowManagerDelegate: RNAppAuthAuthorizationFlowManagerDelegate;
}
declare const RNAppAuthAuthorizationFlowManager: {
  prototype: RNAppAuthAuthorizationFlowManager;
};

interface RNAppAuthAuthorizationFlowManagerDelegate extends NSObjectProtocol {
  resumeExternalUserAgentFlowWithURL(url: NSURL): boolean;
}
declare const RNAppAuthAuthorizationFlowManagerDelegate: {
  prototype: RNAppAuthAuthorizationFlowManagerDelegate;
};

if (global.isIOS) {
  @NativeClass()
  @ObjCClass(UIApplicationDelegate, RNAppAuthAuthorizationFlowManager)
  class MyDelegate extends UIResponder implements UIApplicationDelegate, RNAppAuthAuthorizationFlowManager {
    authorizationFlowManagerDelegate: RNAppAuthAuthorizationFlowManagerDelegate;

    get window() {
      return Application.ios.window;
    }

    set window(window) {}

    applicationDidFinishLaunchingWithOptions(application: UIApplication, launchOptions: NSDictionary<string, any>): boolean {
      return true;
    }

    applicationDidBecomeActive(application: UIApplication): void {}

    applicationOpenURLOptions(app: UIApplication, url: NSURL, options: NSDictionary<string, any>): boolean {
      if (this.authorizationFlowManagerDelegate?.resumeExternalUserAgentFlowWithURL(url as NSURL)) {
        return true;
      }
      return RCTLinkingManager.applicationOpenURLOptions(app, url, options);
    }

    public 'setAuthorizationFlowManagerDelegate:'(delegate) {
      this.authorizationFlowManagerDelegate = delegate;
    }

    public static ObjCExposedMethods = {
      'setAuthorizationFlowManagerDelegate:': { returns: interop.types.void, params: [RNAppAuthAuthorizationFlowManagerDelegate] },
    };
  }
  Application.ios.delegate = MyDelegate;
}

Let me know how this goes. For me it's working now, obviously need to set proper real params probably. If you face another problem, post the logs here so i can debug further.

Thank you, @ammarahm-ed! And thanks for providing the application delegate, I totally forgot about that.

probably because params are just dummy data.

Yes, with proper configuration, I can now log in and out using the react-native-app-auth plugin on iOS 👍
However, on Android I get errors like this when I'm not providing the (some? all?) optional parameters to authorize().
In this case I didn't set the clientSecret:
Error: Argument at index 3 expected a string, but got undefined.
when I added clientSecret I got a new error for the additionalParameters:
Error: Argument at index 5 expected an object value, but got undefined
The parameters are set in the react native plugin like this:
  const nativeMethodArguments = [
    issuer,
    redirectUrl,
    clientId,
    clientSecret,
    scopes,
    additionalParameters,
    serviceConfiguration,
    skipCodeExchange,
    convertTimeoutForPlatform(Platform.OS, connectionTimeoutSeconds),
  ];

  if (Platform.OS === 'android') {
    nativeMethodArguments.push(useNonce);
    nativeMethodArguments.push(usePKCE);
    nativeMethodArguments.push(clientAuthMethod);
    nativeMethodArguments.push(dangerouslyAllowInsecureHttpRequests);
    nativeMethodArguments.push(customHeaders);
  }

  if (Platform.OS === 'ios') {
    nativeMethodArguments.push(additionalHeaders);
    nativeMethodArguments.push(useNonce);
    nativeMethodArguments.push(usePKCE);
  }

  return RNAppAuth.authorize(...nativeMethodArguments);

@fpaaske Are method calls with optional parameters working on iOS?

@ammarahm-ed Yes, on iOS I can call authorize like this, with only the essential parameters:
    authorize({
      clientId: this.clientId,
      issuer: this.issuer,
      redirectUrl: this.redirectUrl,
      scopes: this.scopes,
      useNonce: true,
      usePKCE: true,
      warmAndPrefetchChrome: false
    }).then(result => {
      console.log(result.accessToken);
      this.authorized = true;
      this.idToken = result.idToken;
    }).catch(error => {
      this.authorized = false;
      console.log(error.stack);
    });

Okay, I will see, seems like android is treating all params as required. Will fix and update.

@ammarahm-ed I also updated my repo with a proper IdP-config (in the readme) so you can test with valid configuration too.

@fpaaske Try the latest alpha, it should now allow optional params to be null/undefined.

@ammarahm-ed I've updated the repo and tested with the latest alpha and now the it seems like optional parameters are allowed, but I get this error instead when tapping "authorize":
  JS: CONSOLE LOG: Error: ����
  JS:     at file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:281:0
  JS:     at new ZoneAwarePromise (file: src/webpack:/ns-ng-open-native/node_modules/zone.js/fesm2015/zone.js:1411:0)
  JS:     at promisify (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:279:0)
  JS:     at <computed> [as authorize] (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/nativemodules.js:87:36)
  JS:     at authorize (file: src/webpack:/ns-ng-open-native/node_modules/react-native-app-auth/index.js:246:19)
  JS:     at AppAuthComponent.doAuthorize (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:19:17)
  JS:     at AppAuthComponent_Template_Button_tap_2_listener (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:55:90)
  JS:     at executeListenerWithErrorHandling (file: src/webpack:/ns-ng-open-native/node_modules/@angular/core/fesm2015/core.mjs:13956:0)
  JS:     at Object.wrapListenerIn_markDirtyAndPreventDefault (file:///data/data/org.nativescript.nsngopennative/files/...

You probably already know, but converter.js:281 is here :)
export function promisify(module, methodName, methodTypes, args) {
    return new Promise((resolve, reject) => {
        try {
            module[methodName](...toNativeArguments(methodTypes, args, resolve, reject)); // line 281
        }
        catch (e) {
            reject(e);
        }
    });
}

@ammarahm-ed I've updated the repo and tested with the latest alpha and now the it seems like optional parameters are allowed, but I get this error instead when tapping "authorize":
  JS: CONSOLE LOG: Error: ����
  JS:     at file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:281:0
  JS:     at new ZoneAwarePromise (file: src/webpack:/ns-ng-open-native/node_modules/zone.js/fesm2015/zone.js:1411:0)
  JS:     at promisify (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:279:0)
  JS:     at <computed> [as authorize] (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/nativemodules.js:87:36)
  JS:     at authorize (file: src/webpack:/ns-ng-open-native/node_modules/react-native-app-auth/index.js:246:19)
  JS:     at AppAuthComponent.doAuthorize (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:19:17)
  JS:     at AppAuthComponent_Template_Button_tap_2_listener (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:55:90)
  JS:     at executeListenerWithErrorHandling (file: src/webpack:/ns-ng-open-native/node_modules/@angular/core/fesm2015/core.mjs:13956:0)
  JS:     at Object.wrapListenerIn_markDirtyAndPreventDefault (file:///data/data/org.nativescript.nsngopennative/files/...

You probably already know, but converter.js:281 is here :)
export function promisify(module, methodName, methodTypes, args) {
    return new Promise((resolve, reject) => {
        try {
            module[methodName](...toNativeArguments(methodTypes, args, resolve, reject)); // line 281
        }
        catch (e) {
            reject(e);
        }
    });
}

Does it work when you pass all params like before or it's not working even then?

Hm, good point. I'll test this and report back.

Ah i think I found what's wrong. will fix!

For what it's worth, I got the same error with all parameters filled out:
  JS: CONSOLE LOG: Error: ����
  JS:     at file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:281:0
  JS:     at new ZoneAwarePromise (file: src/webpack:/ns-ng-open-native/node_modules/zone.js/fesm2015/zone.js:1411:0)
  JS:     at promisify (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:279:0)
  JS:     at <computed> [as authorize] (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/nativemodules.js:87:36)
  JS:     at authorize (file: src/webpack:/ns-ng-open-native/node_modules/react-native-app-auth/index.js:246:19)
  JS:     at AppAuthComponent.doAuthorize (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:19:17)
  JS:     at AppAuthComponent_Template_Button_tap_2_listener (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:69:90)
  JS:     at executeListenerWithErrorHandling (file: src/webpack:/ns-ng-open-native/node_modules/@angular/core/fesm2015/core.mjs:13956:0)
  JS:     at Object.wrapListenerIn_markDirtyAndPreventDefault (file:///data/data/org.nativescript.nsngopennative/files/...

Then calling authorize again gives this error (no change in my code):
  JS: CONSOLE LOG: Error: No javascript exception or message provided.
  JS:     at file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:281:0
  JS:     at new ZoneAwarePromise (file: src/webpack:/ns-ng-open-native/node_modules/zone.js/fesm2015/zone.js:1411:0)
  JS:     at promisify (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/converter.js:279:0)
  JS:     at <computed> [as authorize] (file: src/webpack:/ns-ng-open-native/node_modules/@open-native/core/src/android/nativemodules.js:87:36)
  JS:     at authorize (file: src/webpack:/ns-ng-open-native/node_modules/react-native-app-auth/index.js:246:19)
  JS:     at AppAuthComponent.doAuthorize (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:19:17)
  JS:     at AppAuthComponent_Template_Button_tap_2_listener (file: src/webpack:/ns-ng-open-native/src/app/app-auth/app-auth.component.ts:69:90)
  JS:     at executeListenerWithErrorHandling (file: src/webpack:/ns-ng-open-native/node_modules/@angular/core/fesm2015/core.mjs:13956:0)
  JS:     at Object.wrapListenerIn_markDirtyAndPreventDefault (file:///data/data/org.nat...

Yeah, i just found out we are handling booleans and doubles wrong in Android when they are supposed to be a java object so it's causing error.

Hey @fpaaske can you try the latest alpha? The module is now working on my end.

@ammarahm-ed I've tested again with the latest alpha.37, and now the authorize()-method starts the authorization process also for Android, with optional parameters being undefined(!), but the promise never seems to resolve or reject. There's no logging in either then() or catch() after authorize().
On iOS it still seems to work nicely.

Hey @fpaaske good news, it works now with latest alpha, I am able to login & logout successfully!

I can confirm that this is working now! Thanks for all the help @ammarahm-ed, you're a legend!


Fixes a warning from clang v6.x

[approve ci autest]

[approve ci autest]

Cherry-picked to 7.1.3


Lock Terraform state on S3

When storing the Terraform state on S3, it is recommended that the state file is locked via a DynamoDB table, to prevent concurrent updates. This involves creating a DynamoDB table via Terraform and updating the S3 backend snippet for EKS, Karpenter and SPS. See instructions: https://developer.hashicorp.com/terraform/language/settings/backends/s3
In particular:
Stores the state as a given key in a given bucket on Amazon S3. This backend also supports state locking and consistency checking via Dynamo DB, which can be enabled by setting the dynamodb_table field to an existing DynamoDB table name. A single DynamoDB table can be used to lock multiple remote state files. Terraform generates key names that include the values of the bucket and key variables.


Cannot add user to group in dashboard interface

I wish to a user to group on the dashboard interface
I wish to create a group and add users to it on the dashboard interface but I get a string index out of range error
Steps to reproduce the problem

Log into dashboard
Create group
Add user by inputting email address and choosing group
Get the following error message

Below is the stack trace
Environment:

Request Method: POST
Request URL: http://www.shopihato.com/dashboard/staff/staff-create/

Django Version: 2.0.2
Python Version: 3.6.3
Installed Applications:
['storages',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.sitemaps',
 'django.contrib.sites',
 'django.contrib.staticfiles',
 'django.contrib.auth',
 'django.contrib.postgres',
 'django.forms',
 'saleor.account',
 'saleor.discount',
 'saleor.product',
 'saleor.cart',
 'saleor.checkout',
 'saleor.core',
 'saleor.graphql',
 'saleor.order.OrderAppConfig',
 'saleor.dashboard',
 'saleor.shipping',
 'saleor.search',
 'saleor.site',
 'saleor.data_feeds',
 'versatileimagefield',
 'django_babel',
 'bootstrap4',
 'django_fsm',
 'django_prices',
 'django_prices_openexchangerates',
 'graphene_django',
 'mptt',
 'payments',
 'webpack_loader',
 'social_django',
 'django_countries',
 'django_filters',
 'django_celery_results',
 'impersonate',
 'phonenumber_field']
Installed Middleware:
['django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.locale.LocaleMiddleware',
 'django_babel.middleware.LocaleMiddleware',
 'saleor.core.middleware.discounts',
 'saleor.core.middleware.google_analytics',
 'saleor.core.middleware.country',
 'saleor.core.middleware.currency',
 'saleor.core.middleware.site',
 'social_django.middleware.SocialAuthExceptionMiddleware',
 'impersonate.middleware.ImpersonateMiddleware']

Traceback:

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  35.             response = get_response(request)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  128.                 response = self.process_exception_by_middleware(e, request)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  126.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/app/.heroku/python/lib/python3.6/site-packages/django/contrib/auth/decorators.py" in _wrapped_view
  21.                 return view_func(request, *args, **kwargs)

File "/app/.heroku/python/lib/python3.6/site-packages/django/contrib/auth/decorators.py" in _wrapped_view
  21.                 return view_func(request, *args, **kwargs)

File "./saleor/dashboard/staff/views.py" in staff_create
  68.             send_promote_customer_to_staff_email(staff)

File "/app/.heroku/python/lib/python3.6/site-packages/celery/local.py" in __call__
  191.         return self._get_current_object()(*a, **kw)

File "/app/.heroku/python/lib/python3.6/site-packages/celery/app/task.py" in __call__
  380.             return self.run(*args, **kwargs)

File "./saleor/dashboard/emails.py" in send_promote_customer_to_staff_email
  41.         context=ctx)

File "/app/.heroku/python/lib/python3.6/site-packages/templated_email/__init__.py" in send_templated_mail
  70.                            headers=headers, create_link=create_link, **kwargs)

File "/app/.heroku/python/lib/python3.6/site-packages/templated_email/backends/vanilla_django.py" in send
  263.             e.send(fail_silently)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/mail/message.py" in send
  294.         return self.get_connection(fail_silently).send_messages([self])

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/mail/backends/smtp.py" in send_messages
  110.                 sent = self._send(message)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/mail/backends/smtp.py" in _send
  122.         from_email = sanitize_address(email_message.from_email, encoding)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/mail/message.py" in sanitize_address
  119.         address = Address(nm, addr_spec=addr)

File "/app/.heroku/python/lib/python3.6/email/headerregistry.py" in __init__
  42.             a_s, rest = parser.get_addr_spec(addr_spec)

File "/app/.heroku/python/lib/python3.6/email/_header_value_parser.py" in get_addr_spec
  1986.     token, value = get_local_part(value)

File "/app/.heroku/python/lib/python3.6/email/_header_value_parser.py" in get_local_part
  1798.     if value[0] in CFWS_LEADER:

Exception Type: IndexError at /dashboard/staff/staff-create/
Exception Value: string index out of range

Any insights as to what the issue might be are appreciated.

Hi @raybesiga,
this error occurs, because you did not provide DEFAULT_FROM_EMAIL fetched in settings.py as your environment variable, which is used in function sending confirmation email.

@mad-anne Is there anything we could do make it at least this break with a more useful error message? Maybe we should implement a check like we do for session storage?

Thanks for pointing this out @mad-anne However, in the settings file, it is listed this way:
DEFAULT_FROM_EMAIL = os.environ.get('DEFAULT_FROM_EMAIL')
Does this mean that I have to add the default email it is sent from as an Environment Variable, similar to what is done with the SECRET_KEY?

@raybesiga yes, just set DEFAULT_FROM_EMAIL the same way you set the SECRET_KEY variable :+1:

Thanks!

@raybesiga Yes, that's currently the preferred way to set it.

Thanks, everyone. Love it here!

Hey!
I was working on something else for Saleor, and just had this error as I was working on email configuration documentation for a future PR.
I'm suggesting the following patch:
Index: saleor/settings.py
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- saleor/settings.py	(date<PHONE_NUMBER>000)
+++ saleor/settings.py	(date<PHONE_NUMBER>000)
@@ -96,7 +96,7 @@
 if ENABLE_SSL:
     SECURE_SSL_REDIRECT = not DEBUG

-DEFAULT_FROM_EMAIL = os.environ.get('DEFAULT_FROM_EMAIL')
+DEFAULT_FROM_EMAIL = os.environ.get('DEFAULT_FROM_EMAIL', EMAIL_HOST_USER)
 ORDER_FROM_EMAIL = os.getenv('ORDER_FROM_EMAIL', DEFAULT_FROM_EMAIL)

 MEDIA_ROOT = os.path.join(PROJECT_ROOT, 'media')

Instead of setting the DEFAULT_FROM_EMAIL value to None. The reason is quite simple: in the email url we have to set the username to an address mail.
At least for every cases I can think of. Even for gmail which is the most flexible mail provider or, even for SMTP relays.
e.g.: smtp://my.gmail.username:my-password@smtp.gmail.com:465/?ssl=True
And, in the case the user did not set any email, it won't fail, as the target is the console and not a SMTP server (or relay server).
I will open a PR soon with this patch.

I hope that one day we can move this from the env variables to the settings page in the dashboard.


Fix Open Online Link in DropDown

Fixes #808
Describe the changes you have made in this pr -
Added Open Online link to the Dropdown.
@JoshHeng I need your help in making the data.js . I wanted to know whether I can create a function in that JS file with content like this window.location =<EMAIL_ADDRESS>?
Screenshots of the changes (If any) -

Coverage remained the same at 83.902% when pulling cf38b186d90670ae779720a9120f6b678c7652f7 on Shivansh2407:patch-3 into 232938ff7691ebb52fb12d19db15e634c9c95c57 on CircuitVerse:master.

@JoshHeng I need your help in making the data.js . I wanted to know whether I can create a function in that JS file with content like this window.location =<EMAIL_ADDRESS>?

You should be able to. Follow the format of the other links, and test it to see whether it works!

Till the time are working on this you could add a [WIP] in the PR title.

Will Fix the Code Climate Issues Later. I would like to know that Sign In through Google is not working in Gitpod so how will I check whether the Function I created is correct or not.
Please Help @tachyons, @JoshHeng  and @Ananthavijay

To use the sign in with Google, Facebook, Github option, first you need to create respective apps.
Instead of this run bundle exec rake db:seed. After this run bundle exec rails s.

Although a user's projects can be viewed and edited on their projects page, I have created a link for an Open Online button which takes the user straight to this page. I guess this has been fixed . Please review and merge @Ananthavijay , @tachyons and @satu0king .

Also @Ananthavijay I am unable to view the Comment section in Gitpod when I login. So please let me know how to see the changes that I have committed

There is a problem with the Comment section in CircuitVerse right now.
Refer to this issue: https://github.com/CircuitVerse/CircuitVerse/issues/767

I have fixed the link to open projects online which take user to Circuits page. If user is not logged in then , the user is redirected to login . Please review 👍 @satu0king , @tachyons .

@tachyons Sir Done . Please Review 👍

@nitin10s and @tachyons Please review :+1:

Done @tachyons Sir 👍

@tachyons it is showing some merge conflict . What should be done here?

The edit.html file might got updated after you have made this pr. Either try with the online web editor github provides to fix merge conflicts, or try pulling from master, fixing merge conflicts locally and commiting again.

The edit.html file might got updated after you have made this pr. Either try with the online web editor github provides to fix merge conflicts, or try pulling from master, fixing merge conflicts locally and commiting again.

Sure 👍

I will close this PR, please check original issue for update

Ok @satu0king


R package build broken, Roxygen2 refuses to overwrite NAMESPACE

Commit #12391 breaks R-package, by NOT removing invalid NAMESPACE file.
Steps to reproduce:
make rpkg
Result: broken mxnet package
Rscript -e "require(roxygen2); roxygen2::roxygenise('R-package'); warnings()"
Aktiver Kindprozess 0x558393c8f5f0 (rpkg) PID 8285
Warnmeldungen:
1: @param [model.rnn.R#251]: requires name and description
...
19: The existing 'NAMESPACE' file was not generated by roxygen2, and will not be overwritten.

SessionInfo during build:
R version 3.5.1 (2018-07-02)
Platform: x86_64-suse-linux-gnu (64-bit)
Running under: openSUSE Tumbleweed
Matrix products: default
BLAS: /usr/lib64/R/lib/libRblas.so
LAPACK: /usr/lib64/R/lib/libRlapack.so
locale:
[1] LC_CTYPE=de_DE.UTF-8       LC_NUMERIC=C
[3] LC_TIME=de_DE.UTF-8        LC_COLLATE=de_DE.UTF-8
[5] LC_MONETARY=de_DE.UTF-8    LC_MESSAGES=de_DE.UTF-8
[7] LC_PAPER=de_DE.UTF-8       LC_NAME=C
[9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
other attached packages:
[1] stringr_1.3.1     magrittr_1.5      jsonlite_1.5      data.table_1.11.8
[5] visNetwork_2.0.4  DiagrammeR_1.0.0  Rcpp_0.12.19      roxygen2_5.0.1
loaded via a namespace (and not attached):
[1] plyr_1.8.4         pillar_1.3.0       compiler_3.5.1     RColorBrewer_1.1-2
[5] influenceR_0.1.0   bindr_0.1.1        viridis_0.5.1      tools_3.5.1
[9] digest_0.6.18      viridisLite_0.3.0  gtable_0.2.0       tibble_1.4.2
[13] rgexf_0.15.3       pkgconfig_2.0.2    rlang_<IP_ADDRESS>      igraph_1.2.2
[17] rstudioapi_0.8     bindrcpp_0.2.2     gridExtra_2.3      downloader_0.4
[21] dplyr_0.7.7        htmlwidgets_1.3    hms_0.4.2          grid_3.5.1
[25] tidyselect_0.2.5   glue_1.3.0         R6_2.3.0           Rook_1.1-1
[29] XML_3.98-1.16      purrr_0.2.5        readr_1.1.1        tidyr_0.8.1
[33] ggplot2_3.1.0      codetools_0.2-15   scales_1.0.0       htmltools_0.3.6
[37] assertthat_0.2.0   colorspace_1.3-2   brew_1.0-6         stringi_1.2.4
[41] lazyeval_0.2.1     munsell_0.5.0      crayon_1.3.4

@mxnet-label-bot [R]


TELEWORK: Employee Interface for Telework

All tickets related to the employee interface of the telework form.

security matrix for reference for all the issues under this epic-


Refactor the contract

fixes #47

Hey bro thanks for he enhancement I will take some time to test this if u  have done testing, deployment then please do share  the  video. Thanks!


ui: fix styling for the expandable rows in the jobs table

PR: https://github.com/cockroachdb/cockroach/pull/22221
From release notes:

Added an icon to indicate when descriptions in the Jobs table are shortened and expandable.

Duplicate of #2421


Convert simulation script to a nextflow module

When https://github.com/AlexsLemonade/OpenScPCA-analysis/pull/183 and followups are complete, we will probably want that script to run via nextflow on all projects currently in a release bucket. We will not want it to trigger on every CI run, probably, so it might be a separate main script, but making a module here seems the logical next step.

The main action of this was completed by #10.


Add binary format implementation for the OpenTracing shim

The translation bit needs to be implemented in the shim for inject and extract.
https://github.com/open-telemetry/opentelemetry-js/pull/212/files#diff-9f2d2c0cae5f33d14b502a2e85407f4cR134
https://github.com/open-telemetry/opentelemetry-js/pull/212/files#diff-9f2d2c0cae5f33d14b502a2e85407f4cR153

Binary seems to be implementation dependent. And I could not find a single OpenTracing system that would support this format (I have checked Jaeger, Zipkin shim, Elastic APM).
So may be binary format implementation makes no sense

@bg451 any thoughts on this? Should it be implemented and in what way?

We are mostly waiting for the spec here. We don't want to implement it then be forced to change later.


Setting a dynamic title seems a bit too literal

Hi
Apologies if this has been asked before, or is a simple mistake on my part.
I'm trying to set the title attribute grabbing a data object, however the title attribute is outputting the actual function.  For example, my code is:
head: {     title: function() {       return {         inner: this.workItem.title,       };     },   }
However, the title is being output as:
<title data-n-head="true">function () {       return {         inner: this.workItem.title       };     }</title>
Now, not sure if it makes a difference, but when the page loads, the workItem object is empty, it gets populated via an AJAX call using vue routers beforeRouteEnter call.
Any help or guidance would be much appreciated

@mikeskiddle
You are using vue-meta or vue-head?

Hi
Thanks for the reply
I was under the impression that it was vue-head that I was using (I'm building the site with nuxt) however after a bit of digging it's quite possibly vue-meta that is being used.
if this is the case, then please take this post down to prevent me looking amazingly stupid 🙃

Closing this as I've stupidly jumped to the forum before fully investigating the documentation.
thanks again

@mikeskiddle
This is normal, good thing that solved.


Update table metadata values in a batch atomically

What type of enhancement is this?
Refactor
What does the enhancement do?
When doing region failover, the updating of metadata values is guarded by a distributed lock. It does not robust enough. For example, the lock lease could be expired in the middle of one's updating, letting others to start updating concurrently. For now, we set the lease of the distributed lock to 10 seconds, which is long enough here to get the job done. Maybe we should introduce "version" companion values to these two metadata values, and use ETCD transaction request to update them?
Implementation challenges
No response

Since region failover is only running in leader metasrv, we can use memlock instead of etcdlock.

Then we should make this whole table metadata update as a single txn implemented inside TableMetadataManager (don't expose the "txn" object)

Since region failover is only running in leader metasrv, we can use memlock instead of etcdlock.

It seems that there is no need to add mem-lock, Since when the procedure is executed, the lock-key will be obtained first.


Fix: http_server might not send  MAX_STREAMS to increase  limits if client cancel stream prematurely

[BUG]
http_server might not send  MAX_STREAMS to increase  limits if client cancel stream prematurely.
[PROTOCOL]
RFC9000 3.5.
A STOP_SENDING frame requests that the receiving endpoint send a RESET_STREAM frame. An endpoint that receives a STOP_SENDING frame MUST send a RESET_STREAM frame if the stream is in the "Ready" or "Send" state. If the stream is in the "Data Sent" state, the endpoint MAY defer sending the RESET_STREAM frame until the packets containing outstanding data are acknowledged or declared lost. If any outstanding data is declared lost, the endpoint SHOULD send a RESET_STREAM frame instead of retransmitting the data.
RFC9000 19.4. RESET_Frames
An endpoint uses a RESET_STREAM frame (type=0x04) to abruptly terminate the sending part of a stream.
[Reproduce]
Request big file and cancel stream prematurely, like:
./max_streams_http_client -H uu.cc -s <IP_ADDRESS>:3333 -p /100MB.txt -o version=h3 -b 80 -n 1 -r 150 -R 150
Here, http_client was build specially, binary file:
max_streams_http_client.tar.gz

@litespeedtech @gwanglst Please check this PR, thanks!


Create a lambda event type which has objects for query strings and body

This is all added by middy now, so we should update the types on the event

Something like this:

Where this is the custom lambda event


Fix crash on My Videos module

MyVideosTabActivity uses manual logic to associate Fragments with TabHost tabs in it's tab change listener. However, since the Fragment transactions are performed asynchronously, it can get into an
inconsistent state when tabs are switched fast, causing it to crash. This is now fixed by having all transactions performed synchronously.
Fixes https://openedx.atlassian.net/browse/MA-1963.

:+1:

@bguertin @BenjiLee, can one of you give this a quick :+1:?

:+1: Clever fix.

:+1:


Update dependencies and traits

The traits and their implementations have been pulled in from https://github.com/ebfull/pairing/tree/09b6e6f9212020f385218e5cf5287e381ccd312b

Good job! This is wonderful. ACK!


why  model.internalModel.coreModel could find method 'setParameterValueById'?

repo site : https://github.com/moushicheng/live-waifu/tree/main/packages/live2d-electron
i print model.internalModel.coreModel
  const model = await Live2DModel.from(model_path, {
    // autoInteract: false, // focus on pointer & response to tapping
  });

  console.log(model.internalModel.coreModel);

At Beginning, i just use 'setParameterValueById' to make model mouth "move",But my model seems to behave differently with #4
Env
os : mac m2
dev:
   <script
      defer
      src="https://cubism.live2d.com/sdk-web/cubismcore/live2dcubismcore.min.js"
    ></script>
    <script
      defer
      src="https://cdn.jsdelivr.net/gh/dylanNew/live2d/webgl/Live2D/lib/live2d.min.js"
    ></script>
 "pixi-live2d-display": "^0.4.0",
 "pixi.js": "^6.5.2"

model.internalModel.coreModel.setParameterValueById("ParamMouthOpenY", value, 1);

your file type maybe .moc3. but moc file doesn't have setParameterValueById function。so what is the function in .moc file。


Snapshot and restore documentation

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

Hi @elfisher, yeah, every Markdown parser has at least a couple features that others don't. Kramdown (the default Jekyll parser) has an auto-generated TOC using {: toc }, lets you assign arbitrary classes using the {: .my-class }, etc.


Support multiple versioning groups in a solution

Using Git2SemVer.Tool allow projects in a solution to be allocated to different versioning groups for independent versioning.
When/if a solution has multiple products that can have different releases, all for those projects to work as a group for solution versioning. For example, the Git2SemVer solution builds both Git2SemVer.MSBuild and Git2SemVer.Tool. While closely related a feature or bug fix can be added to one and not affect the other. Hence, Semmantic Versioning requires different versioning.
Possible implementation:

First group is default group that new project will be added to automatically (directory properties).
One solution versioning project per group - unless a single project
Different release tag prefixes for each group.
Shared directories would need to in the solution versioning project directories.

Rejecting this as too messy. Best to break out components that need independent versioning to their own solutions and use library NuGet packages.


Moving to dev tag for packages image move

Description of changes:
The function is looking for images in the Private ECR, but the chart in the Public ECR since it's mimicking the behavior of our other packages. Due to this we can't use the Core teams tags since those are only written into public, but not in Private ECR.

/lgtm


Create feature forms

Description

Support 'create features' function through UI forms. Can create both anchor features and derived features covering all of theri items.
Pending to do some improvement based on styles, summary pages and validations.
Staging url: https://brave-moss-045d2ce00.1.azurestaticapps.net/new-feature
Some example screenshots:

firstly, choose to create anchor feature or derived feature and set their dependencies

then, create the feature step by step

png">

after submitting, check feature details from UI

How was this PR tested?

Does this PR introduce any user-facing changes?

[x] No. You can skip the rest of this section.
[ ] Yes. Make sure to clarify your proposed changes.

@enya-yx maybe you can paste a few screenshots of those forms/UIs?

@enya-yx maybe you can paste a few screenshots of those forms/UIs?

Added some screenshots as references. Thanks for the suggestion.

Thanks @enya-yx for the PR. I deployed a staging at https://brave-moss-045d2ce00.1.azurestaticapps.net/new-feature
Two quick questions

Project currently is a drop down list. In a new deployment, the project list will be empty, how can use start in this case?
As per this, your UI might not work with purview, could you double check?

Thanks @enya-yx for the PR. I deployed a staging at https://brave-moss-045d2ce00.1.azurestaticapps.net/new-feature
Two quick questions

Project currently is a drop down list. In a new deployment, the project list will be empty, how can use start in this case?
As per this, your UI might not work with purview, could you double check?

My understanding is we need create features on existing projects. If that's not the case, may also need to build create project, anchors, sources forms.
Tested by SQL and purview, both are Okay.

My understanding is we need create features on existing projects. If that's not the case, may also need to build create project, anchors, sources forms.
Tested by SQL and purview, both are Okay.

For new deployment, there is no existing projects. If current UI can work with both sql and purview, then we can start review with LI, LI is using a different registry backend than purview and sql.

Some feedbacks:

Qualified name is not an input, it's auto generated by registry backend.
Dimension Type constraint is wrong. (combination is too flexible now.)
May need create project outside of create feature.

Close this PR as it is stale for a while. Let me know if anyone wants to reopen it.

This function should be in by another PR.


Windows support for fastlane

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
I have tried to intsall ruby ( http://rubyinstaller.org/downloads/) and then tried to run "fastlane init".
But it gives me following error:
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb:37:in `fork': fork() function is unimplemented on this machine (NotImplementedError)
I tried to solve the above prob by modifying update_checker.rb file but now I am getting below error:
C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require': cannot load such file -- pty (LoadError)
from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'         from C:/Ruby23/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/fastlane_core/lib/fastlane_core/itunes_transporter.rb:1:in <top (required)>'
from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'         from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/fastlane_core/lib/fastlane_core.rb:19:in <top (required)>'         from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'
from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'         from C:/Ruby23/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/fastlane/lib/fastlane.rb:1:in <top (required)>'
from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'         from C:/Ruby23/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require'
from C:/Ruby23/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/fastlane/lib/fastlane/cli_tools_distributor.rb:18:in take_off'         from C:/Ruby23/lib/ruby/gems/2.3.0/gems/fastlane-2.18.3/bin/fastlane:15:in <top (required)>'
from C:/Ruby23/bin/fastlane:22:in load'         from C:/Ruby23/bin/fastlane:22:in '`

You can use: --capture_output as the last commandline argument to get that collected for you

Can someone please help in this
[INSERT OUTPUT HERE]
Environment
Please run fastlane env and copy the output below. This will help us help you :+1:
If you used --capture_output option please remove this block - as it is already included there.
[INSERT OUTPUT HERE]

Hi @rekhaagarwal - thanks for the report 👍
As you have discovered, Windows is not currently a supported platform for fastlane. Sorry about that! Since we don't currently have plans to change this, I am going to close this issue for now.
However, if you do more exploration into what it might take to have it work, we would definitely like to hear the results! 🚀


Allow guardians to configure estimatesmartefee conf_target

The wallet module currently hardcodes the confirmation target to 10 blocks, which is used for reaching consensus on an estimated fee rate for constructing peg-out transactions.
We should allow the guardians to configure the confirmation target used for estimating fee rates.

@bradleystachurski You implemented some multipliers etc. recently w.r.t this. Can we close?

IMO this should become configurable since priorities may differ for different federations, let's leave it open.

We can leave this issue open, but until we have other mechanisms in the wallet to reduce the risk of a stuck tx in the mempool (e.g. rbf, cpfp), I think we should prevent users from configuring.
https://github.com/fedimint/fedimint/blob/fd074f9219ca6bd7403d7be935fbdac2076c411f/modules/fedimint-wallet-common/src/lib.rs#L40-L44

Given the discussion last Monday and Bradley's comment this feels like a thing for Wallet v2 and possibly won't be needed at all anymore with more sophisticated fee estimation. Closing.


chore: Update RocksDB

Description of change
This PR updates rust-rocksdb to rust-rocksdb/rust-rocksdb@e2e8834975cc9f2cef63ae85d7ea376e7cdc816d so that we use RocksDB v6.22.1.
Links to any relevant issues
Fixes #734
Type of change

Bug fix (a non-breaking change which fixes an issue)
Chore

How the change has been tested
Describe the tests that you ran to verify your changes.
Make sure to provide instructions for the maintainer as well as any relevant configurations.
Change checklist

[x] I have followed the contribution guidelines for this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have checked that new and existing unit tests pass locally with my changes

@rajivshah3 This is still a draft, should it be revised and merged?

Can probably closed because of https://github.com/iotaledger/wallet.rs/pull/797?

I agree.

Yeah, for now I don't think we need it (but it would be good to switch back to the rust-rocksdb repo when possible)


support AWS, potentially other clouds

analogous to google cloud, provide same instructions for kubernetes on AWS

Done with the addition of https://github.com/mlbench/mlbench-helm/blob/develop/aws_setup.sh


Fix ug bugs

Description

Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Code quality improvements

How to test

Preview deployment can be found here: https://tp-6wyzi4vou-aikenwx.vercel.app/UserGuide.html
Checklist

[x] I have updated the User Guide

closes #55

Codecov Report

Merging #56 (be7872e) into master (6bbe9c4) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #56   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 6bbe9c4...be7872e. Read the comment docs.


UNSOLICITED MESSAGE: invalid rpc correlation for rpc

1) server.js (Used: NodeJS)
const ds = deepstream('<URL>');
const randomURL = Math.ceil(Math.random() * 10000).toString();
ds.rpc.provide(randomURL, (data, response) => {
  console.log("received request for: ", randomURL, data);
  response.send(`${Date.now()} Hello from random Service: ${randomURL}`);
})

2) client.js (Used: [microjs][1])
module.exports = async (req, res) => {
  let fullPath = req.url;
  fullPath = fullPath.split('/')[1];
  const result = await ds.rpc.make(fullPath, {}, (err, result) => {
    console.log("response received: ", err, result);
    res.end(result);
  });
  console.log(`result for ${fullPath} is: ${result}`);
}

after calling this URL several times I got error
localhost:port/randomURL

Hey, I'm surprised the code you provided actually works since you can't have a promise and a callback at the sametime..
 await ds.rpc.make(fullPath, {}, (err, result) => {
    console.log("response received: ", err, result);
    res.end(result);
  });

Can you please provide a working sample? Thanks!

I'm going to close this issue because:

Client doesn't login
RPC doesn't use the correct signature

As such it's pretty hard for me to reproduce. If anyone encounters this issue again please provide some more detail and I'll be happy to investigate!


Not detecting tablet device on iPad.

Describe the bug
The iPad is detected as desktop.
To Reproduce
Steps to reproduce the behavior:

Go to any view using deviceDetector
Watch that library is not detectking iPad as mobile / tablet.

Expected behavior
Library is detecting iPad as mobile / tablet.
Smartphone (please complete the following information):

Device:  Ipad 7th Genetarion Wi-Fi 32GB
OS: iOS14.6
Browser: Safari

Hi @BigApeJohny , I have the same issue with version 2.1.1 and Angular 11. Why did you close this ticket? How did you resolve this problem?
Thanks!

I have the same problem.
I tested in browser using IPAD mode and works only in LANDSCAPE but in PORTRAIT doesn't work.
Why is closed?


Batch max requests is 10

Should probably document this.

Fixed: https://github.com/trello/api-docs/pull/74


Add verify scripts for various checks

Add verification and check scripts: gofmt, golint, spelling check, yaml format, ...
hack/verifiy-all  or make verify will perform all checks.
hack/update-all or make update will correct all the issues.

isn't it an overkill?

isn't it an overkill?

Up to you.

/retest

I have one issue on yaml format, which I can ignore.
shinaew@shinae-sjc-desktop:~/src/knavigator$ make update
[*] Update go format...
Update go format
[*] Update go mod...
[*] Update go lint...
[*] Update ends newline...
[*] Update shell format...
Update shell format
[*] Update yaml format...
Update yaml format
2024/05/10 12:34:43 encountered the following formatting errors:
./charts/virtual-nodes/templates/nodes.yaml: yaml: line 3: did not find expected alphabetic or numeric character
exit status 1
[*] Update spelling...
Update failed for: yaml-format
make: *** [Makefile:33: update] Error 1

And two new lines at end of file
diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml
index 86f894f..134ab8d 100644
--- a/.github/workflows/docker.yml
+++ b/.github/workflows/docker.yml
@@ -60,4 +60,4 @@ jobs:
           context: .
           push: ${{ github.event_name != 'pull_request' }}
           tags: ${{ steps.meta.outputs.tags }}
-          labels: ${{ steps.meta.outputs.labels }}
\ No newline at end of file
+          labels: ${{ steps.meta.outputs.labels }}
diff --git a/docs/task_management.md b/docs/task_management.md
index fb84593..d24157f 100644
--- a/docs/task_management.md
+++ b/docs/task_management.md
@@ -8,4 +8,4 @@ Tasks are defined in a YAML format or received via HTTP/gRPC protocols. The Task
 - Check the spec and status of nodes
 - Check the spec and status of pods
 - Run PromQL query
-- Sleep for a specified duration
\ No newline at end of file
+- Sleep for a specified duration

LGTM other than issues I reported on above comments

Thanks! Not sure how to fix the first one.  https://github.com/NVIDIA/knavigator/pull/28 should fix the empty line issues.


Markdown and Videos

Hi
Is markdown have a syntax to display videos (html5 and iframe)?
Do you support this syntax?

Hey :)
thanks for your question but GitHub issues are for reporting issues with the library only. For general questions, please refer to sides like Stack Overflow.


Bugfix: Don't return bool on before? or after? on error

Summary of changes
Found this while fixing dialyzer issues. Comparable.compare might return an error tuple, which should not be used for sorting.
Checklist

[x] New functions have typespecs, changed functions were updated
[x] Same for documentation, including moduledocs
[x] Tests were added or updated to cover changes
[x] Commits were squashed into a single coherent commit

Coverage increased (+0.09%) to 67.996% when pulling 7824744bfd8f471ce7f98e1a78b51ded39d90558 on alvinlindstam:compare-bugfix into 5d2180da3676140878ad5538ebf96c13cae9098f on bitwalker:master.

Thanks for the PR!


Bug

Some recorded lives are broken the audio is okay but the video stay like this photo for more than 10 minutes sometimes it's fix for the same video and sometimes still like this until end

Prova la nuova versione e fammi sapere se risuccede.
https://github.com/Michele0303/tiktok-live-recorder/releases/latest

@Michele0303 I did more recording and I think it's still mostly random, I have now a 15 minutes recording with... 11 seconds usable and 14 minutes and 50 seconds of artifacts with version 5.7

I have no idea, I think it's a tiktok problem.


Possibility to create QR codes for the order flow

Use case:
It's almost summer time. We want to give the cafe owners the possibility to create QR codes and stick them to their tables. Cafe clients can then scan the QR code to open the order message flow. They can order what they want, optionally pay with Payconiq and then the waiter will come by to bring the drinks.

[ ] A merchant that has the ORDER and QR modules, should be able to generate such QR codes in bulk. I suggest to add a button to the bottom of the Settings > Order page. The merchant should be able to enter:

the number of QR codes he wants to create
the names of the QR codes.

Eg. "Table x" and then the x is replaced by the number of the QR code.

a description that comes along with all QR codes. Pre-fill with:

EN: Save time by scanning this QR code to place your order and by paying mobile with Payconiq.
NL: Bespaar tijd door deze QR-code te scannen om uw bestelling te plaatsen en door mobiel te betalen met Payconiq.

[ ] The name should also be added to the QR code's tag, because we want to mention the name of the QR in the inbox message of the order, such that the waiter knows which table he needs to go to. I suggest to use a json dict as tag: {"__rt__.tag": POKE_TAG_ORDER, "qr_name": qr_name} when using qr.bulk_create. Prefix the inbox message with qr_name + '\n'
[ ] The description and name of the QR code needs to be visible. So after the QR codes are created in rogerthat, we need to create a downloadable pdf with all these QR codes. Eg:

We should make sure that the title, description and QR code are always rendered on the same page of the PDF. Maybe the easiest way to do this is to render a new image per QR, and write text to the images.
The pdf can be stored in GCS.

[ ] Add a list of created PDFs underneath the CREATE button mention in the first bullet (so 1 entry in this list for each time the user did the bulk_create)

1 entry contains the entered name (eg. "Table x") and creation date.

This feature needs to be worked out more. The advanced order flow will need to be modified.
Merchants needs the possibility to skip tel number and pickup time steps for this use case.


allow vultr.list_nodes to return extra values

This is my first PR, therefore any suggestions would be greatly appreciated.
Description

update some fixtures to the current response of Vultr
add missing Node.private_ips
allow list_nodes to return extra values:

{
   "ram":"1024 MB",
   "disk":"Virtual 25 GB",
   "vcpu_count":"1",
   "location":"Amsterdam",
   "DCID":"7",
   "default_password":"h6*hrte6tg",
   "pending_charges":"0.18",
   "cost_per_month":"5.00",
   "current_bandwidth_gb":0.026,
   "allowed_bandwidth_gb":"1000",
   "netmask_v4":"<IP_ADDRESS>",
   "gateway_v4":"<IP_ADDRESS>",
   "power_status":"running",
   "server_state":"installingbooting",
   "VPSPLANID":"201",
   "v6_networks":[
      {
         "v6_main_ip":"2001:19f0:5001:2b9c:5400:03ff:fe03:9568",
         "v6_network_size":"64",
         "v6_network":"2001:19f0:5001:2b9c::"
      }
   ],
   "kvm_url":"https://my.vultr.com/subs/novnc/api.php?data=erewawxFVZw2mXnhGUV",
   "auto_backups":"yes",
   "tag":"Web",
   "OSID":"387",
   "APPID":"0",
   "FIREWALLGROUPID":"0"
}

I'v have improving tests too
add TODO for future work. Because I have a many plans for improving Vultr driver if this PR will be accepted.
fix a few lint errors

Status

work in progress

Local Tests:
bash contrib/run_tests.sh

========== 9713 passed, 42 skipped, 14 warnings in 290.24s (0:04:50) ===========
___________________________________ summary ____________________________________
  lint: commands succeeded
  py3.5: commands succeeded
  py3.6: commands succeeded
  py3.7: commands succeeded
  py3.8: commands succeeded
  pypypy3: commands succeeded
  congratulations :)

Checklist (tick everything that applies)

[x] Code linting (required, can be done after the PR checks)
[ ] Documentation
[x] Tests
[ ] ICLA (required for bigger changes)

Codecov Report

Merging #1506 into trunk will increase coverage by 0.00%.
The diff coverage is 96.15%.

@@           Coverage Diff           @@
##            trunk    #1506   +/-   ##
=======================================
  Coverage   84.77%   84.78%
=======================================
  Files         388      388
  Lines       81521    81534   +13
  Branches     8243     8246    +3
=======================================
+ Hits        69111    69126   +15
+ Misses       9422     9420    -2
  Partials     2988     2988

Impacted Files
Coverage Δ

libcloud/compute/drivers/vultr.py
81.16% <87.50%> (+1.83%)
:arrow_up:

libcloud/test/compute/test_vultr.py
100.00% <100.00%> (ø)

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 d5e957a...65f3ee8. Read the comment docs.

I've updated description of PR.

@sergerdn Thanks for the contribution.
Since it's a bigger change, can you please also sign an ICLA - https://libcloud.readthedocs.io/en/latest/development.html#contributing-bigger-changes?


ddosify: 0.5.1 -> 0.6.0

Motivation for this change
Update to latest upstream release 0.6.0
Change log: https://github.com/ddosify/ddosify/releases/tag/v0.6.0
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 146936 run on x86_64-linux 1

1 package built:

ddosify


fix: typo

Description
i before e, except after c, or when sounding like 'a' as in 'neighbor' or 'weigh'
I was really into spelling in grade school.
Other changes
na
Tested
just CI
How others should test
n/a
Related issues
n/a
Backwards compatibility
🆗

Hey @MuckT , Please let us know do we need to perform testing from our side.


Pls add extension icon

An icon for each extension shows in list of installed extensions and on the VS Code Extension Marketplace. It'd be nice to add one for vscode-classic-asp.
If you'd like me to create one and open a PR with it - let me know.

If you can create an image, it would be awesome.

Great. I opened a PR:
https://github.com/ilich/vscode-classic-asp/pull/9


Piral Plugin for Pilet Configuration

Description
A new Piral plugin piral-config should be introduced to allow pilets to be configurable.
The plugin itself is configurable to support arbitrary ways of retrieving the actual configurations.
The plugin covers:

storing / modifying the configurations of the pilets in the global state container
providing a validator / description model (using standard JSON schema)
an API to set the configuration schema / default value (once) from a pilet
an API to retrieve the current configuration from a pilet

Background
For a sample usage we've implemented a simple (non-validating) configuration mechanism:
export function createConfigApi(): Extend<PiralConfigApi> {
  const readConfig = (name: string, defaultConfig: any) => {
    const key = `config-${name}`;
    const current = localStorage.getItem(key);

    if (typeof current === 'string') {
      try {
        return {
          ...defaultConfig,
          ...JSON.parse(current),
        };
      } catch {
        console.warn(`Invalid value in localStorage key found. Removing "${key}".`);
        localStorage.removeItem(key);
      }
    }

    return defaultConfig;
  };

  return (ctx) => (_, meta) => ({
    defineConfigSchema(schema, defaultConfig = {}) {
      const current = readConfig(meta.name, defaultConfig);

      ctx.dispatch((state) => ({
        ...state,
        configs: {
          ...state.configs,
          [meta.name]: {
            current,
            schema,
          },
        },
      }));
    },
    getCurrentConfig() {
      const cfg = ctx.readState((s) => s.configs[meta.name]);
      return cfg?.current ?? {};
    },
  });
}

which can then be used in pilets like:
  app.defineConfigSchema({
    increment: {},
  }, {
    increment: 1,
  });

  const { increment } = app.getCurrentConfig();

The essential idea is that defineConfigSchema enters the configuration validators and default value. The app shell then matches this with the provided configuration(s) to either use the default or a customized (but validated) configuration.
Whenever the actual value is required by the pilet it can get its configuration with getCurrentConfig().
Discussion
What would be the best signature to get the configuration? Should it be synchronous?

We have used a similar approach in our project. The linked use looks fantastic. Mind if i a make a pul request for this?
Any further requirements or should i just stick to the linked sample? i would try to make it easy configurable. Rest could then be sdiscused.

Sounds great - I've assigned the issue to you. Let us know how it goes / if you face any problems!
Thanks again! :beers:


Confusion over version

I Installed the msi linked to form the decoumentation site and it is 2.012
I ran az --version and get 2.0.1
The release notes on document site stop at 2.0.6, though here on git hub the latets release is 2.0.12

Oh, sorry I need to open a new console window for the update version to show.
So just the release page is at issue

Actually if i run az --version from a git4windows bash shell it gives 2.0.1, even after a reboot.
This is annoying as I use this shell all the time.

It seems to be picking up an install; of python 3.5.2 under roaming which has an az.cmd file
In a cmd shell it use Pyhton 3.6.1 which I do not have globally installed

@derekbekoe is best to comment on the different installations, but I'll just add you are likely to run into issues using git bash as a shell.

@tjprescott Thanks - yes. I manually removed that old python installation and a CLI v1 installation as they should not have been arround. Now AZ does not work at all in git bash, even though is on the path. Seems to be assumptions made with .bat files.
But it's easy enough to run a cmd sub shell for the the odd az command and NPM currently always runs cmd. even when called from git bash.
I'll use WSL once links/JUNCTIONS work correctly on both sides of the shared files space.
In actually fact, I switched to AzCopy as it correcly sets MIME types when files uploaded to blob storage.

Looks like there are two versions of the CLI installed if git bash picks up a different version to cmd.

You can check your path for multiple azs and remove the one you don't want to use or uninstall the older one altogether.

@derekbekoe That was indeed the case (I used which az). I don't understand why as I had used the WIndows remove to kill all old versions. See more detaisl above. :)

Ah. @SteveALee okay to close issue?

Well, the releases listed on the documentation site are behind so I could rename issue to just cover that point if you like?

The release notes page has been updated and we'll submit changes for future releases to the docs page.