Listen for purchase events + optional promise support + other updates

Updates:

[x] Listen for purchase events initiated from App Store and subscription renewals
[x] Support promises
[x] canMakePurchase returns error arg too now *
[x] Always return error object for errors *
[x] Added helpers shouldFinishTransactions, finishCurrentTransaction and clearCompletedTransactions. See readme for more info.
[ ] Call addTransactionObserver after js code initialises *

* breaking change
To install and test:
npm i --save https://github.com/superandrew213/react-native-in-app-utils#listen-for-purchase-event

To trigger purchase initiated from App Store, open this link in safari. Replace bundleId and productIdentifier with your own.
itms-services://?action=purchaseIntent&bundleId=com.example.app&productIdentifier=product_name

@superandrew213 I tested on the device for In-App purchases using the itms link and it works great. Thanks for also setting up index.js that makes it easier to use.

awesome! i will find some time over the weekend for this.

@superandrew213 and @chirag04 I discovered an issue. My app has a Keyboard Extension target that bundles and runs the RN app. The extension crashes with this updated code in place. I have more discovery to do but wanted to let you know. I do not use this package in the code running inside of the extension, that is not allowed anyway, but having it linked and available is causing it to crash.

@jeremyhicks what is the error output?

@superandrew213 I wasn't getting any in the console. I need to explore further. When opening the Keyboard Extension it would crash. Debugging that is not easy.

@superandrew213 @chirag04 I have found the source of the issue when this library is included in a project that gets bundled in an iOS extension. The libInAppUtils.a library still needs to be included even though the extension itself doesn't support IAP. I've updated my apps to use this branch and it is working good, no crashes.

@chirag04 will you have some time soon to take this in soon? I've had it in a production app for over 3 weeks now and have had no issues.

@superandrew213 sorry i haven't had a chance to look at it yet. i'm still planning to review and merge this soon.

@chirag04 sure no problem!

Hi! Any changes here?

@superandrew213 I started test your solution, but this link don't work for me itms-services://?action=purchaseIntent&bundleId=com.example.app&productIdentifier=product_name (with my bundleId and productIdentifier).  Does it open your app?

No...

Hmm there must be something wrong with your bundleId.
Paste this in your safari browser on your phone and make sure you have the right bundleId. Just to trigger app to open productIdentifier doesn't matter as long as you have a value.
itms-services://?action=purchaseIntent&bundleId=com.example.app&productIdentifier=product_name

Safari wants to open this link in iTunes and opens nothing after that. I will investigate SKPaymentTransactionObserver more carefully. Maybe there is need to be some changes in Info.plist or in AppDelegate?

would love to see this merged

Looking forward to see this merged.
@merryejik Had a similar problem as you, which was caused by trying to open the url using an old device (iPhone 5c, which cannot update the OS past version 10.3.3).

@superandrew213 @chirag04 I was trying to use those changes but ran into a problem when trying to add a listener.
The problem seems to be related to InAppUtilsEmitter. When it calls the calls the addListener method:
  addListener(eventType: string, listener: Function, context: ?Object): EmitterSubscription {
   if (Platform.OS === 'ios') {
      invariant(nativeModule, 'Native module cannot be null.');
      this._nativeModule = nativeModule;
    }
    return super.addListener(eventType, listener, context);
  }

this._nativeModule is not defined and this throws an error.
I'm using react-native v0.47.2. The implementation of this method in NativeEventEmitter in a later version (v0.54.0-rc.2), but I could not test it on newer versions, so I cannot guarantee it can not be reproduced after this one.

Hey @chirag04 and @superandrew213 great work on this. I'm just wondering is it possible to just have the "Listen for purchase events" feature merged and split the remaining work into another PR?
Thanks.

I agree this PR should be split up if possible, so we can have the purchase events feature merged in.

@superandrew213 this needs to piggy-back off of #135 and force the user to call finishTransaction.
Use case:
If the user purchases something from the appstore, we need to notify our back-end, and verify that it worked before calling finishTransaction.

I added a comment on #135 with how I think the API should work: https://github.com/chirag04/react-native-in-app-utils/pull/135#issuecomment-383614510
Happy to help implement if we think this is the right direction.

Hi everyone,
I read all the stuff. I'm not sure... Finally, is there a working way to listen in-app coming from the store ? If so, how to ?
Thanks a lot,

Hi everyone,
I read all the stuff. I'm not sure... Finally, is there a working way to listen in-app coming from the store ? If so, how to ? Does the branch will be merge soon?
Thanks a lot,

@clementinoux yes, but you have to use my fork.
npm i --save https://github.com/superandrew213/react-native-in-app-utils#listen-for-purchase-event

You can see how here:
https://github.com/superandrew213/react-native-in-app-utils/tree/listen-for-purchase-event#listen-for-purchase-events
I use my fork in production and haven't had any issues.

How's this coming along? Do you need more test coverage or any other contributions?

Thanks @andreiciceu

This should be merged asap

@superandrew213 great work; i'm currently using this branch as more and more user seem to be purchasing from AppStore.
Adding the following at line 46 would be useful:
removeListener: (event, cb, context) => InAppUtilsEmitter.removeListener(event, cb, context),

@andreiciceu you should be able to do:
const listener = InAppUtils.addListener(...)
listener.remove();

Does this not work for you?

@superandrew213 yes, it works perfectly
Many thanks!

@superandrew213 Those latest additions are fantastic. Is there a way to get unfinished purchases, e.g. on start or resume, so I can unlock stuff server-side, and then call InAppUtils.finishCurrentTransaction()?
Since this package is on life support, have you considered publishing and maintaining your fork as your own package on NPM, e.g. as react-native-in-app-purchases?

@Dexwell that's plan. Just haven't had any time. So it has been easier & faster to just use github fork for now.
Have you tried InAppUtils.addListener('purchaseCompleted', purchase => ...) on app start?
Or do you mean for purchases that are still in purchasing state?

Or do you mean for purchases that are still in purchasing state?

Yeah

@superandrew213 This PR is looking great! I won't have the time review it further or merge. Would you be interested in managing this library?

Hey @superandrew213, thank you for all your work. I'm wondering, what's left on this PR to get it merged? and if this is not going to be merged and stay here, how would someone use it (since you mention there are breaking changes)?
Any docs would be appreciated.

@Eyesonly88 you can install it like this:
yarn add https://github.com/superandrew213/react-native-in-app-utils#listen-for-purchase-event

or

npm i https://github.com/superandrew213/react-native-in-app-utils#listen-for-purchase-event

The docs on my fork tell you how to use it. I have kept them updated.
The only breaking changes are related to how errors are handled. My fork returns error objects instead of just a string.

Just came across this, @superandrew213 so while we are waiting for v7.
How about changing your default branch in your repo from master to listen-for-purchase-event for now.
This would definitely help improve the visibility of your doc (especially, on the listener part).

@thanakij done 🙂

In-app purchase, after the product has been purchased and paid for. I didn't call finishTransaction to end the transaction. Why can't I get the pending transaction the next time I come in and print an empty array

`InAppUtils.shouldFinishTransactions(false);
InAppUtils.purchaseProduct(productIdentifier, (error, response) => {
// NOTE for v3.0: User can cancel the payment which will be available as error object here.
if (response && response.productIdentifier) {
// Toast.info('Purchase Successful' + '  Your Transaction ID is ' + response.transactionIdentifier);
//unlock store here. transactionReceipt
this.validData(response.transactionReceipt, user_id, order_id, order_type);
} else {
}
if (error) {
this.setState({ showLoading: false }, () => {
console.log(error.message)
});
          }
        });`


Sd logging

Just some added logging for SD Card Dump and Wifi Direct so we can track/verify if we're losing files anywhere

@phillipm is not, was from another PR, my b


HTTP repository API for download

Add repository API for download

The job #121 assigned to @g4s8/z, here is why; the budget is 30 minutes, see §4; please, read §8 and §9; if the task is not clear, read this and this; there will be no monetary reward for this job

@rultor release, tag=0.7

@rultor release, tag=0.7

@g4s8 OK, I will release it now. Please check the progress here

@rultor release, tag=0.7

@g4s8 Done! FYI, the full log is here (took me 7min)

There is an unrecoverable failure on my side. Please, submit it here:
PID: 11@7d3334767964, thread: PQ-CT2E6TK9B
com.zerocracy.farm.ruled.RdRules[130] java.lang.IllegalStateException: http://datum.zerocracy.com/latest/rules/pm/no-lost-estimates.xsl says: The estimate for job "gh:artipie/maven-adapter#74" exists in estimates.xml, but the job is absent in the WBS among 52 jobs.

0.53.9: CID: f3aa7cf1-5a98-4482-b508-2df3719aa307, Type: "Finish order"

@0crat status

@0crat status (here)

@g4s8 There is an unrecoverable failure on my side. Please, submit it here:
PID: 11@7d3334767964, thread: PQ-CT2E6TK9B
com.zerocracy.farm.ruled.RdRules[130] java.lang.IllegalStateException: http://datum.zerocracy.com/latest/rules/pm/no-lost-estimates.xsl says: The estimate for job "gh:artipie/maven-adapter#74" exists in estimates.xml, but the job is absent in the WBS among 52 jobs.

0.53.9: CID: 97fd141d-1a52-4cc5-a44a-34293a5b2012, Type: "Check job status"

@0crat status

@0crat status (here)

@g4s8 This is what I know about this job in CT2E6TK9B, as in §32:

The job #121 is in scope for 7days
The role is DEV
The job is assigned to @g4s8/z for 7days
There is no monetary reward attached, it's a free job
The job doesn't have any impediments
The budget is 30 minutes/points
These users are banned and won't be assigned:

@g4s8/z: This user reported the ticket

Job footprint (restricted area)

@0crat out


Updater running then got an error

VS Code Version: 1.92.1
OS Version: 10.0.22631 Build 22631

Steps to Reproduce:

Check for Update
Restart for Update

Log snippet:
Aug 28 01:31:35.512 INFO Get file handle: "C:\Users\\AppData\Local\Programs\Microsoft VS Code\debug.log" (attempt 14)
Aug 28 01:31:45.313 INFO Get file handle: "C:\Users\\AppData\Local\Programs\Microsoft VS Code\debug.log" (attempt 15)
Aug 28 01:31:56.564 INFO Get file handle: "C:\Users\***\AppData\Local\Programs\Microsoft VS Code\debug.log" (attempt 16)
Aug 29 01:16:42.908 ERRO Failed to create file handle: The process cannot access the file because it is being used by another process.

Hi @cucbin, let me know if you're still seeing the issue after restarting your device or manually installing a newer version of VS Code.

Hi @rzhao271 the issue still exists.
I have not re-installed the new version of VSC.


