App seems to be blocking (deadlock) resulting in ping timeouts

We are seeing quite a lot of ping timeouts to the app on the latest version on the coordinator 1.2.3 (1937). It appears there is some blocking task running on the phone that is responsible for those timeouts.
Testing the latest version on regtest 1.2.3 (1937) funding the wallet, opening or closing a position were randomly failing or taking a very long time. e.g. we observed that processing a SubChannelCloseFinalize took about 2 minutes on the phone for no apparent reason. (No logs in between processing SubChannelCloseConfirm message and sending Finalize message)
We presume the ping timeout is just one symptom of that issue.
https://itchysats.grafana.net/explore?orgId=1&panes={"U8i":{"datasource":"grafanacloud-logs","queries":[{"refId":"A","datasource":{"type":"loki","uid":"grafanacloud-logs"},"editorMode":"builder","expr":"{container%3D\"coordinator\", setup%3D\"get10101-regtest\"} |%3D `ping timeout` | json","queryType":"range"}],"range":{"from":"now-1h","to":"now"}}}&schemaVersion=1

Testing the app further it appears my app is constantly breaking eventually with the following error (Channel is being force-closed)
Closing channel 37c4107e553badff96c8ef74dd63f553bc968332e2318f0a72e73019aef1bfea due to close-required error: Invalid commitment tx signature from peer

Below are my app logs of independent runs from a clean state on my phone. Version 1.2.3 Build (1937)

https://nextcloud.holzeis.me/s/s8sEwwebc7joHPJ
https://nextcloud.holzeis.me/s/Nxa8iZGEKjHD7JE

I'll see whether I can reproduce it on a desktop build (it would do wonders for debuggability to have it on local machine).

Some logs from my phone:
run 1:
| 2023-08-29 16:55:34.894 | LogLevel.DEBUG | New message from orderbook msg: {"Match":{"order_id":"8d91af60-5f28-41be-a017-4f79338031f6","expiry_timestamp":[2023,248,0,0,0,0,0,0,0],"oracle_pk":"16f88cf7d21e6c0f46bcbc983a4e3b19726c6c98858cc31c83551a88fde171c0","matches":[{"order_id":"c30db659-6907-4a23-bea0-2e8be570b5d4","quantity":10.0,"pubkey":"0222eccb3303dc5e8a13be107594716a11bfa9307f79e09ea769f06ead28e5de8d","execution_price":27273.0}]}}
| 2023-08-29 16:55:34.895 | LogLevel.INFO | Received match from orderbook order_id: 8d91af60-5f28-41be-a017-4f79338031f6
| 2023-08-29 16:55:34.896 | LogLevel.DEBUG | Filling order with id: 8d91af60-5f28-41be-a017-4f79338031f6 filled: FilledWith { order_id: 8d91af60-5f28-41be-a017-4f79338031f6, expiry_timestamp: 2023-09-05 0:00:00.0 +00:00:00, oracle_pk: XOnlyPublicKey(c071e1fd881a55831cc38c85986c6c72193b4e3a98bcbc460f6c1ed2f78cf8167458a18010faf718756c69de33ee9e38a0d3f0ad48befa58e23a4b1f843e08be), matches: [Match { order_id: c30db659-6907-4a23-bea0-2e8be570b5d4, quantity: 10, pubkey: PublicKey(8ddee528ad6ef069a79ee0797f30a9bf116a71947510be138a5edc0333cbec22ccd8aac6aaec56536866de75029639822a1dc33a41bb8598120b95ea018108e4), execution_price: 27273 }] },order: Order { id: 8d91af60-5f28-41be-a017-4f79338031f6, leverage: 1.0, quantity: 10.0, contract_symbol: BtcUsd, direction: Long, order_type: Market, state: Initial, creation_timestamp: 2023-08-29 14:55:33.0 +00:00:00, order_expiry_timestamp: 2023-08-29 14:56:33.0 +00:00:00 }
| 2023-08-29 16:55:34.897 | LogLevel.INFO | Updated order state new_state: Filling,order_id: 8d91af60-5f28-41be-a017-4f79338031f6
| 2023-08-29 16:55:34.897 | LogLevel.DEBUG | Publishing an internal event event: OrderUpdateNotification
| 2023-08-29 16:55:34.898 | LogLevel.DEBUG | Forwarding event to flutter event: OrderUpdateNotification
| 2023-08-29 16:55:35.113 | LogLevel.DEBUG | Ignoring latest state update candidate: Open,current_state: Filling
| 2023-08-29 16:55:35.114 | LogLevel.DEBUG | Publishing an internal event event: OrderUpdateNotification
| 2023-08-29 16:55:35.115 | LogLevel.DEBUG | Forwarding event to flutter event: OrderUpdateNotification
| 2023-08-29 16:55:35.117 | LogLevel.DEBUG | Publishing an internal event event: PositionUpdateNotification
| 2023-08-29 16:55:35.118 | LogLevel.DEBUG | Forwarding event to flutter event: PositionUpdateNotification
| 2023-08-29 16:55:35.438 | LogLevel.INFO | Tracking channel status
| 2023-08-29 16:55:35.439 | LogLevel.DEBUG | Getting all non-pending channels
| 2023-08-29 16:55:35.440 | LogLevel.DEBUG | Got all non-pending channels channels: [Channel { user_channel_id: UserChannelId(14d35fb0-8186-4066-b5cf-a8934a9815bf), channel_id: Some([208, 97, 128, 123, 205, 106, 240, 56, 73, 96, 44, 83, 150, 62, 80, 176, 9, 34, 246, 234, 102, 137, 15, 198, 57, 25, 82, 40, 0, 220, 21, 147]), fake_scid: None, inbound: 7899000, outbound: 7218000, funding_txid: Some(9215dc0028521939c60f8966eaf62209b0503e96532c604938f06acd7b8061d0), channel_state: Open, counterparty: PublicKey(025837416dcd1520de64858477381e5f7c127899489284b7cf9565ae4d927b503380c813bff475d8fff4ba07f2502e5c14db46571898340e2a37d6f2bb1f4d1a), created_at: 2023-08-22 10:41:15.0 +00:00:00, updated_at: 2023-08-29 14:55:09.0 +00:00:00 }]
| 2023-08-29 16:55:35.441 | LogLevel.INFO | Channel status udpate status: LnDlcOpen
| 2023-08-29 16:55:35.442 | LogLevel.DEBUG | Publishing an internal event event: ChannelStatusUpdate
| 2023-08-29 16:55:35.443 | LogLevel.DEBUG | Forwarding event to flutter event: ChannelStatusUpdate
| 2023-08-29 16:55:35.443 | LogLevel.DEBUG | Received channel status update: Event.channelStatusUpdate(field0: ChannelStatus.LnDlcOpen)
| 2023-08-29 16:55:35.601 | LogLevel.INFO | Sent trade request to coordinator successfully
| 2023-08-29 16:55:35.604 | LogLevel.INFO | Registered order-matching fee invoice to be paid later payment_hash: e9b171a939b67e71aa481f15bcc46d060375a6647b50a054171036cc68ffe5fa
| 2023-08-29 16:55:35.902 | LogLevel.INFO | Processing message from: 03507b924dae6595cfb78492489978127c5f1e3877848564de2015cd6d41375802,kind: SubChannelCloseOffer
| 2023-08-29 16:55:35.918 | LogLevel.INFO | Accepting DLC channel collaborative settlement channel_id: d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:35.919 | LogLevel.DEBUG | lightning::chain::channelmonitor: Getting signed latest holder commitment transaction!
| 2023-08-29 16:55:35.920 | LogLevel.TRACE | lightning::ln::channel: Updating HTLC state for a newly-sent commitment_signed...
| 2023-08-29 16:55:35.921 | LogLevel.TRACE | lightning::ln::channel: Building commitment transaction number<PHONE_NUMBER>10635 (really 20 xor<PHONE_NUMBER>85799) for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 for remote, generated by us with fee 253...
| 2023-08-29 16:55:35.922 | LogLevel.TRACE | lightning::ln::channel:    ...including to_remote output with value 52018
| 2023-08-29 16:55:35.922 | LogLevel.TRACE | lightning::ln::channel:    ...including to_local output with value 47799
| 2023-08-29 16:55:35.923 | LogLevel.TRACE | lightning::chain::chainmonitor: Updating ChannelMonitor for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:35.923 | LogLevel.INFO | lightning::chain::channelmonitor: Applying update to monitor d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593, bringing update_id from 50 to 51 with 1 changes.
| 2023-08-29 16:55:35.924 | LogLevel.TRACE | lightning::chain::channelmonitor: Updating ChannelMonitor with latest counterparty commitment transaction info
| 2023-08-29 16:55:35.924 | LogLevel.TRACE | lightning::chain::channelmonitor: Tracking new counterparty commitment transaction with txid fe31f40bd8752b590c3361e09a0bf9ef8ad940beed577cc335a504ef9455aa9b at commitment number<PHONE_NUMBER>10635 with 0 HTLC outputs
| 2023-08-29 16:55:35.926 | LogLevel.DEBUG | lightning::chain::chainmonitor: Persistence of ChannelMonitorUpdate for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 completed
| 2023-08-29 16:55:35.926 | LogLevel.TRACE | lightning::ln::channel: Creating an announcement_signatures message for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:35.927 | LogLevel.TRACE | lightning::ln::channel: Ignore : Channel is not available for public announcements
| 2023-08-29 16:55:35.927 | LogLevel.TRACE | lightning::ln::channel: Regenerated latest commitment update in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 with 0 update_adds, 0 update_fulfills, 0 update_fails, and 0 update_fail_malformeds
| 2023-08-29 16:55:35.928 | LogLevel.TRACE | lightning::ln::channel: Building commitment transaction number<PHONE_NUMBER>10635 (really 20 xor<PHONE_NUMBER>85799) for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 for remote, generated by us with fee 253...
| 2023-08-29 16:55:35.928 | LogLevel.TRACE | lightning::ln::channel:    ...including to_remote output with value 52018
| 2023-08-29 16:55:35.928 | LogLevel.TRACE | lightning::ln::channel:    ...including to_local output with value 47799
| 2023-08-29 16:55:35.929 | LogLevel.TRACE | lightning::ln::channel: Signed remote commitment tx<PHONE_NUMBER>d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc15920100000000fb22ca8002b7ba0000000000001600143313c9db551d73c0cb7dc0806dc36da885643e0632cb000000000000220020b383afb34cf1d44c60685d6bdfa64d92383f8eb78c9ec5c6e5a8cdd205bb2864b38b3820 (txid fe31f40bd8752b590c3361e09a0bf9ef8ad940beed577cc335a504ef9455aa9b) with redeemscript<PHONE_NUMBER>60df4c7503689df798b9f9f5df6f1c7f216a79fd5b186830a7122415ac413b210378e4e35acf7733613ade318d70266a278142bbaf069c4388bb394e3eaaf519bb52ae with value 100000 -> 3c145ea4952f431c2cbffdb15f30140850f8797edb9f7c302d856b72e3f801f7069711bd226ce3c6a3061fb04e028cae5647662abdadd561172c77fe0a73aa76 in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:35.929 | LogLevel.DEBUG | lightning::ln::channel: Restored monitor updating in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 resulting in a commitment update and no RAA, with RAA first
| 2023-08-29 16:55:35.929 | LogLevel.TRACE | lightning_background_processor: Persisting ChannelManager...
| 2023-08-29 16:55:35.935 | LogLevel.TRACE | lightning_background_processor: Done persisting ChannelManager.
| 2023-08-29 16:55:36.943 | LogLevel.INFO | Processing message from: 03507b924dae6595cfb78492489978127c5f1e3877848564de2015cd6d41375802,kind: SubChannelCloseConfirm
| 2023-08-29 16:55:36.954 | LogLevel.TRACE | lightning::ln::channel: Updating HTLCs on receipt of RAA in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593...
| 2023-08-29 16:55:36.954 | LogLevel.DEBUG | lightning::ln::channel: Received a valid revoke_and_ack for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 with no reply necessary.
| 2023-08-29 16:55:36.955 | LogLevel.TRACE | lightning::chain::chainmonitor: Updating ChannelMonitor for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:36.955 | LogLevel.INFO | lightning::chain::channelmonitor: Applying update to monitor d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593, bringing update_id from 51 to 52 with 1 changes.
| 2023-08-29 16:55:36.956 | LogLevel.TRACE | lightning::chain::channelmonitor: Updating ChannelMonitor with commitment secret
| 2023-08-29 16:55:36.963 | LogLevel.DEBUG | lightning::chain::chainmonitor: Persistence of ChannelMonitorUpdate for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 completed
| 2023-08-29 16:55:36.963 | LogLevel.TRACE | lightning::ln::channel: Creating an announcement_signatures message for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:36.964 | LogLevel.TRACE | lightning::ln::channel: Ignore : Channel is not available for public announcements
| 2023-08-29 16:55:36.964 | LogLevel.DEBUG | lightning::ln::channel: Restored monitor updating in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 resulting in no commitment update and no RAA, with RAA first
| 2023-08-29 16:55:36.965 | LogLevel.TRACE | lightning::ln::channel: Building commitment transaction number<PHONE_NUMBER>10635 (really 20 xor<PHONE_NUMBER>85799) for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 for us, generated by remote with fee 253...
| 2023-08-29 16:55:36.965 | LogLevel.TRACE | lightning::ln::channel:    ...including to_local output with value 47799
| 2023-08-29 16:55:36.966 | LogLevel.TRACE | lightning::ln::channel:    ...including to_remote output with value 52018
| 2023-08-29 16:55:36.966 | LogLevel.TRACE | lightning::ln::channel: Checking commitment tx signature 7d205d392dfa73f3e3e24610ff60c52cfc8180dbf84f4734f74e59223bd25a92198e894ba8d0d88b700eb5a19f050fe11c59d13ec3d44e302a2fcbf5ca381fa5 by key 0378e4e35acf7733613ade318d70266a278142bbaf069c4388bb394e3eaaf519bb against tx<PHONE_NUMBER>d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc15920100000000fb22ca8002b7ba000000000000220020f7b95c1a644599f56a649c7120b9cdba9cd842713aeb5ffc935cd4e2f03dbbc232cb0000000000001600149ff4e7e91768303f8d73101d55ac408d24bfe877b38b3820 (sighash a49f3daf7a7fbb0a0744ca90bf37edd8565e8ef8fd83f8a75f7c71de17753b02) with redeemscript<PHONE_NUMBER>60df4c7503689df798b9f9f5df6f1c7f216a79fd5b186830a7122415ac413b210378e4e35acf7733613ade318d70266a278142bbaf069c4388bb394e3eaaf519bb52ae in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:36.966 | LogLevel.DEBUG | lightning::ln::channel: Received valid commitment_signed from peer in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593, updating HTLC state and responding with a revoke_and_ack.
| 2023-08-29 16:55:36.967 | LogLevel.TRACE | lightning::chain::chainmonitor: Updating ChannelMonitor for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:36.967 | LogLevel.INFO | lightning::chain::channelmonitor: Applying update to monitor d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593, bringing update_id from 52 to 53 with 1 changes.
| 2023-08-29 16:55:36.968 | LogLevel.TRACE | lightning::chain::channelmonitor: Updating ChannelMonitor with latest holder commitment transaction info
| 2023-08-29 16:55:36.969 | LogLevel.DEBUG | lightning::chain::chainmonitor: Persistence of ChannelMonitorUpdate for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 completed
| 2023-08-29 16:55:36.969 | LogLevel.TRACE | lightning::ln::channel: Creating an announcement_signatures message for channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593
| 2023-08-29 16:55:36.970 | LogLevel.TRACE | lightning::ln::channel: Ignore : Channel is not available for public announcements
| 2023-08-29 16:55:36.970 | LogLevel.DEBUG | lightning::ln::channel: Restored monitor updating in channel d061807bcd6af03849602c53963e50b00922f6ea66890fc63919522800dc1593 resulting in no commitment update and an RAA, with commitment first
| 2023-08-29 16:56:04.816 | LogLevel.INFO | Finished on-chain sync duration: 12533129
| 2023-08-29 16:57:15.384 | LogLevel.INFO | Sending message kind: SubChannelCloseFinalize,to: 03507b924dae6595cfb78492489978127c5f1e3877848564de2015cd6d41375802
| 2023-08-29 16:57:15.386 | LogLevel.TRACE | lightning_background_processor: Persisting ChannelManager...
| 2023-08-29 16:57:15.387 | LogLevel.INFO | Updated order state new_state: Filled,order_id: 8d91af60-5f28-41be-a017-4f79338031f6
| 2023-08-29 16:57:15.388 | LogLevel.DEBUG | Publishing an internal event event: OrderUpdateNotification
| 2023-08-29 16:57:15.389 | LogLevel.DEBUG | Forwarding event to flutter event: OrderUpdateNotification
| 2023-08-29 16:57:15.390 | LogLevel.DEBUG | Removing position after DLC channel closure filled_order: Order { id: 8d91af60-5f28-41be-a017-4f79338031f6, leverage: 1.0, quantity: 10.0, contract_symbol: BtcUsd, direction: Long, order_type: Market, state: Filled { execution_price: 27273.0 }, creation_timestamp: 2023-08-29 14:55:33.0 +00:00:00, order_expiry_timestamp: 2023-08-29 14:56:33.0 +00:00:00 }

