document/window events do not seem to behave correctly

Qwik Version
0.0.30
Operating System (or Browser)
browser
Node Version (if applicable)
No response
Which component is affected?
Qwik Runtime
Expected Behaviour
The mousemove event fires only if the mouse is over the component.
Actual Behaviour
I would expect that the mousemove event would fire even if the mouse is not over the component div.
Additional Information
reproduction

Related
#299
#616


Crash When Re-entering Editing Mode

Tap and hold to enter edit mode
Tap outside to exit edit mode
Enter edit mode again
💥

Fixed in df97b39f83b7c882692e18a0cadf8adeb7c40e61


Tradier market data not received on market open

Expected Behavior
Tradier data feed should receive market data on market open.
Actual Behavior
OnData receives no data when the market opens. Algorithm must be restarted to receive data again.
Potential Solution
Tradier WebSocket possibly expiring overnight.

2021-11-02T06:00:24.7988931Z TRACE:: WebSocketClientWrapper.HandleConnection(wss://ws.tradier.com/v1/markets/events): WebSocketMessageType.Close - Data:
2021-11-02T06:00:24.8027001Z TRACE:: WebSocketClientWrapper.HandleConnection(wss://ws.tradier.com/v1/markets/events): Connecting...
2021-11-02T06:00:28.5914158Z TRACE:: WebSocketClientWrapper.OnOpen(): Connection opened (IsOpen:True, State:Open): wss://ws.tradier.com/v1/markets/events

Reproducing the Problem
Create the default algorithm with the default code and Tradier as the data feed. Verify on market open if the algorithm receives any data.
System Information
Windows with Lean CLI

Thanks for the report @haikuwii!
We will check it out ASAP, if you can provide more system logs it would be awesome, help us pin it quicker

Here are the full logs
`2021-11-05T03:40:54.6495844Z TRACE:: Config.Get(): Configuration key not found. Key: data-directory - Using default value: ../../../Data/
2021-11-05T03:40:54.6540319Z TRACE:: Config.Get(): Configuration key not found. Key: version-id - Using default value:
2021-11-05T03:40:54.6542669Z TRACE:: Config.Get(): Configuration key not found. Key: cache-location - Using default value: /Lean/Data
2021-11-05T03:40:54.6547322Z TRACE:: Engine.Main(): LEAN ALGORITHMIC TRADING ENGINE v<IP_ADDRESS> Mode: DEBUG (64bit) Host: ubuntu-s-1vcpu-1gb-amd-nyc1-01
2021-11-05T03:40:54.6828722Z TRACE:: Engine.Main(): Started 3:40 AM
2021-11-05T03:40:54.7023710Z TRACE:: Config.Get(): Configuration key not found. Key: lean-manager-type - Using default value: LocalLeanManager
2021-11-05T03:40:54.7631050Z TRACE:: JobQueue.NextJob(): Selected Test1.dll
2021-11-05T03:40:54.9953241Z TRACE:: Config.GetValue(): scheduled-event-leaky-bucket-capacity - Using default value: 120
2021-11-05T03:40:54.9976094Z TRACE:: Config.GetValue(): scheduled-event-leaky-bucket-time-interval-minutes - Using default value: 1440
2021-11-05T03:40:54.9985081Z TRACE:: Config.GetValue(): scheduled-event-leaky-bucket-refill-amount - Using default value: 18
2021-11-05T03:40:54.9994151Z TRACE:: Config.Get(): Configuration key not found. Key: history-provider - Using default value: SubscriptionDataReaderHistoryProvider
2021-11-05T03:40:55.0003360Z TRACE:: Config.Get(): Configuration key not found. Key: job-organization-id - Using default value:
2021-11-05T03:40:58.0616999Z TRACE:: Config.Get(): Configuration key not found. Key: data-permission-manager - Using default value: DataPermissionManager
2021-11-05T03:40:58.0690691Z TRACE:: Config.GetValue(): streamed-chart-limit - Using default value: 12
2021-11-05T03:40:58.0705031Z TRACE:: Config.GetValue(): streamed-chart-group-size - Using default value: 3
2021-11-05T03:40:58.0961695Z TRACE:: AlgorithmManager.CreateTokenBucket(): Initializing LeakyBucket: Capacity: 120 RefillAmount: 18 TimeInterval: 1440
2021-11-05T03:40:58.1019731Z TRACE:: Config.GetValue(): algorithm-manager-time-loop-maximum - Using default value: 20
2021-11-05T03:40:58.1281892Z TRACE:: TextSubscriptionDataSourceReader.SetCacheSize(): Setting cache size to 71582788 items
2021-11-05T03:40:58.1369760Z TRACE:: Config.GetValue(): consumer-batching-timeout-ms - Using default value: 0
2021-11-05T03:40:58.4950531Z TRACE:: Config.GetValue(): algorithm-creation-timeout - Using default value: 90
2021-11-05T03:40:58.5025325Z TRACE:: Loader.TryCreateILAlgorithm(): Loading only the algorithm assembly
2021-11-05T03:40:58.5272277Z TRACE:: Config.GetValue(): api-data-update-period - Using default value: 1
2021-11-05T03:40:58.6240096Z TRACE:: Loader.TryCreateILAlgorithm(): Loaded Test1
2021-11-05T03:40:58.6517065Z TRACE:: LocalObjectStore.Initialize(): Storage Root: /Storage/Test1. StorageFileCount 100. StorageLimitMB 5
2021-11-05T03:40:58.6542292Z TRACE:: LiveTradingDataFeed.GetDataChannelProvider(): will use DataChannelProvider
2021-11-05T03:40:58.7018725Z TRACE:: LiveTradingDataFeed.GetDataQueueHandler(): will use TradierBrokerage
2021-11-05T03:40:58.7118459Z TRACE:: BaseDataExchange(CustomDataExchange) Starting...
2021-11-05T03:40:58.7219160Z TRACE:: LiveTradingResultHandler.SendStatusUpdate(): status: 'LoggingIn'.  Logging into brokerage...
2021-11-05T03:40:58.7254417Z TRACE:: BrokerageSetupHandler.Setup(): Connecting to brokerage...
2021-11-05T03:40:58.7257644Z TRACE:: BrokerageSetupHandler.Setup(): Paper Brokerage account base currency: USD
2021-11-05T03:40:58.7259321Z TRACE:: BrokerageSetupHandler.Setup(): Initializing algorithm...
2021-11-05T03:40:58.7259675Z TRACE:: LiveTradingResultHandler.SendStatusUpdate(): status: 'Initializing'.  Initializing algorithm...
2021-11-05T03:40:58.7374425Z TRACE:: Config.Get(): Configuration key not found. Key: security-data-feeds - Using default value:
2021-11-05T03:40:58.8865646Z TRACE:: BrokerageSetupHandler.Setup(): Fetching cash balance from brokerage...
2021-11-05T03:40:58.8955914Z TRACE:: BrokerageSetupHandler.Setup(): Setting USD cash to 100000
2021-11-05T03:40:58.9085781Z TRACE:: BrokerageSetupHandler.Setup(): Fetching open orders from brokerage...
2021-11-05T03:40:58.9259308Z TRACE:: BrokerageSetupHandler.Setup(): Fetching holdings from brokerage...
2021-11-05T03:40:58.9377209Z TRACE:: Brokerage.GetAccountHoldings(): sourcing holdings from provided brokerage data, found 0 entries
2021-11-05T03:40:58.9728026Z TRACE:: LiveTradingDataFeed.CreateUniverseSubscription(): Creating user defined universe: QC-UNIVERSE-USERDEFINED-USA-EQUITY 2T
2021-11-05T03:40:59.4699636Z TRACE:: WebSocketClientWrapper connection task started: wss://ws.tradier.com/v1/markets/events
2021-11-05T03:40:59.4776574Z TRACE:: WebSocketClientWrapper.HandleConnection(wss://ws.tradier.com/v1/markets/events): Connecting...
2021-11-05T03:41:04.5528625Z TRACE:: WebSocketClientWrapper.OnOpen(): Connection opened (IsOpen:True, State:Open): wss://ws.tradier.com/v1/markets/events
2021-11-05T03:41:04.5632009Z TRACE:: DataManager.AddSubscription(): Added QC-UNIVERSE-USERDEFINED-USA-EQUITY,QC-UNIVERSE-USERDEFINED-USA-EQUITY,Minute,TradeBar,Trade,Adjusted,Internal. Start: 11/5/2021 3:40:58 AM. End: 12/31/2050 12:00:00 AM
2021-11-05T03:41:04.5976915Z TRACE:: BaseSetupHandler.SetupCurrencyConversions():
Symbol      Quantity    Conversion = Value in USD
USD: $      100000.00 @       1.00 = $100000.0
CashBook Total Value:                $100000.0
2021-11-05T03:41:04.6121043Z TRACE:: JOB HANDLERS:
2021-11-05T03:41:04.6141445Z TRACE::          DataFeed:     QuantConnect.Lean.Engine.DataFeeds.LiveTradingDataFeed
2021-11-05T03:41:04.6150179Z TRACE::          Setup:        QuantConnect.Lean.Engine.Setup.BrokerageSetupHandler
2021-11-05T03:41:04.6150382Z TRACE::          RealTime:     QuantConnect.Lean.Engine.RealTime.LiveTradingRealTimeHandler
2021-11-05T03:41:04.6150467Z TRACE::          Results:      QuantConnect.Lean.Engine.Results.LiveTradingResultHandler
2021-11-05T03:41:04.6150555Z TRACE::          Transactions: QuantConnect.Lean.Engine.TransactionHandlers.BacktestingTransactionHandler
2021-11-05T03:41:04.6150648Z TRACE::          Alpha:        QuantConnect.Lean.Engine.Alphas.DefaultAlphaHandler
2021-11-05T03:41:04.6150731Z TRACE::          ObjectStore:  QuantConnect.Lean.Engine.Storage.LocalObjectStore
2021-11-05T03:41:04.6151099Z TRACE::          History Provider:     QuantConnect.Lean.Engine.HistoricalData.SubscriptionDataReaderHistoryProvider
2021-11-05T03:41:04.6151663Z TRACE::          Brokerage:      QuantConnect.Brokerages.Paper.PaperBrokerage
2021-11-05T03:41:04.6347274Z TRACE:: LiveTradingRealTimeHandler.RefreshMarketHoursToday(Equity): Market hours set: Symbol: SPY Thursday: PreMarket: 04:00:00-09:30:00 | Market: 09:30:00-16:00:00 | PostMarket: 16:00:00-20:00:00 (America/New_York)
2021-11-05T03:41:04.6545848Z TRACE:: LiveTradingResultHandler.SendStatusUpdate(): status: 'Running'.
2021-11-05T03:41:04.6841933Z TRACE:: Event Name "Daily Sampling", scheduled to run at 11/5/2021 4:00:00 AM (UTC)...
2021-11-05T03:41:04.6874191Z TRACE:: AlgorithmManager.Run(): Begin DataStream - Start: 11/4/2021 12:00:00 AM Stop: 12/31/2050 12:00:00 AM
2021-11-05T03:41:04.7027029Z TRACE:: ProcessVolatilityHistoryRequirements(): Updating volatility models with historical data...
2021-11-05T03:41:04.7060370Z TRACE:: ProcessVolatilityHistoryRequirements(): finished.
2021-11-05T03:41:05.4661164Z TRACE:: Debug: Launching analysis for L-3872886905 with LEAN Engine v<IP_ADDRESS>
2021-11-05T03:41:05.6879716Z TRACE:: EventBasedDataQueueHandlerSubscriptionManager.Subscribe(): SPY
2021-11-05T03:41:05.7147629Z TRACE:: DataManager.AddSubscription(): Added SPY,SPY,Minute,TradeBar,Trade,Adjusted. Start: 11/5/2021 3:41:05 AM. End: 12/31/2050 5:00:00 AM
2021-11-05T03:41:05.7353278Z TRACE:: DataManager.AddSubscription(): Added SPY,SPY,Minute,QuoteBar,Quote,Adjusted. Start: 11/5/2021 3:41:05 AM. End: 12/31/2050 5:00:00 AM
2021-11-05T03:41:05.7624333Z TRACE:: DataManager.AddSubscription(): Added SPY,SPY,Minute,TradeBar,Trade,Adjusted,Internal. Start: 11/4/2021 7:59:00 PM.  System.Net.WebSockets.WebSocketException (0x80004005): The remote party closed the WebSocket connection without completing the close handshake.
at System.Net.WebSockets.ManagedWebSocket.ThrowIfEOFUnexpected(Boolean throwOnPrematureClosure)
at System.Net.WebSockets.ManagedWebSocket.EnsureBufferContainsAsync(Int32 minimumRequiredBytes, CancellationToken cancellationToken, Boolean throwOnPrematureClosure)
at System.Net.WebSockets.ManagedWebSocket.ReceiveAsyncPrivate[TWebSocketReceiveResultGetter,TWebSocketReceiveResult](Memory1 payloadBuffer, CancellationToken cancellationToken, TWebSocketReceiveResultGetter resultGetter)    at QuantConnect.Extensions.SynchronouslyAwaitTask[T](Task1 task) in /LeanCloud/CI.Builder/bin/Debug/src/QuantConnect/Lean/Common/Extensions.cs:line 2864
at QuantConnect.Brokerages.WebSocketClientWrapper.ReceiveMessage(WebSocket webSocket, CancellationToken ct, Byte[] receiveBuffer, Int64 maxSize) in /LeanCloud/CI.Builder/bin/Debug/src/QuantConnect/Lean/Brokerages/WebSocketClientWrapper.cs:line 270
at QuantConnect.Brokerages.WebSocketClientWrapper.HandleConnection() in /LeanCloud/CI.Builder/bin/Debug/src/QuantConnect/Lean/Brokerages/WebSocketClientWrapper.cs:line 237
2021-11-05T19:10:43.4749822Z TRACE:: WebSocketClientWrapper.HandleConnection(wss://ws.tradier.com/v1/markets/events): Connecting...
2021-11-05T19:10:43.5275895Z TRACE:: WebSocketClientWrapper.OnOpen(): Connection opened (IsOpen:True, State:Open): wss://ws.tradier.com/v1/markets/events
2021-11-05T19:11:21.9662899Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 17, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:12:21.9979305Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 14, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:13:22.0195855Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 17, App: 282, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:14:22.0363731Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 19, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:16:22.0657377Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 15, App: 281, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:17:22.0938150Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 22, App: 281, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:18:22.1101452Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 19, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:19:22.1307197Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 15, App: 278, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:20:22.1578840Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 16, Sample: 15, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:21:22.1749088Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 15, Sample: 15, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:22:22.2080880Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 16, Sample: 21, App: 277, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:23:22.2265929Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 25, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:24:22.2434833Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 25, App: 277, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:25:22.2600453Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 19, App: 278, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:26:22.2957450Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 22, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:27:22.3126588Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 15, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:28:22.3284960Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 17, App: 278, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:29:22.3449687Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 16, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:30:22.3611165Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 23, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:31:22.3781270Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 17, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:32:22.3899060Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 17, App: 282, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:33:22.4052732Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 22, App: 282, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:34:22.4213032Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 26, App: 281, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:35:22.4372492Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 22, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:36:22.4530373Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 18, Sample: 15, App: 279, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:37:22.4803367Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 15, App: 280, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:38:22.5004531Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 13, App: 283, CurrentTimeStepElapsed: 00:00.000
2021-11-05T19:39:22.5227690Z TRACE:: Isolator.ExecuteWithTimeLimit(): Used: 19, Sample: 19, App: 282, CurrentTimeStepElapsed: 00:00.000
`

This was with the default algo with the addition of printing a log message every minute within OnData (which doesn't show up since OnData isn't being called.

@Martin-Molinero - I posted the logs above, let me know if you need any additional information. Thanks!

@Martin-Molinero  I found some additional information that may be helpful  https://documentation.tradier.com/brokerage-api/overview/authentication

Access tokens (or Bearer tokens) are provided after a successful authorization code exchange. These tokens expire every 24 hours – no questions asked. Once a token expires you’ll need to exchange another authorization code to receive another access token.


how to disable the over scrolling on mac

cant find a way to disable the trackpad scrolling on the mac
it moves the window down even if its already at the top of the page till you release scrolling and then it springs back

Maybe https://stackoverflow.com/questions/12046315/prevent-overscrolling-of-web-page

ok this seems to have fixed it, still its a bit odd
html {overflow: hidden; height: 100%%;}
body {height: 100%%; overflow: auto;}


*: flannel v0.5.4

Per https://github.com/coreos/flannel/pull/339#issuecomment-149054683 this would be a branch from 0.5.3 with at least https://github.com/jonboulle/flannel/commit/b2407f4bc306c07783c67b18289c7864ad109523 cherry-picked. @eyakubovich what else do you think should go in?

I'd like to also do a5e1177ea803c1de5aaaca3fb47e847a6c644f6a, c623d5666ef076de1b79c7b86d72a9d68847f672, 40b61ef499145c2a399eb4e0dae046d30c2bbd7e

Fixed: https://github.com/coreos/flannel/releases/tag/v0.5.4


Added an example of resnet-50-pytorch model

This PR adds support for openvino fp16 inference for pytorch-resnet-50 model. Successfuly converted it to fp16 format and tried it on Device CPU and GPU with model accuracy result verified.
The flow of the model is

@adrianboguszewski could you please run the workflow test again?

Thanks for the contribution!
But I am not sure about the value of this notebook because we already have a very similar one. It looks like duplication to me. @helena-intel, @ryanloney, please take a look as well.

Hello @AlexKoff88 , Thanks for your reply. I am sorry I did not know that my notebook and the one you had tagged via the link are similar. I did not mean to do this. Should I create a new PR with a different model not present in the openvino repository?

The notebook, which could make sense to me, is, for example, inference and optimization (quantization) of any model from timm. It could be ResNet-18. It would be helpful to show end-to-end workflow from model export to ONNX, then to IR, quantization, performance benchmarking, results on real data.

@rahulsingh701 @AlexKoff88 is right. This notebook is a duplication. We accept it as a pre-requisite task. You don't have to create a new one. But of course, if you want you can.


Add conditional logic to use getBlock rather than getBlockInfo.

getBlock is used for nodeos chains under 2.1.0 and getBlockInfo is used for 2.1.0+
TransactionConfig has a new member called chainVersionString that contains the target chain ID that the transaction is meant for.  This value is unset by default.  The user may set the value manually if they desire.  Semantic versioning is used for the parsing and comparison of the versions.  If the value is unset, TransactionProcessor will use the return from getInfo in order to determine the server version and set chainVersionString appropriately.  If the value cannot be found or parsed a default of 2.0.0 will be used, causing getBlock to be called for TAPOS rather than getBlockInfo.  This should allow the SDK to work transparently on 2.0.0 and 2.1.0+ nodes.
TransactionProcessorTest updated to be parameterized to run one pass with 2.0.0 and another with 2.1.0.

why I get this URL: http://<IP_ADDRESS>:8888/v1/chain/get_block_info
I use SDK 1.0 & eosio version=v1.8.14...
how to resolve this issue?
Thanks.

For now you will have to use the older version of the SDKs until this PR can be merged and a new release deployed.  1.0.0 was originally designed to be released with nodeos 2.1 which replaced get_block in the transaction signing process with get_block_info.  2.1 has been delayed to this PR adds backward compatibility.  @GonnaGitYou FYI


Fix bug when user cannot scroll in navigation menu

Bug: User cannot scroll in list of stories.
Fix: Set height and overflow auto on list(ul) of stories to enable scrolling in list

Do you have a repro of this issue (before this fix)?

@tajo For example here: https://baseweb.design/ladle/?story=accordion--accordion. I can't scroll in the navigation menu

This should be fixed already in 4.1.2 https://github.com/tajo/ladle/pull/576
(the demo page is outdated)


Change item status should check for linked loans

If an item has LOANABLE status and it is changed to something else (for example MISSING) then the system should check if there is any active or pending loan on it and in this case:

BLOCK the change, the active loan should be cancelled first.
or
invalidate any active loan?

IMO it should block the change because it required validating the data manually, and it eliminates  the possibility of losing a book due to data inconsistencies

please discuss with the team which solution of the proposed ones is better

Agree with Karolina:

block the update
return an error message explaining exactly why the update failed: which loan PID is blocking, and maybe a link to it, so the librarian can act on this


Median construct correlations plate 4

This analysis finds the aggregate correlation pdfs across wells for both the same and different siRNA constructs with some refactoring. The filtering operations to compute the correlation distributions are complex, so feel free to ask any questions. Also, further analysis is warranted, and is to be continued.

Thanks Mike, merging now!


请求头如果没有Connection没有返回

测试代码
use std::{net::{TcpStream},io::{Error, Write, Read}};
fn main()->Result<(),Error> {
   let mut conn = TcpStream::connect("<IP_ADDRESS>:3000")?;
   println!("connection ok");
   let write_content = b"GET / HTTP/1.1\r\n\r\n";
   conn.write(write_content)?;
   println!("write ok");
   let mut vec = Vec::new();
   vec.resize(1024 * 1024, b'\0');
   let read_size = conn.read(& mut vec[..])?;
   println!("{read_size}");
   println!("{}",std::str::from_utf8(&vec[..read_size]).unwrap());
   Ok(())
}

同样的client测试程序连接hyper是可以的, hyper服务器代码：
use std::convert::Infallible;
use std::net::SocketAddr;

use hyper::body::Bytes;
use http_body_util::Full;
use hyper::server::conn::http1;
use hyper::service::service_fn;
use hyper::{Request, Response};
use tokio::net::TcpListener;

use hyper_util::rt::TokioIo;

// An async function that consumes a request, does nothing with it and returns a
// response.
async fn hello(_: Request<hyper::body::Incoming>) -> Result<Response<Full<Bytes>>, Infallible> {
    Ok(Response::new(Full::new(Bytes::from("Hello World!"))))
}

#[tokio::main]
pub async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
    //pretty_env_logger::init();

    // This address is localhost
    let addr: SocketAddr = ([127, 0, 0, 1], 3000).into();

    // Bind to the port and listen for incoming TCP connections
    let listener = TcpListener::bind(addr).await?;
    println!("Listening on http://{}", addr);
    loop {
        // When an incoming TCP connection is received grab a TCP stream for
        // client<->server communication.
        //
        // Note, this is a .await point, this loop will loop forever but is not a busy loop. The
        // .await point allows the Tokio runtime to pull the task off of the thread until the task
        // has work to do. In this case, a connection arrives on the port we are listening on and
        // the task is woken up, at which point the task is then put back on a thread, and is
        // driven forward by the runtime, eventually yielding a TCP stream.
        let (tcp, _) = listener.accept().await?;
        // Use an adapter to access something implementing `tokio::io` traits as if they implement
        // `hyper::rt` IO traits.
        let io = TokioIo::new(tcp);

        // Spin up a new task in Tokio so we can continue to listen for new TCP connection on the
        // current task without waiting for the processing of the HTTP1 connection we just received
        // to finish
        tokio::task::spawn(async move {
            // Handle the connection from the client using HTTP1 and pass any
            // HTTP requests received on that connection to the `hello` function
            if let Err(err) = http1::Builder::new()
                .serve_connection(io, service_fn(hello))
                .await
            {
                println!("Error serving connection: {:?}", err);
            }
        });
    }
}

要让salvo相应，目前必须请求内容为

b"GET / HTTP/1.1\r\nConnection: Close\r\n\r\n"

测试代码
hyper-hello.zip


Ignore freestanding ellipses

Fixes https://github.com/sillsdev/serval/issues/458.
I think this is the simplest solution. Let me know what you think.

This change is

tests/SIL.Machine.Tests/Corpora/UsfmMemoryTextTests.cs line 217 at r1 (raw file):

            @"\id MAT - Test
\c 1
\v 1 Verse text ... More text

What about things like this:
\v 1 ...
\q1 ...
\q2 ...
\v2 ... \f footnote \f*

I'm probably doing it wrong, but what is the defined behavior if the ellipses is between other USFM markers?

src/SIL.Machine/Corpora/UsfmTextBase.cs line 241 at r1 (raw file):

                {
                    text = "";
                }

Should this happen before tokenization?  I'm not quite understanding.

src/SIL.Machine/Corpora/ScriptureRefUsfmParserHandlerBase.cs line 174 at r1 (raw file):

        {
            // if we hit text in a verse paragraph and we aren't in a verse, then start a non-verse segment
            if (text.Trim().Length > 0 && text.Trim() != "...")

This seems like the wrong place to change it - this was added to solve a different issue.  Does this change cause the tests to fail?  It likely should...

src/SIL.Machine/Corpora/UsfmTextBase.cs line 241 at r1 (raw file):
Previously, johnml1135 (John Lambert) wrote…
Should this happen before tokenization?  I'm not quite understanding.

This may work - but I don't understand this part of the parse to know where all the places that it will work.  I also don't know how paratext populates \q1, and other poetry markers - nor to I know how this may handle populating section headers etc. with ... if that is an issue.

I agree that changing the code there would prevent partial matches.  @ddaspit - do you know all the instances in which the ellipsis might be added in Paratext?

src/SIL.Machine/Corpora/UsfmTextBase.cs line 276 at r2 (raw file):

            protected override void EndVerseText(UsfmParserState state, IReadOnlyList<ScriptureRef> scriptureRefs)
            {
                string text = _rowTexts.Pop().ToString();

I think a simple comment would be appropriate here - what are we doing and why?  "Paratext sometimes auto-adds an ellipses for newly instantiated verses.  This should be ignored for NLP tasks." or similar.


bug: Value flag missing on new nodes

While trying to construct a bee/bzz-compatible manifest with mantaray-js, I ran into an issue setting the website-index-document which is metadata stored on the root (/) fork with a zero address.  I'm almost there, but my / fork is not being typed as including value, while the tar-uploaded manifest / fork is typed as value+metadata.  I've already documented part of the issue in #12 and have now isolated the lack of the value flag.
It appears that mantaray-js attempts to infer the value flag from the existence of a non-zero address in setEntry, but bee's go implementation doesn't do this.  In fact, bee's go doesn't even have a setEntry routine.  Instead, makeValue is invoked at various places while adding a new entry.  The metadata for the website-index-document is set as a fork entry specifically with a zero address reference which is why the mantaray-js setEntry approach fails to set the value flag.
I have isolated the missing makeValue() invocation as being between the two following lines:
https://github.com/ethersphere/bee/blob/136d9f2cffe95194238f5133f23a51a6a71dd9c9/pkg/manifest/mantaray/node.go#L250
		nn.makeValue()
		nn.updateIsWithPathSeparator(path)
		n.forks[path[0]] = &fork{path, nn}
		n.makeEdge()
		return nil

https://github.com/ethersphere/mantaray-js/blob/91344172d5afadf76d199eaf93e0cdf3ac204884/src/node.ts#L358
      newNode.updateWithPathSeparator(path)
      this.forks[path[0]] = new MantarayFork(path, newNode)
      this.makeDirty()
      this.makeEdge()
      return

While I'm sure I can add the single missing line of code, I'd rather defer to someone with more experience than myself.  I also think further comparison of how makeValue is used in the bee/go mantaray implementation because there are other differences that I did not fully analyze.

For what it's worth, I worked around this issue and have now created a bee-compatible manifest.
	const rootMeta = { "website-index-document": "index.html" }
	node.addFork(new TextEncoder().encode('/'), hexToBytes(zeroAddress), rootMeta)

	const rootFork = node.getForkAtPath(new TextEncoder().encode('/'))
	const rootNode = rootFork.node
	let type = rootNode.getType
	type |= NodeType.value
	type = (NodeType.mask ^ NodeType.withPathSeparator) & type
	rootNode.setType = type

You can see this on the testnet at reference: 821f90c201e1f2e78c815f54d66707244fb762bf5633237c72d2aa4907eec10c


fix!: replace dag walkers with generic CID extraction from blocks

Replace the codec-specific .dagWalkers property with a generic dag walker internally that uses the Block interface from the multicodecs module.

Removes the .dagWalkers property from the Helia interface
Adds getCodec and getHasher to retrieve codecs and hashers by code
Adds loadCodec and loadHasher options to allow sync or async loading of extra codecs/hashes in addition to staticlly configured ones in the codecs/hashers keys

BREAKING CHANGE: the .dagWalkers property has been removed
Change checklist

[x] I have performed a self-review of my own code
[x] I have made corresponding changes to the documentation if necessary (this includes comments as well)
[x] I have added tests that prove my fix is effective or that my feature works

we need to run benchmarks to ensure no perf regression

Perf seems fine - the benchmark added by https://github.com/ipfs/helia/pull/633 shows comparable performance between this branch and main.


Power toys and Apples Boot Camp F15 and F16 remapping with side effects...

Microsoft PowerToys version
V 057.2
Running as admin

[ ] Yes

Area(s) with issue?
Keyboard Manager
Steps to reproduce
Hi,
i am very happy to use Power toys to map an Apple Keyboard to keep some of my habits working on Windows.
It works brilliantly (like Karabiner works on macOS) on a PC.
However I had some headaches on a Mac running Windows 10 with Boot Camp.
Boot Camp seems to hard-map F14-F16 that way:
F14 -> Print Screen
F15 -> Scroll Lock
F16 -> Pause
This mapping is not overridden by Power Toys, so the F15 -F16 keys provide the mapped output, plus additionally a parasitic Scroll Lock / Pause respectively.
Since I don't expect any effort from Apple to change that behaviour, could you change your precedence process to catch the keystrokes before the boot-camp driver?
✔ Expected Behavior
F15, F16 being remapped without side effects
❌ Actual Behavior
Scroll Lock, Pause persists after remapping
Other Software
Apple Boot Camp drivers 6.0.6136

Tried to look for some images of an Apple Keyboard, but couldn't find the F14, F15 or F16 keys.
Don't really have this setup to give it a try, though ...
So when you say that it doesn't work, are you trying to map F14, F15 and F16? What if you map Print Screen Scroll Lock and Pause instead? /needinfo

The full size Apple keyboard has F13 to F19.
Yes I am trying to map F13 to F19 like I did on macOS with a German keyboard
F13 -> Screenshot
F14 -> Copy
F15 -> Paste
F16 -> [
F17 -> ]
F18 ->
F19 -> show Desktop
That works perfectly on a PC and is really useful, since the standard square brackets and backslash heavily used upon programming are only reachable over 3-key combinations on a Mac German keyboard.
Once you have used 'single key' copy-paste for a few weeks, you  would never want to miss is again, believe me !
The only problem comes when I use the same profiles on a Mac running Boot Camp Windows.
Then the your keyboard manager works as well, but the Boot Camp driver keeps assigning its functions.
So after a copy with F14, a Print is executed as well and after a paste with F15, a scroll lock too.
After a [ with F16 a pause is executed.
These additional "keys" interfere with many programs leading to a weird behaviour.
I am aware that is a very niche situation and requires a Mac with Boot Camp and a full keyboard to reproduce.
I also think that correcting Boot Camp would be the right place to solve it, but Apple won't care helping Windows users, for sure.
So if someone feels challenged to grab the key before Boot Camp sees it or maybe empty the keyboard buffer after reassigning keys, that would help me to "evangelize" the Mac users.
On the other side, the Mac keyboard is really friendly to issue special characters, there are many good assignments to take over from their keyboard shortcuts.
Regards

Thanks for the added info. Definitely will have to be someone who can replicate this locally. Though I see some challenges here. What we are doing is manipulating the keys in a low-level keyboard hook and sending them on their way, it's then seen/manipulated by the remaining applications. I don't think it's possible to ignore one of those while still having the keystrokes reach their intended application.

What we are doing is manipulating the keys in a low-level keyboard hook and sending them on their way, it's then seen/manipulated by the remaining applications.

Apparently the Boot Camp drivers  are running at an even lower level, they still see and process the F14 to F16 Keys originally.

Are you still experiencing this issue? /needinfo

Yes it is still there...


Posterior-compatible target transformations

Currently, getting access the posterior distribution when transformed targets are involved is not possible (e.g. for DesirabilityObjective or even SingleTargetObjective when the target itself has a transformation).
The problem causing the issue is that we apply these transformations on the target values first and only then build the model on the transformed values. Logically, that is exactly the same issue already solved in https://github.com/emdgroup/baybe/pull/340 for the "MIN" transform.
And the solution is also the same: Instead of building the model on the transformed targets and then running into problems of not being able to invert the transformation (like with "BELL"), we should simply by default build the model on the actual targets and then transform the obtained posterior. That is, for example, the desirability averaging would happen at a later stage using botorch's transforms. Plus it comes with the benefit that we can offer surrogates for both the raw targets as well as derived values. So in future we can make the DesirabilityObjective return N surrogates for the N targets involved plus an N+1 surrogate modeling the desirability posterior values. Similarly, for the upcoming ParetoObjective.

#386 removed some of the restrictions and now also returnes the model if the target/objective was transformed
One posterior compatible transformations are inplace we could provide get_surrogate with an option whether to provide models regarding the raw targets or the transformed quantities


[FSPE-7772] Added support of formatting of Date WC

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-48/1/. :white_check_mark:

You can check this PRs instance in https://6d5377c7486961a3684f28361c025ce58eea9349-chi-pr.enterprise.ctl.io

The CI pipeline did not run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-48/2/. :x:

The CI pipeline run successfully in https://jenkinsprod.corp.intranet:8443/job/UX-CHI/job/Productive/job/Chi/job/PR-48/3/. :white_check_mark:

You can check this PRs instance in https://0c2e79c7c9db8f4395548c1c98b90ca9d780c18d-chi-pr.enterprise.ctl.io


Add LocalSSAElimPass

This pass is another in a series designed to reduce the size of SPIR-V files.
For every entry point function, eliminate all loads and stores of function
scope variables only referenced with non-access-chain loads and stores.
Eliminate the variables as well.
Only shader modules with logical addressing are currently processed.
In addition, modules with any extensions enabled are not processed. This
is left for future work.
The presence of access chain references and function calls can inhibit
this optimization. Hence, this pass is most effective if preceeded by exhaustive inlining
and  LocalAccessChainConvert.
LocalSingleStoreElim, LocalSingleBlockElim and other code reduction passes (eg DeadBranchElimination) will reduce the work that this pass has to do.

I was iterating though an unordered set which caused a slight diff on one of the platforms. Will fix.

I think I have addressed all issues/concerns up to this point. Let me know if there is anything I missed or anything else.

Rebased, squashed, and pushed into master as cc8bad3a5


fix a race condition in orm broker

Hello again,
There is a race condition in ORM broker here:
    def dequeue(self):
        tasks = self.get_connection().filter(key=self.list_key, lock__lt=_timeout())[0:Conf.BULK]
        if tasks:
            task_list = []
            lock = timezone.now()
            for task in tasks:
                task.lock = lock
                task.save(update_fields=['lock'])                # <===== Race condition here
                task_list.append((task.pk, task.payload))
            return task_list
        # empty queue, spare the cpu
        sleep(Conf.POLL)

If 2 qclusters are running at the same time, both could select the same task, then update the lock (the second update would overwrite the first one) and both workers would run the same task.
Here is a simple way to solve this issue:
    def dequeue(self):
        tasks = self.get_connection().filter(key=self.list_key, lock__lt=_timeout())[0:Conf.BULK]
        if tasks:
            task_list = []
            for task in tasks:
                if self.get_connection().filter(id=task.id, lock=task.lock).update(lock=timezone.now()):
                    task_list.append((task.pk, task.payload))
                # else don't process, as another cluster has been faster than us on that task
            return task_list
        # empty queue, spare the cpu
        sleep(Conf.POLL)

The update is performed with a WHERE clause specifying the old lock value and we check if the row is updated or not.
The worker that successfully updated the task owns it for timeout seconds and can process it. The other one just skip that task.
Cheers,
Yann.

This pull request should also solve issue https://github.com/Koed00/django-q/issues/183

Current coverage is 91.12% (diff: 100%)

Merging #213 into master will decrease coverage by 5.53%

@@             master       #213   diff @@
==========================================
  Files            40         40
  Lines          2694       2692     -2
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           2604       2453   -151
- Misses           90        239   +149
  Partials          0          0

Powered by Codecov. Last update 82c48cd...bbd2e82

Thanks for helping out with this. The ORM broker was really just an afterthought and probably never got the attention it deserved.
I'm currently in a sprint for another app and probably won't have time to fix the tests and make a new release soon. Hope I can release all of these fixes before Christmas.


fix some fixable eslint issues

Hi there,
I jumped into this repo through GSOC. I just cloned the repo and saw some minor issues and fixed them.
npm run build was working fine btw.
Do you have any plans to write interface stuff. seems more of them needs to be resolved. Thanks!
@fabjan @jouni-kantola @NemoStein @ratatoeskr666 @JConan

Thanks @shalithasuranga , Also one thing more, also interested in GSOC as well. Where to send proposals ? May be I could give some ideas!


Bug report: "Operation not permitted" when installing parallels-access

Description of issue
I'm trying to install Parallels Access. This failes with Operation not permitted but more on that below. I have looked into the PRs that added the cask and there was some discussion going on but since I'm new in the Mac and homebrew world I couldn't really find out more about my issue.
Output of `brew cask install parallels-access --verbose`
I skipped the downloading output.
==> Verifying checksum for Cask parallels-access
==> ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
Error: Command failed to execute!

==> Failed command:
/usr/bin/ditto --bom /var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20161118-34303-8e1s7c.bom -- /private/tmp/dmg.g91GOH #<Pathname:/usr/local/Caskroom/parallels-access/3.0.2-30719>

==> Standard Output of failed command:

==> Standard Error of failed command:
ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted

==> Exit status of failed command:
#<Process::Status: pid 34468 exit 1>
Error: Kernel.exit

Output of `brew doctor`
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
  /Applications/Postgres.app/Contents/Versions/latest/bin/gdal-config

Warning: Broken symlinks were found.

No this didn't solve the issue.
But I'm using fish shell so I had to change the command a little bit. Just to clarify: The command you posted above should make my local user the owner of the Caskroom folder, right?
And sorry for not settings the issue title 😢  Just forgot that.

Could you run brew cask install parallels-access --verbose --debug and paste the output here in a  <details> tag like in the OP?

Output of `brew cask install parallels-access --verbose --debug`
==> Loading Cask definitions
==> Translating 'parallels-access' into a valid Cask source
==> Testing source class Hbc::Source::URI
==> Testing source class Hbc::Source::PathSlashRequired
==> Testing source class Hbc::Source::TappedQualified
==> Testing source class Hbc::Source::UntappedQualified
==> Testing source class Hbc::Source::Tapped
==> Success! Using source class Hbc::Source::Tapped
==> Resolved Cask URI or file source to '/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/Casks/parallels-access.rb'
==> Cask instance dumps in YAML:
Warning: Unexpected method 'encode_with' called on Cask parallels-access.
Follow the instructions here:
  https://github.com/caskroom/homebrew-cask/blob/master/doc/reporting_bugs/pre_bug_report.md
If this doesn’t fix the problem, please report this bug:
https://github.com/caskroom/homebrew-cask#reporting-bugs
==> Cask instance toplevel:
--- !ruby/object:Hbc::Cask
token: parallels-access
sourcefile_path: !ruby/object:Pathname
path: /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/Casks/parallels-access.rb
dsl: !ruby/object:Hbc::DSL {}
==> Cask instance method 'name':

Parallels Access
==> Cask instance method 'homepage':
--- https://www.parallels.com/products/access/
...
==> Cask instance method 'url':
--- !ruby/object:Hbc::URL
uri: !ruby/object:URI::HTTPS
scheme: https
user:
password:
host: download.parallels.com
port: 443
path: /pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg
query:
opaque:
registry:
fragment:
parser:
user_agent:
cookies:
referer:
using:
revision:
trust_cert:
data:
==> Cask instance method 'appcast':

...
==> Cask instance method 'version':
--- !ruby/string:Hbc::DSL::Version
str: !binary |-
My4wLjItMzA3MTk=
raw_version: 3.0.2-30719
==> Cask instance method 'sha256':
--- afafadd6f3e384c0e421b10eb827f83fa65b60206c938431c9c20083d6a0f252
...
==> Cask instance method 'artifacts':
:installer: !ruby/object:Set
hash:
? !ruby/object:Hbc::DSL::Installer
script:
:args:
- instance_install
:sudo: true
:executable: Parallels Access.app/Contents/MacOS/pm_ctl
: true
:uninstall: !ruby/object:Set
hash:
? :launchctl:
- com.parallels.mobile.startgui.launchagent
- com.parallels.mobile.dispatcher.launchdaemon
- com.parallels.mobile.kextloader.launchdaemon
- com.parallels.mobile.prl_deskctl_agent.launchagent
:quit:
- com.parallels.inputmethod.ParallelsIM
:signal:
- - TERM
- com.parallels.mobile
- - TERM
- com.parallels.mobile.prl_deskctl_agent
:kext:
- com.parallels.virtualhid
- com.parallels.virtualsound
:delete: /Applications/Parallels Access.app
: true
:zap: !ruby/object:Set
hash:
? :delete:
- ~/Library/Cookies/com.parallels.mobile.prl_deskctl_agent.binarycookies
- ~/Library/Group Containers/4C6364ACXT.com.parallels.Access
- ~/Library/Preferences/com.parallels.Parallels Access.plist
- ~/Library/Preferences/com.parallels.Parallels Access.plist.sdb
- ~/Library/Preferences/com.parallels.mobile.plist
: true
==> Cask instance method 'caveats':
--- []
==> Cask instance method 'depends_on':
...
==> Cask instance method 'conflicts_with':
...
==> Cask instance method 'container':
...
==> Cask instance method 'gpg':
...
==> Cask instance method 'accessibility_access':
...
==> Cask instance method 'auto_updates':
...
==> Hbc::Installer.install
==> Printing caveats
==> Downloading
==> Downloading https://download.parallels.com/pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg
==> Calling curl with args ["https://download.parallels.com/pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg", "-C", "0", "-o", "#Pathname:/Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg.incomplete"]
/usr/bin/curl --fail --remote-time --location --user-agent Homebrew/1.1.1 (Macintosh; Intel macOS 10.12.1) curl/7.49.1 https://download.parallels.com/pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg -C 0 -o /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg.incomplete
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100 97.1M  100 97.1M    0     0  2630k      0  0:00:37  0:00:37 --:--:-- 3021k
==> Downloaded to -> /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg
==> Verifying download
==> Determining which verifications to run for Cask parallels-access
==> Checking for verification class Hbc::Verify::Checksum
==> 1 verifications defined
Hbc::Verify::Checksum
==> Running verification of class Hbc::Verify::Checksum
==> Verifying checksum for Cask parallels-access
==> SHA256 checksums match
==> Extracting primary container
==> Determining which containers to use based on filetype
==> Checking container class Hbc::Container::Pkg
==> Checking container class Hbc::Container::Ttf
==> Checking container class Hbc::Container::Otf
==> Checking container class Hbc::Container::Air
==> Checking container class Hbc::Container::Cab
==> Checking container class Hbc::Container::Dmg
==> Executing: ["/usr/bin/hdiutil", "imageinfo", "/Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg"]
==> Using container class Hbc::Container::Dmg for /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg
==> Executing: ["/usr/bin/hdiutil", "mount", "-plist", "-nobrowse", "-readonly", "-noidme", "-mountrandom", "/tmp", "/Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg"]
==> Executing: ["/usr/bin/mkbom", "-s", "-i", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20161119-77500-1ke6mkj.list", "--", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20161119-77500-k156h2.bom"]
==> Executing: ["/usr/bin/ditto", "--bom", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20161119-77500-k156h2.bom", "--", "/private/tmp/dmg.9z8wfw", "/usr/local/Caskroom/parallels-access/3.0.2-30719"]
==> ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
==> Executing: ["/usr/sbin/diskutil", "eject", "/private/tmp/dmg.9z8wfw"]
==> Purging files for version 3.0.2-30719 of Cask parallels-access
Error: Command failed to execute!
==> Failed command:
/usr/bin/ditto --bom /var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20161119-77500-k156h2.bom -- /private/tmp/dmg.9z8wfw #Pathname:/usr/local/Caskroom/parallels-access/3.0.2-30719
==> Standard Output of failed command:
==> Standard Error of failed command:
ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
==> Exit status of failed command:
#<Process::Status: pid 77976 exit 1>
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/system_command.rb:66:in assert_success' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/system_command.rb:35:in run!'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/system_command.rb:13:in run' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/system_command.rb:17:in run!'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:75:in block (2 levels) in extract_mount' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tempfile.rb:324:in open'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:70:in block in extract_mount' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tempfile.rb:324:in open'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:67:in extract_mount' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:63:in each'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:63:in extract_mounts' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/container/dmg.rb:25:in extract'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/installer.rb:123:in extract_primary_container' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/installer.rb:72:in install'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:25:in block in install_casks' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:19:in each'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:19:in install_casks' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:10:in run'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:110:in run_command' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:149:in process'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/brew-cask.rb:8:in <top (required)>' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require' /usr/local/Homebrew/Library/Homebrew/brew.rb:24:in require?'
/usr/local/Homebrew/Library/Homebrew/brew.rb:100:in <main>' Error: Kernel.exit /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:154:in exit'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:154:in rescue in process' /usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:144:in process'
/usr/local/Homebrew/Library/Homebrew/cask/cmd/brew-cask.rb:8:in <top (required)>' /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in require' /usr/local/Homebrew/Library/Homebrew/brew.rb:24:in require?'
/usr/local/Homebrew/Library/Homebrew/brew.rb:100:in `'

@jawshooah any follow-up on this issue?

@LukasMa are you still having this issue?

Same problem:

Output of brew cask install parallels-access --verbose --debug
==> Loading Cask definitions
==> Translating 'parallels-access' into a valid Cask source
==> Testing source class Hbc::Source::URI
==> Testing source class Hbc::Source::PathSlashRequired
==> Testing source class Hbc::Source::TappedQualified
==> Testing source class Hbc::Source::UntappedQualified
==> Testing source class Hbc::Source::Tapped
==> Success! Using source class Hbc::Source::Tapped
==> Resolved Cask URI or file source to '/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/Casks/parallels-access.rb'
==> Cask instance dumps in YAML:
==> Cask instance toplevel:
--- !ruby/object:Hbc::Cask
token: parallels-access
sourcefile_path: !ruby/object:Pathname
  path: /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask/Casks/parallels-access.rb
dsl: !ruby/object:Hbc::DSL {}
==> Cask instance method 'name':
---
- Parallels Access
==> Cask instance method 'homepage':
--- https://www.parallels.com/products/access/
...
==> Cask instance method 'url':
--- !ruby/object:Hbc::URL
uri: !ruby/object:URI::HTTPS
  scheme: https
  user:
  password:
  host: download.parallels.com
  port: 443
  path: /pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg
  query:
  opaque:
  registry:
  fragment:
  parser:
user_agent:
cookies:
referer:
using:
revision:
trust_cert:
data:
==> Cask instance method 'appcast':
---
...
==> Cask instance method 'version':
--- !ruby/string:Hbc::DSL::Version
str: !binary |-
  My4wLjItMzA3MTk=
raw_version: 3.0.2-30719
==> Cask instance method 'sha256':
--- afafadd6f3e384c0e421b10eb827f83fa65b60206c938431c9c20083d6a0f252
...
==> Cask instance method 'artifacts':
---
:installer: !ruby/object:Set
  hash:
    ? !ruby/object:Hbc::DSL::Installer
      script:
        :args:
        - instance_install
        :sudo: true
        :executable: Parallels Access.app/Contents/MacOS/pm_ctl
    : true
:uninstall: !ruby/object:Set
  hash:
    ? :launchctl:
      - com.parallels.mobile.startgui.launchagent
      - com.parallels.mobile.dispatcher.launchdaemon
      - com.parallels.mobile.kextloader.launchdaemon
      - com.parallels.mobile.prl_deskctl_agent.launchagent
      :quit:
      - com.parallels.inputmethod.ParallelsIM
      :signal:
      - - TERM
        - com.parallels.mobile
      - - TERM
        - com.parallels.mobile.prl_deskctl_agent
      :kext:
      - com.parallels.virtualhid
      - com.parallels.virtualsound
      :delete: /Applications/Parallels Access.app
    : true
:zap: !ruby/object:Set
  hash:
    ? :delete:
      - ~/Library/Cookies/com.parallels.mobile.prl_deskctl_agent.binarycookies
      - ~/Library/Group Containers/4C6364ACXT.com.parallels.Access
      - ~/Library/Preferences/com.parallels.Parallels Access.plist
      - ~/Library/Preferences/com.parallels.Parallels Access.plist.sdb
      - ~/Library/Preferences/com.parallels.mobile.plist
    : true
==> Cask instance method 'caveats':
--- []
==> Cask instance method 'depends_on':
---
...
==> Cask instance method 'conflicts_with':
---
...
==> Cask instance method 'container':
---
...
==> Cask instance method 'gpg':
---
...
==> Cask instance method 'accessibility_access':
---
...
==> Cask instance method 'auto_updates':
---
...
==> Hbc::Installer#install
==> Printing caveats
==> Hbc::Installer#fetch
==> Downloading
==> Downloading https://download.parallels.com/pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg
Already downloaded: /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg
==> Downloaded to -> /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg
==> Verifying download
==> Determining which verifications to run for Cask parallels-access
==> Checking for verification class Hbc::Verify::Checksum
==> 1 verifications defined
Hbc::Verify::Checksum
==> Running verification of class Hbc::Verify::Checksum
==> Verifying checksum for Cask parallels-access
==> SHA256 checksums match
==> Hbc::Installer#stage
==> Extracting primary container
==> Determining which containers to use based on filetype
==> Checking container class Hbc::Container::Pkg
==> Checking container class Hbc::Container::Ttf
==> Checking container class Hbc::Container::Otf
==> Checking container class Hbc::Container::Air
==> Checking container class Hbc::Container::Cab
==> Checking container class Hbc::Container::Dmg
==> Executing: ["/usr/bin/hdiutil", "imageinfo", "/Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg"]
==> Using container class Hbc::Container::Dmg for /Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg
==> Executing: ["/usr/bin/hdiutil", "mount", "-plist", "-nobrowse", "-readonly", "-noidme", "-mountrandom", "/tmp", "/Users/lukasmalkmus/Library/Caches/Homebrew/Cask/parallels-access--3.0.2-30719.dmg"]
==> Executing: ["/usr/bin/mkbom", "-s", "-i", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20170106-55674-1dnu4gn.list", "--", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20170106-55674-1qwoaow.bom"]
==> Executing: ["/usr/bin/ditto", "--bom", "/var/folders/dy/s6dd70892l35f0444cwt96t40000gn/T/20170106-55674-1qwoaow.bom", "--", "/private/tmp/dmg.pfYus3", "/usr/local/Caskroom/parallels-access/3.0.2-30719"]
==> ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
==> Executing: ["/usr/sbin/diskutil", "eject", "/private/tmp/dmg.pfYus3"]
==> Purging files for version 3.0.2-30719 of Cask parallels-access

After some testing, I believe I may have found the problem. Downloading the .dmg file manually I found it contains a single file, namely Install.app. If I move the .app out of the .dmg and try to run it, I get the following error:

So you must run the Install.app from inside the .dmg.
Now, I think when a Cask downloads a .dmg, it extracts everything and then attempts to run whatever it needs to run, hence why the parallels-access Cask is failing.
@vitorgalvao does that sound logical?

@miccal If you look inside the mounted dmg (ls '/Volumes/Parallels Access'), you’ll see other files, among them Parallels Access.app which is what we use to install. We bypass Install.app.
To verify this, we should run that install script manually both when the app is inside the dmg and outside, and see the difference.

@vitorgalvao I would never have thought that an app inside a dmg would be hidden. Learning a lot this week!
-bash-4.4.5- /Users/raesy [> cd "/Volumes/Parallels Access/Parallels Access.app/Contents/MacOS"
-bash-4.4.5- /Volumes/Parallels Access/Parallels Access.app/Contents/MacOS [> ls
CookieReader				Parallels Service			pm_ctl					prl_sound_usage
Parallels Access Agent.app		pax_updater_ctl				prl_deskctl_wizard
Parallels Access Dispatcher Service.app	paxctl					prl_perf_ctl
-bash-4.4.5- /Volumes/Parallels Access/Parallels Access.app/Contents/MacOS [> sudo bash pm_ctl instance_install
Password:
Jan  7 12:06:22  pm_ctl[500] <Error>: Parallels Access seems not to be installed
ditto: /Applications/Parallels Access.app/Contents/PkgInfo: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents/_CodeSignature/CodeResources: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents/_CodeSignature: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents/Info.plist: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents/MacOS/prl_virtual_hid: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents/MacOS: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext/Contents: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_hid.kext: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents/_CodeSignature/CodeResources: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents/_CodeSignature: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents/Info.plist: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents/MacOS/prl_virtual_sound: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents/MacOS: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext/Contents: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9/prl_virtual_sound.kext: Operation not permitted
chown: /Applications/Parallels Access.app/Contents/Library/Extensions/10.9: Operation not permitted
chgrp: you are not a member of group accessibility
chown: /Applications/Parallels Access.app/Contents/MacOS/Parallels Service: Operation not permitted
Jan  7 12:06:25  pm_ctl[532] <Info>: Writing Stat Info about installation
pm_ctl: line 340: /var/db/Parallels/Stats/Parallels Access.3.1.5: Permission denied
mkdir: /Library/Preferences/Parallels: Permission denied
Jan  7 12:06:25  pm_ctl[536] <Error>: Failed to store bundle location

Running the install script manually produces the same error:
ditto: /Applications/Parallels Access.app/Contents/PkgInfo: Operation not permitted

BUT Parallels Access installs correctly and is working (as far as I can tell without a Parallels account).
Would adding must_succeed: false fix this issue?

Would adding must_succeed: false fix this issue?

Still waiting on Veertu to be able to use VMs again, so can’t test yet. Care to spin one? Or maybe you can do it, @LukasMa?

@vitorgalvao Okay, so you want me to edit the parallels-access recipe, add must_succeed: false and try installation again?

Okay, so you want me to edit the parallels-access recipe, add must_succeed: false and try installation again?

Yes. So brew cask edit parallels-access, and add must_succeed: false to the installer part.

Yes. So brew cask edit parallels-access, and add must_succeed: false to the installer part.

Did not work, unfortunately - same error:
==> Failed command:
/usr/bin/ditto --bom /var/folders/4w/l_n7g7157qzcg9vlxrwkbgzr0000gn/T/20170108-7863-7oso9s.bom -- /private/tmp/dmg.vGZmwO #<Pathname:/usr/local/Caskroom/parallels-access/3.1.5-31304>
==> Standard Error of failed command:
ditto: /usr/local/Caskroom/parallels-access/3.1.5-31304/Parallels Access.app/Contents/PkgInfo: Operation not permitted

We should run that install script manually both when the app is inside the dmg and outside, and see the difference.

I updated the Cask file locally to the latest version (3.1.5-31304), moved the app from the cache outside the dmg, and ran the install script manually:
Jan  8 12:10:38  pm_ctl[7988] <Info>: Check 'prl_virtual_sound' versions: loaded '1.0.36 36', new '1.0.36 36'
Jan  8 12:10:38  pm_ctl[7989] <Info>: Kext 'prl_virtual_sound' update should be skipped
Jan  8 12:10:38  pm_ctl[7991] <Error>: Parallels Access seems not to be installed
Jan  8 12:10:38  pm_ctl[7999] <Error>: Launch agent com.parallels.mobile.prl_deskctl_agent.launchagent failed to unload
Jan  8 12:10:38  pm_ctl[8000] <Error>: Launch agent com.parallels.mobile.prl_deskctl_agent.launchagent failed to unload
ditto: /Applications/Parallels Access.app/Contents/PkgInfo: Operation not permitted
Jan  8 12:10:41  pm_ctl[8025] <Info>: Writing Stat Info about installation
Jan  8 12:10:41  pm_ctl[8038] <Info>: Users saved RunAtLoad mode is set to:
/Library/LaunchDaemons/com.parallels.mobile.dispatcher.launchdaemon.plist: service already loaded
/Library/LaunchAgents/com.parallels.mobile.prl_deskctl_agent.launchagent.plist: service already loaded
Jan  8 12:10:41  pm_ctl[8052] <Info>: Creating directory for prl_deskctl_wizards .pid files
Jan  8 12:10:42  pm_ctl[8060] <Info>: Check 'prl_virtual_sound' versions: loaded '1.0.36 36', new '1.0.36 36'
Jan  8 12:10:42  pm_ctl[8061] <Info>: Kext 'prl_virtual_sound' update should be skipped
Jan  8 12:10:42  pm_ctl[8070] <Info>: Check 'prl_virtual_hid' versions: loaded '1.0.3 3', new '1.0.3 3'
Jan  8 12:10:42  pm_ctl[8071] <Info>: Kext 'prl_virtual_hid' update should be skipped
/Library/LaunchDaemons/com.parallels.mobile.kextloader.launchdaemon.plist: service already loaded
Jan  8 12:10:42  pm_ctl[8079] <Info>: Enabling Parallels input method
Jan  8 12:10:44  pm_ctl[8095] <Info>: No Deploy ID. Using Old-way init.
Jan  8 12:10:44  pm_ctl[8096] <Info>: Trying to load Parallels kernel extensions, exit status: .
ln: /usr/bin/paxctl: Operation not permitted
pm_ctl: line 66: ((: == 10 : syntax error: operand expected (error token is "== 10 ")
Jan  8 12:10:44  pm_ctl[8101] <Error>: PAX is not listed in database but Sqlite3 is available. Adding fields.
Error: table access has 7 columns but 6 values were supplied

Note the same error:
ditto: /Applications/Parallels Access.app/Contents/PkgInfo: Operation not permitted

but the install was successful, as before.

Still waiting on Veertu to be able to use VMs again, so can’t test yet.

What are you waiting for, support for Sierra? When it happens, I would be interested to know how you do this for testing - my "testing machine" is actually my wife's computer (which is in fact my old MacBook Pro), and I do not think she appreciates me using her computer as a "guinea pig".

What are you waiting for, support for Sierra?

I’m waiting for them to support macOS guests (they currently only support Linux and Windows guests). I’ve been waiting for it for months. They eventually gave an ETA: “will be done in two months”. That was four months ago. These things take time and they ran into some delays, so definitely not criticising. Last time I asked (December) they were hoping for a private beta this month to me made public shortly after.
I do have an old VMWare Fusion license, but they essentially ask for you to pay for it again every year (not explicitly a subscription service, but might as well be), and that cost is a bit high to justify since I only use it for this (free open-source work). Still, my old version was still working (had to install old macOS versions on it and upgrade from the VM itself, instead of doing clean installs), though worse each time. Eventually (not sure what changed) running VMWare Fusion started freezing my machine forcing me to force reboot, so I abandoned it completely.
VMWare Fusion ended up essentially getting the axe anyway (before the freezing problems), so it isn’t an option. I also don’t like Parallels (and it is/was even more expensive).
Veertu is now the best option. Relatively cheap, and since it uses Apple’s own Hypervisor.framework it won’t need serious updates with new macOS versions, meaning they shouldn’t keep asking for money.

Interesting, thank for your detailed answer.

@miccal I think I missed something. Can you explain me the exact steps you made? I can't reproduce the behaviour you're talking about.

So brew cask edit parallels-access, and add must_succeed: false to the installer part.
That's what I did and I still get the same error and the installation isn't successfull.

@LukasMa what behaviour are you referring to?

As far as I understood, you were able to modify the installation script in a way which makes the installation actually succeed while still getting the same error message.
Or have I completely misunderstood you?

Yes you have misunderstood - I was running the install script included with the app manually, completely outside Cask.

Possibly related.

OK, I am certain this is a problem with Cask itself, not the parallels-access.rb Cask file.
For proof, I ran brew cask edit parallels-access and changed parallels-access.rb to the following:
cask 'parallels-access' do
  version '3.0.2-30719'
  sha256 'afafadd6f3e384c0e421b10eb827f83fa65b60206c938431c9c20083d6a0f252'

  url "https://download.parallels.com/pmobile/v#{version.major}/#{version.major_minor_patch}/ParallelsAccess-#{version}-mac.dmg"
  name 'Parallels Access'
  homepage 'https://www.parallels.com/products/access/'

  stage_only true
end

which should do nothing but migrate the dmg contents to the Caskroom (like the libreoffice-language-pack.rb Cask).
Then the output of brew cask info parallels-access was:
-bash-4.4.5- /Users/miccal [> brew cask info parallels-access
parallels-access: 3.0.2-30719
https://www.parallels.com/products/access/
Not installed
From: https://github.com/caskroom/homebrew-cask/blob/master/Casks/parallels-access.rb
==> Name
Parallels Access
==> Artifacts
-bash-4.4.5- /Users/miccal [>

Then brew cask install parallels-access fails:
-bash-4.4.5- /Users/miccal [> brew cask install parallels-access
==> Downloading https://download.parallels.com/pmobile/v3/3.0.2/ParallelsAccess-3.0.2-30719-mac.dmg
######################################################################## 100.0%
==> Verifying checksum for Cask parallels-access
==> ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
Error: Command failed to execute!
==> Failed command:
/usr/bin/ditto --bom /var/folders/nd/58wf_rj13b3b0tcvk0vq30zc0000gn/T/20170110-21873-jvfkxk.bom -- /private/tmp/dmg.zmgxZ8 #<Pathname:/usr/local/Caskroom/parallels-access/3.0.2-30719>
==> Standard Output of failed command:
==> Standard Error of failed command:
ditto: /usr/local/Caskroom/parallels-access/3.0.2-30719/Parallels Access.app/Contents/PkgInfo: Operation not permitted
==> Exit status of failed command:
#<Process::Status: pid 22056 exit 1>
Error: nothing to install
-bash-4.4.5- /Users/miccal [>

Ping @reitermarkus for any advice.

@miccal I can reproduce this with stage_only on the latest version.
cask 'parallels-access' do
  version '3.1.6-31326'
  sha256 '1713e25c009785bb53f8eb1d193155a4c401ebba4361ce577e3e5c16f3ce787e'

  url "https://download.parallels.com/pmobile/v#{version.major}/#{version}/ParallelsAccess-#{version}-mac.dmg"
  name 'Parallels Access'
  homepage 'https://www.parallels.com/products/access/'

  stage_only true
end

brew cask install parallels-access.rb --verbose --debug

```
==> Hbc::Installer#install
==> Printing caveats
==> Hbc::Installer#fetch
==> Downloading
==> Downloading https://download.parallels.com/pmobile/v3/3.1.6-31326/ParallelsAccess-3.1.6-31326-mac.dmg
Already downloaded: /Users/commitay/Library/Caches/Homebrew/Cask/parallels-access--3.1.6-31326.dmg
==> Downloaded to -> /Users/commitay/Library/Caches/Homebrew/Cask/parallels-access--3.1.6-31326.dmg
==> Verifying download
==> Determining which verifications to run for Cask parallels-access
==> Checking for verification class Hbc::Verify::Checksum
==> 1 verifications defined
Hbc::Verify::Checksum
==> Running verification of class Hbc::Verify::Checksum
==> Verifying checksum for Cask parallels-access
==> SHA256 checksums match
==> Hbc::Installer#stage
==> Extracting primary container
==> Determining which containers to use based on filetype
==> Checking container class Hbc::Container::Pkg
==> Checking container class Hbc::Container::Ttf
==> Checking container class Hbc::Container::Otf
==> Checking container class Hbc::Container::Air
==> Checking container class Hbc::Container::Cab
==> Checking container class Hbc::Container::Dmg
==> Executing: ["/usr/bin/hdiutil", "imageinfo", "/Users/commitay/Library/Caches/Homebrew/Cask/parallels-access--3.1.6-31326.dmg"]
==> Using container class Hbc::Container::Dmg for /Users/commitay/Library/Caches/Homebrew/Cask/parallels-access--3.1.6-31326.dmg
==> Executing: ["/usr/bin/hdiutil", "mount", "-plist", "-nobrowse", "-readonly", "-noidme", "-mountrandom", "/tmp", "/Users/commitay/Library/Caches/Homebrew/Cask/parallels-access--3.1.6-31326.dmg"]
==> Executing: ["/usr/bin/mkbom", "-s", "-i", "/var/folders/t5/btq1kqfx15q3h9f6xvb0bk6c0000gn/T/20170409-5642-10k7omf.list", "--", "/var/folders/t5/btq1kqfx15q3h9f6xvb0bk6c0000gn/T/20170409-5642-5qi489.bom"]
==> Executing: ["/usr/bin/ditto", "--bom", "/var/folders/t5/btq1kqfx15q3h9f6xvb0bk6c0000gn/T/20170409-5642-5qi489.bom", "--", "/private/tmp/dmg.JeTdcp", "/usr/local/Caskroom/parallels-access/3.1.6-31326"]
==> ditto: /usr/local/Caskroom/parallels-access/3.1.6-31326/Parallels Access.app/Contents/PkgInfo: Operation not permitted
==> Executing: ["/usr/sbin/diskutil", "eject", "/private/tmp/dmg.JeTdcp"]
==> Purging files for version 3.1.6-31326 of Cask parallels-access
Error: Command failed to execute!

==> Failed command:
/usr/bin/ditto --bom /var/folders/t5/btq1kqfx15q3h9f6xvb0bk6c0000gn/T/20170409-5642-5qi489.bom -- /private/tmp/dmg.JeTdcp #

==> Standard Output of failed command:

==> Standard Error of failed command:
ditto: /usr/local/Caskroom/parallels-access/3.1.6-31326/Parallels Access.app/Contents/PkgInfo: Operation not permitted

==> Exit status of failed command:
#
Error: nothing to install/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli/install.rb:13:in `run'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:115:in `run_command'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:158:in `process'
/usr/local/Homebrew/Library/Homebrew/cmd/cask.rb:8:in `cask'
/usr/local/Homebrew/Library/Homebrew/brew.rb:91:in `'
Error: Kernel.exit
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:163:in `exit'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:163:in `rescue in process'
/usr/local/Homebrew/Library/Homebrew/cask/lib/hbc/cli.rb:149:in `process'
/usr/local/Homebrew/Library/Homebrew/cmd/cask.rb:8:in `cask'
/usr/local/Homebrew/Library/Homebrew/brew.rb:91:in `'
```

OK, I am certain this is a problem with Cask itself, not the parallels-access.rb Cask file.

I agree with your assessment, it is cask failing. This command is where it fails but as it works for all the other .dmg installs in caskroom, I think it must be something parallels has done.
As the cask can't even reach the point it's staged, I don't think there is any we can do about this.

Fixed by @commitay in https://github.com/caskroom/homebrew-cask/pull/32174.


[ticket_32425] MySQL Schema is different about the same class definitions.

ticket link: https://code.djangoproject.com/ticket/32425#ticket
Hi, team. I wanna fix some picky issue.
I suggest below code for solving this problem. (same code creates different schemas)
but It has duplicate code with base/schema.py _alter_column_default_sql.
We can do like this. but it need to one more SQL.
For mysql users, performance is not good, but better than schema changes.
mysql/schema.py
def _alter_column_default_sql(self, model, old_field, new_field, drop=False):
      super()._alter_column_default_sql(model, old_field, new_field, drop)

      if drop and new_field.null:
          new_db_params = new_field.db_parameters(connection=self.connection)
          new_default = self.effective_default(new_field)
          default = self._column_default_sql(new_field)
          params = [new_default]
          sql = self.sql_alter_column_default_null
          return (
              sql % {
                  'column': self.quote_name(new_field.column),
                  'type': new_db_params['type'],
                  'default': default,
              },
              params,
          )

@charettes Thank you for reviewing the suggestion.
I updated the code according to your guide.
Could you check this? https://github.com/django/django/pull/13982
If this is proper to what you're saying, I will add testcases.
And I wanna check where is it right to put the testcases.
I guess tests/backends/test_schema.py.

@charettes I updated your review. and I think the testcase you suggest is enough for this case(small changes). And i modified  a few things from your suggestion. The definition was slightly different according to db, so I modified that part.
If you think to need more test cases or anything, tell me!

@charettes  I updated your review! Thanks!

@baidoosik Thanks :+1: Welcome aboard :boat:
I fixed crash on Oracle.

buildbot, test on oracle.

@felixxm Big Thanks! I will try to join the community through this chance!

buildbot, test on oracle.


Source Editor: Position is lost on save

When saving a source file the current position is lost. The editor reverts back to line-1 of the main source file.

@corani This works for me - the cursor stays in the same line (but column 1) when I click "Save" in the Source editor.

I just noticed that things work fine in debug mode (--debug), but not in normal mode. No idea why that should make a difference though...

The difference could be that livereload is not enabled in debug mode currently

Good point! So probably livereload triggers a page reload before the save action has had the chance to redirect the user to the correct page (including filename and lineno)

Ahh of course, good catch @corani and @yagebu.
Because on a "Save" the file is changed on the disk, livereload reloads the page (as it should when a source file on disk changes.)


Seems that api has changed

I get this now
Error: Couldn't get access token from 'https://api.imgur.com/oauth2/token'

And the webpage says that some required fields were missing

It's working for me. Maybe the API was down. Is this still an issue?
If it's still broken, can you pull from master and provide the output, please?

I get
Upload failed: "curl: (22) The requested URL returned error: 400 Bad Request"

oh...I deleted the credentials file. And it works now. maybe it was expired I don't know D:

Yep, that happens when you make calls to imgur's API with invalid parameters.
I will leave this open and consider adding some extra checks, though.


Example pot (and other pots) fail in allocation

Running the latest nomad, consul and pot from FreeBSD pkg I get the following error:
Feb 26, '20 11:02:26 +0100 | Killing | Sent interrupt. Waiting 5s before force killing
Feb 26, '20 11:02:24 +0100 | Alloc Unhealthy | Unhealthy because of failed task
Feb 26, '20 11:02:24 +0100 | Not Restarting | Error was unrecoverable
Feb 26, '20 11:02:24 +0100 | Driver Failure | rpc error: code = Unknown desc = unable to create container: exit status 1
Feb 26, '20 11:02:24 +0100 | Task Setup | Building Task Directory
Feb 26, '20 11:02:24 +0100 | Received | Task received by client

Running pot from command prompt works. Other drivers works aswell.
Update: With version 0.7.0 it fails with rpc error: code = Unknown desc = unable to create container:

With version 0.7.0 it fails with rpc error: code = Unknown desc = unable to create container: <nil>

Hi @martenlindblad could you please provide:
nomad version
nomad-pot-driver sha256
And if possible change the log level of nomad to debug and paste the log here.
Thanks!

Hi @martenlindblad,
we also provide an additional package, called minipot, that you can use as playground where nomad and consul are already configured and running

Sure:
Nomad version: Nomad v0.10.0
Nomad-pot-driver sha256: 0f934cc8d640988ad5698e12106e1229126dc7996de3513c4cd2a5ba7bd171f8
Nomad config file:
bind_addr = "<IP_ADDRESS>:"

data_dir = "/var/lib/nomad/"

client {
  enabled = true
  servers = ["<IP_ADDRESS>:"]
}
bind_addr = "<IP_ADDRESS>"

data_dir = "/var/lib/nomad"
plugin_dir = "/usr/local/libexec/nomad/plugins"
enable_syslog = true
enable_debug = true
log_level = "DEBUG"

advertise {
  # This should be the IP of THIS MACHINE and must be routable by every node
  # in your cluster
  rpc = "<IP_ADDRESS>:4647"
}

server {
  enabled          = true
  bootstrap_expect = 1
}

Log output:
Feb 26 11:38:24 example.com nomad[13606]: client.alloc_runner.task_runner.task_hook.logmon.nomad: opening fifo: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 @module=logmon path=/var/tmp/nomad/alloc/da8e71dc-4eb7-b5c0-3001-f6a3861c250e/alloc/logs/.task1.stdout.fifo timestamp=2020-02-26T11:38:24.070Z
Feb 26 11:38:24 example.com nomad[13606]: client.alloc_runner.task_runner.task_hook.logmon.nomad: opening fifo: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 @module=logmon path=/var/tmp/nomad/alloc/da8e71dc-4eb7-b5c0-3001-f6a3861c250e/alloc/logs/.task1.stderr.fifo timestamp=2020-02-26T11:38:24.071Z
Feb 26 11:38:24 example.com nomad[13606]: client.driver_mgr.nomad-pot-driver: ExitError checkContainerAlive: driver=pot exitStatus=1 @module=pot timestamp=2020-02-26T11:38:24.083Z
Feb 26 11:38:24 example.com nomad[13606]: client.driver_mgr.nomad-pot-driver: ExitError CheckContainerExists: driver=pot @module=pot exitError=1 timestamp=2020-02-26T11:38:24.101Z
Feb 26 11:38:24 example.com nomad[13606]: client.driver_mgr.nomad-pot-driver: Error creating container: driver=pot err="exit status 1" @module=pot timestamp=2020-02-26T11:38:24.113Z
Feb 26 11:38:24 example.com nomad[13606]: client.alloc_runner.task_runner: running driver failed: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 error="rpc error: code = Unknown desc = unable to create container: <nil>"
Feb 26 11:38:24 example.com nomad[13606]: client.alloc_runner.task_runner: not restarting task: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 reason="Error was unrecoverable"
Feb 26 11:38:24 example.com nomad[13606]: client.gc: marking allocation for GC: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e
Feb 26 11:38:24 example.com nomad[13606]: http: request failed: method=GET path=/v1/namespace/default error="Nomad Enterprise only endpoint" code=501
Feb 26 11:38:28 example.com nomad[13606]: client.alloc_runner.task_runner.task_hook.logmon.nomad: timed out waiting for read-side of process output pipe to close: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 @module=logmon timestamp=2020-02-26T11:38:28.141Z
Feb 26 11:38:28 example.com nomad[13606]: client.alloc_runner.task_runner.task_hook.logmon.nomad: timed out waiting for read-side of process output pipe to close: alloc_id=da8e71dc-4eb7-b5c0-3001-f6a3861c250e task=task1 @module=logmon timestamp=2020-02-26T11:38:28.142Z

Minipot confirmed working as expected!

@martenlindblad Did you run a pot init after installing pot?

@ebarriosjr yes I did

@martenlindblad did you modify the pot.conf file to reflect the name of your interface under POT_EXTIF in /usr/local/etc/pot/pot.conf?
And did you add on the rc.conf:
nomad_enable="YES"
nomad_user="root"
nomad_env="PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/sbin:/bin"
nomad_args="-config=/usr/local/etc/nomad/server.hcl -network-interface=bce0"

POT_EXTIF is set OK, however I have multiple IP addresses assigned to it.
I did not add the  -network-interface=em0 to nomad_args.
The rest was set up as above.


Refactor feed into drives using new API calls, and improve transparency of _instantiate_drives

The API-update in #221 renamed exogenous inputs 'drives' and added new add_-methods to Network. The new drives module currently only does input checking, but should be updated:

The feed-module contains legacy code that should be deprecated. In particular, the use of a wrapper function to generate (random) event times should be axed in favour of Network._instantiate_drives calling the relevant generator-functions explicitly (based on drive type).
The entire test_feed.py should be deprecated, and replaced by an updated test_drives.py, which uses the new API calls to test generation of event times for the various drives.

Could 1. potentially allow users to plot the input spikes before the simulation? I think that might be good to have before 0.1 release if possible but I can also move this to 0.2 if you like

Could 1. potentially allow users to plot the input spikes before the simulation? I think that might be good to have before 0.1 release if possible but I can also move this to 0.2 if you like

I'm closing this because the code has already moved on. Further improvements of the drives will follow from #234 and #244


The results verification doesn't match the paper

Dear author, hello! I find your project very interesting. I downloaded the qualitative results you provided and noticed that some of the predicted results in the images seem to differ from the results posted in your paper. Could you please let me know if there's an issue with my operation?

this is qualitative result

this is paper result

Thanks to your question. In fact, I believe I think we use the different weights for visualization in the paper.

Thank you for your response. Your experiments have been very helpful for my recent research. I would like to cite your paper,but I urgently need the weights used in your paper for my comparative experiments. Could you please provide me with the weights used in the paper(table 3.a b c  pre-train model and fine-tuned model)? My email is<EMAIL_ADDRESS>I appreciate your assistance.

@kirtons You can simply follow the section that already provides pre-trained weights. You can even refer to https://github.com/CHELSEA234/HiFi_IFDL/issues/19#issuecomment-1803306172 for more information

I tested the weights you uploaded（225000.pth,315000.pth）, but the performance still doesn't match the results in the paper. I'm wondering if the model used in the paper hasn't been uploaded.

the prediction results from the weights you provided.

paper

The weights should produce the visualization as what qualitative result link shows. I think you can double check if you follow the localization section steps.

I tested the weights you uploaded（225000.pth,315000.pth）, but the performance still doesn't match the results in the paper. I'm wondering if the model used in the paper hasn't been uploaded.

the prediction results from the weights you provided.

paper

I had the same problem as you, did you solve it?


Capture current search terms and display currently active query in search page of sample

A performant and easy to implement idea would be to simply display the number of currently combined search terms.


Safari issues with the website

First, thanks for the ideas expressed in stimulus.js - I want to use it for my next project; the description is very well-written.
Assuming that the website itself is based on turbolinks, I want to share my experience I had while using the page with the Safari browser (11.0.3) in combination with its swipe-back 2-finger gesture.
While the first problem seems to appear primarily on the desktop version, the second
problem happens on both, the mobile and desktop versions.

Safari freezes for up to 4 seconds:

Click the "Building Something Real" link in the Handbook
Refresh Safari at this location
Scroll at about 2/3 towards the end of the "Building Something Real" page
Click the "Introduction" link on the handbook
Now use the swipe back gesture of Safari to return back to the "Building Something Real" page
The website now freezes for up to 4 seconds...

The problem can be reproduced with every turbolinks enabled website as long as the steps above are met and the page has been scrolled far enough. I am not really sure why this happens, but I assume it is the scroll restoration of turbolinks. (looking at Safari's timeline in dev tools, it seems that the last composite of the website is delayed... until it gets responsive again)

Serious page flicker effects:
Safari browser seems to cause a lot of flicker effects in combination with the swipe-back gesture in general, as long as the page to return to has some scrolling position. This happens on the mobile version as well.

Both effects do not appear when the back-button is used.

I can reproduce the first issue as well.

This is an issue with Safari:
https://twitter.com/paularmstrong/status/915973363561984000
This happens with any single-page application that uses the HTML5 history API.

Here's the bug in the WebKit Bugzilla:
https://bugs.webkit.org/show_bug.cgi?id=181269
And the fix:
https://github.com/WebKit/webkit/commit/d629a7307c48ef195e993699abcf338c7edc99be

Happy to see this issue's been fixed upstream in webkit! Thanks for all the info.

@razh Thanks for your answer. The fix seems to be in webkit trunk - do you know which version of Safari will include it? The technology preview from yesterday did miss the fix...
@javan Thanks for closing the issue - lets hope for the best.

@razh ok thanks a lot for the information.

This is still an issue with STP 49:
https://webkit.org/blog/8088/release-notes-for-safari-technology-preview-49/

@razh yeah thanks for the information. Just checked it for myself... sadly, no changes in behavior.
I really hope that the fix comes to Safari soon. What worries me, is that the revision id for the issue
(213590) is far below the issue ranges of STP 49<PHONE_NUMBER>73)
I have no idea how this fix ever gets into the STP if they follow revision ids upwards...


Source code in /sysroot gets built

Describe the bug
I was told that everything in /sysroot just gets copied into the bootable image, but it seems as though make (or some other tool) is recursively executing Makefiles in these directories.
Host configuration

Docker, in an ubuntu container
gcc, although I don't think this is relevant
x86_64

Toolchain configuration
I am actually building this using a Dockerfile: https://github.com/JonathanWilbur/punchcardos/blob/fb6d5b354756ad8c23b774dadab30d509f0a9daa/os3.dockerfile
Tilck build configuration

How did cmake was run? Did you use the run_cmake wrapper? I used cmake_run, here: https://github.com/JonathanWilbur/punchcardos/blob/fb6d5b354756ad8c23b774dadab30d509f0a9daa/os3.dockerfile#L176
For build errors, please attach the full build log of a clean build.
Tilck commit: da2964e00e67d008346957a619d579d516cadf24 (cloned today)

Type of issue (select one)

Tilck build problem

Reproduction details

Is the issue reproducible in a deterministic way? Yes.
Is the issue reproducible both on real hardware and QEMU or just on real HW? Not relevant.
If applicable, describe the hardware machine used to run Tilck. Not relevant.
Indicate the exact steps to reproduce the problem:

https://github.com/JonathanWilbur/punchcardos/blob/fb6d5b354756ad8c23b774dadab30d509f0a9daa/os3.dockerfile#L135-L138
If I uncomment the last line (which extracts the downloaded archive), this fails.
Expected behavior
I didn't expect make to recurse into files in /sysroot. I would expect nothing to be touched in there, other than for binaries to be copied in as they are built elsewhere.
Screenshots
21.81 [ 98%] Linking CXX executable fathack
21.85 [ 98%] Built target fathack
21.86 [ 98%] Creating a dual-bootable (legacy+efi) image file (MBR)
22.05 stage0/stage2/High_level_prototypes/lisp: No such file or directory
22.05 make[2]: *** [CMakeFiles/tilck_image.dir/build.make:94: tilck.img] Error 1
22.05 make[2]: *** Deleting file 'tilck.img'
22.06 make[1]: *** [CMakeFiles/Makefile2:319: CMakeFiles/tilck_image.dir/all] Error 2
22.06 make: *** [Makefile:91: all] Error 2

As seen above, it seems to recurse into the stage0 repository which I download and extract into /sysroot and start building it. There may be a problem with stage0, but I don't think the build should interfere with files put in /sysroot by users.

Hello @JonathanWilbur,
this issue seems to be entirely related with your scripts and it’s not fair asking me to debug your build to understand what’s going wrong.
For more info about how the files from sysroot and other stuff is copied into the fatpart file, check the build_fatpart script. Briefly, it first copies the contents of the sysroot directory from the source tree to the build directory, then it copies there all the built binaries, then it gets the  list of all the files and directories there using ‘find’ command and uses mcopy to copy each file to the fatpart file/fat32 partition.
Therefore, before opening an issue, please try to isolate the problem. Open a clean repo of Tilck and put in sysroot one file. No docker files, no fancy logic. Does it work? If it does, very likely the issue has nothing to do with this project.
Cheers,
Vlad

Hey Vlad,
I am not asking you to debug my build, which--by the way--does nothing more than build the binaries that your build script uses from source, places them in the expected locations, then runs your build script. I figured if I described the problem, you might know right away whether or not your build recurses into the /sysroot directory and builds stuff in any folder that has a Makefile. If you agreed this was indeed the case, we could probably agree this would be a bug, and if you knew this not to be the case, I would happily investigate further.
That aside, I did as you asked (except that I run these build steps in a Dockerfile, still, but that is more reproducible than me running them on my bare machine). This exact Dockerfile fails with the exact same problem:
FROM ubuntu:latest
RUN apt update && apt install -y git git-core gcc g++ gcc-multilib \
    g++-multilib clang cmake python3-minimal python3-serial python3-pip apt \
    gawk unzip parted wget curl qemu-system-x86 imagemagick
RUN git clone --depth 1 https://github.com/vvaltchev/tilck.git
WORKDIR /tilck
# See: https://github.com/vvaltchev/tilck/issues/177
# We don't want any of the interactive features of apt, so we just disable them.
ENV DEBIAN_FRONTEND=noninteractive
ENV RUNNING_IN_CI=1
RUN mkdir -p /tilck/sysroot/stage0
WORKDIR /tilck/sysroot/stage0
RUN curl -LO https://github.com/oriansj/stage0/archive/refs/tags/Release_0.4.0.tar.gz
RUN tar --strip-components 1 -xvzf Release_0.4.0.tar.gz
WORKDIR /tilck
RUN ./scripts/build_toolchain
RUN make

Also, I did look in build_fatpart and I did not notice anything that seemed to recursively make the /sysroot directory, but I am not confident that I didn't just miss it.

Hello @JonathanWilbur,
Tilck's build does not "recurse" into the sysroot directory, at all. The only thing that happens is that the build_fatpart script is run: https://github.com/vvaltchev/tilck/blob/master/scripts/templates/build_fatpart.
The error:
22.05 stage0/stage2/High_level_prototypes/lisp: No such file or directory

has nothing to do with make entering ("recursing") into the sysroot/ directory. What probably happens is that you have whitespaces in the paths and therefore the build_fatpart script doesn't work as expected. See:
   # first, create the directories
   for f in $(find * -type d); do
      $mmd -i $dest $f
   done

and:
   # then, copy all the files in sysroot
   for f in $(find * -type f); do

From the build_fatpart script. Clearly, that won't work if the paths have whitespaces, but that's expected. I added a nice check in the build_toolchain script for whitespaces in the path containing Tilck's source. Unfortunately, your case is different because you're adding new paths into the sysroot/ directory.
Did you check if such a file stage0/stage2/High_level_prototypes/lisp was supposed to exist ?
The Tilck build does not support whitespaces in ANY path simply because it's very ugly to support reliably: requires escaping everywhere in multiple levels sometimes, plenty of extra tests and simply it's not worth doing so. The code will become uglier and harder to read, while the benefit would be very small. I don't believe supporting paths with whitespaces will bring huge benefits to this project.
This is probably a duplicate of: https://github.com/vvaltchev/tilck/issues/159
Cheers,
Vlad

@JonathanWilbur I reproduced this in 5 seconds. I added a file called "file with whitespaces" to sysroot/ and run a build. It failed like this:
Consolidate compiler generated dependencies of target fathack
[100%] Built target fathack
[100%] Creating a dual-bootable (legacy+efi) image file (MBR)
file: No such file or directory
make[3]: *** [CMakeFiles/tilck_image.dir/build.make:99: tilck.img] Error 1

Complaining that "file" doesn't exist, while that's only the first word of its name. So, was "lisp" supposed to be a filename of just the first word of a file with whitespaces?

@JonathanWilbur I added a check to make sure that you'll get a graceful error next time. See the latest commit in the master branch.
Btw, if you allow me, I'm a bit concerned about your "PunchcardOS" project and the idea of "start with Tilck as a lighter alternative to Linux". This kernel is not an alternative to Linux and trying to make things work with Tilck will be 100x harder than using directly Linux, simply because Tilck is very limited in features and only partially compatible with Linux. Almost nothing will work out-of-the-box except for the few things that already do work. In particular if your plan is to use Tilck as a starting point and later move to Linux, that doesn't make sense to me. Tilck is the "hard way", Linux is the "easy way".
Making Bash to work on Tilck will require a significant effort on the kernel side and I won't have the time to do that. Same thing for GCC and most of the other stuff that you mentioned in your README file. It won't help if you opened an issue requesting me to implement that feature, because I really have no time for that, due to my full-time job. And when I have a bit of time and energies to work on this project, I do other stuff like porting it to x86-64, fixing subtle bugs etc. It's not in my roadmap to support all of that and even if it was, it would take me years to complete.
I understand and appreciate your idea of using this project for building something else. In principle I'm glad that someone wants to do anything with it, given how limited it is. However, I'm trying to be realist here and point out that you are certainly going to hit very serious walls while trying to achieve what you aim, if you use Tilck. Using it as a temporary/simpler solution instead of Linux is definitively the wrong approach. It would only make sense if you wanna stick with Tilck forever. In that case, you'd really need to spend years trying to become a kernel developer because operating systems are complicated. In that case, very slowly you'll be able to make the contributions necessary to Tilck to make your project work the way you need, when that doesn't break my design and goals for the project. But.. you'd be spending 95% of your time on Tilck and 10% on your project if you do that.
Think about it. I just wanna set the right expectations for you given the walls you're going to hit while trying to run other software on Tilck. It probably won't work, and I won't have the time to fix it for you.
Cheers,
Vlad

Oh huh, I see now that there is a single space after the word lisp in this file name, which I only noticed when pulling up the file in my file browser. That explains it. And I'll take your word for it. Thank you.