Feature/nep5

Do we really need the methods (transferFrom, approve, allowance) from ERC20?

They allow you to transfer funds on behalf of someone else which can be pretty valuable.
Use case: Ability for people to set up 'joint' accounts where two users share access to the tokens in the contract while retaining their own distinct accounts.
It could also be used as an interface mechanism for systems to interact with the tokens on behalf of someone else.  A user would 'allow' an application to access their tokens/data.

Very pretty document!  I have 3 suggestions and you can consider about.

Deploy function.
I  think the deploy function should not be the standard token function, it will depends on the specific business needs. Maybe someone need to set the ico start/end time, maybe need to set exchange rate. etc. so I think we should not control it in the protocol.

methods (transferFrom, approve, allowance)
As ERC-23(https://github.com/ethereum/EIPs/issues/223) has removed these functions, so i also think retaining these methods will seems much complicated and the recent ICO seems have no use of these methods. Should we also remove them?

originator
I noticed that the ‘originator’ defined as a required parameter of every function, some function such as totalSupply，name，symbol，decimals，balanceOf  , i think it should be public and there is no need to verify the sender. if we have neoscan(like etherscan)  later, it can be very convenient to query these public methods. so i think where need to verify where to add check of  originator  is better.

finally, @erikzhang , i think we also need  Function signature description file just like ethereum's ABI file ,which will generate when compile the smart contract, with this, the client will be very easy to support Various applications.

@luodanwg

I agree,  There are many mechanics by which people will want to deploy the contract so it should not be part of the standard.

As mentioned in the previous comment, I believe we should keep the delegated transfer functions because they allow for some potential user - application interaction that cannot easily exist otherwise.

I agree with this as well.

another suggestion.
NEO is support runtime.notify func to notify the client some events. So i think we can also add the notify when Transfer or Approval is completed.

Maybe we can mark some methods as "optional".

Optional method and Runtime.notify() have been added to all 'authenticated' methods.

What is the use of "NotifyOriginator"? Why don't we just add a "transferred" event?

I have 3 suggestions
1.Good news, As i comfired with @erikzhang , NEO will also support ABI files later,  so the method should defined with much detailed parameters.  such as
private static bool Transfer(byte[] from,byte[] to,number value)
2.Method totalSupply should return the value of token issued.  The hard capacity and soft capacity is the business needs(maybe have, maybe not have) ,so it should not include in our protocol.
3.I think the Event NotifyOriginator should be Transferred event just like ERP-20 ,  so the sender and receiver all can catch it.
sample: private static bool Transferred(byte[] from,byte[] to,number value)
ps: We will also attach another NEP-5 template here later, could you also helps to check it , Thanks in advance. 😸

@luodanwg agree

If the transaction failed, VM will stop at a FAULT state, which can be detected easily.

approve / transferFrom / allowance were included in ERC20 token standard to resolve EthereumVM related issues with "call stack depth attack". They should be considered deprecated and superfluous now. These functions doesn't introduce any functionality that could not be implemented without them. Call stack depth attack was resolved at the EIP150 (as you can see it happened a bit later than EIP 20 was created).
You should keep in mind that ERC20 token standard functions are leading to monetary losses. I wrote a number of articles about it (for example this one).
The main problem of ERC20 token is that it has two ways of transferring funds:

transfer
approve + transferFrom

which assumes that first pattern is processed without handling by the receiver and the second pattern simulates transaction handling.
The purpose of approve + transferFrom was described in solidity documentation at page 39:

Warning: There are some dangers in using send:  The transfer fails if the call stack depth is at 1024 (this can always be forced by the caller) and it also fails if the recipient runs out of gas.  So in order to make safe Ether transfers, always check the return value of send, use transfer or even better: use a pattern where the recipient withdraws the money

This was relevant at the moment of creating ERC20 token standard, but the stack depth attack was fixed through EIP150 . As the result of this approve + transferFrom must be considere deprecated now.
I think that there is no need to develop and implement the approve / allowance mechanism because:

approve + transferFrom is leading to monetary losses since it assumes another way to transfer tokens (And an alternative way to execute a transaction often does not implement handling)
vulnerability to re-approval attack is described here
approve is superfluous since common pattern of transactions handling is fallback function execution. It is already described in ERC223.

I'd like to recommend to remove decApprove / setApprove / getAllowance from the token standard because of described problems of this approach.

We are trying to make NEP5 ERC223 compliant... and as the author of that standard, you do provide some good insight. We will take that into consideration.

@lllwvlvwlll I hava attached our template at issue 6 , could you helps to review it ,thanks.
https://github.com/neo-project/proposals/issues/6

@Dexaran Strongly agree!

What is ".nep-5.mediawiki.swp"?

I believe that's a swap file, created automatically as logging by some text editors. It can be removed without any issue. @lllwvlvwlll

can we approve and Merge this?

We still need more tests for its implementations.

I wonder on usage of the wording "account" rather than "address" when referring to transferring funds in this document. Account implies a higher level Object than what is actually being used, and I think is a point of confusion for many developers when they begin to mix the concept of an address with the concept of an account. In blockchain projects I would typically think of an account as the combination of all relevant public and private keys (WIF, pubkey, privkey, address).
In summary think it would be more clear to refer to the byte array parameters in this document as addresses rather than accounts (which I argue is a more true representation of what they actually are).  Thoughts?

Token Standard ABI:
{
  "functions": [
    {
      "name": "totalSupply",
      "parameters": [],
      "returntype": "Integer"
    },
    {
      "name": "name",
      "parameters": [],
      "returntype": "String"
    },
    {
      "name": "symbol",
      "parameters": [],
      "returntype": "String"
    },
    {
      "name": "decimals",
      "parameters": [],
      "returntype": "Integer"
    },
    {
      "name": "balanceOf",
      "parameters": [
        {
          "name": "account",
          "type": "Hash160"
        }
      ],
      "returntype": "Integer"
    },
    {
      "name": "transfer",
      "parameters": [
        {
          "name": "from",
          "type": "Hash160"
        },
        {
          "name": "to",
          "type": "Hash160"
        },
        {
          "name": "amount",
          "type": "Integer"
        }
      ],
      "returntype": "Boolean"
    }
  ],
  "events": [
    {
      "name": "transfer",
      "parameters": [
        {
          "name": "from",
          "type": "Hash160"
        },
        {
          "name": "to",
          "type": "Hash160"
        },
        {
          "name": "amount",
          "type": "Integer"
        }
      ]
    }
  ]
}

It would be nice if we also had a standard set of functionality for ICOs (at least an ABI). https://github.com/neo-project/examples-csharp/blob/master/ICO_Template/ICO_Template.cs is a good start, but it'd be good if it could expose things like ico_start_time and ico_end_time. Not part of this proposal of course, but this seemed the most relevant so commenting here.

@erikzhang we should also consider a 'listMethods' method which returns the definition for each supported method in the contract.

@Dexaran @erikzhang removing approve and transferFrom requires the SC to call tokenFallback on receiver contract, is that correct? given that NEO requires that all outside SC contract calls to be declared in advance for a contract, it does not seem possible for NEP-5 tokens to transfer to arbitrary contracts in NEO? (you would need to declare all possible contracts the NEP-5 would communicate with in advance?)
can you explain more? perhaps I am missing something

Alright, I'll try to give a brief explanation.
How it works with Ether. Fallback function and payable modifier.
As for Ethereum contracts and solidity, there is a fallback function that is executed whenever the call transaction does not provide a signature that matches any of the signatures of the functions implemented in this contract. Read solidity docs for more detailed description. There is a special payable modifier that allows a function of a contract to receive funds (Ether). You can not deposit any Ether into contract that is not specially designed to receive Ether. The transaction will always fail if the function that is executed is not marked as payable.
If you want to create an Ethereum contract that will accept Ether deposits, you must explicitly declare a deposit function or a fallback function and use the payable modifier. Example:

contract Receiver_of_Ether
{
    function() payable
    {
        // fallback function allows to deposit Ether to this contract.
        // payable modifier is required.
    }
}

This is specially done to prevent the accidentally sent Ethers being stuck inside contracts. If the contract is not explicitly allowed to receive funds then any attempt of depositing Ether will fail and the funds will not be transferred to the contract (the funds will remain at user's balance).
Rationale. Preventing user mistakes and losses of money.
We should keep in mind that not all users are technically advanced and some of them will try to send Ether into contracts by mistake. This is a reasonable protection from the most common user mistakes that could lead to disasterous consequences and millions of dollars lost.
How it works with ERC223 tokens.
I followed this approach when developing the ERC223 standard. I think the contract should explicitly declare that it is specifically designed to receive tokens if it is going to receive tokens. Otherwise, it must reject token deposits by default. This is analogue of how it works with Ether.
As for Ether, contract must implement a fallback function with payable modifier to receive Ether.
As for tokens, contract must implement a tokenFallback function to receive tokens. If the contract does not implement it, then any attempt to deposit (Ether or tokens) must fail.

contract Receiver_of_Tokens
{
    function tokenFallback(address,uint256,bytes)
    {
        // tokenFallback function allows to deposit tokens to this contract.
        // no payable modifier, we do not allow user to deposit ETH, but only tokens.
    }
}

It must not be possible to transfer tokens to a contract that is not designed to receive them (that does not implement a special tokenFallback function or any other function that you agree to use as token transfer handler. The function name does not seem to be essential here).
Mistakes of ERC-20 standard and why a contract MUST explicitly declare that it is designed to receive funds.
Unlike ERC-223 transfers or Ether transactions, ERC-20 transfer function does not require a receiver to implement a special function for it. A user can just send ERC-20 tokens to any address he wants. As a result, contracts that are not specifically designed to work with tokens (for example, ENS contracts and token contracts themselves) constantly receive tokens that are accidentally sent.
These tokens become stuck inside contracts without any possibility to recover them. In other words, users lose their tokens (money) this way.
Event handling is a common practice in programming. Transaction should be considered an event and it should be properly handled. ERC-20 lacks this transaction handling mechanism at all and this is a known problem of ERC20 standard.
It already results in lost money (you can read about it here, here and here ). The last time I checked it, there were about $400,000 lost in stuck ERC-20 tokens. It was a long time ago, and I believe that we are talking about millions of dollars lost at the moment.

Thanks @Drexan! This does not address the limitations of NEO I mentioned.
My concern above is that ERC223 cannot be implemented currently in NEO
given lack of dynamic SC calls
And if I am wrong and can be implemented, it at least has not been
described correctly in the current NEP-5 specification
On Fri, Oct 27, 2017 at 12:52 PM Dexaran<EMAIL_ADDRESS>wrote:

Alright, I'll try to give a brief explanation.
How it works with Ether. Fallback function and payable modifier.
As for Ethereum contracts and solidity, there is a fallback function that
is executed whenever the call transaction does not provide a signature that
matches any of the signatures of the functions implemented in this
contract. Read solidity docs
http://solidity.readthedocs.io/en/develop/contracts.html for more
detailed description. There is a special payable modifier that allows a
function of a contract to receive funds (Ether). You can not deposit any
Ether into contract that is not specially designed to receive Ether. The
transaction will always fail if the function that is executed is not marked
as payable.
If you want to create an Ethereum contract that will accept Ether
deposits, you must explicitly declare a deposit function or a fallback
function and use the payable modifier. Example:
contract Receiver_of_Ether
{
function() payable
{
// fallback function allows to deposit Ether to this contract.
// payable modifier is required.
}
}
This is specially done to prevent the accidentally sent Ethers being stuck
inside contracts. If the contract is not explicitly allowed to receive
funds then any attempt of depositing Ether will fail and the funds will not
be transferred to the contract (the funds will remain at user's balance).
Rationale. Preventing user mistakes and losses of money.
We should keep in mind that not all users are technically advanced and
some of them will try to send Ether into contracts by mistake. This is a
reasonable protection from the most common user mistakes that could lead to
disasterous consequences and millions of dollars lost.
How it works with ERC223 tokens.
I followed this approach when developing the ERC223 standard. I think the
contract should explicitly declare that it is specifically designed to
receive tokens if it is going to receive tokens. Otherwise, it must
reject token deposits by default. This is analogue of how it works with
Ether.
As for Ether, contract must implement a fallback function with payable
modifier to receive Ether.
As for tokens, contract must implement a tokenFallback function to
receive tokens. If the contract does not implement it, then any attempt to
deposit (Ether or tokens) must fail.
contract Receiver_of_Tokens
{
function tokenFallback(address,uint256,bytes)
{
// tokenFallback function allows to deposit tokens to this contract.
// no payable modifier, we do not allow user to deposit ETH, but only tokens.
}
}
It must not be possible to transfer tokens to a contract that is not
designed to receive them (that does not implement a special tokenFallback
function or any other function that you agree to use as token transfer
handler. The function name does not seem to be essential here).
Mistakes of ERC-20 standard and why a contract MUST explicitly declare
that it is designed to receive funds.
Unlike ERC-223 transfers or Ether transactions, ERC-20
https://github.com/ethereum/EIPs/issues/20 transfer function does not
require a receiver to implement a special function for it. A user can just
send ERC-20 tokens to any address he wants. As a result, contracts that are
not specifically designed to work with tokens (for example, ENS contracts
and token contracts themselves) constantly receive tokens that are
accidentally sent.
These tokens become stuck inside contracts without any possibility to
recover them. In other words, users lose their tokens (money) this way.
Event handling https://en.wikipedia.org/wiki/Event_(computing) is a
common practice in programming. Transaction should be considered an event
and it should be properly handled. ERC-20 lacks this transaction handling
mechanism at all and this is a known problem of ERC20 standard
https://medium.com/@dexaran820/erc20-token-standard-critical-problems-3c10fd48657b
.
It already results in lost money (you can read about it here
https://www.reddit.com/r/ethereum/comments/6e8y9o/the_ens_contract_becomes_token_holder_erc20/,
here
https://www.reddit.com/r/storj/comments/6t2czj/5000_are_lost_storj_erc20_tokens_are_vulnerable/
and here
https://www.reddit.com/r/storj/comments/6ajjo3/attention_issues_of_the_upcoming_storj_migration/
). The last time I checked it, there were about $400,000 lost in stuck
ERC-20 tokens. It was a long time ago, and I believe that we are talking
about millions of dollars lost at the moment.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/neo-project/proposals/pull/4#issuecomment-340069453,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFeEiSIhku9zsKEVse2rqmp5ooCUW64ks5swjRfgaJpZM4O0SdA
.

I'm not really familiar with NEO. I can only describe how it works on Ethereum and why.
As for NEO, I can highlight key points of the token standard:

You must disallow token deposits to contracts that are not explicitly designed to receive tokens.

Token deposits to contracts and deposits to addresses should behave differently.

You must implement a mechanism of transaction handling. This will allow to "do something on incoming token transfer".

Designing a couple of different functions to perform transfers to contracts and transfers to addresses is an antipattern. Someone will obviously choose the wrong way (a user will call depositToAddress when depositing into contract hence he will lose money).

thanks for taking the time @Dexaran! i do agree with your critique of ERC20
my point in raising this comment is that NEP5 is not following ERC223 in its current state, and possibly, can't follow it right now given differences between NEO and ETH. my understanding is that NEO smart contracts require that any calls between SCs to be declared statically within the contract that will do the calling. this has potential scalability benefits but may prevent a direct reimplementation of ERC223.
maybe @erikzhang can look at the above and comment further

@erikzhang an update on this:
@localhuman has confirmed with me that dynamic SC calls (calls between SCs that are not statically declared) are not allowed on the NEO VM. this means that ERC223 is currently not possible (a token needs to do a dynamic call on the receiver contract)
it is very important that NEP-5 tokens are powerful enough to support the behaviors specified by either ERC20 or ERC223. among the many other applications, decentralized exchanges will not work without these features. as it stands, unless a token implements the optional methods in this NEP-5, it is impossible to send it to another SC and have it do meaningful work on your behalf
we would recommend:
(1) enabling dynamic SC calls: this would be a simple change in the VM, there is a lot of other low hanging fruit for performance before we get to sharding VM resources. there could also be something like a dynamic flag that indicates whether dynamic SC calls are used in a contract, to preserve scalability benefits for simpler contracts
(2) more critically, make NEP-5 fully compliant with either ERC20 or ERC223. the tokens are not powerful enough for basic functionality right now
in summary, (1) is important but (2) is absolutely necessary. it will be very bad if the ecosystem grows using the current version of NEP-5

@luodanwg can you bring this issue to Zhengwen attention ? I think @Ejhfast  will do a PR for NEP5 Amendment with (2) making it fully compliant with ERC-20. Rgds.

An important difference between Ethereum and NEO is that: in NEO, you can combine multiple invocations into one transaction, and ensure transaction consistency.
That means, you don't need a trigger to call tokenFallback automatically. You can call everything you want in InvocationTransaction.

@erikzhang if that is possible, it needs to be specified in the protocol, otherwise NEP5 tokens are broken, and will not be able to interact with SCs in interesting ways (lacking equivalent functionality to ERC223)
also, in terms of whether it is possible, tokenFallback should be called conditionally on a successful transfer, so I am not sure how this happens using the technique you propose


[Feature Request] SCAR (Scripting at Relic) Support

The videogame studio Relic uses a custom extension on top of Lua to write mods for their game. There have been a few attempts at writing a visual studio plugin for them such as https://github.com/Janne252/vscode-scar. I'd like to basically port the functionality of that plugin into the language server since it's the most common tooling for Lua in vscode now.
Would the plugin functionality described here https://github.com/sumneko/lua-language-server/wiki/Plugin be a good fit for this type of project? If so I'm not 100% sure the best way to get started, do you have any more examples or ideas that could help get me started?
Full functionality:

[ ] Autocompletion

[ ] SCARDOC functions
[ ] SCARDOC enums
[ ] LuaConstsAuto.scar blueprints
[ ] Current document words
[ ] Lua standard library functions
[ ] Workspace user-defined function

[ ] Workspace user-defined function documentation parsing (based on LDoc format)

[ ] Intellisense (function parameter autocompletion)

[ ] SCARDOC functions
[ ] Workspace user-defined functions

[ ] Dynamic syntax highlighting

[ ] SCARDOC functions
[ ] SCARDOC enums
[ ] LuaConstsAuto.scar blueprints
[ ] Lua standard library functions
[ ] Workspace user-defined functions

[ ] Misc

[ ] Reload workspace user-defined functions
[ ] Find LuaConstsAuto.scar blueprint

Plugin is used to support custom syntax.
For example, some projects will modify the Lua source code to support continue, Plugin can modify the text before the language server processing code, such as replacing the continue to spaces.
If you just want to join a custom API support, you only need to make annotation files, see https://github.com/sumneko/lua-language-server/wiki/EmmyLua-Libraries

@williamhammond has your issue been resolved?


ElementEditingWatcher and locationWrapper is not defined in code-instrumentation\properties\index.js

/cc @churkin @AlexanderMoskovkin

lgtm

lgtm


Adding a new rebus

Associated Issue: #
Summary of Changes

change 1
change 2

Pull Request Test Coverage Report for Build 848

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 87.143%

Totals

Change from base Build 514:
0.0%

Covered Lines:
158

Relevant Lines:
180

💛  - Coveralls


Scroll through horizontal image gallery where images are are panzoom objects.

Hello,
first thanks for this awesome library it works like a charm! I wanted to ask if it is possible to make it so panzoom does work when having the images with a panzoom instance within a horizontal scroll area? The problem I am facing is that the scrolling dosent work when trying to slide left/right on the image itself (the scrolling does work when not swiping on the image itself).Please see the gif I have attached to see the problem I am facing.

Note: When removing the panzoom instance from the image I can scroll by sliding on the image itself, this is what I am trying to achieve. See below.

So what I basically want is the panzoom functionality aswell as being abel to scroll the carousell by sliding left/right on the images. I tried it with the option panOnlyWhenZoomed aswell as slienting all events as stated in the docs, non of these options seem to work. Any advice would be welcome.
Thanks in advance.

Thanks for opening an issue. Silencing events won't have an effect. panOnlyWhenZoomed is probably a good option to use, but it sounds like you also want disablePan: true. The reason it's not scrolling is that the panzoom start event calls
preventDefault and stopPropagation** on the pointer event by default. You can change this with the handleStartEvent option. While pinch zooming while scrolling might turn out weird, it should work okay. If you create a test case, I might be able to help further, but I think the existing options are enough to get this working.

Hello thanks for the response, Sadly none of the tips you gave me worked...both disabled the panning but still I was not able to scroll trough my carousel. Is there something else going on when swiping on a image with a panzoom instance on it? Anything else that gets blocked maybe? If I find the time I will create a codepen :)
Thanks for your help so far!

Did you also try handleStartEvent? That one is essential as the event needs to make it to ancestor that is scrolling. In normal circumstances, the default is the desired behavior as the event can only be used for scrolling or for panning (not both), so event.preventDefault() and event.stopPropagation() is called. That's the reason why scroll wouldn't work. This is only necessary for the start event because the move and up handlers do not call those methods.

Yes I also tried the handleStartEvent with no effect.

I set it to a empty function like mentioned in the docs:
// Do nothing (this probably breaks things on mobile tho)
Panzoom(elem, {
  handleStartEvent: () => {}
})

Ok, we can work through it more when you make an example.

 The reason it won't scroll is due to styles set on both the panzoom element and panzoom parent element. Panzoom automatically did the following:
parent.style.touchAction = 'none'
elem.style.touchAction = 'none'

The native scroll interferes with panning and pinch zooming, which means both cannot work at the same time. However, I've added an option to allow you to alternate touchAction values. This should be the tool you need to get the desired behavior.
While pinch zooming can't be enabled at the same time as scrolling, you could set the touchAction to 'none' based on a long press or other gesture.

Hey @timmywil!
Thanks for the update and thanks for the addition. This really helps me a lot. Sorry for not providing an example myself I was really busy at work as well as with my masters degree.
Kind regards.


Vehicle: add maxcurrent setter

Refs https://github.com/evcc-io/evcc/pull/13046#issuecomment-2009205895

please add
startcharge
stopcharge

also, thanks!

Separate PR, that's a little more ugly to do.


feat(client): StatelessL2BlockExecutor

Overview
Implements the StatelessL2BlockExecutor, capable of executing L2ExecutionPayloadEnvelopes and returning the block header + receipts.
The StatelessL2BlockExecutor is backed by the TrieDB in the kona-mpt crate, fetching necessary data from the initial state root as well as the starting parent block hash.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#210  👈
#206
#205
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @clabby and the rest of your teammates on  Graphite


ArgumentError

https://github.com/autonomousvision/graf/blob/eaa2d6e47e92a7f56f9531299b032c20c5b6caf6/submodules/nerf_pytorch/run_nerf.py#L368
The argument is duplicated, and causes an error
It should be
parser.add_argument ("- N_rand", type = int, default = 32 * 32 * 4, help = 'batch size (number of random rays per gradient step)')

That's true, thanks! I fixed it in the file.
It should not cause an error in the main code though, as we only use the modified version of this file (run_nerf_mod.py). The other file is just included for completness of the submodule. Please refer to the original repo https://github.com/yenchenlin/nerf-pytorch for the latest version of the submodule.

That's true, thanks! I fixed it in the file.
It should not cause an error in the main code though, as we only use the modified version of this file (run_nerf_mod.py). The other file is just included for completness of the submodule. Please refer to the original repo https://github.com/yenchenlin/nerf-pytorch for the latest version of the submodule.


Expose decline offer in node API

Signed-off-by: Miroslav Kovar<EMAIL_ADDRESS>

Codecov Report

Merging #453 (cba6552) into main (ff831e6) will decrease coverage by 34.12%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main     #453       +/-   ##
===========================================
- Coverage   60.28%   26.16%   -34.13%
===========================================
  Files         154       19      -135
  Lines       14532      967    -13565
  Branches     3588      189     -3399
===========================================
- Hits         8761      253     -8508
+ Misses       2376      639     -1737
+ Partials     3395       75     -3320

Flag
Coverage Δ

integration-aries-vcx
?

unittests-agency-client
26.16% <ø> (ø)

unittests-aries-vcx
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

aries_vcx/src/init.rs
0.00% <0.00%> (-36.67%)
:arrow_down:

agency_client/src/utils/comm.rs
0.00% <0.00%> (-25.00%)
:arrow_down:

agency_client/src/httpclient.rs
0.00% <0.00%> (-15.91%)
:arrow_down:

agency_client/src/agent_utils.rs
15.00% <0.00%> (-13.10%)
:arrow_down:

agency_client/src/agency_client.rs
0.00% <0.00%> (-9.10%)
:arrow_down:

agency_client/src/get_message.rs
0.00% <0.00%> (-5.97%)
:arrow_down:

agency_client/src/update_message.rs
22.64% <0.00%> (-3.75%)
:arrow_down:

agency_client/src/payload.rs
0.00% <0.00%> (ø)

aries_vcx/src/handlers/issuance/holder.rs

aries_vcx/tests/test_integration.rs

... and 134 more

Continue to review full report at Codecov.

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


Cucumber test fail for supplyagreement template

Currently running 12 steps (1 failed, 11 passed) on supplyagreement. When testing, there was an external .js file for state and another for request.
State:
{
   "$class": "org.accordproject.supplyagreement.AgreementState",
   "stateId": "org.accordproject.supplyagreement.AgreementState#1",
   "purchaseObligation" : null,
   "deliveryObligation" : null,
   "paymentObligation" : null
 }

Request:
{
   "$class": "org.accordproject.supplyagreement.ForecastRequest",
   "supplyForecast": 1200.0
}

When command is run cicero execute -—request req1.js -—state state1.js, this returns:
{
  "clause"<EMAIL_ADDRESS>  "request": {
    "$class": "org.accordproject.supplyagreement.ForecastRequest",
    "supplyForecast": 1200
  },
  "response": {
    "$class": "org.accordproject.supplyagreement.ForecastResponse",
    "transactionId": "f4b88cdb-ec55-41d1-bd55-6c6f1648d2ab",
    "timestamp": "2019-02-20T22:52:04.398Z"
  },
  "state": {
    "$class": "org.accordproject.supplyagreement.AgreementState",
    "purchaseObligation": {
      "$class": "org.accordproject.supplyagreement.PurchaseObligation",
      "requiredPurchase": 1020,
      "year": 2019,
      "quarter": 1,
      "party": "PETER"
    },
    "stateId": "org.accordproject.supplyagreement.AgreementState#1"
  },
  "emit": []
}

So, taking that state:
"$class": "org.accordproject.supplyagreement.AgreementState",
"purchaseObligation": {
  "$class": "org.accordproject.supplyagreement.PurchaseObligation",
  "requiredPurchase": 1020,
  "year": 2019,
  "quarter": 1,
  "party": "PETER"
},
"stateId": "org.accordproject.supplyagreement.AgreementState#1"

And listing it as the Then the new state of the contract should be result in the logic.feature file.
Still receiving this error message:
✖ Then the new state of the contract should be # ../../node_modules/@accordproject/cicero-engine/lib/steps.js:189
       """
       {
           "$class": "org.accordproject.supplyagreement.AgreementState",
           "purchaseObligation": {
             "$class": "org.accordproject.supplyagreement.PurchaseObligation",
             "requiredPurchase": 1020.0,
             "year": 2019,
             "quarter": 1,
             "party": "PETER"
           },
           "stateId": "org.accordproject.supplyagreement.AgreementState#1"
       }
       """
       {}
       Error
           at orgXaccordprojectXsupplyagreementXSupplyAgreement_demandforecast (vm.js:61:11)
           at __dispatch (vm.js:1218:17)
           at vm.js:1198:9
           at ContextifyScript.Script.runInContext (vm.js:59:29)
           at VM.run (/Users/jolenelanglinais/Code/Clause/CucumberWkShp/cicero-template-library/node_modules/vm2/lib/main.js:211:72)
           at Engine.execute (/Users/jolenelanglinais/Code/Clause/CucumberWkShp/cicero-template-library/node_modules/@accordproject/cicero-engine/lib/engine.js:233:27)
           at send (/Users/jolenelanglinais/Code/Clause/CucumberWkShp/cicero-template-library/node_modules/@accordproject/cicero-engine/lib/steps.js:53:19)
           at World.<anonymous> (/Users/jolenelanglinais/Code/Clause/CucumberWkShp/cicero-template-library/node_modules/@accordproject/cicero-engine/lib/steps.js:196:16)

This is due to a combination of:

the template manipulates time, and the tests should make sure the current time is set appropriately
if no time is set, the tests assume unix zero time is the current time, which makes the following enforce condition on the demand forecast fail. This corresponds to this line in the Ergo logic:
https://github.com/accordproject/cicero-template-library/blob/3871da87c710f75d942aeb33562b4af4f13d79f0/src/supplyagreement/lib/logic.ergo#L54
The error reporting for ergo logic errors in Cicero is really bad, I believe this might be a regression and an issue should be open on Cicero for that.

There is a proposed fix here https://github.com/jeromesimeon/cicero-template-library/commit/fb0c739b7932a71778830344b00090f04ae05eae

@irmerk Can I take this issue

@irmerk Maybe this is closed?


Fix [UI/UX Page] Known issue

[+] fix(chat.ts): fix known issue where summarize is not using the current model selected
[+] feat(chat.ts): add support for user-selected model in getSummarizeModel function
[+] feat(builder.sh): add script to modify tauri.conf.json file and build Tauri application

Issue:

ChatGPTNextWeb#3621

Rebase without commit history (magic) done.
the branch is up to date


Jesse: Watch ijmre.com

Jesse requests the watch of the watch_keyword ijmre\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

ijmre\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Mast in Charcoal HQ


make registry dependencies available in 5.7

motivation: make experimental use of registry easier
changes:

make registry based dependencies syntax available in 5.7
move the relevant tests to the 5.7 suite

@swift-ci smoke test


[FEATURE] Support custom operator

I plan to support custom operator, and then I will rewrite anole's tokenizer and parser.

Make TokenType be the enum but not enum class, and then record the number of TokenTypes, contain the raw token types and the types defined by users.
Custom operators cannot be letters or numbers and different operators should be splited by spaces, so tokenzier can distinguish operators easily.
Enable users to define the custom operators' priorities.

complete


Track build state & disable/enable tasks accordingly

We shouldn't re-run build-init for example if the builddir is already there.

As far as the vscode tasks api allows, we can't really track if a command failed. Until that's fixed upstream, there's nothing we can more than what we currently have.


UI - Authorize flow shows christian instead of official SSW account

When authorizing a new account it uses @christianmorfordwaitessw account instead of the official SSWConsulting ssw account

Repro steps:

If you have already signed in Go to GitHub | Settings | Applications | Authorized OAuth apps
Find SSW Rules

Revoke App
Sign in again through SSW Rules

AB#59759

To: @AndreasLengkeek
Cc: @adamcogan
Hi @AndreasLengkeek,

When authorizing a new account it uses @christianmorfordwaitessw account instead of the official SSWConsulting ssw account

Done - The GitHub Authorization App has been transferred to SSWConsulting

Figure: Authorization app now displays SSWConsulting

Figure: Authorization app is now owned by SSWConsulting


Restructure readme

Depends on #2 and decision on plugin name.

See https://github.com/simPod/simple-json-datasource/issues/4- do you want to rename the repo, too? I'll update this PR accordingly.

Yes, I'd do that. We probably will publish it later, right?

Just made the name shorter to "JSON":

@andig I'd go with the first one. JSON is kind of common word and doesn't imply datasource so I'd add datasource to the name. grafana-json-datasource. WDYT?

@simPod gogogo :)

I have just renamed the repo


Unknown Light Version

Hi,
I have three of these RGB LED Strip controllers: link
They appear in HomeKit and can be turned on and off, but any change to their brightness or color gives no response and causes an Unknown Light Version message in the log.
log.txt

I was waiting for someone with this version of the controller. I will add that functionality and get back to you. Thank you for posting your log, it's exactly what I needed.

try updating now
npm install -g homebridge-magichome-dynamic-platform

Actually scratch that, wait one moment, need a little more logic. I don't have the RGB controller here so I can't test it.

Alright give it a shot.

I have updated, I'm getting no unknown device errors but I can still only turn the strips on and off. Dimming and colour change have no effect on the lights.
This could just be an issue on my end, I'm struggling to get any plugin working with these strips, although yours is the closest I have gotten, so thank you!

Yeah dimming won’t work if color change won’t work, the controllers dim by changing the brightness of each color.
I’m sure you’ve got them changing color with the magichome app?
Open the magic home app and click settings.
Magichome original app: gear icon in the top left corner.
Magichome “pro” app: gear icon in the top left corner>device settings
Your device should show with a name and version. Something like:
Bulb A8095B
ABCD12345 , v6
What does yours show?
I can work together with you directly on the Homebridge discord group here: https://discord.gg/eeZGpj
I’m sure it’s just expecting a certain protocol that we need to figure out. Which we will. Contact me.

All three of my controllers appear as v4. I’ve posted the issue on the discord under magichome. thank you for your help!

I have updated the plugin. Please update by following instructions left at the discord magichome channel.

Issue was solved by determining RGB controller’s protocol and adding logic for it.


Add nested Arm template for App service plan metric

Context
Add nested arm template for App Service Plan metric alert. This allows alert to be sent, when certain threshold is reached e.g. CPU utilisation reaches over 80%
Changes proposed in this pull request
Add nested arm template for App Service Plan metric alert
Guidance to review
Checklist

[ x] Make sure all information from the Trello card is in here
[x] Attach to Trello card
[x] Rebased master
[x] Cleaned commit history
[x] Tested by running locally

 Monitor high CPU / high memory usage


docs(codegen): fix and reformat CodeBuffer examples

Fix examples which would not compile.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#6499  👈
#6498
#6497
#6496
#6495
#6494
#6493
#6492
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

Small change, so merging without review.

Merge activity

Oct 13, 6:05 AM EDT: The merge label '0-merge' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.


UserProfile in session/local storage

How can I either hide the UserProfile in storage since it is displaying in plain text and I have role claims in the idToken and I don't want the idtoken claims in the UserProfile. I've used other oidc clients for other technologies and that was never displayed like that. Is there a way to turn that off?
loadUserInfo: false,
filterProtocolClaims: true,
response_type: 'id_token token'

Using the settings userStore give you full control. See https://authts.github.io/oidc-client-ts/interfaces/UserManagerSettings.html#userStore

I am but the code has export type UserProfile = IdTokenClaims;  so the idtokenclaims and being added to the profile regardless and the filterProtocolClaims:true doesn't do anything so I'm just creating a custom Storage and filtering out profile. profile shouldn't display all those properties that by default and should be optional to even store Profile in storage


[azservicebus] Fixing bug where a closed namespace would not be properly revived by negotiateClaim.

We weren't nil'ing out the ns.client value, so it was possible for any calls to ns.GetAMQPClient() to get an old (and closed) client.


Adds the registry viewer to devfile-web

What does this PR do / why we need it:
This finishes the redesign of the registry viewer and adds license headers to source code.
Which issue(s) this PR fixes:
Fixes https://github.com/devfile/api/issues/916, https://github.com/devfile/api/issues/791, https://github.com/devfile/api/issues/728, https://github.com/devfile/api/issues/714, https://github.com/devfile/api/issues/712, https://github.com/devfile/api/issues/654, https://github.com/devfile/api/issues/653, https://github.com/devfile/api/issues/596, https://github.com/devfile/api/issues/592, https://github.com/devfile/api/issues/946,https://github.com/devfile/api/issues/950, https://github.com/devfile/api/issues/965
PR acceptance criteria:

[ ] Unit Tests
[ ] E2E Tests
[ ] Documentation

How to test changes / Special notes to the reviewer:
@kim-tsao @michael-valdron The registry viewer no longer tracks download starter project events or share devfile link events. This should allow us to finish https://github.com/devfile/api/issues/803.

@schultzp2020 We shouldn't close out https://github.com/devfile/api/issues/965 until it's live on the registry, so I'd remove it from the list of fixed issues.
Good point, I will remove.


Add an "auto delete" capability for presentation exchange records

Presentation exchange records don't automatically get deleted.
There is currently a --preserve-exchange-records parameter but that seems to apply only to credential exchange records.
Add the ability to "auto-delete" presentation exchange records, either through a startup param (like the cred exch flag), or through an extra param on the "verify" function (e.g. auto-delete after verify).

@usingtechnology — assigning this one to you.  Not sure of exactly the state of this, but this same feature that applies to issue-credential protocol state objects should apply to present-proof.
Suggested approach is to do a small waterfall project — plan what you are going to do, with a HackMD.io or equivalent document to review with a maintainer, and then make the changes.

Added a hackmd proposing a game plan.

Added comments to the hackmd, only consideration is adding "auto delete" capability on both the verifier and holder sides of the pres exch protocol.

Thanks @ianco . Update the hack md to break up the configuration into verifier/holder specific settings. Allowing the holder to preserve records independently of the verifier configuration. Proposing we add similar functionality for credential exchange.
Not sure if this would be the PR to support tenant-level overrides too? At least start sketching in a framework that would support it.

Not sure if this would be the PR to support tenant-level overrides too?

I'd do this in a separate PR ...


[Feature request] Support Eslint version 6

Hi,
ESlint 6 have been release, could you please add it to the peerDependencies, thank you.
https://github.com/webpack-contrib/eslint-loader/blob/02c1e76d9235823c6bb296ad68d74c99bfcc4445/package.json#L19

It looks like this loader breaks with eslint 6...

Indeed I've just try. Renaming this issue to support ESlint 6

Fixed in #275, but there's a need to update the CI configuration so it doesn't attempt to test with ESLint 6 on Node 6, since ESLint has dropped support for Node 6.

Hi everyone, I'm from ESLint.
Instead of doing a direct require to a formatter path, I would recommend CLIEngine#getFormatter (if you have a CLIEngine instance) or CLIEngine.getFormatter (static function you can use if you don't have an instance).
Requiring the path directly is not part of the public API and could change any time, even in patch releases. The two CLIEngine options are in the public API and won't change except in a major release (and then, only when absolutely needed and we can't deprecate).
Good luck! Please stop by our Gitter chat if you need help.