You can see that between sending SubChannelCloseFinalize there was a 1m10s period where nothing was happening.
It appears there was a ping timeout at the coordinator but it's not clear what the phone was doing in this time window.
run 2:
| 2023-08-29 17:20:54.405 | LogLevel.ERROR | Failed to execute trade for order Some(3d914523-30d2-4724-aca0-6662bf1e6f1a): TimedOut: Order was not matched within Duration { seconds: 300, nanoseconds: 0 }
| 2023-08-29 17:20:54.407 | LogLevel.INFO | Updated order state new_state: Failed,order_id: 3d914523-30d2-4724-aca0-6662bf1e6f1a

@holzeis how did you run the app? was it the 10101-test or self-deployed with flutter run? something that's completely unrelated, but jumped at me in your logs was the line:
| 2023-08-29 20:04:24.719 | LogLevel.INFO | Oracle endpoint: http://<IP_ADDRESS>:8081                     ┤
this is likely not correct!

A bunch of findings:

no luck reproducing on desktop
locally deployed iOS build (with flutter run) reproduced the problem without having a noticeable lack in the logs

I have created a branch where I added tokio metrics to see whether tokio is congested. I could see from measuruments before and after the force-close that the longest running task was 2s and then 6s. are these lengths enough to trigger such misbehaviour? 🤔
I added my file from my mobile, the relevant part is around 2023-08-29 17:24:58.800:
2023-08-29_182644.log
Of course we cannot rule out a deadlock on dedicated thread, I haven't got that far.

Closing for now, reopen if the issue reappears.

Reopening, as it just happened to me on the latest build 1.2.3 (1965) that the app got stuck (see logs). This time the attempt to paying the JIT channel opening fees have been triggered after the channel has been updated.
https://nextcloud.holzeis.me/s/aRtN9LBDREBfHwL
What have I done?
I constantly opened a channel and closed it again. After the 8 or 9th attempt I got the app in a state where it wasn't responding anymore (resp. hanging).

I constantly opened a channel and closed it again

Do you really mean opening and closing a channel? Or do you mean opening closing a sub-channel / position

I constantly opened a channel and closed it again

Do you really mean opening and closing a channel? Or do you mean opening closing a sub-channel / position

I really mean opening and closing a lightning channel. rust-dlc is not involved at all.

I am removing this ticket from the current iteration as the described scenario is not as critical anymore. Also this may get fixed with upgrading ldk to 0.1.116. Let's revisit this bug afterwards again.


Add Form Component - Text Input

In the beginning, we discuss the serval Text Input of types below:

Basic text input
#119
Text area  (@cwpeng : Let the corner icon to browser set of default.)
#120
Multi-lined
[phase2] Prefix and suffix text
[phase2] Multi-tagged (Tagged Input)


add sucky/shameless chromium histogram knock-off

I'm generally worried about the cost of locking in metrics libraries and I'd like low-level code to be free to record high-frequency events without worrying about drain on perf. For instance, the next patch here is the NBS ChunkStore exposing a Stats member which surfaces a bunch of low-level metrics as Histograms
My idea is that these histograms can be rolled up and used as input to more full-featured metrics abstractions when necessary.
Also, having a basic infrastructure in place, allows for low-activation-energy reporting without dealing with the stack of more sophisticated infrastructure which may need to be operating across larger scale work
cc @aboodman @ehalpern

LGTM w/comment about comments

I see. Building a lock-free collector makes good sense, especially for hot paths.
But I'm not sure I understand your suggestion about tooling for instrumenting more of the the code and exposing the metrics via a dashboard.
There are 3 components that we discussed:

