Serialization error when using BeaconMessage in demo

I get this error java.lang.IllegalArgumentException: Unsupported value: '"tezos_permission_request"' of type 'class kotlinx.serialization.json.JsonLiteral' when I use the toJson method exposed in this demo file https://github.com/airgap-it/beacon-android-sdk/blob/develop/demo/src/main/java/it/airgap/beaconsdkdemo/utils/BeaconMessage.kt

I think I found the issue now, the fault of which was from my code.
Thanks for your apt response.


fixed pointtext style bug

Fill color and opacity now work for the text of pointtext items.

Closes https://github.com/pearcetm/osd-paperjs-annotation/issues/2


Large LOB applications

I'm looking at my large ASP.NET Web Forms application with hundreds of web pages, some of them using heavyweight 3rd party components (word processor, hierarchical grids, PDF viewer etc). I know that it is very early in the game, but at some point in the future if I were to develop a similar project in Blazor, how would such application be designed to be modular? Is the idea to have a mechanism to load resources (pages/views/components) on demand? Compiling the entire application into a single wasm file would result in a huge download (dozens of MB).
I apologize if this is not the right channel to ask these sort of questions, I know you are very busy. This project looks very promising and everyone in our office is excited!

Agreed - it's an important consideration. We're tracking this in #25.


Adding a Floating-Point Type

Boogie Team,
I'm Dietrich Geisler, and undergraduate student working for Dr. Zvonimir Rakamaric at the University of Utah.  Over the last year, I have worked on adding the floating point type to boogie based on the floating point update to z3.
The merge I am proposing adds the floating point type to boogie, allowing variables and constants to be declared as described below.  There are several issues with my implementation that I have listed.  I'm sure that there are more issues and bugs I haven't found, so if you find any issues, please let me know.

Syntax Documentation
Declaring Variables:
The syntax for declaring a floating point variable is as follows:
var name: float(exp man);
Where exp is the size of the float exponent and man is the size of the float mantissa
It is also acceptable to use the following syntax:
var name: float();
This syntax assumes the float exponent to be size 8 and the mantissa to be size 24
example:
var x: float(11 53)
Declares a variable called x with a exponent sized 11 and mantissa sized 53

Declaring Constants:
All of the following syntax are viable for declaring a floating point constant:
float(dec)
float(exp_val man_val)
float(dec exp man)
float(exp_val man_val exp man)
Where dec is the decimal value of the constant,
exp_val/man_value are the integer values of their respective fields,
And exp/man are the sizes of their respective fields.
Note that when exp and man are not specified, they are given sizes 8 and 24 respectively

Defined Operations:
Given two floating point values x and y with the same size of exponent and mantissa
The following operations operate as defined in Operators section of this document:
http://smtlib.cs.uiowa.edu/theories-FloatingPoint.shtml
(Note that rounding mode is always assumed to be Round to Nearest Even (RNE))
(Also note that operations not listed here are undefined)
operatation     boogie syntax
neg(x)          -x
add(x, y)       x + y
sub(x, y)       x - y
mul(x, y)       x * y
div(x, y)       x / y
leq(x, y)       x <= y
lt(x, y)        x < y
geq(x, y)       x >= y
gt(x, y)        x > y
eq(x, y)        x == y

Other:
The following special values can be declared with the following syntax:
Value       Declaration
NaN         fp(nan exp man)
+oo         fp(oo exp man) OR fp(INF exp man)
-oo         fp(-oo exp man) OR fp(INF exp man)
-zero       fp(-zero exp man)
Where exp and man are the sizes of the exponent and mantissa respectively

Known Issues:
There is currently no way to convert from a floating point to any other data type
There is currently no way to convert the value of a variable to a floating point type
For example, the following statements fails:
var x : real;
fp(x);
Statements of the following form cause a parser error (parenthesis followed by fp constant)
... (fp(1) + fp(1));
Attempts by Boogie to infer the behavior of loops fail when floating points are involved
Describing loop behavior manually is untested (using loop unroll appears to work)

Details/Question: I primarily modified Absy, AbsyExpr, Parser, VCExpr, VCExprAST, TypeErasure, and SimplifyLikeLineariser.  I also added the file BigFloat.cs, allowing creation of float instances internally.  Note in particular that I modified the Parser manually; if this is incorrect or if you notice any poor or unmaintainable implementation choices, please let me know.  I would be glad to make any changes to improve performance, accuracy, or code design.
Feel free to comment below or contact me at<EMAIL_ADDRESS>if you have any concerns, suggestions, or questions.  Thank you for your time, and I hope this update proves valuable to the boogie community.
Best Regards,
Dietrich Geisler

@Checkmate50
Thanks for your proposal.
First of all I see no mention of IEEE-754 any where. That is what you are assuming float represents right?

var name: float(exp man);
Where exp is the size of the float exponent and man is the size of the float mantissa