related to https://github.com/vuejs/eslint-plugin-vue/issues/916

related https://github.com/eslint/eslint/issues/11910

Similar issue
Module build failed (from ./node_modules/eslint-loader/index.js):
Error: Failed to load plugin 'import' declared in '.eslintrc.js » @vue/eslint-config-standard » C:\Users\Anon\Desktop\xxxx\node_modules\eslint-config-standard\index.js': Cannot find module 'eslint/lib/util/source-code'

Works perfectly with 5.16.0

Hi @jimblue
Resolved #275 , waiting a new version

Sounds good 😄
Waiting the new release to test it and close this issue.

@jimblue anything we can do to accelerate this process?

@ahmadalfy I don't think @jimblue can do anything since he's just the issue reporte :sweat_smile:
I guess tagging @MoOx who seem to be the one releasing the package on npm can help.

See #264

Sorry I missed that, didn't mean anything rude! Thanks for taking the time to reply.

Don't worry, I just reopened this issue as it's still relevant as you can see.

Published https://www.npmjs.com/package/eslint-loader?activeTab=versions

using
  "devDependencies": {
    "@babel/core": "latest",
    "@vue/cli-plugin-babel": "next",
    "@vue/cli-plugin-e2e-cypress": "next",
    "@vue/cli-plugin-eslint": "next",
    "@vue/cli-plugin-pwa": "next",
    "@vue/cli-plugin-unit-mocha": "next",
    "@vue/cli-service": "next",
    "@vue/eslint-config-airbnb": "latest",
    "@vue/test-utils": "latest",
    "chai": "latest",
    "eslint": "latest",
    "eslint-plugin-vue": "latest",
    "sass": "latest",
    "sass-loader": "latest",
    "vue-template-compiler": "latest"
  }