A system/api for metrics collection (like go-metrics)
Remotely accessible metrics storage  (like influx-db)
Dashboard  (like grafana)

This patch provides a low level primitive for metrics collection. It does not provide a simple way to report metrics (associated with a name and type) or anything above. Are you suggesting that we start here and not worry about the rest?
If so, I'd like to understand your concerns more about this kind of stack being a burden rather than a help. As I see it, this is very similar to logging. The decision to log in the app doesn't tie you into an aggregation and indexing infrastructure but having that infrastructure makes the logs a lot more useful.
Similarly, the decision to instrument the code for perf measurement doesn't have to be invasive and is orthogonal to the infrastructure for aggregating stats and showing exploring them in a dashboard.
I don't want to waste time on this if there's disagreement on the goals, and if so, I'm not sure how to proceed on preparing the appropriate instrumentation and tooling for running servers with live users.
@rafael-atticlabs @aboodman

Like I said yesterday, I'm a bit concerned about putting in place too much complexity & infrastructure, but I'm deferring to your judgement here.
I didn't mean to suggest that we don't do 1, 2 or 3. The intent here is that there's a way to easily collect low-level metrics without being a drag on performance. I'm kind of expecting that some code will be instrumented to pass some of these metrics as a Sum to go metrics.
The comment about low-activation energy was more that there's kind of a poor mans way to look at aggregated stats even if just locally for development, without needing to pipe it through the full stack of 1, 2 & 3.

Great. Thanks for the clarifications.


Fix dispatching to traverse method

This makes R.traverse dispatch to traverse if it's available and fantasy-land/traverse is not, as noted in issue #3026.

I added some tests to ensure the dispatch methods get used when appropriate.

I believe we can update this function to use the _dispatchable decorator:
https://github.com/ramda/ramda/blob/9aa12b4db06855e6bd55a498479d666dd973e31a/source/internal/_dispatchable.js

Sure, that seems reasonable. I'll need a little guidance, though: how am I to handle the transducer case? The docs do not suggest to me that traverse can be used as a transducer, so should it fail if it's given a transformer?

@Bradcomp will you please provide the additional information I requested in my previous comment, or unblock this PR?
I grasp that for someone who does understand it, _dispatchable is a much cleaner implementation. But to me, it's inscrutable, so I feel deterred from contributing by having to figure out how it works.
But as far as I know, your suggestion does not change the behavior at all. And it introduces the added

@Bradcomp, I've given your suggestion a go, and with some thought, I think I've changed my mind about using _dispatch here. I would argue that using _dispatch is, in fact, out of the scope of this particular PR.
There aren't any instances I could find of _dispatchable being used to implement functions that cannot be used as transducers. So no established convention exists that I can follow. In fact, to use _dispatchable for a function that has no documented use as a transducer is contrary to the existing conventions of this library.
Given this, if I were to refactor to using _dispatchable, I would have to figure out what the "right" value to use for the transducer argument of _dispatchable is. Should it be a function? Or undefined? Or null? Or something else? If it should be a function, what should the function do? Should it be a runtime error? If so, should the error be thrown, or should it be returned? What should the error message be? If it should not be an explicit error, should it return undefined? Or null? Or the passed in transformer, unaltered? Something else?
This PR was opened because there was a missing dispatch case in traverse. Not because traverse needed a refactor. Perhaps it does need a refactor. But this is supposed to be a bug fix, not a refactor, is it not? I'm not trying to be snarky, I mean this sincerely, and I apologize if I'm coming across that way.
Furthermore, I'm not convinced there is a substantive advantage to using _dispatchable, anyway. It is added complexity: now a potential contributor has to figure out what the function does, and they have to be careful about the transducer argument even though traverse isn't one. Which seems like a potential footgun _dispatchable also seems to add to the call stack at runtime, since it appears to not get optimized away in the build? The benefit seems to be that it unifies the codebase toward one cleaner, more consistent style, but given there are more functions that don't use _dispatchable than do, I'm not sure if this PR really achieves that.
It's been a month since this PR was passing all checks, including test cases I provided that addressed the missing functionality that prompted me to open this issue and #3026. As far as I know, @Bradcomp, your suggestion does not change the functionality, isn't that correct? It proposes a refactor, which, on its face, seems perfectly reasonable. But once you dig a little deeper, it turns out to be a meaningfully more involved undertaking. No precedent exists for what you are describing, so a new convention has to be established, albeit a small one.
As such, in my opinion, I think it would be more appropriate for this PR to comply with the existing convention of only using _dispatchable with transducers. If the maintainers decide it would be better to do an overhaul and use _dispatchable for everything, transducer or not, that's fine. But that's out of scope here. I just wanted to fix a small, niggling issue that was bothering me and maybe others, and has not yet been fixed for reasons unrelated to the extensional functionality of the proposed fix.
So with due respect to @Bradcomp who suggested it, and @CrossEye who :+1: it, I do not think it makes sense to refactor traverse to use _dispatchable in this PR. I appreciate the suggestion, and would happily comply if it made sense in the context of the existing conventions of the codebase. However, I have not seen evidence to support that. You are welcome to convince me otherwise. But until such time as you have done so, I respectfully decline, and request that this PR be merged in its current form, if there are no other concerns to address.

Oh man, I did not mean to close this. I was rebasing onto the latest changes in Ramda's master branch.

Great! Thanks, guys!


HBASE-24332: TestJMXListener.setupBeforeClass can fail due to not get…

…ting a random port.

I pushed this early, have not cleaned up checkstyle and other cleanups yet, but just to show contrasting approach with HBASE-24331

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
4m 45s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2 Compile Tests _

+0 :ok:
mvndep
0m 16s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
3m 34s
branch-2 passed

+1 :green_heart:
checkstyle
1m 47s
branch-2 passed

-1 :x:
spotbugs
2m 30s
hbase-common in branch-2 failed.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m 19s
the patch passed

-0 :warning:
checkstyle
0m 13s
hbase-http: The patch generated 1 new + 13 unchanged - 0 fixed = 14 total (was 13)

-0 :warning:
checkstyle
1m  8s
hbase-server: The patch generated 1 new + 218 unchanged - 1 fixed = 219 total (was 219)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
11m 51s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
3m 53s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 36s
The patch does not generate ASF License warnings.

45m  6s

Subsystem
Report/Notes

Docker
Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1659

JIRA Issue
HBASE-24332

Optional Tests
dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle

uname
Linux 46691fcaaa6b 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / 5dc10dbba5

spotbugs
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-general-check/output/branch-spotbugs-hbase-common.txt

checkstyle
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-http.txt

checkstyle
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-general-check/output/diff-checkstyle-hbase-server.txt

Max. process+thread count
94 (vs. ulimit of 12500)

modules
C: hbase-common hbase-http hbase-server U: .

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
9m 47s
Docker mode activated.

-0 :warning:
yetus
0m  6s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
5m  4s
branch-2 passed

+1 :green_heart:
compile
2m  9s
branch-2 passed

+1 :green_heart:
shadedjars
6m 15s
branch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 18s
hbase-common in branch-2 failed.

-0 :warning:
javadoc
0m 22s
hbase-http in branch-2 failed.

-0 :warning:
javadoc
0m 43s
hbase-server in branch-2 failed.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 18s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
4m 41s
the patch passed

+1 :green_heart:
compile
2m  1s
the patch passed

+1 :green_heart:
javac
2m  1s
the patch passed

+1 :green_heart:
shadedjars
6m 15s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 17s
hbase-common in the patch failed.

-0 :warning:
javadoc
0m 18s
hbase-http in the patch failed.

-0 :warning:
javadoc
0m 52s
hbase-server in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
2m 20s
hbase-common in the patch passed.

+1 :green_heart:
unit
1m  2s
hbase-http in the patch passed.

-1 :x:
unit
211m 22s
hbase-server in the patch failed.

256m 49s

Subsystem
Report/Notes

Docker
Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1659

JIRA Issue
HBASE-24332

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 5c10d3baf882 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / 5dc10dbba5

Default Java
2020-01-14

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-common.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-http.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-common.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-http.txt

javadoc
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt

unit
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/testReport/

Max. process+thread count
2534 (vs. ulimit of 12500)

modules
C: hbase-common hbase-http hbase-server U: .

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
9m 47s
Docker mode activated.

-0 :warning:
yetus
0m  6s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
4m 14s
branch-2 passed

+1 :green_heart:
compile
1m 46s
branch-2 passed

+1 :green_heart:
shadedjars
5m  7s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
1m 15s
branch-2 passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 14s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
3m 53s
the patch passed

+1 :green_heart:
compile
1m 45s
the patch passed

+1 :green_heart:
javac
1m 45s
the patch passed

+1 :green_heart:
shadedjars
5m  7s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
1m 12s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
1m 37s
hbase-common in the patch passed.

+1 :green_heart:
unit
1m  9s
hbase-http in the patch passed.

-1 :x:
unit
225m  1s
hbase-server in the patch failed.

264m 50s

Subsystem
Report/Notes

Docker
Client=19.03.8 Server=19.03.8 base: https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/1659

JIRA Issue
HBASE-24332

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 49b4ff0293a6 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / 5dc10dbba5

Default Java
1.8.0_232

unit
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/artifact/yetus-jdk8-hadoop2-check/output/patch-unit-hbase-server.txt

Test Results
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/testReport/

Max. process+thread count
2413 (vs. ulimit of 12500)

modules
C: hbase-common hbase-http hbase-server U: .

Console output
https://builds.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-1659/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

JIRA is resolved. Resolving this PR.  Would be good to get the HttpServerFunctionalTest change in, in another PR.


Add detail to git install instructions in README

When setting up I didn't realize I needed to recursively init the submodule.
Not doing so results in an error like so:
CMake Error at modules/clap-juce-extensions/CMakeLists.txt:48 (add_subdirectory):
  The source directory

    /Users/sudara/projects/Meter/modules/clap-juce-extensions/clap-libs/clap

  does not contain a CMakeLists.txt file.

I figured adding that detail might help someone else.
Yay clap!

Oh thanks!


feat: implement gateway client

This change is

Codecov Report
Attention: Patch coverage is 0% with 16 lines in your changes are missing coverage. Please review.

Project coverage is 49.64%. Comparing base (e2136d9) to head (9776c2b).
Report is 1 commits behind head on ayelet/mempool/create_external_invoke_tx.

Files
Patch %
Lines

crates/gateway/src/gateway_client.rs
0.00%
16 Missing :warning:

