OS does not notify when a login attempt failed

disable cookies in your browser and afterwards delete all cookies in your browser
start the OS server and try to login as admin
OS now correctly warns you that cookies are required, proceed anyway to login as admin

result: your are correctly not logged in but without any notice that the login failed. You see the content of OS as if you were a guest. That is in principle correct. but users might still wonder why they cannot do anything. Therefore OS must issue an error message If a login attempt failed. if it failed because of disabled cookies, this should displayed. with this info.
The error message should be displayed like a message with red text to assure that the users really get this/cannot overlook it.

@FinnStutzenstein If you find a quick solution for 2.1 please implement. Otherwise we move it to 2.2.

@donovaly @emanuelschuetze hiw do you disable cookies? In you browser settings or with a plugin (which plugin)?

how do you disable cookies?

In the browser settings. In some organizations they are by default disabled. I don't know how this is technically done but I have seen this. Personally I always browse with disabled cookies unless I need them (like now to use GitHub). To achieve this one can explicitly disable them or use the safe browse mode. Also on my smart phone there is a privacy browse mode that denies cookies by default.

@donovaly please retest, should be fixed with the PR.

@donovaly please reopen if this is not fixed for you.

@donovaly please retest, should be fixed with the PR.

This is fixed in beta3. many thanks!


bug: validate the etcd endpoint in webhook

Now it's legal to have a YAML like this, specifying the meta storage type as etcd but not giving the endpoint:
spec:
  metaNode:
    storage:
      type: ETCD
      etcdEndpoint:

It's a bad YAML and should be rejected by webhook.

I believe this issue is resolved by #98, so I'm closing it.


Can't compile from source, whilst following Wiki.

Mvn package results - https://pastebin.com/i6FHRm9G
This was a clean clone from the repo, not sure how I should go about this issue.

Solved, used "mvn package -DskipTests" this should be added to the Wiki.

@camdenorrb wiki is open, you can go ahead and add the change :D


docs(window): fix import syntax

Fixes small glitch in import syntax for window example.

Pull Request Test Coverage Report for Build 8072

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.805%

Totals

Change from base Build 8066:
0.0%

Covered Lines:
5242

Relevant Lines:
5415

💛  - Coveralls


CPU/Memory scalers should allow scaling to 0

Proposal
There is legitimate use case where we want to have a CPU scaler and another one, and still want to scale to 0 (the other scaler will allow to scale back to 1).
For ex, you want to stop during closed hours your apps and want to scale based on CPU during open hours. For this you'll want to create a cron scaler and a cpu scaler.
As I understand, CPU scaler uses the default CPU autoscaling features, so scaling to 0 will means to remove the CPU condition from the HPA.
Idealy, as CPU is not a stable metric, we should be able to configure the threshold after which we decide that there is no more "traffic" on the CPU (for ex: 5%).
Use-Case
No response
Anything else?
No response

I've updated the issue name to include Memory scaler given that will be the same situation.
However, did you try doing this with the current version? In theory, if it doesn't meet your target value it should scale down to 0 but I might be wrong as it's been a while since I've used that one.

@tomkerkhove yes, we did try it and it didn't scale to 0.
By the way, it's written in the documentation that it didn't work.

Yeah, it cannot work, because the CPU/Memory load is being calculated from the pod that the app is running, so if you have 0 replicas it can't do anything :)
@loicmathieu let's say we implement this and allow to scale to zero after some threshold (eg. the 5% you mentioned), how would the scale 0->1 work in this case?

By another scaler, in my use case I have Kafka based scaler.
So this functionality should not be enabled by default, if you want scale to 0 and use a CPU/Mem scaler you must have another scaler and opt-in in the CPU/Mem scaler via a threshold.
Another use case is to idle you apps during closed hours, it's very convenient to save money on cloud deployment.
Why I think it's important is also that CPU/Mem scaler are "low level" scaler handled by k8s itself, so if Keda didn't work, they will still allow to scale. That's why I wanted to add a CPU scaler to have a fallback scaler if Keda didn't work (or cannot connect to my external Prom or my Kafka broker).

Hi @loicmathieu
For fallback scenarios, KEDA also supports a fallback configuration :)
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
  name: {scaled-object-name}
spec:
  ...
  fallback:                                          # Optional. Section to specify fallback options
    failureThreshold: 3                              # Mandatory if fallback section is included
    replicas: 6                                      # Mandatory if fallback section is included
  ...
  triggers:
  ...

using it, you could define the amount of replicas that you'd like to have in case of KEDA can't connect to the upstream, using CPU it's not necessary only for fallback situations

@JorTurFer I know fallback configuration, but CPU scaler allow to still scale when metrics cannot be gathered from Keda, this is different than just providing an hardcoded value.

There is still value for this feature request without fallback though - If we have multiple scalers, we do allow people to use 0 as a min replaces or not?

If we have multiple scalers, we do allow people to use 0 as a min replaces or not?

I'm OK to use 0 as a min replaces

But do we even support it, because AFAIK we don't


Report UpstreamGone.

Report UpstreamGone. Resolves #19.
UpstreamGone is set when a branch has no remote tracking reference but still has an upstream configured. This is similar to the git warning:
Your branch is based on 'origin/master', but the upstream is gone.
(use "git branch --unset-upstream" to fixup)

Reading side for posh-git is https://github.com/cmarcusreid/posh-git/commit/4fa6c8c74a8c90a7777bb217aec5f370aca0ee89. I'll submit a PR there once this is merged and the new executable is published.

@cmarcusreid, can you please update libgit to the latest release?

@DoCode I've previously had some functionality issues when upgrading libgit2, so I'd like to do that separately from this change. If you could share additional details in how to setup for your scenario in #18 that'd make it easier to validate the LFS bits. Of course, please also feel free to submit a PR if you want to make the change.


Cache misses due to path-based versioning and its normalization

This run using actions/cache@v2 shows how a cache created by the update-deps job is not hit by the jobs in the test matrix that depend on update-deps and use the same key. This works in actions/cache@v1, so it looks like a regression to me.
What's more peculiar, each of the three test jobs reported to have successfully stored its cache state under this same key.
In the next run, all jobs hit the cache, but which state did they get?

Hey @mzabaluev, thanks for spotting this.  Can you please enable step debugging, change the key, and re-run the workflow?  This will provide some more output so we can see what's going on.

@dhadka Here you are
I see that the 'Post Cache cargo registry index' step in the producer job gets to write its cache first:
Resource Url: https://artifactcache.actions.githubusercontent.com/SwZ48ggH2fmptrBol7q4o6DwD74REZ2KvEjuDiE8Jb9dgsMc8M/_apis/artifactcache/caches/58

Then the 'Post Cache cargo registry' step allocates at the same resource:
Resource Url: https://artifactcache.actions.githubusercontent.com/SwZ48ggH2fmptrBol7q4o6DwD74REZ2KvEjuDiE8Jb9dgsMc8M/_apis/artifactcache/caches/59

There is also intra-action state CACHE_KEY which is set by the caching steps prior to the above, but in the opposite order:
2020-05-27T02:11:21.4628234Z ##[debug]Save intra-action state CACHE_KEY = cargo-registry-debug1-39f2b8d68761c35ef5f7317c495a2e84f0aed5d34a5d724b2144d58bf6ed66b3
...
2020-05-27T02:11:22.0139963Z ##[debug]Save intra-action state CACHE_KEY = cargo-index-debug1-5d9c7f87b512b22e0543a050c81e91b650b44aff

A consumer job queries and fails with:
Resource Url: https://artifactcache.actions.githubusercontent.com/SwZ48ggH2fmptrBol7q4o6DwD74REZ2KvEjuDiE8Jb9dgsMc8M/_apis/artifactcache/cache?keys=cargo-registry-debug1-39f2b8d68761c35ef5f7317c495a2e84f0aed5d34a5d724b2144d58bf6ed66b3&version=55646160c9f2cc2a37adf24b94db1ec7546d85f0e81c7dde1c978bdca39a013e

Then in the 'Post Cache cargo registry' step, it saves a new value:
Resource Url: https://artifactcache.actions.githubusercontent.com/SwZ48ggH2fmptrBol7q4o6DwD74REZ2KvEjuDiE8Jb9dgsMc8M/_apis/artifactcache/caches/60

@mzabaluev I think I see what's going on.  @v2 introduced a version field, which is used to detect when the configuration of the cache action changes.  This includes what kind of compression it's using (gzip vs zstd) and the path.  From what I see, update-deps is using the path
  with:
    path: ~/.cargo/registry
          !~/.cargo/registry/src

whereas the test step is using:
  with:
    path: ~/.cargo/registry

If you make the path identical in both, you should see it behave as expected.
This was intended to prevent a user from changing the path but using the same key, since the existing cache entry (if any) wouldn't have the right content.  However, in your particular case where you're just excluding a path, it's less helpful.

@dhadka

If you make the path identical in both, you should see it behave as expected.

On Linux and Mac it does, on Windows it doesn't: https://github.com/mzabaluev/github-actions-playground/actions/runs/116588403
I'm guessing that CRLF line endings screw up the version hash.
Consider making the normalization function invariant to whitespace separating the paths, including any line ending characters. The path parameter really could help accepting a list, but I gather that https://github.com/actions/toolkit/issues/184 is preventing that.

For more fun with cache key normalization across OSes, see https://github.com/actions/runner/issues/498

Any updates on this?
I'm trying to decide which actions/cache version is a less buggy fit for our needs, between this and v1 somehow failing to hit the primary key and going for a truncated key it has somehow stored at some point, despite not being given any restore-keys to try prefix searching.

@mzabaluev I don't think this is related to newlines, since both Windows and Linux are reading from the same file, so the line endings wouldn't be changing.  Your issue about new lines and hashFiles is valid, however, since the newlines are being changed by Git.
I suspect this is the result of https://github.com/actions/cache/issues/301.  There's an issue with Windows bsd tar and zstd causing it to hang, so it falls back to gzip compression.

@mzabaluev I've created this PR to trim any leading and trailing whitespace from the path and restore keys, which would also remove any leftover Windows newline characters (\r) after the split - https://github.com/actions/cache/pull/343.  However, as I mentioned in the previous comment, I don't think newlines are causing the issue you see since the yml files don't change across OSes.

@mzabaluev Agreed.  I meant to say that #343 will fix any newline differences in the path which would cause a different version hash, but you'll likely still see Windows creating a different cache because it uses a different compression method.
The version hash includes the compression method, but we fall back to using Gzip on Windows due to bug #301.

The version hash includes the compression method, but we fall back to using Gzip instead of Zstd on Windows due to bug #301.