I don't like the fact the type looks like a lot like a function call. I'd rather it had a template like syntax. E.g. float<exp,man>. You also haven't specified if mantissa contains an implicit bit (i.e. like IEEE-754).
For common sizes we could have predefined types (e.g. float16, float32, float64`, float128``). Although this is syntactic sugar, these types are so common that I think would end up saving quite a lot of space.

var name: float();
This syntax assumes the float exponent to be size 8 and the mantissa to be size 24

I don't like the idea of an implicit size at all. Boogie is an IVL so no syntactic sugar unless there's a really compelling reason please.

Declaring Constants:
All of the following syntax are viable for declaring a floating point constant:
float(dec)
float(exp_val man_val)
float(dec exp man)
float(exp_val man_val exp man)
Where dec is the decimal value of the constant,
exp_val/man_value are the integer values of their respective fields,
And exp/man are the sizes of their respective fields.
Note that when exp and man are not specified, they are given sizes 8 and 24 respectively

Again no implicit sizes please. I really don't want there to be multiple ways to declare floating point constants. I'm especially not keen for Boogie to have to the convert the decimal value to an approximate bit representation which may introduce rounding issues. I'd prefer something like
float(sign, exp_value, man_val)

where exp_value and man_val are expressed using the existing bitvector constant syntax. sign is a boolean which is true if the sign bit should be positive otherwise it is false
e.g.
float(true, 15bv5, 0bv10); // IEEE-754 binary16. Has decimal value 1.0
float(false, 15bv5, 0bv10); // IEEE-754 binary16. Has decimal value -1.0

Note here I'm trying to follow how SMT-LIB behaves here. The width of the man_val is 10 not 11.
An additional syntax could be
float<exp,man>(bitvalue)

where bitvalue is the bitvector representing the IEEE-754 bit pattern e.g.
float<5,11>(15360bv16); // IEEE-754 binary16. Has decimal value 1.0

Defined Operations:

Given two floating point values x and y with the same size of exponent and mantissa
The following operations operate as defined in Operators section of this document:
http://smtlib.cs.uiowa.edu/theories-FloatingPoint.shtml
(Note that rounding mode is always assumed to be Round to Nearest Even (RNE))
(Also note that operations not listed here are undefined)

There should be a way to call the operators with a rounding mode too. I'm happy for the infix operators to assume RNE but there should be a way to use the other rounding modes if needed.

Known Issues:
There is currently no way to convert from a floating point to any other data type

I think SMT-LIB allows conversion between floats and bitvectors. Therefore Boogie should not have this restriction.

Thank you for all of the advice!  You are correct about the IEEE-754 standard; thanks for pointing that out.  I will implement all of the changes you suggested; however, I had a couple of comments and questions with regards to the points you brought up:

You also haven't specified if mantissa contains an implicit bit (i.e. like IEEE-754).

Yes, the mantissa does specify an implicit bit.  Sorry, I forgot to mention that; thanks for pointing it out.

I'm especially not keen for Boogie to have to the convert the decimal value to an approximate bit representation which may introduce rounding issues.

I currently convert decimal to floating point by calling z3's to_fp method with the decimal as an argument; that is, I'm having z3 do the conversion as opposed to Boogie.  Since I need to add conversions from bit vectors to floating points anyway, should I also add a decimal to floating point conversion instead of having it built in to the constant declaring syntax?

float(sign, exp_value, man_val)
where exp_value and man_val are expressed using the existing bitvector constant syntax. sign is a boolean which is true if the sign bit should be positive otherwise it is false

I agree that having a boolean passed in for sign is correct.  With this syntax, however, how would Boogie know the size of the exponent and mantissa for the constant?  Should it be as follows?
float<exp, man>(sign, exp_value, man_value)
Also, I made a mistake in my write-up.  To differentiate between variable declarations and constants, I changed the keyword "float" to "fp" when declaring constants, making the examples above become:
fp<exp, man>(sign, exp_value, man_value)
fp<exp, man>(bitvector)
Sorry for the confusion.  Is this, however, a reasonable syntactic distinction to make?

There should be a way to call the operators with a rounding mode too. I'm happy for the infix operators to assume RNE but there should be a way to use the other rounding modes if needed.

I agree.  I'm not sure how to add this option into Boogie syntax cleanly...  Do you have any suggestions?  Also, would it be ok to add this as a later version?

I think SMT-LIB allows conversion between floats and bitvectors. Therefore Boogie should not have this restriction.

Yes, SMT-LIB allows conversions between floats and bitvectors, between floats and reals, and from signed integers to floats.  I agree that allowing these conversions is necessary; however, I again couldn't think of a way to add these operations into the Boogie syntax.  Do you have any suggestions?  The one idea I had was to add functions (i.e. real_to_float(real)), but I'm not sure of an efficient way to do this.
Thank you again!

@Checkmate50

Thank you for all of the advice! You are correct about the IEEE-754 standard; thanks for pointing that > > out.

Don't rush into it. I think it's better that we discuss and refine the design before you jump into too much of the implementation. I'd welcome the views of @wuestholz @RustanLeino @afd here.

I currently convert decimal to floating point by calling z3's to_fp method with the decimal as an argument; that is, I'm having z3 do the conversion as opposed to Boogie. Since I need to add conversions from bit vectors to floating points anyway, should I also add a decimal to floating point conversion instead of having it built in to the constant declaring syntax?

Are you doing that as an API call or are you using SMT-LIBv2? The maintained version of Boogie doesn't use Z3 as a library (although I think there is support, it is not maintained). My concern here is I don't really want to rely on an external tool to do this whilst parsing. I don't want to delay to translation either because there must be only one representation of floating point constants in Boogie's Expr language. For that reason I think it is better to initially only allow constructing floating point constants that don't require any conversion. We can push that work on to those who are generating the Boogie IVL.
What do you mean by conversion from bitvectors here? One possible is converting to and from the IEEE-754 binary representation, another is to and from the unsigned/signed integer value represented by the bitvector.

float(sign, exp_value, man_val)
where exp_value and man_val are expressed using the existing bitvector constant syntax. sign is a > >> boolean which is true if the sign bit should be positive otherwise it is false

I agree that having a boolean passed in for sign is correct. With this syntax, however, how would >Boogie know the size of the exponent and mantissa for the constant? Should it be as follows?
float<exp, man>(sign, exp_value, man_value)

I think you missed that I said the argument types of exp_value and man_value should be bitvectors which encode the size of the exponent and mantisa (note when passed you don't include the implicit bit just like SMT-LIBv2). Again see this example I already gave.
float(true, 15bv5, 0bv10); // IEEE-754 binary16. Has decimal value 1.0

I'm not sure about the first argument though. For consistency maybe it should be a bv1 rather than a bool.
As I mentioned there are common sizes which we probably ought to have syntactic sugar for (i.e. float16, float32, float64 and float128). We could also consider adding the C99 hex float style syntax for these common sizes.
var x:float16;
x := 0x1.000p+0 ; // 1.0 in decimal
x := 0x1.800p+0 ; // 1.5 in decimal
x := 0x1.800p+1 ; // 3.0 in decimal
x := 0x1.800p-1 ; // 0.75 in decimal

Also, I made a mistake in my write-up. To differentiate between variable declarations and constants, > I changed the keyword "float" to "fp" when declaring constants, making the examples above become:
fp<exp, man>(sign, exp_value, man_value)
fp<exp, man>(bitvector)
Sorry for the confusion. Is this, however, a reasonable syntactic distinction to make?

IIRC types and functions are both in their own namespace so based solely on that having float<exp, man> being the type and float(sign, exp, man) be the function for creating constants should be okay.

There should be a way to call the operators with a rounding mode too. I'm happy for the infix >>
operators to assume RNE but there should be a way to use the other rounding modes if needed.

I agree. I'm not sure how to add this option into Boogie syntax cleanly... Do you have any suggestions? Also, would it be ok to add this as a later version?

Annotate uninterpreted functions with a builtin similar to how all bitvector functions are used currently. Boogie doesn't have enums so rather than having the rounding mode as an argument we could have another attribute.
e.g.
function {:builtin "fp.add" :rm "RTZ" } FP_ADD_FLOAT16(float16, float16) returns(float16);

Another minor point. You shouldn't refer to fractional bits in the floating point number as "mantissa". The terminology used by SMT-LIB and else where is "significand". I've used your terminology up to this point to avoid confusion but I think you should switch whilst you have the opportunity.

@Checkmate50
I think would be helpful to have a publicly visible working draft of your proposal. I've added a page on the Boogie wiki
https://github.com/boogie-org/boogie/wiki/Draft-floating-point-Boogie-language-extension
I think you should be able to edit it. Let me know if you can't.

think would be helpful to have a publicly visible working draft of your proposal. I've added a page on the Boogie wiki

Sounds good.  I'll add in my current syntax and what you've suggested so we can work from there.  Thanks for setting that up.

I apologize for my silence the last few weeks; classes got the better of me.
I created the body of the wiki based on what @delcypher suggested above.  If the boogie team could look over the proposed syntax for the floating point type and provide feedback, I would greatly appreciate it.
I can start making some of the simpler syntax changes from my original proposal; once the syntax is agreed upon, I will of course make the necessary changes and hopefully get a working fork quickly so we can proceed from there.
Also, I had a question on proper implementation.  To allow Boogie to recognize a floating point, I directly modified the parser in the Boogie source code.  For instance, I added a "float" keyword so that the parser can create a floating point LiteralExpr or NAryExpr.  Is this correct style?  Should I be working at a higher level to avoid modifying the parser directly?
Thank you for your time.

I'm a latecomer to this discussion, but here are my comments.
Dan remarked on the original proposal that having round parentheses in types doesn't seem very type like.  I agree.  Instead, he suggested the use of angle brackets.  I have two additional suggestions.  One is to change the order of the significand and exponent to write the significand first.  This seems more natural to me, since it is closer to scientific notation.  My other suggestion is to introduce one keyword for each floating-point type. For example, instead of the previously proposed float<11,5> (where I have already switched the order of the significand and exponent), you would write float11e5.  This is analogous to how Boogie names bit-vector types of different widths, e.g., bv32.
Under this proposal, the type synonyms float16, float32, float64, and float128 no longer seem needed.  These types are written float11e5, float24e8, float53e11, and float113e15, respectively, which seems fine.  Users can declare their own type synonyms for these, if they prefer.
I think we should add floating-point literals to Boogie along the lines of the current bit-vector literals.  The form float(sign, exp_value, man_val) may make sense in the syntax-restricted LISP-like SMT-LIB format, but I don't see any reason to inherit this into Boogie.  Direct support for floating-point literals in Boogie makes for a better language solution.  I propose:
digit {digit} 'e' digit {digit} 'f' digit {digit} 'e' digit {digit}

where the part before the first e is the significand, the part after that e is the exponent, the part between f and the next e is the number of bits in the significand, and the part after the second e is the number of bits in the exponent.  Again, note that the natural way to write these literals is to write the significand before the exponent, hence the suggestion above to also do the same for types.  All four parts are required and all four parts are written with decimal digits.  The given significand and exponent would have to be numbers that fit within the number of bits specified by the last two parts, else a parsing error is reported.  In fact, I would go as far as to say that we shouldn't use the hidden-bit convention, but I'm open to push-back on that.  Even if we do use the hidden-bit convention, I think we should stick with using the same width specification in literals as in the types they generate (for example, the literal 1024e15f11e5 has type float11e5, like the syntax suggests).
I had forgotten that Boogie doesn't have hexadecimal literals.  If they were added (which would seem like a fine idea for both integers and bit-vectors, too, prefixing them with 0x), then it is tempting to consider the following analogous form for floating-point literals:
'0' 'x' hexdigit {hexdigit} 'e' hexdigit {hexdigit} 'f' digit {digit} 'e' digit {digit}

(where the numbers specifying the number of bits would still be in decimal, just like in the types).  However, here, the first e and the f are problematical.  If we're thinking we'd like to support a hexadecimal version of floating-point literals now or in the future, then we may want to consider delimiters other than e and f.  One such possibility would be to use a caret (^) instead of e and # instead of f; for example, in this notation, the literal 0x400^F#11^5 has type float11^5.  (Note that ^ and # are currently allowed in Boogie identifiers, so this is not a big departure from what's already in Boogie.)
For negative values, it seems that a unary minus before a float-point literal may need to be treated not as a unary negation but as part of the literal.  That is, I suggest that the parser, upon getting from the scanner a unary minus followed by a floating-point literal, produces a single, negative floating-point literal.  This lets both +0 and -0 be represented.
For not-a-number, I suggest a syntax like:
'0' 'N' 'a' 'N' digit {digit} 'e' digit {digit}

possibly allowing the N's also to be lower case.  Similarly, infinity would be written:
'0' 'o' 'o' digit {digit} 'e' digit {digit}

I agree with Dan that it's best to avoid floating-point literals that require conversations, for now.

Thank you for the advice!  I would be glad to make the proposed syntax; since I'm handling floating points this way anyway, I'd imagine that I could add hexadecimal support by just directly sending the hex values to z3.  Since you are the experts, just let me know what syntax is best and I'll try to implement it quickly.

As a point of clarification for the floating point constant declaration syntax:
digit {digit} 'e' digit {digit} 'f' digit {digit} 'e' digit {digit}
Should the digits before the f be taken literally or as bit values?  In other words, which of the following declares the value -0.5 for a float32?

-1e-1f24e8    (direct numeric conversion)
16777216e126f24e8    (interpreting bitwise)
-0e126f24e8    (having a sign 'bit,' but otherwise interpreting bitwise)
(something else I'm not thinking of)

It should be noted that while the first interpretation is the easiest for the user, there may be some confusion since I need to convert the given values to bit literals to give to z3.  That is, if I round differently than z3 does somewhere, the boogie and z3 results may differ, which could be problematic down the road.

Hmmm, that's fair; this is by far the most intuitive format for relatively simple floating point values.  I am, however, concerned about the translation that has to occur for (A) the user to convert an already determined floating point constant to this format and (B) boogie to translate a value in this format into the SMT-LIB standard.
For an example of why the user may have to do work translating a value of this format, consider the example of representing a known float24e8 constant 0x40100000 (=2.25) in the format of (4).  The user has to shift the bit left so that the decimal can be represented as an integer, then reduce the exponent appropriately.  While the user must do some work to identify the significand and exponent of a floating point constant to convert it into the format of (2) or (3), I would argue that there are more direct translations.
As for translating this syntax into SMT-LIB, Boogie will need to remove the lead bit, then shift the exponent to match the position of the lead bit.  While this is a simple enough translation, it is more complicated (and thus prone to error) than the direct translation afforded by the other options.

I see. Let's go with (2) then. I am sure that SMT guys thought a lot about this and so maybe we should follow them.

So I implemented the syntax proposed by @RustanLeino using my (2) interpretation of floating point constants as noted in the comment above (that is, -.5 = -0e216f24e8) and committed.  I'll modify the wiki to match these changes sometime this weekend.

This has been implemented while back.


Maturity level name fixes in how to elevate articles

Please use this template to ensure easier processing of your pull request
Category

[ x] Content fix
[ ] New article

Contents of the Pull Request
This fixes maturity level names in the how to elevate articles.

Docs Build status updates of commit 7668aa8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Community/microsoft365-maturity-model--how-to-elevate-collaboration.md
:white_check_mark:Succeeded
View

Community/microsoft365-maturity-model--how-to-elevate-communication.md
:white_check_mark:Succeeded
View

Community/microsoft-maturity-model-how-to-people-communities.md
:white_check_mark:Succeeded
View

Community/microsoft-maturity-model-how-to-staff-and-training.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Thanks!


chore: apply auto commit hook lint only

I'd like to avoid noisy lint fixes in https://github.com/appium/appium-android-driver/pull/860 so let me apply auto hook lint only as a separate pr.


adapter-vercel: ReferenceError when using fetch in hooks.js

Describe the bug
Referencing fetch at the top level of hooks.js throws a ReferenceError: fetch is not defined on every Serverless function invocation when deployed to Vercel. This only happens when deployed, and not when running locally with svelte-kit dev or svelte-kit preview.
Reproduction
See my example repo. This is the SvelteKit demo app with a console.log(fetch) added in the root of hooks.js. Server-rendering a page (e.g. /todos) shows the below error page when deployed to Vercel.

Logs
2022-01-14T16:54:52.301Z	undefined	ERROR	ReferenceError: fetch is not defined    at Object.<anonymous> (/var/task/index.js:7489:13)    at Module._compile (internal/modules/cjs/loader.js:1085:14)    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)    at Module.load (internal/modules/cjs/loader.js:950:32)    at Function.Module._load (internal/modules/cjs/loader.js:790:12)    at ModuleWrap.<anonymous> (internal/modules/esm/translators.js:192:29)    at ModuleJob.run (internal/modules/esm/module_job.js:183:25)    at async Loader.import (internal/modules/esm/loader.js:178:24)    at async getListener (/var/task/___vc/__launcher.js:33:11)2022-01-14T16:54:52.816Z	undefined	ERROR	ReferenceError: fetch is not defined    at Object.<anonymous> (/var/task/index.js:7489:13)    at Module._compile (internal/modules/cjs/loader.js:1085:14)    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)    at Module.load (internal/modules/cjs/loader.js:950:32)    at Function.Module._load (internal/modules/cjs/loader.js:790:12)    at ModuleWrap.<anonymous> (internal/modules/esm/translators.js:192:29)    at ModuleJob.run (internal/modules/esm/module_job.js:183:25)    at async Loader.import (internal/modules/esm/loader.js:178:24)    at async getListener (/var/task/___vc/__launcher.js:33:11)RequestId: 1c05fa3b-cc92-414a-b7d7-8c29b9f007bf Error: Runtime exited with error: exit status 1Runtime.ExitError

System Info
System:
    OS: Linux 5.4 Ubuntu 20.04.2 LTS (Focal Fossa)
    CPU: (8) x64 Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
    Memory: 8.75 GB / 12.40 GB
    Container: Yes
    Shell: 5.8 - /usr/bin/zsh
  Binaries:
    Node: 14.17.0 - /usr/bin/node
    Yarn: 1.22.10 - /usr/bin/yarn
    npm: 8.1.1 - /usr/bin/npm
  Browsers:
    Chrome: 90.0.4430.212
  npmPackages:
    @sveltejs/adapter-auto: next => 1.0.0-next.10
    @sveltejs/adapter-vercel: ^1.0.0-next.36 => 1.0.0-next.36
    @sveltejs/kit: next => 1.0.0-next.229
    svelte: ^3.44.0 => 3.46.1

Severity
blocking an upgrade
Additional Information
This issue first presented with adapter-vercel, but I suspect it could be an issue with the other adapters as well.
I think the issue is that fetch is not polyfilled until after the App is imported, at which point it's too late.
https://github.com/sveltejs/kit/blob/9de809405f13a24268da167d3c50ad894ecd14a8/packages/adapter-vercel/files/entry.js#L1-L6
This issue came up when updating svelte.dev to latest SvelteKit. hooks.js imports a file that imports $lib/db/client, which references fetch as part of an export.

what about using @rollup/plugin-inject to inject fetch when it's actually used? https://github.com/rollup/plugins/tree/master/packages/inject


Rake task 'rake scsb:updates' does not work as expected

Update the rake task https://github.com/pulibrary/bibdata/blob/main/lib/tasks/scsb.rake#L12-L19
so that we are able to index all the SCSB records from a set date until now.

Hey team! Please add your planning poker estimate with Zenhub @kevinreiss @maxkadel @regineheberlein @rladdusaw @sandbergja

I indexed again on staging and tested the rake task . I think the issue that date was the order we were setting the envs. I updated the documentation with the correct rake task and syntax. https://github.com/pulibrary/bibdata/pull/1973


Add option to analyse only mitochondria

PR checklist
I have added a new analysis type (mito) to call and annotate only mitochondrial variants.

[ ] This comment contains a description of changes (with reason).
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If you've added a new tool - have you followed the pipeline conventions in the contribution docs
[ ] If necessary, also make a PR on the nf-core/raredisease branch on the nf-core/test-datasets repository.
[ ] Make sure your code lints (nf-core lint).
[ ] Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
[ ] Ensure the test suite passes (nextflow run . -profile test_one_sample,docker --outdir <OUTDIR>).
[ ] Check for unexpected warnings in debug mode (nextflow run . -profile debug,test,docker --outdir <OUTDIR>).
[ ] Usage Documentation in docs/usage.md is updated.
[ ] Output Documentation in docs/output.md is updated.
[ ] CHANGELOG.md is updated.
[ ] README.md is updated (including new tool citations and authors/contributors).

@Lucpen @jemten Could you guys take a look at this PR?


Provide additional Prometheus metrics

We can carry over the ones from this PR: https://github.com/iotaledger/inx-chronicle/pull/61

We should also add the following:

Channel metrics from https://github.com/iotaledger/bee/pull/1405
Synced milestones count
Failed to solidify count

We probably also want query times and number of API calls per endpoint.

Closed by #577.


(PYL-W1505) Method used has been deprecated

Description
The method is marked as deprecated and will be removed in a future version of Python. Consider looking for an alternative in the documentation.
Occurrences
There are 3 occurrences of this issue in the repository.
See all occurrences on DeepSource → deepsource.io/gh/BAN-AI-Communications/rfc2217-gateway/issue/PYL-W1505/occurrences/

3rd party / won't fix


Mutations example in the docs

Would it be possible to add some examples of mutations to the docs? Kind of struggling to figure out how to write them?

Any link please? As this issue closed silently, but page well-indexed by googling "HotChocolate mutations example"

Hi @Arsync, have a look at our workshop:
https://github.com/ChilliCream/graphql-workshop


Howto use the v20 version of the workbench layer

I just read in the docs that it's possible to import either stix.v20 or stix2.v21, but what about the workbench layer?

Hi @diedel, the workbench can only be used with the most recent STIX version, so currently stix2.v21. The goal was to keep the workbench as simple as possible so we haven't implemented support for other versions. The environment layer can be used with either v20 or v21, and the workbench is just shortcuts built on top of the environment layer. So if you need to use v20, you can use the environment layer and with a little extra code do anything the workbench can. Alternatively, v1.4.0 of this library is the last version in which v21 was the default, so you could use the workbench in that version.

Thank you. I'll rewrite the code, I think it's the best solution.


Array handling

Problem:
When updating an item in an array right now, you need to pass in the entire array to update that field. This increases the chance of collisions and isn't a very nice UX.
Example:
const user = new Schema({
    nicknames: [String]
});

// Adding a nickname
PUT /users/62b4c652f7e9e4f037db7080
{nicknames: ["Bob", "Bobert"]}

// Updating a nickname
PUT /users/62b4c652f7e9e4f037db7080
{nicknames: ["Rob", "Bobert"]}

// Removing nicknames
PUT /users/62b4c652f7e9e4f037db7080
{nicknames: ["Bob"]}

Solution
An improved interface that is REST-y:
// Adding a nickname
POST /users/62b4c652f7e9e4f037db7080/nicknames
{data: "Bob"}
OR
{data: ["Bob", "Bobert"]}

// Updating a nickname
PUT /users/62b4c652f7e9e4f037db7080/nicknames/0
{data: "Rob"}

// Deleting a nickname
DELETE /users/62b4c652f7e9e4f037db7080/nicknames/1

If the array is an array of subschemas, we can either use the index or the ObjectId as the path:
const nickname = new Schema({
    name: String,
    public: Boolean
});
const user = new Schema({
    nicknames: [nickname]
});

// Updating a nickname
PUT /users/62b4c652f7e9e4f037db7080/nicknames/0
{data: "Rob"}

OR

PUT /users/62b4c652f7e9e4f037db7080/nicknames/62b4c9877c13878920343312
{data: "Rob"}

// Deleting a nickname
DELETE /users/62b4c652f7e9e4f037db7080/nicknames/1

OR

DELETE /users/62b4c652f7e9e4f037db7080/nicknames/62b4c9877c13878920343312

Open questions
Should we enforce data as the key for the body? Allow bare POST/PUTs?

Agreed with Dan, nix the data requirement and use the key that you'd expect to use (nickname in the example) and maintain a JSON body that way.
From the example, it looks like it could be a "related entity" or just an array within an entity.
Using the ObjectId in the path looks good if it is a "related entity", but I don't think we should use array index. In the case of editing a value in an existing array, I think we need to POST, PUT, or DELETE the entire array if we are doing an update.
Indexes should remain consistent, but if the data you have is stale (ex. a value has been removed since originally fetching it), that index is no longer valid which would make using array index not RESTful. Granted, this has the same risk we have now with inserting the entire array and overwriting any changes that have happened since fetching.


provision: Clean up code related to migrations and digests

This is great, merged, thanks @showell!  I still feel after this like we don't quite have the right API for the digests, in that we end having the code for computing the hash called twice.  If we could figure out a pretty contact-manager type interface for managing these hashes, that would probably be ideal.  E.g. somehow this block:
         if options.is_force or need_to_run_compilemessages():
             run(["./manage.py", "compilemessages"])
+            write_new_digest(
+                "last_compilemessages_hash",
+                compilemessages_paths(),
+            )
         else:
             print("No need to run `manage.py compilemessages`.")

would ideally be a lot simpler.  Hmm, or maybe rather than a context manager, we could just have a function taking as arguments the names last_compilemessages_hash, `["manage.py", "compilemessages"], etc., and does everything including the print statement?
I'm not sure, maybe that magic would be net unhelpful by obscuring what's happening in what's relatively simple code, even if somewhat duplicated.


add class useless property resolver

there's lots of class's properties in my project. can knip support remove these properties?

Knip is in a good position to try and support this. If you can share a public repository with your use case, or open a pull request with a minimal example project in the test/fixtures folder, that would help a lot.
Depending on feasibility and performance, we can see if it should be the default or optional to find unused class members.

I have released an initial version to support this. Any chance you could give it a shot on your repo(s)? Two issue types "class members" and "enum members" have been added. It's a pre-release (v0.13.0-members.0), it can be installed like this:
npm install knip@members

Thanks in advance for your feedback.

This was added in v0.13.0


求助适配布谷BG-F3风扇

HASS能成功添加实体，能够识别风扇目前工作状态，但无法再HASS里控制。
2023-06-18 14:53:41.342 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration hasslife which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-06-18 14:53:41.346 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-06-18 14:53:41.349 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration midea_ac_lan which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-06-18 14:53:41.352 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration xiaomi_miot which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-06-18 14:53:56.084 DEBUG (MainThread) [custom_components.midea_ac_lan.midea.devices.fa.device] [208907211844230] Customize: None
2023-06-18 14:53:56.111 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Connected
2023-06-18 14:53:56.111 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Handshaking
2023-06-18 14:53:56.179 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Authentication success
2023-06-18 14:53:56.179 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Sending: {'header': 'aa1dfa000000000000a0', 'body': '00000000000000000000000000000000000000', 'message type': 'a0', 'body type': '00'}
2023-06-18 14:53:56.544 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Received: {'header': 'aa2afa000000000000a0', 'body': '00fa0f0000000000000000000000000000000000000000000000000000000000', 'message type': 'a0', 'body type': '00'}
2023-06-18 14:53:56.544 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Subtype: 15. Device protocol version: 0
2023-06-18 14:53:56.545 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Sending: {'header': 'aa0afa00000000000003', 'body': '', 'message type': '03', 'body type': 'None'}
2023-06-18 14:53:56.778 DEBUG (Fan) [custom_components.midea_ac_lan.midea.devices.fa.device] [208907211844230] Received: {'header': 'aa1efa00000000000003', 'body': '00000000020c00004300000000000000ffff0200', 'message type': '03', 'body type': '00'}
2023-06-18 14:53:56.779 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Status update: {'power': False, 'child_lock': False, 'mode': 'Normal', 'fan_speed': 0, 'oscillate': True, 'oscillation_angle': '120', 'tilting_angle': 'Off', 'oscillation_mode': 'Oscillation'}
2023-06-18 14:53:56.779 DEBUG (Fan) [custom_components.midea_ac_lan.midea.core.device] [208907211844230] Status update: {'available': True}

Home Assistant 2023.5.4
前端版本： 20230503.3 - latest

我也遇到这样的问题。不管是auto获取还是ip获取都是这样。

同问题，请求作者修复

你这日志也太短了，日志中你并没有发送任何控制命令，看不出个所以然来

#269 反应F3已经可以正常控制，你们试试，如果不行，Clone本仓库，用最新代码尝试一下呢？
因长时间没有回应，本Issue暂时关闭，如果还有问题，请重开。


New exchange : Deribit

Hi, could you include this derivatives exchange?
Their API can be found here
https://www.deribit.com/main#/help?scrollTo=api&page=api

Hi, sure! Thx for your proposal! We'll take a deep look into it and will integrate hopefully, soon!

Almost there ;)