[Add] Prepared for TypeScript development

Configured the project to enable TypeScript.

You can develop TypeScript in a folder '/Scripts'.

Employed "gulp.js" as a task runner.

Run a task "default" to copy compiled script files to web folder '/Contents/scripts/app'.
A task "clean" cleans the web folder up.

I refferd a web page below.
https://www.typescriptlang.org/docs/handbook/asp-net-core.html


Can't install requirements_cu10.txt

I got this error:
ERROR: Could not find a version that satisfies the requirement tensorflow-gpu==1.12.0 (from -r .\installation\requirements_cu10.txt (line 12)) (from versions: 1.13.1, 1.13.2, 1.14.0, 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 1.15.2, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0, 2.0.0rc1, 2.0.0rc2, 2.0.0, 2.0.1, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2,
2.1.0, 2.2.0rc0)
ERROR: No matching distribution found for tensorflow-gpu==1.12.0 (from -r .\installation\requirements_cu10.txt (line 12))
How do I install this?

After install python 3.6, tensorflow pass but then I got an error with PyTorch:
ERROR: Could not find a version that satisfies the requirement torch==1.2.0 (from -r .\installation\requirements_cu10.txt (line 16)) (from versions: 0.1.2, 0.1.2.post1, 0.1.2.post2)
ERROR: No matching distribution found for torch==1.2.0 (from -r .\installation\requirements_cu10.txt (line 16))

Could you please try updating your pip using this command?
pip install -U pip
And let me know if the error still persists

If you are using windows, remove torch==1.2.0 , torchvision==0.4.0 from requirements_cu10.txt. and run
pip install -r  requirements_cu10.txt
then install pytorch using
pip install torch===1.2.0 torchvision===0.4.0 -f https://download.pytorch.org/whl/torch_stable.html

Closing the issue due to inactivity.
And associated changes with windows have already been made.


Update service.yml

To trigger the semaphore job on downstream kafka-streams-examples project

@lucasbru thanks for the PR, could you please explain a bit more the motivation of this PR?

@trnguyencflt
We are in the process of porting kafka-streams-examples from jenkins to semaphore.
In Jenkins, we were use "upstreamProjects" to make sure that kafka-streams-examples is rebuilt when rest-utils is updated. See this line: https://github.com/confluentinc/kafka-streams-examples/blob/master/Jenkinsfile#L7
This is not supported by the new semaphore tooling. Instead, we need to list kafka-streams-examples in the "downstream-projects" of rest-utils, see the feature gap section of the migration guide:
https://confluentinc.atlassian.net/wiki/spaces/TOOLS/pages/3211693075/Jenkins+-+Semaphore+self+migration+guide#Features-gaps

@lucasbru thanks for the explanation.


Introduce Reference Counting in .NET

Automatic Reference Counting Base Type
We need to introduce an ARC-like style way of flagging types, so whenever those are used, a Release call is made, so we can promptly dispose of that data.   This would not solve the problem for reference counted objects in regular classes, but would solve it for local variables, or those contained themselves in reference counted classes.
This is important because when working with Tensors, each object really is a pointer to an expensive resource, but Disposing those manually is too painful.
Proposal:
namespace System {
  interface IReferenceCounted {
     void AddRef ();
     void Release ()
  }

  // Provides a base implementation that calls Dispose
  public class ReferenceCounted : IReferenceCounted, IDisposable {
     public void Release ()
     {
         if (InterlockedCompareAndExchange (counter - 1) == 0){
              // Debatable, would be nicer to use a Dispose(bool dispoing) call
              // but that is a convention, not an interface today.
              Dispose ();
         }
     }
  }
}

Classes that implement IReferenceCounted would have the compiler or runtime inject calls to AddRef every time they are assigned and call Release when the variable goes out of scope.
Usage:
class Tensor : ReferenceCounted {
    public void Dispose ()
    {
        ...
        NativeMethod.ReleaseTensor (handle);
        ..
    }
}

void LoadData (Input inp, Model m, Tensor prevLayer)
{
    Tensor accumulated = Tensor.zeros (prevLayer.Shape);

    while ((var loaded = LoadTensorFrom (inp)) != null){
       accumulated = loaded + prevLayer;
       m.Forward (accumulated);
    }
}

In the example above, the assignment to accumulated would call Release inside the while loop, before the value is assigned, and would call AddRef on the result from the loaded + prevLayer operation.  It would also take a reference in the call to m.Forward, and call Release immediately afterwards.
Given that these refcounted objects are going to be used to wrap heavy resources, we think that these should use atomic operations to increase/decrease the count, which would cause the least surprises.
Variations on the above proposal include not having to subclass ReferecedCounted, but we could make it an attribute [RefCounted] on the type declaration.
Jan Kotas suggests that we should make AddRef and ReleaseRef methods implemented by the runtime, and not by the user.  This would avoid problems caused by users throwing exceptions in those methods potentially leaking data.

Would reference counting thread safe?

What would happen if a reference counted object was stored as a field in a class? It would then not be deterministically disposed.
I think it would make sense to limit reference counted types to ref structs.


Samples not rdy for build?

CustomWindow sample:

2D Sample:

It's in building, now doesn't work..., But with the last commit compiles ok, (now there are some artifacts)

nope still not working

works well on vultaik

now works without problems


Can you add code for Exhibit?

Hi,
I use http://projects.csail.mit.edu/exhibit/googleJSON/ to convert Sheets to JSON for Exhibit, but it's down now.  Could you add this functionality (connect to live Google Sheets using a url) to your project?
Kind regards,
Daniel

From the sound of it, you are looking for a way to link to JSON data generated from a spreadsheet? Or are you trying to link to the spreadsheet itself? I can't tell exactly what that site is doing since it is down, but it looks like it is doing some URL adjustments to allow the sheet to be linked to and referenced as JSON, is that correct?
Assuming that is the desired behavior, it seems like that functionality was based on an older version of Google's APIs that is in the process of being deprecated / no longer supported. This means that the simple ?alt=json URL adjustment won't work long term.
A cursory glance through the Google Sheets API doesn't turn up any good solutions for this so I'm not sure if something as convenient can be done. You can always export your spreadsheet data to a JSON file then link to that file, but that isn't as useful when trying to access data directly instead of downloading the file. If I remember correctly, that's mostly difficult because plain text files are not directly referenced by the shared URL as it points to a wrapper for the text file's contents instead.
No estimate on the timeframe, but I'll keep this issue open and see if I can find a good solution.