I hope in the end state it would be possible to share cache state no matter which runner created it, with the restore action being able to adapt to a possibly different archival format; or maybe this and other tar-related issues will be solved by settling on a single flavor of tar that works across all OSes. The disparate cache entries for Windows and Unix would increase our cache pressure twofold and duplicate the dependency fetching work for Windows jobs without a good reason for it.

Yes, we still need tar in the cache action to be fixed.

👋 @mzabaluev we are currently looking into this. For now you could try this approach if it works for you.

I created this repo to illustrate the issue i'm having which is related to this bug.
https://github.com/y-nk/cache-in-container/actions/runs/3427866818
The problem being that an action building outside of a container has a certain path, and so that path cannot be restored once inside a container (bc the context of the container is different)

@mzabaluev @y-nk we are tracking this issue in #984. Please check the current proposal there and provide comments/feedback if any. Closing this as duplicate.

@mzabaluev @y-nk We have released a new beta release which should fix this issue. Try tag<EMAIL_ADDRESS>Head over to discussion for feedback: https://github.com/actions/cache/discussions/1019

With actions/cache@v3, a cache key is hit on Windows after being created on Linux.
As evidenced in this workflow (it still fails, but due to an evident problem with the installation of Cargo): https://github.com/mzabaluev/github-actions-playground/actions/runs/3783738410/jobs/6432524102


But for The beginning after the end this one it won't load any chapters, it just give the No chapters found pop up.
i also tried it on both tachiyomi and tachij2k also and both had the same issue with it.
I know it has chapters because you can open it in the browser and see them.
Expected behavior
it should load the chapters
Actual behavior
it doesn't load the chapters.
Crash logs
No response
Mihon version
0.16.5
Android version
Android 11
Device
lenovo tab p11
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have gone through the FAQ and troubleshooting guide.
[X] I have updated the app to version 0.16.5.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

Mihon doesn't provide any extensions itself, you will have to take this to whoever is maintaining that extension (your repo provider).


Fix dialyzer no_match warning

Before this change, the index macro was generating these warnings when
used:
lib/ex_admin/index.ex:149: The variable _@48 can never match since
previous clauses completely covered the type 'nil'
lib/ex_admin/index.ex:149: The variable _@18 can never match since
previous clauses completely covered the type 'nil'
The call to unquote(contents) could change the value of that variable,
but dialyzer isn't smart enough to realize that.

thanks


Refactor tx construction (by conflating encoding with signing)

Issue Number
#893
Overview

[x] I have tried to concentrate tx-construction in one place constructGenericSignedTx inside Jormungandr.Binary. It becomes simpler to construct / encode correct transactions. It becomes more difficult to construct invalid ones (like with different number of witnesses and inputs)
[x] I have removed signData and related goldens. Witness construction is already covered indirectly through mkStdTx goldens, so it should be a minor loss.
[x] I have removed fragmentId. withHeader now does the job by returning (Hash "Tx", SealedTx) (could be renamed to seal?)

Comments

Next steps: remove putSignedTx, delegationFragmentId and add constructDelegationTransactionFragment
↩ ⚠  Depends on #1024
⚠ Potentially a bit scary amount of changes here. Recommend viewing by commit.
⚠ The lost flexibility when encoding transactions could turn out to be a bad thing

bors try

@anviking , sorry, I am trying to move on a bit with this task. So I started to "blindly" follow the Bachus grammar without introducing any particular abstraction more than necessary:
This looks pretty usable, concise, easy to read and easy to maintain to me. I think it covers everything we need and allow for great simplification and clean-up. Mind if I carry on?
NOTE: It probably doesn't compile as this is just a first draft quickly written to get the gist of it.
data MkFragment
    = MkFragmentSimpleTransaction
        TxWitnessTag
    | MkFragmentStakeDelegation
        TxWitnessTag
        DlgCertAuth
        ChimericAccount
        (XPrv, Passphrase "encryption")

data DlgCertAuth
    = DlgCertAuthNone
    | DlgCertAuthFull PoolId
    | DlgCertAuthRatio

putFragment
    :: Hash "Genesis"
    -> [(TxIn, TxOut), (XPrv, Passphrase "encryption")]
    -> [TxOut]
    -> MkFragment
    -> Put
putFragment (Hash block0Hash) inputs outputs = \case
    -- SIMPLE-TRANSACTION = TRANSACTION
    MkFragmentSimpleTransaction witnessTag -> do
        putTransaction witnessTag inputs outputs

    -- STAKE-DELEGATION = DLG-CERT TRANSACTION STAKE-AUTH
    MkFragmentStakeDelegation witnessTag delegationTag account credentials -> do
        putDelegationCertificate account delegationTag
        putTransaction witnessTag inputs outputs
        putStakeAuthentication account credentials
  where
    fragmentId = blake2b256 $ runPut $ putInputsOutputs inputs outputs

    -- TRANSACTION =
    --     SIZE-ELEMENT-8BIT ; number of inputs
    --     SIZE-ELEMENT-8BIT ; number of outputs
    --     *INPUT            ; as many as indicated in the number of inputs
    --     *OUTPUT           ; sa many as indicated in the number of outputs
    --     *WITNESS          ; as many as indicated in the number of inputs
    putTransaction inputs outputs witnessTag = do
        putInputsOutputs inputs outputs
        mapM_ (flip putWitness witnessTag) inputs

    putInputsOutputs inputs outputs = do
        guardLength (<= maxNumberOfInputs) inputs
        guardLength (<= maxNumberOfOutputs) outputs
        putWord8 $ toEnum $ length inputs
        putWord8 $ toEnum $ length outputs
        mapM_ putInput (fst <$> inputs)
        mapM_ putOutput outputs

    -- INPUT             = INPUT-UTXO / INPUT_ACCOUNT
    -- INPUT-UTXO        = IDX VALUE FRAGMENT-ID
    -- INPUT-ACCOUNT     = %xff VALUE UNTAG-ACCOUNT-ID
    -- IDX               = %x00-fe
    putInput (TxIn inputId inputIx, inputValue) = do
        -- TODO invariant about inputIx /= 0xff
        putWord8 . toEnum . fromEnum $ inputIx
        putWord64be $ getCoin inputValue
        putByteString $ getHash inputId

    -- OUTPUT            = ADDRESS VALUE
    putOutput (TxOut outputAddr outputValue) = do
        putAddress outputAddr
        putWord64be $ getCoin outputValue

    -- WITNESS           = WITNESS-OLDUTXO / WITNESS-UTXO / WITNESS-ACCOUNT / WITNESS-MULTISIG
    -- WITNESS-OLDUTXO   = %x00 LEGACY-XPUB LEGACY-SIGNATURE
    -- WITNESS-UTXO      = %x01 ED25519-SIGNATURE
    -- WITNESS-ACCOUNT   = %x02 SINGLE-ACNT-SIG
    -- WITNESS-MULTISIG  = %x03 MULTI-ACNT-SIG
    putWitness ((TxIn inputId inputIx, inputValue), (xprv, pwd)) = \case
        TxWitnessUTxO -> do
            putByteString $ sign (block0Hash <> fragmentId) (xprv, pwd)
        TxWitnessLegacyUTxO -> do
            putByteString $ sign (block0Hash <> fragmentId) (xprv, pwd)
            putByteString $ unXPub $ getRawKey $ publicKey xprv
        TxWitnessAccount ->
            error "putWitness: TxWitnessAccount: not implemented"
        TxWitnessMultisig
            error "putWitness: TxWitnessMultisig: not implemented"

    -- DLG-CERT         = UNTAG-ACCOUNT-ID DLG-TYPE
    -- DLG-TYPE         = DLG-NONE / DLG-FULL / DLG-RATIO
    -- DLG-NONE         = %x00
    -- DLG-FULL         = %x01 POOL-ID
    -- DLG-RATIO        = %x02-FF %x02-08 2*8DLG-RATIO-POOL
    -- DLG-RATIO-POOL   = %x01-FF POOL-ID
    -- POOL-ID          = 32OCTET
    putDelegationCertificate (ChimericAccount accountId) = \case
        DlgCertAuthNone -> do
            putByteString accountId
            putWord8 (stakeDelegationTypeTag DlgNone)
        DlgCertAuthFull poolId -> do
            putByteString accountId
            putWord8 (stakeDelegationTypeTag DlgFull)
            putByteString poolId
        DlgCertAuthRatio ->
            error "putDelegationCertificate: DlgCertRatio: not implemented"

    -- STAKE-AUTH       = ACCOUNT-SIG
    -- ACCOUNT-SIG      = %x01 SINGLE-ACNT-SIG
    -- SINGLE-ACNT-SIG  = ED25519-SIGNATURE
    putStakeAuthentication (ChimericAccount accountId) (xprv, pwd) = do
        putWord8 1
        putByteString $ sign accountId (xprv, pwd)

@KtorZ Ehrm… just be warned, some of the details might be tricker than you think. May you make sure to open a separate pr? 🙏
My main concerns:

From looking at it, to me it doesn't look like all the hashes are calculated correctly. The payload should be included in the txHash for the witnesses. And I thought the fragmentId was the hash of everything, but I might be wrong (not sure if we have tested this on non-simple txs)
I know you say "don't do unnecessary abstraction". But I'd still be slightly concerned about restricting our flexibility (e.g. you only allow one witness type for all inputs), particularly if the alternative is not noticeable worse.

May you make sure to open a separate pr?

I will.
Also, it's first draft. I may be wrong.


Unclear "Cannot access property X of non-object type *" [NTI]

I have a very large closed codebase for which I'm experimenting with NTI.  I have this problem which I can't find how to reproduce in an isolated form in the debugger:
ERROR - Cannot access property __t of non-object type *.
/**
 * @param {*} obj
 * @param {!my.ns.SomeConfigObject} jsonConfig
 * @protected
 */
my.ns.NodeOptions.prototype.__buildInternalJSON = function(obj, jsonConfig) {
    obj.__t = my.ns.Helper.someMethod();
    obj.aaa = someOtherMethod();
    ...
};

Now there are thousands of identical cases in my codebase. I gather that this might be happening because NTI thinks this has multiple conflicting type definitions, but the param is unambiguously "*" which means any type according to https://developers.google.com/closure/compiler/docs/js-for-compiler
Is this a bug? How can I diagnose this, and hopefully find a way to improve the error message?

OK, it's much simpler than that...
/** @param {*} o */
var a = function(o) {
    o.x = 1;
};