Additional details and impacted files
@@                             Coverage Diff                              @@
##           ayelet/mempool/create_external_invoke_tx     #143      +/-   ##
============================================================================
- Coverage                                     50.59%   49.64%   -0.95%
============================================================================
  Files                                            21       22       +1
  Lines                                           840      856      +16
  Branches                                        840      856      +16
============================================================================
  Hits                                            425      425
- Misses                                          394      410      +16
  Partials                                         21       21

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


Add method to remove entity indices from pool

Currently it's just possible to call
pool.DeactivateEntityIndices()
which only deactivates them. There should also be a
pool.RemoveEntityIndices()

If you ever call pool.ClearGroups() all entity indices not working anymore, so we need a way to reactivate / re-add them


Renames 'noBabel' config option to a more descriptive 'babelIgnore'

noBabel sounds like an option requiring a boolean, I'm proposing babelIgnore as a more descriptive option name.

Thanks! This is way better semantically.


chore(scaffolder-backend-module-gitlab): Upgrade to gitbeaker ^41.2.0

Hey, I just made a Pull Request!
Upgrade gitbeaker to ^41.2.0 (major version) in scaffolder-backend-module-gitlab.
First split of https://github.com/backstage/backstage/pull/27360 as requested.
:heavy_check_mark: Checklist

[X] A changeset describing the change and affected packages. (more info)
[X] Added or updated documentation
[X] Tests for new functionality and regression tests for bug fixes
[X] Screenshots attached (for UI changes)
[X] All your commits have a Signed-off-by line in the message. (more info)

do you know if this update would fix the error messages from GitLab (as I reported in #27600)
For example when trying to create a branch via the API, if there are branch name rules configured, the error message is added to a description field instead of the error's message

Hi @CptnFizzbin
I haven't tried it, I'm not sure. In fact this PR is a "prerequisite" for me, because I want to add a feature that only newer versions of Gitbeaker support. I have done the bare minimum to do the upgrade (ideally I would have only modified package.jsons). Feel free to give it a try and let me know 😄

seems to need a rebase now too after the other PR got merged

@CptnFizzbin & @freben it seems that CI is green now 😄 Do we stay with the current state? Or do you want something else from my side?


UrlGenerator->full() does not respect forcedRoot

Laravel Version: 5.7.21
PHP Version: 7.2
Database Driver & Version: Mysql / Mysql 5.7

Description:
It looks like this is a duplicate of: #8154. Which is closed, but the issue is still exists, and I think it's a bug or at the very least confusing for developers.
Most methods in the UrlGenerator class respect the forcedRoot and forcedScheme, except for full() which ingores these concepts because it just returns request->fullUrl().
Where this starts to case problems is with the guest() method in the Redirector class, combined with the intended route logic. If an anon user is redirected using this method, the wrong url is stored in the user's session.
https://github.com/laravel/framework/blob/5.7/src/Illuminate/Routing/UrlGenerator.php#L133
https://github.com/laravel/framework/blob/5.7/src/Illuminate/Routing/Redirector.php#L83
Steps To Reproduce:

Use URL::forceRootUrl()
Attempt use URL::full() somewhere in a browser request

There is URL:current() that does what you are looking for:
https://github.com/laravel/framework/blob/5.7/src/Illuminate/Routing/UrlGenerator.php#L143

You can check API of the request instance following this thread:
https://stackoverflow.com/questions/55016717/getting-current-uri-in-laravel-5-7


[Macros] Private discriminators for outermost private MacroExpansionDecl

Add a private discriminator to the mangling of an outermost-private MacroExpansionDecl so that top-level declaration macros in different files won't have colliding macro expansion buffer names.
rdar://107462515

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test macos

@swift-ci please smoke test macos

@swift-ci please smoke test macos


Update files to reflect move away from MyISAM

There are two places where MyISAM is still present.

[x] sample-settings.secret.yml
[x] settings.travis.yml

My latest change only affects Travis CI. As such, there isn't much to test other than seeing if Travis blows up (it didn't when I tried).

QA:
See developer comments, moving this through


Files opened but not closed, replace the syntax with "with open(filename, mode)"

https://github.com/microsoft/nni/blob/e6b3828cc98119e4ba9293f73fb9a0b5b0ce3740/tools/nni_cmd/tensorboard_utils.py#L98-L99
https://github.com/microsoft/nni/blob/252d35e0773a652ee1f108b0303e342cb2367b7e/tools/nni_cmd/launcher.py#L128-L129
The above two files are opened, but not closed. Can this be replaced with the following sytax
with open(filename, mode) as f:
  ...

f you do not explicitly close it then the file will be closed automatically when the file object is destroyed. In CPython this will happen as soon as there are no more references to it, e.g. if it is a local variable in a function and the function ends. However if an exception is thrown in the function and file is not explicitly closed using a with statement or a try:...finally: then a reference to the file will be kept as part of the stack trace in the traceback object and the file will not be closed, at least until the next exception is thrown.
Read here

Can I raise a PR for the above?

Sure, go ahead. Thanks

fixed by contributor @farziengineer , thanks!


Improve support for mem pools in TMOP

[ ] Remove changes in pmesh.{hpp/cpp}

I want to profile the memory usage again after we're up-to-date with master and passing tests so this will probably change. I'm happy to wait or merge as-is

No longer needed.


Update voicexml-browser.md

space was breaking metadata

Learn Build status updates of commit 56255e1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Skype/UCMA/voicexml-browser.md
:white_check_mark:Succeeded

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

Learn Build status updates of commit 8b3e480:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Skype/UCMA/voicexml-browser.md
:white_check_mark:Succeeded

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


Migrate: Brand component

Origin: https://github.com/asuwebdesign/patternfly-ext-chatbot/tree/main/components/Chatbot/components/Brand
### Tasks
- [ ] Add `index.ts` to dir
- [ ] Convert existing component to `tsx`
- [ ] Add to `patternfly-docs` (if necessary)

closed by #77


chore: sentry issue fix #29551

Description
Fixes the null errors from the convertWebworkerSpansToRegularSpans function.
PR fixes following issue(s)
Fixes #29551
Type of change

Chore (housekeeping or task changes that don't impact user perception)

Testing

How Has This Been Tested?

[ ] Manual
[ ] JUnit
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

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

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

Refactor

Improved the stability of the worker service by handling potential undefined properties more gracefully.

/ok-to-test sha=ce72bc5af0279e5275a7889b7350f9c047f628cd

/ok-to-test sha=ce72bc5af0279e5275a7889b7350f9c047f628cd


feat: Improvements for TermsFromMovieNameInTitle

Description
shows movie title from which the term was extracted
solves point three mentioned in issue #19
Type of change

feat

Checklist:

[x] My pr is based on Contribution Checklist
[x] I have performed a self-review of my own code

Notes for us to verify your change
(Currently we would be doing a manual testing.)
(Maintainer may connect to fork-remote and checkout the branch to merge into this repo, pull changes, deploy to appsmith and test the functionality.)
existing things will work fine,
TermsFromMovieNameInTitle will now also show the movie title from which the term is derived

will check and review


Wrong Distance calculation while adding Custom Job

Hello @LIPtoH
While adding custom Freight Market Job, the distance is always set to 5km. Actual in-game distance between the cities is not taken into account.
https://imgur.com/KjO06Iv

+1 Probably helpful, but add the job to game, seen the job was add then save reload a new job start and end the same with the same fright as I seen on a previous post it get info from the save game. On Version <IP_ADDRESS>

Hello @LIPtoH
While adding custom Freight Market Job, the distance is always set to 5km. Actual in-game distance between the cities is not taken into account.
https://imgur.com/KjO06Iv

I have exactly the same problem and I use ver: TS.SE.Tool.<IP_ADDRESS> and get 5 km anyway when I make an assignment.


Expose all ec pipelines to renovate bot

@MartinBasti , since you've been playing with file matchers recently, I would really appreciate your feedback here :pray:

LGTM :D


Run mods through Steam instead of MTS.cmd

Updated docs for running mods through Steam instead of MTS.cmd (which is now deprecated)
Resolves #44

Thank you!


Sails.js Multiple callbacks from Model.getDatastore().sendNativeQuery()

Node version: 12.19.0
Sails version (sails): 1.4.0
ORM hook version (sails-hook-orm): 3.0.1
Sockets hook version (sails-hook-sockets): 2.0.0
Organics hook version (sails-hook-organics): 2.2.0
Grunt hook version (sails-hook-grunt): 4.0.1
Uploads hook version (sails-hook-uploads):
DB adapter & version (e.g. sails-mysql@5.55.5<EMAIL_ADDRESS>Skipper adapter & version (e.g. skipper-s3@5.55.5):

After upgrading Sails.js to v1.0 native SQL queries Model.getDatastore().sendNativeQuery() fires callback multiple times.
Below is console trace:
WARNING: Something seems to be wrong with this function.
It is trying to signal that it has finished AGAIN, after
already resolving/rejecting once.
(silently ignoring this...)

To assist you in hunting this down, here is a stack trace:

    at Object.releaseConnection (C:\Users\asder\projects\warehouse\node_modules\sails-mysql\helpers\private\connection\release-connection.js:27:9)
    at parentQueryCb (C:\Users\asder\projects\warehouse\node_modules\sails-mysql\helpers\join.js:228:30)
    at Object.success (C:\Users\asder\projects\warehouse\node_modules\sails-mysql\helpers\private\query\run-native-query.js:64:14)
    at C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:1517:30
    at proceedToFinalAfterExecLC (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:1155:14)
    at proceedToInterceptsAndChecks (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:913:12)
    at proceedToAfterExecSpinlocks (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:845:10)
    at C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:303:7
    at C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:954:24
    at Function.handlerCbs.success (C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:814:26)
    at Query.query [as _callback] (C:\Users\asder\projects\warehouse\node_modules\machinepack-mysql\lib\send-native-query.js:320:20)
    at Query.Sequence.end (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Sequence.js:88:24)
    at Query._handleFinalResultPacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Query.js:139:8)
    at Query.EofPacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Query.js:123:8)
    at Protocol._parsePacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Protocol.js:279:23)
    at Parser.write (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Parser.js:76:12)
    at Protocol.write (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Protocol.js:39:16)
    at Socket.<anonymous> (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\Connection.js:103:28)
    at Socket.emit (events.js:314:20)
    at addChunk (_stream_readable.js:298:12)
    at readableAddChunk (_stream_readable.js:273:9)
    at Socket.Readable.push (_stream_readable.js:214:10)
    at TCP.onStreamRead (internal/stream_base_commons.js:188:23)

Here is the original error:

undefined