I am now getting a new error:
Module build failed (from ./node_modules/@vue/cli-plugin-eslint/node_modules/eslint-loader/index.js):
Error: Cannot find module '/redacted/node_modules/eslint/lib/api.js/package.json'

using with "eslint": "^5.0.0", works


Language support: Arabic

We have a translator for Arabic on Transifex, however some preparations need to be done to display it correctly.

See "garabic" branch for progress.
Right now, a blocking issue is https://github.com/AbdullahDiaa/garabic/issues/2 - if this could be solved, apparently text does show up right. Otherwise, alternate modules may be needed.

Status update: language support is merged, but translation file is still in the works.

Actually, let's just track further work on Transifex, where Hebrew is also in the works.


Losing focus when typing

Do we get a workaround so we don't lose focus on the search bar when showing new update to listview of results?

Hi @jojonarte
It shouldn't unless you tap somewhere outside TextInput element.

Here is a video of what happens http://www.screencast.com/t/vLl5tsMb1Rc

Nevermind I've found out the issue was coming from a different component. Thanks for this.

where was the problem coming . I have a similar issue


rename to hermetic_cc_toolchain

As it says on the tin.
Long live hermetic_cc_toolchain!

lol hello, broken builds of all users checking in :)

lol hello, broken builds of all users checking in :)