superb thanks for this

great! when its the repo ready? this is the api. https://www.deribit.com/main#/pages/docs/api

@jjhesk almost there, hope to finish it in a couple of days.

@kroitor cant wait to see it done! a big thanks!

great work...
do you have any plans creating python code?

@kmarkt

do you have any plans creating python code?

Python code is created automatically upon building: https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#multilanguage-support

@kroitor Thanks very much for so quick response. will try it out.

Is Deribit really available?
I don't see it listed in Supported Cryptocurrency Exchange Markets.
Moreoverexchange = ccxt.deribit() gives AttributeError: 'module' object has no attribute 'deribit'.

Is Deribit really available?

Not yet. This thread is about adding it.

Thanks for the reply Igor. By reading the thread I had the impression it was already implemented, hence the question.
Keep up the good work!


merge package from arlac77/npm-package-template

package.json

chore(scripts): cover@#overwrite c8 --temp-directory build/coverage ava && c8 report -r lcov --temp-directory build/coverage
chore(package): add xo from template
chore(package): add nyc from template
docs(package): remove keyword null
chore(package): set $.ava.require='esm' as in template
chore(package): set $.ava.files='tests/-test.js,tests/-test.mjs' as in template
chore(package): set $.ava.extensions='js,mjs' as in template

Codecov Report