Hi Synthoid,
I believe the googleJSON web page performs some URL adjustments so that Exhibit (https://www.simile-widgets.org/exhibit3/) can link via URLs to one or many Google Sheets and pull data in JSON format. That way you can perform updates on Google Sheets without having to worry about exporting to JSON anymore. If interested, I can share some working files with you.
Best,
Daniel

If you provide those examples, I can get a better understanding of what is expected there. I'm a little worried that URL adjustments are being phased out and won't be supported in the future, but it could just be an instance of Google not documenting everything their API can do.

Hi Chris,
Sure. Here is an example.  This URL points to the original source
information. https://www.igepn.edu.ec/mapas/mapa-catalogo-actual
I have attached an html page with its css.  The html links to a Google
Spreadsheet
(https://docs.google.com/spreadsheets/d/1ILn_Ywg8p8g19dMZi-6bqUqQOtxemryqZXSWpyR6lqc/edit#gid=120238821)
which BabelJSON has converted to JSON
(https://spreadsheets.google.com/feeds/list/1ILn_Ywg8p8g19dMZi-6bqUqQOtxemryqZXSWpyR6lqc/o1zl4xr/public/basic?hl=en_US&alt=json-in-script).
When Exhibit was in its infancy -and Google Docs was called Google
Buzz-, the BabelJSON converter served two purposes: 1. Protect the
original Google Spreadsheet URL.  2. Hide the contents of the converted
table (copy-pasting the converted URL in the browser would bring nothing).
Hope you find this interesting. Have a great New Year!
Daniel
On 1/5/20 13:58, Chris wrote:

If you provide those examples, I can get a better understanding of
what is expected there. I'm a little worried that URL adjustments are
being phased out and won't be supported in the future, but it cwith
ould just be an instance of Google not documenting everything their
API can do.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Synthoid/ExportSheetData/issues/99?email_source=notifications&email_token=AEOTI5EHW3C5BEWRNIB2MWTQ4IUU7A5CNFSM4J75UFJ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEID5C5A#issuecomment-570937716,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEOTI5GOWZDBTP3N2MLDPRTQ4IUU7ANCNFSM4J75UFJQ.


OutputAssertionBuilder:satisfies's lifetime limits its utility

I'm a bit confused about the lifetime used for the callback in OutputAssertionBuilder::satisfies, which has the following signature:
pub fn satisfies<F, M>(self, pred: F, msg: M) -> Assert where
    F: 'static + Fn(&str) -> bool,
    M: Into<String>,

Is there a reason that 'static is used?
I have a function t(filename: &str, count: usize).  I want to use Assert::cargo_binary to call my tool on filename, and then use satisfies to make sure the number of objects that is produces is count.  But that doesn't work, because:
59 |                 r = r.stdout().satisfies(|output| {
   |                                          ^^^^^^^^ may outlive borrowed value `count`
...

Is there a reason that pred is 'static?  Is there another way to do what I want?
Thanks for your help!

assert_cli version: 0.6.3 (Cargo.lock checksum: a29ab7c0ed62970beb0534d637a8688842506d0ff9157de83286dacd065c8149)
Rust version: 1.46.0 (04488afe3 2020-08-24)
OS and version: Debian Stable plus a bit of testing

assert_cli has been superseded by assert_cmd which I believe does relax this requirement because it evaluates assertions immediately rather than queuing them up.
See https://docs.rs/assert_cmd/1.0.1/assert_cmd/

Thanks a lot for following up.  I had used assert_cli years ago, and just copied the code to another project and modified it.  Perhaps it makes sense to upload a new version with a few deprecated tags.  Thanks!

Thanks a lot for following up.  I had used assert_cli years ago, and just copied the code to another project and modified it.  Perhaps it makes sense to upload a new version with a few deprecated tags.  Thanks!


[Bug]: page.on('load') does not fire in headless mode

Minimal, reproducible example
import { puppeteer } from 'puppeteer-extra';

const browser = puppeteer.launch({
  args: [
    '--incognito',
    'http://app.localhost:3000',
  ],
});

const [page] = browser.pages();

await new Promise((ready) => page.on('load', ready));

// interact with the page

Error string
no error
Bug behavior

[ ] Flaky
[ ] PDF

Background
When puppeteer is launched with a starting address, the code needs to wait for the page to load instead of waiting for a navigation etc.
Expectation
In v21.7.0, page.on('load') fired.
Reality
Now, it does not fire in headless mode, but does in non-headless mode (presumably because non-headless mode takes longer to start up?).
Puppeteer configuration file (if used)
No response
Puppeteer version
22.0.0
Node version
20.11.0
Package manager
npm
Package manager version
10.2.4
Operating system
macOS

@JakobJingleheimer this way to listen for the load event is inherently flaky. You need to create a new page, set up a listener, then navigate the page. There is just no way to do that if you specify which page to open outside of Puppeteer (the url argument is handled by the browser).

Mm, yes I figured it was something like that, but curious that the page on load approach worked 100% of the time (after thousands of runs across multiple OSs), and it suddenly doesn't at all now.
I switched to await page.waitForSelector(), which is working.

Ah! It's related to puppeteer/puppeteer#11815: I was using headless: 'new' to opt into the new headless mode. I neglected to switch it back to headless: true after upgrading (which is now using the new). Now that I switched back to headless: true on v22, the page-on-load works again.

@JakobJingleheimer in v22, the headless mode is the new one by default so that could change timings. This is completely arbitrary though and depends on how fast the page loads, if you delay the page load artificially, I believe you would see it fire most of the time. To avoid flakiness, the listener always has to be set up before the action, which is not possible in this case.
To make it non-flaky the following can work:
import puppeteer from 'puppeteer';

const browser = await puppeteer.launch({
  args: [
    '--incognito',
    'https://example.com',
  ],
});

const [page] = await browser.pages();

await page.evaluate(async () => {
    if (document.readyState == 'complete') {
        return;
    }
    await new Promise(resolve => window.addEventListener('load', resolve, {
        once: true,
    }))
})

console.log('ready')

await browser.close()

Cheers, thanks!
Not sure if you saw my updated message above: there's something wonky with headless: 'new' on 22.0.0.

@JakobJingleheimer it should make no difference I think since “new” is a truthy value but in general yes you need to upgrade to using headless: true for the new headless, and ‘shell’ for the old headless. V22 is a release with quite a few breaking changes.

Mm, I saw them 🙂
I dunno why, but 'new' definitely does make a difference. I just ran the ill-fated page-on-load from my OP a hundred times each for true vs 'new' on v22. It worked 100/100 with true and failed (hung) 100/100 times with 'new' 🤷♂

I see, I checked if you specify 'new' it looks like the old headless mode will be launched. In any case, we do not support 'new' anymore but perhaps we might want to default to the new mode even in this case.


Do not discard the producer task information for collection properties whose value is finalized

https://github.com/gradle/gradle/pull/7371 added some support to infer the tasks that produce the value(s) of a collection property, and also added a finalizeValue() method to finalize the value of these properties.
However, the implementation (intentionally) discards the producer information when finalizeValue() is called. We should fix this.
Expected Behavior
The identities of the tasks that produce the value of a collection property should not be discarded when finalizeValue() is called.
Current Behavior
The producer tasks are discarded when finalizeValue() is called.

https://github.com/gradle/gradle/pull/9766 adds the same problem for ConfigurableFileCollection


Resuable scripts across a collection

Hi,
Thanks for this lovely project! I was playing around and could not find a way to create a script that can be used across the collection.
Usecase:
We have multiple authenticated APIs that would require us to call a service to fetch token which can be set in the call. As I see, this is now possible but needs us to repeat this across all the individual calls.
Am I missing something ?

Hey @sriniprash You can checkout this issue : https://github.com/usebruno/bruno/issues/178
@mirkogolze has shared an approach on how you can do this.


move gcp machineset functionality to remotemachinesets controller

https://jira.coreos.com/browse/CO-657

/test e2e-gcp

/test e2e-gcp

/assign joelddiaz

/test e2e-gcp

/test e2e-gcp

@staebler i guess lets go ahead and squash, and i'll re-lgtm

Want to hold this for a successful e2e-gcp run.
/hold
/test e2e-gcp

/lgtm

/test e2e-gcp

/test e2e-gcp

@joelddiaz I pushed up a fix for the e2e gcp tests where the test for scaling the machinesets was looking for the wrong prefix for the machines. Please review 7309db0774851ac3f4ccfeea66fcc168c52daf16 at your leisure. I will squash once you are satisfied with the changes.

@joelddiaz I pushed up a fix for the e2e gcp tests where the test for scaling the machinesets was looking for the wrong prefix for the machines. Please review 7309db0 at your leisure. I will squash once you are satisfied with the changes.

@staebler go ahead an squash

@joelddiaz I pushed up a fix for the e2e gcp tests where the test for scaling the machinesets was looking for the wrong prefix for the machines. Please review 7309db0 at your leisure. I will squash once you are satisfied with the changes.

@staebler go ahead an squash

Squashed.

/test e2e-gcp

/lgtm

/test e2e-gcp

/test e2e-gcp

/hold cancel


imgrate to nacosV2

What type of PR is this?
feat: A new feature
What this PR does / why we need it (English/Chinese):
current hertz discovery do not support nacosV2
Which issue(s) this PR fixes:
Fixes(https://github.com/hertz-contrib/registry/issues/96)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your<EMAIL_ADDRESS>seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

需要签一下 cla

需要签一下 cla

done


Encapsulate current usage of RASCIL into a karabo module

Add a new module named Imaging and define interfaces for imaging, with rascil as an implementation.
Hide dask features and other implementation details in our implemantion.

I've made an imaging module which just encapsulates the imaging process without the usage of CLI. The variable names and the default values of the variables are according to the RASCIL initializations. This is done in the branch object_detection.


snowflake type should be PascalCase

https://github.com/MeguminSama/discord-slash-commands/blob/73d2a33badfa40d388733a00748b1a8c209e3907/src/structures/Snowflake.ts#L1
Although this type is an alias of a primitive type, it's not itself a primitive type and therefore should follow the convention of PascalCase names.

Thanks for pointing this out!
I'll sneak this into the PR when we ship tests.

fixed in https://github.com/MeguminSama/discord-slash-commands/commit/2472216715cb53b824c932950e1149a885836fe4


about my mysql database has no data, could  you give some data?

You can do it by yourself by starting with creating a Source.


Add support for OpenGL ES as a shading language

This commit adds two new entries to GpuLanguage,
GPU_LANGUAGE_GLSL_ES_1_0 and GPU_LANGUAGE_GLSL_ES_3_0.
The only meaningful differences w.r.t. stock OpenGL are:

the 1D texture optimization isn't applied to ES, as they are not
supported at all;

the textureD() calls are replaced in GLSL ES 3 by a call to
texture().

Fixes #1486

@amyspark that's great. Thanks a lot for the help.
Did you test the pull request with Krita ?

@hodoulp Yeah! The legacy GPU pipeline runs perfectly with OpenGL ES 3 under Angle, there is no need anymore for the texture<N>D defines. I'm still to test the new GPU pipeline, though, I got detoured by #1496.

@hodoulp status update, the new GPU pipeline returns completely scrambled results under OpenGL ES:

Legacy:
New (and ba52937fd5c39fde2f64d3e149d70413b45baf1e reverted)

With and without your 1D LUT optimization it still showed the same glitched appearance, so I'm guessing there's an encoding that's not being properly skipped? Do you know where I could have a deeper look at?

Upon further debugging, I believe the 1D LUT codepath may have a serious bug. I've tested with various input profiles from the ACES configuration and none of them actually trigger the tex1d codepath; however, every profile that does involve a 1D LUT results in those clamp-looking glitches. I've checked with both our OpenGL 4.x pipeline and through Angle, both against current master.

@remia, no, I haven't made any further progress on this. I hadn't thought of ociodisplay because it doesn't get built with our current configuration (we don't use OpenImageIO in Krita).

Another option is to use ocioconvert (but you still need OpenImageIO) to compare CPU vs GPU legacy vs GPU converted images. Otherwise, you can provide us with the LUT plus the image so we can test on our side.
~/dev/ocio_2/build_rls (master) $ ./src/apps/ocioconvert/ocioconvert --help
ocioconvert -- apply colorspace transform to an image

usage: ocioconvert [options]  inputimage inputcolorspace outputimage outputcolorspace
   or: ocioconvert [options] --lut lutfile inputimage outputimage
   or: ocioconvert [options] --view inputimage inputcolorspace outputimage displayname viewname

Options:
    --lut                  Convert using a LUT rather than a config file
    --view                 Convert to a (display,view) pair rather than to an output color space
    --gpu                  Use GPU color processing instead of CPU (CPU is the default)
    --gpulegacy            Use the legacy (i.e. baked) GPU color processing instead of the CPU one (--gpu is ignored)
    --gpuinfo              Output the OCIO shader program
    --help                 Print help message
    -v                     Display general information

@remia was spot on; it turns out I was using the legacy pipeline's edgelen value for the texture size, and not the one returned by OCIO. (For context: we cannot use the classes in oglapphelpers because Krita uses Qt's OpenGL facilities, so I ported the calls we needed to our shader code.)
For verification:

OpenGL
OpenGL ES (Angle)

@hodoulp, should I add support for using the classes in oglapphelpers with GLES?

@amyspark Yes, that would be interesting to have oglapphelpers with GL ES support. For long-term, the most important would be to have OpenGL ES unit tests like []/tests/gpu. But this pull request could be merged as-is for short-term because it's already a major improvement for OpenColorIO.

@hodoulp, it seems CMake doesn't provide a Find module for the ES equivalent of FindOpenGL, and adding support proper to the app helpers needs to re-detect from the ground up the needed dependencies.
It'll be certainly interesting! but for another MR in the future. For now, I'll wrap it up here :smiley:


Batch 2 Story 7 Fashion and Beauty

Vertical - Fashion and Beauty
Design - https://www.figma.com/file/VqbZX9o1rmf4X1qDpKiEfh/Stories---Template-Batch-2?node-id=7332%3A4453
Asset Folder - https://drive.google.com/drive/folders/1P-rcsx6kr1pkfIV9RTrfBgst2OFfFGJB

@divyarajmasani Below images was uploaded and again

https://drive.google.com/file/d/1OduGuWNIJjcETntXH4EZiwIBNZM-HSLW/view?usp=sharing
https://drive.google.com/file/d/16i3njFlJ27_p9RRkLJK333BRyKLKUQHI/view?usp=sharing
https://drive.google.com/file/d/1LJKDJCjpkvwYwGVJsY81FOR-Rp_nUwan/view?usp=sharing


Add clients information to user's graffiti when producing a block

PR Description
Adds --validators-graffiti-client-append-format to append clients information to user graffiti
Start from ValidatorOptions or ClientGraffitiAppendFormat.

I'm not sure about ValidatorOptions. Feature is used only on BN side and being able to set on VC too is a bit confusing.
I'm not sure where to add info, in the end or in the beginning. In the end looks better from my personal view for user, he gets configured graffiti first, but in the discussion it was proposed to add to the beginning (without much support), so I've added both options

Docs to be added.
Fixed Issue(s)

Fixes #8074
Documentation

[ ] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[ ] I thought about adding a changelog entry, and added one if I deemed necessary.

Found illegal dependencies in project ':infrastructure:version'
:ethereum:spec

ohh I will fix it.
just want to reuse createTekuVersion

I think I would simplify it as well. From aesthetic point of view, I don't think many users (if any) will prefer _START. We can have only:

AUTO
ONLY_CLIENT_CODES
NONE

I prefer to keep it simple unless we start to get specific user requests that they want to append at start.  Opinions?

@rolfyone ready for review
I've checked other clients:
Lighthouse - https://github.com/sigp/lighthouse/pull/5290 implementation does not merge user's graffiti with client information, either user's graffiti or client information
Lodestar - issue created https://github.com/ChainSafe/lodestar/issues/6463, non-default, optional merge in discussion
Prysm - issue created https://github.com/prysmaticlabs/prysm/issues/13558, change default graffiti, no merge from my understanding
Nimbus - no issue
Only Lodestar considering to implement merge optionally, so there will be few merged graffitis in network. It sounds for me like we could freely choose how to merge, add clients info to the beginning or to the end of the string. I suggest to add clients info to the end like: "Happy block TKBU". But your decision on this is final.
Also I'm thinking now that we are not covering this case:
BN could have VC calls with different proposers and may want not to merge anything, but is ok to put clients information in graffiti on proposers without graffiti. So WHEN_EMPTY and CLIENT_NAMES_WHEN_EMPTY may have sense.
And maybe CLIENT_CODES instead of CLIENT_NAMES? Codes is more correct.

Doc draft
```bash
validators-graffiti-client-append-format: WHEN_EMPTY

Appends CL and EL clients information with a space to user's graffiti. On
a separate BN/VC setup should be set on a Beacon Node. This feature helps
developers and community to analyze client diversity and block anomalies.
Default value is AUTO.
Following options are available:

AUTO: If user's graffiti is empty sets graffiti to reveal
consensus and execution clients information using its codes and build commits
like "TK508459f2BUbb9ba13c", where "TK" is Teku, next its build commit,
execution layer client 2 characters code, "BU" for Besu in example, and it
ends with EL build 4 bytes commit in hexadecimal representation.
If user's graffiti is set, this option will calculate space left
(graffiti size is 32 bytes) and if it's more than 5 characters left, appends
either full CL/EL version information or one of its compact forms right up to
4 characters (client codes only). So, if your graffiti is
"It's my first block!", block will be proposed with graffiti
"It's my first block TK50BUbb".

CLIENT_CODES: Appends only CL/EL client codes like "TKBU". It's useful if
you are not sure that version information cannot be used to exploit
vulnerabilities or don't want to share any extra information.

WHEN_EMPTY: Adds full client information in graffiti only if it's empty.
Use it if you have different proposers on your node with some of them using
graffiti while others not, and you don't want to change user's graffiti if
it's set.

CLIENT_CODES_WHEN_EMPTY: Adds client codes information in graffiti only if
It's empty. Useful if you have different proposers on node and don't want to
reveal client versions information.

DISABLED: Client information is not appended. If user's graffiti is set it
goes as is in block, otherwise empty graffiti is used.

I still think we should keep it simple...
AUTO
CLIENT_CODES
DISABLED

thats all we need, if people change graffiti they can change this too

@rolfyone it's all we have in this PR. I've just renamed CLIENT_NAMES -> CLIENT_CODES, codes looks better for me too.
Ready for review and merge

@rolfyone it's all we have in this PR. I've just renamed CLIENT_NAMES -> CLIENT_CODES, codes looks better for me too.
Ready for review and merge

previous PR has another 2 options... i'll check code, just trying to be clear about how many options we really want

@rolfyone I've removed it. Now just the list you posted.


Progress Toast

Feature Request
I'd like to use a Toast to let users know their upload is in progress, ex. "Uploading your photo..." with a spinney that I could dismiss manually once complete.

Hello, @Queatz this is available in the official material design specs?

Maybe try asking on stack overflow?
I am not sure if there are other libs that do this, but it seems like it is something that you could implement yourself fairly quickly.

@tomscholz  How would it integrate with Materialize?  Not sure if there's a way to get active Materialize toasts and insert a custom, equally stylized one.
Seems like something like specifying 0 as the duration and then allowing dismissal would be a bit simpler.  Perhaps could overlap with #2380 development.


Comments on TpFactory.py

TpFactory.py

does the class only ever have a single static method? (other than what's inherited from object)

line 48: calling a static method "create" which doesn't appear anywhere? - a mistake or something in python I've not seen before? Looks like it should be calling "tpFactory('CAN')"?

otherwise looks OK

Good review. I will have to revise the factory method as I'm not fully sure I'm actually implementing factories

refactored the class to use the call method for creating the actual instances. I think this provides a nicer interface.


Fix easy issues with flake8

Path coverage is low, but it's almost entirely whitespace changes anyway.

Conflicts were trivial, a sane merge tool would have resolved them automatically. It's a shame github doesn't use one.

Ah, except my other PR you merged introduced some flake8 violations, so those now need fixing too. Rebased locally, and now passes flake8


Wasm: "Open link in a new tab" performance problem

Feature request type
Performance improvement
Component name
No response
Is your feature request related to a problem?

Go to https://dev.mudblazor.com/wasm/components/alert
Click on the Avatar position in the menu using the right button of the mouse and select "Open link in a new tab"
I have to wait two and half second for opening a web page. It is too long*) taking into account that the application, all required libraries and assets are already on my HDD.

I need to explain why I reported this. I don't open the documentation in several tabs frequently. Even if, it isn't a problem for me to wait 3 seconds. But I treat the MudBlazor documentation a bit like a demo of Blazor's capabilities - if it works ok, other websites have big chance to work well. This is why I report it, because it bothers me.
Tested in Google Chrome on Windows 10.
*) compared to other web sites - because of this delay others can say that Blazor is still slow and don't consider it as a feasible option.
Describe the solution you'd like
I don't know the solution. Maybe we can open a new window of the same Wasm application? It looks like we now start another application, because we also loose the setting of the "Group by class" checkbox in the API documentation.
Have you seen this feature anywhere else?
No. When I go to https://bootstrapdemo.blazorise.com/ and open a new tab, it also takes similar amount of time. Boostrap Demo also looses theme settings (available in upper right corner of a window).
Describe alternatives you've considered
No response
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I came to the conclusion that I will close this issue, because maybe it isn't so important now.


python3Packages.black: 19.10b0 -> 20.8b1

Motivation for this change
Upgrade python3Packages.black to its latest version.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Thanks. There's an existing PR for this at https://github.com/NixOS/nixpkgs/pull/96456, although the creator has not responded in a while. Some of the review comments there about the formatting apply to this PR as well.

Result of nixpkgs-review pr 104368 1

2 packages marked as broken and skipped:

bareos
pepper

1 package blacklisted:

tests.nixos-functions.nixosTest-test

59 packages failed to build:

black (python38Packages.black)
black-macchiato (python38Packages.black-macchiato)
ceph (ceph-dev)
ceph-client
dvc-with-remotes
errbot
fava
flexget
libceph
mnemosyne
noto-fonts-emoji
python37Packages.WSME
python37Packages.cheroot
python37Packages.cherrypy
python37Packages.pyalgotrade
python37Packages.ws4py
python37Packages.zerobin
python38Packages.WSME
python38Packages.backports_functools_lru_cache
python38Packages.cheroot
python38Packages.cherrypy
python38Packages.google-cloud-iam
python38Packages.google_cloud_asset
python38Packages.google_cloud_automl
python38Packages.google_cloud_container
python38Packages.google_cloud_dataproc
python38Packages.google_cloud_error_reporting
python38Packages.google_cloud_kms
python38Packages.google_cloud_pubsub
python38Packages.google_cloud_storage
python38Packages.google_cloud_texttospeech
python38Packages.google_cloud_translate
python38Packages.google_cloud_websecurityscanner
python38Packages.graphql-server-core
python38Packages.irc
python38Packages.jaraco_collections
python38Packages.jaraco_functools
python38Packages.jaraco_logging
python38Packages.jaraco_text
python38Packages.libcst
python38Packages.nototools
python38Packages.papermill
python38Packages.portend
python38Packages.pyalgotrade
python38Packages.pyls-black
python38Packages.pytest-black
python38Packages.slackclient
sqlite-utils (python38Packages.sqlite-utils)
python38Packages.stumpy
python38Packages.tempora
python38Packages.typer
python38Packages.uarray
python38Packages.ws4py
python38Packages.zerobin
sabnzbd
sambaFull (samba4Full)
tribler
twitter-color-emoji
wal_e

33 packages built:

python37Packages.backports_functools_lru_cache
python37Packages.black
python37Packages.black-macchiato
python37Packages.google-cloud-iam
python37Packages.google_cloud_asset
python37Packages.google_cloud_automl
python37Packages.google_cloud_container
python37Packages.google_cloud_dataproc
python37Packages.google_cloud_error_reporting
python37Packages.google_cloud_kms
python37Packages.google_cloud_pubsub
python37Packages.google_cloud_storage
python37Packages.google_cloud_texttospeech
python37Packages.google_cloud_translate
python37Packages.google_cloud_websecurityscanner
python37Packages.graphql-server-core
python37Packages.irc
python37Packages.jaraco_collections
python37Packages.jaraco_functools
python37Packages.jaraco_logging
python37Packages.jaraco_text
python37Packages.libcst
python37Packages.nototools
python37Packages.papermill
python37Packages.portend
python37Packages.pyls-black
python37Packages.pytest-black
python37Packages.slackclient
python37Packages.sqlite-utils
python37Packages.stumpy
python37Packages.tempora
python37Packages.typer
python37Packages.uarray

Sorry about that, I only searched in issues but didn’t think about searching in open PRs. I’ll close it and see if I can help with #96456.


Some other ECS

[x] ~~https://github.com/sschmid/Entitas~~ (removed because of performance, older results here)
[ ] https://github.com/isadorasophia/bang
[x] ~~https://github.com/scellecs/morpeh~~ done
[ ] https://github.com/BeanCheeseBurrito/Flecs.NET half done

other libs not available as nuget package that can't be included yet:

https://github.com/actionk/Morpeh.Queries
https://github.com/DCFApixels/DragonECS
https://github.com/dudu502/LittleBee/blob/master/README_EN.md
https://github.com/ykafia/SoftTouch.ECS
https://github.com/prime31/Simple-ECS-Sharp
https://github.com/andreakarasho/TinyEcs

edited by Doraku

Doraku removed Entitas with last update.
As I remember Benchmarking Entitas took way to long an consumed too much memory on CI and on a PC.
Here the last README with Entitas.
https://github.com/Doraku/Ecs.CSharp.Benchmark/blob/0bc8c496a077a43740381f9b408f360e99909964/README.md

Morpeh is part of the benchmark. Doraku accepted the PR.

@Doraku I think there should be a note in the README.md why Entitas was removed.
And also a link to the old README.md - see above.
btw: I always ask myself why Entitas is/was so popular. Has anybody an answer?
Performance cannot be the reason.

@Doraku I think there should be a note in the README.md why Entitas was removed.
And also a link to the old README.md - see above.

good idea I'll do that
As for the popularity of Entitas maybe because it was one of the first? Or its simple api usage? Some people are only looking into ECS for the composition and code architecture advantage and not really the performance, who knows.

As for the others frameworks, I would be more than happy to accept MR doing this work for me :D, still it's a good list, maybe when I want a change of pace from my other projects I could look into it myself but no promise.
I hope that's ok with you I'm going to edit your message to keep track of those.

One other to throw into the mix https://github.com/thygrrr/fennecs
Also I tested Flecs, Bang, and Entt for a few tests and got meh results https://github.com/xentripetal/Ecs.CSharp.Benchmark/tree/master

Thanks a lot @xentripetal for adding fennecs.
I'll submit a PR soon for a newer version of the package, and some different approaches.
@Doraku Is there a suggested limit how many "variants" of each Benchmark an ECS should showcase?
(not thinking above 5, but could be up to 5 in some cases)

I know this might be a bit hard to set up (no nugets for starters) but I’d be really interested how Arch stacks up against Unity’s Entities

I created a ECS.
Secsy


/Users///GitHub/**/Pods/Headers/Public/YYKit/YYCGUtilities.h:49:23: Static declaration of 'RadiansToDegrees' follows non-static declaration

pod 导入报两个错误：
/Users///GitHub//Pods/Headers/Public/YYKit/YYCGUtilities.h:49:23: Static declaration of 'RadiansToDegrees' follows non-static declaration
/Users///GitHub//Pods/Headers/Public/YYKit/YYCGUtilities.h:44:23: Static declaration of 'DegreesToRadians' follows non-static declaration

你怎么解决的？


Design: Import Tool

Relief organizations begin working long before they hear about Crisis Cleanup and want to import cases they've already collected or completed. This is a very intensive process. This would be a simple Import tool.

[ ] Download an Excel template
[ ] User Uploads the list to import, in the correct format.
[ ] User is asked whether they want to claim all, none, or some of them.
[ ] User is taken to resolution center for errors:

[ ] Lack of required information (User is given the option to Enter the information in the UI, e.g. Status)
[ ] Duplicate (User is given the option to compare the two cases and edit/merge/ or submit as non-duplicate if necessary.)
[ ] Location Unknown (User given access to Advanced Mapping Tools in Issue CrisisCleanup/old-crisiscleanup-3-web#61 to pick location)

[ ] User may ignore errors, in which case they are not uploaded.
[ ] A complete report with all case data, including case numbers is downloaded automatically

[ ] Any un-imported cases are also included, with an explanation of why they were not uploaded.

Design for the following Formats:

[ ] Desktop
[ ] Tablet
[ ] Smartphone?
[ ] App?
Final Output
[ ] Wireframe or PSD

Done.


Add autodocs for nested and _map parameters

Once https://github.com/PickNikRobotics/generate_parameter_library/pull/164 is merged, the generater_parameter_library sphinx directive will also support nested and __map_ parameters
I didn't know how to add description to the non-leaf nodes of the struct, so I added an optional argument context_yaml_file, which can contain simple 'key: value' descriptions, which will be sorted into the list, e.g.
constraints: |
    Default values for tolerances if no explicit values are states in JointTrajectory message.

@mergifyio backport iron humble


Graph_msgs missing from Foxy tutorials

Description
When running this command:
rosdep install -r --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y
Got the following error:
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
moveit2_tutorials: Cannot locate rosdep definition for [gripper_controllers]
moveit_visual_tools: Cannot locate rosdep definition for [graph_msgs]

Thanks a lot for the issue and the fix @stephanie-eng!
Though, it seems like I can both install graph_msgs and gripper controllers via apt-get:
sudo apt-get install ros-foxy-gripper-controllers
sudo apt-get install ros-foxy-graph-msgs

Can you try running and sudo apt-get update and trying again?
Can you also confirm you can run the same commands?

@stephanie-eng let me know if we should close the issue.

This issue still exists in the main branch as there is no package for ros-galactic-graph-msgs

Seems like graph_msgs is already released though: https://github.com/ros/rosdistro/pull/30780 and CI could install it sucesfully: https://github.com/ros-planning/moveit2_tutorials/runs/4094661154?check_suite_focus=true#step:6:195. I'll check this out.

After the latest sync, this issue is now resolved.


[Issue] v2.1.15, won't adjust the view while emoting in firstperson, cannot check/uncheck "mute emote audio" option in emote wheel

same as topic

maybe i need to provide my screen resolution, very standard 1080p 16:9; and in previous version first person emote works great, but won't adjust the view after recently update, so i may won't track this issue, instead, if u need i will provide my modpack here to let u investigate

What do you mean by adjust view? Like you can't rotate the camera while emoting in third person?
Also does the mute checkbox not work at any time? Or only while emoting? Only while emoting in first person?

Okay, I think I found the issue with the UI, and not being able to hover over certain elements. I will include this in the next update!

won't move the player view camera while emoting in first person
in my case, when i try to click mute box, will result to perform another emote, and i guess emote hitbox are bigger than mute hitbox

This is normal, by the way. I want to add functionality to allowing the player to move the camera, but I'll have to do it when I have more time to implement a proper solution. I will keep it on my todo list!

ok, but i sug if performing emote with first person, player can move the camera, but also will rotating the emote direction, and the player view camera will following the player's head position (even performing some emotes is really painful if enable first person)

I did re-enable the camera to follow the player's head during first person emotes. I previously disabled it temporarily, but I forgot why. This was enabled again in the recent update.
And I will add a proper method eventually for allowing you to move the camera a little during first person emotes. I just don't know when I'll have the time to do it yet.

@cmooref17 uh and i did found some issues about first person and emote while moving features in previous version

only when emote while moving enabled, bee suit and bunny suit ear cosmetic (Not MoreCompany cosmetic) will not correctly stick on the player's head
u did add a feature in recently update, when u press rotation key and moving, u can stop emoting while in first person; but idk, first if im moving without emote while moving enabled, emote should stop no matter what keybind are press; and always enable rotation when in first person bc lock rotation in first person is pointless; ONLY allow lock rotation in third person emoting, and won't lock rotation while emoting by default
if enable emote while moving, the cam always should not follow the player's head, just a remind

those are my previous feedback but i forgot send those feedback to u, uh yea... some part are modified bc u already found a better solution

ok, but i sug if performing emote with first person, player can move the camera, but also will rotating the emote direction, and the player view camera will following the player's head position (even performing some emotes is really painful if enable first person)

and don't confuse, this only for first person, again if enable emote while moving, the cam always should not follow the player's head, will cause some problem otherwise

btw uh can u do me a favor? i like to send issue to Immersive Visor author but i can't find his github, that mod got a error when hosting a game and other client are joining
[Error : Unity Log] NullReferenceException
Stack trace:
UnityEngine.Transform.get_position () (at :0)
ManualCameraRenderer.Update () (at <255c0877f9414c3aa6f1fe5079ac13f3>:0)

First off, yes, if you emote in first person, but allow moving while emoting, the camera will not follow the player's head.
Also, what is the favor that you're asking exactly?

uh actually, i already send the issue in there, about Immersive_Visor custom visor rim to disappear, it was conflict issue
https://github.com/BunyaPineTree/LethalCompany_ModelReplacementAPI/issues/104

i was think about send conflict issue directly to Immersive_Visor before, but i can't find Immersive_Visor author github, that's why i need someone who can use discord to send issue to Immersive_Visor author

and always, really appreciate for ur reply


set default start / stop timeout to 120 seconds (systemd)

Description of Changes
Resolves https://github.com/observIQ/stanza/issues/258
By setting TimeoutSec to two minutes, systemd will give stanza up to 120 seconds to start or stop. The value of 0 allows stanza to hang forever if there is an issue starting or stopping. This prevent servers from shutting down.
Please check that the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] Add a changelog entry (for non-trivial bug fixes / features)
[ ] CI passes

Log Files
Logs / Second
CPU Avg (%)
CPU Avg Δ (%)
Memory Avg (MB)
Memory Avg Δ (MB)

1
1000
1.3965454
-0.13805914
128.51495
-5.4846497

1
5000
5.2417145
+0.24169064
139.05563
+0.76805115

1
10000
10.069177
-0.43101978
147.19208
+1.8638153

1
50000
53.00142
+2.7766418
175.86746
-2.9994507

1
100000
98.59211
+4.2793655
227.31493
-3.555893

10
100
2.0345192
+0.103456855
131.01697
-1.5025635

10
500
5.7933455
-0.18953323
140.02762
-1.8997803

10
1000
11.258859
+0.4312353
147.81358
+1.2592926

10
5000
51.93199
-0.9474907
179.96956
+0.10089111

10
10000
109.083496
-0.8758545
232.62662
+0.9439697


Custom Handler

How do you extend requests to use a custom handler for a security scheme?
I'm looking for documentation on how to extend the API basically.
Thanks

What specific kind of API extension do you have in mind? Generally speaking you'd do it by subclassing the Session object.

I have a site that is token based security, and I want to create a handler to work with this.  So I know the username, password, expiration, and token url, and I want the authentication handler to handle the creation and update of the token based on a given time frame.

It's token based, but not oauth? You may find Requests-Oauthlib's design instructive of how to handle a complex token based auth system.

Thanks,  I think I figured it out.  So you inherit from AuthBase, then you write your logic in __call__
My issue now is how do I insert the token parameter into a multi-part request.  For regular POST and GET calls it's easy.  Just append the token to the body or parameters off of the object r.
If I insert the form-data into the r.body of the form request, I a message from server saying it's not valid:
Real quick and dirty method:
token = "abc123
item = '--%s\r\nContent-Disposition: form-data; name="token"\r\n\r\n%s\r\n' % \
                    (r.headers['Content-type'].split(';')[1].strip().split('=')[1], token)
r.body = str.encode(item) + r.body

It looks right from Fiddler, but apparently it isn't

There is a body terminating boundary (--uuid--) that comes last, after which data will usually be ignored. You'd also need to update the content-length, which you may not have done.
Essentially, you'll want to insert your data before the terminating boundary, not after.

ahh thanks for that! that fixed it.
Thank you for all the help


Avro Serializer Implementations Based on ObjectSerializer

The PR is related to #10195 but instead of the Avro serializer implementations being based on an Avro specific interface this uses a generic ObjectSerializer interface. The concept is that an Avro serializer is tied to a single schema for its lifetime therefore the serialization APIs no longer require a String schema to be passed. This allows for Service Provider Interfaces (SPIs) to proxy as a generic way to get an Avro serializer without having to interact with a specific implementation, the SPI interface only requires passing the schema string when creating an instance.
For scenarios when an Avro serializer needs to be used and one wasn't passed into the code needing it AvroSerializerProxy.createInstance(String schema) should be used, this matches a similar pattern we follow with HttpClientProviders.createInstance(). The first time this method is invoke it will, in a synchronized manner, load the first AvroSerializerProvider implementation from the classpath, if one isn't found an exception will be thrown, then the schema will be passed creating the Avro serializer instance. This differs slightly from other SPI loaders we use as it lazily loads an implementation from the calsspath, this is done as not all SDKs will require an Avro serializer.

Closing in favor of #12460 which doesn't include another PR's commit history.


[mesheryctl] Design a command to update mesheryctl

See mesheryctl Command Tracker for current status of commands.
Current Behavior

So far, mesheryctl system update is used to update Meshery itself (Docker/k8s) but not the mesheryctl itself. This makes the user to manually update every time to update the CLI client
Desired Behavior

Create a command which will update the mesheryctl without the intervention of user to type further commands.
Implementation

TBD (will update soon)
Acceptance Tests

Mockups

Contributor Resources

mesheryctl Contributing Guide
Beginner's guide to contributing to Meshery and mesheryctl
mesheryctl Command Tracker
Meshery CLI Commands and Documentation
Layer5 Community Slack

Design spec being created... Will let you know if it's done for review

There's already one here

Oh ok, will look on it then

🤦 you could've said it yesterday, by mistake another copy is made

Alright never mind, I'll ask drive maintainers to remove the duplicate one

I totally forgot. my apologies!

It's ok. I'll ask Lee to remove the copy

Hmm... We'd need to see on this too, won't we?

I don't think we need this now tbh, the script command is now too powerful and easy to use. may be in future we think back here again.

Good to close then?

Yup!


Linker errors when trying to build with MD2 and RC5 enabled--also tests get stuck on 70-test_comp.t

I'm using Windows 10 Home Single Language, Version 1903 Build 18362.356 on a laptop with a 64-bit 2 core processor with 4 available threads.
The configuration command I ran first was:
perl Configure VC-WIN64A --with-zlib-lib=C:/zlib/lib/zlibstatic --with-zlib-include=C:/zlib/include enable-md2 enable-rc5 --release`

and the output messages that I got, including linker errors, I put in this Gist.
Output of perl configdata.pm --dump from that configuration is in this Gist.
Right now, I already cleaned the build after the build using the above configuration failed and then I configured OpenSSL with a command similar to the one I quoted here except without the enable-md2 and enable-rc5 arguments included.
This command:
perl Configure VC-WIN64A --with-zlib-lib=C:/zlib/lib/zlibstatic --with-zlib-include=C:/zlib/include --release

While testing the build with that configuration, I notice it's been stuck on 70-test_comp.t for more than 12 hours.
When I first tried to configure OpenSSL, I got an error about Win32::Console.  I tried to get and build that but got a few warnings and one error message from the Linker. But when I look, I see that Win32::Console is already there.  Could the problems I'm having now be because of some corruption in the Win32::Console module?
Another question related to the configuration: if I want to Zlib, should I also add enable-zlib to my configuration command?
Here's the gist for the output from running perl configdata.pm --dump for the current configuration that I'm trying to test at the moment.
Any help is appreciated.  Thanks in advance.

When adding enable-zlib to the configuration command and then running tests, the ENC test had this result:
test\recipes\20-test_enc.t ...................... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/172 subtests

And once again it got stuck on test_comp.t.

When adding enable-zlib to the configuration command and then running tests, the ENC test had this result:
test\recipes\20-test_enc.t ...................... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/172 subtests

This is a known bug and has been fixed on the OpenSSL_1_1_1-stable branch in commit 86ed78676c660b553696cc10c682962522dfeb6c.

Okay thanks, I'll get that one then.  I downloaded the latest stable release source code from the OpenSSL website.
What about the other stuff?  The test_comp.t test being stuck and those linker errors when enabling MD2 and RC5.
I edited my previous comment and added the perl configdata.pm --dump command output for the configuration where I enabled Zlib but didn't enable MD2 or RC5.

I found out how to specify static or shared/dynamic builds.  I want a static build since the app I want to use it with has all static libs and I don't know if a dynamic one being thrown in would cause conflict or whatnot.  If it'll be fine then I'll go with a dynamic build.
This is the configuration command I'm currently using:
perl Configure enable-zlib zlib-dynamic enable-external-tests --with-zlib-include=C:/zlib/include --with-zlib-lib=C:/zlib/lib/zlib.lib --with-zlib-lib=C:/zlib/bin/zlib.dll threads CXXFLAGS="/std:c++17;/permissive-;/W4" VC-WIN64A --release

I do want to know how to enable GOST and WPacket tests, by the way.  And I cloned the repository with this command this time:
git clone -b OpenSSL_1_1_1-stable https://github.com/openssl/openssl.git

Still need to see if it gave me that version of the library.
Anyway, I'll try building it and running the tests again now.  I'll get back to you guys if something goes wrong with the tests.

Report: alright, some tests were skipped but the rest all passed.  I want to know how to get some of them to not be skipped.  Like I said before, two of them are the GOST and WPacket ones.  And the other two are: the KRB5 test and the BoringSSL test.  For the latter, it says that the BoringSSL runner can't be found.  How can I get that?  And for the former is says, "Krb5 not available".
I'm going to back to building static libs but I still want to know how to get those 4 test to not be skipped.  Thanks in advance.

Report: alright, some tests were skipped but the rest all passed. I want to know how to get some of them to not be skipped. Like I said before, two of them are the GOST and WPacket ones. And the other two are: the KRB5 test and the BoringSSL test. For the latter, it says that the BoringSSL runner can't be found. How can I get that? And for the former is says, "Krb5 not available".

It is perfectly normal for some tests to be skipped. This is almost always the case - I'm not sure if its actually possible to have a build configuration where no tests are skipped at all. The krb5 and boringssl tests are really tests for developers to use to make sure we didn't break anything during development. They run the test suites from external third party software. You don't need to run them. The GOST test requires use of the GOST engine. If you're not planning on using GOST ciphersuites you don't need it.

What kind of ciphersuite is it and how do I get the engine for it?  And what about WPacket?  I can see that some tests being skipped is inevitable since a good chunk are only for dynamic builds, some are for Linux or VMS, and two are for MD2 and RC5 respectively which are apparently obsolete algorithms and not recommended.

I suggest that you just go with the defaults that OpenSSL provides, until you have more understanding and just treat "skipped" as "test passed."

I went ahead and installed it with the current setup, but I see I have no engines in the C:/Program Files/OpenSSL/lib/engines-1_1 directory.  How can I get engines?

How can I get engines?

This is the wrong question to ask. A better question might be:
What engines do I need?
And the answer in most cases is "none". You only need an engine in they provide some additional functionality that you need. For example if you need to use GOST ciphers then you need the GOST engine. But most users don't need the GOST ciphers.
There's a list of third-party engines here:
https://wiki.openssl.org/index.php/Binaries

Alright, never mind then.  I'll close the issue now.


Palindrome String

Enter your question -
Given a string str, we need to check whether the given string is palindrome or not
A Palindrome string is a such string that reversing it gives the same string.
Enter link to the question(if question belongs to any online platform) -
Not Any
Tags for the question(eg - Array, Basic, Stack, etc.) -
String

Please approve the question @SarthakKeshari

@satyam878,
Go ahead, Kindly place your solution in "String handling" folder.
Deadline - 02/10/2021


feature: Discord style emoji

the idea is to have cute fancy emoji I can slip into posts and pages easily

This should be easily done for posts with 2a4ea33 tho I might still need to make some changes for it to work in .md pages


Rewrite "package:" imports in Dart files in build output

If you run pub build in debug, you'll get Dart files in the build output. There will likely be other ways in the future of getting Dart files in your output. If they contain "package:" imports, those will fail unless the Dart file happens to be in the top level of the build output where we put the one copy of "packages".
For all other cases, there is no adjacent "packages" directory. To fix that, we want a built-in transformer in pub that rewrites those imports to relative ones that walk up to the main "packages" directory.

This issue has been moved to dart-lang/pub#854.


Added capability file loading to YouiEngine tests

Change list
Added capability file loading to YouiEngine tests
Types of changes
What types of changes are you proposing/introducing to Java client?
Put an x in the boxes that apply

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

Details
The caps for all scenarios are now defined in a config file.
To enable a certain scenario, uncomment [caps] for that section (and comment the one in the previous section).
The appium.txt file is located in /java-client/src/test/java/io/appium/java_client/youiengine.

+1

+11
I'd like to merge that into the final PR to the Appium repo. It'll save us a lot of commenting out device specific items in the sample.


Cake build for easier cli builds, update nuget exe

I use this to build the latest, and optionally zip for sharing, just from the command line. It uses Cake for the task ordering.
Also, the version of nuget checked into the repo was quite out of date.
Not sure if this is useful for anyone else but wanted to share. Feel free to close/reject if it is undesirable for any reason.

new work is in the rosyln version, probably don't need this now


Add pygmid Python package

This package can be used to lookup gm/Id data based on @bmurmann's method.

Implemented with 0f160b216fc423ab4faa040d1bb9f359b427ad91


Github Actions not shown in PR checks

Extension version: 0.6.0
VSCode Version: 1.33.0
OS: Arch Linux

Steps to Reproduce:

Open a project with github actions and open PR which are marked as require in protected branch configuration
In the shown check on the github website for this PR the actions are listed as checks, in vscode the github action checks are missing

This seems quite dangerous - if you had a larger number of checks, you might not realise that there are failed checks not showing up 😕

The only checks I see come up are Appveyor even though I have many other checks (15 in total). @RMacfarlane any idea why they are being filtered? This seems more like a bug than a feature request.

The view in GitHub combines data from a couple of different sources. In the extension right now, we're using this "combined status for a specific ref" API: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref
Originally I thought this would return all of the checks, but GitHub action results are not included in this result. So, we need to make an additional query to get those, or change it to use a graphql query to get all of the data to display

@RMacfarlane apparently the API required is in preview but it is here:
https://developer.github.com/v3/checks/runs/#list-check-runs-for-a-git-reference

FYI it does still enforce the checks even if not visible in this URI, so I feel a bit better about that at least:

As an update, I recently had to rebuild my Azure Pipelines connection, and now it started showing up in Checks API for some reason...


sensor.audi_e_tron_charging_power only updates on restart

When I start charging the car, HA won't update the status of sensor.audi_e_tron_charging_power. However, when I restart HA (and the car is already charging), the value updates.
Is anybody experiencing the same issue?

I don't even have a charging_power sensor. I think you're right, there was one at some point. State is working fine though:

So you don't even have the sensor. Mine is working but, doesn't update w/o restart of HA

A cloud pull is now conducted after an action is completed, weather the refresh vehicle data completes or not. This should resolve the update issue.
This issue is over 2 years old. Closing. Please resubmit an issue if your issues persist.


feat(2589): soft delete unused asset

Soft delete asset including the Admin frontend part, by adding a deletedAt date and filtering get & getAll calls for deletedAt being NULL
This approach was adopted instead of hard delete since TigerBeetle has no support for deleting rows
Checklist

[ ] Related issues linked using fixes #number
[x] Tests added/updated
[ ] Documentation added
[x] Make sure that all checks pass
[ ] Bruno collection updated

My main question is, what should we do when we delete an asset, then try to re-create another one with the same code and scale (via createAsset mutation)?
Right now, we will get a "duplicate asset" error, but that might be a bit confusing given the asset isn't visible in the UI. Maybe we can just set deletedAt to be null again, and return the asset?

yes, that might work, but if the scale is different from what we had before, do we just update the scale to the new one ?

@arpad-lengyel

yes, that might work, but if the scale is different from what we had before, do we just update the scale to the new one ?

An asset is unique on scale and code, so that would signify a new/different asset

It's an unused asset, so in theory it should not matter what the previous scale was, it was never used, so it won't have an effect on anything, no ?

Right, however I would say to be safe, we should treat e.g. USD/9 vs USD/2 as completely different assets (even if they have the same asset code). This is reflected in the DB as well:
https://github.com/interledger/rafiki/blob/8835414f0f478b30ab7ee80a54e8af39ac3b1904/packages/backend/migrations/20210422194130_create_assets_table.js#L15

It's an unused asset, so in theory it should not matter what the previous scale was, it was never used, so it won't have an effect on anything, no ?

Right, however I would say to be safe, we should treat e.g. USD/9 vs USD/2 as completely different assets (even if they have the same asset code). This is reflected in the DB as well:
https://github.com/interledger/rafiki/blob/8835414f0f478b30ab7ee80a54e8af39ac3b1904/packages/backend/migrations/20210422194130_create_assets_table.js#L15

yes, you are right, I've corrected the condition in my code


dotnet ef not working in VS 2017

Steps to reproduce

Install VS 2017 RC
Create brand new web application with authentication
Add the require dependencies for migration builder
Open the package manager console and type dotnet ef

The issue
So I upgraded to Visual Studio 2017 and generated a new .net core web application with docker support. I am trying to create a new migration and getting an error about not finding an executable. When I installed 2017 I did check to install .NET core.
I went to look for the project.json file but there is none. I added a nuget package and I still cannot get it to generate a migration file for me.
"Microsoft.EntityFrameworkCore.Design"
If you are seeing an exception, include the full exceptions details (message and stack trace).
Exception message:
Stack trace:
PM> dotnet ef
dotnet : No executable found matching command "dotnet-ef"
At line:1 char:1
+ dotnet ef
+ ~~~~~~~~~
    + CategoryInfo          : NotSpecified: (No executable f...and "dotnet-ef":String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Further technical details
Operating system: Windows 10
Visual Studio version: (e.g. VS 2013 or n/a) VS 2017

Maybe this helps:
https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell

Some problem on Linux
uname -a
Linux msmaldi-pc 4.8.0-1-amd64 #1 SMP Debian 4.8.5-1 (2016-10-28) x86_64 GNU/Linux
Microsoft.NETCore.App | 1.1.0
Microsoft.EntityFrameworkCore.Tools | 1.1.0-preview4-final
Microsoft .NET Core Shared Framework Host
Version  : 1.1.0
Build    : 928f77c4bc3f49d892459992fb6e1d5542cb5e86
No executable found matching command "dotnet-ef"

@jrock2004 Look at this post https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/
Have you done this command
PM> Install-Package Microsoft.EntityFrameworkCore.Tools.DotNet -Version 1.0.0-msbuild1-final -Pre

@cdie I tried that and I got the following
PM> Install-Package Microsoft.EntityFrameworkCore.Tools.DotNet -Version 1.0.0-msbuild1-final -Pre
  GET https://api.nuget.org/v3/registration1-gz/microsoft.entityframeworkcore.tools.dotnet/index.json
  OK https://api.nuget.org/v3/registration1-gz/microsoft.entityframeworkcore.tools.dotnet/index.json 140ms
  GET https://www.myget.org/F/booker-core/auth/9038fb26-5b58-4125-a2f2-ec8327b318e6/api/v3/registration1/microsoft.entityframeworkcore.tools.dotnet/index.json
Restoring packages for C:\Development\AndroidAppAddictsApp\src\AndroidAppAddictsApp\AndroidAppAddictsApp.csproj...
Install-Package : Package 'Microsoft.EntityFrameworkCore.Tools.DotNet 1.0.0-msbuild1-final' has a package type 'DotnetCliTool' that is not supported by project 'src\AndroidAppAddictsApp'.
At line:1 char:1
+ Install-Package Microsoft.EntityFrameworkCore.Tools.DotNet -Version 1 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

Time Elapsed: 00:00:04.5577762****

@12michel34 I tried your link and this is what I get
PM> Add-Migration -Name CreateAppsSchema
The specified framework 'Microsoft.NETCore.App', version '1.1.0' was not found.
  - Check application dependencies and target a framework version installed at:
      C:\Program Files\dotnet\shared\Microsoft.NETCore.App
  - The following versions are installed:
      1.0.1
  - Alternatively, install the framework version '1.1.0'.
Process finished with non-zero exit code

@jrock2004 It seems that you haven't install the last SDK for .NET Core. You can find it here https://go.microsoft.com/fwlink/?LinkID=835014
Then, retry 2michel34's link

My problem as solved when i add in project.json
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.0.0-msbuild1-final"

@cdie Yep that did it. After installing that I could run the command successfully Add-Migration -Name CreateAppsSchema

@jrock2004 are we good to close this one now? I think everything you needed was captured in blog post? If not, let me know and we will add the missing info.

I want to check if command line still works.

@jrock2004 - If it is project.json based project then you need to change current directory to directory containing project.json file. Above error is also throw if dotnet cannot find project.json in current directory.

There won't be a project.json if this is VS2017. Just make sure to read the guidance in the blog post as you can't have both Package Manager Console and dotnet ef work in the same project for this release. Of course, you can add/remove the packages as needed to swap between the two. But if you are in VS, we would recommend using the Package Manager Console commands.

Is this the final decision with project.json ??? We just got used to it :(

@cdie Thx for the link, I installed VS 2017, new project - update nuget packages (to 1.1) - and it did not run after that... Though it's strange why it's not installed with VS.

@freerider7777 The problem is with VS 2017 generated projects no longer have a project.json file. If you generate via command line or yoeman generator you still get the project.json

@jrock2004 For sure yoeman does not know yet :)) Connect was just a couple of days ago. Why did Microsoft decide to get rid of project.json?

could not make dotnet ef to run... :(( VS 2017 windows 7...

@freerider7777 take a look at https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-net-core-tools-msbuild-alpha/ for info on why project.json is being retired. If you are still having issues with dotnet ef in VS2017 after following the guidance at the end of https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/, then open up a new issue.

@rowanmiller ok, thx..I've read everything. I see for now VS is rather loosey goosey :) dotnet ef not compatible with package manager comman line...

@freerider7777 dotnet ef isn't for use in Package Manager Console, it's for use outside of VS at the command line. You would use the Package Manager Console commands in Microsoft.EntityFrameworkCore.Tools (Add-Migration, Update-Database, etc.).

@rowanmiller for you it's obvious, for us not... in VS code you just run npm start as in normal command line. Also the templates for project do not reference 1.1 packages - some work is yet to be done for VS to work 'out of the box' :)

@freerider7777 not disagreeing with you at all. The state of our tooling is very rough right now (especially for VS2017). I definitely didn't mean to imply that it should have been obvious... I still have to look at my own notes to work out what to use where sometimes 😮.

@rowanmiller Just to mention... we would complain anyway :))) Users are like that you know :) Thx for your efforts! the product is getting better and better.

I'm still getting

Install-Package : Package 'Microsoft.EntityFrameworkCore.Tools.DotNet 1.0.0-msbuild1-final' has a package type 'DotnetCliTool' that is not supported by project 'ProjectNameHere'

Does EF just not support csproj / visual studio 2017 created projects at all yet?

@ScottRFrost the Package Manager Console commands work, but dotnet ef is not really working. See the last section of the announcement post for details (there is a section specifically about VS2017 RC) - https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/.
BTW you can't Install-Package on a CLI tools package (at least not yet). You need to manually edit the csproj.

I assume the UI will eventually have the ability to add the CLI tools?  It's actually not a bad experience for as early / bleeding edge as this stuff is, but the documentation being out of data / based on project.json is what threw me off.

@ScottRFrost yes, the tooling is still very much inflight and there are a lot of experience issues to iron out.
Stored procedure support is one of the bigger features on our top priority backlog, I don't have a specific answer for when we'll implement it... but it is on the short list of critical things on our Roadmap

I may have spoken a little too soon about success.  The tools work from PM console, but scaffolding fails.  Is this known broken?
PM> Scaffold-DbContext -Connection "CONNECTIONSTRINGHERE" -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -v
Build started...
Build failed.

The solution is described in this post
https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/

If anyone wants to try out the nightly builds of the EFCore Tools for VS 2017 RC and .NET Core SDK Preview 3 (i.e. .csproj, not project.json) they can be found on the aspnetcore-feature-work feed.

I'm trying to get this to work on VS2017 RC after upgrading my project.
I've updated all packages and used Install-Package Microsoft.EntityFrameworkCore.Tools -Pre for tooling.
Now whenever I run Update-Database from the PowerShell Package Manager Console I get the following error:
PM> Update-Database
dotnet exec needs a managed .dll or .exe extension. The application specified was 'C:\Users\woute\Source\Repos\CompetentieMatrix\Ordina.CompetentieMatrix\src\Ordina.CompetentieMatrix\bin\Debug\netcoreapp1.0\Ordina.CompetentieMatrix.runtimeconfig.json'
Process finished with non-zero exit code
Any idea what I have to do?

You CAN use "dotnet ef" in the Package Manager Console.
You just have to "cd" to the root directory of your project; where the .csproj file lives. (Or whichever one you're using.)
This is especially handy when using a .csproj, because commands like "Add-Migration" do not work for .csproj files (yet).

Howdy, folks, if anyone is interested in trying out the next release of tooling, please see #7358.

I am having no luck whatsoever. I've got the very latest VS 2017 RC as of today. I created an ASP.NET Core Web API project. I changed the Core version to 1.1. These are my NuGet references:

When I opened package manager and ran dbcontext scaffold "Server=myserver;Database=mydatabase;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -Verbose
I got "scaffold-dbcontext dotnet exec needs a managed .dll or .exe extension". I've tried upgrading and downgrading various things. Restarting Visual Studio. Trying to install Microsoft.EntityFrameworkCore.Tools.DotNet (it says my project type is not correct).
If I try to run in  command window or powershell, it tells me notnet-ef is not valid
I've got the latest version of Powershell. I've been through hundreds, if not thousands of posts, many of which refer to the old .json project files. Can somebody tell me, starting from a clean machine, how to get the scaffold command to work against a very plain database with 1 very plain table? I've tried absolutely everything I can think of. I'm out of ideas.
Thanks in advance

@MikeYeager Hi!
I just tested scaffolding with new project, please have a look what packages I've added:

Exe
netcoreapp1.1

and the command line (in Package Manager console in VS):
Scaffold-DbContext "Server=***.database.windows.net;Initial Catalog=***2017;Persist Security Info=False;User ID=login;Password=password" Microsoft.EntityFrameworkCore.SqlServer
works just fine

@MikeYeager See #7358 for what packages to install.

Thanks for the responses. I eventually found another computer I could install everything on (VS2017 RC, Docker, etc.) I managed to get everything to work there. It seems that no amount of uninstalling, reinstalling, repairing, etc. is able to fix my original dev machine. Something is hosed and even using -Verbose flags, etc. there is not much feedback about why it's failing. I'm going to chalk it up to V1, preview and RC build issues and assume it will be worked out in a few months when there is a release version of all of the pieces and parts.

@jrock2004 @MicahZoltu @MikeYeager @bricelam @WouterDeKort
when i going for db First approach in .net core with Entity Framework Core 1.0 its giving me this error
"Process finished with non-zero exit code" while i am executing Scaffold-DbContext
please help me out

A couple of things to note. I've found that I've had better luck with 1.1 (all NuGet Packages, not just EF). 1.0 does not support named instances of SQL Server for example. You will have to include preview versions in NuGet when getting the tools, there is no RTM 1.1 version of the tools yet. Also, there is a bug that requires your project be on your OS drive. It only works through the NuGet Package Manager Console window right now. All that said, while it may not tell you much more, you can use the -Verbose and -Debug options on the command to get a little more information on the problem (see https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell), though I didn't find it that helpful in my case. I think things will improve when there is a 1.1 release version of the tools and a release version of VS 2017. Right now, it's a brittle process.

Thank you @MikeYeager  my issue resolved.

Hi Rowan and all,  I am a new student studying mvc and just going through tutorial with microsoft and stuck with the dreaded dotnet-ef using 2017 rc can anyone explain what to do error reads
c:\program files(x86) microsoft visual  studio\2017\comunity>dotnet ef migrations add initial
no executable found matching command "dotnet-ef"
c:\program files(x86) microsoft visual  studio\2017\comunity>dotnet ef database update
no executable found matching command "dotnet-ef"   I am not sure if im puting correct info in command prompt as it reqests  or doi go in to vs command prompt ??

@Br324 cd to the directory containing your *.csproj file before running dotnet ef.

Hi bricelam, Thanks for quick reply, But I am not sure how to do what you said I have only been using vs for a week, please find enclosed the screenshot of tutorial im working on,  still unsure as to what to put in the command prompt or vs prompt and path to use could you scrrenshot how it looks and where it goes exactly  thanks again Br324.

As @freerider7777 suggested I matched my packages with his reference set and it worked well.
For me the EF Core package itself was missing. I'm not sure why the Tools or SqlServer packages are not dependent on the main package to have it installed as a prerequisite
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.0" />

For me the EF Core package itself was missing. I'm not sure why the Tools or SqlServer packages are not dependent on the main package to have it installed as a prerequisite
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.0" />

SqlServer package is dependent and will pull in core package. You do not need reference to it in your csproj.

May you explain where we would see Microsoft.EntityFrameworkCore being pulled in? Or where I can read on how that process works? I also thought I needed to add a reference to it in my csproj - but a warning symbol appears next to it...
I cannot write: "using Microsoft.EntityFrameworkCore" or access DbContext.

.Include( ) not returning relationships (from principal table to dependent table), or only returning one row of data:
http://stackoverflow.com/questions/43127957/fix-include-not-working-in-net-core-include-on-relationship-only-retur

@ccampbellclearesult to make a dB connection place this in Startup.cs file:
public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            services.AddMvc();
            services.AddMvc().AddJsonOptions(options => {
                options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
            });
            var connection = @"Server=(localdb)\mssqllocaldb;Database=VMAR_API.AspNetCore.NewDb;Trusted_Connection=True;";
            services.AddDbContext<VMAR_APIContext>(options => options.UseSqlServer(connection));
        }

Also, in Startup.cs make sure you have this at the top:
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json;
using _**Project_Name_Here**_.Models;

For those having issues with dotnet ef, make sure when in powershell / dotnet cli (in VS), to navigate to the proper directory containing your .csproj file.
In Visual Studio it probably defaults to the top level (above /src), you'll to navigate down /src/project, then run your dotnet ef commands.

I migrated a VS2015 application with EF6.1.3 to VS2017 (net461), but I am not able to do migrations and update-database

@lincolnzocateli could you file an issue on https://github.com/aspnet/EntityFramework6

Yes, you can close this issue


SegmentCache

WIP! caching segments should improve performance considerably. integration and benching follows.

On 2023-06-10 12:31, Jacob Ryan McCollum wrote:

@mccolljr commented on this pull request.
Looks quite nice so far. Just a couple thoughts based on a first pass

+#[cfg(test)]
fn checked_log2_floor(v: usize) -> Option {

If this is no longer used by the implementation, it is okay to remove
it and the associated test.

Things are somewhat in flux still. I was thinking about keeping code
for now and eventually do some 'cleanup'. Would be nice to use
cargo-mutants to improve testing in future, but that's not my goal right
now.

/// Called by ctors to assert that the configuration is valid.

///
/// Some MemConfig implementations may put constraints on
(const generic)
/// parameters. Currently it is impossible to assert these at
compile time in stable
/// rust. In debug builds we check these constraints when a
SegVec uses some
/// config. The three shipped MemConfig implementations check
here that the 'FACTOR' is
/// not zero.
fn debug_assert_config();

I think there are some stable ways to assert things about const
generics now.
This is one example (stolen from a thread in an issue on
static_assertions):
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=98221c637c7195f1fc530cc51d3848f8
If you feel up to it, I think it would be better to have these
assertions happen at compile time... especially given that the
(current) assertions are simple, just checking the FACTOR value
against 0.

I didn't know that such works. lets see about adding that later. Note
that I left the road open for user implementations of MemConfig. Dunno
if everything can be asserted. The debug-only test at runtime as it is
currently should be good enough anyway.
My priority is to get it usable (with the cache thing if possible)
and have performance in the same Ballpark than std Vec (somewhat slower
is to be expected of course).
Plan is to improve and help maintaining my bits in future, but for now
I just want to get it going and work on something else (the thing where
I need SegVec).

--
Reply to this email directly or view it on GitHub:
https://github.com/mccolljr/segvec/pull/20#pullrequestreview-1473477867
You are receiving this because you authored the thread.
Message ID: @.***>

I updated the benchmarks (not committed yet) and want to share some observations:

https://public.pipapo.org/segvec_bench/criterion/push values/report/index.html
These push() 100k values.

In most cases we are less than 2x slower than std Vec which is pretty good
Linear<1> is insanely slow, disabled that in the benchmark.
Linear<1024> is the fastest.
The Proportional math is very expensive.
Caches work but the gains at push() are marginal except for the odd Proportional case. Still slower than Linear<1024>

https://public.pipapo.org/segvec_bench/criterion/access_ordered/report/index.html
This is just a loop calling get(0..N)

std Vec is significantly faster
Linear<1024> is fastest because of the simplest math
Not cached SegVec is more than a magnitude slower than std Vec
Caching works well but is slower than Linear<1024>

https://public.pipapo.org/segvec_bench/criterion/access_semirandom/report/index.html
This is get(index) where index is randomly modified to +/-500

SegVec with default (Exponential<1>) is more than 3 times slower than Vec
Caching improves it considerably
Linear<1024> is still faster than the cached Exponential<1>

https://public.pipapo.org/segvec_bench/criterion/access_random/report/index.html
This is totally random access

SegVec with defaults performs bad
Caching is even worse (not surprising)
Linear<1024> is close to the std Vec and pretty fast

Conclusion
Proportional is too slow, needs better math, maybe something that is only 'roughly' proportional (I have no actual idea about that).
While the caching idea works, it's gains are not as big as I hoped for and it is always outperformed by Linear<1024>.
I will scrap the SegmentCache.

For speed use 'Linear'.
When memory is scare then use 'Exponential'
Don't use 'Proportional' unless it becomes improved. (scrap it too?)

https://public.pipapo.org/segvec_bench/criterion/report/

This might closed now, the code exists as proof-of-concept. It could be reasonable to revive this idea when (cacheable) fast indexing on Proportional or Exponential is required. Still chosing Linear would likely be the better approach.


Bdkd 468 manual commands

I've updated the shared volume section. I'm still unconvinced about the commands chapter, and I especially don't think it should show the --help output. If we want that in a document of this sort, it should be automatically generated, rather than manually maintained.
Also, I think that in its current form, it should be moved to an Appendix. Perhaps rename it to A01_Commands_reference.md?
I'll also put some comments for typos etc.

Also, a general note: GitHub recommends using single backquotes () for inline formatting. E.g. ls`. For blocks, use triple backquotes, e.g.
something

Even if the current formatting works with GitHub, we create the website, we will have to run all the Markdown through some kind of formatter, which would have different rules. So it's best to stick closely to the spec: https://help.github.com/articles/basic-writing-and-formatting-syntax/

Looks, good, merging