Can you elaborate? I built a test project with it seems to have gone well.


Support<EMAIL_ADDRESS>

As of 1.0.0-beta.38, web3 ships directly with typescript typings (they seem to no longer be published through @types/web3 as of now). Ideally these typings would be used.
After this version of web3, typechain now throws a bunch of errors with the web3-1.0 target:
build/wrappers/A.d.ts:4:58 - error TS2307: Cannot find module 'web3/eth/contract'.

4 import Contract, { CustomOptions, contractOptions } from "web3/eth/contract";
                                                           ~~~~~~~~~~~~~~~~~~~

build/wrappers/A.d.ts:5:46 - error TS2307: Cannot find module 'web3/eth/types'.

5 import { TransactionObject, BlockType } from "web3/eth/types";
                                               ~~~~~~~~~~~~~~~~

build/wrappers/A.d.ts:6:10 - error TS2305: Module '"web3/types"' has no exported member 'Callback'.

6 import { Callback, EventLog } from "web3/types";
           ~~~~~~~~

build/wrappers/A.d.ts:6:20 - error TS2305: Module '"/web3/types"' has no exported member 'EventLog'.

6 import { Callback, EventLog } from "web3/types";
                     ~~~~~~~~

build/wrappers/A.d.ts:8:26 - error TS2307: Cannot find module 'web3/providers'.

