0.93 under Dashbord: There are no items defined in the JSON file

Hi Eisbaeeer,
under dashbord i get the message : There are no items defined in the JSON file
There is no configuration.
Is there somthing missing in the bin or did i make a mistake?

Are you able to compile the project by yourself with platformio? I think the react enviroment is missing. In this case there is no web-part compiled.

At the moment i work with the Ardurino IDE.
Then i will install platformio in in the holidys and test it.

Same here, not fixed yet


ACL: Degree normalized pagerank for sweepcut

In reading through the notebooks, I notice that https://github.com/kfoynt/LocalGraphClustering/blob/master/notebooks/examples.ipynb has examples of ACL where the output of approximate personalized page rank is input directly into sweep_cut, while the paper (http://www.leonidzhukov.net/hse/2015/networks/papers/andersen06localgraph.pdf, Section 2.4 , and others) suggests using degree normalized pagerank. That seemed like a discrepancy to me, unless I am missing something. Hoping to get your comment/feedback on this.

The ACL routine automatically normalizes the output so that it's appropriate for this usage. If you want raw ACL, you need to set normalize=False

Hey, there is a parameter in approximatePageRank that is called normalize that if True then the output of ACL is divided by the degree. This parameter is set by default to True.

Alright, David replied already!

Got it, thank you!


update method is wrong!

The api doc link  is 'http://airbnb.io/enzyme/docs/api/ReactWrapper/update.html'.
class ImpureRender extends React.Component {
  constructor(props) {
    super(props);
    this.count = 0;
  }
  render() {
    this.count += 1;
    return <div>{this.count}</div>;
  }
}
const wrapper = mount(<ImpureRender />);
expect(wrapper.text()).to.equal('0');
wrapper.update();
expect(wrapper.text()).to.equal('1');

Appeal code, can not run through!!!

This is an antipattern in React, so I'm not sure why we'd support it.
Either way, this is a duplicate of #1245.


closes #3103

Summary
For changing the UI to the new design by @austincondiff, we started with the login screen. Though it's far from perfect, it should serve as a starting point to get going with the new design. The old default ui package is renamed 'ui-legacy', and we have a new 'ui-default' package at version 0.0.1.
Test plan
This branch still needs work. I have at least one failing test, that's having trouble importing the new ui-default package. I'm not entirely sure why this is the case. I will discuss this on Slack.
A picture of a cute animal (not mandatory but encouraged)

And yet all the checks pass... !?

@timmysmalls not sure why it didn't run any GitHub actions on your PR

replaced by https://github.com/netlify/netlify-cms/pull/3224


/poolrpc.Trader/InitAccount: rpc error: code = Unknown desc = permission denied

Expected behavior
I expect pool to successfully create an account.
Actual behavior
When creating an account...
./pool a n --amt 2000000 --conf_target 200
-- Account Funding Details --
Amount: 0.02 BTC
Confirmation target: 200 blocks
Fee rate (estimated): 2.1 sat/vByte
Total miner fee (estimated): 0.00000323 BTC
Confirm account (yes/no): yes
[pool] rpc error: code = Unknown desc = permission denied

...it purchases the LSAT token and then gets an permission denied:
./poold
2021-05-12 07:56:14.094 [INF] POOL: Version: 0.4.4-alpha commit=v0.4.4-alpha-94-ga43019f246543b0efac18e2bd6bb72eb61a591fc
2021-05-12 07:56:14.095 [INF] LNDC: Creating lnd connection to localhost
2021-05-12 07:56:14.098 [INF] LNDC: Connected to lnd
2021-05-12 07:56:14.098 [INF] LNDC: Waiting for lnd to unlock
2021-05-12 07:56:14.380 [INF] LNDC: lnd version: v0.12.1-beta, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,routerrpc'
2021-05-12 07:56:14.381 [INF] LNDC: Using network mainnet
2021-05-12 07:56:14.381 [INF] LNDC: Waiting for lnd to be fully synced to its chain backend, this might take a while
2021-05-12 07:56:14.643 [INF] LNDC: lnd is now fully synced to its chain backend
2021-05-12 07:56:15.233 [INF] POOL: Auction server address: pool.lightning.finance:12010
2021-05-12 07:56:15.605 [INF] CLDB: Checking for schema update: latest_version=1, db_version=1
2021-05-12 07:56:15.606 [INF] RPCS: Starting trader server
2021-05-12 07:56:15.976 [INF] RPCS: Connected to lnd node XXX with pubkey YYY
2021-05-12 07:56:16.373 [INF] FNDG: Starting funding manager
2021-05-12 07:56:16.375 [INF] FNDG: Funding manager is now active
2021-05-12 07:56:16.376 [INF] RPCS: Trader server is now active
2021-05-12 07:56:16.376 [INF] POOL: Generating TLS certificates...
2021-05-12 07:56:16.388 [INF] POOL: Done generating TLS certificates
2021-05-12 07:56:16.391 [INF] POOL: Starting gRPC listener
2021-05-12 07:56:16.392 [INF] POOL: Starting REST proxy listener
2021-05-12 07:56:16.393 [INF] POOL: RPC server listening on <IP_ADDRESS>:12010
2021-05-12 07:56:16.393 [INF] POOL: REST proxy listening on <IP_ADDRESS>:8281
2021-05-12 07:57:28.081 [INF] ACCT: Estimated total chain fee of 0.00000323 BTC for new account with value=0.02 BTC, conf_target=200
2021-05-12 07:57:28.473 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/ReserveAccount]: rpc error: code = Internal desc = payment required
2021-05-12 07:57:28.473 [INF] LSAT: Payment of LSAT token is required, paying invoice
2021-05-12 07:57:37.762 [INF] LNDC: Payment ZZZ completed
2021-05-12 07:57:37.972 [ERR] RPCS: [/poolrpc.Trader/InitAccount]: rpc error: code = Unknown desc = permission denied

To reproduce
I tried this twice, once with 0.4.4-alpha and once with current master.
System information
Are you using Lightning Pool as a standalone application or as part of Lightning Terminal? standalone
How are you interacting with Pool? Through the command line interface or the Lightning Terminal UI? CLI
What version of Lightning Pool are you using, where did you get it (website, self-compiled, etc)? 0.4.4-alpha checked out from github.com

When trying to recover the account using ./pool a recover  I see this error messages in the log of poold:
2021-05-12 08:10:16.530 [INF] POOL: Attempting to recover accounts...
2021-05-12 08:10:16.729 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/OrderState]: rpc error: code = Internal desc = server closed the stream without sending trailers
2021-05-12 08:10:47.139 [INF] RPCS: Received new block notification: height=683224
2021-05-12 08:10:56.010 [INF] AUCT: Successfully connected to auction server
2021-05-12 08:10:56.213 [ERR] RPCS: [/poolrpc.Trader/RecoverAccounts]: error performing recovery: could not recover account XXX: rpc error: code = Unknown desc = permission denied
2021-05-12 08:11:06.208 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:06.208 [ERR] RPCS: Error in server stream: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:06.208 [ERR] AUCT: Error in stream, trying to reconnect: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:11.424 [INF] AUCT: Successfully connected to auction server
2021-05-12 08:11:11.621 [ERR] RPCS: Error closing stream: rpc error: code = Unknown desc = permission denied
2021-05-12 08:11:21.619 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:21.620 [ERR] RPCS: Error in server stream: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:21.620 [ERR] AUCT: Error in stream, trying to reconnect: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:26.828 [INF] AUCT: Successfully connected to auction server
2021-05-12 08:11:27.020 [ERR] RPCS: Error closing stream: rpc error: code = Unknown desc = permission denied
2021-05-12 08:11:37.019 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:37.019 [ERR] RPCS: Error in server stream: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:37.020 [ERR] AUCT: Error in stream, trying to reconnect: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-12 08:11:42.213 [INF] AUCT: Successfully connected to auction server
2021-05-12 08:11:42.411 [ERR] RPCS: Error closing stream: rpc error: code = Unknown desc = permission denied
2021-05-12 08:11:52.409 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: rpc error: code = Unknown desc = no subscription received before timeout
...

This can happen if your lnd node is pretty old and the macaroons have never been re-generated. Can you please try removing all *.macaroon files in the <lnd_directory>/data/chain/bitcoin/mainnet/ folder and restarting lnd?
Then make sure Pool uses the correct ones (might also need to restart Pool).

@guggero thank you for your hint. The macaroons have been up to 10 months old. Now I get different error messages, mostly sporadic timeout errors:
./poold
2021-05-12 14:25:12.682 [INF] POOL: Version: 0.4.4-alpha commit=v0.4.4-alpha-94-ga43019f246543b0efac18e2bd6bb72eb61a591fc
2021-05-12 14:25:12.683 [INF] LNDC: Creating lnd connection to localhost
2021-05-12 14:25:12.684 [INF] LNDC: Connected to lnd
2021-05-12 14:25:12.684 [INF] LNDC: Waiting for lnd to unlock
unable to start server: rpc error: code = DeadlineExceeded desc = context deadline exceeded

./poold
2021-05-12 14:25:23.875 [INF] POOL: Version: 0.4.4-alpha commit=v0.4.4-alpha-94-ga43019f246543b0efac18e2bd6bb72eb61a591fc
2021-05-12 14:25:23.876 [INF] LNDC: Creating lnd connection to localhost
2021-05-12 14:25:23.877 [INF] LNDC: Connected to lnd
2021-05-12 14:25:23.877 [INF] LNDC: Waiting for lnd to unlock
2021-05-12 14:25:24.419 [INF] LNDC: lnd version: v0.12.1-beta, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,routerrpc'
2021-05-12 14:25:24.420 [INF] LNDC: Using network mainnet
2021-05-12 14:25:24.420 [INF] LNDC: Waiting for lnd to be fully synced to its chain backend, this might take a while
2021-05-12 14:25:28.367 [INF] LNDC: lnd is now fully synced to its chain backend
2021-05-12 14:25:28.853 [INF] POOL: Auction server address: pool.lightning.finance:12010
2021-05-12 14:25:29.008 [INF] CLDB: Checking for schema update: latest_version=1, db_version=1
2021-05-12 14:25:29.009 [INF] RPCS: Starting trader server
2021-05-12 14:25:34.013 [INF] AUCT: Shutting down auctioneer client
unable to start server: error in GetInfo: rpc error: code = DeadlineExceeded desc = context deadline exceeded

It sounds like your lnd is still starting up. If you run lncli getinfo do you get a response? If yes, does it take a while (>5 seconds)?

@guggero just tried that a few times. About nine out of ten requests took 0.5 secs, one out of ten took 5.9 secs.

Interesting. So if you restart poold a few times, does it eventually succeed? The context deadline exceeded means it times out while waiting for GetInfo on lnd. The timeout is probably a bit too aggressive but maybe it'll work if you try again?

I tried it several times but it never succeeded. Can I somehow adjust that timeout?