So finally I get an error in async utils that 'next' callback was called multiple times:
app.js 'handleErrors' error: Error: Callback was already called.
    at C:\Users\asder\projects\warehouse\node_modules\async\dist\async.js:318:36
    at C:\Users\asder\projects\warehouse\api\controllers\ManagerController.js:461:44
    at C:\Users\asder\projects\warehouse\api\services\TransferUtils.js:14:24
    at afterwards (C:\Users\asder\projects\warehouse\node_modules\sails-hook-orm\lib\datastore-method-utils\help-send-native-query.js:112:23)
    at C:\Users\asder\projects\warehouse\node_modules\sails-hook-orm\lib\datastore-method-utils\private\do-with-connection.js:195:18
    at C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:952:35
    at Function.handlerCbs.error (C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:742:26)
    at parley.retry (C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:1088:49)
    at parley (C:\Users\asder\projects\warehouse\node_modules\parley\lib\parley.js:140:5)
    at Object.runFn [as releaseConnection] (C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:461:23)
    at C:\Users\asder\projects\warehouse\node_modules\sails-hook-orm\lib\datastore-method-utils\private\do-with-connection.js:193:22
    at C:\Users\asder\projects\warehouse\node_modules\sails-hook-orm\lib\datastore-method-utils\private\do-with-connection.js:113:18
    at Object.success (C:\Users\asder\projects\warehouse\node_modules\sails-hook-orm\lib\datastore-method-utils\help-send-native-query.js:106:18)
    at C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:1517:30
    at proceedToFinalAfterExecLC (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:1155:14)
    at proceedToInterceptsAndChecks (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:913:12)
    at proceedToAfterExecSpinlocks (C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:845:10)
    at C:\Users\asder\projects\warehouse\node_modules\parley\lib\private\Deferred.js:303:7
    at C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:954:24
    at Function.handlerCbs.success (C:\Users\asder\projects\warehouse\node_modules\machine\lib\private\help-build-machine.js:814:26)
    at Query.query [as _callback] (C:\Users\asder\projects\warehouse\node_modules\machinepack-mysql\lib\send-native-query.js:320:20)
    at Query.Sequence.end (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Sequence.js:88:24)
    at Query._handleFinalResultPacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Query.js:139:8)
    at Query.EofPacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\sequences\Query.js:123:8)
    at Protocol._parsePacket (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Protocol.js:279:23)
    at Parser.write (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Parser.js:76:12)
    at Protocol.write (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\protocol\Protocol.js:39:16)
    at Socket.<anonymous> (C:\Users\asder\projects\warehouse\node_modules\mysql\lib\Connection.js:103:28)

Does anyone know WTF?
And I'm using MariaDB as a database, but previously everything was fine.

@gunman-ill It might be relevant to know if you're using callbacks/Promises/await.  Can you share an example of how you're triggering sendNativeQuery()?

Hi @gunman-ill, would you be able to create a minimal sails app in a repo that reproduces this issue? Thanks!


Refactor tests

Before submitting your PR for review

[ ] Run npm run lint to find errors in code syntax/format
[ ] Run npm run lint:fix to fix all auto-fixable errors in source code and auto-format with prettier
[ ] Ensure you fix any linting errors displayed after running any of the above commands

What does this PR do?
Fixes #240
description of Task to be completed?

Refactor tests to a decent structure

__test__
  > api
    > comments
    > organizations
    > replies

Add comment to files missing critical implementations
Add applicationId or organizationId to tests missing them

How should this be manually tested?
Any background context you want to provide?
What is the link to the issue on Github?
Issue #240
Questions:

@piouson Why didn't you move the actual tests? I thought you were going to refactor and not just create new files and folders or is this just the beginning?

@piouson Why didn't you move the actual tests? I thought you were going to refactor and not just create new files and folders or is this just the beginning?

yes @simply-alliv that's the plan, different commit for each file completely refactored.
when I'm done, travis will also pass.

Okay, I think the code will be clean and better this way.


Added scanning settings to documentation

Updated documentation to include hardening of DisableArchiveScanning, DisableScanningNetworkFiles settings..

@denisebmsft Please just wait for me to confirm.


Design documents

You've got a good start on your design documents, but the component spec looks like a mix of the use cases and components.  Here is some input to write these documents...
For the component and functional spec... The functional spec is essentially the use cases. I like to write use cases by first creating a number of "user stories" that describe the specific user types, e.g.
Alice is an experimentalist who will be using the tool to analyze her data.  She has limited programming experience but is an expert user of tools like Excel and instrumentation control software.

Then, for each user type, enumerate the specific use cases, e.g.,
* Alice will use this software to load her raw EIS data into the database.
* Alice will use raw EIS data in the database to create a Nyquist plot.
* Alice will use the user interface to select multiple Nyquist plots to show simultaneously.

I realize these might not match your software, but I just wanted to put in some examples.
For the component specification, use the use cases and things mentioned in them to create components.  E.g., in the above there are two top level components that come up right away:

A database
A user interface
But there are likely many more and some that are sub-components of the above.  For each component, you can use the following template to create a component 'card' in the form:

* Name
* What it does
* Inputs (with type information)
* Outputs (with type information)
* How it interacts with other components

The Design Documents have been worked on.


Does it necessary to run weight quantization reconstruction before full quantization reconstruction? Or it is independent?

If my target is to get a full quantization model, does it necessary to do weight quantization reconstruction before full quantization reconstruction as the  shown?
Can I skip weight quantization reconstruction and turn on full quantization reconstruction directly!

Sorry for not seeing the message in time.
BRECQ [1] reconstructs weights and activations separately. However, a direct full quantization reconstruction has similar accuracy to a separate reconstruction.
Best wishes.
[1] Yuhang et al. BRECQ: Pushing the Limit of Post-Training Quantization by Block Reconstruction

A simple clarification. I noted that you do not initialize the weight quantizer parameters. Why? When I tried to initialize it took so long to run. Is that why you do not initiliaze? Correct me if I am wrong please.

A simple clarification. I noted that you do not initialize the weight quantizer parameters. Why? When I tried to initialize it took so long to run. Is that why you do not initiliaze? Correct me if I am wrong please.

Because direct full quantization without first quantizing the weights reproduces BRECQ accuracy similar to the original paper. In addition, the more efficient direct full quantization makes prior quantization of weights unnecessary when accuracy is not affected.

A simple clarification.
As referenced by you in this paper [1] Yuhang et al. BRECQ: Pushing the Limit of Post-Training Quantization by Block Reconstruction.
I noted that they do not initialize the weight quantizer parameters. Why? When I tried to initialize it took so long to run.  Here what I am saying do not initialize.
self.inited variable start as FALSE
self.inited = False
https://github.com/yhhhli/BRECQ/blob/main/quant/quant_layer.py#L54
Here the self.inited variable must be FALSE to be initialized
https://github.com/yhhhli/BRECQ/blob/main/quant/quant_layer.py#L61
It improve the accuracy if it is initialized? Or the accuracy is the same?

一个简单的澄清。 正如您在本文中所引用的 [1] Yuhang 等人。BRECQ：通过块重建突破训练后量化的极限。
我注意到他们没有初始化权重量化器参数。为什么？当我尝试初始化时，它花了很长时间才能运行。这里我说的是不要初始化。
self.inited 变量开始为**FALSE** self.inited = False https://github.com/yhhhli/BRECQ/blob/main/quant/quant_layer.py#L54
这里 self.inited 变量必须为**FALSE**才能初始化 https://github.com/yhhhli/BRECQ/blob/main/quant/quant_layer.py#L61
如果初始化的话精度会提高吗？或者说准确度是一样的？

BRECQ has initialized quantizer parameters. Calibration is necessary in BRECQ. The quantization after calibration is static quantization.
L194-L195


Allow setting an MQTT fan to a custom-named speed.

This changeset allows an MQTT fan to a speed other then off, low, medium, or high as long as the custom speed is listed in the configured or discovered speed list. This is required for support of devices such as the Wink fan control via Zigbee2mqtt.

Pull request with documentation for home-assistant.io : home-assistant/home-assistant.io#11065
Example entry for configuration.yaml (if applicable):
fan:
  - platform: mqtt
    speeds:
      - 'smart'
      - 'custom'

Checklist:

[X] The code change is tested and works locally.
[X] Local tests pass with tox. Your PR cannot be merged unless tests pass
[X] There is no commented out code in this PR.
[X] I have followed the [development checklist][dev-checklist]

If user exposed functionality or configuration variables are added/changed:

[X] Documentation added/updated in home-assistant.io

We should not merge this - there has been architecture discussions on adding new fan speed already. The conclusion is that "custom" fan speeds that are not defined by the core are not allowed.
https://github.com/home-assistant/architecture/issues/27#issuecomment-393171115 https://github.com/home-assistant/architecture/issues/127#issuecomment-451303330

@OttoWinter thanks

@OttoWinter Understandable, thanks for the info regarding the architecture discussion too.


ungh npm client

Using ungh NPM client, we can have full type support and possibly even client-side in-memory cache.

What about configuring Octokit?
import { Octokit } from 'octokit'

const ungh = new Octokit({ baseUrl: 'https://ungh.cc' })

(Complete API implementation would still be required)

Yes compatible impl would be required also ungh types are simplified and normalized. We shall directly use ofetch to build a type-safe client.


Failed to install php 7.4.33 on Mac

Output
Patch failed
0 changes patched.
Found existing build.log, renaming it to /Users/enzo/.phpbrew/build/php-7.4.33/build.log.1711800371
===> Configuring 7.4.33...

Use tail command to see what's going on:
   $ tail -F '/Users/enzo/.phpbrew/build/php-7.4.33/build.log'

===> Checking patches...
Checking patch for php5.3.x on 64bit machine when intl is enabled.
Checking patch for openssl dso linking patch
0 changes patched.
Checking patch for php5.6 with openssl 1.1.x patch.
===> Building...
Error: Make failed:
The last 5 lines in the log file:
        error = xmlGetLastError();

              ^ ~~~~~~~~~~~~~~~~~

3 warnings and 1 error generated.

make: *** [ext/libxml/libxml.lo] Error 1

make: *** Waiting for unfinished jobs....

Please checkout the build log file for more details:
         tail /Users/enzo/.phpbrew/build/php-7.4.33/build.log

Expected Result
success

Command
Paste your phpbrew install command here (be sure to install with --debug flag, e.g. phpbrew --debug install)
export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"
phpbrew install -j 12 7.4.33 +default +fpm +pdo +mysql +gd +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml=/usr/local/libxml2-2.9.14
Build Log
/Users/enzo/.phpbrew/build/php-7.4.33/ext/libxml/libxml.c:826:3: warning: 'xmlRelaxNGCleanupTypes' is deprecated [-Wdeprecated-declarations]
                xmlRelaxNGCleanupTypes();
                ^