8 import { Provider } from "web3/providers";

@krzkaczor -- I'd like to know your thoughts on moving towards types that are being maintained by web3 internally within their package.

@AntonioJuliano @eswarasai yes this is a good idea!
The only problem is that as far as I remember typescript types were already once shipped with web3.js and they decided to remove them. I have no idea what was the reasoning. Anyways, lets hope they won't change their mind again.

@krzkaczor -- Yeah, as far as I remember, there was a discussion going around not having types within web3.js but they still chose the path of keeping them internally within the project and have been updating them and providing types support so far.
I'll give it a shot and see if we can leverage the web3.js/types.ts to generate typings for Smart Contracts. Thanks!

@cryptokat awesome, looks good once merged!

Thanks to everyone involved. It's released as<EMAIL_ADDRESS>


Projects Partial causes site build to fail

I'm unable to get hugo to build my site with the hugo server -D  or hugo serve -t introduction command as hugo has an error while attempting to call the partial located in partials/project.html. Here is the output from hugo:
Building sites … ERROR 2018/08/14 18:05:14 Error while rendering "home" in "": template: index.html:77:11: executing "index.html" at <partial "projects.ht...>: error calling partial: tem
plate: partials/projects.html:7:63: executing "partials/projects.html" at <"projects">: can't evaluate field Pages in type *hugolib.Page
Total in 25 ms
Error: Error building site: logged 1 error(s)

The code for my site can be found in this github repo.
My hugo version is v0.46, the latest available from Homebrew.
Does anyone know if this is a problem with this theme or  with hugo itself? I'm fairly new to hugo so not able to troubleshoot this myself.  Would appreciate any suggestions regarding this issue. Thanks!

Thanks for your report @smehtaca.
Please take a look at #73. It looks like you encountered the same problem.


Hello i m getting this error RangeError (index): Invalid value: Not in range 0..2, inclusive: 3

i have created country state city drop down but sometime it show this error .RangeError (index): Invalid value: Not in range 0..2, inclusive: 3
i have recorded a video here please see what's the issue i don't understand the error
https://drive.google.com/file/d/1swNSSCfpD142b0fih5s-OZTb90NoxBgX/view

Hi @atta1234, you should try asking on StackOverflow instead of here.
(When you create a new issue here asking for help, it will tell you:)

Please don't file a GitHub issue for support requests. GitHub issues are for tracking defects in the product.

Questions like these are better suited for Q&A sites like StackOverflow or on one of the flutter community sites at https://flutter.dev/community

Questions like these are better suited for Q&A sites like StackOverflow or on one of the flutter community sites at https://flutter.dev/community

i think is is issue ,the error is not clear


[BUG] coredump when process exit triggered after TRITONSERVER_ServerDelete

Environment
. CPU architecture: x86_64
. CPU/Host memory size: 16G
. GPU properties

GPU name: NVIDIA A10
GPU memory size: 21G

. Libraries

TensorRT-LLM backend branch or tag: r24.01
Versions of TensorRT: <IP_ADDRESS>
Versions of Cudnn: <IP_ADDRESS>
Versions of CUDA: 12.2.0_535.54.03
Container used

. NVIDIA driver version: 525.105.17
. OS: Centos8
Reproduction Steps
. I have a inference server developed directly based upon triton-core, with similar functionality as triton-server, but serving through another protocol, not gRPC, not Http
. The process try to exit normally, TRITONSERVER_ServerDelete was invoked
Expected Behavior
. The process should exit normally, gracefully
Actual Behavior
. Coredump happened with stack below
(gdb) bt
#0  std::_List_const_iterator<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem> >::operator++ (this=0x7ff54e0f23e8) at /usr/include/c++/9/bits/stl_list.h:303
#1  0x00007ff66729dced in std::__distance<std::_List_const_iterator<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem> > > (__first=..., __last=...) at /usr/include/c++/9/bits/stl_iterator_base_funcs.h:89
#2  0x00007ff667296ccc in std::distance<std::_List_const_iterator<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem> > > (__first=..., __last=...) at /usr/include/c++/9/bits/stl_iterator_base_funcs.h:141
#3  0x00007ff667293a91 in std::list<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem>, std::allocator<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem> > >::_M_node_count (this=0x7ff576b5d280)
    at /usr/include/c++/9/bits/stl_list.h:658
#4  0x00007ff66729140c in std::list<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem>, std::allocator<std::shared_ptr<triton::backend::inflight_batcher_llm::WorkItem> > >::size (this=0x7ff576b5d280)
    at /usr/include/c++/9/bits/stl_list.h:1057
#5  0x00007ff66728ff8b in triton::backend::inflight_batcher_llm::WorkItemsQueue::numPendingWorkItems (this=0x7ff576b5d280) at /tmp/build/tensorrtllm_backend/inflight_batcher_llm/src/work_items_queue.h:90
#6  0x00007ff66728ad8d in triton::backend::inflight_batcher_llm::ModelInstanceState::get_inference_requests (this=0x7ff576b5ceb0, max_num_requests=256) at /tmp/build/tensorrtllm_backend/inflight_batcher_llm/src/model_instance_state.cc:333
#7  0x00007ff667288d18 in triton::backend::inflight_batcher_llm::ModelInstanceState::<lambda(int)>::operator()(int) const (__closure=0x7ff576f81118, max_num_requests=256)
    at /tmp/build/tensorrtllm_backend/inflight_batcher_llm/src/model_instance_state.cc:229
#8  0x00007ff66728dd32 in std::_Function_handler<std::list<std::shared_ptr<tensorrt_llm::batch_manager::InferenceRequest>, std::allocator<std::shared_ptr<tensorrt_llm::batch_manager::InferenceRequest> > >(int), triton::backend::inflight_batcher_llm::ModelInstanceState::ModelInstanceState(triton::backend::inflight_batcher_llm::ModelState*, TRITONBACKEND_ModelInstance*)::<lambda(int)> >::_M_invoke(const std::_Any_data &, int &&) (__functor=..., __args#0=@0x7ff54e0f27b0: 256)
    at /usr/include/c++/9/bits/std_function.h:286
#9  0x00007ff6672d1bb4 in tensorrt_llm::batch_manager::GptManager::fetchNewRequests() () from /opt/tritonserver/backends/tensorrtllm/libtriton_tensorrtllm.so
#10 0x00007ff6672d3296 in tensorrt_llm::batch_manager::GptManager::decoupled_execution_loop() () from /opt/tritonserver/backends/tensorrtllm/libtriton_tensorrtllm.so
#11 0x00007ff7e0b638a0 in std::execute_native_thread_routine (__p=0x7ff576f83760) at ../../../../../libstdc++-v3/src/c++11/thread.cc:80
#12 0x00007ff7e11f62de in start_thread () from /lib64/libpthread.so.0
#13 0x00007ff7e05b5e83 in clone () from /lib64/libc.so.6

Additional Notes
As showed by above stack, it seems to be a problem of destructive misorder when process exit, detail seems to be
. When model is loading, ModelInstanceState is created, which create a GptManager member instance, code switch into libtensorrt_llm_batch_manager_static library, inside which, a new thread is created to execute func decoupled_execution_loop, again inside which, ModelInstanceState instance is referenced to invoked get_inference_requests
. When process try to exit, member mWorkItemsQueue of ModelInstanceState is destructived before member mBatchManager, still the child thread is reference member mWorkItemsQueue, leading to a coredump
I manually modified the source code of tensorrtllm_backend
/tensorrtllm_backend/inflight_batcher_llm/src/model_instance_state.h
@@ -124,8 +124,8 @@ private:
     std::string mModelPath;
     bool mIsDecoupled;

-    std::shared_ptr<GptManager> mBatchManager;
     std::unique_ptr<WorkItemsQueue> mWorkItemsQueue;
+    std::shared_ptr<GptManager> mBatchManager;
 };

above coredump stack is no longer seen, but new coredump stack is showing up
#0  0x00007ff898d3dd4c in PMPI_Comm_size () from /usr/lib64/openmpi/lib/libmpi.so.40
#1  0x00007ff84f3138ef in tensorrt_llm::mpi::getCommWorldSize() () from /opt/tritonserver/backends/tensorrtllm/libtriton_tensorrtllm.so
#2  0x00007ff84f28ad5d in triton::backend::inflight_batcher_llm::ModelInstanceState::get_inference_requests (this=0x7ff74853e5f0, max_num_requests=256) at /tmp/build/tensorrtllm_backend/inflight_batcher_llm/src/model_instance_state.cc:329
#3  0x00007ff84f288d18 in triton::backend::inflight_batcher_llm::ModelInstanceState::<lambda(int)>::operator()(int) const (__closure=0x7ff748213888, max_num_requests=256)
    at /tmp/build/tensorrtllm_backend/inflight_batcher_llm/src/model_instance_state.cc:229
#4  0x00007ff84f28dd32 in std::_Function_handler<std::list<std::shared_ptr<tensorrt_llm::batch_manager::InferenceRequest>, std::allocator<std::shared_ptr<tensorrt_llm::batch_manager::InferenceRequest> > >(int), triton::backend::inflight_batcher_llm::ModelInstanceState::ModelInstanceState(triton::backend::inflight_batcher_llm::ModelState*, TRITONBACKEND_ModelInstance*)::<lambda(int)> >::_M_invoke(const std::_Any_data &, int &&) (__functor=..., __args#0=@0x7ff732b167b0: 256)
    at /usr/include/c++/9/bits/std_function.h:286