Unfortunately the timeout is hard coded currently. Is lnd running on the same machine as poold? It's very weird that it consistently times out even though it's fast most of the time when you try manually...
You could try editing line 43 in rpcserver.go to see if that helps (that would help for the second case of the logs you pasted, where it goes beyond Auction server address: pool.lightning.finance:12010).

I have lndand pooldrunning on the same machine. beneath you find another log. I ran a pool a recover at 21:05:30. I assume an issue in communicating with the auction server, when I read the logs.
./poold
2021-05-13 21:05:10.617 [INF] POOL: Version: 0.4.4-alpha commit=v0.4.4-alpha-94-ga43019f246543b0efac18e2bd6bb72eb61a591fc
2021-05-13 21:05:10.618 [INF] LNDC: Creating lnd connection to localhost
2021-05-13 21:05:10.620 [INF] LNDC: Connected to lnd
2021-05-13 21:05:10.620 [INF] LNDC: Waiting for lnd to unlock
2021-05-13 21:05:11.001 [INF] LNDC: lnd version: v0.12.1-beta, build tags 'autopilotrpc,signrpc,walletrpc,chainrpc,invoicesrpc,routerrpc'
2021-05-13 21:05:11.003 [INF] LNDC: Using network mainnet
2021-05-13 21:05:11.003 [INF] LNDC: Waiting for lnd to be fully synced to its chain backend, this might take a while
2021-05-13 21:05:11.327 [INF] LNDC: lnd is now fully synced to its chain backend
2021-05-13 21:05:11.635 [INF] POOL: Auction server address: pool.lightning.finance:12010
2021-05-13 21:05:11.727 [INF] CLDB: Checking for schema update: latest_version=1, db_version=1
2021-05-13 21:05:11.728 [INF] RPCS: Starting trader server
2021-05-13 21:05:12.006 [INF] RPCS: Connected to lnd node XXXXXXXXXX with pubkey YYYYYYYYYY
2021-05-13 21:05:12.967 [INF] FNDG: Starting funding manager
2021-05-13 21:05:13.068 [INF] FNDG: Funding manager is now active
2021-05-13 21:05:13.069 [INF] RPCS: Trader server is now active
2021-05-13 21:05:13.270 [INF] POOL: Starting gRPC listener
2021-05-13 21:05:13.271 [INF] POOL: Starting REST proxy listener
2021-05-13 21:05:13.272 [INF] POOL: RPC server listening on <IP_ADDRESS>:12010
2021-05-13 21:05:13.273 [INF] POOL: REST proxy listening on <IP_ADDRESS>:8281
2021-05-13 21:05:30.034 [INF] POOL: Attempting to recover accounts...
2021-05-13 21:05:30.231 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/OrderState]: rpc error: code = Unknown desc = no order found
2021-05-13 21:06:12.628 [INF] RPCS: Received new block notification: height=683485
2021-05-13 21:06:16.126 [INF] AUCT: Successfully connected to auction server
2021-05-13 21:06:26.321 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: rpc error: code = Unknown desc = no subscription received before timeout
2021-05-13 21:06:26.377 [ERR] AUCT: [/poolrpc.ChannelAuctioneer/SubscribeBatchAuction]: EOF

Why are you running the account recovery? Was there ever an account that was created successfully? If there are no accounts the recovery will probably time out with the error you see.

I do not know, but the LSAT has been paid, see second log of issue.
2021-05-12 07:57:28.473 [INF] LSAT: Payment of LSAT token is required, paying invoice
2021-05-12 07:57:37.762 [INF] LNDC: Payment ZZZ completed

If I now run ./pool accounts n --amt 2000000 --conf_target 100 it tells me, that it found an existing pending reservation for an account:
-- Account Funding Details --
Amount: 0.02 BTC
Confirmation target: 100 blocks
Fee rate (estimated): 3.0 sat/vByte
Total miner fee (estimated): 0.00000461 BTC
Confirm account (yes/no): yes
[pool] rpc error: code = Unknown desc = unable to make new reservation, found existing pending reservation for account XXXXXXXX

This is the cause why I tried the recover. Can you help me with this issues?

Can you DM me the account key in the error message please? On Slack or Keybase.
The reservation is on the server side from your failed attempt. I can manually remove it.

I assume this was fixed manually.


Tracing: add service value  annotations

Is your feature request related to a problem? Please describe.
Original issue: https://github.com/awslabs/aws-lambda-powertools-python/issues/850
When troubleshooting a larger app, service annotation would've made it easier to slice the service map in X-Ray. Similarly, ColdStart annotation is only added when there is a cold start - having false would be great to quickly analyze sampled requests where cold start happened vs warm starts.
Describe the solution you'd like
Include service annotation, Service, if value is defined
Describe alternatives you've considered
Manually create that as part of my function
Additional context

Added in https://github.com/awslabs/aws-lambda-powertools-java/releases/tag/v1.9.0


Hotkey to turn off and on

This is a wonderful tool for connecting thoughts and notes. But when I'm more in task mode, I prefer a less cluttered interface. It would be very hand to be able to turn this off and on, like the graph.

Great idea!

This feature is now implemented as a command palette feature. It toggles SNW off temporarily (until restart) and can of course be toggled back on with the same CP command.
Tnx for enhancement request.

Great to hear. I'll save it up for my knowledge weaving sessions.


[sival,kmac] Add kmac_error_conditions_test

This adds the new kmac_error_conditions_test test that is defined in the chip_sw_kmac_error_conditions chip level test.

@vogelpi the test for the ErrWaitTimerExpired and ErrIncorrectEntropyMode is not working on the CW310 FPGA as we turn by default the masks off. I've marked the test as broken and referenced to #15530. Is this OK for you?

Thanks for your review, @engdoreis! As suggested, I've changed CHECK_DIF_OK to TRY.

Thanks for your review, @vogelpi and @engdoreis
I've made quite some significant changes to this PR to address your review, @vogelpi:

Executed the test on CW340 - this works now and the test also gets executed in CI. Thanks @jwnrt for setting this up.
Worked on testing ErrShadowRegUpdate. I've noticed that this ErrShadowRegUpdate (and the corresponding kDifErrorShadowRegisterUpdate) is never used in HW and SW. Instead, according to the documentation, a shadow register update error is indicated by a recoverable alert. I've added a test to test whether the HW complies to the documentation. Do we want to remove ErrShadowRegUpdate and kDifErrorShadowRegisterUpdate from the HW and software in a separate PR?
Implemented the ErrSwIssuedCmdInAppActive test.
Implemented the ErrSwPushedMsgFifo test according to the test plan.
Implemented the ErrSwHashingWithoutEntropyReady test.

@engdoreis I just have one question regarding the difference CHECK <-> TRY_CHECK (please see in the comment above). Regarding the DIFs, I don't think that we should add these register writes to the DIF as they are only required to trigger an error behavior. Adding them could cause some unintended misuse by others, hence, I prefer leaving it as it is.

This sounds all great, excellent work @nasahlpa !
About the ErrShadowRegUpdate error code: I see the corresponding alert condition is also signaled via STATUS register. So software will learn about having done something wrong, even if it's not via ERR_CODE register. And your test checks this which is very nice! I agree that we should remove ErrShadowRegUpdate and kDifErrorShadowRegisterUpdate from the HW and SW in a separate PR.


wip: rewrite most style linters in Lean

This is a prototype at rewriting most style linters from Python in Lean.

Steps for landing this:

[ ] land #13240: basic infrastructure and the copyright linter

[x] normalise copyright headers: land #13212
[x] adding missing copyright years: land #13247

[ ] land #13245, which adds a pure-Lean mechanism of updating the style exceptions.
[ ] land #12928, which becomes a syntax linter
[ ] verify that windows line endings are still caught: Lean's IO.FS.lines method returns lines without newline; I have not checked if this still works in the Windows case (help testing welcome; I don't have access to a Windows computer!)
[ ] I had, for the fun of it, dialed up the "lonely by" linter: either fix the offenders (#13203, #13204 and possibly more; some work) or dial it down again
[x] optimise this linter: after compiling the linter, it's 5x faster than Python: takes 2-3s, instead of 10
after one and a half rounds of optimisation, it's perhaps twice as slow as the python script was (with a few lints missing). See the inline comments for some details: on my machine, the Python script (before the rewrite, with a few more linters) takes ~12-14 seconds, which these linters take ~20-25s.
tentative plan to integrate this: have to Lean executables; lint_style (for just linting) and update_style_exceptions. The latter can run both the python script and the Lean linter.
[ ] open for discussion: the fixes of the line length warnings
[ ] depends on: #12928
[ ] depends on: #13240
[ ] depends on: #13245 for being able to roll this out gradually

I'm not at all an expert in speed ups, but is there a chance that putting all the line-filtering in a single "master" linter and then differentiating later the error message be an improvement?
My idea is that this way you scan the lines only once and lint everything, rather than having to separately scan all the lines for each linter.  I'm not sure what is better.

From a reviewing point of view, it might be better to create an initial PR with just one linter and then gradually adding the rest.  This also helps not holding back all the linters, since one is controversial.

Makes sense; I'll probably do that. If you wish, #12928 is the first such PR; rewriting the copyright (and adding most infrastructure) can be the next one.

I filed #13240 for rewriting the copyright check.

As a way to roll this out, I have rewritten update_style_exceptions.sh as a Lean executable: this allows both linters to co-exist.

Compiling the linter to an executable makes it much faster: now it's an order of magnitude faster than the Python linter.


Fix travis caching

Also use the folder bundler 2 will use by default.

@deivid-rodriguez
Not sure if you noticed, looks like the 3 minute limit is no longer?

Sorry? I didn't understand the question.

I'm not sure what branch / PR is where, but looking at Appveyor  history shows the last build taking an hour?
Similar with Travis.
Sorry - Just noticed that the time PR hasn't been committed yet...
Greg

Ahh, yes. It should start working faster as soon as I merge it. (Travis will still be slow though due to macOS limited availability... :disappointed:)


zebra seed command is throwing a panic but keeps going fine?

May 26 11:47:58.437  INFO zebrad::components::tracing: Initializing tracing endpoint
May 26 11:47:58.438  INFO zebrad::components::metrics: Initializing metrics endpoint
May 26 11:47:58.438  INFO zebrad::commands::seed: begin tower-based peer handling test stub
May 26 11:47:58.448  INFO add_initial_peers: zebra_network::peer_set::initialize: Connecting to initial peer set initial_peers=[V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233), V4(<IP_ADDRESS>:8233)]
May 26 11:48:01.314  INFO zebra_network::peer_set::initialize: Sending initial request for peers
May 26 11:48:01.314  INFO zebrad::commands::seed: waiting for peer_set ready
May 26 11:48:01.314  INFO zebrad::commands::seed: peer_set became ready
The application panicked (crashed).
Message:  assertion failed: !self.cancel_handles.contains_key(&key)
Location: <::std::macros::panic macros>:2

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.
May 26 11:48:01.354 ERROR zebra_network::peer_set::initialize: e=send failed because receiver is gone

                Poll::Ready(Some(Err((key, UnreadyError::Canceled)))) => {
                    debug_assert!(!self.cancel_handles.contains_key(&key))
                }