Merging #568 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #568   +/-   ##
======================================
  Coverage    94.4%   94.4%
======================================
  Files           7       7
  Lines        1073    1073
======================================
  Hits         1013    1013
  Misses         60      60

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6ab7006...290e56a. Read the comment docs.

Coverage remained the same at 93.103% when pulling 290e56ad59a6ab7c820cae5594c2939e7383975f on template-sync-1 into 6ab70063896a465bd8d52a5d21af328ae8736c73 on master.


fix: body was not getting updated if parsing error in js object

Description
the body was not getting updated if parsing error in js object result of that errors were not resolved in error tab with next edit
Fixes #8703
Type of change

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

Checklist:

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

Test coverage results :test_tube:
:red_circle: Total coverage has decreased
// Code coverage diff between base branch:release and head branch: js-editor-refactor-critical

Status
File
% Stmts
% Branch
% Funcs
% Lines

:red_circle:
total
54.9 (0)
36.59 (-0.01)
33.64 (0)
55.43 (0)

:red_circle:
app/client/src/sagas/JSPaneSagas.ts
18.63 (-0.12)
1.45 (-0.16)
7.14 (0)
21.9 (-0.16)

/ok-to-test sha=737e322

other PR takes care of this scenario


Should plugins folder have demos?

Wondering if there should be a root level demo folder instead that has different scenarios including plugin and LOB examples.

Wondering the same thing — although I think it makes more sense at the plugin layer. For example, I noticed that the reds-plugin demo from the BCGov redis-events repo didn’t (AFAIK) get moved over to this repo. Should it?

What is the plugins demo folder neededfor? It just starts up a subset of Traction stuff and does a reservation. Something easily enough done with starting up normally and going through the Tenant UI.
It could be expanded to do business scenarios with plugins I suppose, but that effort is close to (IMO more valuable) setting up BDD regression tests, which could also be followed to show LOB workflows.

Sorry — didn’t realize this issue was in the traction repo.  I thought the question applied to the aries-acapy-plugins.  Nevermind about my comment.

As part of PR #1064, the demo folder has been removed from the /plugins directory. A new standalone /demo folder exists.

Resolved by #1064 and #1074


Update to 0.4.0-alpha.1

Deployed and Tested
MPAS-Ocean with pr:

[x] Anvil

[x] intel and impi
[x] intel and openmpi
[x] gnu and openmpi

[x] Chicoma

[x] gnu and mpich

[x] Chrysalis

[x] intel and openmpi
[x] gnu and openmpi - Runs with the patch in https://github.com/E3SM-Project/mache/pull/184, which was added to mache v1.24.0 in this PR on conda-forge: https://github.com/conda-forge/mache-feedstock/pull/70

[x] Compy

[x] intel and impi - thread test is failing with #205, possibly also caused by the issue reported in https://github.com/E3SM-Project/E3SM/issues/6515

[x] Frontier

[x] gnu and mpich
[x] crayclang and mpich

[x] Perlmutter-CPU (@altheaden)

[x] gnu and mpich
[x] intel and mpich - thread test failing with #205

Omega CTests:

[x] chicoma-cpu

[x] gnu - Only works with https://github.com/E3SM-Project/Omega/pull/107, not with current Omega submodule

[x] chrysalis

[x] intel
[x] gnu

[x] frontier

[x] gnu
[ ] gnugpu - not working following recent Frontier module updates and will require mache changes, see https://github.com/E3SM-Project/Omega/issues/104
[x] crayclang
[ ] crayclanggpu - not working following recent Frontier module updates and will require mache changes, see https://github.com/E3SM-Project/Omega/issues/104

[x] pm-cpu (@altheaden)

[x] gnu
[x] intel - reductions test failing with https://github.com/E3SM-Project/Omega/issues/99
[x] nvidia

[x] pm-gpu (@altheaden)

[x] gnugpu
[x] nvidiagpu

@altheaden, I need to test Chrysalis one more time to make sure the patched mache does what it should.  Then, I think this is ready to merge.  Could you approve based on your testing?

@xylar could any of the most recent changes you've made have affected the testing I did on pm-cpu and pm-gpu? I don't think so, but let me know if you want me to re-test any of those. Assuming we don't need to re-test, I'll go ahead and mark this as ready to merge based on my testing.

@altheaden, I don't think my recent changes will have any effect on Perlmutter so I think your test results are fine as they are.  There would be no problem with you running them again if you want to but I don't think it's necessary.  Thanks for checking on that, though.

Running one last Chrysalis gnu test, then I will merge!!!


Emailed reset password link sends me to login screen, with "type email to recover password" which Emails me reset password link which sends me to sends me to login screen...

Steps to reproduce:
List the minimal actions needed to reproduce the behavior.

https://support.influxdata.com/_nc_external/identity/ui/login/ForgotPasswordInterstitial?r=00D37000000JQwH0051S000007N2UXCjwKMwoPMDBEMzcwMDAwMDBKUXdIEg8wMkczNzAwMDAwMFUwenAaDzAwNTFTMDAwMDA3TjJVWBiSp7KV-S8SEBZ-a0r5yzvxJ_KzC_s8DK8aDCwD9tIFPzhkQR3UaCI5LqUgjdivtCDPJu_E_6OGA8NmN7dhC7hyoHnOPanA0_LCqhA_85W4sXlxrLt3ywLYy81yCCiYgHNO&display=page&fpot=0215b7d5-4e18-423a-b6a5-1d7715f643699d754157-66fc-4455-bad3-4290ad3b68ae

Expected behavior:
I expected to get a link to reset my password, click the link, type my well thought out, strong password in twice, click to confirm and then have a new password.
Actual behavior:
I recursively click a link to reset my password, which takes me to a page where I can get a link emailed to me to reset my password as above. It's fun, but just not resetting my password.
Environment info:
Firefox 98.0.1 (64-bit)

So I got this email and somehow clicking this link:

worked and got me here:

This is where I was expecting the other links in the original post to take me. Are the cookies misbehaving?

@devjolt this issue has been addressed on our Support side. Will close this out.


Multiline formatting of code block is lost for several (non-supported?) languages

For example, the assembly/nasm/x86 code block lost its formatting and shown as single line.

The corresponding JSON of the response:
    {
      "role": "assistant",
      "content": "Here's a simple \"Hello, World!\" program in x86 assembly language for the NASM (Netwide Assembler) assembler:\n\n```nasm\nsection .data\n    msg db 'Hello, World!', 0\n\nsection .text\n    global _start\n\n_start:\n    ; Print the message\n    mov eax, 4      ; system call number for write\n    mov ebx, 1      ; file descriptor (stdout)\n    mov ecx, msg    ; address of string to write\n    mov edx, len    ; length of string\n    int 0x80        ; invoke operating system\n\n    ; Exit the program\n    mov eax, 1      ; system call number for exit\n    xor ebx, ebx    ; return code (0)\n    int 0x80        ; invoke operating system\n\nsection .data\nlen equ $-msg    ; calculate length of string\n```\n\n...."
    },

Another examples:

And again, a lot of \n in original responce are lost in code block.