#5  0x00007ff84f2d1bb4 in tensorrt_llm::batch_manager::GptManager::fetchNewRequests() () from /opt/tritonserver/backends/tensorrtllm/libtriton_tensorrtllm.so
#6  0x00007ff84f2d3296 in tensorrt_llm::batch_manager::GptManager::decoupled_execution_loop() () from /opt/tritonserver/backends/tensorrtllm/libtriton_tensorrtllm.so
#7  0x00007ff9b52b48a0 in std::execute_native_thread_routine (__p=0x7ff748215ed0) at ../../../../../libstdc++-v3/src/c++11/thread.cc:80
#8  0x00007ff9b59472de in start_thread () from /lib64/libpthread.so.0
#9  0x00007ff9b4d06e83 in clone () from /lib64/libc.so.6

It seems the new coredump is happened inside mpi resources, this reminds me of a summarized problem of destructive misorder when process exit, can anybody check through this? can tensorrtllm_backend exit gracefully?
thx all.

@hzlushiliang we have completely rewritten this code path in 0.10 release to be based on the executor API. Can you please re-try in a couple of weeks when the 0.10 release is public? We would prefer not to fix an issue with the old GptManager path.
Feel free to reopen this issue if you have further questions.


v3.1.0 Documentation

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 98.15%. Comparing base (9863e59) to head (5f0fdf1).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #71   +/-   ##
=======================================
  Coverage   98.15%   98.15%
=======================================
  Files           3        3
  Lines         325      325
=======================================
  Hits          319      319
  Misses          6        6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


change deployed bucket policy for enterprise security compliance

Hello,
I wonder what is the best way to extend classes for deployed buckets.
How can we add bucket policies to be compliant with enterprise security at deployment and not outside of the deployed stack?
thanks.

Could you explain more detail?

Could you explain more detail?

With L2 construct, you have to predeclare the bucket user by codepipeline to be able to apply changes on it.


How can you change port?

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.
I could not run the app even once so the port is busy for some reason. You cannot change the port from the configuration. Does anybody know how to?

Here's what helped with me. I had some oracle service uselessly occupying 8080.
Check what's listening on that port and then kill it. You can find out with resource monitor (run resmon). Under Listening Ports you can see what's listening on 8080.
Then go to task manager and kill the process.

Here's another think u can try, Go to the servers, and change the listening port number from 8080 to some another port number, and run on that port number. This may be help to out.

By default Spring Boot uses the 8080 port. you may set the server.port property in your application properties. for example server.port=8383. now the problem is sometimes a Spring Boot application still executing that you don't have correctly terminated.

server.port

@harshp2826 there is no application.properties file in this repo. @zly1991 where did you configured that server.port exactly?

You can look it up in the Spring Boot user guide, or this getting started guide: https://spring.io/guides/gs/spring-boot/.


Spike: is there a need for two code scanning workflows

User Story
As a Modernisation platform engineer
I need to investigate if there is a need for two code scanning workflows
So that we are not doubling up on work
Value / Purpose
with the move to trivy we have an opportunities to revisit the need for two code scanning work flows could this all be done on one workflow. is so would it be all done under the terraform secure code analyst or the normal secure code analyst workflow.
what changes need to be done
can the changes be done
Useful Contacts
Mark Roberts
Additional Information
No response
Proposal / Unknowns
No response
Definition of Done
Example

[ ] Documentation has been written
[ ] New issue raised to do the work

yes there is

I have attempted to get this working on the github actions module and have failed due to the current the way that the scanning is being done. this is because we are doing a for loop and it runs the trivy command on each loop based on the directory it is scanning. it would basically over write the sarif file on each pass or run though the loop also the only way i have got it to output the file was to amend it for everyone and this also negates the output of the results to the log file as it is dumping into the sarif file.


Ctrl +  click in tables

Hi,
would it be possible to enable the functionality to only display selected labels by Ctrl-clicking not only in the viewer window, but also in the table?

wrong repo, sorry...


Adds special treatment for Predef.classOf in object initialization checker

The Predef.classOf is a stub method that is replaced by runtime class representation after compilation, so when the object initialization checker analyzes tasty file, any call to Predef.classOf should be treated specially, so warnings related to Predef.classOf can be avoided.

Closing in favour of #21523


[CT-1906] Enable user-space code to fire typed events

copying from https://github.com/dbt-labs/dbt-core/issues/5325

Create a new function in the Jinja context log_event like log (source) so that instead of taking a string msg, it takes a string event_name and a list of values of type List[Any]. This will fire an event with the same name as the string passed with the parameters in the list. (Using Event.__subclasses__(), and the splat operator for lists (i.e. *[foo, bar]) may help here). Mypy will not be able to catch any type mismatches here since the event constructors aren't passed concrete values till runtime. Since these log lines will run with every materialization, tests should catch any issues with these log lines.

Idea here is, in addition to just passing strings into {{ log() }}, users should be able to pass structured data as the payload to a real named/type event. The Python context method log_event would accept those inputs, then turn around and call actual fire_event.
Motivation: All materialization code is written in user-space (Jinja), and the fact that we lack mechanisms to structure / distinguish between all those events is quite limiting.

The new protobuf code has a ListValue type which allows lists with elements of different types.


An agent implementation of MathChat

Why are these changes needed?

Implement MathChat using the agent framework.
Related issue number
See tasks in #1066. The blog post about MathChat will be written in a separate PR.

Checks

[ ] I've included any doc changes needed for https://microsoft.github.io/FLAML/. See https://microsoft.github.io/FLAML/docs/Contribute#documentation to build and test documentation locally.
[x] I've added tests (if relevant) corresponding to the changes introduced in this PR.
[ ] I've made sure all auto checks have passed.

typo in the name of the notebook: "autogent_agent_MathChat.ipynb" should be "autogen_agent_MathChat.ipynb"

Since py3.7 is removed from test, please remove py3.7 from this badge in README.md:


[bug] EasyCLA repo list not editable for cncf

Summary
I see an infinite spinner when attempting to edit the list of repositories that EasyCLA is enabled for, on the EasyCLA CNCF instance.
Environment
Please complete the following information:

Environment:

[ ] ALL
[ ] DEV
[ ] STAGING
[x] PROD

Browser:

[x] Chrome/Brave
[ ] Firefox
[ ] Opera
[ ] Vivaldi
[ ] LibreWolf
[ ] SRware Iron
[ ] Dissenter
[ ] Slimjet
[ ] Midori
[ ] Edge
[ ] Lynx

@lizthegrey
Can you share a screenshot? Is this the older EasyCLA v1 Project Console or the new Project Control Center (PCC) UI?

ui v1.
https://share.getcloudapp.com/BluxEDZd

Hello @lizthegrey  I've given you access to our new version of the admin portal for you to edit your repos. It's the Project Control Center found at https://projectadmin.lfx.linuxfoundation.org/ and you should see CNCF in the "My Projects" tab at the top when you've logged in. You'll be able to select "EasyCLA" in the Tools section and select "Manage" in the top CNCF row of the table. (Or use this direct link https://projectadmin.lfx.linuxfoundation.org/project/a0941000002wBz4AAE/tools/easycla/repositories/a0941000002wBz4AAE#d8cead54-92b7-48c5-a2c8-b1e295e8f7f1)
You'll notice some new options with the settings icon at the top right of the repositories page will allow you to "auto-enable" any new repositories that are created, or enable the 'branch protection' feature.

Thanks, that works! We do see "cla enforced by another project" but I assume that's easycla v1.

Closing issue due to inactivity.


robotcode.namespace(KeywordError)

Hello,
I have a problem with the plugin, I have this error for 2 of my keywords (robotcode.namespace(KeywordError)), yet I import the file that contains them. If I run my test, it finds the keywords.
{
	"resource": "XXX/XXX/XXXXXX.robot",
	"owner": "robotcode",
	"code": "KeywordError",
	"severity": 8,
	"message": "No keyword with name 'Click On Order' found.",
	"source": "robotcode.namespace",
	"startLineNumber": 112,
	"startColumn": 5,
	"endLineNumber": 112,
	"endColumn": 27
}

Thank you

Hello,
I think I have configured Robotcode well because it works for all the others. I am importing .resource files which contain Selenium keywords.
This morning, I no longer have the problem on this famous keyword, but I have it on another, without having changed anything.
Here is how I import my keyword file:
Resource   ../../keywords/bo/rules.resource
(I tried the import in relative and absolute)
As for the robotcode.robot.pythonPath, I did not modify it

I found the problem is when two files have the same name even though they are not in the same directory.


[CHM320]  km-goverment component

a single goverment selector

fix code review issues, please review again


Allow ceph-ansible to be run on a locally built/installed Ceph

Only for redhat_install:
-First install ceph into a directory with CMake
Possibly add to README for when building ceph: cmake -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib -DWITH_SYSTEMD=ON -DCMAKE_INSTALL_PREFIX:PATH:=/usr <ceph_src> && make DESTDIR=<install_dir> install/strip
-Ceph-ansible copies over the install_dir
-User can use rundep_installer.sh to install any runtime dependencies that ceph needs onto the machine from rundep

@danielin917 can you do indent of 2 instead of 4 please?

@leseb indents in rundep_installer.sh have been fixed

I think the tasks: name: copy rundep installer and name: install ceph dependencies can be merged into one by using the script module: http://docs.ansible.com/ansible/script_module.html
Would you mind giving it a try?

Will this functionality be tested on commit via the CI system?

@mattt416 nop :/

Well the default installation will be not the specific feature :)

I tested it with the new script module and mktemp naming and it works. If there are no other issues I can rebase again into one commit.


Graph Application cmd spec update

•Includes Get Application functionality by ObjectId, AppId, IdentifierUri and DisplayNameStartsWith.
•Displays 'DisplayName','IdentifierUris', 'ReplyUris' values when printing application object.
•Added support to fetch the current user 'me' object to identify correct failure for Guest users while creating an application.

Hi @shuagarw, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (shuagarw). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


Filtering based on expressions

New user here so please bear with me some naive questions.
Is it possible to have some user code , math expression based filtering while doing graph search (hnsw)
I read documentation , can you provide some guidance or pointer on why filtering query language was based on mongodb query operators , any merits here as opposed to supporting sql operators supported by different databases ?
Looking at the code , i observe filtering done by binary_fuse_filter , could you please provide some details on if the filtering is pre-filtering or post retrieval filtering or during graph traversal filtering ? are their any engineering blog or documentation or the filtering strategy that you can point me to , wondering how canwe extend for other expressions based filtering