Test case:
https://closure-compiler-debugger.appspot.com/#input0%3D%252F**%2520%2540param%2520%257B*%257D%2520o%2520*%252F%250Avar%2520a%2520%253D%2520function(o)%2520%257B%250A%2520%2520%2520%2520o.x%2520%253D%25201%253B%250A%257D%253B%250A%26input1%26conformanceConfig%26externs%26refasterjs-template%26includeDefaultExterns%3D1%26CHECK_TYPES%3D1%26CHECK_TYPES_NEW_INFERENCE%3D1%26PRESERVE_TYPE_ANNOTATIONS%3D1%26PRETTY_PRINT%3D1
My case is a method which coerces an arbitrary parsed JSON object into a proper class instance.
Didn't find anything about this here:
https://github.com/google/closure-compiler/wiki/Using-NTI-(new-type-inference)
But I looked here:
https://github.com/google/closure-compiler/wiki/A-word-about-the-type-Object
So perhaps I should be using Object<?,?>?

Right, this is working as intended. The * type is not an object, it includes objects but also scalar types. If what you were trying to say is "I don't care about the type, don't typecheck", you should be using the unknown type, written?.
To use * as an object, you have to downcast it first.

Thanks @dimvar. The docs say:

The ALL type	{*}	Indicates that the variable can take on any type

I take that to mean /** @type {*} */var x; could be an Object but could be something else. So under NTI you have to explicitly cast it to tell the type system it can only be an Object?
I've written the following ready to append to https://github.com/google/closure-compiler/wiki/Using-NTI-(new-type-inference):

ALL type {*} and warning "Cannot access property X of non-object type undefined"
From the docs, The ALL type {*} means any type including Object.  Unlike the old type inference, with NTI, this must be downcasted if you want to use it as an Object.

In old type system, this is OK:

/** @type {*} */
var x;
x.y = 1;
> In NTI, you get ```WARNING - Cannot access property y of non-object type undefined.```, and must change it to:
> ``` javascript
/** @type {*} */
var x;
/** @type {Object} */(x).y = 1;

Firstly is this correct? And secondly this downcast doesn't work:
input0:3: WARNING - invalid cast - the types do not have a common subtype
from: undefined
to  : Object|null
/** @type {Object} */(x).y = 1;

https://closure-compiler-debugger.appspot.com/#input0%3D%252F**%2520%2540type%2520%257B*%257D%2520*%252F%250Avar%2520x%253B%250A%252F**%2520%2540type%2520%257BObject%257D%2520*%252F(x).y%2520%253D%25201%253B%250A%26input1%26conformanceConfig%26externs%26refasterjs-template%26includeDefaultExterns%3D1%26CHECK_SYMBOLS%3D1%26CHECK_TYPES%3D1%26CHECK_TYPES_NEW_INFERENCE%3D1%26MISSING_PROPERTIES%3D1%26PRESERVE_TYPE_ANNOTATIONS%3D1%26PRETTY_PRINT%3D1
Is this a new bug?

@dimvar I edited my comment (was being an idiot), it makes sense now. Please let me know if above wiki edit is OK before I go ahead.

Unlike the old type inference, with NTI, this must be downcasted if you want to use it as an Object.

Actually, even in OTI you have to downcast * to use it as an Object. See the example below. NTI doesn't change the meaning of *. The difference is that NTI is stricter about what you can access properties on. In OTI, when you access a property on some type T, it will (unsafely) not warn you if the property exists on any subtype of T. NTI warns. I can add a section in the wiki to explain the missing-property issues, it is not specific to *.
http://closure-compiler-debugger.appspot.com/#input0%3Dfunction%2520f(%252F**%2520*%2520*%252F%2520x)%2520%257B%250A%2520%2520var%2520%252F**%2520!Object%2520*%252F%2520y%2520%253D%2520x%253B%250A%257D%26input1%26conformanceConfig%26externs%26refasterjs-template%26includeDefaultExterns%3D1%26CHECK_SYMBOLS%3D1%26CHECK_TYPES%3D1%26MISSING_PROPERTIES%3D1%26PRESERVE_TYPE_ANNOTATIONS%3D1%26PRETTY_PRINT%3D1

@dimvar Thanks, understood. I take it you'd prefer I don't add my wiki edit above then.

Yes, let's leave it out.


[ALLUXIO-2544]  Fix failing mount

https://alluxio.atlassian.net/browse/ALLUXIO-2544

alluxio-bot, check this please

Is this linked to the right ticket?

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13266/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13268/
Test PASSed.

@aaudiber thanks for pointing out the wrong JIRA number, it should be ALLUXIO-2542 rather than ALLUXIO-2544

@aaudiber @jsimsa @yupeng9 , I updated the PR. PTAL

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13270/Failed Tests: 0
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13273/
Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13275/
Test PASSed.

Merged build finished. Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13280/
Test PASSed.


User Story/Criteria/Readme

Write user story, acceptance criteria, readme

Finalizing, waiting of final deployment of project to wrap up.


Release version 2.0.0

The major version bump is due to the API change in
PuppetSyntax::Manifests#check.
I'm not 100% sure that the major version bump is required, so would appreciate any feedback.

i think thats a good enough reason for a major version bump.
as is dropping support of 2.7

This looks good to @ajlanghorn and I. This is the diff we used to compare the currently released version with the top of master: https://github.com/gds-operations/puppet-syntax/compare/v1.4.1...b77f48079e


Englishify

Filled out docstrings, corrected for English, and applied some PEP8 style rules.
The commits are independent, so I can revert parts of this PR if you disagree with any changes..

Thank you so much for is enormous clean.

The only strange thing to me is the replacement of "sampling_rate" to "sample_rate".
I never known the good usage. Is there a diff between US and UK ?
But I don't care.

I have always used "sample rate" exclusively. Upon closer examination it appears that the two are used with about equal frequency.


.require() with expose: true use backslashes on Windows

When using .require() method on Windows with the expose:true flag, the IDs are being generated with backslashes, like /apps\\Call instead of /apps/Call, so later they can't be found when require()ing them because they are not found. I think this is somewhat related to https://github.com/substack/node-browserify/pull/503/files and https://github.com/substack/node-browserify/pull/1096/files and probably the fix would be the same, just replace the backslashes previously to set the path at the browserify output.

Probably it would be also a good idea to sanitice this way all the paths to be sure they are only using slashes and not backslashes...

Taking a look on the code, I suspect the problem is at this path.resolve(). I don't have a Windows machine here to try it, though :-(

This issue is currently preventing me upgrading from a fairly old version of Browserify, so I'd be great to see it resolved. Hope the PR helps.

Should be fixed in 12.0.2.

this issue is still exist in windows for external dependencies section. Could anyone please help me how to resolve that..


Automatically register routes to "/api" group

[ ] Detect ApiService in every Resources
[ ] Register Routes to "/api" group


Upgrade to non-tagged release of nginx

Point release is out so we should use that

Maybe we should wait for dependency updates until we have scheduled regression testing. That's generally what I do since things can change quickly.


Make LLM map/gen first-class citizen in dc

Come up with higher level LLM UDF.
When analyzing data via LLMs (text, images), step by step we have quite a lot of repetitive code like:
def extract_performance(chunk: Chunk) -> CompanyPerformance:
    client = OpenAI()

    completion = client.beta.chat.completions.parse(
    model="gpt-4o-2024-08-06",
    messages=[
            {
                "role": "system",
                "content": "You are a financial analyst and expert. Your task is analayzing public traded company reports.",
            },
            {
                "role": "user",
                "content": f"Given a text extracted from a 10-K SEC form. Return an importance number from 0 to 10 of this text for company performance analysis. Also return an sentiment as a single word - Positive, Negative, Neutral as a predictor how market can react on this information. And an explanation of both - importance and sentiment.\n\n{chunk.text}",
            },
        ],
        response_format=CompanyPerformance
      )

    message = completion.choices[0].message
    if message.parsed:
        return message.parsed
    else:
        return CompanyPerformance(importance=0, sentiment="Neutral")

dc = (
    DataChain.from_dataset("sec-chunks")
      .limit(20)
      .settings(parallel=8)
      .map(pefrormance=extract_performance)
      .save("sec-sentiments")
)

Which is decent enough already, and not very complicated, but I wonder if we can make LLM maps/gens a first class citizen in the language:
PROMPT = "Given a text extracted from a 10-K SEC form. Return an importance ..."

dc = (
    DataChain.from_dataset("sec-chunks")
      .limit(20)
      .settings(parallel=8)
      .llm(client, CompanyPerformance, prompt=PROMPT)
      .save("sec-sentiments")
)

That's great idea!
It would help to identify an actual api - how to pass prompt, how to change ChatGPT to something else, etc
Also, ideally this functionality should be implemented outside of DC class while still use natively. Any idea on how to implement this?
I'm asking because we might have multiple connectors like llm and we cannot put everything in the DC class which is already fat class.

Yes, I saw outlines - but I was considering it more as a wrapper for open models (vs APIs like OpenAI, etc) ... but yes, if they have a full support and also full support for different types of data (images, texts, etc) - yep we can and should use something like that.

Also, ideally this functionality should be implemented outside of DC class while still use natively. Any idea on how to implement this?

Agreed on DC being too overloaded. In this case can be a function that we pass to gen, map as a start I guess.
When I was suggesting llm() approach that was primarily for the mental exercise reason. Can we completely or to a certain degree reimagine a classical dataframe-like API considering that we have LLMs? Just thinking in that terms is useful I think. But overall, I agree, if there no clear benefits / strong ideas - then we should do it on the lib level.


Test unitaire avancé

Sujets avancés pour le test unitaire: tests paramétrés, mocks, tests flaky, fuzzing.
+	if (first_arg == argc) {
+		/* http://twitter.com/#!/marnanel/status/132280557190119424 */
+		time_t now = time (NULL);
+		struct tm *localnow = localtime (&now);
+		if (localnow &&
+		    localnow->tm_hour == 0 && localnow->tm_min == 1)
+			fprintf (stderr, "gimme gimme gimme\n");

man breaks automated tests at 00:30

JUnit parameterized tests

parameterized tests in Rust

Hypothesis pour le test paramétré en Python

test containers: https://testcontainers.com/?uclick_id=9adae449-8802-4cf0-87c1-230f10a78539

[FR] les mocks

Mockito, en Java https://github.com/mockito/mockito

mocks and stubs in Ruby

an empirical analysis of flaky tests

DeFlaker automatically detecting flaky tests

A large-scale longitudinal study of flaky tests

Test case prioritization

Test Case Prioritization in Continuous Integration environments: A systematic mapping study

In praise of property-based testing

Hypothesis: A new approach to property-based testing

Jqf: Coverage-guided property-based testing in java

Metamorphic testing: A review of challenges and opportunities

How effectively does metamorphic testing alleviate the oracle problem?

Metamorphic testing for web system security

Death assertions

factory_bot. A library for setting up Ruby objects as test data.

Testing the Unknown: A Framework for OpenMP Testing via Random Program Generation
https://arxiv.org/abs/2410.09191


while doesn't loop

I found this structure twice in the code. Looks like a flow control issue
  while (
            div.innerHTML = "<!--[if gt IE " + (++v) + "]><i></i><![endif]-->",
            all[0]
        ) {
            return v > 4 ? v : undef;
        }

@Maxhodges
This code has been removed since metisMenu 2.0.0 version.


Intelligently revert #539

In the interest of DRYness, we should revert #539 eventually and remove the autogenerated website files. We need them only to have an up-to-date version for git checkouts of this repo - the NPM package already always contained the newest version. In the current code (after #539), we need to make sure to update the built version with qx compile --rebuild-startpage and commit the result if the source version changes, otherwise both NPM and Git clone will contain outdated code. However, before we revert, we need to figure out how to make sure that git checkouts re-generate the build version automatically if the source has changed.

How about compiling it on first run into the ~/.qooxdoo directory (which is also used for configuration and other data).  We already track the version number of the current qx, so record that version number in a file in that temporary directory, and if it does not match the current version delete the directory.
Not having the output directory inside the repo directory is a good thing IMHO, unless the output is going to be commited

Maybe we could also return to things as they were, since they were working completely fine for NPM builds, and solve only the problematic case, i.e. git clones? I was wondering if git hooks could be a solution - the website could be regenerated on each pull, for example...

do you mean a hook that did rm -f ./source/resource/qx/tool/website/build ?  That would be fine (so long as a future fix doesn't change that to git clean -dfx 😱;) ) but it still feels a little inelegant to have important runtime artifacts weaved in with the git archive.

This would allow to "unweave" the build files, wouldn't it? The intention would be that the build files would be removed from Git and so the build dir would always be empty on checkout, as it was before, and the build generated on demand when qx serve is started and the dir found empty. This works well for NPM since it the NPM package is generated on Travis and there the build files are generated before deployment. The hook would then just make sure that the pages are regenerated when a new git version is loaded, whether or not the source version actually changed.
The other option would be to regenerate the website each time qx serve is executed, but we talked about that earlier and found it wasteful.


Error in using training data to generate file (ffmpeg based)

After training I can use my model just fine and convert many voice files, but sometimes it gives me an error when doing so:
Traceback (most recent call last):
  File "L:\RCV_voiceclone\my_utils.py", line 14, in load_audio
    ffmpeg.input(file, threads=0)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\ffmpeg\_run.py", line 325, in run
    raise Error('ffmpeg', out, err)
ffmpeg._run.Error: ffmpeg error (see stderr output for detail)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "L:\RCV_voiceclone\infer-web.py", line 161, in vc_single
    audio = load_audio(input_audio_path, 16000)
  File "L:\RCV_voiceclone\my_utils.py", line 19, in load_audio
    raise RuntimeError(f"Failed to load audio: {e}")
RuntimeError: Failed to load audio: ffmpeg error (see stderr output for detail)

Traceback (most recent call last):
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\routes.py", line 321, in run_predict
    output = await app.blocks.process_api(
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\blocks.py", line 1007, in process_api
    data = self.postprocess_data(fn_index, result["prediction"], state)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\blocks.py", line 953, in postprocess_data
    prediction_value = block.postprocess(prediction_value)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\components.py", line 2076, in postprocess
    processing_utils.audio_to_file(sample_rate, data, file.name)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\processing_utils.py", line 206, in audio_to_file
    data = convert_to_16_bit_wav(data)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\processing_utils.py", line 219, in convert_to_16_bit_wav
    if data.dtype in [np.float64, np.float32, np.float16]:
AttributeError: 'NoneType' object has no attribute 'dtype'
Traceback (most recent call last):
  File "L:\RCV_voiceclone\my_utils.py", line 14, in load_audio
    ffmpeg.input(file, threads=0)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\ffmpeg\_run.py", line 325, in run
    raise Error('ffmpeg', out, err)
ffmpeg._run.Error: ffmpeg error (see stderr output for detail)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "L:\RCV_voiceclone\infer-web.py", line 161, in vc_single
    audio = load_audio(input_audio_path, 16000)
  File "L:\RCV_voiceclone\my_utils.py", line 19, in load_audio
    raise RuntimeError(f"Failed to load audio: {e}")
RuntimeError: Failed to load audio: ffmpeg error (see stderr output for detail)

Traceback (most recent call last):
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\routes.py", line 321, in run_predict
    output = await app.blocks.process_api(
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\blocks.py", line 1007, in process_api
    data = self.postprocess_data(fn_index, result["prediction"], state)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\blocks.py", line 953, in postprocess_data
    prediction_value = block.postprocess(prediction_value)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\components.py", line 2076, in postprocess
    processing_utils.audio_to_file(sample_rate, data, file.name)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\processing_utils.py", line 206, in audio_to_file
    data = convert_to_16_bit_wav(data)
  File "L:\RCV_voiceclone\runtime\lib\site-packages\gradio\processing_utils.py", line 219, in convert_to_16_bit_wav
    if data.dtype in [np.float64, np.float32, np.float16]:
AttributeError: 'NoneType' object has no attribute 'dtype'

It is not just one file, and those that tend to give it I have opened, edited, resaved in multiple formats and matching of those that work, etc. It feels random what files will output this error and what ones will convert properly.

I get the exact same error when i tried using pitch on a model that had pitch unselected. Set the "Protect the artifact of voiceless consonant and breath" to 0.5 and see if the error goes away. Oh and this error can happen when you have a space in the audio files name.


clarify arguments for stan() and add examples to docstring

Addresses #50

I held off making smaller, stylistic changes :)

Coverage increased (+0.3%) to 78.178% when pulling 3f4eb49260bdafc8b51e2cb12b5974d0ff5b1843 on kleinschmidt:dfk/docs into 32092f0b2293cd51a06f4d370897aeed919fc650 on goedman:master.

Coverage increased (+0.3%) to 78.178% when pulling 3f4eb49260bdafc8b51e2cb12b5974d0ff5b1843 on kleinschmidt:dfk/docs into 32092f0b2293cd51a06f4d370897aeed919fc650 on goedman:master.

Codecov Report

Merging #51 into master will increase coverage by 0.29%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #51      +/-   ##
==========================================
+ Coverage   77.88%   78.17%   +0.29%
==========================================
  Files          11       11
  Lines         520      527       +7
==========================================
+ Hits          405      412       +7
  Misses        115      115

Impacted Files
Coverage Δ

src/main/stancode.jl
71.18% <ø> (ø)
:arrow_up:

src/types/optimizetype.jl
96.87% <0%> (+0.32%)
:arrow_up:

src/types/sampletype.jl
88.37% <0%> (+0.87%)
:arrow_up:

src/types/variationaltype.jl
20% <0%> (+5.71%)
:arrow_up:

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 32092f0...3f4eb49. Read the comment docs.


While hovering over the badges of the contributors the UI is not theme aware.

Enter your suggestions in details:
Make the UI theme aware because I see this as a dark UI component in light theme and dark theme mode both.
Light Theme

Dark Theme

Hey @rithviknishad ,I'd like to contribute to this issue for Hacktoberfest . Could you please assign it to me?

Hello @rithviknishad , ,I'd like to contribute to this issue for Hacktoberfest . Could you please assign it to me?

Hey @rithviknishad,
While setting up a repo, I'm encountering an issue when I click on people in the Contributors page. It's showing an error. Could you guide me on how to
resolve this?

Weird, we already have it exported.

Weird, we already have it exported.

Should I try by changing it to default export?

Try pulling the latest main branch now; fixed in: https://github.com/ohcnetwork/leaderboard/commit/8c3cae9119227bf2c5c9c469d6648ee9067d1947

Even i was facing same issue to resolve it i have just comment out the line no 56
Export const dynamicParams=false
And than loaded the contributor page onces and then i was able to access /contributor/slug page

Thanks @dharmik3504 ;
Updated in: https://github.com/ohcnetwork/leaderboard/commit/f5c735c37e767f2d4c7bf93ea0ff95bd988a11c8

Hey @rithviknishad ,
Can you review this preview for dark and light mode:
Dark:

Light:

Try white for the creative thinking section to add more contrast with the green text.
Other than that LGTM

Try white for the creative thinking section to add more contrast with the green and grey text.
Other than that LGTM

Hey @rithviknishad ,
Any other changes needed?

loos good to me

Hey @rithviknishad ,
I had raised the PR #518 , Could you review it and Let me know if any changes required !


refactor: obnoxious and totally useless name change

Why? Because I can.

Someone's gonna be pissed.


feat: test framework supports turning off -race flag

This is useful on Windows where gcc is not always
available.

@jaw Could you please rebase onto main to fix the CI?

@aymanbagabas thanks for fixing the race cond! Rebased...


Hosting on jcenter or mavenCentral

Hi, is there a reason the sdk is not also hosted on jCenter or mavenCentral that will allow us to:

Skip adding the private repository
Be added to fdroid more easily as a private repository is not allowed.

The sdk is available on the jCenter repo


daterangepicker with RequireJS

We're using RiotJS as our framework with RequireJS and can't seem to get this to initialize with jQuery. Does this library support RequireJS?

+1

+1

Any updates on this? ^^

I may have a solution...in daterangepicker.js add define at the beginning
define(['jquery', 'knockout', 'moment'], function($, ko, moment) {


Uncaught TypeError: Cannot read property 'getItem' of undefined

Issue
Background: Upgraded Atom and project-viewer at the same time; lost previous projects (but not project-viewer.json); created new project..
When clicking on the project name, it won't open and displays the following error.
Stack Trace
At ~/.atom/packages/project-viewer/src/status-bar.js:7

TypeError: Cannot read property 'getItem' of undefined
    at /packages/project-viewer/src/status-bar.js:7:30)
    at /packages/project-viewer/src/project-view.js:273:13)
    at /packages/project-viewer/src/project-view.js:19:8)

@eliot-akira thanks for reporting this.yeah atom 1.17 made a lot of breaking changes. not only on PV. i am activaly working on it. i hope during the next 24h to release a stable release.

Thank you! Fortunately the project data was intact, so it wasn't a big problem. I appreciate the excellent work on project-viewer, I've been using it for a long time.

After update to 1.1.0 I get this error when I try to change project... :(

can you try to clear all stored states files? in .atom/storage file? editor-whatever files

I clear whole .atom/storage folder, but without any effects

ok. i will check on this. sorry about it

please validate with now @PixelT

Unfortunatelly nothing change for me

can you share screenshots?

http://www5.zippyshare.com/v/Wl1cFYXm/file.html

Stack Trace:

TypeError: Cannot read property 'getItem' of undefined
    at undefined._update [as update] (/Users/krzysiek/.atom/packages/project-viewer/src/status-bar.js:5:47)
    at project-viewer-project._openOnWorkspace [as openOnWorkspace] (/Users/krzysiek/.atom/packages/project-viewer/src/project-view.js:276:13)
    at project-viewer-project._onClickEvent (/Users/krzysiek/.atom/packages/project-viewer/src/project-view.js:17:8)

@PixelT, by bad, validate with 1.1.2 please

From some reason I have status-bar disabled...
After enaled it, seems to work OK :P

yeah, but that was an issue, i needed to validate if status-bar was enabled :)
also, there is an option that when you switch project, it tries to reload 3 default packages, and one of them is status-bar it could have been stuck in the process. If you keep having status-bar disabled, please inform me...
Thanks


auto proxyauth whit selenium

I cant use proxy whit this format on selenium ip:port:user:pass
the browser keep asking for user:pass for the proxy
I have some sources I hope you can fix it
https://github.com/SeleniumHQ/selenium/issues/10042
https://coderedirect.com/questions/158523/how-to-set-proxy-with-authentication-in-selenium-chromedriver-python
https://www.py4u.net/discuss/141444
https://botproxy.net/docs/how-to/setting-chromedriver-proxy-auth-with-selenium-using-python/

OB1 is not supported anymore, sorry

what about ob2 can i use it

@mamamiia did you already open an issue on the OB2 repo about this? If you did, maybe link it here and then wait for it to be implemented.

I don't know if is work on ob2

@mamamiia It most likely will not work since I ported selenium over from OB1 without changing much. So open an issue on the OB2 repo and wait for me to implement it in one of the next updates.

ok thanks


fix minor mispells in tensorflow/tools/dist_test

Can one of the admins verify this patch?

@tensorflow-jenkins test this please


Added persistent Created Room Header to the Chat

Details

We needed to replace the initial Room header with a persistent room header. I have added a new component that renders when action-type is CREATED.
I have also updated the names of a component and styles  to reflect the change (Hope that's fine).
Fixed Issues

$ https://github.com/Expensify/App/issues/7077
Tests

Open a new/existing chat.
Verify the position of the header and scroll-ability within the chat.

[X] Verify that no errors appear in the JS console

QA Steps

Open a new/existing chat.
Verify the position of the header and scroll-ability within the chat.

[X ] Verify that no errors appear in the JS console

Tested On

[X] Web
[X] Mobile Web
[ ] Desktop
[ ] iOS
[X] Android

Screenshots

Web

https://user-images.githubusercontent.com/48352577/151380917-45e1dabb-a7d8-4aff-8338-3c2c5d8880ec.mp4
Mobile Web

Desktop

iOS

Android

@parasharrajat I do not have a mac or an iOS device atm, can you test it if it looks okay on those devices? Thanks :D

Apart from it, I think there is more gap between first message and the Created view.
@shawnborton Could you please review the design here? Thank you :bow: .

Is this just for rooms or does this fix this behavior for all new chat types? Like 1:1, group messages, etc?
From our mockups, it looks like we have 32px padding at the bottom of the chat header:

Tested on IOS and Desktop. looks good code-wise.

I think we might be able to widen that area a bit. In your screenshot, you can see how "him" falls to a third line because of how skinny that area is currently.

Is this just for rooms or does this fix this behavior for all new chat types? Like 1:1, group messages, etc?

From what I know, this is supposed to be added in the beginning of all Chat Reports (https://github.com/Expensify/App/issues/7077#issuecomment-1020427252)

I think we might be able to widen that area a bit. In your screenshot, you can see how "him" falls to a third line because of how skinny that area is currently.

I think adding a slack of 4px on each side should be the sweet spot for us. It should cover most of the names and looks almost as good as 20px padding.

20px padding
16px padding

cc: @shawnborton , @parasharrajat

Not a design expert. but I think it can be widened more. The Left and right side gap should be a minimum of 20px from screen edges. Thus there is enough space around so that history with  can fit in a single line.

I agree, I think we can just do 20px padding on the left and right with no max-width (just let it go full container) and we should be good to go.

Updated Changes, the width specification matches that of the mockup now.Updated screenshots in the PR.

Updated with the requested changes!

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @marcaaron in version: 1.1.36-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @roryabraham in version: 1.1.36-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


tests are failing due to examples env variable requirement

tests are failing due to missing environment variables in examples it might be better to have them as runtime dependencies instead of compile time.
additionally having those critical information in a compiled code might be a security problem.

I'm going to close this issue. CI sets the variables for testing:
https://github.com/Lonami/grammers/blob/c348bb23988ad0d9f4f9ee76c91038975a94d155/.github/workflows/rust.yml#L27-L32
And as explained I'd prefer if they remain compile time variables.


python310Packages.md-toc: 8.1.3 -> 8.1.4

Description of changes
https://blog.franco.net.eu.org/software/CHANGELOG-md-toc.html#814---2022-06-15

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

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

3 packages built:

python310Packages.md-toc
python310Packages.mypy-boto3-builder
python39Packages.md-toc


Power Button

When try to Power on TV doesn't work and I contacted developer which says it's not working yet sometimes it does work randomly...

Roku's ECP protocol doesn't support a PowerOn command, only PowerOff. It may be possible to issue a Wake on LAN (WOL) packet but I'm not sure what the format of that packet would be. Clicking any button on the remote should cause the device to wake up, assuming it's not fully powered off.


test only

Docs Build status updates of commit e5063e0:
:clock10: Full build: the average full build time is 12 min(s) 23 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit e5063e0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

teams/docs-conceptual/toc.yml
:white_check_mark:Succeeded
View (teams-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Provide reference to original content node when generating sitemap nodes

Discussed in https://github.com/patrickdemooij9/SeoToolkit.Umbraco/discussions/141

Originally posted by ianleeder December 29, 2022
We would like the ability to hide individual content nodes from the sitemap, not just document types.  I've added a flag to my master document type.
I'm looking at the GenerateSitemapNodeNotification, but the event object doesn't provide an easy way to reference the original content node (it includes a URL, but I can't see a ContentService.GetByUrl method), so I can't read my flag.
I've tracked the event source down to the GetSelfAndChildren method in SitemapGenerator, and each sitemap node is created from a content node (IPublishedContent).  Would it be feasible (particularly with respect to performance) to include the source IPublishedContent in the SitemapNodeItem?  Then in my notification event I could simply write:
notification.Node.HideFromSitemap |= notification.Node.SourceContent.GetPropertyValue<bool>("hideFromSitemap");

This also seems like it would be more performant than having to do a Content lookup on each node (eg by URL or id).
Or am I going about this the wrong way?

Fixed in latest release


The models pt to TorchScript what it's unsuccessful

Hi
python models/export.py --weights yolov5s.pt --img 640 --batch 1
Fusing layers...
Model Summary: 120 layers, 7.06617e+06 parameters, 7.06617e+06 gradients
Traceback (most recent call last):
File "models/export.py", line 41, in
y = model(img) # dry run
.
.
.
type(self).name, name))
torch.nn.modules.module.ModuleAttributeError: 'Detect' object has no attribute 'm'

Hi @molyswu, could to you try to pull the latest updates and re-download the pre-trained model from the yolov5 repo? And make sure your torch version meet the requirement, e.g. v1.6.0 now


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/97755

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/99062

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/100524

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/100723

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/117695

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/118183


Unexpected "Not Authorized" with Lambda Authorizer and Transformer v2

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.
[X] I have removed any sensitive information from my code snippets and submission.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
16.13.0
Amplify CLI Version
7.6.24
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No
Amplify Categories
api
Amplify Commands
Not applicable
Describe the bug
N/A
Expected behavior
Note: This issue is similar to https://github.com/aws-amplify/amplify-cli/issues/9866 (except we are using Lambda Authorizer instead of IAM). Based on debugging, these two issues appear to have a different root causes, so creating a new issue instead of tacking on to that one.
TL;DR;
We've recently migrated to GraphQL Transformer V2.
We are trying to disable API Key access to our API in favour or custom Lambda authorizer function, but we are receiving the following error for all queries/mutations:
Not Authorized to access {field} on type {type}

Longer version
Prior to disabling API key authentication, we were using a combination of @auth(rules: [{ allow: public }]) @aws_lambda on all our @model types, which worked. But after disabling API Key access in the project, we are not able to use allow: public due to the following error when running amplify api gql-compile or amplify push:
@auth directive with 'apiKey' provider found, but the project has no API Key authentication provider configured.

Instead, I am trying to use @auth(rules: [{ allow: custom }]) to decorate our @model types as instructed in the Custom authorization rule documentation. For example:
type User
  @model(queries: { get: "getUser" }, subscriptions: null)
  @auth(rules: [{ allow: custom }])
  @aws_lambda {
  id: ID!
  email: String!
  firstName: String
  lastName: String
}

(The documentation does not specify that we should retain the @aws_lambda AppSync decorator, but I've tried it with and without, and we get the same result)
Now, calling the following query:
{
  getUser(id:"8af1c2a0-2f0d-4e4b-b8d6-adbd04d21347") {
    id, name
  }
}

Will return:
{
  "data": {
    "getUser": null
  },
  "errors": [
    {
      "path": [
        "getUser"
      ],
      "data": null,
      "errorType": "Unauthorized",
      "errorInfo": null,
      "locations": [
        {
          "line": 2,
          "column": 3,
          "sourceName": null
        }
      ],
      "message": "Not Authorized to access getUser on type User"
    }
  ]
}

This is the API instance configuration from amplify/backend-config.json, where AppsyncAuthorization refers to a lambda deployed within the same Amplify project. These configurations seem to applied correctly (see screenshot a bit later in this issue).
{
      "service": "AppSync",
      "providerPlugin": "awscloudformation",
      "output": {
        "authConfig": {
          "defaultAuthentication": {
            "authenticationType": "AWS_LAMBDA",
            "lambdaAuthorizerConfig": {
              "lambdaFunction": "AppsyncAuthorization",
              "ttlSeconds": "0"
            }
          },
          "additionalAuthenticationProviders": []
        }
      }
    }

Digging a bit into the generated VTL resolvers for the query QuerygetUserauth0Function, I see that there's a check like this:
#if( $util.authType() == "Lambda Authorization" )
  #set( $isAuthorized = true )
#end

I'm assuming that this line is intended to bypass the default authorization requirements and pass the authorization over to the Lambda authorizer. So I logged the output of $util.authType(), and the returned value is:
"API Key Authorization"

Double checking in the AppSync console, the authorization mode is indeed set to Lambda Authorization as per the Amplify config:

Looking at Resolver Util Reference documentation, "Lambda Authorization" is not one of the valid return values for $util.authType().
So, what's going on here?

Am I using the wrong directive/syntax for specifying the @auth directive?
Is the resolver util $util.authType() returning an incorrect value?
Is the generated authorization resolver code incorrect?

And most importantly, how can I get around this problem?
Reproduction steps
See issue description.
GraphQL schema(s)
Relevant parts of schema:
type Query @aws_lambda {
	# snip...
}

type User
  @model(queries: { get: "getUser" }, subscriptions: null)
  @auth(rules: [{ allow: custom }])
  @aws_lambda {
  id: ID!
  email: String!
  firstName: String
  lastName: String
}

Additional information

What is the authorization token (authorizationToken) received by your Lambda authorizer function ?
I had an almost similar issue whereby using the cognito JWT token as authorizationToken for the Lambda authorizer would cause $util.authType() to detect it as User Pool Authorization instead of Lambda Authorization. Adding a custom string to the token solved the issue.

@rezab777 the token is already a custom string. It's either a string in the format ssm:xxxxxxxxxxxxxxxxxxxx, or a base64 encoded JSON string which contains the cognito JWT token, among other things.

@jevakallio - Could you check the value of key aws_appsync_authenticationType in aws-exports.js? It looks like somehow the client request is still trying to use the API_KEY authorization.
Also, you can explicitly specify the authMode as shown below. Let me know if this helps.
const createdTodo = await API.graphql({
  query: queries.createTodo,
  variables: {input: todoDetails},
  authMode: 'AWS_LAMBDA'
});

I just tested the $util.authType() in console, it seems to be returning proper value. What is the AWS region are you using?
Thanks for mentioning about the docs, it definitely needs an update.

@sundersc thanks for a quick reply!
I'm not making these requests via the Amplify client -- I'm setting the Authorization HTTP header directly in GraphQL Playground and in the AppSync console editor, in both cases to the same effect (error).
However, to answer your question, the aws-exports.js file has been updated correctly, and our app is running in us-east-1.
    "aws_project_region": "us-east-1",
    "aws_appsync_graphqlEndpoint": "https://xxxxxxxxxx.appsync-api.us-east-1.amazonaws.com/graphql",
    "aws_appsync_region": "us-east-1",
    "aws_appsync_authenticationType": "AWS_LAMBDA",

Using the browser developer tools, could you check whether the request headers contains the key x-api-key? AppSync infers the authorization mode based on the request headers, so it is important that the API_KEY specific headers are removed from the request.

@sundersc I can verify that the x-api-key headers are not being sent in the request. Here's the cURL representation of all the headers that are being sent when making the request via the AppSync console.
Only authorization auth header is present in these calls. The value is an alphanumeric string.
:authority: redacted.appsync-api.us-east-1.amazonaws.com
:method: POST
:path: /graphql
:scheme: https
accept: application/json, text/plain, */*
accept-encoding: gzip, deflate, br
accept-language: en-GB,en-US;q=0.9,en;q=0.8,fi-FI;q=0.7,fi;q=0.6
authorization: redacted-token-strinb
content-length: 176
content-type: application/json
origin: https://us-east-1.console.aws.amazon.com
referer: https://us-east-1.console.aws.amazon.com/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="99", "Google Chrome";v="99"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "macOS"
sec-fetch-dest: empty
sec-fetch-mode: cors
sec-fetch-site: cross-site
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36
x-amz-user-agent: AWS-Console-AppSync/

Same is true for requests sent from the app (we use a third party graphql library, not the Amplify client).
Could you show me what the Amplify client sends when specifying the AWS_LAMBDA authentication mode?

The headers look exactly the same.

How did you enable Lambda authorization in V1? By default, CLI allows to configure Lambda Authorizer only for V2 api.

I believe the lambda authorization was configured as follows:

I created the environment with API_KEY authentication by default via the Amplify CLI
I manually set Lambda as the default authorization mode via the AppSync console following the Setting up AWS Lambda as authorization mode is AppSync section of this document
I manually set API Key authorization as an additional auth mode, also via the console.
I decorated my schema types with @aws_lambda decorators

Now, after I migrated to Transformer V2, I've done the following steps:

Ran amplify configure api via the Amplify CLI, and configured the default auth mode to the AWS Lambda
Ran amplify configure function for each of my Amplify functions (lambdas) and removed any api resource dependencies (which depended on the GraphQL API Key being output as an environment variable)

I'm still unable to reproduce the issue on my end. Could you please zip the amplify folder and send to<EMAIL_ADDRESS>

@sundersc, sure, I've sent it over just now. Accidentally sent it without subject line, but look for an email from<EMAIL_ADDRESS>

@jevakallio - AppSync confirmed that this is a bug and working on a fix.
To mitigate the issue, try to send resolverContext as empty object or any value. If the resolverContext is passed, then AppSync detects the authType as expected.
https://docs.aws.amazon.com/appsync/latest/devguide/security-authz.html#aws-lambda-authorization

@sundersc thank you! I can also confirm that returning resolverContext from the authorizer lambda works!

Awesome! I'm closing this issue in favor of a support ticket for AppSync team to track the issue. Feel free to reopen if required.


new: Sara Federico (Software Engineer)

Tested in the playground

Published.
Thanks, found a lot of useful stuff!


Is there a way to enable an on-screen keyboard? (using a touchscreen)

I am using a touchscreen which works great but I'd like to display a keyboard when I tap on input fields so a physical keyboard is not required. Is there a way to do this?

Don't recall seeing a solution off the top of my head.
Keywords you want to look for on e.g. Google would be "matchbox on screen keyboard" or some such.
If you get it working, I'd love it if you'd report back; I'll update the docs so others can benefit from your solution!

install the Chrome Extension "Virtual Keyboard":
https://chrome.google.com/webstore/detail/virtual-keyboard/pflmllfnnabikmfkkaddkoolinlfninn?hl=en
and onscreen-keyboard is working....


Build and push docker images on every push to the main branch (+ weekly)

The CI job is not kicking in on this PR, which is desired. Let's see if it's triggered after merging to master.


Release v0.2.3

Bugfix link to BDN xrefmap

Codecov Report

Merging #120 (86d5075) into master (0615978) will not change coverage.
The diff coverage is n/a.


Add floodPublish CLI flag

PR Description
Add --p2p-flood-publish-enabled CLI flag to enable/disable flood publishing.
Fixed Issue(s)
fixes #8559
Documentation

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

Changelog

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

@tbenr ready for the test review


Updating submitSendBoxSaga.js to send sendBoxValue.trim()

Suggested fix by @tdurnford for issue #2328
Sending questions with trailing spaces using enter fails to trim(). - fix included
Fixes #2328
Changelog Entry
Updating submitSendBoxSaga.js to send sendBoxValue.trim(), by @jimmyjames177414 in PR #2331
Description
Sending questions with trailing spaces using enter fails to trim(). - fix included

Coverage remained the same at 66.114% when pulling 26a083bf86ea9008bcf579a5d6f7886c63450c94 on jimmyjames177414:patch-2 into 007d5dcb3179b04ff0af7e313a6cf89c7e1deb4d on microsoft:master.

@jimmyjames177414 Can you also update the CHANGELOG.md file? Thank you for your contribution!

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: jimmyjames177414 sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Sounds great, I'll get right on it! Thank you for the opportunity!
It means the world to me.

@jimmyjames177414 Can you also remove setSendBox(sendBoxValue.trim()) from the SendButton and TextBox?

@tdurnford yep! I'll get right on it!

@jimmyjames177414, thanks for your hard work so far. :) Just FYI, the CI is failing because there are linting errors. you can run the command npm run eslint in your console and see below:

Once these are fixed we can see if any tests are failing. Let us know if you have questions.

Looks good to me! Thanks again for your help @jimmyjames177414! The Web Chat team really appreciates your contributions. If you are interested in contributing more, I highly recommend you take a look our issues labeled "Help wanted" and "Good first bug".

Woo hoo!
Thanks for all your patience and guidance with this pull request process!
I will definitely look into the "Help wanted" and "Good first bug" sections as soon as I get a chance.


Request support for Debian10

I need to use your script in Debian10. I hope you can support Debian10 as soon as possible. Thank you very much.

Done


Unable to define realtionships in model classes

Hey all hoping someone can help me figure out what the issue is, I've been looking for an alternative for a persistence engine in place of Core Data. I stumbled across Realm and must say I find it very interesting and want to incorporate it in my latest project. The issue I'm running into is that I can't seem to define relationships between my model classes. I've followed the docs but can't seem to get this working at all. I've installed Realm through Cocoapods and then at first created my model classes through the plugin on Alcatraz but that didn't seem to be working, so I created my classes the good old fashion way but still no luck. The issue seems to be that the classes are not seeing the other even though I'm importing the headers of the relationships I hope to make.

I am having the same problem. @marlowcharite How did you fix this? I still get the Cannot find protocol declaration no matter what combination of class or import combinations I use.

@Siriss I don't have the project in front of me right now but basically if I remember correctly I had to forward declare both a class that was the other side of the relationship. And then import any other needed classes

I am also having this issue. No type of protocol named 'User' I can't start a new project as I'm trying to integrate this into a huge project.

EDIT: Fixed, but the documentation is wrong on where we need to declare RLM_ARRAYS

@HannahCarney you probably meant RLM_ARRAY_TYPE(User)? Which documentation is wrong? This is specified a few times in the "Models" section of our docs: https://realm.io/docs/objc/latest/#models


CLOUDP-234411: [mongocli] Remove atlas commands from mongocli

Proposed changes

replaced atlas command with deprecated message
removed all evergreen tasks related to atlas
removed all make tasks related to atlas

Jira ticket: CLOUDP-234411

Packaging is expected to fail right now and will be fixed in a separate ticket: DEVPROD-5248


Scroll Speed Arrow Type

Describe your problem here.
I'm trying to make a new arrow type that changes the scroll speed when missed.
but i have no idea how. my main issue is that i don't know how to FIND the scroll speed (variable? property?) and change it by a specific amount. on top of that i may want to set an timer, and when the timer is up to set the scroll speed back to normal.
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no. i have not

you have to use triggerEvent.

local newSpeed = 1.01 --change to a different value if you don't want it to increase each miss
function noteMiss(i,d,t,l)
    if t == 'your note' then
        triggerEvent('Change Scroll Speed', newSpeed, 'change time in seconds')
        newSpeed = newSpeed + 0.01 --for increasing the speed each miss
    end
end


Ability to get structured information about OpenAPI validation errors

Description of the feature
Now ParseParamError, ParseJsonError contains information about error only as string that can't be parsed on client side to display field level errors.
It would be nice to have something like this in error chain
https://docs.rs/validator/latest/validator/struct.ValidationErrors.html
 let body = ErrorResponse {
            kind: self.kind.to_string(),
            message: self.to_string(),
            errors: self
                .source
                .chain()
                .map(|e| e.to_string())
                .collect::<Vec<_>>(),
            validaton_errors: self
                 .source
                 .downcast_ref::<validator::ValidationErrors>()
                .map(|e| e.errors()),
        };

+1 for better validation results. I would love to somehow have better messages aswell, maybe containing the field in which the parse error occured. Now I normally just get "Null found, expected Number!" without knowing WHERE that occured.


compiler complain about a filed missing

working on fetching the update  tuples on this branch #update-tuple
but if you check Estate struct the field is defined
error[E0609]: no field `es_result_relation_info` on type `EState`
  --> src/update.rs:48:38
   |
48 |         let result_rel_info = estate.es_result_relation_info;
   |                                      ^^^^^^^^^^^^^^^^^^^^^^^ help: a field with a similar name exists: `es_result_relations`

For more information about this error, try `rustc --explain E0609`.

@goodyduru

Use estate_result_relations


fix(ngAria.ngClick): restrict preventDefault on space / enter to non-…

…interactive elements
Fixes #16664

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
What is the current behavior? (You can also link to an open issue here)
What is the new behavior (if this is a feature change)?
Does this PR introduce a breaking change?
Please check if the PR fulfills these requirements

[ ] The commit message follows our guidelines
[ ] Fix/Feature: Docs have been added/updated
[ ] Fix/Feature: Tests have been added; existing tests pass

Other information:

Reminder: I pushed the branch to this repo, should delete it after merging

For future reference, this fixes a regression introduced in #16604.


net/http, x/net/http2: rapid stream resets can cause excessive work (CVE-2023-39325)

A malicious HTTP/2 client which rapidly creates requests and
immediately resets them can cause excessive server resource consumption.
While the total number of requests is bounded to the
http2.Server.MaxConcurrentStreams setting, resetting an in-progress
request allows the attacker to create a new request while the existing
one is still executing.
HTTP/2 servers now bound the number of simultaneously executing
handler goroutines to the stream concurrency limit. New requests
arriving when at the limit (which can only happen after the client
has reset an existing, in-flight request) will be queued until a
handler exits. If the request queue grows too large, the server
will terminate the connection.
This issue is also fixed in golang.org/x/net/http2 v0.17.0,
for users manually configuring HTTP/2.
The default stream concurrency limit is 250 streams (requests)
per HTTP/2 connection. This value may be adjusted using the
golang.org/x/net/http2 package; see the Server.MaxConcurrentStreams
setting and the ConfigureServer function.
This is CVE-2023-39325 and Go issue https://go.dev/issue/63417.
This is also tracked by CVE-2023-44487.

This is a PRIVATE issue for CVE-2023-39325, tracked in http://b/303836512.
/cc @golang/security and @golang/release

@gopherbot please open backport issues

FYI, this fix is not sufficient for Kube, and possibly other projects.  We are working on this in https://github.com/kubernetes/kubernetes/pull/121120.  pprof svg from a single client with a single connection attempting to DOS the Kube API server (memory usage grew to 5 GB in a few mins before it stabilized - with multiple connections the API server would have easily OOM'd):

Any plans to backport this to 1.19.z?

@enj Would a MaxStreamResetPerTransport option forcing a transport to shutdown when reached be usefull ?

Does this CVE-2023-39325 impacts Go version 1.18? If yes is there a plan to push the required fix into this version?

1.18 is affected. There are no plans to backport to 1.18, which is out of the support window; see: https://go.dev/doc/devel/release#policy
As an alternative to upgrading to a recent Go version, you can use a recent version of the golang.org/x/net/http2 package and http2.ConfigureServer to replace the standard library's bundled HTTP/2 implementation, although I'd really recommend upgrading to a Go version that's still getting security fixes.

FYI, this fix is not sufficient for Kube, and possibly other projects. We are working on this in kubernetes/kubernetes#121120. pprof svg from a single client with a single connection attempting to DOS a Kube API server that has this fix and max streams set to 100 (memory usage grew to 5 GB in a few mins before it stabilized - with multiple connections the API server would have easily OOM'd):

@enj from the pprof attached the bulk of the memory consumed comes from the 4kb buffer allocated to the responseWriter that is created after the Headers frame is received. The buffer is also obtained from the sync.Pool that will make the memory usage more efficient.
https://github.com/golang/net/blob/f12db26b1c9293fa3eb95c936e548d2c1fba4ba9/http2/server.go#L69-L75
In this case, since that the attack is based only on headers frames,  postponing the allocation of the responseWriter will reduce a lot the impact on memory usage, however, I've been checking around the code and I don't know how feasible is to do that, based on the rfc7540

Sending or receiving a HEADERS frame causes the stream to   become "open"

A stream in the "open" state may be used by both peers to send   frames of any type.  In this state, sending peers observe
advertised stream-level flow-control limits (Section 5.2)

The issue is still relevant in net/http/httputil (reverse proxy).

@bradfitz


The mutex of NetAccept::action_->continuation is optional when the EVENT_ERROR event is called back.

In general, NetAccept::action_->continuation is a type of ProtocolProbeSessionAccept object.
The mutex of ProtocolProbeSessionAccept is NULL to allow parallel accepts.
Resolve issue #4726.

Cherry picked to 8.1.0


Submission id fix

Fixed an error in adding the submission id attribute in a controller

Coverage remained the same at 64.545% when pulling 743c412da52b7c32e8b0b7cf90fcf82d95c7f01b on Heliozoa:submission-id-fix into bd5ef6ad8e34fdc054045960127c3dbb3e973958 on tdd-pingis:master.

Coverage remained the same at 64.545% when pulling 2c2837ddfdee6eb74699f867ca9568620807c169 on Heliozoa:submission-id-fix into bd5ef6ad8e34fdc054045960127c3dbb3e973958 on tdd-pingis:master.

Coverage remained the same at 64.545% when pulling 2c2837ddfdee6eb74699f867ca9568620807c169 on Heliozoa:submission-id-fix into bd5ef6ad8e34fdc054045960127c3dbb3e973958 on tdd-pingis:master.


Cleaned up init/configuration file

Configuration

Changed the format of the init file significantly

See the new default for layout

Added spawn_* functions, to aid in registering programs to run at startup and every restart.
An error is now logged if Way Cooler has to default to the pre-compiled configuration file

Registry
Redid internal structure of internal registry

Each value must be part of some category
Clients to the registry can only access certain categories

They have permissions to read and write at a category level
Has a "nil" client that can read and write anything.

By default, internal Way Cooler use and the Lua thread uses this client.

Fixes #174

Hi again, nice to see this.
My initial hack to bind keybindings to programs is failing.
I defined
function launch_program(prog_name)
    os.execute(prog_name .. " &")
end

and used to use it like
  key({ mod }, "a", function () launch_program("st -e ranger") end),

This does not work anymore.
Also, it would be nice to provide a default implementation of such a launch_program_once function which the user can call directly.

Hi again, nice to see this.
My initial hack to bind keybindings to programs is failing.
I defined
function launch_program(prog_name)
os.execute(prog_name .. " &")
end
and used to use it like
key({ mod }, "a", function () launch_program("st -e ranger") end),
This does not work anymore.

I forgot to test Lua functions, ahh. I'll fix this ASAP.

Also, it would be nice to provide a default implementation of such a launch_program_once function which the user can call directly.

I'll add that as utils.program.spawn_once. I'll hold off on general documentation of these utils until I'm sure this is the API I want, but until then I'll update the README so that users are generally aware that these exist.

Hmm, from my testing lua functions still work...why don't you send me your updated config and I can see where the error is?

There we go, that issue you reported should be fixed.
I have also added spawn_once to the utils. It has the same arguments as the other spawn_* functions.

Thanks, this fixed the function call problem.
How to bind the new spawn_once function to keybindings ?

Just wrap it in a function, like you did before.
E.g:  function () spawn_once("st -e ranger") end.
If you want to make it more concise, try having a helper that returns a closure:
function() spawn_wrapper(bin, args)
    return function() utils.program.spawn_once(bin, args) end
end

...
key({mod}, "a", spawn_wrapper("st -e ranger"))

That should work.

Aha ! got it working, thanks for the closure way.
Note: The error was calling utils.program.spawn_once while it should be util.program.spawn_once

Hah, whoops. Maybe it should be utils...eh, I've made enough breaking changes for one PR ;).
I'm going to try to fix kconv so that I can see coverage changes with this PR, and then I'll merge this into master.


[Event Request] Codeunit 80 Sales Post - OnFinalizePostingOnBeforeDeleteAfterPosting

Hi, would it be possible to get an event OnFinalizePostingOnBeforeDeleteAfterPosting in Codeunit 80 Sales Post , procedure FinalizePosting, like this :
                UpdateAfterPosting(SalesHeader);
                UpdateEmailParameters(SalesHeader);
                UpdateWhseDocuments(SalesHeader);
                ArchiveManagement.AutoArchiveSalesDocument(SalesHeader);
                ApprovalsMgmt.DeleteApprovalEntries(RecordId);
                if not PreviewMode then begin

                    IsHandled := false;
                    OnFinalizePostingOnBeforeDeleteAfterPosting(IsHandled,EverythingInvoiced);
                    if not IsHandled then
                        DeleteAfterPosting(SalesHeader);

                end;

    [IntegrationEvent(false, false)]
    local procedure OnFinalizePostingOnBeforeDeleteAfterPosting(IsHandled : Boolean, EverythingInvoiced : Boolean)
    begin
    end;

?
I want to use the EverythingInvoiced parameter so i can't use OnBeforeDeleteAfterPosting event.
Thanks

We will add EverythingInvoiced to OnBeforeDeleteAfterPosting:
    [IntegrationEvent(false, false)]
    local procedure OnBeforeDeleteAfterPosting(var SalesHeader: Record "Sales Header"; var SalesInvoiceHeader: Record "Sales Invoice Header"; var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var SkipDelete: Boolean; CommitIsSuppressed: Boolean; **EverythingInvoiced: Boolean**)

We will add EverythingInvoiced to OnBeforeDeleteAfterPosting:
    [IntegrationEvent(false, false)]
    local procedure OnBeforeDeleteAfterPosting(var SalesHeader: Record "Sales Header"; var SalesInvoiceHeader: Record "Sales Invoice Header"; var SalesCrMemoHeader: Record "Sales Cr.Memo Header"; var SkipDelete: Boolean; CommitIsSuppressed: Boolean; **EverythingInvoiced: Boolean**)

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Error when passing a corrector function using "flatten" to plot_pixels()

Problem description
plot_pixels() has the ability to take a corrector function to be applied to the light curve in each pixel. However, when passing it a corrector function using the Lightkurve flatten() method, it returns a Value Error. I have tested this on both a local install of Lightkurve and on Google Colab, as well as with multiple targets.
Example
import lightkurve as lk
tpf = lk.search_targetpixelfile('KIC 7461601', mission='Kepler', quarter=9).download()
tpf.plot_pixels(corrector_func=lambda x:x.flatten())

Expected behavior
The expected behaviour is for the corrector function to return a flattened LightCurve object for each pixel, and then plot these within a grid. It works as expected when using .normalize() or .remove_outliers(). However, using .flatten(), it returns the following error message:
ValueError                                Traceback (most recent call last)

<ipython-input-16-158042ab5a08> in <module>()
----> 1 tpf.plot_pixels(corrector_func=lambda x:x.flatten())

/usr/local/lib/python3.6/dist-packages/lightkurve/targetpixelfile.py in plot_pixels(self, ax, periodogram, aperture_mask, show_flux, corrector_func, style, title, **kwargs)
   1227             for j in range(self.shape[1]*self.shape[2]):
   1228                 lc = self.to_lightcurve(aperture_mask=masks[j])
-> 1229                 lc = corrector_func(lc)
   1230
   1231                 if periodogram:

<ipython-input-16-158042ab5a08> in <lambda>(x)
----> 1 tpf.plot_pixels(show_flux=True, corrector_func=lambda x:x.flatten())

/usr/local/lib/python3.6/dist-packages/lightkurve/lightcurve.py in flatten(self, window_length, polyorder, return_trend, break_tolerance, niters, sigma, mask, **kwargs)
    542             mask1 = np.nan_to_num(np.abs(self.flux[mask] - trend_signal)) <\
    543                     (np.nanstd(self.flux[mask] - trend_signal) * sigma + Quantity(1e-14, self.flux.unit))
--> 544             f = interp1d(self.time.value[mask][mask1], trend_signal[mask1], fill_value='extrapolate')
    545             trend_signal = f(self.time.value)
    546             mask[mask] &= mask1

/usr/local/lib/python3.6/dist-packages/scipy/interpolate/interpolate.py in __init__(self, x, y, kind, axis, copy, bounds_error, fill_value, assume_sorted)
    456         # Interpolation goes internally along the first axis
    457         self.y = y
--> 458         self._y = self._reshape_yi(self.y)
    459         self.x = x
    460         del y, x  # clean up namespace to prevent misuse; use attributes

/usr/local/lib/python3.6/dist-packages/scipy/interpolate/polyint.py in _reshape_yi(self, yi, check)
    104                                            self._y_extra_shape[:-self._y_axis])
    105             raise ValueError("Data must be of shape %s" % ok_shape)
--> 106         return yi.reshape((yi.shape[0], -1))
    107
    108     def _set_yi(self, yi, xi=None, axis=None):

ValueError: cannot reshape array of size 0 into shape (0,newaxis)

Environment

platform: Linux (Python 3.8) and Google Colaboratory (Python 3.6)
lightkurve version: dev version
installation method: pip on Linux within a conda environment, from source on Colab

Played around with the function (its awesome btw!) and figured this one out: it's because there's a pixel with NaN flux. NaN flux seems to behave fine for the default operations (normalize and remove_outliers) but breaks when using flatten(). We'll have to make a change that skips the corrector function operation in cases where lc is an array of NaNs.

Great catch, @ojhall94! It seems like the problem is averted by passing the function corrector_func=lambda x:x.remove_nans().flatten(). However, I'm definitely going to think about the best way to automatically deal with this behaviour within plot_pixels, or maybe in flatten? Interested to hear anyone else's thoughts on it!


[C#] Infinite recursion in exported property won't throw StackOverflowException as it should

Tested versions

Reproducible in v4.3.stable.mono.official [77dcf97d8]

System information
Godot v4.3.stable.mono - Windows 10.0.22631 - GLES3 (Compatibility) - NVIDIA GeForce RTX 3060 Ti (NVIDIA; <IP_ADDRESS>42) - AMD Ryzen 7 5700X 8-Core Processor (16 Threads)
Issue description
I accidentally made an infinite recursion in one of my project because of a typo.
Godot hangs instead of throwing a StackOverflowException as it should.
When running the project:
The game hangs and the scene is never loaded. Nothing happen until the project is stopped from running.
If the script is annoted with [Tool]
The editor hangs and must be killed with the TaskManager.
Didn't tested with GDScript (sorry I never tried this language)
Steps to reproduce

Add the below code to any node in a scene:

public partial class StackOverflow : Node2D
{
	[Export]
	public string ShouldThrowStackOverflow
	{
		set
		{
			ShouldThrowStackOverflow = value;
		}
		get
		{
			return shouldThrowStackOverflow;
		}
	}

	private string shouldThrowStackOverflow;
}

Assign any value to this property in the editor

Minimal reproduction project (MRP)
Minimal reproduction project (C#)
StackOverflow.zip

I get the exception as expected:
Stack overflow.
Repeat 261661 times:
--------------------------------
   at StackOverflow.set_ShouldThrowStackOverflow(System.String)
--------------------------------
   at StackOverflow.SetGodotClassPropertyValue(Godot.NativeInterop.godot_string_name ByRef, Godot.NativeInterop.godot_variant ByRef)
   at Godot.Bridge.CSharpInstanceBridge.Set(IntPtr, Godot.NativeInterop.godot_string_name*, Godot.NativeInterop.godot_variant*)

How are you launching the game? The exception will most likely not show up in the Godot editor's output, since it can't be catched so we have no way of redirecting it to the editor's output. But if you launch the game from a terminal you should be able to see it in stdout/stderr.

I just click on 'Run the project (F5)' in the editor.
Then the game is stuck on the screen:

Nothing in the output:

Nor in the debugger:

The game won't crash either.
In other word: it is impossible to know what's happening. I spent almost an hour searching for the problem. It was particulary painful because the script I was running had the [Tool] annotation so the editor always became irresponsive. I finally pinpointed the problem by removing code piece by piece some for my script.

Since the exception can't be caught, there's nothing we can do to here. And if the script has the [Tool] attribute, then it's running in the same process as the editor with all the risks that this entails (including potentially freezing or crashing the editor).

The game won't crash either.

In my testing the game does crash eventually, but it may take a while. Once the stack overflow exception has been thrown, the .NET runtime is terminated. The Godot process may unknowingly continue to attempt to interop with .NET which will likely result in a crash, but at this point this is unknown behavior. There's no way of knowing what will happen after this, we're in an invalid and unpredictable state with no way of recovering.

I don't know the Godot's internals but I'm wondering why is it impossible to catch the exception?
Obviously some runtime code is calling my script and should be able to catch the exception and display it somewhere, at least on a message popup and finally crash the app.

It's just one of those exceptions thrown by the .NET runtime that can't be caught, see the documentation for StackOverflowException.
And to be honest, when this exception is thrown it means we've run out of space for the execution stack so we wouldn't be able to do much even if we could catch it. It's just not a recoverable scenario, once you've run into it it's over.

I can confirm this happens with GDScript, too (v4.3.stable.official). I was adding getter/setter functions for my editor-only properties but at one point, when I reset a property in a scene that used the script, it froze in the same way as in the original post, and I couldn't load the project afterwards as it always hanged upon loading. I was only able to figure out the issue by opening Godot in terminal and seeing it print the exact functions that were stack overflowing. To fix the tool script, I had to delete the .godot folder to reset the editor data so that I could open the problem script and unreference a few getters and setters from each other.
The resetting property issue had to do with the property not having a default value set and therefore was resetting to a state that was invalid for one of the functions that used it, so it may or may not be directly related. I don't have the exact code where this happened as of course, I did not back up the code in that state. But this issue costed a few hours of time.


Do I follow JavaScript best practices?

This is an issue regarding if  JavaScript best practice have been used or not

Nice job with not using console.log, window.confirm() or document.write.
There is node_module fir in your .gitginore file.


Update read command in CLI

📚 Context
The cli contains a series of read commands for ease of testing and use, that rely primarily on the readerclient pkg mentioned on #459.
Since the client will be updated, we need to update the read commands to align with the new client.
✔ Solution
Check all methods and calls in cmd/cartesi-rollups-cli/read and verify their integrity, changing when necessary to comply with the new client
📈 Subtasks

[ ] Check and update read functions on the cli

This issue is deprecated, as the cli will undergo major changes for 2.0.0 that need to be aligned with the team.


Isometric getTilesWithinShape behavior

Version

Phaser Version: 3.70

Operating system: Windows 10

Browser: Chrome 119

Description
Expecting to be circle in isometric tilemaps
For radius 100:

For radius 150:

Similar behavior for Rectangle
var tiles = layer1.getTilesWithinShape(new Phaser.Geom.Rectangle(400, 300, 100, 100));
tiles.forEach(tile => {
  tile.tint = 0xff0000;
});

Example Test Code
Tested here:
https://labs.phaser.io/edit.html?src=src/tilemap/isometric/isometric test.js&v=3.70.0
and added this:
var tiles = layer1.getTilesWithinShape(new Phaser.Geom.Circle(400, 300, 100));
tiles.forEach(tile => {
  tile.tint = 0xff0000;
});

and hidden layers 2-5

Hey @gammafp any update yet?

There would be a comment on this issue if there was an update for it. Realistically, unless someone contributes a well-tested PR, we'll probably just have to ensure this function cannot be called on a hex map, because there's no clear mapping from a 2D shape to a hex layout.


QuestsGUI Error On Startup

What is your Quests version / build number (do not say "latest")?
Quests
v3.8.7-b72
QuestGUI
v0.8
Describe the problem and how to replicate it. Any console errors to post using Pastebin.com?
QuestsGUI seems to have an issue on startup and does not load.
https://pastebin.com/psCDQix8
If applicable, can you provide an example quest from quests.yml using Pastebin.com?
https://pastebin.com/sm2VJRmy

I noticed this line in the console, Citizens2 wouldn't be required for QuestsGUI by chance would it?
INFO java.lang.NoClassDefFoundError: net/citizensnpcs/api/npc/NPC

This issue tracker is for Quests; not QuestsGUI. I’ll look into the issue, but please submit future reports to the discussion thread at https://www.spigotmc.org/threads/questsgui-paid.399346/