/opt/homebrew/Cellar/libxml2/2.12.6/include/libxml2/libxml/relaxng.h:122:1: note: 'xmlRelaxNGCleanupTypes' has been explicitly marked deprecated here
XML_DEPRECATED
^
/opt/homebrew/Cellar/libxml2/2.12.6/include/libxml2/libxml/xmlversion.h:447:43: note: expanded from macro 'XML_DEPRECATED'
#    define XML_DEPRECATED __attribute__((deprecated))
                                          ^
/Users/enzo/.phpbrew/build/php-7.4.33/ext/libxml/libxml.c:1032:41: warning: comparison of distinct pointer types ('xmlStructuredErrorFunc' (aka 'void (*)(void *, const struct _xmlError *)') and 'void (*)(void *, xmlErrorPtr)' (aka 'void (*)(void *, struct _xmlError *)')) [-Wcompare-distinct-pointer-types]
        if (current_handler && current_handler == php_libxml_structured_error_handler) {
                               ~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/enzo/.phpbrew/build/php-7.4.33/ext/libxml/libxml.c:1050:35: error: incompatible function pointer types passing 'void (void *, xmlErrorPtr)' (aka 'void (void *, struct _xmlError *)') to parameter of type 'xmlStructuredErrorFunc' (aka 'void (*)(void *, const struct _xmlError *)') [-Wincompatible-function-pointer-types]
                xmlSetStructuredErrorFunc(NULL, php_libxml_structured_error_handler);
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/homebrew/Cellar/libxml2/2.12.6/include/libxml2/libxml/xmlerror.h:898:29: note: passing argument to parameter 'handler' here
                                 xmlStructuredErrorFunc handler);
                                                        ^
/Users/enzo/.phpbrew/build/php-7.4.33/ext/libxml/libxml.c:1066:8: warning: assigning to 'xmlErrorPtr' (aka 'struct _xmlError *') from 'const xmlError *' (aka 'const struct _xmlError *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
        error = xmlGetLastError();
              ^ ~~~~~~~~~~~~~~~~~
3 warnings and 1 error generated.
make: *** [ext/libxml/libxml.lo] Error 1
make: *** Waiting for unfinished jobs....

Platform
OS:
Mac(M2) 14.4.1
Running PHP:
PHP 8.2.17
Installing PHP:
PHP 7.4.33

Why did I choose libxml2 2.9.24 or did I use libxml 2.12.6?
I have checked issues and openai gpt-4 for this problem, but it cannot be solved. I hope you can help me
thank you very much

I try to reproduce and fix this issue in the similar environment and here are my running command logs:
$ sysctl -a | grep machdep.cpu
machdep.cpu.cores_per_package: 8
machdep.cpu.core_count: 8
machdep.cpu.logical_per_package: 8
machdep.cpu.thread_count: 8
machdep.cpu.brand_string: Apple M1
$ sw_vers
ProductName:            macOS
ProductVersion:         14.4
BuildVersion:           23E214
$ php -v
PHP 8.2.17 (cli) (built: Mar 12 2024 14:26:30) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.17, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.17, Copyright (c), by Zend Technologies
$ phpbrew --version
phpbrew - 2.2.0
cliframework core: 2.5.4
$ export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>$ export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
$ export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"
$ brew install pkgconfig
$ brew install BZip2
$ LDFLAGS="-lresolv" phpbrew --debug install 7.4.33 +default +fpm +pdo +mysql +gd +intl +openssl=$OPENSSL_PREFIX -- --without-pcre-jit
......
Congratulations! Now you have PHP with 7.4.33 as php-7.4.33

* We found that you enabled 'mysql' variant, you might need to setup your
  'pdo_mysql.default_socket' or 'mysqli.default_socket' in your php.ini file.

* To configure your installed PHP further, you can edit the config file(s) at
    /Users/administrator/.phpbrew/php/php-7.4.33/etc/cli/php.ini
    /Users/administrator/.phpbrew/php/php-7.4.33/etc/fpm/php.ini

To use the newly built PHP, try the line(s) below:

    $ phpbrew use php-7.4.33

Or you can use switch command to switch your default php to php-7.4.33:

    $ phpbrew switch php-7.4.33

According to the logs, it will be successful to build the PHP 7.4.33 version with PHPBrew.
And we need to install the pkgconfig to let the PHP configuring script find the libxml2 libraries.
We install the BZip2 to let the PHP configuring script find the bzip2 libraries.
I hope this will be hopeful for you.

@peter279k
Thank you for your help.
I have already installed both pkgconfig and BZip2, but I didn't solve the problem.....
Three months ago, I was able to install php version 7.4.33 normally.
I reset my computer yesterday and got this error.
Does this have anything to do with my execution of "brew update && brew upgrade"?
rm -rf ~/.phpbrew/build/php-7.4.33

phpbrew off

sysctl -a | grep machdep.cpu

export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>
export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"

export LIBXML2_PREFIX=/usr/local/libxml2-2.9.14
export LIBXML2_CFLAGS="-I${LIBXML2_PREFIX}/include/libxml2"
export LIBXML2_LIBS="-L${LIBXML2_PREFIX}/lib -lxml2"
export PKG_CONFIG_PATH="${LIBXML2_PREFIX}/lib/pkgconfig:$PKG_CONFIG_PATH"
export LDFLAGS="-L${LIBXML2_PREFIX}/lib $LDFLAGS"
export CPPFLAGS="-I${LIBXML2_PREFIX}/include $CPPFLAGS"

phpbrew --debug install 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML2_PREFIX}"

$ ll $(brew --prefix libxml2)
lrwxr-xr-x@ 1 enzo  admin    24B Mar 30 19:19 /opt/homebrew/opt/libxml2 -> ../Cellar/libxml2/2.12.6

How did this command turn out for you?
Mine points to version 2.12.6.
It's too new and not compatible with php 7.4

I solved the problem using the following.
rm -rf ~/.phpbrew/build/php-7.4.33

export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"

export LIBXML_PREFIX=/usr/local/libxml2-2.9.14
export LIBXML_CFLAGS="-I${LIBXML_PREFIX}/include/libxml2"
export LIBXML_LIBS="-L${LIBXML_PREFIX}/lib -lxml2"

phpbrew --debug install 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML_PREFIX}"

It won't use the libxml2 2.12.6 library anymore.
But there is a new problem.
I'm having the same problem with this issues(1358), do you have a good solution?
MacBook Pro Max（M2）
MacOS 14.4.1 (23E224)
Installing php7.4.33 using php 8.2
Build Error:
===> Checking patches...
Checking patch for php5.3.x on 64bit machine when intl is enabled.
Checking patch for openssl dso linking patch
0 changes patched.
Checking patch for php5.6 with openssl 1.1.x patch.
===> Building...
make >> '/Users/enzo/.phpbrew/build/php-7.4.33/build.log' 2>&1
Error: Make failed:
The last 5 lines in the log file:
      _zif_dns_get_record in dns.o

      _zif_dns_get_mx in dns.o

ld: symbol(s) not found for architecture arm64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

make: *** [sapi/cli/php] Error 1

Please checkout the build log file for more details:
         tail /Users/enzo/.phpbrew/build/php-7.4.33/build.log

/Users/enzo/.phpbrew/build/php-7.4.33/build.log:
ld: warning: ignoring duplicate libraries: '-lxml2', '-lxslt'
Undefined symbols for architecture arm64:
  "_res_9_dn_expand", referenced from:
      _php_parserr in dns.o
      _php_parserr in dns.o
      _php_parserr in dns.o
      _php_parserr in dns.o
      _php_parserr in dns.o
      _php_parserr in dns.o
      _php_parserr in dns.o
      ...
  "_res_9_dn_skipname", referenced from:
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_init", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_search", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [sapi/cli/php] Error 1

export LDFLAGS="-lresolv"
phpbrew --debug install 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML_PREFIX}"

You need to use the -lresolv in your LDFLAGS environment variable.

Brother, you are my God.
I compiled it!!!! 🎉🎉
The final orders are these:
rm -rf ~/.phpbrew/build/php-7.4.33
phpbrew off

export LDFLAGS="-lresolv"

export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"

export LIBXML_PREFIX=/usr/local/libxml2-2.9.14
export LIBXML_CFLAGS="-I${LIBXML_PREFIX}/include/libxml2"
export LIBXML_LIBS="-L${LIBXML_PREFIX}/lib -lxml2"

phpbrew install -j 12 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML_PREFIX}"

I hope this helps those of you who are coming in the back :)
good luck!

export LDFLAGS="-lresolv"
phpbrew --debug install 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML_PREFIX}"

You need to use the -lresolv in your LDFLAGS environment variable before using the phpbrew command.

Brother, you are my God.
I compiled it!!!! 🎉🎉
The final orders are these:
rm -rf ~/.phpbrew/build/php-7.4.33
phpbrew off

export LDFLAGS="-lresolv"

export OPENSSL_PREFIX=$(brew --prefix<EMAIL_ADDRESS>export OPENSSL_CFLAGS="-I${OPENSSL_PREFIX}/include"
export OPENSSL_LIBS="-L${OPENSSL_PREFIX}/lib -lcrypto -lssl"

export LIBXML_PREFIX=/usr/local/libxml2-2.9.14
export LIBXML_CFLAGS="-I${LIBXML_PREFIX}/include/libxml2"
export LIBXML_LIBS="-L${LIBXML_PREFIX}/lib -lxml2"

phpbrew install -j 12 7.4.33 +default +fpm +pdo +mysql +intl -- --with-openssl="shared,${OPENSSL_PREFIX}" --with-libxml-dir="${LIBXML_PREFIX}"

I hope this helps those of you who are coming in the back :)
good luck!


⚠ SceneTime has degraded performance

In 3738957, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 13990 ms

Resolved: SceneTime performance has improved in 5c326e9.


Maybe unnecessary extra dataset load?

Context of the issue.
I'm reading the source code of openface now. Even though I haven't gone through all the codes once, I came across some weird code that I couldn't understand. So I came here to ask somebody who can explain it.
The main problem is about multiple thread data loader.
-- data.lua
      donkeys = Threads(
         opt.nDonkeys,
         function()
            require 'torch'
         end,
         function(idx)
            opt = options -- pass to all donkeys via upvalue
            tid = idx
            local seed = opt.manualSeed + idx
            torch.manualSeed(seed)
            print(string.format('Starting donkey with id: %d seed: %d', tid, seed))
            paths.dofile('donkey.lua')  # the problem.
         end
      );