Thanks for your interest.

why filtering query language was based on mongodb query operators , any merits here as opposed to supporting sql operators supported by different databases ?

For the query, we use MongoDB query as the query language. At the runtime, the mongo query will be transferred to SQL clauses (we implemented a simple converting function in annlite) which will be applied to filter the whole data. Here, we want to provide an easy way to construct the query.  SQL-based query needs the user to know all of the information about the table name (it is an internal variable, not visible to the general user) and column names. And what's more, mongodb-style query is a Dict, which is widely used by modern KV database (ES, MongoDB, ...).

could you please provide some details on if the filtering is pre-filtering or post retrieval filtering or during graph traversal filtering ?

It is graph traversal filtering indeed. Each node is marked with bool value to indicate whether it matches the query conditions. At the hnsw graph search time, the same traversal search algorithm is performed to find the closed-neighors, and only the valid node is considered as the candidate result to be returned (here, it seems like a pre-filtering strategy).

are their any engineering blog or documentation or the filtering strategy that you can point me to , wondering how canwe extend for other expressions based filtering

For the technical design documentation, we are working on them. And what's more, which expression do you want to use for filtering in your case?

Thanks for the info. the use case i am thinking is evaluating some expression like distance < 0.xyz  and metadata_color = "red" . I was under the impressions that the filter is constructed first by running the operators over some indexed data generating a small fuse filter of allowed/blocklisted candidates , and then during traversal we are just doing a probabilistic check ? we are not evaluating operators on neighbours during graph search but rather checking membership ?

we are using allowed/blocklisted candidates, and check membership during graph search.

Hi, great discussion! During searching with filters are there any chances of a disconnected graph cropping up - say when all the neighbors of a node are invalidated by a filter?

It is graph traversal filtering indeed. Each node is marked with bool value to indicate whether it matches the query conditions. At the hnsw graph search time, the same traversal search algorithm is performed to find the closed-neighors, and only the valid node is considered as the candidate result to be returned (here, it seems like a pre-filtering strategy).

For your question, actually, all of the graph nodes are considered valid during graph traversal. Only the nodes which match with the filter will be considered as the result candidates. Thus, there is no disconnected graph problem.


build error due to PrismJS

Describe the bug
Attempt to build on MacOS fails.
Reproduction
No response
Logs
(base) michael@MichaelacStudio qwer % pnpm dev

><EMAIL_ADDRESS>dev /Users/michael/Documents/dev/qwer
> npm-run-all -s build:QWER dev:watch

><EMAIL_ADDRESS>build:QWER /Users/michael/Documents/dev/qwer
> node --no-warnings QWER build

/Users/michael/Documents/dev/qwer/node_modules/.pnpm/prismjs@1.29.0/node_modules/prismjs/prism.js:345
					lang[key] = redef[key];
					          ^

TypeError: Cannot set properties of undefined (setting 'class-name')
    at Object.extend (/Users/michael/Documents/dev/qwer/node_modules/.pnpm/prismjs@1.29.0/node_modules/prismjs/prism.js:345:16)
    at /Users/michael/Documents/dev/qwer/node_modules/.pnpm/prismjs@1.29.0/node_modules/prismjs/components/prism-cpp.min.js:1:856
    at Object.<anonymous> (/Users/michael/Documents/dev/qwer/node_modules/.pnpm/prismjs@1.29.0/node_modules/prismjs/components/prism-cpp.min.js:1:2589)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Module._load (node:internal/modules/cjs/loader:1023:12)
    at cjsLoader (node:internal/modules/esm/translators:345:17)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:294:7)
    at ModuleJob.run (node:internal/modules/esm/module_job:218:25)

Node.js v20.10.0
 ELIFECYCLE  Command failed with exit code 1.
ERROR: "build:QWER" exited with 1.
 ELIFECYCLE  Command failed with exit code 1.

System Info
System:
    OS: macOS 13.5
    CPU: (12) arm64 Apple M2 Max
    Memory: 145.84 MB / 96.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.10.0 - /usr/local/bin/node
    Yarn: 1.22.21 - /usr/local/bin/yarn
    npm: 10.2.5 - /usr/local/bin/npm
    pnpm: 8.12.1 - /usr/local/bin/pnpm
  npmPackages:
    @sveltejs/adapter-cloudflare: ^2.3.3 => 2.3.3
    @sveltejs/adapter-netlify: 2.0.8 => 2.0.8
    @sveltejs/adapter-node: 1.3.1 => 1.3.1
    @sveltejs/adapter-static: 2.0.3 => 2.0.3
    @sveltejs/adapter-vercel: 3.0.3 => 3.0.3
    @sveltejs/kit: 1.27.3 => 1.27.3
    svelte: ^4.2.2 => 4.2.2
    vite: ^4.5.0 => 4.5.0

Additional Information
No response

works on M2 pro macbook for me

I have observed the issue before.
I just simply ran the pnpm dev command again, and then the problem was gone.
I will close this issue for now. If the thing gets worse, we can investigate more.


Feature/planning 499 different error codes for version check

closes planning: #495 #497 #499

Gut!

LGTM


Upgraded Angular 2 RC5 Routes Deprecated

It appears that routes have been deprecated in RC5 in favor of what appears NgModule and RouteModule.  Any plans to update this repo to use RC5?  It appears that the Angular 2 team is getting closer to a final release based from RC5.

+1. It would be really nice to have it running in RC5.

+1 Please.

we will update it in the next couple of days.


[2175] Convert ucas contacts to full breadcrumb

Context
I understand from @fofr that the intention is only leaf-nodes on the
navigation to hae "back" and now that we've added another layer this
page should have the full breadcrumb.
Changes proposed in this pull request

Convert ucas contacts to full breadcrumb

Guidance to review
:ship:

 [M] Editable Email alerts for new applications


Printing the Accordion -() appearing in the print preview as well as printed page

Am trying to print the Bootstrap accordiion content ,after i print there is a () appearing in the print in all the browsers am not able to figure that out what exactly that is

@pendliforu, this is the second time you posted this.  Please stop.
Do not use the issues forum for support related requests.  Rather, please follow the instructions here.
If you think you've found a bug, please follow these instructions.
Unfortunately, if you think you have found a bug and do not follow the above instructions within a reasonable amount of time, we will close the issue due to lack of activity.

That can be fixed by adding to @media print media query:
a[href=""]:after {
    content: "";
}


Nav tabs and C3js

I have two charts, each of which is associate with a Bootstrap tab. One initially has the active class and is sized correctly. However, upon clicking the other tab, I see that the charts are not of the right size as they end up being the length of my browser when I intended it to be about half that size.
Is there a fix for this?

No really familiar with bootstrap's css but the chart needs to be visible in order to be sized correctly.
If it has 'display:none;' it cannot work.
A workaround I use to do is to replace 'display:none;' by something like 'position: absolute;left:-999999px;bottom:-999999px;'.
Basically, displaying it far off screen.


Guidance about websocket authentication & authentication update

Question.
The documentation describes in a clear way how to handle authentication for http requests but it's not clear (at least for me) how to handle it for websockets and most importantly, how to update it at runtime (in case of a token refresh).
So I have 2 questions:

How to handle authentication with websockets?
How to handle authentication changes at runtime with websockets? On iOS, the ApolloWebSocket exposes a method called updateHeaderValues that allow to update authentication headers, does this library have a similar mechanism?

Many thanks in advance.

Hi 👋 ! Thanks for opening this! I'm pretty new to the WebSocket part of the lib so take this with a grain of salt but I'd say one way to do it would be to implement your own WebSocketSubscriptionTransport ? And have it reconnect when the token needs to be refreshed?
Out of curiosity, how do you know you need to refresh the token? Do you receive an error message from the server or is this initiated client side with a timeout?

Well the idea was to avoid recoding a whole WebSocketSubscriptionTransport but that's always an option yes. The part that could be complicated is having the websocket reconnect without closing the subscriptions.
I'm pretty new to the Android Apollo library so I'm not really sure but having implemented it on iOS I renew my auth token if I get an authentication error during a query/mutation or if a websocket get an authentication error. When done, I update the websocket headers (using the updateHeaderValues method) and it reconnects to the server with the new auth.
I guess it's a pretty standard way of handling token auth as token can have a short lifespan so you would expect them to be refreshed at runtime.

Can you try using something like this:
okHttpClient.addInterceptor(/* the same interceptor you used for queries/mutations */)

// Manually reconnect when a new token is required

apolloClient.subscriptionManager.stop()
apolloClient.subscriptionManager.start()

I already saw that but the code looks like this:
  /**
   * Unsubscribe from all active subscriptions, and disconnect the web socket.
   */
  void stop();

which makes me think that subscriptions will be killed when doing that

which makes me think that subscriptions will be killed when doing that

Mmm right, it does look like the SubscriptionManager removes everything. I'll try to see if I can make a SubscriptionManager.reconnect() that keeps all subscriptions active.

@benoitletondor
Tentative fix there: #2706.
Example usage there
I'm still unclear whether authentication should be in the WebSocket request or the connection params? It looks like both solutions are possible?
In all cases, apolloClient.subscriptionManager.reconnect() will reconnect the websocket while keeping the subscriptions. Let me know what you think.

Hey @martinbonnin ,
Many thanks for that, looks great!

I'm still unclear whether authentication should be in the WebSocket request or the connection params? It looks like both solutions are possible?

I'm not sure I got what you mean here?

I'm not sure I got what you mean here?

We have:
          // goes into a "connection_init" websocket message
          ApolloClient.builder().subscriptionConnectionParams {
            SubscriptionConnectionParams(mapOf("token" to accessToken))
          }

And
          // Will add the token as part of the initial WebSocket request
          OkHttpClient.Builder().addNetworkInterceptor { chain ->
            val request = chain.request().newBuilder().addHeader("token", accessToken).build()
            chain.proceed(request)
          }

I guess you're using the second one?

Indeed, the second one. But I don't see the difference in what we want to achieve which is reconnecting to the websocket when token changes at runtime, no matter the method used we would need that reconnect mechanism? Maybe I'm missing something, sorry if that's the case

no matter the method used we would need that reconnect mechanism

Yes. A better way to do this would certainly be to have a custom websocket message. That'd save having to tear down the web socket and renegociate it again. Something like update_connection_param. But yea, something for the longer term. In the short term, reconnect seems to be the way to go.


Lack of possible responses - "Microsoft.Office.Compliance.Audit.DataServiceException: Tenant does not exist"