Yeah that's because the highlight.js doesn't support these languages be default. Maybe with a plugin.

It's ok if a language is not supported and rendered without syntax highlighting. But anyway it has to be displayed "as is" at least (preserve multiline formatting).


Test failure: CheckBackwardsCompatibilityIsUsed

This issue was made automatically. If there is a problem contact ryanbrandenburg.
This test failed with the following error:
Assert.Equal() Failure
                 ↓ (pos 7)
Expected: 12.2.18287.0
Actual:   12.2.18313.0
                 ↑ (pos 7)
   at Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests.BackwardsCompatibilityTests.CheckBackwardsCompatibilityIsUsed() in /_/test/IIS.BackwardsCompatibility.FunctionalTests/BackwardsCompatibilityTests.cs:line 32
--- End of stack trace from previous location where exception was thrown ---
------- Stdout: -------
| [0.024s] TestLifetime Information: Starting test CheckBackwardsCompatibilityIsUsed at 2018-11-09T11:04:31
| [3.621s] TestLifetime Information: Finished test CheckBackwardsCompatibilityIsUsed in 3.5970443s

Other tests within that build may have failed with a similar message, but they are not listed here. Check the link above for more info.
This test failed on 2.2.
CC Eilon

This comment was made automatically. If there is a problem contact ryanbrandenburg.
Please use this workflow to address this flaky test issue, including checking applicable checkboxes and filling in the applicable "TODO" entries:

Is this actually a flaky test?

No, this is a regular test failure, fix the test/product (TODO: Link to commit/PR)
Yes, proceed below...

Is this test failure caused by product code flakiness? (Either this product, or another product this test depends on.)

[ ] File a bug against the product (TODO: Link to other bug)
Is it possible to change the test to avoid the flakiness?

Yes? Go to the "Change the test!" section.
No?

[ ] Disable the test (TODO: Link to PR/commit)
[ ] Wait for other bug to be resolved
[ ] Wait for us to get build that has the fix
[ ] Re-enable our test (TODO: Link to PR/commit)
[ ] Close this bug

Is it that the test itself is flaky? This includes external transient problems (e.g. remote server problems, file system race condition, etc.)

Is there is a way to change our test to avoid this flakiness?

Yes? Change the test!

[ ] Change the test to avoid the flakiness, for example by using a different test strategy, or by adding retries w/ timeouts (TODO: Link to PR/commit)
[ ] Run the test 100 times locally as a sanity check.
[ ] Close this bug

No?

Is there any logging or extra information that we could add to make this more diagnosable when it happens again?

Yes?

[ ] Add the logging (TODO: Link to PR/commit)

No?

[ ] Delete the test because flaky tests are not useful (TODO: Link to PR/commit)

This comment was made automatically. If there is a problem contact ryanbrandenburg.
There were 1 failures with about the same error on 2.2 at 2:11:43 AM:

CheckForwardsCompatibilityIsUsed

@muratg - please assig.

Fixed. Will close once CI passes.


Added nightmare dungeon area to skybox.txt

Added nightmare dungeon area to skybox colors.
Previously (Line 218 originally in skybox.txt) encompassed a tiny room. That line was removed, and the new region encompasses the previously removed region.
The color chosen is #0a0a0a (RGB 10,10,10).
Resolves 1 of 2 in #10771

When this is merged, it will close #10771, as the discord status PR which addressed the other portion of it has already been merged.


error while changing language inputs

While in the Korean input mode and left_control is pushed down, the language input changes to English properly. And also, after the left_control key is up, the text input icon on the menu bar always shows the Korean input mode which is as intended.
However, the actual language being written,  after the the left_control key is up, is English half of the tries or is properly Korean the other half.
So, it seems there is some errors after the left control is up which I couldn't find the cause.
It would be appreciated if anyone can help me on this issue.
`
{
"title": "Change language input from Korean to English while left control is pushed down",
"rules": [
{
    "description": "Change language input from Korean to English while left control is pushed down",
    "manipulators": [
	{
	    "conditions": [
		{
		    "type": "input_source_if",
		    "input_sources":[
			{
			    "language": "^ko$"
			}
		    ]
		}
	    ],
	    "type": "basic",
	    "from": {
		"key_code": "left_control",
		"modifiers": {
		    "optional": [
			"any"
		    ]
		}
	    },
	    "to": [
		{
		    "select_input_source": {
			"language": "^en$"
		    }
		}
	    ],
	    "to_after_key_up": [
		{
		    "select_input_source": {
			"language": "^ko$"
		    }
		}
	    ]
	}
    ]
}
]

}
`

This issue is found in en->ko->en and en->jp->en. But not in en->fr->en.

FYI, the json code was tested on El Capitan 10.11.6

The same issue also detected on Sierra 10.12.6


feat: Make search fuzzy

@Alystrasz how do I reuse TypeScript functions between multiple views? ^^

CI failing due to outdated dependency, ugh


[cocoon] app_dart tests are slow to run

Several tests seem to have sleeps in them that requires the tests to take an arbitrary length of time.
$ dart test --reporter=expanded

00:31 +505 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore same commit, checks complete, last status was waiting & gold status is needing triage, should comment
00:41 +506 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore uses shorter comment after first comment to reduce noise
00:51 +507 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore same commit, checks complete, new status, should not comment
01:01 +508 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore will inform contributor of unresolved check for ATF draft status
01:01 +509 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore will only inform contributor of unresolved check for ATF draft status once
01:01 +510 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment updates GitHub and/or Datastore delivers pending state for failing checks, does not query Gold
01:01 +511 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment Completed pull request does not skip follow-up prs with early return
01:11 +512 -36: test/request_handlers/push_gold_status_to_github_test.dart: PushGoldStatusToGithub in non-development environment accounts for null status description when parsing for Luci builds

Yup. Looks like this may be it: https://github.com/flutter/cocoon/blob/01eb90e8f5b38c5887028578b6ec747ab9480e94/app_dart/lib/src/request_handlers/push_gold_status_to_github.dart#L199
I'll send a patch to override this in the test since we aren't actually communicating with the Gold server in testing.

It looks like there are a couple of .delayed areas in cocoon, luci.dart may be the long pole now.


JRE 9.0.1

I am currently running

SpongeVanilla version: Build 1.12.2-7.0.0-BETA-374
Java version: 9.0.1
Operating System: Windows 7

Error ->
Exception in thread "main" java.lang.RuntimeException: We have detected that you are JRE version 9.0.1, which is out of date!
In order to run Sponge, you must be running JRE version 1.8.0_20 (or above).
Previous builds of JRE version 1.8 will not work with Sponge.
This can be downloaded from Oracle: http://www.oracle.com/technetwork/java/javase/downloads/jre8/downloads-2133155.html
at org.spongepowered.launch.JavaVersionCheckUtils.ensureJava8(JavaVersio
nCheckUtils.java:49)
at org.spongepowered.server.launch.VersionCheckingMain.main(VersionCheck
ingMain.java:37)

In order to run Sponge, you must be running JRE version 1.8.0_20 (or above).

Java 9 is not supported. It breaks everything.

I thought that too but this message its not true.

So this message is wrong? I think I see.  Java 9 is greater than Java 1.8, but the notation changed so everything broke. Though it seems to work in our favor for now.

ok it was just a hint :-)

You should modify the issue title and description to mention this.

Also related. #1578

changed and yes i dont saw this issue

#1553
#1578
https://github.com/SpongePowered/SpongeVanilla/issues/355


Adding career frameworks definition

Note that the page is still named career-ladders, I think that should probably be renamed


Fixed a config bug

Fixed an interesting bug.  The following line does not do what many would expect:
config.ssl_verify = @config[:ssl_verify] if @config[:ssl_verify]
The original intent of that line was to set the config.ssl_verify variable to the value of @config[:ssl_verify] if it was set.  However, if you set @config[:ssl_verify] to false, then it woun't actually set the value of config.ssl_verify because the if failed (and the default value for config.ssl_verify is true).  I changed the "if " to "unless .nil?".  I also changed the other config tests that probably would never be "false", but just in case.  :)

