Move 'spec' Github repo to OmniLayer Github organization

Now that the omnicore repo is in the OmniLayer organization, this spec repo should be moved over there, too.

@achamely @zathras-crypto @dexX7 @DavidJohnstonCEO @CraigSellars @marv-engine Isn't it time to move the spec repo over to the new OmniLayer Github organization.

+1
There is no reason not to do it.

+1

done


Firefox does not accept self-signed CA certificate

When using a self-signed certificate, Firefox reports the error MOZILLA_PKIX_ERROR_CA_CERT_USED_AS_END_ENTITY.
This happens because the certificate is marked with CA:TRUE, indicating it is a Certificate Authority (CA) certificate. Browsers and clients interpret such certificates as root or intermediate certificates meant for signing other certificates, not as end-entity (leaf) certificates intended for servers.
Why This Happens

Firefox allows importing certificates only if they are CA certificates to establish a chain of trust.
A server's certificate should have CA:FALSE to indicate it is a leaf certificate. Using a CA certificate as a server certificate creates a mismatch, triggering the error.

Proposed Solution
To resolve this, two separate certificates are needed:

CA Certificate: Marked with CA:TRUE, this acts as the private CA and can be imported into Firefox as a trusted authority.
Server Certificate: Marked with CA:FALSE, this is signed by the CA certificate and used by the HTTPS server.

I've been trying for several hours and I can't get a solution to work.
However, in Firefox it is enough to click on 'Advanced...' and 'Accept risk and continue' under the error message. Then everything works including the notifications.
For now, this is the way to go, which will be mentioned in \features, the README and Wiki.


comment action edit bug

Can't save comment when edit:
CommentsController line 101:
if ($comment->canEdit())
should be if ($model->canEdit())

Right you are - sorry about that! Fixed in the latest master.


int (de)serialization wonky around size = 0, doing malloc(0) and memcpy with size 0

While working on the run-time reconfigurable malloc, I noticed that the int (de)serialization does a 0-byte malloc and a memcpy with size 0. Is this really correct? Feels quite bogus?
I don't know our int (bsdnt) format well enough to say when size is 0 but I looked at the deserialization debug output and we have these:
--- 41: class_id      2, blob_size:   1, blob: 0 .

class_id = 2, and blob[0] is 0, which is the size of the int. What does that mean? Is that valid? Isn't this like 0-counting, so size=0 means we only have one limb (we always have one limb, right?) and so there should really be an offset to the deserialization malloc of val.n, no? see comment inline below
B_int B_intD___deserialize__(B_int res,$Serial$state state) {
    $ROW this = state->row;
    state->row = this->next;
    state->row_no++;
    if (this->class_id < 0) {
        return (B_int)B_dictD_get(state->done,(B_Hashable)B_HashableD_intG_witness,to$int((long)this->blob[0]),NULL);
    } else {
        if (!res)
            res = malloc_int();
        res->val.size = (long)this->blob[0];
        res->val.alloc = labs(res->val.size);
        res->val.n = acton_malloc(res->val.alloc*sizeof(long)); // When val.alloc is 0, we do a malloc(0) - what does that even mean?
        memcpy(res->val.n,&this->blob[1],res->val.alloc*sizeof(long)); // why copy of size 0?
        B_dictD_setitem(state->done,(B_Hashable)B_HashableD_intG_witness,to$int(state->row_no-1),res);
        res->$class = &B_intG_methods;
        return res;
    }
}

In malloc_int we always allocate val.n to be sizeof(unsigned long):
B_int malloc_int() {
    B_int res = acton_malloc(sizeof(struct B_int));
    res->$class = &B_intG_methods;
    res->val.n = acton_malloc_atomic(sizeof(unsigned long));
    res->val.size = 0;
    res->val.alloc = 1;
    return res;
}

wouldn't that be the equivalent of adding +1 in the deserialize, like so:
        res->val.n = acton_malloc((res->val.alloc+1)*sizeof(long));

@sydow please advice :)

A B_int is a pointer to a struct with three fields:

n, which again is a pointer, to a (heap-allocated) array of 64-bit unsigned “digits” or limbs.

size, which is a signed long and has two roles:

it describes the sign of the number; if size=0, the number is 0 (regardless of limbs), if it is positive(negative) the same holds for the number.
if size is non-zero, its absolute value is the number of significant limbs in n.

alloc, which is the number of allocated limbs, which may be greater than the significant number in size.

Consequently, if the number is zero, we could have n be a null pointer, but we always allocate one limb , for simplicity and for avoiding some checks.
A correct number must have the last (most) significant non-zero. Additional limbs are allowed for several reasons, among them that the library allows for mutable bigints(!). This can be space-saving in computations with huge numbers. But we don’t use it; to let
b +=<PHONE_NUMBER>543234567
change b is a bit too much…
Björn

On 12 Feb 2024, at 13:18, Kristian Larsson @.***> wrote:
While working on the run-time reconfigurable malloc, I noticed that the int (de)serialization does a 0-byte malloc and a memcpy with size 0. Is this really correct? Feels quite bogus?
I don't know our int (bsdnt) format well enough to say when size is 0 but I looked at the deserialization debug output and we have these:
--- 41: class_id 2, blob_size: 1, blob: 0 .
class_id = 2, and blob[0] is 0, which is the size of the int. What does that mean? Is that valid? Isn't this like 0-counting, so size=0 means we only have one limb (we always have one limb, right?) and so there should really be an offset to the deserialization malloc of val.n, no? see comment inline below
B_int B_intD___deserialize__(B_int res,$Serial$state state) {
$ROW this = state->row;
state->row = this->next;
state->row_no++;
if (this->class_id < 0) {
return (B_int)B_dictD_get(state->done,(B_Hashable)B_HashableD_intG_witness,to$int((long)this->blob[0]),NULL);
} else {
if (!res)
res = malloc_int();
res->val.size = (long)this->blob[0];
res->val.alloc = labs(res->val.size);
res->val.n = acton_malloc(res->val.allocsizeof(long)); // When val.alloc is 0, we do a malloc(0) - what does that even mean?
memcpy(res->val.n,&this->blob[1],res->val.allocsizeof(long)); // why copy of size 0?
B_dictD_setitem(state->done,(B_Hashable)B_HashableD_intG_witness,to$int(state->row_no-1),res);
res->$class = &B_intG_methods;
return res;
}
}
In malloc_int we always allocate val.n to be sizeof(unsigned long):
B_int malloc_int() {
B_int res = acton_malloc(sizeof(struct B_int));
res->$class = &B_intG_methods;
res->val.n = acton_malloc_atomic(sizeof(unsigned long));
res->val.size = 0;
res->val.alloc = 1;
return res;
}
wouldn't that be the equivalent of adding +1 in the deserialize, like so:
res->val.n = acton_malloc((res->val.alloc+1)sizeof(long));
@sydow please advice :)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.**>

Right, so for simplicity we always allocate a limb and I see that is what we do in malloc_int() but that is not what we do in B_intD___deserialize__(). When size is 0 we will do malloc(0)! See this line:
        res->val.n = acton_malloc(res->val.alloc*sizeof(long));

I reckon it should be something like this:
        res->val.n = acton_malloc(max(1, res->val.alloc*sizeof(long)));

right?
That way we avoid malloc(0) which is UB. malloc on Linux accepts size 0 but that is a proprietary behavior. The man page and information on the Internet says that malloc(0) should be avoided because it is not standardized behavior.

@sydow assigning you, I think this is a simple fix, would just be nice if you, who understand this much better than I, can check the code and do the right thing :)


fix: upstream grpc stats on trailers only

Signed-off-by: Patrik Cyvoct<EMAIL_ADDRESS>Fixes https://github.com/envoyproxy/envoy/pull/10748#discussion_r410754033
Description: Record upstream grpc stats on trailers only response
Risk Level: Low
Testing: Unit
Docs Changes: none
Release Notes: none
cc @mattklein123 @ggreenway

@mattklein123 fixed :smile:


feat: Reinstate disk-based shuffle

This PR brings back the original disk-backed shuffle. There is a limitation that all workers must have the same local disk (so limited to single node) but we can follow up to add a mechanism for reading shuffle files from other nodes via Arrow Flight to remove this limitation.

I can now run TPC-H @ 100GB again:
Writing results to datafusion-ray-tpch-1731793169620.json
{
    "engine": "datafusion-python",
    "benchmark": "tpch",
    "data_path": "/mnt/bigdata/tpch/sf100",
    "query_path": "/home/andy/git/apache//datafusion-benchmarks/tpch/queries/",
    "1": [
        7.837432622909546
    ],
    "2": [
        4.042541742324829
    ],
    "3": [
        6.542836427688599
    ],
    "4": [
        2.6251494884490967
    ],
    "5": [
        11.944225072860718
    ],
    "6": [
        0.9280209541320801
    ],
    "7": [
        17.949591398239136
    ],
    "8": [
        10.611652612686157
    ],
    "9": [
        37.41403603553772
    ],
    "10": [
        9.629725456237793
    ],
    "11": [
        3.0758209228515625
    ],
    "12": [
        5.291697025299072
    ],
    "13": [
        6.631402015686035
    ],
    "14": [
        1.8772220611572266
    ],
    "15": [
        3.8080291748046875
    ],
    "16": [
        1.6926724910736084
    ],
    "17": [
        28.15924596786499
    ],
    "18": [
        28.37423038482666
    ],
    "19": [
        4.091530084609985
    ],
    "20": [
        5.51667594909668
    ],
    "21": [
        31.07892680168152
    ],
    "22": [
        1.856799602508545
    ]
}


[wip] typecasting changes