-- donkey.lua
paths.dofile('dataset.lua') # the problem.

I have gone through all the code in dataset.lua and find its code as a complete sequential "file list generator".
So when it cooperates with the above snippet of data.lua, the sequential "generator" was executed multiple times in seperate threads, resulting multiple dataset object.
Is it waste of time to do unnecessary extra work of loading files? I mean the "file path list" related stuff need only handled once enough.
Expected behavior.
I think we don't need to generate multiple different copies of the "file list" right? Am I taking the procedure wrong? I'm a newbie to lua, and not familiar with torch. Maybe I'm wrong with what's going on under the code.
Actual behavior.
Here's the actual output of the main.lua.
Starting donkey with id: 2 seed: 4
Starting donkey with id: 1 seed: 3
Creating train metadata
dataset init once!!!!
table: 0x405dc8a0
Creating train metadata
dataset init once!!!!
table: 0x416617e0
running "find" on each class directory, and concatenate all those filenames into a single file containing all image paths for a given class
running "find" on each class directory, and concatenate all those filenames into a single file containing all image paths for a given class
now combine all the files to a single large file
now combine all the files to a single large file
load the large concatenated list of sample paths to self.imagePath
load the large concatenated list of sample paths to self.imagePath
510487 samples found.===================== 510000/510487 =============================>.]  ETA: 0ms | Step: 0ms
Updating classList and imageClass appropriately
510487 samples found.===================== 510000/510487 =============================>.]  ETA: 0ms | Step: 0ms
Updating classList and imageClass appropriately
===>........................................... [.=.=.=>..........................................................................................] .   ... . ... . ..  .  .... . .   . . ..   [==========================================>>............................................................................................................................] . ... ]            [============================>..................................................=..=..=.] === == === === =  ===== =  =  =    =    =    =   =  =  =...........................]                [======================================== 10938/10938 ================================>]  Tot: 5m6s | Step: 27ms
Cleaning up temporary files=============== 10935/10938 ===============================>.]  ETA: 81ms | Step: 27ms
 [======================================== 10938/10938 ================================>]  Tot: 5m6s | Step: 27ms
Cleaning up temporary files
nClasses: 	10938

Steps to reproduce.
Configure the data path in opts.lua, comment out all the code below "paths.dofile('data.lua')" of training/main.lua
OS and hardware information.

Operating system: Ubuntu 14.04.3
Torch version: HEAD
CPU architecture: no need
GPU type (if using): no need

This is the overhead of threads. Each worker thread needs to have it's own copy of all the variables it needs to run the worker function independently.


Why not using RESTful urls?

Would be the perfect if you implement that.

@betoharres can elaborate with examples? RESTful urls is vague , and subjective.

@gernest I meant something like this http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api
and others must-have best practices out of the box.
That's what advancing the technology is, right? Not reinventing the wheel :)

Well, but this is not an api or a restful framework. Why do that?

It's just a suggestion :) that's ok

@betoharres I forgot to say that the link you referenced is not framework level implementation detal but application level. You can build a RESTFUL API with utron.


Introduce superchain_time field into each chain's config

Closes https://github.com/ethereum-optimism/superchain-registry/issues/178
This field is used to declare when a chain has committed to activating hardforks with the rest of the superchain.
In practice this means that the individual chain config will have default values from superchain.yaml injected, for any such value which is later than superchain_time.  This allows chains to activate hardforks at arbitrary times (or not at all) up until superchain_time, but forces them to use superchain-wide activation times following that.
For now only the OP chains have this field set. I think that when a chain becomes a standard chain, it should have superchain_time set, forcing it to have hardforks in lockstep from that point on. I enshrined that idea in the contributing guide on this PR, happy to discuss alternatives.

Do we have a CI step that shows which chain configs effectively changed by this PR? If not, this would be a great check to add, similar to our k8s diff-bot. Because IIUC we want all chain configs to stay effectively the same, besides metal-mainnet, right?

Yes we want most chain configs to stay unchanged, except those that were wrong! We know that metal sepolia and superlumio were wrong, because of the genesis hash check.
I can look into the automated check, so at least we know what is changing. Might be something to do manually for now.

I implemented the diff tool. For now it just fails the test when there is a diff. For this particular PR, we would want to merge it as long as the diff is the one we want.

This looks great, thanks! Love the new config diff ci step.
One minor improvement, if we swap the order in the diff, then the + lines will be the new changes. I believe it is the other way around right now.
I assume this is the superlumio diff we expect here (besides the +/-)?
--- ./generate-rollup-config/output-base/mainnet-SuperLumio.json	2024-05-15 15:58:44.948968529 +0000
+++ ./generate-rollup-config/output-HEAD/mainnet-SuperLumio.json	2024-05-15 15:58:40.412998242 +0000
@@ -23,8 +23,8 @@
   "l1_chain_id": 1,
   "l2_chain_id": 8866,
   "regolith_time": 0,
-  "canyon_time":<PHONE_NUMBER>,
-  "delta_time":<PHONE_NUMBER>,
+  "canyon_time":<PHONE_NUMBER>,
+  "delta_time":<PHONE_NUMBER>,
   "ecotone_time":<PHONE_NUMBER>,

This is the diff we expect including the current +/- parity. The canyon and delta times were changed to later times.
So I don't think we need to swap any orders?

Two nits but otherwise LGTM, CI is also failing with Exiting with status 1 because at least one difference was found. Approving since I'm ok with merging once those are resolved