So this is likely a background panic that is taking down the thread this service is running in and then not being properly propogated back to main, digging into how tower and services work to get an idea of where the panic is being discarded.

Okay so the issue is in tower::buffer::Buffer https://docs.rs/tower-buffer/0.3.0/src/tower_buffer/service.rs.html#46
It spawns the buffered future but discards the join handle immediately. I'm gonna open an issue and PR against tower and test out the PR against zebra seed via a patch in the toml.

Okay so that was only part of the issue, and not the main part. The main issue is that zebra_network::init spawns multiple futures in background threads and discards the join handles. Ideally we'd want to return the join handles so they can be awaited after the service is done running.
I'm worried that this will still leave room for futures to be dead in background threads for a long time before errors get awaited and propagated.
As I see things there are three approaches we could take to improve this
A. Return 3rd future from init to shut down the various spawned tasks and await their results.
The specific approach I'm thinking of is:

Create a new zebra_network::Handle type or something
add a shutdown method to it that returns a future which sends the signal to the background tasks to wrap up (assuming they're even long running) and then waits on all their stored join handles, propagating any errors it encounters back out.

B. Avoid using tokio::spawn
I think we could restructure things to run all parallel futures via combinators like try_join! or w/e they're called, this would let us exit immediately if one of the futures encounters an error, I'm not sure what implications this would have for zebra_network's api though, so maybe its not a great idea. However I do feel like getting panics to fail fast is a good goal.
C. use panic=abort
This is basically the exact thing that I want, it disables unwinding and makes it so a panic in any thread kills the whole process immediately. This also disables all the unwinding code generation so it has perf advantages. This is by far my favorite option. If it helps at all, firefox uses panic=abort.

RE: using panic=abort
To quote @mystor

all libs need to be written to support panic=unwind
And certain libs don't behave correctly with panic=abort

So we might want to add testing for panic=unwind in CI or something to ensure that everything is still well behaved if panics are handled rather than instantly bringing down the whole process.

My inclination is to do a mix of A) and C), Doing C handles panics and gives us the fast fail behaviour. A gives us proper error propagation which ensures that everything gets reported properly

My inclination is to do a mix of A) and C), Doing C handles panics and gives us the fast fail behaviour. A gives us proper error propagation which ensures that everything gets reported properly and covers situations where we don't care about failing asap.

We did C) in #401, we are looking to do A) as part of a separate piece of work/issue.

A): #408


V3 - implement uninstall of language packages

Uninstalling of packages is not implemented yet. Currently, it would have to be done manually if someone wanted to uninstall a language package.
There's a few reasons why I think it would be good to have at some point:

storage space: if someone needs to remove a language because it consumes too much storage space
update to a language-version package: if there ever is an update to a language-version's build/usage (might be better to implement a way to detect this at some point instead)
just doesn't like the language: self explanatory
development purposes: when developing new language packages locally, issues can arise while building which could lead to an erroneous package getting created and put into their local repo

Ideally, the implementation would just be to safe delete the respective target dirs/packages.
For API users, it would just be removing:

data/piston/packages/<language>/<version>

Then for development/personal build maintainers, these extra ones could be removed:

packages/<language>-<version>.pkg.tar.gz
everything in the package/<language>/<version> directory excluding the common build/usage scripts like build.sh, environment, metadata.json, compile, run, test.* (this one may technically not be necessary depending on the lang's build steps, but wouldn't hurt to add for clean rebuilds)

It doesn't need to distinguish between the different use cases of the project (probably couldn't do it accurately anyway), but just safely delete those targets and then give a nice message.

The final part would be impossible from within the container, as the packages dir doesn't get mounted into the API container.
To clean these files its possible to use git clean, which with the right flags can remove files which are .gitignored which would mean package files.
As for uninstallation, see 81cdc766b64738cbe875c56c756332d3f3196eff for implementation.


Update to Squirrel.Windows 1.2.4

Release notes up at https://github.com/Squirrel/Squirrel.Windows/releases/tag/1.2.4

Published as 1.2.2, thanks :shipit:


Update quickstart-onboard-gcp.md

introducing enhanced provisioning to GKE Defender4Containers

Learn Build status updates of commit 40e769d:
:warning: Validation status: warnings

File
Status
Preview URL
Details

articles/defender-for-cloud/quickstart-onboard-gcp.md
:warning:Warning

Details

articles/defender-for-cloud/quickstart-onboard-gcp.md

Line 229, Column 113: [Warning: hard-coded-locale - See documentation] Link 'https://learn.microsoft.com/en-us/azure/defender-for-cloud/defender-for-containers-enable?pivots=defender-for-container-arc&toc=%2Fazure%2Fazure-arc%2Fkubernetes%2Ftoc.json&bc=%2Fazure%2Fazure-arc%2Fkubernetes%2Fbreadcrumb%2Ftoc.json&tabs=aks-deploy-portal%2Ck8s-deploy-asc%2Ck8s-verify-asc%2Ck8s-remove-arc%2Caks-removeprofile-api#protect-arc-enabled-kubernetes-clusters' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 231, Column 111: [Warning: hard-coded-locale - See documentation] Link 'https://learn.microsoft.com/en-us/azure/governance/policy/concepts/policy-for-kubernetes' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 229, Column 113: [Suggestion: docs-link-absolute - See documentation] Absolute link 'https://learn.microsoft.com/en-us/azure/defender-for-cloud/defender-for-containers-enable?pivots=defender-for-container-arc&toc=%2Fazure%2Fazure-arc%2Fkubernetes%2Ftoc.json&bc=%2Fazure%2Fazure-arc%2Fkubernetes%2Fbreadcrumb%2Ftoc.json&tabs=aks-deploy-portal%2Ck8s-deploy-asc%2Ck8s-verify-asc%2Ck8s-remove-arc%2Caks-removeprofile-api#protect-arc-enabled-kubernetes-clusters' will be broken in isolated environments. Replace with a relative link.
Line 231, Column 111: [Suggestion: docs-link-absolute - See documentation] Absolute link 'https://learn.microsoft.com/en-us/azure/governance/policy/concepts/policy-for-kubernetes' will be broken in isolated environments. Replace with a relative link.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Learn Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@bmansheim

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

NOTE: The validation warning and suggestions concerning the links will need to be addressed before this can be merged.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#please-close


[FEATURE]: Add Revocation Reason

Scope
Web
Feature Description
Add Revoke Reason
Use Case
Add a reason as to why the [ban/warn] was revoked, so that an admin can determine if the revoked history should be taken into account.
For example:

An admin may take into account a revoked ban with revoke reason "Ban Appealed" (as the player actually committed the offense)
An admin may not take into account a revoked ban with revoke reason "Banned Wrong Person // Erroneous ban" (as the player did not commit the offense listed)

Proposed Solution
When pushing the revoke button, a new modal should pop up prompting the user for a reason.  Then, once the ban modal is opened, another line with "Revoke reason" would be provided
Additional Info
No response

I would prefer to add a "expire ban" button, where it would immediately expire the ban, without revoking it.
Would that work?

Sounds good!  Actually ends up even better so that revoking is solely reserved "expunged" records of that type

I would prefer to add a "expire ban" button, where it would immediately expire the ban, without revoking it. Would that work?

That could bring dishonest moderation, even worse than revoking without reason.

Maybe change the "expiry" from the date to "Manually Expired by {admin}" so there's a chain of custody

Bump. Would be great to have sooner than later


Added StorageImage as a new descriptor for the pipeline_layout macro.

Thanks - This approach will work for me. It would be nice to be able to pass in a struct of defaults I want to set for DescriptorImageDesc and make use of the Rust .. syntax to add in ::empy() values I don't care about, but I now sure how to cleanly add that here yet.

It's just a matter of API.
You're right that it should be possible to pass a DescriptorDesc, as it will be checked anyway.


Not all Hue recognized

I've gotten Hyperion setup, and the WebUI breaks generally anytime I try to save/restart (Raspbian Jessie Pi3), and when it does restart it'll enter a failed state either due to not recognizing the devices, or not enough bulbs (easily fixable by editing the number in Index). Is there something I need to do so that more of the lights are discovered or recognized? I have 6 total. 3 Bulbs, 1 Bloom, 1 Go, and 1 Lightstrip. Only the Bloom, Go, and one bulb are recognized/working.
BEFORE YOU OPEN A NEW ISSUE!
Search at our wiki: wiki.hyperion-project.org
Our FAQ: https://hyperion-project.org/wiki/FAQ-Frequently-Asked-Questions
And have a look at our forum: forum.hyperion-project.org
If you need help please open a new thread their!
WE PROVIDE NO SUPPORT AT GITHUB!
All misleading issues will be closed without a announcement!

I can confirm this. After the newest PR's my hyperion starts for about 10 seconds and closes then.
I think there is something broken with hue atm.