This is all currently work in progress, infer and models are broken from this.
cast now either returns a converted value or raises an InvalidCastError, the different JTSTypes will raises different InvalidCastErrors in the exception.Heirarchy, hopefully this will give a library user more info about what when wrong as opposed to just true/false.
can_cast/test (I'm not sure about either names if StringType.test(value) doesn't tell me what's happening returns True/False values
currency symbols are now build from the 'Sc' unicode group, it still won't cover all the symbols see( https://en.wikipedia.org/wiki/Currency_symbol#List_of_presently-circulating_currency_symbols)
Numbers will attempt to accept actual numbers or strings
uuid module used to check uuids
rfc3987 lib used to check uris
we might consider using isodate for isodates, but I've left date formatting,
I've removed the DD/MM/YYYY style formats as the json table schema spec only mentions python/c style string formats
fixed time parsing to return time type instead of struct_time
There is a weird edge case in the spec where a the empty string null value '' is a valid null value, but if the required constraint is set, you end up in a situation where '' counts as missing.
geojson still needs implementing.
some class variables should probably be changed to instance variables
I've added a bunch of tests but I still need to fill in the remaining test cases too get higher coverage
need to remove allow ints 1 and 0 as valid boolean values (misread spec)

Hey @joetsoi
Great work. Lots of attention to detail.
Some points:

We want to use test, and follow the API of typecast return -1, 0, 1 (https://github.com/pudo/typecast/blob/master/typecast/converter.py#L25) is there a particular issue you find with this approach? Let me know if yes
For dates, we definitely want to support DD/MM/YYYY and similar patterns under the fmt: key

ah no, test is just a stub in my mind at the moment, I still need to get round to geojson before thinking about it. I'll have to add a bunch of tests and fix it up, I'm happy with -1, 0, 1
Yeah, I figured it was intentional (regarding the date stuff) which is why I hadn't fully removed the datetime stuff, I will hook it all back in

@joetsoi note that, as this work, we'll try to integrate typecast as a dep, as well as push changes down into it in co-ordination with @pudo. So, see the current date handling there (which essentially comes from messy tables): https://github.com/pudo/typecast/blob/master/typecast/formats.py
So, don't invest too much into all the various possibilities with date, just ensure that our existing functionality is kept.


fields.txt very light edits

For your review and consideration, please find very light edits to the fields.txt document. Thanks

merged in a6b77abff75709ee09a0d31d450af601f1f806d9, thanks.
By the way, you don't need to include the "For your review..." in the description on all your PRs. Will save me a few seconds of having to remove it from the commit message each time, thanks!


🐛 files.ignoreUnknown doesn't work as expect

Environment information
CLI:
  Version:                      1.6.1
  Color support:                true

Platform:
  CPU Architecture:             x86_64
  OS:                           macos

Environment:
  BIOME_LOG_DIR:                unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v20.4.0"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         "pnpm/8.15.5"

Biome Configuration:
  Status:                       Loaded successfully
  Formatter disabled:           false
  Linter disabled:              false
  Organize imports disabled:    false
  VCS disabled:                 false

Workspace:
  Open Documents:               0

What happened?
the playground is here:codesandbox example

change the biome version to 1.6.1 and reinstall the dependecies

2.we add two unsupported empty yml file called: ci.yml config.yml
3.set files.ignoreUnknown=true in biome.json
4.when we execute npx biome check ci.yml config.yml package.json,it works well as expect
5.when we execute npx biome check ci.yml config.yml or npx biome check ci.yml,it went wrong with No files were processed in the specified paths
I don't know if it is the right behavior.
but it is not good when we only change the unsupported file and commit it using the lint-staged as follows in package.json
"lint-staged": {
    "*": ["biome check --apply"]
}

Expected result
When we set files.ignoreUnknown=true and use only unsupported file as input,it will not throw an error.
Maybe it is a problem we need further discussing.
Code of Conduct

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

Hello, this is an expected behavior. You will want to use the flag --no-errors-on-unmatched. It is also documented in the Git Hooks section in the doc.

Hello, this is an expected behavior. You will want to use the flag --no-errors-on-unmatched. It is also documented in the Git Hooks section in the doc.

thank you for your solution.


Ar add recipe connector

@fvankrieken @damonmcc  I'd started down this route of porting some recipe stuff to python for facdb, but I'm having second thoughts about having duplicated logic in bash and py. Thoughts? Does it make sense to have the python equivalent for grabbing recipes? Guessing that the logic won't change very often, so many divergence isn't really an issue.

I think so - personally longer term I wouldn't mind moving fully to python for this stuff

totally support doing it in python too. and yea divergence doesn't seem like an issue
the bash logic doesn't change often and I suppose when we de want a build to use different data laoding logic, would be nice to do that in python and maybe treat the bash one as the "this is legacy, don't change me" approach?

@damonmcc and @fvankrieken I was holding off getting this in, so I could also implement it in facdb. But I think this is ready to go, and I'll implement in facdb after we've released. (that way I refactor in facdb and be confident I haven't broken anything)


[Snyk] Upgrade @angular/common from 14.2.3 to 14.2.4

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade @angular/common from 14.2.3 to 14.2.4.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 21 days ago, on 2022-09-28.

Release notes

Package name: @angular/common

14.2.4 - 2022-09-28
14.2.4 (2022-09-28)
compiler-cli

Commit
Description

cache source file for reporting type-checking diagnostics (#47508)

core

Commit
Description

correctly check for typeof of undefined in ngDevMode check (#47480)

Special Thanks
Alan Agius, Ashley Hunter, Doug Parker, Jessica Janiuk, JoostK, Kristiyan Kostadinov, Rokas Brazdžionis and Simona Cotin

14.2.3 - 2022-09-21
14.2.3 (2022-09-21)
animations

Commit
Description

make sure that the useAnimation function delay is applied (#47468)

Special Thanks
AleksanderBodurri, Andrew Kushnir, Andrew Scott, Bob Watson, George Kalpakas, Joey Perrott, Mauro Mattos, dario-piotrowicz, fabioemoutinho and famzila

    from @angular/common GitHub release notes

Commit messages

Package name: @angular/common

e5823f7 release: cut the v14.2.4 release
a4b66fe perf(compiler-cli): cache source file for reporting type-checking diagnostics (#47508)
10a3cef docs: update broken link (#47532)
9ac4b75 docs: update what what the CLI collects in analytics (#47529)
2c3e2d6 build: fix rxjs 7 build failure (#47548)
7e7769f docs: fixing standalone components sample code (#47542)
76f393b docs: visualize keyboard shortcut for search (#47507)
6ed3371 docs: Add new PR response templates (#47515)
2c46b5a fix(core): correctly check for `typeof` of undefined in `ngDevMode` check (#47480)
d22976a docs: add v15 scheduled release dates (#47513)
7e6fc10 release: cut the v14.2.3 release

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

handled by dependabot


npm registry still on version 0.3.5?

Hi, according to https://www.npmjs.com/package/madge, the current version on the npm registry is still 0.3.5. Is there any reason why version 0.4 hasn't been placed in the npm registry?

Thanks for the reminder! Published to NPM now.

On 3 jan 2015, at 08:46, Karl Cheng<EMAIL_ADDRESS>wrote:
Hi, according to https://www.npmjs.com/package/madge https://www.npmjs.com/package/madge, the current version on the npm registry is still 0.3.5. Is there any reason why version 0.4 hasn't been placed in the npm registry?
—
Reply to this email directly or view it on GitHub https://github.com/pahen/madge/issues/48.

--
Patrik Henningsson


Add UncaughtExceptionsLogger to log uncaught service exceptions.

Motivation:
If LoggingService is not added to services, exceptions thrown by those services are not caught. This default behavior might be confusing to users because even though exceptions are thrown, users can't check the exceptions.
The purpose of this feature is to provide users with logging uncaught exceptions by default.
Modifications:

ServerConfig

logUncaughtExceptions is added to allow users select whether to log uncaught exceptions(true by default)
logUncaughtExceptionsIntervalInSeconds is added to allow users set the time interval between logging uncaught excptions

ServiceRequestContext

shouldLogUncaughtException is added to determine whether to log uncaught exceptions(true by default)
LoggingService sets shouldLogUncaughtException to false before serving the request.

Armeria server will schedule the logging of uncaught exceptions by default and unschedule it when being stopped.
UncaughtExceptionsLogger is added which tracks the number of uncaught exceptions and the last thrown exception.

Result:

Closes #<4324>. (If this resolves the issue.)
User will be able to check the number of uncaught exceptions and last thrown exception periodically by default.

Example
[armeria-common-worker-nio-2-1] WARN com.linecorp.armeria.server.logging.UncaughtExceptionsLogger - Observed 15 uncaught exceptions in last 60 seconds. If you don't see error logs please use LoggingService decorator.
[armeria-common-worker-nio-2-1] WARN com.linecorp.armeria.server.logging.UncaughtExceptionsLogger - Last exception occurred with following message: null

User can change default settings by using ServerBuilder

final ServerBuilder sb = Server.builder();
sb.http(port);
sb.logUncaughtExceptions(false);
sb.logUncaughtExceptionsInterval(120);

 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 contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@seonwoo960000 and I had some discussion about this PR and decided to improve it a little bit so it works for both non-annotated and annotated services. We're going to use ServerErrorHandler interface to implement this feature.

@trustin Thank you for the support! 👍 👍


Resetting Tracker Bug

From Ragnoth: "Resetting tracker makes it so grid tracker tracks the arena rather than the replaced boss. This happens relative to the settings json because it happened to all 4 players. Also Hades tracked in Hades arena as well as the replaced boss iirc"

Double claims this happens not only on reset tracker, but event when you close and reopen the trakcer.


Add infinite loop detection and error feedback for user experience

Introduces functionality to detect infinite loops in the user's code and provides meaningful feedback without disrupting the UI. If an infinite loop is detected, a timeout is triggered, and an error message is displayed to inform the user that the execution has timed out.

Warning displayed when I loaded student page before I had typed any code

Could you test this out again because it is working for me.


Fixes #3469, #3473, #3482  - Dim.Auto fixes and Pos/Dim refactor to support TGD

Fixes

Fixes #3469
Fixes #3473
Fixes #3482
Makes progress on https://github.com/gui-cs/Terminal.Gui/pull/3451

Proposed Changes/Todos

[x] Replicate #3473 with unit tests.

The problem was I had removed some code I thought was dead in LayoutSubViews that forced a double calc of pos/dim in order to make DimAuto work when subviews depended on the view's dims. That code was very much "prototype" and didnt belong there anyway. I now have a much more elegant soution baked into SetRelativeLayout where if the Dim is DimAuto, we calcuate the Dim first (with Pos == 0) and then the Pos (using the resulalant dim).
This all highlighted clumisness in having ContentSize be nullable. So I changed it to non-nullable and added a SetContentsSize() method. The API is still a bit awkward to use so I may refactor it again at some point.

[x] Refactor AutoSizeTrue/False unit tests into new tests that make sense.

[x] New issue: Dim.Auto min: defines min size of the Frame. This should be min size of Content.Size!

I'm pretty confident #3473 is now fixed here.
Instead of focusing on #3469 (which is partially fixed), I'm now going to use this PR to also address:

#3482 in order to simplify @tznind's work on TGD.

[x] Remove nested class heirarchy in PosDim.

[x] Make the Pos/Dim types public - with API documentation that warns of pitfals of using them in normal situations... should not be needed!

[x] Make settings on the Pos/Dim types be publicly available (read only).

[x] Verify #3469 is fixed.

Pull Request checklist:

[x] I've named my PR in the form of "Fixes #issue. Terse description."
[x] My code follows the style guidelines of Terminal.Gui - if you use Visual Studio, hit CTRL-K-D to automatically reformat your files before committing.
[x] My code follows the Terminal.Gui library design guidelines
[x] I ran dotnet test before commit
[x] I have made corresponding changes to the API documentation (using /// style comments)
[x] My changes generate no new warnings
[x] I have checked my code and corrected any poor grammar or misspellings
[x] I conducted basic QA to assure all features are working

@tznind
Please pull this down and try with TGD to see if I got it right for your needs! You should not need to use reflection or anything fancy anymore to round trip Pos or Dim objects.

I made several comments in the issue for this PR addressing serious concerns I have that make me unable to support this PR, at least not as a permanent solution that makes it to V2 release.
They're shorter than my usual, but still not one-liners. 😅
Please do go over them, though, as I really think there's an XY problem going on here and that we should be actually fixing it.

Wait a sec...
Did you actually already do that and I'm misreading these diffs?
I'm gonna pull your branch and have a look.

I think there might be an issue or two from me that this will end up applying to, as well.
I'll look for those later, though, since that's not terribly important at the moment.

OMG THANK YOU FOR DOING THIS.
I do have some specific comments but I think it might actually be easier to wait til you're done with your tweaks, if you're still working on it.
Big one, though, that I'd request in a separate PR after this is merged: one type per file, pleeeeaaaase 🥰

OK seriously?
After pulling this down, this is one of my favorite PRs in all of V2. Top 5 for sure.
And I'm eagerly awaiting the rest of your intended alterations, though I would suggest that, even if for the same issue number, this PR be cut off at some point soon and the remaining work split to another, because the scope is massive and it's already quite difficult to review.
That'll make it easier for us to handle reviewing remaining work items, as they're pushed for PR.

I've verified

#3469 is fixed

This puppy is ready for review.

Alrighty.
I've looked over some of it so far, and the first comment/suggestion I have are regarding the static factory methods for the Dim and Pos base classes, and some structural things.
But both of those are goin to make the merge diff even harder to track because of how ubiquitous these types are throughout the library.
So I'm going to keep those in my pocket for issues/PRs to follow the initial merge of this.
I've got about 3/4 of the code left to look at for this, and I imagine I should be able to wrap up by/at some point tonight (like before 2024-05-17T00:00:00-07:00 ideally).
I may also send you PRs for your branch if there's anything simple that doesn't broaden the scope. I've got one in mind already, but that will be easier to just do in code, so that's what I'm leaning toward, at the moment, for that kind of thing.

Aside from the review I'm doing right now, I do want to comment that our use of these types at all, rather than leaving that behind in V2 in favor of more typical, familiar, and largely built-in types is a lot of wasted effort, IMO.
Everything these do can be achieved with pre-packaged types along with a few of the enums we have, and using those things directly within anything that needs them, via use of interfaces.
I realize that's not a very good explanation but I'm dragging and it's time for bed, so I'll circle back to this tomorrow (well...today).

Aside from the review I'm doing right now, I do want to comment that our use of these types at all, rather than leaving that behind in V2 in favor of more typical, familiar, and largely built-in types is a lot of wasted effort, IMO.
Everything these do can be achieved with pre-packaged types along with a few of the enums we have, and using those things directly within anything that needs them, via use of interfaces.
I realize that's not a very good explanation but I'm dragging and it's time for bed, so I'll circle back to this tomorrow (well...today).

You're gonna need to explain this better.

Haha yes. No worries. I fully intend to, with words and code. :)
I'm just going to do it once, in one place, rather than bits and pieces all over the place.

Alrighty, going through my notes to see what is worth sticking in this review.
My goal is for mostly important stuff or just side notes/ideas that aren't requests for change, for the remainder of this PR review, so we can merge and go from there and feel things out.
Stay tuned!

Beware that, at least for me, github collapsed several of the comments into a section you have to expand to see. Lame.

There are other big items, too, but it's too much for this PR, and some apply to other portions of the code, too, so I'll file issues after this is done and merged for those.
Makes it more approachable in bite-sized chunks, anyway.

And I keep wanting to suggest not spending too much time perfecting the xmldoc comments right now, in favor of holding that off til this stabilizes, to save work and make it less enticing to stick to something for sunk cost fallacy reasons, which we all are guilty of sometimes - especially when we get "GetItDoneItis." 😅
So that's me both suggesting that but also not, if you'd rather do it now. 🤷♂
We can turn that inspection up to error before release, too, to make sure we don't miss any, which is better than having them but them getting out of date as implementation drifts from what's written in them.

And I keep wanting to suggest not spending too much time perfecting the xmldoc comments right now, in favor of holding that off til this stabilizes, to save work and make it less enticing to stick to something for sunk cost fallacy reasons, which we all are guilty of sometimes - especially when we get "GetItDoneItis." 😅

I don't think one can spend enough time on XML docs. Nothing drives clarity of thought more than writing clear, crisp, and complete English sentences.

So that's me both suggesting that but also not, if you'd rather do it now. 🤷♂
We can turn that inspection up to error before release, too, to make sure we don't miss any, which is better than having them but them getting out of date as implementation drifts from what's written in them.

@dodexahedron I believe I've addressed all your feedback with the exception of those where I've left the comment unresolved with a question I added.

And I keep wanting to suggest not spending too much time perfecting the xmldoc comments right now, in favor of holding that off til this stabilizes, to save work and make it less enticing to stick to something for sunk cost fallacy reasons, which we all are guilty of sometimes - especially when we get "GetItDoneItis." 😅

I don't think one can spend enough time on XML docs. Nothing drives clarity of thought more than writing clear, crisp, and complete English sentences.

So that's me both suggesting that but also not, if you'd rather do it now. 🤷♂
We can turn that inspection up to error before release, too, to make sure we don't miss any, which is better than having them but them getting out of date as implementation drifts from what's written in them.

Man I swear I had responded to this, but I must have mis-clicked. I wrote it on another PC, though, so I'll look when I'm able to on that.
The gist was "Agreed - XmlDoc is good and not optional in the finished product, but changes are likely to result in lost/wasted effort."
If you don't mind, no biggie. Just trying to save you some work and time. :)

Specifically for this PR, I mean. Not as a SOP.

@dodexahedron I believe I've addressed all your feedback with the exception of those where I've left the comment unresolved with a question I added.
Really good stuff, and I appreciate your diligence.

Now that I've (I think) acked existing comments, I'm diving back in to pull and look at the current code. :)
My intent for this pass is, unless there are any biggies that should block the refactor til being fixed, to comment on small things but otherwise target a green light for this PR so we can work on things that are actual changes outside just the refactor (several of which we already let sneak in, but oh well).

After I cram dinner down my neck, that is. 😆

Not done yet. I fell asleep at some point, which was much needed (what a week, man).
And it's 3AM, so I'm headed back to bed. Should have stuff for ya tomorrow (today). Good work. 🙂

😭 I lost a review I was working on. I was on my laptop, booted into Ubuntu, writing in Kate, just in case github or my browser acted up.[^morelikepurgatory]
Then the machine hard locked up for a hardware reason I now need to look up the light flash codes for in the repair manual and probably get Dell on-site to replace if necessary. 😤
At least there wasn't anything profound in it, so I can recreate it on another machine. I'll probably do that til I fall asleep, so half an hour or so tonight.
[^morelikepurgatory]: Well, not lost per se because it'll be there when I get it working again, but it's not accessible to me right now without taking it apart, which I'm not about to do at half til midnight. 😑

Ok maybe not so much tonight. After going through some of my github inbox it's already just about midnight, so I'll pick it up tomorrow. Was planning on Tuesday having dedicated time for TG anyway. 🙂

🥳
Once I finish migrating the Roslyn stuff, I'll get to that draft issue I started a couple days ago.


AttributeError: 'GPTVectorStoreIndex' object has no attribute 'query'

(.venv) C:\Users\hbb9279\OpenAI\Files\KBR>python
Python 3.11.3 (tags/v3.11.3:f3909b8, Apr  4 2023, 23:49:59) [MSC v.1934 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

import llama_index
llama_index.version
'0.6.0'

cur_index = GPTVectorStoreIndex.from_documents(doc_set[file], service_context=service_context, storage_context=storage_context)
cur_index.index_struct.index_id="Index1"
print(cur_index.query("Summarize this"))
File "C:\Users\hbb9279\OpenAI\code\bot.py", line 127, in
print(cur_index.query("Summarize this"))
^^^^^^^^^^^^^^^
AttributeError: 'GPTVectorStoreIndex' object has no attribute 'query'

index = GPTVectorStoreIndex.from_documents(documents)
prompt="what is skhokho?"
r=index.query(prompt)
Traceback (most recent call last):
File "", line 1, in
AttributeError: 'GPTVectorStoreIndex' object has no attribute 'query'

Use this:
Querying the index
query_engine = index.as_query_engine()
response = query_engine.query("what are the articles about?")
print(response)
Source: https://gpt-index.readthedocs.io/en/latest/guides/primer/usage_pattern.html#optional-save-the-index-for-future-use

It didn't work for me.

TypeError                                 Traceback (most recent call last)
 in <cell line: 4>()
2
3 query_engine = index.as_query_engine()
----> 4 response = query_engine.query("What are the top 10 players?")
18 frames
/usr/local/lib/python3.10/dist-packages/langchain/llms/base.py in dict(self, **kwargs)
335     def dict(self, **kwargs: Any) -> Dict:
336         """Return a dictionary of the LLM."""
--> 337         starter_dict = dict(self._identifying_params)
338         starter_dict["_type"] = self._llm_type
339         return starter_dict
TypeError: 'method' object is not iterable

Same issue I also faced in below snippet:
query_engine = index.as_query_engine()
response = query_engine.query("Who is the author of this article?")
TypeError: 'method' object is not iterable

I managed to fix the error in my code.
I had to add:
query_engine = index.as_query_engine()
and change the query to:
response = query_engine.query(prompt)
Working source code here: https://github.com/tractorjuice/wardley-qa-video/blob/main/wardley-qa-video.py

I have the same error. It was working fine before the changes were made to the querying structure.
query_engine = index.as_query_engine()
response = query_engine.query("can you summarize the documents?")

TypeError: 'method' object is not iterable

It didn't work for me.
TypeError Traceback (most recent call last) in <cell line: 4>() 2 3 query_engine = index.as_query_engine() ----> 4 response = query_engine.query("What are the top 10 players?")
18 frames /usr/local/lib/python3.10/dist-packages/langchain/llms/base.py in dict(self, **kwargs) 335 def dict(self, **kwargs: Any) -> Dict: 336 """Return a dictionary of the LLM.""" --> 337 starter_dict = dict(self._identifying_params) 338 starter_dict["_type"] = self._llm_type 339 return starter_dict
TypeError: 'method' object is not iterable

@shobhitag11 I guess you are using a custom llm via langchain. If yes, make sure to comply with the latest changes in the LLM class. --> https://python.langchain.com/en/latest/modules/models/llms/examples/custom_llm.html
_llm_type & _identifying_params must be defined as properties (@property)  in the wrapper class.
After applying these changes, query works again for me.

actually i am using google flan t5 in custom llm  ---
code is--
class customLLM(LLM):
model_name = "google/flan-t5-large"
pipeline = pipeline("text2text-generation", model=model_name, device=0, model_kwargs={"torch_dtype":torch.bfloat16})
def _call(self, prompt, stop=None):
    return self.pipeline(prompt, max_length=9999)[0]["generated_text"]

def _identifying_params(self):
    return {"name_of_model": self.model_name}

def _llm_type(self):
    return "custom"

llm_predictor = LLMPredictor(llm=customLLM())
can you please guide how to solve
query_engine = index.as_query_engine()
response = query_engine.query("can you summarize the documents?")
TypeError: 'method' object is not iterable
this error

I m using flan t5 too, i m facing the same error, someone please help me with this.

query_engine = index.as_query_engine()
response = query_engine.query("how many parameters does the BloombergGPT contain?")
return response
I m using flan t5 too, but it doesn't seem to work out.

I get:
ImportError: cannot import name 'EventPayload' from 'llama_index.callbacks.schema'


1 )Ansible Improvements to provide the first class improvement to CLI…

Ansible Improvements to provide the first class improvement to CLI option.
Adding L0 test for ansible

@hililh,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Old data being returned in response to v2 wait api call using waitIndex

etcd-corruption.zip
Had this issue on version 2.3.2 of etcd, but am also now seeing it on version 2.3.4.
Essentially all was working ok for a day or so of testing, then I started getting spurious data being returned from a wait v2 api call (with a lower index that the waitIndex passed into the wait call).
This zip contains the data files and a python script "demoissue.py" which demonstrates the issue. The output should be similar to the following:
$ ./demoissue.py
{u'createdIndex': 11270, u'modifiedIndex': 11270, u'nodes': [{u'createdIndex': 11272, u'modifiedIndex': 11272, u'value': u'v1', u'key': u'/components/resultslive/rl1'}], u'dir': True, u'key': u'/components/resultslive'}
Waiting from index=11271
{u'action': u'set', u'node': {u'createdIndex': 10569, u'modifiedIndex': 10569, u'value': u'{"timestamp":1464082470.7153270245,"ref":"f586eb4e-8721-e69b-b080-27474860_2","data":null}', u'expiration': u'2016-05-24T09:35:30.752422783Z', u'key': u'/components/resultslive/f586eb4e-8721-e69b-b080-27474860_2', u'ttl': 60}}
Here, we set some node data into '/components/resultslive/rl1', then read from '/components/resultslive' and use the returned modifiedIndex + 1 to do a subsequent 'wait' call. This returns straight away, but rather than returning the data for the previous write, it returns old data (index 10569).
If the etcd data files are deleted, then everything works as it should and returns the newly written child node.

which python library do you use? do you use the ttl refresh feature?

OK. I examined the WAL you provided and confirmed the issue. Got a fix at #5448.

Thanks for jumping on this so quickly.


Removed link annotations

Fixes #1502

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: ymesika
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: frankbu
Assign the PR to them by writing /assign @frankbu in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Deploy preview for preliminary-istio failed.
Built with commit 809558fc35d328af62442173acc5b6f63fcb3586
https://app.netlify.com/sites/preliminary-istio/deploys/5b2262ba0733d5169832d93d


Add Community Setup

To Be an Open Source Project Your Repo Should Have the Following

[x] Add Pull Request Template
[x] Add Issue Templates
[x] Add Contributing
[x] Update Readme
[x] Add Code Of Conduct

/label done

/giphy party


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.3 to before v5.15.6",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=53010f991a9f5e4ed2db705ddde6ff32709192a2",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=39509d76a9a3d02f379d52cb4b1449469c56c0e0"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "53010f991a9f5e4ed2db705ddde6ff32709192a2",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "39509d76a9a3d02f379d52cb4b1449469c56c0e0",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "net: nexthop: fix null pointer dereference when IPv6 is not enabled\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.15.6 by commit 39509d76a9a3d02f379d52cb4b1449469c56c0e0, it was introduced in version v5.3 by commit 53010f991a9f5e4ed2db705ddde6ff32709192a2. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002523


twill-build failed

While hitting npm run twill-build --script-shell bash i get this error on fresh installation.

Building: C:\Program Files\nodejs\node.exe C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=                                                             gyp info it worked if it ends with ok                                                                                gyp verb cli [ 'C:\Program Files\nodejs\node.exe',                                                                                gyp verb cli   'C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\bin\node-gyp.js',                                                                                gyp verb cli   'rebuild',                                                                                gyp verb cli   '--verbose',                                                                                gyp verb cli   '--libsass_ext=',                                                                                gyp verb cli   '--libsass_cflags=',                                                                                gyp verb cli   '--libsass_ldflags=',                                                                                gyp verb cli   '--libsass_library=' ]                                                                                gyp info using<EMAIL_ADDRESS>                                                                                gyp info using<EMAIL_ADDRESS>| win32 | x64                                                                                gyp verb command rebuild []                                                                                gyp verb command clean []                                                                                gyp verb clean removing "build" directory                                                                                gyp verb command configure []                                                                                gyp verb check python checking for Python executable "python2.7" in the PATH                                                                                gyp verb which failed Error: not found: python2.7                                                                                gyp verb which failed     at getNotFoundError (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:13:12)                                                                                gyp verb which failed     at F (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:68:19)                                                                                gyp verb which failed     at E (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:80:29)                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:89:16                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\index.js:42:5                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\windows.js:36:5                                                                                gyp verb which failed     at FSReqCallback.oncomplete (fs.js:159:21)                                                                                gyp verb which failed  python2.7 { Error: not found: python2.7                                                                                gyp verb which failed     at getNotFoundError (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:13:12)                                                                                gyp verb which failed     at F (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:68:19)                                                                                gyp verb which failed     at E (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:80:29)                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:89:16                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\index.js:42:5                                                                                gyp verb which failed     at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\windows.js:36:5                                                                                gyp verb which failed     at FSReqCallback.oncomplete (fs.js:159:21)                                                                                gyp verb which failed   stack:                                                                                gyp verb which failed    'Error: not found: python2.7\n    at getNotFoundError (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:13:12)\n    at F (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:68:19)\n    a t E (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:80:29)\n    at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\which\which.js:89:16\n    at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\index.js: 42:5\n    at C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\isexe\windows.js:36:5\n    at FSReqCallback.oncomplete (fs.js:159:21)',                                                                                gyp verb which failed   code: 'ENOENT' }                                                                                gyp verb could not find "python2.7". checking python launcher                                                                                gyp verb could not find "python2.7". guessing location                                                                                gyp verb ensuring that file exists: C:\Python27\python.exe                                                                                gyp verb check python version C:\Python27\python.exe -c "import sys; print "2.7.15                                                                                gyp verb check python version .%s.%s" % sys.version_info[:3];" returned: %j                                                                                gyp verb get node dir no --target version specified, falling back to host node version: 11.8.0                                                                                gyp verb command install [ '11.8.0' ]                                                                                gyp verb install input version string "11.8.0"                                                                                gyp verb install installing version: 11.8.0                                                                                gyp verb install --ensure was passed, so won't reinstall if already installed                                                                                gyp verb install version is already installed, need to check "installVersion"                                                                                gyp verb got "installVersion" 9                                                                                gyp verb needs "installVersion" 9                                                                                gyp verb install version is good                                                                                gyp verb get node dir target node version installed: 11.8.0                                                                                gyp verb build dir attempting to create "build" dir: C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build                                                                                gyp verb build dir "build" dir needed to be created? C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build                                                                                gyp verb build/config.gypi creating config file                                                                                gyp verb build/config.gypi writing out config file: C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\config.gypi                                                                                gyp verb config.gypi checking for gypi file: C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\config.gypi                                                                                gyp verb common.gypi checking for gypi file: C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\common.gypi                                                                                gyp verb gyp gyp format was not specified; forcing "msvs"                                                                                gyp info spawn C:\Python27\python.exe                                                                                gyp info spawn args [ 'C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\gyp\gyp_main.py',                                                                                gyp info spawn args   'binding.gyp',                                                                                gyp info spawn args   '-f',                                                                                gyp info spawn args   'msvs',                                                                                gyp info spawn args   '-G',                                                                                gyp info spawn args   'msvs_version=2012',                                                                                gyp info spawn args   '-I',                                                                                gyp info spawn args   'C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\config.gypi',                                                                                gyp info spawn args   '-I',                                                                                gyp info spawn args   'C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\addon.gypi',                                                                                gyp info spawn args   '-I',                                                                                gyp info spawn args   'C:\Users\fmvm\.node-gyp\11.8.0\include\node\common.gypi',                                                                                gyp info spawn args   '-Dlibrary=shared_library',                                                                                gyp info spawn args   '-Dvisibility=default',                                                                                gyp info spawn args   '-Dnode_root_dir=C:\Users\fmvm\.node-gyp\11.8.0',                                                                                gyp info spawn args   '-Dnode_gyp_dir=C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp',                                                                                gyp info spawn args   '-Dnode_lib_file=C:\Users\fmvm\.node-gyp\11.8.0\<(target_arch)\node.lib',                                                                                gyp info spawn args   '-Dmodule_root_dir=C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass',                                                                                gyp info spawn args   '-Dnode_engine=v8',                                                                                gyp info spawn args   '--depth=.',                                                                                gyp info spawn args   '--no-parallel',                                                                                gyp info spawn args   '--generator-output',                                                                                gyp info spawn args   'C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build',                                                                                gyp info spawn args   '-Goutput_dir=.' ]                                                                                gyp verb command build []                                                                                gyp verb build type Release                                                                                gyp verb architecture x64                                                                                gyp verb node dev dir C:\Users\fmvm.node-gyp\11.8.0                                                                                gyp verb found first Solution file build/binding.sln                                                                                gyp verb could not find "msbuild.exe" in PATH - finding location in registry                                                                                gyp info spawn C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe                                                                                gyp info spawn args [ 'build/binding.sln',                                                                                gyp info spawn args   '/nologo',                                                                                gyp info spawn args   '/p:Configuration=Release;Platform=x64' ]                                                                                Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.                                                                                Build started 2/1/2019 12:04:31 PM.                                                                                Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.sln" on node 1 (default targets).                                                                                ValidateSolutionConfiguration:                                                                                Building solution configuration "Release|x64".                                                                                Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.sln" (1) is building "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.vcxproj.metaproj" (2) on node 1 (default targets).                                 Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.vcxproj.metaproj" (2) is building "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\src\libsass.vcxproj" (3) on node 1 (default targets).                         C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\src\libsass.vcxproj(20,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the  declaration is correct, and that the file exists on  disk.                                                                                Done Building Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\src\libsass.vcxproj" (default targets) -- FAILED.                                                                                Done Building Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.vcxproj.metaproj" (default targets) -- FAILED.                                                                                Done Building Project "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.sln" (default targets) -- FAILED.                                                                                Build FAILED.                                                                                "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.sln" (default target) (1) ->                                                                                "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\binding.vcxproj.metaproj" (default target) (2) ->                                                                                "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\src\libsass.vcxproj" (default target) (3) ->                                                                                C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass\build\src\libsass.vcxproj(20,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the  declaration is correct, and that the file exists  on disk.                                                                                0 Warning(s)                                                                                1 Error(s)                                                                                Time Elapsed 00:00:01.47                                                                                gyp ERR! build error                                                                                gyp ERR! stack Error: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe failed with exit code: 1                                                                                gyp ERR! stack     at ChildProcess.onExit (C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\lib\build.js:262:23)                                                                                gyp ERR! stack     at ChildProcess.emit (events.js:197:13)                                                                                gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:254:12)                                                                                gyp ERR! System Windows_NT 6.3.9600                                                                                gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-gyp\bin\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="                         gyp ERR! cwd C:\xampp\htdocs\twill\vendor\area17\twill\node_modules\node-sass                                                                                gyp ERR! node -v v11.8.0                                                                                gyp ERR! node-gyp -v v3.8.0                                                                                gyp ERR! not ok                                                                                Build failed with error code: 1                                                                                npm ERR! code ELIFECYCLE                                                                                npm ERR! errno 1                                                                                npm ERR<EMAIL_ADDRESS>postinstall: node scripts/build.js                                                                                npm ERR! Exit status 1                                                                                npm ERR!                                                                                npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.                                                                                npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Can anyone help me ??

Are you able to install node-sass separately (not as a part of twill build command)?
It seems to me like node-sass npm module installation failed because it could not be build.

@faisalbhatti10 the error returned is "error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the declaration is correct, and that the file exists on disk.".
Did you try following this? I would guess it's a problem with permission.

I'm facing same issue on Ubuntu,
Please help to resolve it.
Also tried node-sass, it also giving same error

Hey @vrdvishwas ,
Can you provide a more info, please?
If you can create a gist with the output of the console while running the twill-build, we will be able to help you sort the issue.
Best.

I got the problem in node version
Actually node-sass is not supporting for node version 11.*
I'm try to resolve this at my end.
Vishal Chanana
Web Developer
+91<PHONE_NUMBER>
On Sat, Mar 16, 2019 at 7:41 PM Pablo Barrios<EMAIL_ADDRESS>wrote:

Hey @vrdvishwas https://github.com/vrdvishwas ,
Can you provide a more info, please?
If you can create a gist with the output of the console while running
the twill-build, we will be able to help you sort the issue.
Best.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/area17/twill/issues/176#issuecomment-473533699, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AH0kb5IUX6eZXTstyg7lPz1MG_fci1mPks5vXPufgaJpZM4adySc
.

@vrdvishwas I'd recommend downgrading the node version and try again.
This post may help you.

@vrdvishwas Twill 1.2.1 has been updated to Laravel Mix 4 and now uses the Dart implementation of Sass, not node-sass anymore, can you give it a shot?

gyp ERR! stack Error: EACCES: permission denied, mkdir
'/var/www/html/vrdvishwas/CoreSiteCMS/vendor/area17/twill/node_modules/node-sass/build'
gyp ERR! System Linux 4.15.0-46-generic
gyp ERR! command "/usr/local/bin/node"
"/var/www/html/vrdvishwas/CoreSiteCMS/vendor/area17/twill/node_modules/node-gyp/bin/node-gyp.js"
"rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags="
"--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd
/var/www/html/vrdvishwas/CoreSiteCMS/vendor/area17/twill/node_modules/node-sass
gyp ERR! node -v v11.10.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>postinstall: node scripts/build.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>postinstall script.
npm ERR! This is probably not a problem with npm. There is likely
additional logging output above.
npm ERR!  Exit status 1
npm ERR!
npm ERR! Failed at the @ twill-build script.
npm ERR! This is probably not a problem with npm. There is likely
additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /home/vrdvishwas/.npm/_logs/2019-03-16T17_18_14_528Z-debug.log
Vishal Chanana
Web Developer
+91<PHONE_NUMBER>
On Sat, Mar 16, 2019 at 10:41 PM Quentin Renard<EMAIL_ADDRESS>wrote:

@vrdvishwas https://github.com/vrdvishwas Twill 1.2.1 has been updated
to Laravel Mix 4 and now uses the Dart implementation of Sass, not
node-sass anymore, can you give it a shot?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/area17/twill/issues/176#issuecomment-473566358, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AH0kb-93ATg4gEWDqnnDMx5se_pvOXGCks5vXSXAgaJpZM4adySc
.

Thanks Twill Team (Area17)
It working now,
i forget to update composer and npm run again
:-) :+1:  :100:


Collision detection: all overlapping particles vs only approaching overlapping particles

There seems to be a discrepancy between a code that has Rebound's collision detections enabled (e.g. "code->collision = reb_simulation::REB_COLLISION_DIRECT;" in "initialize_code()") and one that only enables collision detections in AMUSE. Both return collisions, but the result is not the same (and seems incorrect if Rebound's collision detection is not enabled).
This is at least the case when using the WHFast integrator.
I am not sure why this is though...
Maybe we should add Rebound's collision detection mechanism as a parameter? And/or auto-set it if the AMUSE collision_detection stopping condition is set?

Issue traced to a difference between what classifies as a collision between AMUSE and Rebound: Rebound excludes particles moving away from each other. This is the behaviour I needed, but I can do this in post-processing.
This behaviour seems to be different between community codes: ph4 also only reports particles approaching each other.

It's not very "AMUSE-y" when behaviour changes between codes...
Could we standardise this (maybe add a parameter to choose the behaviour)?
Or is ph4 is the only odd one of the bunch and is this really a ph4 bug?

ph4 is the only odd one out (this was done for performance reasons).
The best solution is to have a parameter that would alter the collision detection algorithm if supported by a code, with all code defaulting to the  one we have in all coe and some codes having options (i.e. to only stop if particles are moving towards each other)

Ok, sounds good! I'd be happy to take a shot at this.


README

README
User Story
As a bootcamp student,
I want the prework notes to be structured on a webpage,
So that I can easily find and read the information.
Acceptance Criteria
GIVEN the prework project repository,
WHEN I view the README for the repository,
THEN I can see a professional README that provides information on the project and how to use it

Being closed as README file has now been added.


Snapcast does not reconnect

Home Assistant release (hass --version): 0.56.1
Python release (python3 --version): 3.4.2
Component/platform: media/snapcast
Description of problem:
If the snapcast server is restarted, the homeassistant loses control. Only a homeassistant-restart fixes this
Expected:
HA should reconnect.

A fix might best implemented in python-snapcast. A first try was made in
https://github.com/happyleavesaoc/python-snapcast/pull/17


Fix fargate profile for loop examples

Split az array on comma instead of dash
What does this PR do?
Changes examples that create multiple fargate profiles to split the az array on the correct character.
🛑 Please open an issue first to discuss any significant work and flesh out details/direction - we would hate for your time to be wasted.
Consult the CONTRIBUTING guide for submitting pull-requests.

Motivation
You get an error if you try to run the examples with fargate profiles
Error: Duplicate object key
│
│   on main.tf line 90, in module "eks":
│   89:     { for i in range(3) :
│   90:       "app-wildcard-${element(split("-", local.azs[i]), 2)}" => {
│   91:         selectors = [
│   92:           { namespace = "app-*" }
│   93:         ]
│   94:         # We want to create a profile per AZ for high availability
│   95:         subnet_ids = [element(module.vpc.private_subnets, i)]
│   96:       }
│   97:     },
│     ├────────────────
│     │ local.azs is list of string with 3 elements
│
│ Two different items produced the key "app-wildcard-2" in this 'for' expression. If duplicates are expected, use the ellipsis (...) after the value expression to enable grouping by key.

More

[x] Yes, I have tested the PR using my local account setup (Provide any test evidence report under Additional Notes)
[ ] Yes, I have added a new example under examples to support my PR
[ ] Yes, I have created another PR for add-ons under add-ons repo (if applicable)
[ ] Yes, I have updated the docs for this feature
[ ] Yes, I ran pre-commit run -a with this PR

Note: Not all the PRs require a new example and/or doc page. In general:

Use an existing example when possible to demonstrate a new addons usage
A new docs page under docs/add-ons/* is required for new a new addon

For Moderators

[ ] E2E Test successfully complete before merge?

Additional Notes

I still get the duplication error for some environments and I'm not sure why. It doesn't seem like it's a problem for other people though so I'll close this and can re-open in the future if I figure out what causes the problem.


Unable to specify a Credentials Profile

I am using the driver with a SQL Client,.
In the AwsCredentialsProviderClass there is no option to pass any profile from the credential file other than the default. Many of us work with multiple profiles in our credentials file .
In other AWS Drivers we have the option of specifying AwsCredentialsProvidersArguments , where the profile name can be passed.
At the moment I am unable to use the driver without manually copy pasting the information into the GUI rom the credentials file, which is both cumbersome and time consuming.

I have the same issue. I need to specify a non-default profile name.

Same here, +1 vote.
Has anybody gotten the AwsCredentialsProviderClass to work even with the [Default] profile set?

After looking through the source code, the driver does return the DefaultAWSCredentialsProviderChain when no other custom values are supplied which means you can use things like the AWS_PROFILE environment variable as you would typically expect.
I was able to set a named profile in AWS_PROFILE environment variable  and use the default ~/.aws/credentials file location and format successfully.
Here is my connection string:
jdbc:timestream://Endpoint=query-cellX.timestream.us-east-1.amazonaws.com;Region=us-east-1;MaxRetryCountClient=10;MaxConnections=5000;RequestTimeout=20000;


UI Enhacement and Update To 2.10.5

Sorry currently busy with work and can't keep up with my side project, still planning to update all of my side projects code. hopefully I have time around the end of this year to do it

yeah, no worries.
if you want help, you can count on me


Revert "sim/Make.defs: add -fvisibility=hidden to CFLAGS"

Summary
Revert the change which broke sim on macOS.
Impact
Testing
tested locally
(i had to revert https://github.com/apache/incubator-nuttx/pull/1805 too.)

Let's close this PR now, since the problem is already fixed by 1817


absl.flags._exceptions.UnparsedFlagAccessError: Trying to access flag --sc2_run_config before flags were parsed

I am writing a wrapper around PySC2 for TF-Agents.
I have encountered the following error while trying to construct a PySC2 environment via its constructor:
absl.flags._exceptions.UnparsedFlagAccessError: Trying to access flag --sc2_run_config before flags were parsed
Here is the code that I am using to test the environment:
from tf_agents.environments import utils
from rl_env.PySC2Environment import PySC2Environment

if __name__ == "__main__":
    environment = PySC2Environment()
    utils.validate_py_environment(environment, episodes=3)

And here is my PySC2 environment wrapper code:
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

import numpy as np
from tf_agents.environments import py_environment
from tf_agents.environments import wrappers
from tf_agents.specs import array_spec
from tf_agents.trajectories import time_step as ts
import pysc2

import importlib
import threading

from absl import app
from absl import flags
from future.builtins import range  # pylint: disable=redefined-builtin

from pysc2 import maps
from pysc2.env import available_actions_printer
from pysc2.env import run_loop
from pysc2.env import sc2_env
from pysc2.lib import point_flag
from pysc2.lib import stopwatch

# based on https://github.com/deepmind/pysc2/blob/master/pysc2/bin/agent.py and https://github.com/deepmind/pysc2/blob/master/pysc2/env/run_loop.py

class PySC2Environment(py_environment.PyEnvironment):

    def __init__(self):
        super().__init__()

        self.env = self.setup_env()

    def action_spec(self):
        return self.env.observation_spec()

    def observation_spec(self):
        return self.env.action_spec()

    def _reset(self):
        return self.env.reset()

    def _step(self, action):
        return self.env.step(action)

    def setup_env(self):
        """
        FLAGS = flags.FLAGS
        flags.DEFINE_bool("render", True, "Whether to render with pygame.")
        point_flag.DEFINE_point("feature_screen_size", "84",
                                "Resolution for screen feature layers.")
        point_flag.DEFINE_point("feature_minimap_size", "64",
                                "Resolution for minimap feature layers.")
        point_flag.DEFINE_point("rgb_screen_size", None,
                                "Resolution for rendered screen.")
        point_flag.DEFINE_point("rgb_minimap_size", None,
                                "Resolution for rendered minimap.")
        flags.DEFINE_enum("action_space", None, sc2_env.ActionSpace._member_names_,  # pylint: disable=protected-access
                          "Which action space to use. Needed if you take both feature "
                          "and rgb observations.")
        flags.DEFINE_bool("use_feature_units", False,
                          "Whether to include feature units.")
        flags.DEFINE_bool("use_raw_units", False,
                          "Whether to include raw units.")
        flags.DEFINE_bool("disable_fog", False, "Whether to disable Fog of War.")

        flags.DEFINE_integer("max_agent_steps", 0, "Total agent steps.")
        flags.DEFINE_integer("game_steps_per_episode", None, "Game steps per episode.")
        flags.DEFINE_integer("max_episodes", 0, "Total episodes.")
        flags.DEFINE_integer("step_mul", 8, "Game steps per agent step.")

        flags.DEFINE_string("agent", "pysc2.agents.random_agent.RandomAgent",
                    "Which agent to run, as a python path to an Agent class.")
        flags.DEFINE_string("agent_name", None,
                    "Name of the agent in replays. Defaults to the class name.")
        flags.DEFINE_enum("agent_race", "random", sc2_env.Race._member_names_,  # pylint: disable=protected-access
                  "Agent 1's race.")

        flags.DEFINE_string("agent2", "Bot", "Second agent, either Bot or agent class.")
        flags.DEFINE_string("agent2_name", None,
                    "Name of the agent in replays. Defaults to the class name.")
        flags.DEFINE_enum("agent2_race", "random", sc2_env.Race._member_names_,  # pylint: disable=protected-access
                  "Agent 2's race.")
        flags.DEFINE_enum("difficulty", "very_easy", sc2_env.Difficulty._member_names_,  # pylint: disable=protected-access
                  "If agent2 is a built-in Bot, it's strength.")
        flags.DEFINE_enum("bot_build", "random", sc2_env.BotBuild._member_names_,  # pylint: disable=protected-access
                  "Bot's build strategy.")

        flags.DEFINE_bool("profile", False, "Whether to turn on code profiling.")
        flags.DEFINE_bool("trace", False, "Whether to trace the code execution.")
        flags.DEFINE_integer("parallel", 1, "How many instances to run in parallel.")

        flags.DEFINE_bool("save_replay", True, "Whether to save a replay at the end.")

        flags.DEFINE_string("map", None, "Name of a map to use.")
        flags.DEFINE_bool("battle_net_map", False, "Use the battle.net map version.")
        flags.mark_flag_as_required("map")
        """
        players = []

        players.append(sc2_env.Agent(sc2_env.Race["random"],
                               None))

        players.append(sc2_env.Bot(sc2_env.Race["random"],
                                 sc2_env.Difficulty["very_easy"],
                                 sc2_env.BotBuild["random"]))

        return sc2_env.SC2Env(map_name="Simple64",
                              battle_net_map=False,
                              players=players,
                              agent_interface_format=sc2_env.parse_agent_interface_format(
                                  feature_screen=84,
                                  feature_minimap=64,
                                  rgb_screen=None,
                                  rgb_minimap=None,
                                  action_space=None,
                                  use_feature_units=False,
                                  use_raw_units=False),
                              step_mul=8,
                              game_steps_per_episode=None,
                              disable_fog=False,
                              visualize=False)

        """
        return sc2_env.SC2Env(map_name="Simple64",
                              battle_net_map=FLAGS.battle_net_map,
                              players=players,
                              agent_interface_format=sc2_env.parse_agent_interface_format(
                                  feature_screen=FLAGS.feature_screen_size,
                                  feature_minimap=FLAGS.feature_minimap_size,
                                  rgb_screen=FLAGS.rgb_screen_size,
                                  rgb_minimap=FLAGS.rgb_minimap_size,
                                  action_space=FLAGS.action_space,
                                  use_feature_units=FLAGS.use_feature_units,
                                  use_raw_units=FLAGS.use_raw_units),
                              step_mul=FLAGS.step_mul,
                              game_steps_per_episode=FLAGS.game_steps_per_episode,
                              disable_fog=FLAGS.disable_fog,
                              visualize=False)
        """

As you can see, I tried the variant with and without the flags (I commented out the flags in my most recent attempt). I still get the error.
Here is the full error log:
2020-09-19 11:09:13.518378: W tensorflow/stream_executor/platform/default/dso_loader.cc:59] Could not load dynamic library 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file: No such file or directory
2020-09-19 11:09:13.518403: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
  File "PySC2Environment_test.py", line 10, in <module>
    environment = PySC2Environment()
  File "/home/mislav/Documents/AISC/Code/Preference_Extraction/agent/rl_env/PySC2Environment.py", line 33, in __init__
    self.env = self.setup_env()
  File "/home/mislav/Documents/AISC/Code/Preference_Extraction/agent/rl_env/PySC2Environment.py", line 123, in setup_env
    visualize=False)
  File "/home/mislav/anaconda3/envs/aisc/lib/python3.7/site-packages/pysc2/env/sc2_env.py", line 264, in __init__
    self._run_config = run_configs.get(version=version)
  File "/home/mislav/anaconda3/envs/aisc/lib/python3.7/site-packages/pysc2/run_configs/__init__.py", line 39, in get
    if FLAGS.sc2_run_config is None:  # Find the highest priority as default.
  File "/home/mislav/anaconda3/envs/aisc/lib/python3.7/site-packages/absl/flags/_flagvalues.py", line 491, in __getattr__
    raise _exceptions.UnparsedFlagAccessError(error_message)
absl.flags._exceptions.UnparsedFlagAccessError: Trying to access flag --sc2_run_config before flags were parsed.

What is going on here? How can I solve this?

I fixed the error by having the code I use for testing the environment in the same file as my environment class (in a function called main) and by calling
app.run(main)
if the file is run. You can see the code that fixed the issue here.

cc

cc


Make rocksdb sampler sample per column family

Description
Today, when we create a DBMap we invoke this call:
DBMap {
            rocksdb: db.clone(),
            opts: opts.clone(),
            _phantom: PhantomData,
            cf: opt_cf.to_string(),
            db_metrics: db_metrics_cloned,
            _metrics_task_cancel_handle: Arc::new(sender),
            read_sample_interval: db.read_sampling_interval(),
            write_sample_interval: db.write_sampling_interval(),
            iter_bytes_sample_interval: db.iter_bytes_sampling_interval(),
            iter_latency_sample_interval: db.iter_latency_sampling_interval(),
        }

where in read_sampling_interval() we create a clone of the passed in sampling interval for every DBMap of the table:
 pub fn read_sampling_interval(&self) -> SamplingInterval {
        match self {
            Self::DBWithThreadMode(d) => d.metric_conf.read_sample_interval.clone(),
            Self::OptimisticTransactionDB(d) => d.metric_conf.read_sample_interval.clone(),
        }
    }

This effectively means we have one sampling interval which samples operations across all column families and all operations of the db. In such a case, a hot cf (with a lot of operations) would not let us capture perf data for other cfs. The idea in this PR is to create a different sampling interval for each DBMap (cf) so we can capture perf for all of them.
Test Plan
Existing tests

Do we still want counter to be wrapped within Arc<>?

Ah yes, we still share the counter b/w foreground and background tokio tasks. Bg task is the one which resets the counter while foreground one is used to invoke sample() on.


accept() has wrong parameter type

#265
accept() has wrong parameter type

It can't be standard options. At best it needs to be T extends Standard Options to allow for customization when building your own custom connection.


mark node phase as deprecated

I'm not sure on what the best wording for this should be, but Node Phase is no longer populated, and so the docs should say so.
@random-liu on slack/#sig-node told me that they believed node phase was unused.
cc @dawnchen

signed CLA

I'm sure the NodePhase is not used in the code, but I'm not sure whether we have the plan to deprecate it or not.
@dchen1107 and @bgrant0607 should have more ideas.

@dchen1107 Did we change how/whether node phase is set? That would be a breaking behavioral change for the v1 API.
If we do plan to deprecate it, it would need to be documented in the API first:
https://github.com/kubernetes/kubernetes/blob/master/pkg/api/v1/types.go#L2327

@dchen1107 @Random-Liu Any update on this?

@pwittrock I'm not sure whether we really want to deprecate NodePhase, have to confirm with @dchen1107. She will come back from holiday next Monday. :0

@dchen1107 Is NodePhase still populated?  What should the docs say?

We stopped populate / set node phase a while back. This won't be breaking change for v1 API since no one couldn't depend on it at all.  But we still should change v1API code first to make such announcement. Let me send a pr changing v1API shortly.

@mwhooker This field will be deprecated in #30005 for 1.4.  Lets merge it when that change is live.

neato! thanks

This docs change is slated for the 1.4 release. We're trying to have all 1.4 docs PRs target the release-1.4 branch. Can you have this PR target release-1.4? A rebase would probably also be a good idea.


Remove pull secret reference from ServiceAccounts upon ClusterPullSecret deletion

Task
Remove pull secret reference from ServiceAccounts upon ClusterPullSecret deletion
This isn't being done at present.
@andersonnicholaskc hinted at this in #4 - however the PR is too large, this feature should be implemented as a single PR.

/lock: inactive, raise your own issue as a GitHub Sponsor


ImGui widgets and demo

Add a lot of ImGui widgets and fix some others.
New widgets:

ArrowButton (202b3283fb99aa4dfd5475264996551887532dd5)
BulletText (a66a2f4e2705bae52c0ea63b8f3656f00b15d228)
CheckboxFlags (86b469c5518271da9ccd8cb4b61e852775b7fa99)
CollapsingHeader (b76e2e61f3c4e523bf686913d6474db5d1d8d8ae)
Combo & ListBox (47e808407cbf286ebf881158d7df766a9d1a05e0)
Disable (0497e5fe0ccfbf12c49994dacb8b2849e48bd1b1)
FPS: displays the frame per second as calculated by ImGui (5d4809c7959f4f29052c2d9d401ce60383bd2fb3)
Group (a88774849d978b68c42130dbcc6f6df9a1b5684c)
HelpMarker: displays a (?) aside another widget and a text inside a popup on hover (6c2ca00cbd279f0768160f5de009324aa10c7be6)
Menu, MenuItem, MenuBar, MainMenuBar (ed7e0b2f6244fa0d3a44661acf0c6bb27088e42c)
NewLine (d7d0a2720f59f35fe1945011696767f6b57957a9)
ProgressBar (4ab0d04b318c2f6df7039b81926e283e086fb6fe)
Sliders: for int and float and variations such as int2 (a197974782beaa44b3b36506fe50c77bf55181ec)
Spacing (3e1ff8b3c3d5ea1259da8e33d59370a5fbf9bfae)
Tab (a749cf3e5ac3c958113045f907af8168eb0f9dcc)
Table (976bf02c172ddcc153069fa40678d63e52d4f455)
Tooltip<PHONE_NUMBER>7eb4e20a0b7456bd138f14bc5ee3c8)
Version: displays ImGui version (useful for debugging, and make sure we are not building against a wrong version from a different deps) (a1473cd9f2a124e88996a06aad120515a29aa808)

Fixes/changes:

ChildWindow: fix size (e0f8a24afc364ccabd9275e0a6a22aa53e8c9903)
Window:

close button (6165d21b03c6816134a18fb6d47c9e7648be81e5)
don't activate inner blocks when collapsed (17053ec31220f61cf287a075976d01a4a55f01fb)
auto resize (6aa3ccc1fbecf3508c1b46eab52ec691af681eb7)

Plot: allow to set plot area width and height (fb65a3b25aee0d001fd540cc3b86a21cbf5f818c)
Text: add wrapping (6cc86858d31bd515d47ccfc2ec2671035a1831da) and formatting support (6f4983f9750b34b30fcf6916c05b1a7aa430fda5) (might need more love)
TextInput: add hint (82cc355a0536081ca685af9be461d3b27450e537)
TreeNode: collapse by default (55c2f3030e75ac3174054ccc588c4afd79d3bb69)

Breaking change:

Checkbox spelled with lowercase b (75d1188e055416740191b0dfca8f2c3c3f865e8a)

On top of those changes, a demo script which try to be as close as possible to the original ImGui demo (but is currently missing quite a lot). (3bb0913f41693917439c57a156e752e069c58225)

Table block that takes a mutable CBTable as input/param

Added in backlog.


Issues resampling mp3s with WdlResamplingSampleProvider and Mp3FileReaderBase (NLayer)

I'm having an odd issue resampling mp3s with Mp3FileReaderBase and WdlResamplingSampleProvider. For context, I'm using NAudio and NLayer in a Unity project for a WebGL app, so I need to use fully managed solutions (hence WdlResamplingSampleProvider seems to be my only option for resampling).
When I read an mp3 with Mp3FileReaderBase and create a sample provider from it, everything is fine and I can process/play the file without issue downstream. I'm using the code below to do that part:
// sourceBytes is raw bytes from mp3 file
var builder = new Mp3FileReaderBase.FrameDecompressorBuilder(wf => new Mp3FrameDecompressor(wf));
using var memoryStream = new MemoryStream(sourceBytes);
using var mp3Reader = new Mp3FileReaderBase(memoryStream, builder);
var sampleProvider = mp3Reader.ToSampleProvider();

The issue is that when I try to resample the audio (for instance from 22050 to 44100) with WdlResamplingSampleProvider, the resulting audio comes out garbled and with all kinds of artifacts. I'm using the code below to do that part:
var sampleRatio = (float) outputSampleRate / sourceSampleRate;
var outSamples = (int) (sourceSamples * sampleRatio);
ISampleProvider resampleProvider = new WdlResamplingSampleProvider(sampleProvider, outputSampleRate);
var resampled = new float[outSamples];
resampleProvider.Read(resampled, 0, resampled.Length);

After using WaveFileWriter.WriteSamples to write resampled to a file, I hear the issue for certain values of outputSampleRate and certain source samples rates.
Some more relevant info:

If I externally resample the source file (e.g., with ffmpeg), it sounds fine. So it's not a corrupted file.
If I convert the file to a wav externally (with ffmpeg) and then read it with NAudio using WaveFileReader, then when resampling with WdlResamplingSampleProvider everything sounds fine.
Certain resampling values don't produce noticeable artifacts (e.g., going from 44100 to 48000). But trying to upsample from 16k or 22k to 44k produces the issue (with mp3 files).

Since the WaveFileReader approach works fine, it suggests the issue is with Mp3FileReaderBase/Mp3FrameDecompressor, not WdlResamplingSampleProvider. However, perhaps it's an interaction issue? If I just read the file in with Mp3FileReaderBase and then write it out again with a wave provider, it sounds fine. It's just the resampling that seems to produce the issue.
Would appreciate any thoughts and whether anyone sees if there is some user error here. Thanks.

Not sure I'm afraid, but just wanted to make sure you are checking the return value of Read. You can't assume that it will return the number of samples requested, and you might need to call it in a loop.


Is Version 3 API deprecating on Mar 3rd?

Hi @theoephraim ,
I'am migrating from version 3 API to version 4 API using your package. It takes till next week to complete.
But version 3 API code is in live for my application. If I don't push the version 4 API code before March 3rd, will my application breaks?
Thanks in advance.

It looks like google has extended their deprecation date to September. It was originally set as March 3. https://cloud.google.com/blog/products/g-suite/migrate-your-apps-use-latest-sheets-api

Oh wow, I didn't know... I also thought it'd be turned off now. I built a wrapper yesterday to hotfix apps that use the v2 version of your library - now it's actually not needed - there is enough time to properly fix it. Still leaving the link here in case it's useful to someone. (Maybe it will be an issue again in September^^)

It looks like google has extended their deprecation date to September. It was originally set as March 3. https://cloud.google.com/blog/products/g-suite/migrate-your-apps-use-latest-sheets-api

Hi @theoephraim ,
Thanks for your information.
Yes I can see in the docs that they are going to shutdown on Sep 30th, 2020.
Till then If I use your old version code (i.e. "google-spreadsheet": "^2.0.7") no issues right?
Thanks.

yes.


Threading improvements in roadmap

Feature request

The Numba roadmap (here) doesn't include anything about the threading backend. I think we somehow just missed it. Example features to include:

Exposing thread id
Thread private variables
Concurrent containers (e.g. from TBB or upcoming parallel STL)
Scheduling policy

cc @seibert


Add a search feature powered by algolia

Is your feature request related to a problem? Please describe.
Right now, we cannot search through all documentation.
Describe the solution you'd like
We should be able to search for things like activation, android or IL2CPP and clicking on the result, we should navigate to the related documentation section. An example of this is on Fastlane's documentation website.

Additional context

The search bar should be placed at the top of the website using antd's provided components

Hello I would like to take care of this issue

Great @zachesposito,
Please go ahead and let us know if you need any additional info or help.
We're also on discord if you like to discuss things more quickly.

Removing assignment as there is no fork. Feel free to assign yourself when you start

@webbertakken https://github.com/game-ci/documentation/issues/97 is still open, but I think we can close this since you've done the initial implementation, right?

Yea agreed.


Possibility for auth

Hi @ines
You make so awesome tools all the time. I love it! 😍
I have a paying client that wants me to do a one-day course in Python for them and thought it would be very cool to use this tool. Due to data privacy the course has to be private though. Is it possible to use a private gitlab repo and add auth to the course app?
I am quite new in this app space.

Thanks! 😃 The Electron experiments I did the other day kind of go in a similar use case direction, but it's still a bit rough.
I think the easiest way might be to use a hosting provider that offers auth out-of-the-box? Netlify has this for instance: https://www.netlify.com/docs/identity/ I haven't used it myself, but like most of their features, it looks pretty straightforward.
You'd still need to host a public Binder, but that shouldn't be a problem, right? All you need is a GitHub repo with a requirements.txt that lists the Python dependencies you need.

Thanks for the response.
A public Binder. Wouldn't I need to upload the data to the Binder repo as well?
One other thing: what about plotting? Is that possible somehow?

If you want to use data files and load them from the root of the user directory of the Python session, then yes, they need to be in the Binder. But you don't have to do that – you could just set up the Python environment there and then use requests to load an external file from somewhere. You could also use your own Jupyter server (example here).
Plotting should be possible, yes. It's a regular Jupyter environment, like a notebook.

Ah yes I needed %matplotlib inline as the first command.
Regarding auth I was looking for a solution with a login landing page before accessing the course site. But I get confused about all the graphql, gatsby etc since I am new to all these frameworks.
It might be that Netlify Identity is the solution but I don’t really see how to integrate that here. I’m sure it’s due to my rookie skills though

It might be that Netlify Identity is the solution but I don’t really see how to integrate that here. I’m sure it’s due to my rookie skills though.

I think you host your page on Netlify, set it up and add that identity widget: https://github.com/netlify/netlify-identity-widget

Alternatively I was thinking of integrating redux and using that to keep track of whether or not a person has logged in or not (if not then route to login).

You could do that, but then you have to build the whole user authentication stuff yourself.  At least, it's definitely not something I would do.
You can also just host the built app somewhere and then set up a super basic server-side auth. Like this, if you're using nginx: https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication/ It's not pretty and super rudimentary, but it's easy and it works.


Deprecate original npm package

This plugin was originally created as plugin-system-information, but the name has been updated to include the api prefix.
We need to deprecate the original package on npm.

Done


Multi tenancy ?

Just enquiring if this template is multi-tenancy capable and if not, is it going to be included down the road some time?
Kind regards
Luke

Related to https://github.com/blazorhero/CleanArchitecture/issues/9


May I know the purpose of 0.999 technique?

Thank you for this useful library. It saves me countless of hour to implement a zoomable and swipeable image viewer.
However, I am very curious on the following line
https://github.com/huynguyencong/ImageScrollView/blob/master/Sources/ImageScrollView.swift#L248
It seems to me, without 0.999 technique, it will become problematic when this ImageScrollView is placed within UIPageViewController.
I try to implement such, by placing ImageScrollView in UIPageViewController
https://gist.github.com/yccheok/b660cc09b404ae3bab3eb4a586c33cc8
However, I do not find any issue, when I try to change line 248
from
minimumZoomScale = minScale * 0.999
to
minimumZoomScale = minScale

May I know, what problem 0.999 is trying to solve?
Thank you very much

Hmm, maybe the problem has been fixed by Apple in the new SDK. I am sure it was a problem in the past, because I happened in my project, and I fixed it by that workaround. If you don't see any problem when removing the multiply, continue using it with that removal.


no support go 1.15.6

Ⅰ. Issue Description
quota.go does not match to target system, File will be ignored by build system
Ⅱ. Describe what happened
in main.go unresolved reference quota.SetQuotaDriver
Ⅲ. Describe what you expected to happen
Ⅳ. How to reproduce it (as minimally and precisely as possible)

Ⅴ. Anything else we need to know?
Ⅵ. Environment:
go 1.15.6
mac 10.15.6 (19G73)

it's not a bug relevant to golang version. It's your GOPATH envrionment variable which set incorrect.
You can use following steps to get it right:
# in your work directory where you want pouch source code put
mkdir -p $(pwd)/pouch/src/github.com/alibaba; cd $(pwd)/pouch/src/github.com/alibaba;
git clone git@github.com:alibaba/pouch.git
cd pouch
# the output is the GOPATH you should use.
echo "export GOPATH=$(cd ../../../..; pwd):$(pwd)/vendor"

You can open pouch source using vscode or vim, set the GOPATH to the output the above instruction. Pouch source code root is $(pwd)/pouch/src/github.com/alibaba/pouch


Retranmissions to a sleepy child

The spec requires that if the tx of an indirect frame (frame to a sleepy child) fails, the sender re-transmit the frame following the reception of a new data request command (a new data poll) from the sleepy child.
This issue is to track the implementation of this feature in OpenThread.

Resolved by #1432.


Automate building for aarch64

We need to automate the building and deployment of binaries for aarch64.
Our CI/CD at the moment only builds and uploads the runtime for x86_64. We want to extend this for aarch64.

Fixed by #20