Thanks. This is actually an expected failure, since for this PR we want to change the effective rollup config for these chains (it is incorrect as is, causing genesis hash checks to fail). So when we're ready I'll merge it despite the failure (it won't run on the main branch). Longer term, we can improve how that action works to be more of an informative check like the argoCD diffbot. For now this check is mainly useful to get confidence on this PR, it may also transform into a check which runs when a new chain is added, to ensure the new data results in the correct config.

This is the diff we expect including the current +/- parity. The canyon and delta times were changed to later times.
So I don't think we need to swap any orders?

@geoknee I see, I assumed that removal of canyon in sepolia-metal was a hint that the order is wrong. The latest sepolia metal diff is
Files ./generate-rollup-config/output-base/sepolia-Metal Sepolia.json and ./generate-rollup-config/output-HEAD/sepolia-Metal Sepolia.json are different:
--- "./generate-rollup-config/output-base/sepolia-Metal Sepolia.json"	2024-05-15 17:28:43.848672025 +0000
+++ "./generate-rollup-config/output-HEAD/sepolia-Metal Sepolia.json"	2024-05-15 17:28:39.268612165 +0000
@@ -23,7 +23,6 @@
   "l1_chain_id": 11155111,
   "l2_chain_id": 1740,
   "regolith_time": 0,
-  "canyon_time":<PHONE_NUMBER>,
   "delta_time":<PHONE_NUMBER>,
   "ecotone_time":<PHONE_NUMBER>,

I see that we set
superchain_time: null

delta_time:<PHONE_NUMBER>
ecotone_time:<PHONE_NUMBER>

for sepolia metal. So when does Canyon activate now?

for sepolia metal. So when does Canyon activate now?
I set this to block number 1 (2 secs after genesis), pending further clarification on the actual value.


fix incorrect definition of instance variable name

What is the purpose of the change
fix incorrect definition of instance variable name
Brief changelog
Verifying this change

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

The instance name here is not necessarily NIO_EVENT_LOOP_GROUP, the internal logic is to determine whether it is an epoll model according to the shouldEpoll() method, so as to decide whether to choose EpollEventLoopGroup or NioEventLoopGroup

Codecov Report

Merging #7547 (4c70407) into master (6c779a9) will decrease coverage by 0.04%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master    #7547      +/-   ##
============================================
- Coverage     58.78%   58.73%   -0.05%
  Complexity      502      502
============================================
  Files          1076     1076
  Lines         43409    43409
  Branches       6339     6321      -18
============================================
- Hits          25516    25497      -19
- Misses        15054    15079      +25
+ Partials       2839     2833       -6

Impacted Files
Coverage Δ
Complexity Δ

...e/dubbo/remoting/transport/netty4/NettyClient.java
69.56% <100.00%> (-1.45%)
0.00 <0.00> (ø)

.../apache/dubbo/rpc/protocol/AsyncToSyncInvoker.java
62.06% <0.00%> (-10.35%)
0.00% <0.00%> (ø%)

...dubbo/remoting/exchange/support/DefaultFuture.java
78.63% <0.00%> (-8.55%)
0.00% <0.00%> (ø%)

...pache/dubbo/remoting/transport/AbstractServer.java
53.16% <0.00%> (-3.80%)
0.00% <0.00%> (ø%)

...c/main/java/org/apache/dubbo/rpc/RpcException.java
80.00% <0.00%> (-3.34%)
0.00% <0.00%> (ø%)

.../org/apache/dubbo/qos/legacy/LogTelnetHandler.java
30.30% <0.00%> (-3.04%)
0.00% <0.00%> (ø%)

.../dubbo/remoting/transport/netty4/NettyChannel.java
61.38% <0.00%> (-2.98%)
0.00% <0.00%> (ø%)

...pache/dubbo/registry/support/AbstractRegistry.java
77.40% <0.00%> (-2.97%)
0.00% <0.00%> (ø%)

...va/org/apache/dubbo/remoting/exchange/Request.java
86.27% <0.00%> (-1.97%)
0.00% <0.00%> (ø%)

...a/org/apache/dubbo/monitor/dubbo/DubboMonitor.java
86.66% <0.00%> (-1.91%)
16.00% <0.00%> (ø%)

... and 12 more

Continue to review full report at Codecov.

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


Need always on top

example
also, always on top is broken atom/electron#2097

I'd like to fix this, but I can't seem to reproduce the problem on Mac to verify a fix. 😢

There doesn't seem to be anything I can do here unless it's fixed upstream... closing for now.


OCR3 Capability: Don't error on empty queue

Empty request queue is not an error. In fact, it will be a very common state when overall load is low.

FYI @george-dorin failing test seems to be related to one of the previous changes...?

FYI @george-dorin failing test seems to be related to one of the previous changes...?

Data race is inside the OCR2 tests which are untouched by the previous changes


fix addressable in README

Doh, I was just thinking I'd love something that could parse readme code and somehow verify that it worked.


Feature Request: Multi-Schema Support

Seems like Prisma's multiSchema previewFeature does not work with the latest version (0.10.0).
Are we waiting for it to be on GA? or is this something we can implement already?

Hi @albertilagan, we don't need to wait for multiSchema to hit GA. If you like you could create a PR to support this feature.
Things to consider:

Does Prisma surface multiSchema information in the DMMF? (clone this project and comment in https://github.com/notiz-dev/prisma-dbml-generator/blob/main/src/cli/dbml-generator.ts#L26 to receive a DMMF file)
How does schema look like in the DBML?

Hi @albertilagan, we don't need to wait for multiSchema to hit GA. If you like you could create a PR to support this feature.
Things to consider:

Does Prisma surface multiSchema information in the DMMF? (clone this project and comment in https://github.com/notiz-dev/prisma-dbml-generator/blob/main/src/cli/dbml-generator.ts#L26 to receive a DMMF file and run npm run dev)
How does schema look like in the DBML?

Hi, @marcjulian just saw this, and upon checking looks like the schema value is not yet exposed on DMMF.
Will wait for Prisma, or maybe I'll create a PR there as well when I have the time :)


*: remove namespace

What problem does this PR solve?
See #1416.
What is changed and how it works?
This PR removes all namespace related logic since it's barely used and complexity. Specifically,

remove namespace package and table package.
move codec related logic into pkg/codec
update the related docs

Check List
Tests

Unit test

Code changes

Has configuration change
Has HTTP API interfaces change
Has persistent data change

Side effects

Breaking backward compatibility (for someone who use table classifier may need to change to the enable-global-merge option)

Related changes

Need to update the documentation

Codecov Report

Merging #1804 into master will increase coverage by 0.22%.
The diff coverage is 89.81%.

@@            Coverage Diff             @@
##           master    #1804      +/-   ##
==========================================
+ Coverage   77.83%   78.05%   +0.22%
==========================================
  Files         167      159       -8
  Lines       16415    15430     -985
==========================================
- Hits        12776    12044     -732
+ Misses       2598     2410     -188
+ Partials     1041      976      -65

Impacted Files
Coverage Δ

pkg/codec/codec.go
76.19% <ø> (ø)

tools/pd-ctl/pdctl/ctl.go
94.73% <ø> (-0.14%)
:arrow_down:

server/schedule/filter/filters.go
89.17% <ø> (+0.18%)
:arrow_up:

server/server.go
82.76% <ø> (+0.72%)
:arrow_up:

server/schedule/checker/learner_checker.go
100% <ø> (ø)
:arrow_up:

tests/pdctl/helper.go
100% <ø> (ø)
:arrow_up:

server/api/config.go
45.88% <ø> (-2.4%)
:arrow_down:

server/api/router.go
100% <ø> (ø)
:arrow_up:

server/api/region.go
70.85% <ø> (+2.45%)
:arrow_up:

server/statistics/metrics.go
100% <ø> (ø)
:arrow_up:

... and 26 more

Continue to review full report at Codecov.

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

/run-all-tests

/merge

could we close #1416 ?


fix(login): added const list of providers instead of fetching

:tada: This PR is included in version 1.5.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[CT-36] [Bug] Airflow v2.1, v2.2 constraints incompatible with dbt v1.0.0, v1.0.1 on codependency click.

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
NOTE: This is a minor bug regarding a common integration.
Airflow v2.1 and v2.2 transitively depends on click>=7.1,<9. Airflow requires Flask v1.1 and Flask v1.1.3+ further constrains click to >=5.1,<8.0.
dbt-core 1.0.0. and 1.0.1 depends on click>=8,<9 from commit https://github.com/dbt-labs/dbt-core/commit/11436fed45730cec392872cacfc511bbe7102ec3.
The combined click constraint of >=8,<8.0 is unsolvable, preventing the installation of Airflow with dbt v1.0.0 and v1.0.1.
Expected Behavior
The behavior is correct; it's just a nightmare to deal with. IMHO, it can be better by supporting click v7 in dbt v1.0.
Steps To Reproduce
Try installing the latest release of dbt-core and Flask together:
$ pip install dbt-core==1.0.1 Flask==1.1.4
Relevant log output
ERROR: Cannot install dbt-core==1.0.1 and flask==1.1.4 because these package versions have conflicting dependencies.

The conflict is caused by:
    dbt-core 1.0.1 depends on click<9 and >=8
    flask 1.1.4 depends on click<8.0 and >=5.1

### Environment

```markdown
- Python: 3.9
- dbt: 1.0.0, 1.0.1

What database are you using dbt with?
No response
Additional Context
Apache Airflow provides constraint files of known-working configuration and has published constraints that pin Flask to 1.1.4 (e.g. v2.1, Py 3.9). More recent constraints with Airflow v2.2 pin Flask down to v1.1.2 (v2.2, Py 3.9).
I am unsure of Airflow's reasoning behind downgrading to Flask v1.1.2 in v2.2 and the mainline branch, though I suspect it's because Flask 1.1.3 added additional constraints: pallets/flask: Older versions (1.x.x) of flask pin some dependencies in a way that could cause issues. Interestingly David Lord commented that Flask doesn't follow semver though David doesn't mind setting a maximum version on click in Flask v1.1.3 given the v1.1 line is no longer actively maintained.
Airflow is no stranger to transitive dependency problems: old libraries in setup.py causing dependency resolution to pull old transitive constraints (3 years+). There's some good comments in there and I recommend reading the thread.
Commercial integrations suffer as well. Google Cloud Composer currently ships with Airflow v2.0 and v2.1 and also isn't happy installing dbt v1.0.x.
dbt's constraint on click >=8 may see breakage in pinned Airflow installs, either breaking Flask (implicit <8) or breaking dbt (explicit >=8). Given dbt's constraint is a recent change (Oct 20, 2021 in https://github.com/dbt-labs/dbt-core/commit/11436fed45730cec392872cacfc511bbe7102ec3), I'm thinking it may be possible to support click v7 and loosen dbt's constraint.
That's as far as I've dug in and would like some thoughts around dbt supporting click v7. I can make a patch if it'll help the conversation.

@twilly Have you tried using the KubernetesPodOperator similar to how gitlab implements dbt Core today: here?
This avoids the dependency headaches altogether and is a common pattern of people I see using airflow and dbt Core.

Good suggestion and thanks for considering my practical needs. I am indeed considering Docker containers to wrap up different tools, including dbt. KubernetesPodOperator fits into that picture, though with its own baggage.
I started digging down this path because Airflow and dbt installed from PyPI into a single virtual environment was intriguing. No containers to build and manage. No calling between different virtual environments. Simple operators from airflow-dbt wrapping the CLI. Looked like a simple and quick way to manage pure dbt workflows. Not wanting to waste an opportunity of "neat, it could just work" go by, I chased this option.
dbt 0.21.1 did easily coexist in the same environment with Airflow compared to dbt 1.0.0+. The difference was this impossible click constraint.
I guess I'm looking for an answer to the question "should dbt play well with Airflow in the same environment?" I lean towards yes because it's a good pairing and the experience of PyPI is nice. But "yes" is not free as it implies reconciling codependencies to the lowest common denominator. I'll probably make a patch on dbt just to see what supporting click v7 looks like and its implications. Actually landing such a change needs more thought. :)

@twilly I just installed click==7.1.2, ran dbt init locally, and ran test/integration/040_init_tests successfully. So I think it would be fine to loosen this requirement to click>=7,<9:
https://github.com/dbt-labs/dbt-core/blob/13571435a319d6237bfc414ef15f27e23f0729db/core/setup.py#L56
Is that a change you'd be interested in contributing? If so, there's good cause to make it in a v1.0 patch release, so that folks can upgrade to v1.0 for use with Airflow, and don't need to wait until v1.1. The change feels pretty low-stakes since click is only used by dbt init.

@twilly I just installed click==7.1.2, ran dbt init locally, and ran test/integration/040_init_tests successfully. So I think it would be fine to loosen this requirement to click>=7,<9

Thanks for jumping in! Sorry for being non-responsive here, I was digging around the source code of click and tasks/init.py first, then life decided to be distracting. :)
Funnily enough 040_init_tests does not test integration with click. click methods are patched out, meaning the behavior differences between click versions is not being exercised. I could add a test to verify the default keyword is not provided or set to non-null if provided for the click.prompt call but that may be over-constraining and still not testing for subtle behavior differences. That said, I did test locally by installing click 7.0 and running dbt init. Seems to work as expected.
On a side note, it would be interesting if the integration testing environment did nothing but interact on stdin/out/err. Then you could control environments and run the test suite in different situations.
Anywho, the PR is up at #4681. Give it a gander.

Following up on this, Airflow 2.2.4 and dbt-core 1.0.3 can co-exist with each other in the same virtual environment, at least on my machine with Python 3.9. I'll take that as a win. :)
I'm closing this issue as there doesn't seem to be any obvious installation issues with the two together. That said, I wouldn't recommend making a policy of keeping co-existence a release blocker. It's not an easy thing to track and tackle without significant integration testing and using containers is a more viable, production-quality option. I'd say making the two happy together is an occasional effort thing: tackle co-dependency problems as they arise.
Thanks for the discussion, guidance, and landing of my PR.


test: add test for new sign fn

add test to verify the signature generated from newnly added sign fn.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 82.514%

Totals

Change from base Build<PHONE_NUMBER>9:
0.04%

Covered Lines:
19126

Relevant Lines:
23179

💛  - Coveralls


Update README.md

Added the missing zsh-handy-helper link.

@jhwohlgemuth
Please have a look on this small fix.

@htinaunglu Thank you! Your time and attention is greatly appreciated 😃

@jhwohlgemuth You're welcome mate, greatly appreciated for the plugins, I went through plugins and found yours. 🙇🏾


API: use nginx to serve api

Hi Andrey,
I played a bit with the new Aptly API features, works great so far. I was wondering if there was a plan to host the api through nginx instead of using the aptly api serve command?
I did not find any reference within the documentation about it.
Thanks

@erickeller you can proxy aptly API using any HTTP reverse proxy, including nginx. But you need to run aptly api serve, as it provides real API :)


Fix aws -> kubernetes typo

@bonifaido Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@bonifaido Thank you for signing the Contributor License Agreement!

Thanks a lot. That's merged and backported now.


Create test and deployment Maven profiles

Currently the web service is prepared to run using an in-memory database. This is good for the tests, but not for deployment.
A test profile using the in-memory database and another using a real database should be prepared.

Now there are two profiles, one for an H2 in-memory database, another for a MySQL one. Both will also set up the Spring profile.