Ah, understood. That's what's happening when it eventually does work. They'll do the intro, then I can't calibrate the colors because they stop :(

Please provide feedback at PR472, unrecognized ids are now properly logged.


Creation bucket caused noobaa core and noobaa endpoint pods crash

Environment info

NooBaa Version: master-20210607
Platform: OCP 4.6.16

Actual behavior

Creation of multiple buckets caused multiple noobaa pods crash

Expected behavior

No pods should crash

Steps to reproduce

Started a loop for 100's of buckets.
In between, it failed creation of buckets operation.
Overall 352 buckets were created.

No IO was running for this test.
Noobaa pods and noobaa endpoint pods crashed and noobaa status is failing
[root@ocp-akshat-1-inf ~]# podn
NAME                                               READY   STATUS             RESTARTS   AGE
noobaa-core-0                                      0/1     CrashLoopBackOff   4          24h
noobaa-db-pg-0                                     1/1     Running            0          24h
noobaa-default-backing-store-noobaa-pod-615be21a   0/1     Terminating        0          6d16h
noobaa-endpoint-74dfc4b786-468kd                   1/1     Running            7          24h
noobaa-endpoint-74dfc4b786-j9d49                   1/1     Running            0          3m33s
noobaa-operator-7996cfc767-h2lnd                   1/1     Running            0          24h

More information - Screenshots / Logs / Other output

noobaa_diagnostics_1623861046.tar.gz

nbcore_postgres.gz
noobaa_diagnostics_1624330483.tar.gz

Hey @akmithal , taking a look on the logs I can see an issue with a same bucket being created twice - which of course we should block, so few questions:

is this part of your test? what does your test do exactly? create and delete same/random 100 buckets in loop? did it fail on the 3rd loop (on 352)
Are you creating these buckets using s3?
I couldn't really find the error on the time that it really happened. the last logs you sent have only the issue from after both core and endpoint was restarted - so it doesn't have too valuable data except for the errors on the key appearing twice.

Jun-22 2:55:10.276 [BGWorkers/30] [ERROR] core.server.system_services.system_store:: SystemStoreData: buckets_by_name collision on key bucket-4piqv4 { _id: 60d0d3313a4fd5002cd52d2e, tag: '', name: SENSITIVE-ae587f039dd6656e, system: <ref *1>

From the DB that you attached I can see this:
60d0d3313a4fd5002cd52d30        {"_id": "60d0d3313a4fd5002cd52d30", "desc": "bucket-4piqv4 was created by<EMAIL_ADDRESS>"time": "2021-06-21T17:58:09.989Z", "actor": "60d0cebc3a4fd5002cd523aa", "event": "bucket.create", "level": "info", "bucket": "60d0d3313a4fd5002cd52d2e", "system": "60d0b1973a4fd5002cd5238f"}
60d0d34f3a4fd5002cd53057        {"_id": "60d0d34f3a4fd5002cd53057", "desc": "bucket-4piqv4 was created by<EMAIL_ADDRESS>"time": "2021-06-21T17:58:39.767Z", "actor": "60d0cebc3a4fd5002cd523aa", "event": "bucket.create", "level": "info", "bucket": "60d0d34f3a4fd5002cd53055", "system": "60d0b1973a4fd5002cd5238f"}

two buckets with the same name created 30 seconds apart from each other - So I think that's what causing the issue.
Will try to reproduce myself. But if in any case you can get a reproduce easily and to attach the previous logs for both core and endpoint that will be great.
oc logs noobaa-core-0 -p
oc logs noobaa-endpoint-<the terminsting one> (suppose to be part of the diagnositcs but this last time it didn't appear)

Thanks

Hi @jackyalbo :

Yes this is part of my test to create 500 buckets for MVP. I use a loop to do that instead of manual operation. It even fails on 1st instance now. I think it should be easily reproducible on any environment involving Namespace buckets on OCP.

I am using s3 to achieve this and hence it is a sequential operation. Just a simple for loop.

Reproducing it, disturbs my whole setup and then I have to install the code again.
If you are not able to reproduce with the above steps, let me know will have to plan the run accordingly.

Hi @akmithal
I slowly slowly created ~300 buckets,  but it doesn't reproduce to me.
Created on top of nsfs namespace,  I ran in minikube, with postgres, created all the buckets from s3.
Also deleted around 100, and tried to create an already created buckets once again - It does't reproduce.
I need some specific guidelines on how to reproduce, maybe you can share your code of creating the buckets I can try it.
Another option is you creating a repro once again and saving all the logs from both new and old pods once its start to restart.

looping on creating a bucket lead me to duplicate entries in the DB:
time for i in {1..500} ; do date ; time aws s3 --endpoint-url=<endpoint url> mb s3://bucket-${i} --no-verify-ssl ; date ; done

noobaa_diagnostics_1625645200.tar.gz

The latest above logs are done on 0706 build. bucket-324 was the affected one. No pods are crashed here.

I understand we shouldn't close the issues - So reopening.

This fix is working well. Thanks @jackyalbo , closing the bug.


[AdminAPI-1058] Add UserProfile endpoints

Sort dbsets in contexts
Add Tenant to IDBContext

Closed without merging for wrong branch naming


Element type of samplers

Samplers should be able to generate either coordinates or sets of SFourMomentum.
We need to decide if the eltype of a sampler is already determined at construction or if rand should be able to be called for both options on a sampler. We also need to define a type for the eltype of samplers that generate momenta because the element type is technically not SFourMomentum but an array of SFourMomentum.
It could look something like this:
rand(rng, sampler, PhaseSpace(Float64)) -> coordinates
rand(rng, sampler, PhaseSpace(SFourMomentum, eltype_of_momenta)) -> momenta

With the introduction of phase space points, this is solved.


Issue with "No staging repository is found"

Hello,
I am having an issue with my pipeline. I am trying to release the very first version of my plugin but I am getting:
java.lang.IllegalStateException: No staging repository is found. Run publishSigned first

Links:

https://github.com/leobenkel/safety_plugin
https://travis-ci.org/leobenkel/safety_plugin

From https://www.scala-sbt.org/1.x/docs/Using-Sonatype.html#sbt-sonatype , it seems that running
sonatypeOpen "your groupId" "Some staging name"

before publishSigned is required

More clues: https://oss.sonatype.org/content/repositories/staging/com/leobenkel/safety_plugin_2.12_1.0/ the staging folder seem to be there

Thanks for reporting! What is the output of “show organization”?

com.leobenkel as expected from https://github.com/leobenkel/safety_plugin/blob/25539b632bf885734cda0156f01f44b25fdd96b9/project.sbt#L3

One PR merge is running right now: https://travis-ci.org/leobenkel/safety_plugin/builds/544860116 And I will mark this commit as a new tag to try again when thats finish

so it is in staging and snapshot: https://oss.sonatype.org/content/repositories/staging/com/leobenkel/safety_plugin_2.12_1.0/
https://oss.sonatype.org/content/repositories/snapshots/com/leobenkel/safety_plugin_2.12_1.0/

going to run
git tag -a $(VERSION) -m $(VERSION)
git push origin $(VERSION)

locally now and see how it goes

running with the tag:
https://travis-ci.org/leobenkel/safety_plugin/builds/544870243

it is on the same commit hash 25539b6 . but it is not a problem, right ? How would you do it otherwise?

It said it succeed but there is nothing in https://repo1.maven.org/maven2/com/

I'm lost. I dont know what is wrong.

there are no errors anymore

the latest staging folder is there https://oss.sonatype.org/content/repositories/staging/com/leobenkel/safety_plugin_2.12_1.0/88-25539b63-SNAPSHOT/ but it seems that it did not publish the right one

I see
[info] Closing staging repository [comleobenkel-1000] status:open, profile:com.leobenkel(b65f58f0ed3617) description: com.leobenkel

in the log of https://travis-ci.org/leobenkel/safety_plugin/jobs/544870249
which is the staging repo created from the command:
sbt "sonatypeOpen com.leobenkel"

comleobenkel-1000 , I was also able to see it in the webUI : https://oss.sonatype.org/#stagingRepositories
But after the travis job ran, it is not in the list anymore.
So I suspect that this repo was deployed as release but it did not contained anything , no files.
It feels that the plugin is missing to assign the https://oss.sonatype.org/content/repositories/staging/com/leobenkel/safety_plugin_2.12_1.0/88-25539b63-SNAPSHOT/ as the staging repo to release.

No idea what that means but when i go to https://oss.sonatype.org/ , then to
Repositories -> double click on Staging -> in the menu below -> tab Browse Storage -> com.leobenkel is there.
but in :
Repositories -> double click on Staging -> in the menu below -> tab Browse Index -> com.leobenkel is not there.

@olafurpg would you be able to take a look ? I asked on stackoverflow, even added a bounty, as well as asked on Reddit but nobody seem to know the answer.

Have you tried running the release steps manually from sbt on your local computer? First “publishSigned” and then “sonatypeRelease”. I recommend using “sonatypeDrop” if you have any existing open repositories, which you can list with “sonatypeStagingRepositoryProfiles” (might be a typo somewhere I’m on a phone).

Thank you for your answer @olafurpg .
sonatypeStagingRepositoryProfiles  is returning:
[info] Reading staging repository profiles...
[warn] No staging repository is found. Do publishSigned first.
[warn] No staging repository is found for com.leobenkel

and no typo ! Congratz from your phone ! haha.
locally publishSigned return:
[error] java.io.IOException: secret key ring doesn't start with secret key tag: tag 0xffffffff

And I can't find a way to solve this issue. I followed the steps from https://github.com/olafurpg/sbt-ci-release#gpg
And as expected sonatypeRelease return:
[info] sonatypeProfileName = com.leobenkel
[info] Reading staging repository profiles...
[warn] No staging repository is found. Do publishSigned first.
[info] Reading staging profiles...
[error] java.lang.IllegalStateException: No staging repository is found. Run publishSigned first

It looks like the publishSigned step failed, which might be caused by the
gpg installed on your computer. Please check the sbt-pgp docs. What version
of gpg do you have installed?
On Mon, 17 Jun 2019 at 23:44, Leo<EMAIL_ADDRESS>wrote:

Thank you for your answer @olafurpg https://github.com/olafurpg .
sonatypeStagingRepositoryProfiles is returning:
[info] Reading staging repository profiles...
[warn] No staging repository is found. Do publishSigned first.
[warn] No staging repository is found for com.leobenkel
and no typo ! Congratz from your phone ! haha.
locally publishSigned return:
[error] java.io.IOException: secret key ring doesn't start with secret key tag: tag 0xffffffff
And I can't find a way to solve this issue. I followed the steps from
https://github.com/olafurpg/sbt-ci-release#gpg
And as expected sonatypeRelease return:
[info] sonatypeProfileName = com.leobenkel
[info] Reading staging repository profiles...
[warn] No staging repository is found. Do publishSigned first.
[info] Reading staging profiles...
[error] java.lang.IllegalStateException: No staging repository is found. Run publishSigned first
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/olafurpg/sbt-ci-release/issues/44?email_source=notifications&email_token=AAKXYXIANXXJTBWPEHWV4V3P3AAVHA5CNFSM4HXE3L32YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX4RHTY#issuecomment-502862799,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKXYXJG6LEALFFFFRGF74TP3AAVHANCNFSM4HXE3L3Q
.

▶ gpg --version
gpg (GnuPG) 2.2.16
libgcrypt 1.8.4
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: /Users/lbenkel/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2

But this step seem to work from Travis.

Here's my output, looks similar
$ gpg --version
gpg (GnuPG) 2.2.10
libgcrypt 1.8.4

Judging by the logs, it looks like you are publishing a SNAPSHOT version successfully but it's triggering a stable release. The tag is named "0.1", can you try again with "v0.1" (observe the leading v).

ok, I am trying with v0.1 , here is the Travis link: https://travis-ci.org/leobenkel/safety_plugin/builds/547311804
omg I think it worked ! WTF!? Why does it fail if it does not start by v ?!
Thank you so much for your help !

I was able to fetch the library from a local project so it all worked ! Thanks !

omg I think it worked ! Why does it fail if it does not start by v ?!

I believe this is related to how sbt-dynver works 🤔 Reopening since this is still a bug in sbt-ci-release since we publish a SNAPSHOT release and then try to run sonatypeRelease

Glad it worked!


snowflake_role_grant inconsistent with snowflake_grant_privileges_to_account_role when using escaped characters

Terraform CLI and Provider Versions
Terraform v1.7.0
on windows_amd64

provider registry.terraform.io/hashicorp/aws v5.37.0
provider registry.terraform.io/snowflake-labs/snowflake v0.86.0

Terraform Configuration
locals {
  support_role = "\"USER-EDP.L3.SUPPORT\""
}

resource "snowflake_role" "support_role" {
  provider = snowflake.aad_provisioner
  name    = local.support_role
}

resource "snowflake_role_grants" "support_role_grants" {
  role_name = snowflake_role.support_role.name

  roles = [
    "SNOWFLAKE_ADMIN",
  ]
}

Expected Behavior
This should assign role SNOWFLAKE_ADMIN to role USER-EDP.L3.SUPPORT
Actual Behavior
Error: '"' can not start an identifier
with module.base_platform.snowflake_role_grants.support_role_grants
on standard_roles.tf line 1506, in resource "snowflake_role_grants" "support_role_grants":
role_name = snowflake_role.support_role.name
Steps to Reproduce

terraform plan
terraform apply

How much impact is this issue causing?
High
Logs
No response
Additional Information
Please note that the above configuration snippet has redacted values, and is not in the same format as the actual deployment, which is using modules.

Hey @wpl-sf-nbirch. I will take a look at it on Monday.

Hey @wpl-sf-nbirch. We have released the fix as part of v0.87.0 release. Please follow the migration guide during the update. Please confirm that the issue is resolved in the newest version. Thanks!


Experiment with ImageSearchAll with tolerance to color variation

I didn't clean the comments, nor build 32-bit binaries, Please take a look into this pull request.
Best regards.

I've only read through the code and it seems like it should work. I'll have to do some testing later. Could you change the line endings for ImagePut back? They got switched in your latest commit

I've only read through the code and it seems like it should work. I'll have to do some testing later. Could you change the line endings for ImagePut back? They got switched in your latest commit
Aha! That was why the diff read so crazy on Github.

Can you explain the algorithm for finding the focused pixel? I'm glad you figured out why this is important, for a sprite the first few pixels are invisible, so the imagesearch would run really slowly.
Should this be s + w * h?
unsigned int * last_pixel = s + w + h * w;
I'll move the algorithm for finding the focused pixel out of the ImageSearch (because there can be many ways to find a focused pixel), and will be sure to credit you once I figure out what yours does.

Can you explain the algorithm for finding the focused pixel? I'm glad you figured out why this is important, for a sprite the first few pixels are invisible, so the imagesearch would run really slowly.

The algorithm came from no good reasoning, just thought it would be nice to locate a pixel a little bit far from the top-left corner that is not transparent, and use it as a quick reference.

Should this be s + w * h? unsigned int * last_pixel = s + w + h * w;

That looks simple and readable, but then the loop will stop right before the bottom most line.

Okay, I'll merge but expect major changes to your code.

I'm not sure if your code even runs, but the logic looks like it's there. ImageSearch doesn't seem to work, nor does ImageSearchAll.

Benchmarks!

Line 1 - Original ImageSearch (No variation)
Line 2 - Your code (No variation) https://godbolt.org/z/qGexdGqMn
Line 3 - Your code (variation = 1)

I'm not sure if your code even runs, but the logic looks like it's there. ImageSearch doesn't seem to work, nor does ImageSearchAll.
It ran on my wife's Windows system, with the game macro I made...

* The code to find a focused pixel was moved because it is a different problem than ImageSearch

I guess that's better, it adds the maintainability and organized look to the code base.

* I'm not sure why the focused pixel was being stored in the result array

I did it to prevent another search for the focused pixel for each sprite, just in case the sprite is big and bizarre especially with a lot of transparent part in the middle.

* Not sure if there's a difference between storing `x | y << 16` or doing `y = offset / width` and `x = offset % width`
  Finally, it's faster to have separate C code for the 0 variation case. Each case has to be individually vectorized anyways for a 2x or more speedup.

Awesome! Have you managed to vectorize it without using inline assembly? which SIMD instruction did it use?

Oh I forgot to give context for the benchmarks. Line 2 doesn't matter, it will always default to the dedicated ImageSearch for no variation. It's running at 30% of the "max speed" which seems good to me.

Awesome! Have you managed to vectorize it without using inline assembly?

Could you expand of your cmov comment? I saw it pop up a few times with or without div, I'm not too familiar with assembly here.

which SIMD instruction did it use?

Ah not yet! I want to get the specific optimizations in place without using SIMD. Vectorized code is pretty brittle, meaning it's hard to modify after it's written.

Oh I forgot to give context for the benchmarks. Line 2 doesn't matter, it will always default to the dedicated ImageSearch for no variation. It's running at 30% of the "max speed" which seems good to me.

Is the dedicated ImageSearch coming from the code I wrote? The number was horribly low. 14.27 / 137.23  = 10.4%

Awesome! Have you managed to vectorize it without using inline assembly?

Could you expand on your cmov comment? I saw it pop up a few times with or without div, I'm not too familiar with assembly here.

According to godbolt.org, it seems that GCC 11.4 with at minimum -O1 uses CMOV with my code and your code uses DIV, and I read on stackoverflow.com that DIV is not good at wide parallel execution. I actually don't have any idea if CMP + CMOV can outperform DIV or not.  I have to admit that I just believed without knowing.

* Not sure if there's a difference between storing `x | y << 16` or doing `y = offset / width` and `x = offset % width`

You must be talking about the line with "x << 16 | y" to give the result of search for focus pixel back to the function caller. the code is basically compressing the coordinates into 4 bytes, I could've used 8 bytes (which is pointer sized in a modern system) though.

Feel free to continue the conversation at: https://github.com/iseahound/ImagePut/issues/35


Task - Edit descriptor - New descriptor button

Add New descriptor button to the Edit descriptor task.

The 'reset' button is the same as new right now.

That should work


Quiet suggest-override warning as error

Scope & Purpose
This is an integration PR to land the PR https://github.com/arangodb/arangodb/pull/13244 and run Jenkins tests on it.
The original PR silences a few compile warnings due to missing override specifiers.
There is also an accompanying PR to the iresearch repository to make the changes there, too: https://github.com/iresearch-toolkit/iresearch/pull/238
However, the changes made to third party openfst will be lost eventually, when a new version of openfst is pulled. The only sensible way to prevent this from happening is to make the changes in the external openfst upstream repository.

[x] :hankey: Bugfix (requires CHANGELOG entry)
[ ] :pizza: New feature (requires CHANGELOG entry, feature documentation and release notes)
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification
[x] :book: CHANGELOG entry made

Backports:

[x] No backports required

Testing & Verification

[x] This change is a trivial rework / code cleanup without any test coverage.

Link to Jenkins PR run:
http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/13818/

http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/13819/

Tests blue.
Merged #13244, so this testing PR is obsolete now.


Update pythonbq version

Heroku apps using pythonbq will now be updated to version 2.0.1

This change is


add support for shellcheck for shell script static analysis

This will help keep bash scripts in check.

Looks like there is more work to getting this working with TravisCI.

Build failure is now due to #152.

Updated PR due to #152 now being resolved.

LGTM

LGTM other than the clarification that @thmiceli requested.


podman import writes the image 3 times

/kind bug
Description
I have an exported container (48GB). I run podman import ctr.tar myimg and the podman fails because it writes the data 3 times but my disk has only 120GB.
Steps to reproduce the issue:

podman import ctr.tar myimg

Describe the results you received:
Getting image source signatures
Copying blob 0687615e2b9e done
Copying config bb8c6cd121 done
Writing manifest to image destination
Storing signatures
Error: Error committing the finished image: error adding layer with blob "sha256:0687615e2b9ea4615907a71d92be5d4266431fb87e06047a39d0babd193b12a7": Error processing tar file(exit status 1): write /sybase/NPL/saplog_1/NPL_log_001.dat: no space left on device

Describe the results you expected:
IMPORTED
Additional information you deem important (e.g. issue happens only occasionally):
[root@buran /]# grep root /etc/containers/storage.conf
runroot = "/containers/runroot"
graphroot = "/containers/graphroot"
[root@buran containers]# findmnt /dev/mapper/containers-data
TARGET      SOURCE                            FSTYPE OPTIONS
/containers /dev/mapper/containers-data       xfs    rw,relatime,attr2,inode64,noquota
/var/tmp    /dev/mapper/containers-data[/tmp] xfs    rw,relatime,attr2,inode64,noquota
[root@buran containers]# du -sh /containers/*
35G     graphroot
8.0K    runroot
89G     tmp
[root@buran tmp]# du -sh /containers/tmp/*
45G     import052406256
45G     storage125424783

Output of podman version:
Version:            1.4.4
RemoteAPI Version:  1
Go Version:         go1.10.3
OS/Arch:            linux/amd64

Output of podman info --debug:
debug:
  compiler: gc
  git commit: ""
  go version: go1.10.3
  podman version: 1.4.4
host:
  BuildahVersion: 1.9.0
  Conmon:
    package: podman-1.4.4-4.el7.x86_64
    path: /usr/libexec/podman/conmon
    version: 'conmon version 0.3.0, commit: unknown'
  Distribution:
    distribution: '"rhel"'
    version: "7.6"
  MemFree:<PHONE_NUMBER>
  MemTotal:<PHONE_NUMBER>
  OCIRuntime:
    package: runc-1.0.0-65.rc8.el7.x86_64
    path: /usr/bin/runc
    version: 'runc version spec: 1.0.1-dev'
  SwapFree: 0
  SwapTotal: 0
  arch: amd64
  cpus: 4
  hostname: buran.openstack.eu-ru-1.cloud.sap
  kernel: 3.10.0-957.5.1.el7.x86_64
  os: linux
  rootless: false
  uptime: 18h 53m 57.33s (Approximately 0.75 days)
registries:
  blocked: null
  insecure: null
  search:
  - registry.access.redhat.com
  - docker.io
  - registry.fedoraproject.org
  - quay.io
  - registry.centos.org
store:
  ConfigFile: /etc/containers/storage.conf
  ContainerStore:
    number: 0
  GraphDriverName: overlay
  GraphOptions: null
  GraphRoot: /containers/graphroot
  GraphStatus:
    Backing Filesystem: xfs
    Native Overlay Diff: "true"
    Supports d_type: "true"
    Using metacopy: "false"
  ImageStore:
    number: 1
  RunRoot: /containers/runroot
  VolumePath: /containers/graphroot/volumes

Package info (e.g. output of rpm -q podman or apt list podman):
podman-1.4.4-4.el7.x86_64

Additional environment details (AWS, VirtualBox, physical, etc.):
OpenStack VM, VMWare

@QiWang19 Could you take a look at this, seems pretty strange.
@jfilak You are running as root correct?

@rhatdan  Yep, root.
BTW: Docker does not need any temporary file for import and Docker needs only 1 temporary file for load.

@nalind Any ideas what is going on?

@mtrmac ?

*shrug*

Runtime.Import writes it to file (the import temporary file)
c/image/tarball reads all of it to compute a digest and create a fake manifest [X]
c/image/storage.PutBlob makes a separate on-disk copy, to be applied in Commit (the storage directory; this might be better after one of the parts of containers/image#611)

The second copy could be avoidable, with some pretty tricky code, though containers/image#611 is doing a lot and it may not be easy to extricate from the rest.
But really, my first recommendation is to use a real image distribution protocol that is random-access and can avoid pulling redundant data, like the docker/distribution one, or even dir: on a network filesystem, not distributing images by streaming unseekable tarballs.
Even if we fix the second temporary copy, [X] makes it necessary to create a copy anyway, just to compute its digest to see whether the layer already exists locally. That’s always one extra copy just because the transport method does not contain a manifest.
(Or maybe c/storage can handle optimistically creating a layer, on the fly computing its digest, and then deleting it if it turns out to be redundant… note that that is much more expensive than the single large temporary file if the layer ends up being redundant; and it would require Podman import to be implemented directly using c/storage instead of via c/image, which is inherently whole-image = requires a manifest to be created.)

@mtrmac The thing is that I have the container in Docker on a builder VM and I want do deploy it on a machine I can ssh only through a jumpserver. So I do docker export on the one end and [ssh tunnel] and podman import on the other end.
@mtrmac How can I create the dir: from a docker image stored in docker storage? (I will tar-gzip-ncat the dir through an ssh tunnel and ncat-ungzip-untar it on the target host). What command I have to issue to load/import/pull the dir?

@mtrmac The thing is that I have the container in Docker on a builder VM and I want do deploy it on a machine I can ssh only through a jumpserver.

(To make things easy: reconsider the jumpserver, or tunnel a HTTP proxy through that? I suppose that’s not an option.)

So I do docker export on the one end and [ssh tunnel] and podman import on the other end.

Run local container with docker/distribution, storage mounted from an external volume
docker push all of the images to that server
Terminate container
scp the backing storage through the jump host to the destination
On the destination, run a local container with docker/distribution, storage mounted from an external volume pointing to the copy
podman pull all of the images
Terminate container.

Yes, that’s quite a bit more work… but it uses the optimized/optimizable path, naturally avoids redundant copies of the same layers for multiple images, and it should be possible to automate.
(There’s still one extra copy without containers/image#611, I’m afraid.)

@mtrmac How can I create the dir: from a docker image stored in docker storage?

skopeo copy docker-daemon:$name dir:$path should work. (OTOH, because it uses docker save-like unseekable tar streams internally, it will create large temporary on-disk copies. (IIRC one inside Docker, and one in Skopeo.) Basically, right now, you can choose whether the extra disk usage happens at the source or at the destination.)

(I will tar-gzip-ncat the dir through an ssh tunnel and ncat-ungzip-untar it on the target host). What command I have to issue to load/import/pull the dir?

Hum, podman pull can’t do that it seems. I suppose something like skopeo copy dir:$path containers-storage:$name would be the direct equivalent, but I haven’t tested it now, and it could be much more tricky with rootless.  Or skopeo copy dir:$path docker://$local-registry/repo and then pull from there — but at that point the “copy a registry backing volume” approach would be easier.

(None of this is to say that we are happy to have the extra copies, and it should be fixed as time/priorities allow; it’s just to be clear that that at least one of them will probably need to remain anyway, and the only way to avoid that one is to avoid the tar stream approach.)

You are right. I run out of disk space on the build host because skope copy docker -daemon: ...  creates an extra temp docker directory in /var/tmp/.

@jfilak, does the provided workaround work for you?

Well, I would have to configure docker and podman on the destination system and while it is technically possible, I didn't bother to mess up with this setup. Fortunately, I realized that I can point container storage to system partition (can hold 1 image), tmp to additional disk space (can hold 2 images) and I can pipe the original image from the source system via ssh - that way I managed to import the image.

No, bot, this is still a fairly serious bug

@vrothberg So it's closing bugs despite user activity? That seems wrong?

@vrothberg So it's closing bugs despite user activity? That seems wrong?

I was surprised as well. Need to check if we can tweak it.


add filter to api channels

Add a time frame to channels api
To request http://<mainfluxServer>:7070/channels/<channelId>?filter:starttime=xxxxx,endtime=yyyyy
This should return a json with from channel id with entries only in the time frame given in the api

Sure, I am looking at this one right away!

Should be OK now. More info here: https://groups.google.com/forum/#!topic/mainflux/7aywImi0udw
I will close the issue, please re-open it if something is missing.


Unable to delete manifest or layer

Configuration
Version: 2.8.1
version: 0.1
log:
  level: debug
  fields:
    service: registry
storage:
  cache:
    blobdescriptor: inmemory
  filesystem:
    rootdirectory: /var/lib/registry
  delete:
    enabled: true
http:
  addr: :5000
  headers:
    X-Content-Type-Options: [nosniff]
health:
  storagedriver:
    enabled: true
    interval: 10s
    threshold: 3
proxy:
  remoteurl: https://xxxr.azurecr.io
  username: xxx
  password: xxx

Repo steps

Pulled manifest and all layers of chosen image
Checked digest of manifest
Tried deleting manifest by sending DELETE http://localhost:5000/v2/{repo}/manifests/sha256:{hash}

Expected result
Received 202 Accepted
Actual result
Received 405 Method Not Allowed
{
    "errors": [
        {
            "code": "UNSUPPORTED",
            "message": "The operation is unsupported."
        }
    ]
}

Remarks
I also tried removing just single layer of the image, without success.
I tried setting storage/delete/enabled setting by configuration file or by environment variable, doesn't seem to make any difference.
I noticed this warning in startup logs of registry
"Registry does not implement RempositoryRemover. Will not be able to delete repos and tags" go.version=go1.16.15 instance.id=bd08b1fe-3838-4f77-8a51-e6e4cd6b17ab service=registry version="v2.8.1+unknown"

Does it mean that whole delete feature is not implemented?

I have the same issue...
delete: enabled: true

docker exec -i {contianer id} cat /etc/docker/registry/config.yml

As far as I know, delete is not supported when using registry as a proxy cache.

That's correct!

Closing as there is no delete in proxy. Proxy does have cache expiration TTL https://distribution.github.io/distribution/about/configuration/#proxy but that's about it.


[Bug]: Vehicle.Speed fails to work properly when the vehicle is a train

What modules are you seeing the problem on?
ScriptHookVDotNet3.dll (v3 SDK/API)
SHVDN Version
nightly.115
Game Version
V 1.0.3274.0
Bug Description
I was trying to convert my train control mod from SHVDN v2 to v3 but I cannot get the train to change speed under script control. I wrote a simple train controller mod and that exhibits the same problem. All I am doing in the simple mod is applying an eased SIN speed value to either brake or accelerate the train after pressing a button. The main train control mod uses speed information stored in the track nodes, so that it can control the AI trains.
The only difference between the v2 and v3 versions is the v3 API specific control, notification and subtitle code. I have attached the v3 class files as a zip file so that you can see what it is doing. The project was created by duplicating the v2 project and then just changing the specific v3 requirements (including reference of course), so the core code is identical in both versions. I can attach the full project if you need it, I just thought the class files would be a good starting point.
The mod was built against v3.6.0 release build but the game runs the nightly build because of the compatibility problems.
TrainController.zip
Steps To Reproduce
This is based on those class files to get the train functionality.
Stand next to the train tracks and wait for the freight train to pass. When it gets close, press the vehicle enter control to get into the train. Once inside the train, press Gamepad A (not sure what the keyboard equivalent of that is inside a vehicle) to brake the train and then when it has stopped, press the same control to accelerate it again.
Link To Code Example
No response
The Current Behavior
Setting Vehicle.Speed doesn't change the speed of the vehicle when it is a train using the v3 API.
The Expected Behavior
The train should accelerate and brake as instructed by the code, as it does with the v2 API.

First of all, I must apologize for the inconvenience due to the lack of the upgrade guide. However, since there may be breaking changes between different major versions and how Entity.Speed behaves doesn't change since v3.0.0, I do not consider the property has bugs. Use Vehicle.ForwardSpeed in the v3 API to achieve what Vehicle.Speed does in the v2 API.
As a side note, scripts intended to be open to the public should be built against stable versions, because anything only in nightly versions is subject to change without changing the major version.

Hmmm... I thought I had tried ForwardSpeed and got the same result but after trying it again, that does seem to work. The problem with ForwardSpeed is that it doesn't have a get accessor, meaning you are getting the value with Speed and then setting it with ForwardSpeed.
As stated in my original post, the mod was built against 3.6.0 stable release build and only tested in-game with the nightly build due to the game version being used.
Thanks for the help.


Revert "Added Top Line Bar functionality"

Reverts bfeher/BFPaperTabBarController#19
8 or more build errors. Please check your code and resubmit.
Thanks.

@onurvarrrr
Hi, sorry I had to revert because after merging, at least 8 build errors appeared in BFPaperTabBarController.m
Please check your code and resubmit when the errors are fixed. Thanks.


"fcntl" lib is not available in Windows

I play Python 3.7.4 on Windows. I get this error when trying to run python tapas-dl.py "https://tapas.io/series/Erma"
ModuleNotFoundError: No module named 'fcntl'
I tried using pip to install it, but it is not available
The same problem occured with "termios" lib when I commented out the import fcntl code before running the python file again.
Did I have a mistake?

According to what I looked up, these libraries are UNIX exclusive, or at least unavailable on Windows. If it is that case, I guess you don't have to fix this.

Should be fixed now.
Now it will just fall back to terminal size 80x200.


Change framework

start v3 projects
change framework . so remove old framework . 🐙
add venv in gitignore
#71

I don't think it should be removed. It should be part of the use to refactor.
Please revert https://github.com/NKUST-ITC/AP-API/pull/73/commits/1e112db816456b16d49880ee9fe516192da7efee and submit new commit.

Hi @takidog , thanks for your improvement of AP-API. We should encourage that each PR should only focus on 1 task as best as possible.
In this PR, it should only focus on  "changing the framework", not including with remove legacy code. Remove legacy code should be decided or do it with another PR, this will make us much easy to maintain in the future!


astra_driver: add destructor to stop all streams

This has registered callbacks with the streams so if they are not
stopped they may still call back in with an object that has been
destroyed, which will cause an invalid access.

Cool! Thank you again.


error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.

I got this error:
Getting version '4.0.0' of OpenCV
Cloning into 'opencv'...
remote: Enumerating objects: 6852, done.
remote: Counting objects: 100% (6852/6852), done.
remote: Compressing objects: 100% (5928/5928), done.
error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

Seems like a connection issue @cxhmikegithub
Please try again. In these times, internet connections are stressed and this thing can happen more frequently. Please feel free to re-open if the issue persists.

Seems like a connection issue @cxhmikegithub
Please try again. In these times, internet connections are stressed and this thing can happen more frequently. Please feel free to re-open if the issue persists.
I also meet this problem:
Getting version '4.8.0' of OpenCV
正克隆到 'opencv'...
fatal: unable to access 'https://github.com/opencv/opencv.git/': Failed to connect to github.com port 443: 连接超时
@mdegans


Comparison to FLAnimatedImage

Hey @wangjwchn, thanks for open sourcing this! I was using FLAnimatedImage in a project several weeks ago and had to abandon GIF support because of the memory issues. Although in Xcode it would show never ending memory growth, I wasn't experiencing an actual memory leak, it was just that the caching system they had implemented was poor and was causing really high transient counts in Instruments.
I would love to run some tests and compare JWAnimatedImage's transient counts to FLAnimatedImage's.

Hi @mitchellporter,thanks for your contribution to this repository.

After reading your opinion of the high memory problem of FLAnimatedImage I did some tests,I think you are right about this,I will modify it later.

I wish I could provide more info, but I aboandoned the problem and didn't fully understand the problem myself. A mentor with much more experience than me took a look at their code and told me they had created a crappy caching system when they should have been using NSCache.
He took a quick crack and at replacing their caching system with NSCache and he had already solved a lot of the memory issues but I never got access to the code and he had other things to work on.
All I know for sure is that if you run FLAnimatedImage in instruments you will notice constant transient objects growth, which is a bad thing, and you probably don't want to ship an app with that type of behavior.
Hopefully your library can solve some of these issues :)

My library is just completed, it will frequent update and may have some big changes. I optimized caching just now.If you take a long time for each measurement, I suggest you can wait about a week to avoid frequent measurement

Keep us updated please :-)! :+1:

ok~~

Closed = fixed? @wangjwchn

I think I've finished the main part of my library,You can benchmark now.
About FLAnimatedImage,I think that memory issue still exist.

@mitchellporter

Yes.There is no issues in this library now.@fboulegue

@wangjwchn Congratulations, I just saw your updated Instruments result images! Is there any way you can share a sample project that you used to test 30 gifs at once? I'd love to have a test project to start with, and then I'll try and add in fetching the gifs from a remote source and I'll keep testing from there.
Thanks.

I 've shared it in the example.@mitchellporter

Thanks @wangjwchn and great work 👍


Detect symbol-named properties as union discriminants

TypeScript Version:  3.7.5

Search Terms:
discriminated union symbol, AsyncIterator, Iterator.
Expected behavior:
Unions discriminated by symbol members should be narrowable.
Actual behavior:
No narrowing occurs.
Code
type m = {
    [Symbol.unscopables](): undefined
    cool:1
}

type b = {
    [Symbol.iterator](): undefined
    [Symbol.unscopables]():2
}

declare const k: m | b
declare function f(v: b): void

/*
Element implicitly has an 'any' type because expression of type
'symbol' can't be used to index type 'm | b'.(7053)
*/
if (k[Symbol.iterator] == undefined) f(k);

type m2 = {
  [Symbol.iterator](): 1
}

type b2 = {
  [Symbol.unscopables](): 2
}

declare function f2(b: b2): void;
declare const k2: m2 | b2;

/*
Argument of type 'm2 | b2' is not assignable to parameter of type 'b2'.
  Property '[Symbol.unscopables]' is missing in type 'm2' but required in type 'b2'.(2345)
input.ts(27, 3): '[Symbol.unscopables]' is declared here.
*/
if (Symbol.unscopables in k2) f2(k2)

Output
"use strict";
/*
Element implicitly has an 'any' type because expression of type
'symbol' can't be used to index type 'm | b'.(7053)
*/
if (k[Symbol.iterator] == undefined)
    f(k);
/*
Argument of type 'm2 | b2' is not assignable to parameter of type 'b2'.
  Property '[Symbol.unscopables]' is missing in type 'm2' but required in type 'b2'.(2345)
input.ts(27, 3): '[Symbol.unscopables]' is declared here.
*/
if (Symbol.unscopables in k2)
    f2(k2);

Compiler Options
{
  "compilerOptions": {
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictPropertyInitialization": true,
    "strictBindCallApply": true,
    "noImplicitThis": true,
    "noImplicitReturns": true,
    "useDefineForClassFields": false,
    "alwaysStrict": true,
    "allowUnreachableCode": false,
    "allowUnusedLabels": false,
    "downlevelIteration": false,
    "noEmitHelpers": false,
    "noLib": false,
    "noStrictGenericChecks": false,
    "noUnusedLocals": false,
    "noUnusedParameters": false,
    "esModuleInterop": true,
    "preserveConstEnums": false,
    "removeComments": false,
    "skipLibCheck": false,
    "checkJs": false,
    "allowJs": false,
    "declaration": true,
    "experimentalDecorators": false,
    "emitDecoratorMetadata": false,
    "target": "ES2017",
    "module": "ESNext"
  }
}

Playground Link: Provided

I think I'm experiencing this issue (using JS).
Something like this trivial example:
let kName = Symbol('name');

class Frog {
  /**
   * @param {string} name - Name of frog
   */
  constructor(name) {
    this[kFoo] = name;
  }

  get name() {
    return this[kName]; // Element implicitly has 'any' type because expression of type 'symbol' can't be used to index type 'Frog'
  }
}

A workaround is something horrid like:
  /** @type {string} */
  get name() {
    return Reflect.get(this, kRuleId);
  }

I think I'm experiencing this issue (using JS).
Something like this trivial example:
let kName = Symbol('name');

class Frog {
  /**
   * @param {string} name - Name of frog
   */
  constructor(name) {
    this[kFoo] = name; // Element implicitly has 'any' type because expression of type 'symbol' can't be used to index type 'Frog'
  }

  get name() {
    return this[kName]; // Element implicitly has 'any' type because expression of type 'symbol' can't be used to index type 'Frog'
  }
}

A workaround is something horrid like:
  /** @type {string} */
  get name() {
    return Reflect.get(this, kRuleId);
  }

try using kName or kFoo consistently since you use both, also use const for it so typescript knows it won't get reassigned so it can treat it as a unique symbol. Playground Link
const kFoo = Symbol.for('name');

class Frog {
  /**
   * @param {string} name - Name of frog
   */
  constructor(name) {
    this[kFoo] = name;
  }

  get name() {
    return this[kFoo];
  }
}

I think this suggestion is a specific case of #36230.  If we let constant property access narrow types then it would automatically extend to allow symbols for discrimination.

@tadhgmister Sorry, I was inconsistent in that example.  I've updated it to reflect the actual code.  It is a problem either way

@boneskull You are still experiencing a different problem, if the error says 'any' type because expression of type 'symbol' then it means typescript isn't detecting that you have a unique symbol.

use const for it so typescript knows it won't get reassigned so it can treat it as a unique symbol. Playground Link

This is the same issue with having let field = "fieldName" can't detect that x[field] is equivalent to x.fieldName because it is type string because it may change at runtime.  Using const fixes it for both strings and symbols.

This was fixed in https://github.com/microsoft/TypeScript/issues/36230


Added any support from css-what, so that the operator '*=' (includes/contains) is allowed.

I noticed that the any action from css-what was not present so when matching a[href]:not([href *= "javascript:" i]) or iframe[src*=domain.tdl] it would print out a warn of "Unknown CSS selector action" as the any operator was not implemented for the attributes in the parser.
Example:
var zeedDom = require("zeed-dom");

const dom = zeedDom.vdom("
Hello WorldTest
");

const elements = dom.querySelectorAll("a[href]:not([href *= \"javascript:\" i])");

The var elements will contain the  element but the expected result should be an empty array []
This PR adds support to the any attribute action to allow the above mention of selector to be used.

Great, thank you very much!


Task scheduler not working with WinGet

Brief description of your issue
When I try to set up a powershell script with WinGet in task scheduler it doesn't work and I get "Access denied". The script works if run normally. It also doesn't work if you skip the powershell script and try to run winget through task scheduler with cmd directly.

Steps to reproduce
For example write a powershell script that just says "winget install vim" and try to run it through task scheduler.
Or just try to run winget directly through task scheduler like this:

Expected behavior
For the program to download and install.

Actual behavior
Installation fails with "Access denied" popup if using script or "Installer failed with exit code: 2" if run directly.

The winget CLI is installed on a per-user basis. Is the account that you're running the scheduled job under the same as your regular user and is the job being run with the "Run with highest privileges" option?

The winget CLI is installed on a per-user basis. Is the account that you're running the scheduled job under the same as your regular user and is the job being run with the "Run with highest privileges" option?
See #548.

Yes it's set to run as the same user account and with highest privileges. When I run the script normally it works without a problem, it seems to have something to do with how winget interacts with task scheduler.

I just noticed the error 2 from Vim is the same as #500
Is this a duplicate?
Does the same thing happen with other packages when interacting with the task scheduler?

I just tried to create a new task for installing vim as described in repro steps. And it works fine. Does this issue still exist for you?


Avalonia UI support?

Hi,
I was wondering if Comet going/planned to be adapted to Avalonia UI or other .NET based UI frameworks?

@mantasdaskev take a look here https://github.com/AvaloniaUI/Avalonia.Markup.Declarative#mvu-pattern-implementation

@mantasdaskev take a look here https://github.com/AvaloniaUI/Avalonia.Markup.Declarative#mvu-pattern-implementation

Thank you. That might be exactly what I need 🤗


New build system for Web UI

use generator-gulp-angular by @swiip
remove old static file
generate optimised static file

Thanks @ldez :) Great!
Could you explain a bit more in the doc what are the entry point files and what is generated (you know, for front end noobs...) ?

Done, read and say me if a noobs can understands :wink:

:+1: thanks @ldez
LGTM

I wonder if we should store or not the generated stuff : I mean it could be a step of the build process.
I definitely would like to be able to change something without having node on my computer — maybe we should update the dev' Dockerfile to have these dependency in it as well.
But that's just a nit so it LGTM for me, just waiting for your opinion on that before merging :stuck_out_tongue_closed_eyes:.

As I'm going into vendoring soon, let's store everything into the repo!
But it would be nice to update the global build process as well. @ldez ?

I understand and I think about how do this.

@ldez cool :+1: We could merge as is and waiting for another PR, wdyt @emilevauge @ldez ? :wink:

Both are ok for me. @ldez, as you wish.

I did it !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Thanks a lot @ldez !
LGTM

LGTM 🐵


Consider zib-PulseRate as a vital signs profile?

In STU3 we considered the zib-PulseRate as a Vital Signs profile. The HeartRate and PulseRate are similar, but they differ in content. HL7 itself makes no distinction and there is no profile available for PulseRate.
There are a number of options:

We consider PulseRate as a vital signs profile and with this we deviate from the HL7 vital signs.

PulseRate becomes 'just' a profile based on resource observation.

My 2c: the intent of the Vital Signs specification in FHIR core is to model all vital signs Observations in a similar manner in order to gain maximum interoperability. This includes the listed vital sign observations for which FHIR core profiles exist, but also other vital sign observations -- it would be weird to consider it not to be a Vital Signs Observation just because there's no specific equivalent profile from FHIR core. Therefore I think it makes sense to model zib PulseRate on the Vital Signs pattern we created (if the HL7 Vital Signs profile would be suitable to model the zibs on, it would probably be a no-brainer to use it for zib PulseRate).


Newsletters: add #7 (2018-08-07)

Todo:

[ ] Dashboard items @moneyball

Includes a separate commit that adds some more link helpers to hopefully make both writing and reviewing this newsletter faster in the future.

Looks great Dave. ACK f379e223de7b4521e576d68e1e28cb6155579fc6.
Over to you, @moneyball . Please ping me when you're ready for my review.


WebDAV support?

[Enter steps to reproduce below:]

Use "protocol": "webdav"
I'd love to be able to access my WebDAV server with the plugin instead of using another client…

Atom Version: 1.10.2
Electron Version: 0.37.8
System: Mac OS X 10.12
Thrown From: Remote-FTP package, v0.8.9
Stack Trace
Uncaught No protocol found in connection credential. Please recreate .ftpconfig file from Packages -> Remote-FTP -> Create (S)FTP config file.
 And looking through WebDAV packages on npm it seems as though it would take a lot of work to add in support for this

Aaaand? 😆 Seriously, though, I'll live without it. Mostly.

Not sure it's something I'd be up for doing but you can always create a pr and we can pull it into the repo.


Introduce the packages management interface API

Master issue: #8676
Motivation
Implementation of the PIP-50.
This PR introduces package management APIs and storage APIs.
The related implement will in the next PR.
Modifications

Add package management APIs
Add package storage APIs
Introduce the package type, name, and metadata struct.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

The related implement will in the next PR.

@zymap Would you please open a master issue to track the whole work? so the community could know the plans and schedule.

@jiazhai Thanks for the reminder. I created a master issue #8676 for it.

/pulsarbot run-failure-checks

Sure, I'll check and fix it.

Fix it in https://github.com/apache/pulsar/pull/9972


It doesn't working on my TTGO T-Call at all

I tried this library for seamless AWS IoT connection, but it seems like not working at all, code is freezing at first Serial print command executed

Hi all, I've got the same situation. ESP TTGO Sim800L, it freezes at serial print "." because ppp.status() doesn't become true.
There was a thread on espressif arduino-esp32 github repo about ppp and ESP and among the comments this example was attached by the owner (https://github.com/espressif/arduino-esp32/issues/1858#issuecomment-870883111) and It works quite well.

After just a bit of testing I'd add it works 1 time out of 10 +-, ppp.connect() returns 1 in both cases.
When it works it breaks out of the ppp.status while in 4-5 seconds


Feat:Weather Info Integration for Destinations with GPS API Support

Describe the feature
We need to integrate a real-time weather information feature into the travel page, enhancing the user experience by allowing travelers to view weather updates for their current location or selected destinations. This feature will provide temperature, humidity, and general conditions (clear, cloudy, rainy, etc.), helping users make informed travel decisions.
This integration will be part of the frontend implementation using a third-party weather API  and must leverage the GPS API to provide real-time updates based on user location or selected destinations on the map.
Add ScreenShots
Not that I have anything currently.
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

Please note that Level 1 is temporary and can be changed during the review. In the meantime, please make sure to provide all the necessary details and context, so I should start my work.... or what...
@PriyaGhosal So the issue has been assigned to me?
Coz all the work has been done by the Bot so it's confusing plus the labels are also assigned by bot only?


chore: add dep to optimize-deps

Description
optimize-deps used @vitejs/plugin-vue that not included in package.json
Additional context

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

Don't think it's needed as yarn will auto link them to the workspace

@antfu Thanks for your reply, I thought it should be consistent with other packages (eg. vue). It is really unnecessary, I closed it.


Hitting Github API rate limit.

Hi, Thank you for releasing this library!
I am hitting the rate limit with the GitHub API and I would like to implement authenticated requests to fix the problem.
Here is the output I am seeing:
> Run<EMAIL_ADDRESS>> Installing AWS Copilot...
> Error: API rate limit exceeded for <IP_ADDRESS>. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)

The code which is causing the error is here:
https://github.com/ksivamuthu/aws-copilot-github-action/blob/3ce6a5f868b4aa637a9fc3744f42607be2930ed4/src/main.ts#L68-L71
In the GitHub Actions CI environment, there should be a GITHUB_TOKEN environment variable which can be used to make authenticated requests.
https://docs.github.com/en/actions/security-guides/automatic-token-authentication
I will open a PR shortly.

#158

@yanshiyason  Merged and released 0.0.2 release.


Load from Main Menu

Once there is a player save, a load button could show up on the main menu.

I also note there is no options on the main menu. I thought this was present before?

There was, but when we reworked the pause menu and added new options, it broke the old menu, so I removed that from the Main menu scene as it would otherwise break. Sorry about that!
I have a plan to redesign the main menu with working options and multiple save slots, will hopefully get to it in the next week.

Your new main menu is looking great!
The major thing I'll note is that it does not scale with resolution. It does fit on the smallest resolution I can select though, so I suppose this isn't necessarily an issue.
Do you have further plans for this?

Thanks! Yeah, I'm still tinkering with it a bit.
I don't think the current implementation of the options menu is ideal as it's now split up between two scenes which would make adding new options a hassle.
The way options are applied is not consistent between the main menu and the pause menu either, so that can cause issues like the one you mentioned.
I will probably create a single options scene again that can be used for both the pause and the main menu, with opening/closing it being used to apply settings, but will have to test this with some trial and error.

Okay, I pushed another small update that re-shuffles the menu structure a bit again in https://github.com/Phazorknight/Cogito/commit/b872a285b6336c777d3013edacafb868a6c6b6be
This now creates a single PackagedScene for the options menu which should make updates to it more streamlined and easier.
@ac-arcana , if this works for you, I'd consider the "load from main menu" issue closed. For the funkyness with the resolutions and window modes, I'll continue to update in #120 .

Yes, loading from the main menu is working an the options are all there. This issue is resolved


SessionOption disappeared with New-CsOnlineSession

Thanks for this login procedure.
Would it be possible to have a little more information on the options that disappeared ?
I mean with the New-CsOnlineSession we were able to provide SessionOption and others parameters.
How can we login with the v2.0 module if we need to use some SessionOption and/or OverrideAdminDomain ?
Thanks a lot in advance

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 09f27c0e-15db-920c-dee9-824bcab166cc
Version Independent ID: c0bd47ae-da8c-b466-4e05-5c97b055ee9b
Content: Move from Skype for Business Online Connector to the Teams PowerShell module - Microsoft Teams
Content Source: Teams/teams-powershell-move-from-sfbo.md
Service: msteams
GitHub Login: @pupara
Microsoft Alias: pupara

@Lerritier  Thank you for submitting feedback and contributing to the docs. We are currently investigating this.

@Lerritier thank you for reaching out and helping improve MS Docs. I see the article was recently updated. Please have a look and let me know if you have further questions.

Hello,
I am sorry but I don't understand. Are the modifications in the "Recommended content" ?
How can we manage the lost options ? In v1.1.6 I used the following to connect

Thanks a lot in advance

@pupara please could you assist here?

@Lerritier I see the article was updated recently. Please have a look and let me know if you're still having this issue.


Allow test frameworks to mock out XMLHttpRequest

instead of saving a reference to global.XMLHttpRequest / ActiveX,
return the reference each time http.request() is called
performance impact should be negligible
potential concerns about malicious injected scripts hijacking
XMLHttpRequest... considering jQuery initializes XHR() the same way,
it shouldn't be an issue.
normalized some semicolon usage
fixes https://github.com/substack/http-browserify/issues/68

@substack I need this, is there any chance that this could get merged in?


Improved doc and setup

As a follow up to our discussion on #11 here is a pull request that:

updates the README doc
add docstrings aligned with the update documentation
ensure code comment headers are consistent and present

It may not be 100% correct yet, but I think this is a decent first pass.
@WojciechMula your feedback is welcomed!

Note: the formatted display of the docstrings when calling help() may not be there yet!

WOW! Great work, thanks a lot!

Note: the formatted display of the docstrings when calling help() may not be there yet!

Are you going to upgrade also this?

@WojciechMula you wrote:

Are you going to upgrade also this?

Yes I will tackle this tomorrow. Doing proper multiline docstrings in C strings requires a bit of fiddling with line returns left and right. I will fix this the hard way: visually reviewing all docs when calling help() on the corresponding object.
Thank you for pulling this in so quickly BTW!

And I will submit a new PR for the formatting.

Great, then we will tag repo.


IT Systems Support

It would be nice if we could "pause" your demo animations so beginners could see what is being selected.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3a8c4146-101d-7ba2-7ae0-d7138b743154
Version Independent ID: 1f752762-0809-a2fb-4a03-b490547ee7f1
Content: Customize a SharePoint list form - Power Apps
Content Source: powerapps-docs/maker/canvas-apps/customize-list-form.md
Service: powerapps
GitHub Login: @tapanm-MSFT
Microsoft Alias: tapanm

Thank you for the feedback. Though GIFs can't be paused, the ones on the article are only several seconds long for ease of consumption. And the GIFs can be viewed again to repeat the steps. Will consider more screenshots in addition to GIFs and possibly embedded videos that can be paused. Appreciate your suggestions.


Converting from draft causes CI to rerun checks

When converting a PR away from a draft it causes all the CI checks to rerun.  My flow is to get everything green on a draft PR before converting it to a PR and assigning it to someone for review.  The causes everything to rerun which is wasteful.

@christopherfujino has this been resolved by your change?

Yep, fixed by https://github.com/flutter/cocoon/pull/1895


Update home page CTA

Update the homepage CTA to point towards getting started with Flux guide.
Signed-off-by: Piaras Hoban<EMAIL_ADDRESS>

LGTM


Add Linux support

A way to install and use Litr for common Linux distributions needs to be defined. Also what distributions to support.

Publishing could be done via: https://snapcraft.io/first-snap/c


feat: add authentication and webpack local proxy

Jira ticket:  https://issues.redhat.com/browse/HAC-5812

/test

/ok-to-test

@yftacherzog @avi-biton after we get this one merged I'll update konflux-ci to use the new image.

@sahil143 thanks for working on it.
Do we need any unittest for this change?

@yftacherzog the new image will be integrated in the new-ui branch since it still doesn't have all the functionality.

@yftacherzog the new image will be integrated in the new-ui branch since it still doesn't have all the functionality.

@sahil143 can you edit the PR so it's directed to the new-ui branch instead of main?

@yftacherzog the new image will be integrated in the new-ui branch since it still doesn't have all the functionality.

@sahil143 can you edit the PR so it's directed to the new-ui branch instead of main?

There isn't any new-ui branch in this repo.

@yftacherzog the new image will be integrated in the new-ui branch since it still doesn't have all the functionality.

@sahil143 can you edit the PR so it's directed to the new-ui branch instead of main?

There isn't any new-ui branch in this repo.

My apologies. I was sure I was looking at konflux-ci/konflux-ci  🤦

@sahil143 thanks for working on it. Do we need any unittest for this change?

Not right now. Some implementations will change. I will be adding unit tests in the follow-up PR.