Thanks @davealden.
This project really needs some proper specs to pick up trivial errors like this :(

Is there any plan to release this fix?

@cavaliercoder I've just released the v0.2.2 gem which includes this PR.

Thank you so much! This will make my day. You've done great work on this backend.


CLI help doesn't mention profile must be used with workspace

Testing #158809
On Mac, code-insiders --profile name launches a new instance without a profile, which might confuse users expecting a profile. code-insiders --help doesn't mention that a folder or workspace must be provided.
I'm thinking we can either emphasize that a folder or workspace must be provided even more than what the current help documentation has, or we exit with an error when the user doesn't provide a folder or workspace.

Yes, flagging the missing workspace is a must.

Updated the doc
Opens the provided folder or workspace with the given profile and associates the profile with the workspace. If the profile does not exist, a new empty one is created. A folder or workspace must be provided for the profile to take effect.


Azure Cognitive Search Vector Store doesn't apply search_kwargs when performing queries

System Info
Langchain 0.0.199
Python 3.10.11
Windows 11 (but will occur on any platform.
Who can help?
@hwchase17
@ruoccofabrizio
Information

[X] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[X] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
To reproduce this issue create an AzureSearch Vector Store and a RetrievalQA with a search_kwargs, like in this sample code:
import os

  cognitive_search_name = os.environ["AZURE_SEARCH_SERVICE_NAME"]
  vector_store_address: str = f"https://{cognitive_search_name}.search.windows.net/"
  index_name: str = os.environ["AZURE_SEARCH_SERVICE_INDEX_NAME"]
  vector_store_password: str = os.environ["AZURE_SEARCH_SERVICE_ADMIN_KEY"]

  from langchain.vectorstores.azuresearch import AzureSearch

  embeddings = OpenAIEmbeddings(model="text-embedding-ada-002", chunk_size=1, client=any)
  vector_store = AzureSearch(azure_search_endpoint=vector_store_address,
                              azure_search_key=vector_store_password,
                              index_name=index_name,
                              embedding_function=embeddings.embed_query)

    from langchain.chains import RetrievalQA

    llm = AzureChatOpenAI(deployment_name="gpt35", model_name="gpt-3.5-turbo-0301", openai_api_version="2023-03-15-preview", temperature=temperature, client=None)
    index = get_vector_store()
    retriever = index.as_retriever()
    retriever.search_kwargs = {'filters': "metadata eq 'something'"}

    qa = RetrievalQA.from_chain_type(
                llm=llm,
                chain_type="stuff",
                retriever=retriever,
            )

    return qa

When you execute this code using qa the search_kwargs appear in the method similarity_search in azuresearch.py but are never passed to the methods vector_search, hybrid_search, and semantic_hybrid where they actually would be used.
Expected behavior
In my example they should apply a filter to the azure cognitive search index before doing the vector search, but this is not happening because filters will always be empty when it gets to the functions where they are used.  (vector_search, hybrid_search, and semantic_hybrid)

is your index.as_retriever() instance of VectorStoreRetriever or AzureSearchVectorStoreRetriever?
when i do
vector_store= AzureSearch(...)
retriever = vector_store.as_retriever(...)

print(f'retriever search_type: {retriever.search_type}')

it is always similarity unless
retriever2 = AzureSearchVectorStoreRetriever(vectorstore=db)

import os
cognitive_search_name = os.environ["AZURE_SEARCH_SERVICE_NAME"]
vector_store_address: str = f"https://{cognitive_search_name}.search.windows.net/"
index_name: str = os.environ["AZURE_SEARCH_SERVICE_INDEX_NAME"]
vector_store_password: str = os.environ["AZURE_SEARCH_SERVICE_ADMIN_KEY"]
from langchain.vectorstores.azuresearch import AzureSearch
embeddings = OpenAIEmbeddings(model="text-embedding-ada-002", chunk_size=1, client=any)
vector_store = AzureSearch(azure_search_endpoint=vector_store_address,
azure_search_key=vector_store_password,
index_name=index_name,
embedding_function=embeddings.embed_query)
from langchain.chains import RetrievalQA

llm = AzureChatOpenAI(deployment_name="gpt35", model_name="gpt-3.5-turbo-0301", openai_api_version="2023-03-15-preview", temperature=temperature, client=None)
index = get_vector_store()
retriever = index.as_retriever()
retriever.search_kwargs = {'filters': "metadata eq 'something'"}

qa = RetrievalQA.from_chain_type(
            llm=llm,
            chain_type="stuff",
            retriever=retriever,
        )

return qa

It is AzureSearchVectorStoreRetriver... I had a cut and paste error in my example.  I just tested this example:
import os
cognitive_search_name = os.environ["AZURE_SEARCH_SERVICE_NAME"]
vector_store_address: str = f"https://{cognitive_search_name}.search.windows.net/"
index_name: str = os.environ["AZURE_SEARCH_SERVICE_INDEX_NAME"]
vector_store_password: str = os.environ["AZURE_SEARCH_SERVICE_ADMIN_KEY"]
from langchain.vectorstores.azuresearch import AzureSearch
embeddings = OpenAIEmbeddings(model="text-embedding-ada-002", chunk_size=1, client=any)
vector_store = AzureSearch(azure_search_endpoint=vector_store_address,
azure_search_key=vector_store_password,
index_name=index_name,
embedding_function=embeddings.embed_query)
from langchain.chains import RetrievalQA

llm = AzureChatOpenAI(deployment_name="gpt35", model_name="gpt-3.5-turbo-0301", openai_api_version="2023-03-15-preview", temperature=temperature, client=None)
index = get_vector_store()
retriever = index.as_retriever()
retriever.search_kwargs = {'filters': "metadata eq 'something'"}

qa = RetrievalQA.from_chain_type(
            llm=llm,
            chain_type="stuff",
            retriever=retriever,
        )

return qa

is your index.as_retriever() instance of VectorStoreRetriever or AzureSearchVectorStoreRetriever?
when i do
vector_store= AzureSearch(...)
retriever = vector_store.as_retriever(...)

print(f'retriever search_type: {retriever.search_type}')

it is always similarity unless
retriever2 = AzureSearchVectorStoreRetriever(vectorstore=vector_store)

You are right my example code is a bad cut and paste.  It has to be AzureSearchVectorStoreRetriever to reproduce this.  I will add a new example I just tested.

import os
import setupenv
setupenv.setup()

cognitive_search_name = os.environ["AZURE_SEARCH_SERVICE_NAME"]
vector_store_address: str = f"https://{cognitive_search_name}.search.windows.net/"
index_name: str = os.environ["AZURE_SEARCH_SERVICE_INDEX_NAME"]
vector_store_password: str = os.environ["AZURE_SEARCH_SERVICE_ADMIN_KEY"]

from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.vectorstores.azuresearch import AzureSearch

embeddings = OpenAIEmbeddings(model="text-embedding-ada-002", chunk_size=1, client=any)
vector_store = AzureSearch(azure_search_endpoint=vector_store_address,
                            azure_search_key=vector_store_password,
                            index_name=index_name,
                            embedding_function=embeddings.embed_query)

from langchain.chains import RetrievalQA
from langchain.chat_models import AzureChatOpenAI

llm = AzureChatOpenAI(deployment_name="gpt35", model_name="gpt-3.5-turbo-0301", openai_api_version="2023-03-15-preview", temperature=1.0, client=None)
retriever = vector_store.as_retriever()
retriever.search_kwargs = {'filters': "metadata eq 'something'"}

qa = RetrievalQA.from_chain_type(
            llm=llm,
            chain_type="stuff",
            retriever=retriever,
        )

qa.run("What is the name?")

Sorry for hijacking. I am on 0.0.202, calling as_retriever() did not return AzureSearchVectorStoreRetriever for me 😥
despite that, AzureSearchVectorStoreRetriever.get_relevant_documents calling back to
elif self.search_type == "hybrid":
            docs = self.vectorstore.hybrid_search(query, k=self.k)

it is missing
hybrid_search(self, query: str, k: int = 4,  **kwargs: Any)
where
filters=kwargs.get("filters", None)

AzureSearchVectorStoreRetriever

Yes, that is a different path to the same issue.

issue: Azure Cognitive Search Vector Store doesn't apply search_kwargs when performing queries
Actually, I also encountered this problem recently. I want to know, is this issue solved?


Unexpected token in JSON at position 0 during amplify pull/push

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
16.13.2
Amplify CLI Version
7.6.13
What operating system are you using?
Mac OS 12.1
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
Updated #current-cloud-backend.zip after duplicate files were created due to icloud sync. Followed the steps outlined in https://github.com/aws-amplify/amplify-cli/issues/3576#issuecomment-596732233 to remove duplicate files and uploading a new #current-cloud-backend.zip file
After updating the zip file, i am getting an 'unexpected token at position 0' error during amplify pull/push.
Amplify Categories
api
Amplify Commands
pull, push
Describe the bug
Getting an 'unexpected token at position 0' error during amplify pull/push.
Expected behavior
Do amplify pull/push smoothly
Reproduction steps
Didn't make any changes besides updating current-cloud-backend zip file in s3 deployment folder. I noticed a lot of empty '@' lines in logs.
GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line

SyntaxError: Unexpected token ^@ in JSON at position 0

Additional information

Hi @suneelmatham it seems like there is still some file in your deployment bucket that is expected to be JSON but has invalid contents. Some files to check would be the amplify-meta.json, backend-config.json and cli.json files but it could be other files as well.
Let us know if you're still having issues here and we can take a look at your deployment bucket to try to figure out what's going on.

Hi @edwardfoyle , I fixed this by doing an amplify push --force. It's working fine now, thanks


How can i send a message to a ID? Where i can get the Hash?

The examples that is gived in FAQ is not applicable in my project, i need to send a message to a new member of a group everytime someone enter with the envite link. There is any example how can i start to do it?  How can i get the hash to create a input peer user?

You can use the .ToInputPeer() method on the User object, matching the id of the user who enter with an element from the dictionary.
Github issues are not for questions, but for issues

If you read all this ReadMe, the Frequently Asked Questions, the Examples codes and still have questions, feedback is welcome in our Telegram group @WTelegramClient

Duplicate of #105


Last played date not working

Its not showing my last played, check my sona for example compared to my op.gg
https://championmasterylookup.derpthemeus.com/summoner?summoner=moon827&region=NA
http://na.op.gg/summoner/userName=moon827

This is caused by a known issue with Riot's API. The team that owns the champion mastery service has been made aware of it, but there is no estimate as to when it will be fixed.

This should now be resolved https://github.com/RiotGames/developer-relations/issues/15


Win10：Cannot start Slime

I wanna use Emacs to edit Common Lisp.
SBCL cannot be installed in my computer(Windows 10).
I installed CLisp.
When I input “M x slime” to start Slime, it shows "No such file or directory, lisp".
Then I turn to read your config "init-common-lisp.el", I find "SBCL" and "CCL", but no "CLisp", I'm wondering that maybe your configurations donot suport CLisp.
As for Emacs, I'm a greenhand. I donot know how to do with it.
It will be so kind for you to help me.
Best Wishes!

I've just never used clisp, sorry. You can probably just add a block similar to one of the others in init-common-lisp.el. If you find something that works for you, I'll be happy to merge a patch!

Thanks Steve,Could you please share some configuration about latex?Thankssaga                                                                                Sent from my 格力空调...                                                                                From<EMAIL_ADDRESS>September 23, 2017 7:09 PMTo<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Re: [purcell/emacs.d] Win10：Cannot start Slime (#495)  I've just never used clisp, sorry. You can probably just add a block similar to one of the others in init-common-lisp.el. If you find something that works for you, I'll be happy to merge a patch!
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.

Thanks Steve,Could you please share some configuration about latex

No, I don't use LaTeX myself, sorry.


Deleting all files in a folder should result with the empty folder being selected

Version 1.25.0-insider (1.25.0-insider)
macOS 10.13.4 (17E202)
Steps to Reproduce:

Start with a project with multiple folders, each with multiple files in them
Select all of the files in a folder
Delete the files (not the folder) so the folder is empty
Notice that the selected folder is no longer selected

After trying to fix this I got to this line which is working as expected.
Then I noticed that the only way to reproduce this is by removing a file that is opened. Even removing just one file (that is opened) the parent folder won't be selected as you can see in this video.
So, seems that after closing the just removed file, the focus is lost from its parent folder. I think we should focus the parent folder after we close the editor here. I haven't been able to find a way to focus the parent folder from fileEditorTracker.handleDeletes, can anyone give me some guidance?

explorer.autoReveal: false
should customize that behavior, let me know if that does not fix the issue and I can reopen. Thanks

Yes, that fixes it. Thanks!


Prep PRs:
Fix build tags for Go 1.17 - https://github.com/hyperledger/fabric/pull/3070
Resolve Go 1.17 staticcheck issues for dependency projects - https://github.com/hyperledger/fabric/pull/3114

/integration/pluggable integration test fails on Go 1.17 when trying to compile the validation plugin with command:
go build -x -buildmode=plugin -o testdata/plugins/validation/plugin.so github.com/hyperledger/fabric/integration/pluggable/testdata/plugins/validation
Turns out there are two dependencies that aren't compatible with Go 1.17:

$ go mod why -m github.com/cespare/xxhash/v2
# github.com/cespare/xxhash/v2
github.com/hyperledger/fabric/common/metrics/prometheus
github.com/prometheus/client_golang/prometheus
github.com/cespare/xxhash/v2

github.com/cespare/xxhash/v2 has a fix, see:
https://github.com/cespare/xxhash/issues/54
https://github.com/golang/go/issues/48468
But, we can't pull in the latest prometheus that has the xxhash fix without also updating protobuf, which is an issue for etcd (being worked in #3117). For now we can do a replace in go.mod to update github.com/cespare/xxhash/v2.

$ go mod why -m github.com/consensys/gnark-crypto
# github.com/consensys/gnark-crypto
github.com/hyperledger/fabric/msp
github.com/IBM/idemix
github.com/IBM/mathlib
github.com/IBM/mathlib/driver/gurvy
github.com/consensys/gnark-crypto/ecc/bn254

The integration test failure is:
2021-12-13T04:34:47.8916227Z [build-plugin-validation] /opt/hostedtoolcache/go/1.17.5/x64/pkg/tool/linux_amd64/compile -o $WORK/b223/_pkg_.a -trimpath "$WORK/b223=>" -dynlink -p github.com/consensys/gnark-crypto/ecc/bn254/fp -lang=go1.16 -installsuffix dynlink -buildid Q3Pyikak647lX18LmeU6/Q3Pyikak647lX18LmeU6 -goversion go1.17.5 -symabis $WORK/b223/symabis -importcfg $WORK/b223/importcfg -pack -asmhdr $WORK/b223/go_asm.h /home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp/arith.go /home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp/asm.go /home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp/element.go /home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp/element_ops_amd64.go
2021-12-13T04:34:47.8917985Z [build-plugin-validation] cd /home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp
2021-12-13T04:34:47.8919317Z [build-plugin-validation] /opt/hostedtoolcache/go/1.17.5/x64/pkg/tool/linux_amd64/asm -p github.com/consensys/gnark-crypto/ecc/bn254/fp -trimpath "$WORK/b223=>" -I $WORK/b223/ -I /opt/hostedtoolcache/go/1.17.5/x64/pkg/include -D GOOS_linux -D GOARCH_amd64 -dynlink -o $WORK/b223/element_mul_amd64.o ./element_mul_amd64.s
2021-12-13T04:34:47.8920333Z [build-plugin-validation] # github.com/consensys/gnark-crypto/ecc/bn254/fp
2021-12-13T04:34:47.8922413Z [build-plugin-validation] asm: element_mul_amd64.s:86: when dynamic linking, R15 is clobbered by a global variable access and is used here: 00013 (/home/vsts/work/1/fabric/vendor/github.com/consensys/gnark-crypto/ecc/bn254/fp/element_mul_amd64.s:86)	MULXQ	DI, R14, R15
2021-12-13T04:34:47.8923409Z [build-plugin-validation] asm: assembly failed

It doesn't look like there is a fix in github.com/consensys/gnark-crypto yet, so we will either need to remove this dependency or see if that project can do a similar fix as was done in github.com/cespare/xxhash/v2.

@ale-linux Could you look at the last issue above?

I think that this
https://github.com/ConsenSys/gnark-crypto/pull/112
fixes it. Let's see what the maintainers of gnark-crypto say.


Rate limit bypass

Turning on Rate limit bypass gave me rate limit instantly 🧐😂

hey, don't turn on bypass before your rate limit expires. other columns don't loading, but i don't know why :(

Same here. Search columns aren't loading for me.

You are right ogbrana, works

Not for long :(

I'm rate-limited, and the option does not work no matter if it's on or off, nothing changes meaning the columns won't load in anymore.

I'm rate-limited, and I cannot get the bypass to work no matter if it's on or off, nothing changes meaning the columns won't load in anymore. @dimdenGD


Merge remote-tracking branch 'Roll20/master'

There are no files included in this. Try pushing your files again.


[mongo-cxx-driver] update to 3.10.0

Library name
mongo-cxx-driver
New version number
3.10.0
Other information that may be useful (release notes, etc...)
Release notes are available here: https://github.com/mongodb/mongo-cxx-driver/releases/tag/r3.10.0

C++ driver 3.10.1 has been released: https://github.com/mongodb/mongo-cxx-driver/releases/tag/r3.10.1
This contains fixes relevant to https://github.com/microsoft/vcpkg/pull/37025


CLOUDSTACK-9062: Improve S3 implementation.

The S3 implementation is far from finished, this commit focuses on the bases.

Upgrade AWS SDK to latest version.
Rewrite S3 Template downloader.
Rewrite S3Utils utility class.
Improve addImageStoreS3 API command.
Split various classes for convenience.
Various minor improvements and code optimizations.

A side effect of the new AWS SDK is that it, by default, uses the V4 signature. Therefore I added an option to specify the Signer, so it stays compatible with previous versions.
Please review thoroughly, both code inspection and (automated) integration tests. Currently no integration tests are available specifically for S3. Therefore the implementation is needed to be tested manually, for now...
What I tested:

Greenfield install -> will download latest systemvm template automatically to S3.
Upload a template/iso
Download a template/iso
Restart of management server -> list available templates -> doesn't download them again if available.

Ping @wido @remibergsma @wilderrodrigues @karuturi

Initially it looks good, but with S3 it's very hard to test this. At a first glance the code looks good. Much better then it was

@borisroman checkstyle reports unused imports

@DaanHoogland You're right. Forgot to remove it in my last iteration. Thanks!

@borisroman @wido I made some comments in the PR. Those are not blocking, but would be very fruitful to get them in place in a second round of the refactor.
The public constructor and hashCode()/equals() methods can be address before the merge. But the refactor can take place within a couple of weeks.
@borisroman: feel free to drop by on 1st December, or any other date on that week, so we can do it together.
It LGTM :+1: based on my code review.
Cheers,
Wilder

@wilderrodrigues Fixed your comments, refactoring is for the next round ;)

LGTM. Reviewed the code and looks good.

LGTM, based on a set of tests that I run on this branch (which I rebased myself first). Screenshot is from an experimental Jenkins job (that runs the same tests I did manually until now).
These test do not cover your change, all they do is show you didn't break them. Someone else needs to review the code and we should do some (manual?) S3 tests. Or did you do that already @borisroman ?

@remibergsma Of course I tested manually! Nice Jenkins Job btw ;)
I see three LGTM's, two of which are based on code review, one on running integration tests (which showed nothing broke). I tested the changes in a physical setup, with S3 storage facilities. It does the same as before, so the refactor went well.
Do we merge, or wait for someone else to test? @wido @remibergsma @wilderrodrigues


pull request #392 results in a regression

i had updated to tip-of-master and discovered a regression in a test that performs
    id mock = [OCMockObject niceMockForClass:[MyClass class]];    [[[mock stub] andReturn:mock] sharedInstance];
based on the comment in #392

Previous code would only catch references to self when using the OCMStub/OCMExpect macros. Now we avoid self referential retain loops if you use the [[[foo stub] andReturn:foo] sharedInstance] API.

i reverted this patch locally, and the failing test no longer fails.
i have put a comment in pull request #392 that i would like to revert it.  also opening this issue to go with it.

Hey there.. sorry you are having issues. Can you expand on how the test is failing? I'd love to see a reduced test case if possible.

a reduced test-case is probably technically "possible", though we have a fairly large code-base, and reducing this down would be pretty time-consuming.
our test is failing during cleanup, typically with an EXC_BAD_ADDRESS either in the stopMocking that gets called from dealloc, or in the .cxx_destruct for something that at first appears unrelated.
i didn't dig much deeper other than to basically git bisect and discovered which past caused our regression, and then tried simply reverting the patch on the tip of master and finding that it resolved the problem.

what that implies to me off the top of my head then is that your test is "passing" because the mock is being leaked. I assume your codebase is ARC based. Would you be able to see if patching in https://github.com/erikdoe/ocmock/pull/391 fixes it for you as well?

i tried applying patch #391, and end up with a crash in the exact same place:
`Thread 1: EXC_BAD_INSTRUCTION (code=EXC_i386, INVOP, subcode 0x0)
#0	0x00007fff23d0517e in _CFRelease.cold.3 ()
#1	0x00007fff23bd5ee0 in _CFRelease ()
#2	0x00007fff23c28537 in __CFURLDeallocate ()
#3	0x00007fff23bd5a9f in _CFRelease ()
#4	0x00007fff5140d4c0 in _object_remove_assocations ()
#5	0x00007fff5140a4c2 in objc_destructInstance ()
#6	0x00007fff23bd5dcd in _CFRelease ()
#7	0x00007fff23c28537 in __CFURLDeallocate ()
#8	0x00007fff23bd5a9f in _CFRelease ()
#9	0x0000000102c8bfbd in _Block_byref_object_dispose at …
#10	0x00007fff522d0ca5 in _Block_object_dispose ()
#11	0x00000001028e71ae in __destroy_helper_block_e8_32r at …
#12	0x00007fff522d09c2 in _Block_release ()
#13	0x00000001054ed101 in -[OCMBlockCaller dealloc] at …/Frameworks/ThirdParty/OCMock/Source/OCMock/OCMBlockCaller.m:34
#14	0x00007fff514110d6 in objc_object::sidetable_release(bool) ()
#15	0x00007fff23b86f7f in -[__NSArrayM dealloc] ()
#16	0x00007fff514110d6 in objc_object::sidetable_release(bool) ()
#17	0x00000001054eca28 in -[OCMInvocationStub dealloc] at …/Frameworks/ThirdParty/OCMock/Source/OCMock/OCMInvocationStub.m:34
#18	0x00007fff514110d6 in objc_object::sidetable_release(bool) ()
#19	0x00007fff23b86f7f in -[__NSArrayM dealloc] ()
#20	0x00007fff514110d6 in objc_object::sidetable_release(bool) ()
#21	0x00000001054e5418 in -[OCMockObject dealloc] at …/Frameworks/ThirdParty/OCMock/Source/OCMock/OCMockObject.m:117
#22	0x00000001054e81bf in -[OCClassMockObject dealloc] at …/Frameworks/ThirdParty/OCMock/Source/OCMock/OCClassMockObject.m:40
#23	0x00007fff514110d6 in objc_object::sidetable_release(bool) ()
#24	0x00007fff5141275b in AutoreleasePoolPage::releaseUntil(objc_object**) ()
#25	0x00007fff5141267a in objc_autoreleasePoolPop ()
#26	0x00000001006da9b9 in -[XCTestCase(Failures) performFailableBlock:testCaseRun:shouldInterruptTest:] ()
#27	0x00000001006da8d7 in -[XCTestCase(Failures) _performTurningExceptionsIntoFailuresInterruptAfterHandling:block:] ()
#28	0x0000000100681b04 in __26-[XCTestCase performTest:]_block_invoke.334 ()
#29	0x00000001006ee302 in +[XCTContext runInContextForTestCase:block:] ()
#30	0x0000000100681273 in -[XCTestCase performTest:] ()
#31	0x00000001006c6807 in -[XCTest runTest] ()
#32	0x000000010067b84a in __27-[XCTestSuite performTest:]_block_invoke ()
#33	0x000000010067af74 in -[XCTestSuite _performProtectedSectionForTest:testSection:] ()
#34	0x000000010067b271 in -[XCTestSuite performTest:] ()
#35	0x00000001006c6807 in -[XCTest runTest] ()
#36	0x000000010067b84a in __27-[XCTestSuite performTest:]_block_invoke ()
#37	0x000000010067af74 in -[XCTestSuite _performProtectedSectionForTest:testSection:] ()
#38	0x000000010067b271 in -[XCTestSuite performTest:] ()
#39	0x00000001006c6807 in -[XCTest runTest] ()
#40	0x000000010067b84a in __27-[XCTestSuite performTest:]_block_invoke ()
#41	0x000000010067af74 in -[XCTestSuite _performProtectedSectionForTest:testSection:] ()
#42	0x000000010067b271 in -[XCTestSuite performTest:] ()
#43	0x00000001006c6807 in -[XCTest runTest] ()
#44	0x00000001006fd28e in __44-[XCTTestRunSession runTestsAndReturnError:]_block_invoke ()
#45	0x00000001006fd391 in __44-[XCTTestRunSession runTestsAndReturnError:]_block_invoke.84 ()
#46	0x0000000100695593 in -[XCTestObservationCenter _observeTestExecutionForBlock:] ()
#47	0x00000001006fd04d in -[XCTTestRunSession runTestsAndReturnError:] ()
#48	0x000000010065edd7 in -[XCTestDriver runTestsAndReturnError:] ()
#49	0x00000001006ea554 in _XCTestMain ()
#50	0x0000000100312c1b in main ()
#51	0x00007fff5227ec25 in start ()
#52	0x00007fff5227ec25 in start ()
`

That implies to me that you have and "andDo" block in there somewhere? In your "andDo" block do you extract Arguments or set return values on the invocation?
For extract arguments you need to be sure to use something like:
__unsafe_unretained FooObject *object;
[invocation getArgument:&object atIndex:2];

and for returns, I typically make them __autoreleasing.
Note that the __unsafe_unretained applies for not just objective c object types, but CF types, blocks, dispatch_queues, etc. Anything that could get retained/released.
I would also try running with NSZombieEnabled either via the environment variable, or Instruments.

as we have had for quite a while, we have an "andDo:" block.  it contains no local variables for extraction.  in one case of failure, the block is empty.
for now, i have no further time to spend debugging this.
given that our tests are working for us with the patch reverted, i'm going to go ahead and revert locally in the hope that #392 will be reverted.

deleted my last message … may have had bad derivedData situation … will re-assess.

Thanks @twitterkb for spending the time on it. FWIW I'm busy attempting to move Google's codebase from OCMock 3.4 to OCMock 3.6 hence all the recent patches. I agree that #391 is a crucial fix to OCMock.

It sounds like this will be fixed when #391 is merged. I'll mark it as blocked for now. Please retest when #391 is merged.

Assume fixed with #391.


Script starts from specific date we set

First off, thank you so much for this, you have no idea how helpful it is! I wanted to ask if it would be possible to add functionality to the script that allows it to start from a specific date I set as a parameter, and then iterate from there. The shifts I want to apply are dropped on Sundays for the week following today’s date, so I’d like the script to begin at that point.
Thanks again for your help!
FYI - I was unable to pick a label template to submit an enhancement request, currently it only says "none yet" under Labels.

I think having the script run at a specific day is something that should be done  using other methods.

Currently the script iterates through all available dates but I’d love for it to start from a specific date I set and then iterate through the dates following that. Ideally, it would allow me to specify particular dates to focus on and book shifts only for those. For example, if a week’s worth of shifts drop on a Sunday, a week in advance, I’d like to set parameters to book shifts for those specific dates.

Is it still working for you now?
On Wed, Dec 11, 2024, 2:41 PM D0S_4T @.***> wrote:

Currently the script iterates through all available dates but I’d love for
it to start from a specific date I set and then iterate through the dates
following that. Ideally, it would allow me to specify particular dates to
focus on and book shifts only for those. For example, if a week’s worth of
shifts drop on a Sunday, a week in advance, I’d like to set parameters to
book shifts for those specific dates.
—
Reply to this email directly, view it on GitHub
https://github.com/Amazon-Hate-it-But-Need-it/Amazon-AtoZ-VET-Flex-Bot/issues/4#issuecomment-2537349473,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJZSPJ4IK5ZGPO3AGCBSM32FC5QVAVCNFSM6AAAAABSZ6JTD6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMZXGM2DSNBXGM
.
You are receiving this because you are subscribed to this thread.Message
ID:
<Amazon-Hate-it-But-Need-it/Amazon-AtoZ-VET-Flex-Bot/issues/4/2537349473@
github.com>


Re-run validations on resetForm

Bug, Feature, or Question?
When resetForm is called, it should be possible to also re-run the form's validations. Whether this should be an optional argument to resetForm, or some automatic behaviour tied to isInitialValid I'm not sure.
Current Behavior
Upon resetting my form, there's no way to run validations against the new values./
Desired Behavior
I can run validations against the form's new values.
Suggested Solutions
There's a few possible solutions:

Allow resetForm to take an optional second argument to indicate whether to run validations
Expose a performValidation function or something similar as an escape hatch
If isInitialValid is false, resetting the form should should also cause validations to be re-run

Info

Formik Version: 0.11.0.beta.1
OS: macOS 10.13.2
Node Version: 9.3.0
Package Manager and version: npm 5.6.0

This has been shipped in v0.11. You can now call validateForm()

@jaredpalmer
I'm caring about this issue.
Could you please give me some example?
I want to reset validation after form was submitted.
onSubmit={async (values, { setSubmitting, setStatus, setErrors, resetForm }) => {
            const { title, achievement, plan, description, comment } = values;

            let issues = [];
            if (isEmpty(values.issues)) {
              issues = []
            } else {
              issues = values.issues.map(issue => ({ id: issue }));
            }

            try {
              await createDailyReport({
                variables: {
                  title,
                  achievement,
                  issues,
                  plan,
                  description,
                  comment
                }
              });

              resetForm({});
              setStatus({success: true})
            } catch (error) {
              setStatus({success: false});
              setSubmitting(false);
              setErrors({submit: error.message})
            }
          }}

@jaredpalmer This is exactly the issue that I'm facing.
My code like this:

         onSubmit={async (values, { setSubmitting, setStatus, setErrors, resetForm }) => {
            const { title, achievement, plan, description, comment } = values;

            let issues = [];
            if (isEmpty(values.issues)) {
              issues = []
            } else {
              issues = values.issues.map(issue => ({ id: issue }));
            }

            try {
              await createDailyReport({
                variables: {
                  title,
                  achievement,
                  issues,
                  plan,
                  description,
                  comment
                }
              });

              resetForm({});
              setStatus({success: true});

            } catch (error) {
              setStatus({success: false});
              setSubmitting(false);
              setErrors({submit: error.message})
            }
          }}

I want to re-run validations after submitting the form. How can we do that?
Could you please give me an example?

Not sure whether I'm doing this wrong, but validateForm doesn't capture the state of the form right after reset. So you cannot do chained reset & validate in one method. Also, reseting the form doesn't trigger the validation defined by default with validateOnChange and validateOnMount.


fail gracefully for types that are not found

fail gracefully for types that are not found.

I am not sure 'silently ignoring' and 'failing gracefully' are the same thing -- if you've written a walker for code but haven't addressed some of the nodes in that code you probably have a problem, and I don't think we're doing client code a service by hiding that.


adding work and about me to my previous project

added work sections using both grid and flexbox layouts
added buttons to view and download my resume
added about me section
added languages and skills section

@prolajumokeoni  thanks for the review  i have implemented the required changes

@prolajumokeoni and thanks for the feedback the website looks pretty good now

@OLIPLICHE thanks for the review i have fixed the problem

@OLIPLICHE @prolajumokeoni  kindly check my work I have made the changes


ENYO-5531: Fix not to scroll to wrong position via 5way navigation in RTL languages

Checklist

[x] I have read and understand the contribution guide
[x] A CHANGELOG entry is included
[ ] At least one test case is included for this feature or bug fix
[x] Documentation was added or is not needed
[ ] This is an API breaking change

Issue Resolved / Feature Added
A horizontal Scroller scrolls to unexpected position during 5-way key navigation in RTL mode.
Resolution
To prevent scrolls originating from focus events, we reset the scrollLeft of the Scroller when receiving onscroll event. But we did not consider the RTL case. So I update the scrollLeft properly based on the scrollbounds and the RTL mode of the Scroller
Links
ENYO-5531
Comments

LGTM


Fix Duration.between throwing an exception in some scenarios

Description
Flips the arguments when calling Duration.between and negates the value when logging cache refreshes in AccessTokenCache. This is done as some TokenCredentials use a static OffsetDateTime.MAX as the expiration time for the token, and in some cases using OffsetDateTime.MAX as the second argument to Duration.between can cause an invalid year range exception to be thrown. The exception happens due to the implementation of Duration.between in some versions of Java changes the time zone of the second argument to match the first, resulting in OffsetDateTime.MAX needing to rollover its second, minute, hour, day, month, and year values due to the time zone change, causing its 999,999 year value (which is the max allowed by OffsetDateTime) to become 1,000,000. Flipping the arguments to Duration.between resolves this as the first argument doesn't have its time zone mutated, meaning OffsetDateTime.MAX won't be mutated, and should be safe always as OffsetDateTime.MAX uses the most minimal time zone offset allowed, meaning any Temporal near the max year limit won't need to rollover values. This does force the Duration.between to be .negated() as the values have flipped.
There are a few other small changes in this PR to have TokenCredential subtypes implement the synchronous token retrieval API instead of relying on the default implementation in TokenCredential.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

Failing tests and pipelines are due to changes other than this PR