Besides the error list at the end, there are many responses that can be returned upon calls that aren't documented. The one that bugs me the most is:
"error": {         "code": "StartSubscription [TenantId=5b9a99a5-************-4279ec819ed6,ContentType=Audit.Exchange,ApplicationId=de113d70-************-1790e19d3016,PublisherId=00000000-0000-0000-0000-000000000000] failed. Exception",         "message": "Microsoft.Office.Compliance.Audit.DataServiceException: Tenant 5b9a99a5-*****************-4279ec819ed6 does not exist.\r\n   at Microsoft.Office.Compliance.Audit.API.AzureManager.GetSubscriptionTableClientForTenant(Guid tenantID, Boolean throwIfTenantNull)\r\n   at Microsoft.Office.Compliance.Audit.API.AzureManager.<GetAPISubscriptionAsync>d__22.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Microsoft.Office.Compliance.Audit.API.StartController.<StartSubscription>d__0.MoveNext()"     }
when making this request:
https://manage.office.com/api/v1.0/5b9a99a5-************-4279ec819ed6/activity/feed/subscriptions/start?contentType=Audit.Exchange Headers:  Authorization: Bearer {{access_token}} Content-Type: application/x-www-form-urlencoded
I'm not sure if I'm getting this because of this request or because of the initial request (the one I'm requesting the access token). Either way, this response seems to make no sense since I already got the token with this tenant.
I didn't find any mention for this message and I have no lead on how to solve it.
Please help
Thanks

Getting the same issue as described by @yyyogev, can anybody provide any help on this?
Im trying to fetch data for contentType=Audit.Sharepoint and already got the access token for the tenantId, however, starting a subscription always throws the above error.

@markjjo

We're also seeing the same. The responses are inconsistent. At times retries work. Other times, you have to give it a few minutes before retrying.

We're also experiencing  this issue. No inconsistent responses though,  just this same response every time. Like others we successfully requested an access token.
Exception", "message": "Microsoft.Office.Compliance.Audit.DataServiceException: Tenant *** does not exist.\r\n at Microsoft.Office.Compliance.Audit.API.AzureManager.GetSubscriptionTableClientForTenant(Guid tenantID, Boolean throwIfTenantNull)\r\n at Microsoft.Office.Compliance.Audit.API.AzureManager

We are experiencing the same thing for some tenants. Starting subscription fails with different content types.

We solved it by raising a support ticket with Microsoft and they started the subscription from their end; it works now.

@yyyogev @Sk0ttz RE: "Microsoft.Office.Compliance.Audit.DataServiceException: Tenant *** does not exist - Be sure that unified auditing is enabled for your Office 365 organization. To enable, see https://docs.microsoft.com/en-us/office365/securitycompliance/turn-audit-log-search-on-or-off
We just added this heads up to the documentation.

It works!!
Thanks you!

In my case, I have the same issue and the problem Unified Auditing is enabled, the problem is with Authorization Url in custom connector. By default, Authorization Url comes with: http://login.microsoftonline.com but if I change it to the value https://login.windows.net then it works correctly

In my case, I have the same issue In my case, I have enabled Unified Auditing but my problem is with Authorization Url in custom connector. By default, Authorization Url comes with: http://login.microsoftonline.com but if I change it to the value https://login.windows.net then it works correctly
where do you change this???

ot sure if I'm getting this because of this request or because of the initial request (the one I'm requesting the access token). Either way, this response seems to make no sense since I already got the token with this tenant.

In my case, I changed it by editing a Custom Connector (Office 365 Management API) in the Security section that was used in an older version of the CoE Starter Kit, but it is now deprecated, so we no longer have it.


Panel does not play nice with other addons

This is possbly the same bug as reported in #10, but since I still experience the issue with 1.6.0 as well, I thought I’d open a new ticket.
Issue description
The storybook-state addon panel doesn’t seem to work properly together with other addons. The panel is always shown even if another addon panel is active. If storybook-state is imported last in .storybook/addons.js its panel is rendered on top of all other panels, making it hard to interact with the at all. If it is imported first, it just stays in sight the whole time, making it harder to see the contents in the other panels:

Steps to reproduce
In the gif above I’m using:

@storybook/react – 5.1.4
@storybook/addon-actions – 5.1.4
@storybook/addon-knobs – 5.1.4
@dump247/storybook-state – 1.6.0

// addons.js
import '@dump247/storybook-state/register';
import '@storybook/addon-knobs/register';
import '@storybook/addon-actions/register';

// story
import React from 'react';
import { storiesOf } from '@storybook/react';
import { action } from '@storybook/addon-actions';
import { withKnobs, text } from '@storybook/addon-knobs';
import { withState } from '@dump247/storybook-state';

// …

const handleChange = store => option => {
  action('onValueChange')(option);
  store.set({ selectedOption: option });
};

storiesOf('Dropdown', module)
  .addDecorator(withKnobs)
  .add(
    'default',
    withState({ selectedOption: null })(({ store }) => (
      <Dropdown
        placeholder={text('placeholder', 'Hello Storybook')}
        options={options}
        selectedOption={store.state.selectedOption}
        onValueChange={handleChange(store)}
      />
    )),
  );

Expected behaviour
Switching between the addon panels should hide the inactive ones, and show only the active tab/panel.
Actual behaviour
The storybook-state addon panel stays visible regardless of active tab/panel. Note that both the knobs- and actions-addons properly shows/hides when selecting their tabs/panels.

It is the same issue. 1.6.0 didn't fix it because it is missing a check on active in the render function..
As per https://storybook.js.org/docs/addons/writing-addons/#add-a-panel the render function should return null when active is false


When a javascript error occurs, it is "retrying the fetch"

When a javascript error occurs, it is "retrying the fetch". It should throw the javascript error. Why is it retrying?
This is happening to me in react native.

+1

This is addressed in #114 👍

closing as its now on the latest version.


We see error [ERROR]: [object Object] when run OpenSeaStreamClient

Error Image:

Source code:
const scanDataNFT = async () => {
    try {
        const client = new OpenSeaStreamClient({
            token: 'd69f124bbcdf4a698d86102197d74b77',
            network: Network.TESTNET,
            connectOptions: {
                transport: WebSocket
            }
        });
        client.connect();

        const collectionSlug = "creaturesnft-37";

        client.onEvents(
            collectionSlug,
            [
                EventType.ITEM_METADATA_UPDATED,
                EventType.ITEM_CANCELLED,
                EventType.ITEM_LISTED,
                EventType.ITEM_SOLD,
                EventType.ITEM_TRANSFERRED,
                EventType.ITEM_RECEIVED_OFFER,
                EventType.ITEM_RECEIVED_BID,
                EventType.COLLECTION_OFFER,
                EventType.TRAIT_OFFER,
                EventType.ORDER_INVALIDATE,
                EventType.ORDER_REVALIDATE,
            ],
            (event) => {
                console.log("event", event)
            }
        );
    } catch (error) {
        console.log(error);
    }
}

PLease, Help me fix this issue

@ryanio ,Please help me fix this issue

You have to log the error object properly otherwise I don't know what error you are receiving!

@ryanio We already try to catch this error, but we always see error
[ERROR]: [object Object]
[ERROR]: [object Object]
[ERROR]: [object Object]
[ERROR]: [object Object]
[ERROR]: [object Object]
[ERROR]: [object Object]

do console.dir(error,{depth:null})

@ryanio we try "do console.dir(error,{depth:null})" and don't see different. Please check my code
const { OpenSeaStreamClient, Network, EventType } = require('@opensea/stream-js');
const { WebSocket } = require('ws');

const scanDataNFT = async () => {
    try {
        const client = new OpenSeaStreamClient({
            token: '5936594c14684d619ee1a1847ff0caf9',
            network: Network.TESTNET,
            connectOptions: {
                transport: WebSocket
            }
        });
        client.connect();

        const collectionSlug = "creaturesnft-37";

        client.onEvents(
            collectionSlug,
            [
                EventType.ITEM_METADATA_UPDATED,
                EventType.ITEM_CANCELLED,
                EventType.ITEM_LISTED,
                EventType.ITEM_SOLD,
                EventType.ITEM_TRANSFERRED,
                EventType.ITEM_RECEIVED_OFFER,
                EventType.ITEM_RECEIVED_BID,
                EventType.COLLECTION_OFFER,
                EventType.TRAIT_OFFER,
                EventType.ORDER_INVALIDATE,
                EventType.ORDER_REVALIDATE,
            ],
            async (event) => {
                try {
                    console.log('event', JSON.stringify(event));
                } catch (e) {
                    console.dir(e,{depth:null})
                    console.log(e);
                }
            },
        );
    } catch (error) {
        console.log(error);
        console.dir(error, { depth: null });
    }
}

scanDataNFT()

@ryanio -san. maybe provider example code

how about console.log(JSON.stringify(error));

how about console.log(JSON.stringify(error));

@ryanio We try, still error

Hi @ryanio, We try catch all log (01, 02, 03) and we confirm this error come from your library.
We tested the collection mainnet is working ok, but collection testnet we see this error [ERROR]: [object Object]
const scanDataNFT = async () => {
    try {
        const apiKey = 'cddad7a1687e4e02bdf9164c7e9e3706';
        const client = new OpenSeaStreamClient({
            token: apiKey,
            network: Network.TESTNET,
            connectOptions: {
                transport: WebSocket
            }
        });

        const collectionSlug = "creaturesnft-37";
        //boredapeyachtclub

        client.onEvents(
            collectionSlug,
            [
                EventType.ITEM_METADATA_UPDATED,
                EventType.ITEM_CANCELLED,
                EventType.ITEM_LISTED,
                EventType.ITEM_SOLD,
                EventType.ITEM_TRANSFERRED,
                EventType.ITEM_RECEIVED_OFFER,
                EventType.ITEM_RECEIVED_BID,
                EventType.COLLECTION_OFFER,
                EventType.TRAIT_OFFER,
                EventType.ORDER_INVALIDATE,
                EventType.ORDER_REVALIDATE,
            ],
            async (event) => {
                try {
                    console.log("01");
                    console.log('event', JSON.stringify(event));
                } catch (e) {
                    console.log("02");
                    console.dir(e,{depth:null})
                }
            },
        );
    } catch (error) {
        console.log("03");
        console.log(JSON.stringify(error));
    }
}

@ryanio Please help me check this issue.

@ryanio  please help me fix this issue

looks like https://github.com/ProjectOpenSea/stream-js/pull/325 will help fix, i will try to get that in and release it today