Serialization (encode) as well?

Are there plans to add the inverse: Object -> JSON (or a type that NSJSONSerialization can serialze) as well?

@angerman this has been discussed quite a bit in #139.
I've been using @edwardaux's Ogra for encoding.

Ahh nice. Maybe there should be alink to Ogra from the README then?

Or may be it is a better to include Encodable from Ogra right in the Agro library. Because it is a very often task to parse back from model into JSON.

Ogra is fantastic, and we're big fans. But we don't think that encoding to the JSON enum is worth pulling into Argo itself.
We've said this a number of times, but realistically, any time we've needed to encode a value, we've wanted to go directly to [String: AnyObject] so that we can pass it directly to NSJSONSerialization, not to JSON. JSON is an intermediary step needed to help the compiler with type inference, it's not intended to be used beyond that.
Realistically, if we added anything to Argo, it'd be a simple Encodable protocol that looks like so:
protocol Encodable {
  func encode() -> [String: AnyObject]
}

Then your implementations would look something like
extension User: Encodable {
  func encode() -> [String: AnyObject] {
    return [
      "email": email,
      "name": name
    ]
  }
}

and so on. We don't think that this fits in line with Argo's value proposition (type-safe JSON decoding), and is trivial enough that it doesn't seem worth locking people in.

From personal experience, encoding into JSON instead of [String:AnyObject] has it's benefits. AnyObject is just a pain to work with. Take for example Amazons typed JSON, they use for DynamoDB. Where [1,2,3] is turned into {"L":[{"N":"1"},{"N","2"},{"N","3"}]} (e.g. we have a List of Numbers). These kind of transformations are much easier to be performed on the JSON object.
Say something like func toAWSJSON(json:JSON) -> JSON.
In essence, if you ever need to do some transformation on top of the models JSON representation, [String:AnyObject] erases a lot of information.

I'm going to go ahead and close this as it's not really something we're looking at. I'd highly suggest looking into something like Ogra if you're looking for this kind of functionality. It's built on top of Argo so moving back and forth should be seamless.


Update build scripts

Enable stop packing through modify build.json
Skip install dotnet on Windows. Use the local one.

Unnecessary.


refactor decomposeChar

@Bodigrim I think there were three crucial differences in the original version and your refactored version which may have caused the perf regression:

The original code unfolded the case where the char is decomposable outside the loop.
The original code is not using list concatenation instead it uses recursion to handle that, so it utilizes the stack, we know that decomposition cannot result in unlimited or very large number of chars, so this works well in practice.
Your code had a issue because of the placement of isCombining check.

I have just reorganized the old code by using guards so that it looks neater. I am trying a few more changes, so this is a draft as of now.

Looks good! Could you please check that performance remained the same?

% diff from the baseline. + is worse, - is better.
It seems the changes are just noise. I ran multiple times and they are not consistent. Anyway there is practically no change which we can suspect for any difference in perf.
Benchmark       unicode-transforms(0)(ms)(base) unicode-transforms(1)(%)(-base)
--------------- ------------------------------- -------------------------------
NFD/AllChars                               6.27                           -1.17
NFD/Deutsch                                2.32                           -2.34
NFD/Devanagari                             6.46                           +5.16
NFD/English                                1.80                           +4.30
NFD/Japanese                               8.15                           +2.09
NFD/Korean                                16.36                           +7.63
NFD/Vietnamese                             5.90                           -0.02

NFKD/AllChars                              9.56                           +4.22
NFKD/Deutsch                               2.24                           -0.92
NFKD/Devanagari                            6.17                           +9.00
NFKD/English                               1.72                           +1.98
NFKD/Japanese                              8.25                           +6.18
NFKD/Korean                               15.97                           +7.05
NFKD/Vietnamese                            5.81                           +1.72

It was not noise, it was indeed a regression. Earlier I was running benchmarks with --quick option which is not very accurate, without that I found consistent regression. Details in the commit message. Results baseline, after refactor, after fix:
Benchmark      unicode-transforms(0)(ms)(base) unicode-transforms(1)(%)(-base) unicode-transforms(2)(%)(-base)
-------------- ------------------------------- ------------------------------- -------------------------------
NFD/AllChars                              6.29                           +6.98                           +0.36
NFD/Deutsch                               2.31                           -0.20                           -0.13
NFD/Devanagari                            6.31                           +5.71                           +0.55
NFD/English                               1.77                           -0.91                           -0.09
NFD/Japanese                              8.11                           +1.60                           -1.22
NFD/Korean                               16.27                           +8.19                           -0.09
NFD/Vietnamese                            6.02                           +0.07                           +0.58


Cannot call 'OTMql4/mql4zmq.dll::mql4zmq_strerror', 'OTMql4/mql4zmq.dll' is not loaded

I installed everything including OTMql4Zmq, OTMql4Py and OTMql4Lib. There are some #import keywords missing for some header files in OTMql4 so that the compilation in MT4 failed. I fixed that locally. I suggest you to update and change them. Another problem I encountered is
Cannot call 'OTMql4/mql4zmq.dll::mql4zmq_strerror', 'OTMql4/mql4zmq.dll' is not loaded
When I am trying to drag script OTMql4ZmpTest to one graph.
Cannot call 'OTMql4/mql4zmq.dll::mql4zmq_init', 'OTMql4/mql4zmq.dll' is not loaded
When I am trying to use EA called OTZmqCmdEA. Do you know why this happened? I tried to find some hints from wikis of your git repo but cannot. Please help me!
My windows is 64 bit windows 8. Metatrader 4.

Hi did you solved your problem? I have the same issue

What exactly are the #import keywords that you think are missing for some header files in OTMql4?
What build of Mt4 are you using, and where did your Mt4 ccome from?


Network Layer

Sorry if this is documented elsewhere, but does OpenZiti operate at Layer 2? https://openziti.discourse.group/t/where-to-begin-with-openziti/426/33?page=2 says

ziti operates also at a lower level… within the TLS at layer 2

So if I have a managed switch running a Linux transparent bridge I could use zssh to login?

Ziti absolutely does not operate at layer 2. It's layer 3+. I corrected that statement further down that thread:
 personally wouldn’t consider OpenZiti on layer 2 of the OSI model. Realistically, OpenZiti probably operates somewhere after layer 4 (TCP/IP) and before layer 7 (application). OpenZiti is an ‘overlay’ network. It’s a different way of thinking for sure.

Tunneling apps though - they do interact with layer 3/4 (TCP, IP, Ports etc). Tunneling apps are a step along the OpenZiti journey. Most people start here because it usually just easier to get going for new learners for that reason.

Zssh explicitly dials a service by identity name. At this time, you would be required to have a matching ziti identity. So you could use zssh to login to the switch, but not anything attached that switch.
I think a feature could be added to zssh that would allow you to connect through the bridge, allowing you to connect to anything attached to the bridge but it would have to be developed.

I guess I should have kept reading that post 😆
My use case only needs to login to the switch (no other devices on the network) so I'm interested on how this could be set up. Specifically, if I have a device running Linux and two NICs and I configure it as a Layer 2 transparent bridge between a modem connected to the internet and a router that provides the dhcp/nat for a small network, how can I ssh (or zssh) into the transparent bridge?

If you only need to login to the switch, then I would do the following:

make an identity for the switch (server)
move the .jwt for the switch, to the switch
download ziti-edge-tunnel to the switch (and unzip it)
start use ziti-edge-tunnel to enroll the identity
start ziti-edge-tunnel in 'run-host' mode with that identity: ./ziti-edge-tunnel run-host -i switch.json (or whatever identity file you called it)
create and authorize a zssh service following the cheatsheet
make a zssh client identity
download zssh
use zssh to enroll the client identity
use zssh and zssh to the switch

I made this video that shows that whole process if interested https://youtu.be/HFkT3NgjnJw
You'll end up with an ssh session to a machine that has no open firewall ports and only needs outbound internet that works/looks like this:

I am closing this issue for now. I think it was answered. If not, please re-open.

The original question was answered so I'll leave this as closed. Regarding the follow-up task, I got stuck trying to do the expressInstall on an Oracle Cloud instance:
1. Create free Oracle Cloud ARM instance: https://www.youtube.com/watch?v=4642CoP0q7Y

2. On the instance page, click "Copy" next to "Public IP address" and save it for later reference.

3. Click "Show" next to "Internal FQDN" and copy it for use later.

4. Click the link next to "Subnet"

5. Click the "Default Security List" link at the bottom of the page

6. Click "Add Ingress Rules" button and configure:

* Source Type: CIDR
* Source CIDR: <IP_ADDRESS>/0
* IP Protocol: TCP
* Source Port Range: {leave blank for All}
* Destination Port Range: 6262,8441,8442,10080
* Description: OpenZiti

7. Click "Add Ingress Rules" button

8. SSH into your cloud instance and run:

sudo apt install -y jq wget psmisc
sudo apt install ca-certificates --reinstall
sudo update-ca-certificates -f

9. Install OpenZiti https://openziti.github.io/ziti/quickstarts/network/hosted.html

export EXTERNAL_DNS="value-from-step-3-above"

export EXTERNAL_IP="$(curl -s eth0.me)"
export ZITI_EDGE_CONTROLLER_IP_OVERRIDE="${EXTERNAL_IP}"
export ZITI_EDGE_ROUTER_IP_OVERRIDE="${EXTERNAL_IP}"
export ZITI_EDGE_CONTROLLER_HOSTNAME="${EXTERNAL_DNS}"
export ZITI_EDGE_ROUTER_HOSTNAME="${EXTERNAL_DNS}"
export ZITI_EDGE_CONTROLLER_PORT=8441
export ZITI_EDGE_ROUTER_PORT=8442
source /dev/stdin <<< "$(wget -qO- https://raw.githubusercontent.com/openziti/ziti/release-next/quickstart/docker/image/ziti-cli-functions.sh)"; expressInstall

# throws these errors:
******** Setting Up Controller ********
wrote CA file to: /home/ubuntu/.ziti/quickstart/webmaster/pki/cas.pem
Controller configuration file written to: /home/ubuntu/.ziti/quickstart/webmaster/webmaster.yaml
ziti-controller initialized. see /home/ubuntu/.ziti/quickstart/webmaster/webmaster-init.log for details
ziti-controller started as process id: . log located at: /home/ubuntu/.ziti/quickstart/webmaster/webmaster.log
waiting for the controller to come online to allow the edge router to enroll
RESTY 2022/09/08 04:14:08 ERROR Get "https://REDACTED.oraclevcn.com:8441/version": x509: certificate signed by unknown authority, Attempt 1
RESTY 2022/09/08 04:14:08 ERROR Get "https://REDACTED.oraclevcn.com:8441/version": x509: certificate signed by unknown authority, Attempt 2
RESTY 2022/09/08 04:14:08 ERROR Get "https://REDACTED.oraclevcn.com:8441/version": x509: certificate signed by unknown authority, Attempt 3
RESTY 2022/09/08 04:14:09 ERROR Get "https://REDACTED.oraclevcn.com:8441/version": x509: certificate signed by unknown authority, Attempt 4
RESTY 2022/09/08 04:14:09 ERROR Get "https://REDACTED.oraclevcn.com:8441/version": x509: certificate signed by unknown authority, Attempt 5
RESTY 2022/09/08 04:14:11 ERROR Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority, Attempt 1
RESTY 2022/09/08 04:14:11 ERROR Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority, Attempt 2
RESTY 2022/09/08 04:14:11 ERROR Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority, Attempt 3
RESTY 2022/09/08 04:14:11 ERROR Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority, Attempt 4
RESTY 2022/09/08 04:14:12 ERROR Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority, Attempt 5
error: unable to authenticate to https://REDACTED.oraclevcn.com:8441. Error: Post "https://REDACTED.oraclevcn.com:8441/authenticate?method=password": x509: certificate signed by unknown authority


Editing is painfully slow

I'm currently editing sdk/lib/html/dart2js/html_dart2js.dart and the editing experience is painfully slow. (I sometimes need to wait several seconds before I can continue typing).
I'm aware that this is a non-standard use case (43900 lines, and hundreds of errors), but maybe you can use this as a stress-test (and even fix some low-hanging fruits).
As an example, try to add a few new classes in front of the class Window.

@jwren @alexander-doroshko

@floitschG Even if analyzer is slow it shouldn't affect IDE typing performance, so this issue is at IDE side. Please file and issue in [WebStorm's issue tracker] (https://youtrack.jetbrains.com/issues/Web), Dart subsystem.

Done: https://youtrack.jetbrains.com/issue/WEB-21906


Optimize DS service response

remove signed content from response

https://github.com/edenlabllc/ds.api/pull/11#pullrequestreview-172483482


Show certain parts of the mask as values are beeing entered possible?

Hi Robin,
First of all, congratulations on your great job!
Is there anyway i can hide the underscores ( _ ) from the input mask and only show certain parts of the mask as digits are inserted?
This is what i have:
jQuery(document).ready(function($){
  $(".currency input").inputmask('€ 999,999.00', { numericInput: true });    //123456  =>  € ___.__1.234,56
});

Which displays:
€ .,00
If i use:
jQuery(document).ready(function($){
  $(".currency input").inputmask('€ 999.999,00', { numericInput: true,placeholder:"€    .   ,00" });    //123456  =>  € ___.__1.234,56
});

Displays:
€ ,  ..  ,00
Althought on this last attempt, as i type the number appears correctly formatted.
The ideal case would be that for example, nothing shows up as mask.
As the first digit is entered it would insert "€" before and ".00" after and the comma (",") only if more then 3 digits are inserted.
Is there anyway i could achieve this?
PS: I tried to add a fiddle, but i don't know why, i can't get the mask to show there.

@globalser ,
Try with
 Inputmask("$ (,999){+|1}.99", {
                numericInput: true,
                placeholder: "0"
            }).mask(selector);

@RobinHerbots
After adding:
$(".currency input").inputmask("€ (,999){+|1}.99", {numericInput: true,placeholder: "0"}).mask(selector);
The field acts like if there isn't any mask, as i type the numbers appear unformatted.

@RobinHerbots
Sorry, I'm using wordpress and really not sure how to check the version i'm using.
This is the jquery version:
<script type='text/javascript' src='http://mydomain.com/wp-includes/js/jquery/jquery.js?ver=1.12.4'></script>
<script type='text/javascript' src='http://mydomain.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.4.1'></script>

I added:
<script src="jquery.js"></script>
<script src="dist/jquery.inputmask.bundle.js"></script>

To header, without avail. Then to the footer, having the same problem (mask not showing).
Perhaps i'm doing something wrong.
Or it only works with the latest version of jquery?

Thank you so much for your help Robin!

@globalser ,
Can this issue be closed?

@globalser ,
I guess you need this
https://jsfiddle.net/86fw3zug/8/

Thank you so much @RobinHerbots !!
Yes you can close this issue!
Regards


Updating outdated or missing docs

Hey @Kian1354 - here is the first part of the promised docs :)
More to come!

This issue has been addressed and resolved through a series of updates to the documentation. The changes have been integrated into separate pull requests:

#470
#472

Please review the respective pull requests for details on the changes made. If you have any further feedback or concerns, feel free to comment on the associated pull requests.
Thank you for bringing this issue to our attention, and we appreciate your contributions to improving the documentation.

This issue has been addressed and resolved through a series of updates to the documentation. The changes have been integrated into separate pull requests:

#470
#472

Please review the respective pull requests for details on the changes made. If you have any further feedback or concerns, feel free to comment on the associated pull requests.
Thank you for bringing this issue to our attention, and we appreciate your contributions to improving the documentation.


Interactive selection of modpacks.ch modpack and version id's

Currently when downloading from modpacks.ch, it is required to update the modpack id and version id of the pack in question in the settings.json file. This is a suboptimal user experience since these values typically change every time the script is run. It could be improved by allowing these settings to be set through an interactive prompt.

Completed in 6caa8cc


'PHPBREW_PHP environment variable is not defined.'

Hi , the problem as title description. after i finish up to setup process of php-5.4.0 , i need to install mysql extension but got the error message as following.
vagrant@app1:~$ sudo phpbrew ext install mysql
Error: PHPBREW_PHP environment variable is not defined.
  This extension command requires you specify a PHP version from your build list.
  And it looks like you haven't switched to a version from the builds that were built with PHPBrew.
Suggestion: Please install at least one PHP with your prefered version and switch to it.

I try to enter some scripts to check PHPBREW_PHP and PHP version.
vagrant@app1:~$ echo $PHPBREW_PHP
php-5.4.0
vagrant@app1:~$ php -v
PHP 5.4.0 (cli) (built: May 29 2015 03:43:27)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

I can not find the problem. have any suggestion !? Thanks!

You need to use or switch to the php version you want to install the extension for:
phpbrew use 5.4.0
phpbrew ext install ...

I did. but it doesn't work.
vagrant@app1:~$ phpbrew use 5.4.41
vagrant@app1:~$ sudo phpbrew ext install mysql
Error: PHPBREW_PHP environment variable is not defined.
  This extension command requires you specify a PHP version from your build list.
  And it looks like you haven't switched to a version from the builds that were built with PHPBrew.
Suggestion: Please install at least one PHP with your prefered version and switch to it.
vagrant@app1:~$

Why are you using sudo? :smile:

Please feel free to reopen if it doesn't solve your specific issue.

@c9s we really should print a message about sudo usage :3

if i dont use sudo , it will throw 'Permission denied.'
vagrant@app1:~$ phpbrew ext install mysql
===> Installing mysql extension...
Log stored at: /home/vagrant/.phpbrew/build/php-5.4.41/ext/mysql/build.log
Changing directory to /home/vagrant/.phpbrew/build/php-5.4.41/ext/mysql
===> Phpize...
sh: 1: cannot create /home/vagrant/.phpbrew/build/php-5.4.41/ext/mysql/build.log: Permission denied

You shound't use sudo to build your php, you need to fix your permission back:
chown -R vagrant: /home/vagrant/.phpbrew/

@marcioAlmada yes... hmm let's introduce the message in our installer XD

Thanks! It works!


[2.0.0-beta-4] token verification failure

Reported by @vramana whose setup is here => https://github.com/vramana/horizon-webpack,
while trying to follow this yet unpublished guide in the docs.
You can repro this by using one of the example directories:

cd examples/vue-chat-app
hz init
hz make-token admin
hz serve --dev --debug
In the browser attempt to use token and connect to Horizon like code example in documentation

Result:
🌄 Horizon ready for connections
debug: Client connection established.
debug: Received handshake: {"request_id":0,"method":"token","token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpZCI6ImFkbWluIiwicHJvdmlkZXIiOm51bGwsImlhdCI6MTQ3MTAyODkxMSwiZXhwIjoxNDcxMTE1MzExfQ.5dUu5re32MLyl_ZmIlqh7E63hmBHmBwe5IfZf_YKGG8ysiGHx4ng5EeBd_kaudfI5AgZZFJnShNA7K9ZxDbw0g"}
debug: Closing client connection with message: JsonWebTokenError: invalid signature
debug: info: {"request_id":0,"error":"JsonWebTokenError: invalid signature","error_code":0}
debug: Client connection terminated.

Also we should probably have a test for this that creates a new token and tries to connect with it if we don't already.

var horizon = Horizon({
  host: 'localhost:8181',
  authType: {
    token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJpZCI6Ijk0MjQ2ZWIzLWVhMTEtNDU3NC1hZGNjLWE2MjM3OTI0ZjJiMCIsInByb3ZpZGVyIjpudWxsLCJpYXQiOjE0NzEwMjQ4MzIsImV4cCI6MTQ3MTExMTIzMn0.z5KoxKnv4ECJ2cqJEYWOXK53LrlXGtzOX9cTNna1xrExYfyPBIpY-XnmBGOjM1fp498rLTjYe-Mrkbzgoh6RkA',
    storeLocally: false
  }
});

The current configuration checks for the token right away but I'd reckon that this would do:
var horizon = Horizon({
  host: 'localhost:8181',
  authType: 'unauthenticated',
});

Reason for it is that we are working with client side and as a new user arriving at the service, you would not have a token to begin with but still would want to be able to access the site.

@Bartekus I don't understand what you are saying correctly but the problem here is not that. #748 is the correct fix. A command line default was overriding the token-secret from secrets.toml and that is causing the issue.

@vramana I'm sorry, I didn't understand the underlining problem correctly so obviously my answer is incorrect in that respect. That being said, thank you for providing the context for me to grok the issue at hand.


Use the correct name "lifecycle hooks"

Using the correct name for "lifecycle hooks" (as in the AngularJS documentation https://docs.angularjs.org/guide/component) ensures that users find the corresponding paragraph.

thanks. .nice catch, ROFL
oh wow, cant believe i didnt catch that


Minor cleanup of QCS tutorial

@dstrain115 @MichaelBroughton @wcourtney

Some other issues related to how the devsite is rendered, rather than issues with the notebook itself:

"Enter the project id into the input below" - input box doesn't render in dev site. Should the notebook be updated to say "if you are running this notebook in Jupyter/Colab, then enter the project id ..."?
First line of print(device) not indented properly
nit: https://cloud.google.com/sdk/install missing period.


Include native dependencies in META6.json

It needs node, and perl and some more stuff. We should clearly put it in the META6.json, so that it at least fires an error report if you try to install it without them.

Oh, I thought those dependencies could not be included in the META6.json. Is documented anywhere?

Best way is to check out Inline::Python META6.json. Not documented... yet.
El lun., 22 jun. 2020 a las 11:12, Antonio<EMAIL_ADDRESS>escribió:

Oh, I thought those dependencies could not be included in the META6.json.
Is documented anywhere?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Raku/Documentable/issues/96#issuecomment-647391097,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAAD5DU7B7JKSGCXEP46DDRX4OBNANCNFSM4N7KMUXA
.

--
JJ

If you specify python2.7 it works:
  "depends": [
    "python2.7:from<native>"
  ],

Nonetheless, if you try it with node or perl it won`t work.
  "depends": [
    "node:from<native>",
    "perl:from<native>",
  ],

I think the problem is in this check at Zef. It uses is native to know is a native module is installed (check the docs).
If you run that code with "python2.7" as literal:
use NativeCall;
sub native_library_is_installed() is native("python2.7") {
    !!!
}
native_library_is_installed();

the output will be:
Cannot locate symbol 'native_library_is_installed' in native library 'libpython2.7.so'
  in method setup at /home/antonio/.rakudobrew/versions/moar-2020.06/install/share/perl6/core/sources/947BDAB9F96E0E5FCCB383124F923A6BF6F8D76B (NativeCall) line 298
  in block native_library_is_installed at /home/antonio/.rakudobrew/versions/moar-2020.06/install/share/perl6/core/sources/947BDAB9F96E0E5FCCB383124F923A6BF6F8D76B (NativeCall) line 587
  in block <unit> at testing_native.p6 line 6

So the function will return True, because the .so file has been loaded correctly. Nonetheless, if you try the same with node or perl, you will get:
Cannot locate native library 'libperl.so': libperl.so: cannot open shared object file: No such file or directory
  in method setup at /home/antonio/.rakudobrew/versions/moar-2020.06/install/share/perl6/core/sources/947BDAB9F96E0E5FCCB383124F923A6BF6F8D76B (NativeCall) line 298
  in block native_library_is_installed at /home/antonio/.rakudobrew/versions/moar-2020.06/install/share/perl6/core/sources/947BDAB9F96E0E5FCCB383124F923A6BF6F8D76B (NativeCall) line 587
  in block <unit> at testing_native.p6 line 6

I do not know if this a bug or the expected behavior, I will open an issue in Zef.

Docker containers used for testing must be updated to meet the unmet dependencies.

OK, I can do that.

Don't worry, it's already done.

@JJ why perl is a dependency? It is not used in Documentable.

It's used to generate CSS and/or launch web server via Mojo.

But that's not part of Documentable job. CSS is generated by sass utility, provided by ruby-sass.

Not strictly, yes, but you need it to generate resources or to serve them
El lun., 22 jun. 2020 17:56, Antonio<EMAIL_ADDRESS>escribió:

But that's not part of Documentable job. CSS is generated by sass
utility, provided by ruby-sass.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Raku/Documentable/issues/96#issuecomment-647612630,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAAD5ASSDOMUVOIBK5XTQ3RX55JHANCNFSM4N7KMUXA
.

What resources are generated by perl? And due to it's a static site, each user should be able to choose the tool to serve the site.


I want use IGestureListener

Hi, can you make IGestureListener not protected but public?
Thanks

My fault, I will make it public.


Update the http-git-server image

This is to pick up the vulnerability fixes addressed in https://github.com/GoogleContainerTools/kpt-config-sync/pull/739.

replaced with https://github.com/GoogleContainerTools/kpt-config-sync/pull/744


Sieve of Eratorthenes Algorithm problem-GFG

Problem : Find number of prime numbers less than given number using Sieve of Eratorthenes Algorithm.
Source: GFG
Language : C
I would like to add more efficient solution using Sieve of Eratorthenes Algorithm in C++ language.
Thank you.

Im preparing for my coding interviews and it would really help me if you assign this question to me
Kindly assign me this
I have immense interest  in codin

Im preparing for my coding interviews and it would really help me if you assign this question to me
Kindly assign me this
I have immense interest in codin

You can do in which langauge

Hey @Ayush7614 can i solve this issue using java would you like to assign me

I would like to do in Java

Can I try in python ?


Add retention size flag to create topic command

Feature or problem description
rhoas kafka topic create should have a flag --retention-size.
Proposed solution
--retention-size should have a default value -1. It represents bytes.
Also needs to be handled in the interactive mode.

To be done after #555


[Event Requests] codeunit 7315 "Whse. Internal Pick Release"

Seems like codeunit 7315 "Whse. Internal Pick Release" has never been reviewed to allow extensibility. Can you at least provide most common integration events, similar to codeunit 7310 "Whse.-Shipment Release"?
Here's some suggestions for the integration events (for the signature of the events, use similar pattern as in codeunit 7310 "Whse.-Shipment Release")
procedure Release(var WhsePickHeader: Record "Whse. Internal Pick Header")
    var
        Location: Record Location;
        WhsePickRqst: Record "Whse. Pick Request";
        WhsePickLine: Record "Whse. Internal Pick Line";
    begin
        with WhsePickHeader do begin
            if Status = Status::Released then
                exit;

            OnBeforeRelease(WhsePickHeader);       ///

            WhsePickLine.SetRange("No.", "No.");
            WhsePickLine.SetFilter(Quantity, '<>0');
            if not WhsePickLine.Find('-') then
                Error(Text000, TableCaption(), "No.");

            if "Location Code" <> '' then begin
                Location.Get("Location Code");
                Location.TestField("Require Pick");
            end else
                CheckPickRequired("Location Code");

            repeat
                WhsePickLine.TestField("Item No.");
                WhsePickLine.TestField("Unit of Measure Code");
                if Location."Directed Put-away and Pick" then
                    WhsePickLine.TestField("To Zone Code");
                if Location."Bin Mandatory" then
                    WhsePickLine.TestField("To Bin Code");
            until WhsePickLine.Next() = 0;

            OnAfterTestWhsePickLine(WhsePickHeader, WhsePickLine);  ///

            Status := Status::Released;
            Modify();

            OnAfterReleaseWarehousePick(WhsePickHeader);  ///

            CreateWhsePickRqst(WhsePickHeader);

            WhsePickRqst.SetRange("Document Type", WhsePickRqst."Document Type"::"Internal Pick");
            WhsePickRqst.SetRange("Document No.", "No.");
            WhsePickRqst.SetRange(Status, Status::Open);
            if not WhsePickRqst.IsEmpty() then
                WhsePickRqst.DeleteAll(true);

            Commit();
        end;

        OnAfterRelease(WhsePickHeader, WhsePickLine);  ///
    end;

procedure Reopen(WhsePickHeader: Record "Whse. Internal Pick Header")
    var
        WhsePickRqst: Record "Whse. Pick Request";
        PickWkshLine: Record "Whse. Worksheet Line";
        WhseActivLine: Record "Warehouse Activity Line";
    begin
        with WhsePickHeader do begin
            if Status = Status::Open then
                exit;

            IsHandled := false;
            OnBeforeReopen(WhsePickHeader, IsHandled);   ///
            if IsHandled then
                exit;

            PickWkshLine.SetCurrentKey("Whse. Document Type", "Whse. Document No.");
            PickWkshLine.SetRange("Whse. Document Type", PickWkshLine."Whse. Document Type"::"Internal Pick");
            PickWkshLine.SetRange("Whse. Document No.", "No.");
            if not PickWkshLine.IsEmpty() then
                Error(Text001);

            WhseActivLine.SetCurrentKey("Whse. Document No.", "Whse. Document Type", "Activity Type");
            WhseActivLine.SetRange("Whse. Document No.", "No.");
            WhseActivLine.SetRange("Whse. Document Type", WhseActivLine."Whse. Document Type"::"Internal Pick");
            WhseActivLine.SetRange("Activity Type", WhseActivLine."Activity Type"::Pick);
            if not WhseActivLine.IsEmpty() then
                Error(Text002);

            WhsePickRqst.SetRange("Document Type", WhsePickRqst."Document Type"::"Internal Pick");
            WhsePickRqst.SetRange("Document No.", "No.");
            WhsePickRqst.SetRange(Status, Status::Released);
            if not WhsePickRqst.IsEmpty() then
                WhsePickRqst.ModifyAll(Status, WhsePickRqst.Status::Open);

            Status := Status::Open;
            Modify();
        end;

        OnAfterReopen(WhsePickHeader);   ///
    end;

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


Category page

Need to make a page that displays the categories

Category page added. Allows user to search by category, and displays each product in the category


HSTS headers

@fancyremarker for you to review and merge. HSTS header.

Super, good catch.

Related: just discovered preload flag: https://hstspreload.appspot.com/
Not appropriate here but kind of neato.


How to add canvas stream to webrtc tracks?

I am writing a little chat app in which the background is removed. I drew it on canvas as such
canvasCtx.save();
canvasCtx.clearRect(0, 0, canvasRef.current.width, canvasRef.current.height);
canvasCtx.imageSmoothingQuality = "high";
canvasCtx.drawImage(results.segmentationMask, 0, 0, canvasRef.current.width, canvasRef.current.height);
canvasCtx.globalCompositeOperation = 'source-in';
canvasCtx.drawImage(results.image, 0, 0, canvasRef.current.width, canvasRef.current.height);
canvasCtx.restore();

Yet I don't know how to add the new stream to webrtc stream as I would for webcam. How can I achieve that?

Hi @hypo-thesis ,
This issue is not related to MediaPipe , could you please cross verify once.


stealBuild option system.main issue

In dev mode main (via script tag attribute) can be defined as for example apps/first/ that will load apps/first/first.js.
In stealBuild options if system.main is defined as apps/first/ will result in build error, so one need to define it there as apps/first/first.
A little bit inconsistent in my view. Not sure if its needed and correct behaviour.

@joe-crick Once you get the docs working, maybe we can tackle this together.

I'll take this one. :cop:

I need this for https://github.com/bitovi/steal-tools/issues/168 so I'm taking it.

Closed by #169


[QA] New wallet users: application sometimes freezes at 28% when setting metamask and accessing the build for the very first time

Explorer Alpha build version:
0.3.250-main-08f208c (windows)
Issue Description:
When there is a brand new wallet user who sets metamask for the very first time to access the build, after logging in, when the build is loading, it may freeze at 28% and after some minutes the screen goes violet.
The player logs have been attached as evidence.
Steps to reproduce:

Set a new metamask profile using edge
Use that new profile to login on the build as a new wallet user
Access the build after having done the log in

Expected behaviour:
The build should successfully load and the user should be taken to the UI
Current behaviour:
The build gets stuck at 28% and after some minutes the screen gets violet
Reproduction rate:
It has happened the first time I created a new metamask profile with Edge but it hasnt happened with Chrome
Severity:

[ ] Cosmetic
[ ] Minor
[ ] Medium
[ X] High
[ ] Critical
[ ] Blocker

Priority:

[X ] High
[ ] Medium
[ ] Low

Platforms / OS:

[X ] Windows 11
[ ] Windows 10
[ ] Mac Sonoma
[ ] Mac (specify the version on Additional Notes)

Evidence:
See the attached player logs:
Player.log

I cannot repro on my side. Being that said, it should not be a problem with the authentication nor the profile. The load progress goes 28% through an internal timer to give the sensation of progress. If you reach that point and get stuck it could be many reasons while loading the world and scene for the first time. Anyway, after 2 minutes the screen should go off. Perhaps we should decrease the timeout @m3taphysics @olavra? Did you try to wait 2 mins?

Hey @lorux0 here are some different steps that may help discover the source of the problem:

Start the app (in editor)
Instantly press "start" before the avatar loads
Notice exceptions (see below)
Loading is stuck on 28% for quite some time: https://drive.google.com/file/d/1nQByLKWbsq83st0TsNqVLLyMkoe0Ml9a/view?usp=drive_link

NullReferenceException: Object reference not set to an instance of an object
Arch.Core.World.Get[T] (Arch.Core.Entity entity) (at <8704400f3ef34475945ffb62bfb102d6>:0)
DCL.CharacterPreview.CharacterPreviewController.WaitForAvatarInstantiatedAsync (System.Threading.CancellationToken ct) (at Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1[TStateMachine].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:218)
Cysharp.Threading.Tasks.UniTask+Awaiter.GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:312)
DCL.CharacterPreview.CharacterPreviewControllerBase.WrapInSpinnerAsync (System.Threading.CancellationToken ct) (at Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:178)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:104)
DCL.Diagnostics.ReportHandlerBase:LogException(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49)
DCL.Diagnostics.ReportHubLogger:UnityEngine.ILogHandler.LogException(Exception, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:38)
UnityEngine.Debug:LogException(Exception)
Cysharp.Threading.Tasks.UniTaskScheduler:PublishUnobservedTaskException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskScheduler.cs:90)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoidMethodBuilder:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskVoidMethodBuilder.cs:53)
DCL.CharacterPreview.<WrapInSpinnerAsync>d__26:MoveNext() (at Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:179)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoid`1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104)
Cysharp.Threading.Tasks.AwaiterActions:Continuation(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1:TrySetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:167)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:210)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskMethodBuilder:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskMethodBuilder.cs:59)
DCL.CharacterPreview.<WaitForAvatarInstantiatedAsync>d__8:MoveNext() (at Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:189)
Cysharp.Threading.Tasks.AwaiterActions:Continuation(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1:TrySetResult(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:139)
Cysharp.Threading.Tasks.YieldPromise:MoveNext() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Delay.cs:251)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:RunCore() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:203)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Update() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:145)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:104)

[UNSPECIFIED]:
0x00007ff61bb874dd (Unity) StackWalker::GetCurrentCallstack
0x00007ff61bb8c5a9 (Unity) StackWalker::ShowCallstack
0x00007ff61cb6a091 (Unity) GetStacktrace
0x00007ff61d2242ce (Unity) DebugStringToFile
0x00007ff61ab484f8 (Unity) DebugLogHandler_CUSTOM_Internal_Log
0x0000021e4d8ac4ca (Mono JIT Code) (wrapper managed-to-native) UnityEngine.DebugLogHandler:Internal_Log (UnityEngine.LogType,UnityEngine.LogOption,string,UnityEngine.Object)
0x0000021e4d8ac33b (Mono JIT Code) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[])
0x0000021f3d12477e (Mono JIT Code) DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal (System.Exception,DCL.Diagnostics.ReportData,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:103)
0x0000021f3d124108 (Mono JIT Code) DCL.Diagnostics.ReportHandlerBase:LogException (System.Exception,DCL.Diagnostics.ReportData,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49)
0x0000021f35750215 (Mono JIT Code) DCL.Diagnostics.ReportHubLogger:UnityEngine.ILogHandler.LogException (System.Exception,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:38)
0x0000021f3d13fcb1 (Mono JIT Code) UnityEngine.Logger:LogException (System.Exception,UnityEngine.Object)
0x0000021f3d13fad8 (Mono JIT Code) UnityEngine.Debug:LogException (System.Exception)
0x0000021f3d13f8a3 (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskScheduler:PublishUnobservedTaskException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskScheduler.cs:90)
0x0000021f3d13ef83 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoidMethodBuilder:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskVoidMethodBuilder.cs:53)
0x0000021f1f980e53 (Mono JIT Code) DCL.CharacterPreview.CharacterPreviewControllerBase/<WrapInSpinnerAsync>d__26:MoveNext () (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:179)
0x0000021e702ce0c7 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoid`1<TStateMachine_REF>:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104)
0x0000021e489656c3 (Mono JIT Code) Cysharp.Threading.Tasks.AwaiterActions:Continuation (object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
0x0000021f3d11c80c (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1<Cysharp.Threading.Tasks.AsyncUnit>:TrySetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:167)
0x0000021f3d11c3db (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1<TStateMachine_REF>:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:210)
0x0000021f3d11c2b9 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskMethodBuilder:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskMethodBuilder.cs:59)
0x0000021f1f9893eb (Mono JIT Code) DCL.CharacterPreview.CharacterPreviewController/<WaitForAvatarInstantiatedAsync>d__8:MoveNext () (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
0x0000021e4897d107 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1<TStateMachine_REF>:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:189)
0x0000021e489656c3 (Mono JIT Code) Cysharp.Threading.Tasks.AwaiterActions:Continuation (object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
0x0000021e48965543 (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1<TResult_REF>:TrySetResult (TResult_REF) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:139)
0x00000220fb5484f3 (Mono JIT Code) Cysharp.Threading.Tasks.UniTask/YieldPromise:MoveNext () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Delay.cs:251)
0x0000021e2889ec8f (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:RunCore () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:203)
0x0000021e28906aa3 (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Update () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:145)
0x0000021e2889dc23 (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:104)
0x0000021f1d9eb388 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
0x00007fffe3d64c1e (mono-2.0-bdwgc) mono_jit_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/mini/mini-runtime.c:3445)
0x00007fffe3c9d254 (mono-2.0-bdwgc) do_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/metadata/object.c:3068)
0x00007fffe3c9d3cc (mono-2.0-bdwgc) mono_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/metadata/object.c:3115)
0x00007ff61baa0574 (Unity) scripting_method_invoke
0x00007ff61ba7e2e4 (Unity) ScriptingInvocation::Invoke
0x00007ff61b715482 (Unity) ExecutePlayerLoop
0x00007ff61b7154a0 (Unity) ExecutePlayerLoop
0x00007ff61b71bd35 (Unity) PlayerLoop
0x00007ff61c6ea06f (Unity) PlayerLoopController::InternalUpdateScene
0x00007ff61c6f6e9d (Unity) PlayerLoopController::UpdateSceneIfNeededFromMainLoop
0x00007ff61c6f5181 (Unity) Application::TickTimer
0x00007ff61cb6fd3a (Unity) MainMessageLoop
0x00007ff61cb74c10 (Unity) WinMain
0x00007ff61df5765e (Unity) __scrt_common_main_seh
0x00007ff89ae87344 (KERNEL32) BaseThreadInitThunk
0x00007ff89b5826b1 (ntdll) RtlUserThreadStart

Hey @lorux0 here is some repro steps that may help solve the source of the problem of 28%?
This is still reproducable in the linked branch #882

Start the app (in editor)
Instantly press "start" before the avatar loads
Notice exceptions (see below)
Loading is stuck on 28% for quite some time: https://drive.google.com/file/d/1nQByLKWbsq83st0TsNqVLLyMkoe0Ml9a/view?usp=drive_link

https://drive.google.com/drive/folders/1iZN2EfbgTAC1za8tGncNdbCXkR8IW20r
NullReferenceException: Object reference not set to an instance of an object
Arch.Core.World.Get[T] (Arch.Core.Entity entity) (at <8704400f3ef34475945ffb62bfb102d6>:0)
DCL.CharacterPreview.CharacterPreviewController.WaitForAvatarInstantiatedAsync (System.Threading.CancellationToken ct) (at Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1[TResult].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:244)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1[TStateMachine].GetResult (System.Int16 token) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:218)
Cysharp.Threading.Tasks.UniTask+Awaiter.GetResult () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:312)
DCL.CharacterPreview.CharacterPreviewControllerBase.WrapInSpinnerAsync (System.Threading.CancellationToken ct) (at Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:178)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:104)
DCL.Diagnostics.ReportHandlerBase:LogException(Exception, ReportData, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49)
DCL.Diagnostics.ReportHubLogger:UnityEngine.ILogHandler.LogException(Exception, Object) (at Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:38)
UnityEngine.Debug:LogException(Exception)
Cysharp.Threading.Tasks.UniTaskScheduler:PublishUnobservedTaskException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskScheduler.cs:90)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoidMethodBuilder:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskVoidMethodBuilder.cs:53)
DCL.CharacterPreview.<WrapInSpinnerAsync>d__26:MoveNext() (at Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:179)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoid`1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104)
Cysharp.Threading.Tasks.AwaiterActions:Continuation(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1:TrySetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:167)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:210)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskMethodBuilder:SetException(Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskMethodBuilder.cs:59)
DCL.CharacterPreview.<WaitForAvatarInstantiatedAsync>d__8:MoveNext() (at Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:189)
Cysharp.Threading.Tasks.AwaiterActions:Continuation(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1:TrySetResult(Object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:139)
Cysharp.Threading.Tasks.YieldPromise:MoveNext() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Delay.cs:251)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:RunCore() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:203)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Update() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:145)
Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Run() (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:104)

[UNSPECIFIED]:
0x00007ff61bb874dd (Unity) StackWalker::GetCurrentCallstack
0x00007ff61bb8c5a9 (Unity) StackWalker::ShowCallstack
0x00007ff61cb6a091 (Unity) GetStacktrace
0x00007ff61d2242ce (Unity) DebugStringToFile
0x00007ff61ab484f8 (Unity) DebugLogHandler_CUSTOM_Internal_Log
0x0000021e4d8ac4ca (Mono JIT Code) (wrapper managed-to-native) UnityEngine.DebugLogHandler:Internal_Log (UnityEngine.LogType,UnityEngine.LogOption,string,UnityEngine.Object)
0x0000021e4d8ac33b (Mono JIT Code) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[])
0x0000021f3d12477e (Mono JIT Code) DCL.Diagnostics.DebugLogReportHandler:LogExceptionInternal (System.Exception,DCL.Diagnostics.ReportData,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/DebugLogReportHandler.cs:103)
0x0000021f3d124108 (Mono JIT Code) DCL.Diagnostics.ReportHandlerBase:LogException (System.Exception,DCL.Diagnostics.ReportData,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/Handlers/ReportHandlerBase.cs:49)
0x0000021f35750215 (Mono JIT Code) DCL.Diagnostics.ReportHubLogger:UnityEngine.ILogHandler.LogException (System.Exception,UnityEngine.Object) (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/PerformanceAndDiagnostics/Diagnostics/ReportsHandling/ReportHubLogger.cs:38)
0x0000021f3d13fcb1 (Mono JIT Code) UnityEngine.Logger:LogException (System.Exception,UnityEngine.Object)
0x0000021f3d13fad8 (Mono JIT Code) UnityEngine.Debug:LogException (System.Exception)
0x0000021f3d13f8a3 (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskScheduler:PublishUnobservedTaskException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskScheduler.cs:90)
0x0000021f3d13ef83 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoidMethodBuilder:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskVoidMethodBuilder.cs:53)
0x0000021f1f980e53 (Mono JIT Code) DCL.CharacterPreview.CharacterPreviewControllerBase/<WrapInSpinnerAsync>d__26:MoveNext () (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/Character/CharacterPreview/CharacterPreviewControllerBase.cs:179)
0x0000021e702ce0c7 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskVoid`1<TStateMachine_REF>:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:104)
0x0000021e489656c3 (Mono JIT Code) Cysharp.Threading.Tasks.AwaiterActions:Continuation (object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
0x0000021f3d11c80c (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1<Cysharp.Threading.Tasks.AsyncUnit>:TrySetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:167)
0x0000021f3d11c3db (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1<TStateMachine_REF>:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:210)
0x0000021f3d11c2b9 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTaskMethodBuilder:SetException (System.Exception) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/AsyncUniTaskMethodBuilder.cs:59)
0x0000021f1f9893eb (Mono JIT Code) DCL.CharacterPreview.CharacterPreviewController/<WaitForAvatarInstantiatedAsync>d__8:MoveNext () (at C:/Projects/Decentraland/unity-explorer/Explorer/Assets/DCL/Character/CharacterPreview/CharacterPreviewController.cs:92)
0x0000021e4897d107 (Mono JIT Code) Cysharp.Threading.Tasks.CompilerServices.AsyncUniTask`1<TStateMachine_REF>:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/CompilerServices/StateMachineRunner.cs:189)
0x0000021e489656c3 (Mono JIT Code) Cysharp.Threading.Tasks.AwaiterActions:Continuation (object) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.cs:21)
0x0000021e48965543 (Mono JIT Code) Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1<TResult_REF>:TrySetResult (TResult_REF) (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTaskCompletionSource.cs:139)
0x00000220fb5484f3 (Mono JIT Code) Cysharp.Threading.Tasks.UniTask/YieldPromise:MoveNext () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/UniTask.Delay.cs:251)
0x0000021e2889ec8f (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:RunCore () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:203)
0x0000021e28906aa3 (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Update () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:145)
0x0000021e2889dc23 (Mono JIT Code) Cysharp.Threading.Tasks.Internal.PlayerLoopRunner:Run () (at ./Library/PackageCache/com.cysharp.unitask@73d86259ce/Runtime/Internal/PlayerLoopRunner.cs:104)
0x0000021f1d9eb388 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
0x00007fffe3d64c1e (mono-2.0-bdwgc) mono_jit_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/mini/mini-runtime.c:3445)
0x00007fffe3c9d254 (mono-2.0-bdwgc) do_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/metadata/object.c:3068)
0x00007fffe3c9d3cc (mono-2.0-bdwgc) mono_runtime_invoke (at C:/build/output/Unity-Technologies/mono/mono/metadata/object.c:3115)
0x00007ff61baa0574 (Unity) scripting_method_invoke
0x00007ff61ba7e2e4 (Unity) ScriptingInvocation::Invoke
0x00007ff61b715482 (Unity) ExecutePlayerLoop
0x00007ff61b7154a0 (Unity) ExecutePlayerLoop
0x00007ff61b71bd35 (Unity) PlayerLoop
0x00007ff61c6ea06f (Unity) PlayerLoopController::InternalUpdateScene
0x00007ff61c6f6e9d (Unity) PlayerLoopController::UpdateSceneIfNeededFromMainLoop
0x00007ff61c6f5181 (Unity) Application::TickTimer
0x00007ff61cb6fd3a (Unity) MainMessageLoop
0x00007ff61cb74c10 (Unity) WinMain
0x00007ff61df5765e (Unity) __scrt_common_main_seh
0x00007ff89ae87344 (KERNEL32) BaseThreadInitThunk
0x00007ff89b5826b1 (ntdll) RtlUserThreadStart

There is an issue whenever you setup the account for the first time in the dApp web app.

Unity opens the browser at: https://decentraland.org/auth/requests/:requestId
The webapp checks if the userId exists, and if not, it redirects to https://decentraland.org/auth/setup so you can create the account for the first time
The redirection misses the &redirectTo=... param
When you finally setup your profile, the webapp do not finishes the login flow properly. It does not allow you to verify the code and sign the login request, so the unity client gets stucked in the code verification process
Its fixed if you restart the login

This problem will be fixed by dApp team: https://github.com/decentraland/auth/issues/115


Avoid suggesting non-public object fields

Purpose

With this, avoid suggesting non-public fields and methods in objects over Dot operator.

Fixes #20315
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[x] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Reviewed


feat(config): allow line numbers to be a function

I believe this will fix #211 without requiring much (barely any) added complexity within this function. Rather than deal with the statuscolumn at all, with this PR users can use the line_numbers option to control how the numbers are rendered for each line of the context window i.e. they can re-arrange the padding as needed to align with a custom statusline

In the example above in order to match with my statuscolumn which outputs a string that looks like
(note this is not exactly how my statuscolumn is laid out)
   1,200  |
   1,201  |

I used
line_numbers = function(lnum, width)
     -- split the padding to surround the number to match the layout of my statuscolumn
	 return ('  %-' .. (width - 4) .. 'd   '):format(lnum)
end,

Hopefully this solution allows this plugin to remain agnostic to stuff like the statuscolumn but allows a user to customize the appearance to match their chosen layout.
NOTE: this can easily be a separate option, I just thought it fitting to expand the functionality of this option since it already relates to exactly the same thing

Great. But we should also be reminded that this is just a workaround.

@registerGen having looked through the code base and also considered how to implement this in a way that does not put too much maintenance burden on the authors/ looking at how this plugin is already structured (a bit) I don't see this as a "workaround". When you say complete fix presumably you imagine that this plugin could automagically get the value of your statuscolumn but at line x that is shown in the context.
From what I can see this plugin constructs the signcolumn by looking at what number should be there and what the text offset is.
There is no API to query the value of the statuscolumn at line x AFAICT.

we need to look into the statusline.

Even if we could do this this is a major pain for the authors to deal with. Even though nvim_eval_statusline exists, how will they know what is truly the line number even if you could get access to the statuscolumn which you cannot. What if the user puts other numbers in there? or there are signs with numbers? e.g. |  2  2  | say the first two is the fold level and the second is the line number...🙃.
Whereas this solution is a 2 or so lines of code and all the user has to do is layout the string the way they have already done for their statuscolumn themselves since they already know what it should look like. Possibly that could be made easier but that's a separate issue.
As always though as this is FOSS if you have some alternative suggestion I'm happy to take those on board this is just my 2 cents/attempt at a minimal solution, since I don't see a simple one but I could easily be missing some alternative

Honestly I would rather support this properly with no config then add this. If no API exists yet to do this then I'd rather not do it at all.

@lewis6991 that's fair enough, it's up to you.
Given that a proper API for this sounds like something that even if it were desirable which you'd know better than me if it would be or not, seems like it would require quite a lot of discussion and possibly a fairly involved implementation. All of which is to say that at best it's a maybe/long way away.
I appreciate not wanting to add this configuration but given the blocker of not having an API for this and that more and more users will start using the statuscolumn once 0.9 is stable. So this will crop up again. Is there some other acceptable middle ground for users currently in this situation? Currently disabling line numbers is possible but then the window just sits beside the statuscolumn but the items in the column relate to the actual lines underneath the window, which I think is fairly confusing since it's easy to think that the line number relates to line in the context or if there was a diagnostic then that there's a bug at that line.

Could there be a version of this window that extends the full width at least to cover the statuscolumn so it doesn't look like the signs in it are pointing at the content of the context window
Is there a version of this PR that is palatable e.g. maybe the user doesn't specify a function but just an offset for the line number i.e. at the moment the plugin assumes the line number is always last and so all padding should be before it. Maybe it could allow the user to specify the offset for the number themself and do the padding around it in the plugin?

Basically, I want a route that allows this config to not exist in the future. If we add it, then there's expectation that it should always be there and work.

seems like it would require quite a lot of discussion and possibly a fairly involved implementation.

I don't know. It might not. I think it would be reasonable to achieve this via nvim_eval_statusline with some provided context.
@luukbvaal: what do you think? Can we get floating windows to emulate statuscolumn for windows it's on top of with custom values for the line number?

Well yeah sounds like nvim_eval_statusline may be used to at least parse the 'statuscolumn' width of the underlying window so that the line number aligns.
Alternatively you might actually copy 'statuscolumn' to the floating window and make sure the line you're displaying is on the same line number? I.e. fill the buffer with enough empty lines so that 'statuscolumn' is evaluated with the proper v:lnum.

Alternatively you might actually copy 'statuscolumn' to the floating window and make sure the line you're displaying is on the same line number? I.e. fill the buffer with enough empty lines so that 'statuscolumn' is evaluated with the proper v:lnum.

That sounds hard and hacky? Could we provide options to nvim_eval_statusline to override context?

Well a limited "context" could be provided by setting v:lnum before calling nvim_eval_statusline(), which may be enough for simpler 'statuscolumn's. Additionally g:statusline_winid may be set to the underlying window id. A proper (more complicated) 'statuscolumn' will use that (through %!(v:lua.)StatusCol()) at which point the context may be complete in nvim_eval_statusline().

Hmm I can get the statuslcolumn text showing with something like
local function build_lno_str(lnum, width)
  if vim.wo.statuscolumn and #vim.wo.statuscolumn > 0  then
    local key = vim.wo.relativenumber and 'relnum' or 'lnum'
    local prev_value = vim.v[key]
    vim.v[key] = lnum
    local str = api.nvim_eval_statusline(vim.wo.statuscolumn, {maxwidth = 0}).str
    vim.v[key] = prev_value -- does this need to be restored?
    return str
  end
  return string.format('%'..width..'d', lnum)
end

Doesn't quite work at the moment since all the line numbers are the same, but just wondering if this is "right"/ an acceptable direction to go in @lewis6991

-- does this need to be restored?

Not necessary no, the redraw routines will always set it accordingly.
You should set both v:relnum and v:lnum, the 'statuscolumn' might evaluate both.

If you want to this right we will probably need to add a use_statuscol field to nvim_eval_statusline() that supplies a non NULL statuscol_T and fill it's sattr and foldinfo fields accordingly so that the sign and fold %s/%C items can be evaluated properly...

Ah I'd forgotten about those (since I personally quite like that they aren't there), and that they wouldn't render correctly probably since were essentially trying to recreate the context for rendering the statuscolumn manually in the example above. Without that will the %s/%C columns render as strings or explode is some unforeseen way.

They will not be drawn, as in evaluated as an empty string which could result in misalignment again.

Our implementation could pad out the signs to match the window below.

All in all this sounds fairly reasonable. I'd much rather go this route since: 1) less config, 2) other plugins can benefit.

@lewis6991 just to clarify when you say this route, you mean proceeding with implementing what @luukvbaal suggested without the signs. Not sure how we'd know how wide that column should be since it could be a variable width and positioned anywhere in the statuscolumn, same goes for the fold column. Or waiting on a change to nvim_eval_statusline so signs are populated?

We should need to provide enough signs in the window and let nvim_eval_statusline. Again for folds, we need to figure out how many folds there are in the window.

We need to provide enough signs in the window and let nvim_eval_statusline do the rest. Again for folds, we need to figure out how many folds there are in the window and set them in the window.

You shouldn't have to do that if you provide the handle of the underlying window to nvim_eval_statusline().

Ok, so we just need to fake the line numbers then?

I think so yeah.
I considered adapting nvim_eval_statusline earlier but it wasn't really an option back then, the refactor in https://github.com/neovim/neovim/pull/22108 made it feasible.

If it's not too much work, I'm sure @akinsho would really appreciate these improvements. 😉

If it was officially supported and the signs & folds were popuplated that'd be great. Since otherwise

We need to provide enough signs in the window and let nvim_eval_statusline do the rest

I'm not sure what this means/how that would work? the signcolumn can be anywhere between 1-9 right and so presumably when using %s in the statuscolumn (which I don't personally) this value could evaluate to a string of length varying from 1-9, but without a proper API it would just be an empty string "" or would it be "     " (size of the column). Similarly for the fold column (it's size is also variable).
Although sounds like it maybe won't be an issue 🤷🏾♂ either way

@akinsho you could try out this branch: https://github.com/luukvbaal/neovim/tree/evalstc. It seems to work.
Ironically this might be more efficient than what I'm doing currently in my statuscolumn plugin. For which supporting extmarks was my original motivation for https://github.com/neovim/neovim/pull/22778😅. Although iterating over the signs/marks properly like I'm doing now is more flexible and probably still necessary to support everything I support now.

🎉 Thanks for your quick work on that @luukvbaal, I'll give it a proper go in a little bit as I'm not near my computer atm. With use_statuscol = true will I still need to set v:lnum and v:relnum as well as the statuswinid, just checking. I don't really mind either way.

Yes, you will still need to set the variables. I'm not familiar with this plugin but the screenshot seems to show multiple lines. So you would have to increment it to increment v:lnum and reevaluate for each line that is drawn.

👍🏾 sorry should have clarified with the questions about the variables that I hadn't looked at your commit yet so didn't know if it would take the line number as an argument or something (like I said not necessary was just checking).
Re. the v:relnum behaviour the right numbers are actually already calculated by this plugin AFAIK, it's more that when I do vim.v.relnum = my_lnum it seems to have no effect. To be clear vim.v.lnum = num works fine. But setting v:relnum seems not to. Was just wondering if there was some obscure reason I might not have thought of for that. Anyway I'll sit down and test it all properly in a bit and report back.

it's more that when I do vim.v.relnum = my_lnum it seems to have no effect

What are you setting it to and what makes you say it has no effect?

So I have the following code, and the output beneath it
  if vim.wo[win].statuscolumn and vim.wo[win].statuscolumn ~= ""  then
    vim.v.lnum = lnum
    local prev_relnum = vim.v.relnum
    vim.v.relnum = relnum
    print(vim.inspect({lnum = lnum, relnum = relnum, vlum = vim.v.lnum, vrlnum = vim.v.relnum, prev_relnum = prev_relnum}))
    vim.g.statusline_winid = win
    local str = api.nvim_eval_statusline(vim.wo[win].statuscolumn, {
      winid = win,
      use_statuscol = true,
      maxwidth = 0,
    }).str
    return str

The output is:
{
  lnum = 299,
  prev_relnum = 30,
  relnum = 21,
  vlum = 299,
  vrlnum = 30
}
{
  lnum = 200,
  prev_relnum = 29,
  relnum = 120,
  vlum = 200,
  vrlnum = 29
}
{
  lnum = 244,
  prev_relnum = 29,
  relnum = 76,
  vlum = 244,
  vrlnum = 29
}
{
  lnum = 299,
  prev_relnum = 29,
  relnum = 21,
  vlum = 299,
  vrlnum = 29
}

Note that vrlnum and relnum should have the same value as I've just set one to the other just the line before.

Right, v:relnum is read-only. I guess we can lift that restriction.

Just done some testing with a build of your commit @luukvbaal and I'm getting a crash using the above code with i.e. the current state of this branch with the use_statuscol option and the following statuscolumn vim.o.statuscolumn = ' %=%l %s %C'. This reproduces the moment the context window is shown.
I don't have a stack trace nothing was output from the crash (not familiar enough with neovim the project to know how to get one) but it definitely relates to use_statuscol since disabling that prevents the crash.

I admittedly only tested %s, perhaps the issue is in %C. I can check later.

Just tried to narrow the crash down and seems to be anything in the status column other than %s so statuscol='%s' is fine statuscol='%s%l will crash

@akinsho are you able to get a backtrace when there's a crash? That narrows down things a lot.

Or simply a repro example without this plugin would be fine, just calling nvim_eval_status() directly.

The most recent race I got was
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               nvim [24999]
Path:                  /Users/USER/*/nvim
Identifier:            nvim
Version:               ???
Code Type:             ARM-64 (Native)
Parent Process:        Exited process [24998]
Responsible:           kitty [1255]
User ID:               501

Date/Time:             2023-04-01 16:30:31.1830 +0100
OS Version:            macOS 13.3 (22E252)
Report Version:        12
Anonymous UUID:        B4FD7C53-2291-FECA-2129-083C17DC892A

Sleep/Wake UUID:       D599DFC5-7519-43E5-B0FA-0C5E3CB57433

Time Awake Since Boot: 48000 seconds
Time Since Wake:       1852 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000323730
Exception Codes:       0x0000000000000001, 0x0000000000323730

Termination Reason:    Namespace SIGNAL, Code 11 Segmentation fault: 11
Terminating Process:   exc handler [24999]

VM Region Info: 0x323730 is not in any region.  Bytes before following region:<PHONE_NUMBER>
      REGION TYPE                    START - END         [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      UNUSED SPACE AT START
--->
      __TEXT                      102568000-102a5c000    [ 5072K] r-x/r-x SM=COW  ...s/USER/*/nvim

Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libsystem_platform.dylib      	       0x1874dbec4 _platform_strlen + 4
1   libsystem_c.dylib             	       0x18734cf88 __strcat_chk + 52
2   nvim                          	       0x1029469f8 build_stl_str_hl + 5356
3   nvim                          	       0x102699400 nvim_eval_statusline + 1944
4   nvim                          	       0x10265e874 nlua_api_nvim_eval_statusline + 376
5   nvim                          	       0x1025c1414 lj_BC_FUNCC + 44
6   nvim                          	       0x1025d7264 lua_pcall + 228 (lj_api.c:1145)
7   nvim                          	       0x1026aa420 getnextac + 1544
8   nvim                          	       0x1027768e8 do_cmdline + 2280
9   nvim                          	       0x1026a8120 apply_autocmds_group + 2636
10  nvim                          	       0x1026664a8 nvim_exec_autocmds + 1512
11  nvim                          	       0x10264bc90 nlua_api_nvim_exec_autocmds + 592
12  nvim                          	       0x1025c1414 lj_BC_FUNCC + 44
13  nvim                          	       0x1025d7264 lua_pcall + 228 (lj_api.c:1145)
14  nvim                          	       0x102941cd8 state_handle_k_event + 176
15  nvim                          	       0x1028604a8 nv_event + 60
16  nvim                          	       0x1028540dc normal_execute + 9564
17  nvim                          	       0x102941a24 state_enter + 160
18  nvim                          	       0x102646f78 main + 14344
19  dyld                          	       0x187157f28 start + 2236

Thread 1:
0   libsystem_kernel.dylib        	       0x187473710 __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x1874b0574 _pthread_cond_wait + 1232
2   nvim                          	       0x10263dff4 uv_cond_wait + 12 (thread.c:911)
3   nvim                          	       0x10262eb50 worker + 112 (threadpool.c:76)
4   libsystem_pthread.dylib       	       0x1874affa8 _pthread_start + 148
5   libsystem_pthread.dylib       	       0x1874aada0 thread_start + 8

Thread 2:
0   libsystem_kernel.dylib        	       0x187473710 __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x1874b0574 _pthread_cond_wait + 1232
2   nvim                          	       0x10263dff4 uv_cond_wait + 12 (thread.c:911)
3   nvim                          	       0x10262eb50 worker + 112 (threadpool.c:76)
4   libsystem_pthread.dylib       	       0x1874affa8 _pthread_start + 148
5   libsystem_pthread.dylib       	       0x1874aada0 thread_start + 8

Thread 3:
0   libsystem_kernel.dylib        	       0x187473710 __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x1874b0574 _pthread_cond_wait + 1232
2   nvim                          	       0x10263dff4 uv_cond_wait + 12 (thread.c:911)
3   nvim                          	       0x10262eb50 worker + 112 (threadpool.c:76)
4   libsystem_pthread.dylib       	       0x1874affa8 _pthread_start + 148
5   libsystem_pthread.dylib       	       0x1874aada0 thread_start + 8

Thread 4:
0   libsystem_kernel.dylib        	       0x187473710 __psynch_cvwait + 8
1   libsystem_pthread.dylib       	       0x1874b0574 _pthread_cond_wait + 1232
2   nvim                          	       0x10263dff4 uv_cond_wait + 12 (thread.c:911)
3   nvim                          	       0x10262eb50 worker + 112 (threadpool.c:76)
4   libsystem_pthread.dylib       	       0x1874affa8 _pthread_start + 148
5   libsystem_pthread.dylib       	       0x1874aada0 thread_start + 8

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000323734   x1: 0x0000000000323730   x2: 0x000000000000000a   x3: 0x00000001874dbe06
    x4: 0x0000000000000000   x5: 0x000000016d8919f0   x6: 0x0000000000000000   x7: 0x0000000000000000
    x8: 0x000000016d892093   x9: 0x0000000129008200  x10: 0x0000000000323734  x11: 0x000000016d892090
   x12: 0x0000000000000001  x13: 0x0000000000000001  x14: 0x000000016d891ed0  x15: 0x0000000000000000
   x16: 0x00000001874dbec0  x17: 0x00000001e7431940  x18: 0x0000000000000000  x19: 0x000000016d891e8a
   x20: 0x0000000000323734  x21: 0x0000000000000000  x22: 0x0000000129008220  x23: 0x0000000000000046
   x24: 0x0000000000000000  x25: 0x0000000000000002  x26: 0x0000000000000000  x27: 0x0000000102a79760
   x28: 0x0000000102a795f8   fp: 0x000000016d891ce0   lr: 0x000000018734cf88
    sp: 0x000000016d891cb0   pc: 0x00000001874dbec4 cpsr: 0x80001000
   far: 0x0000000000323730  esr: 0x92000006 (Data Abort) byte read Translation fault

Binary Images:
       0x102568000 -        0x102a5bfff nvim (*) <3e8e5a39-1a35-33e5-b772-58ea844c0fbc> /Users/USER/*/nvim
       0x102c70000 -        0x102c7bfff libintl.8.dylib (*) <95dbe1d0-4dd8-3502-abb6-0b08ff7b4e0f> /opt/homebrew/*/libintl.8.dylib
       0x10362c000 -        0x103687fff c.so (*) <029cb822-b5a1-307f-83d2-c52e3308505b> /Users/USER/*/c.so
       0x1874db000 -        0x1874e1ff3 libsystem_platform.dylib (*) <756cd10d-62a0-3283-9e57-cbaa810c95ac> /usr/lib/system/libsystem_platform.dylib
       0x187347000 -        0x1873c5ff7 libsystem_c.dylib (*) <9277aff7-3cc3-30d0-99b7-c62680da95cf> /usr/lib/system/libsystem_c.dylib
       0x187152000 -        0x1871e053b dyld (*) <6f2c2bb8-4bbc-3b64-b927-d3f3193b6295> /usr/lib/dyld
       0x18746f000 -        0x1874a8fe7 libsystem_kernel.dylib (*) <7acbd9bc-d056-310e-858d-81b116cf6d28> /usr/lib/system/libsystem_kernel.dylib
       0x1874a9000 -        0x1874b5fff libsystem_pthread.dylib (*) <b401cfb3-8dfe-32db-92b3-ba8af0f8ca6e> /usr/lib/system/libsystem_pthread.dylib
               0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ???

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=917.9M resident=0K(0%) swapped_out_or_unallocated=917.9M(100%)
Writable regions: Total=1.3G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.3G(100%)

                                VIRTUAL   REGION
REGION TYPE                        SIZE    COUNT (non-coalesced)
===========                     =======  =======
Activity Tracing                   256K        1
Kernel Alloc Once                   32K        1
MALLOC                           240.2M       30
MALLOC guard page                   96K        4
MALLOC_MEDIUM (reserved)         600.0M        5         reserved VM address space (unallocated)
MALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)
STACK GUARD                       56.1M        5
Stack                             40.1M        5
VM_ALLOCATE                       23.3M      187
__AUTH                             309K       58
__AUTH_CONST                      3737K      142
__DATA                            1674K      137
__DATA_CONST                      4224K      146
__DATA_DIRTY                       361K       58
__LINKEDIT                       801.9M        4
__OBJC_RO                         66.2M        1
__OBJC_RW                         2011K        1
__TEXT                           116.0M      153
dyld private memory                272K        2
shared memory                       32K        2
===========                     =======  =======
TOTAL                              2.3G      943
TOTAL, minus reserved VM space     1.3G      943

-----------
Full Report
-----------

{"app_name":"nvim","timestamp":"2023-04-01 16:30:31.00 +0100","app_version":"","slice_uuid":"3e8e5a39-1a35-33e5-b772-58ea844c0fbc","build_version":"","platform":1,"share_with_app_devs":0,"is_first_party":1,"bug_type":"309","os_version":"macOS 13.3 (22E252)","roots_installed":0,"incident_id":"BB23505E-D99E-48BC-AFD5-2F641E69E489","name":"nvim"}
{
  "uptime" : 48000,
  "procRole" : "Unspecified",
  "version" : 2,
  "userID" : 501,
  "deployVersion" : 210,
  "modelCode" : "MacBookPro18,1",
  "coalitionID" : 827,
  "osVersion" : {
    "train" : "macOS 13.3",
    "build" : "22E252",
    "releaseType" : "User"
  },
  "captureTime" : "2023-04-01 16:30:31.1830 +0100",
  "incident" : "BB23505E-D99E-48BC-AFD5-2F641E69E489",
  "pid" : 24999,
  "translated" : false,
  "cpuType" : "ARM-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2023-04-01 16:30:30.5739 +0100",
  "procStartAbsTime" :<PHONE_NUMBER>486,
  "procExitAbsTime" :<PHONE_NUMBER>147,
  "procName" : "nvim",
  "procPath" : "\/Users\/USER\/*\/nvim",
  "parentProc" : "Exited process",
  "parentPid" : 24998,
  "coalitionName" : "net.kovidgoyal.kitty",
  "crashReporterKey" : "B4FD7C53-2291-FECA-2129-083C17DC892A",
  "responsiblePid" : 1255,
  "responsibleProc" : "kitty",
  "codeSigningID" : "nvim",
  "codeSigningTeamID" : "",
  "codeSigningFlags" : 570556929,
  "codeSigningValidationCategory" : 10,
  "codeSigningTrustLevel" : 0,
  "wakeTime" : 1852,
  "sleepWakeUUID" : "D599DFC5-7519-43E5-B0FA-0C5E3CB57433",
  "sip" : "enabled",
  "vmRegionInfo" : "0x323730 is not in any region.  Bytes before following region:<PHONE_NUMBER>\n      REGION TYPE                    START - END         [ VSIZE] PRT\/MAX SHRMOD  REGION DETAIL\n      UNUSED SPACE AT START\n--->  \n      __TEXT                      102568000-102a5c000    [ 5072K] r-x\/r-x SM=COW  ...s\/USER\/*\/nvim",
  "exception" : {"codes":"0x0000000000000001, 0x0000000000323730","rawCodes":[1,3290928],"type":"EXC_BAD_ACCESS","signal":"SIGSEGV","subtype":"KERN_INVALID_ADDRESS at 0x0000000000323730"},
  "termination" : {"flags":0,"code":11,"namespace":"SIGNAL","indicator":"Segmentation fault: 11","byProc":"exc handler","byPid":24999},
  "vmregioninfo" : "0x323730 is not in any region.  Bytes before following region:<PHONE_NUMBER>\n      REGION TYPE                    START - END         [ VSIZE] PRT\/MAX SHRMOD  REGION DETAIL\n      UNUSED SPACE AT START\n--->  \n      __TEXT                      102568000-102a5c000    [ 5072K] r-x\/r-x SM=COW  ...s\/USER\/*\/nvim",
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 0,
  "threads" : [{"triggered":true,"id":11845085,"threadState":{"x":[{"value":3290932},{"value":3290928},{"value":10},{"value":6564986374},{"value":0},{"value":6132668912},{"value":0},{"value":0},{"value":6132670611},{"value":4982866432},{"value":3290932},{"value":6132670608},{"value":1},{"value":1},{"value":6132670160},{"value":0},{"value":6564986560,"symbolLocation":0,"symbol":"_platform_strlen"},{"value":8174901568},{"value":0},{"value":6132670090},{"value":3290932},{"value":0},{"value":4982866464},{"value":70},{"value":0},{"value":2},{"value":0},{"value":4339504992,"symbolLocation":0,"symbol":"hl_attr_active"},{"value":4339504632,"symbolLocation":0,"symbol":"ns_hl_fast"}],"flavor":"ARM_THREAD_STATE64","lr":{"value":6563352456},"cpsr":{"value":2147487744},"fp":{"value":6132669664},"sp":{"value":6132669616},"esr":{"value":2449473542,"description":"(Data Abort) byte read Translation fault"},"pc":{"value":6564986564,"matchesCrashFrame":1},"far":{"value":3290928}},"queue":"com.apple.main-thread","frames":[{"imageOffset":3780,"symbol":"_platform_strlen","symbolLocation":4,"imageIndex":3},{"imageOffset":24456,"symbol":"__strcat_chk","symbolLocation":52,"imageIndex":4},{"imageOffset":4057592,"symbol":"build_stl_str_hl","symbolLocation":5356,"imageIndex":0},{"imageOffset":1250304,"symbol":"nvim_eval_statusline","symbolLocation":1944,"imageIndex":0},{"imageOffset":1009780,"symbol":"nlua_api_nvim_eval_statusline","symbolLocation":376,"imageIndex":0},{"imageOffset":365588,"symbol":"lj_BC_FUNCC","symbolLocation":44,"imageIndex":0},{"imageOffset":455268,"sourceLine":1145,"sourceFile":"lj_api.c","symbol":"lua_pcall","imageIndex":0,"symbolLocation":228},{"imageOffset":1319968,"symbol":"getnextac","symbolLocation":1544,"imageIndex":0},{"imageOffset":2156776,"symbol":"do_cmdline","symbolLocation":2280,"imageIndex":0},{"imageOffset":1311008,"symbol":"apply_autocmds_group","symbolLocation":2636,"imageIndex":0},{"imageOffset":1041576,"symbol":"nvim_exec_autocmds","symbolLocation":1512,"imageIndex":0},{"imageOffset":933008,"symbol":"nlua_api_nvim_exec_autocmds","symbolLocation":592,"imageIndex":0},{"imageOffset":365588,"symbol":"lj_BC_FUNCC","symbolLocation":44,"imageIndex":0},{"imageOffset":455268,"sourceLine":1145,"sourceFile":"lj_api.c","symbol":"lua_pcall","imageIndex":0,"symbolLocation":228},{"imageOffset":4037848,"symbol":"state_handle_k_event","symbolLocation":176,"imageIndex":0},{"imageOffset":3114152,"symbol":"nv_event","symbolLocation":60,"imageIndex":0},{"imageOffset":3064028,"symbol":"normal_execute","symbolLocation":9564,"imageIndex":0},{"imageOffset":4037156,"symbol":"state_enter","symbolLocation":160,"imageIndex":0},{"imageOffset":913272,"symbol":"main","symbolLocation":14344,"imageIndex":0},{"imageOffset":24360,"symbol":"start","symbolLocation":2236,"imageIndex":5}]},{"id":11845580,"frames":[{"imageOffset":18192,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":6},{"imageOffset":30068,"symbol":"_pthread_cond_wait","symbolLocation":1232,"imageIndex":7},{"imageOffset":876532,"sourceLine":911,"sourceFile":"thread.c","symbol":"uv_cond_wait","imageIndex":0,"symbolLocation":12},{"imageOffset":813904,"sourceLine":76,"sourceFile":"threadpool.c","symbol":"worker","imageIndex":0,"symbolLocation":112},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":7},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":7}]},{"id":11845581,"frames":[{"imageOffset":18192,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":6},{"imageOffset":30068,"symbol":"_pthread_cond_wait","symbolLocation":1232,"imageIndex":7},{"imageOffset":876532,"sourceLine":911,"sourceFile":"thread.c","symbol":"uv_cond_wait","imageIndex":0,"symbolLocation":12},{"imageOffset":813904,"sourceLine":76,"sourceFile":"threadpool.c","symbol":"worker","imageIndex":0,"symbolLocation":112},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":7},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":7}]},{"id":11845582,"frames":[{"imageOffset":18192,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":6},{"imageOffset":30068,"symbol":"_pthread_cond_wait","symbolLocation":1232,"imageIndex":7},{"imageOffset":876532,"sourceLine":911,"sourceFile":"thread.c","symbol":"uv_cond_wait","imageIndex":0,"symbolLocation":12},{"imageOffset":813904,"sourceLine":76,"sourceFile":"threadpool.c","symbol":"worker","imageIndex":0,"symbolLocation":112},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":7},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":7}]},{"id":11845583,"frames":[{"imageOffset":18192,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":6},{"imageOffset":30068,"symbol":"_pthread_cond_wait","symbolLocation":1232,"imageIndex":7},{"imageOffset":876532,"sourceLine":911,"sourceFile":"thread.c","symbol":"uv_cond_wait","imageIndex":0,"symbolLocation":12},{"imageOffset":813904,"sourceLine":76,"sourceFile":"threadpool.c","symbol":"worker","imageIndex":0,"symbolLocation":112},{"imageOffset":28584,"symbol":"_pthread_start","symbolLocation":148,"imageIndex":7},{"imageOffset":7584,"symbol":"thread_start","symbolLocation":8,"imageIndex":7}]}],
  "usedImages" : [
  {
    "source" : "P",
    "arch" : "arm64",
    "base" :<PHONE_NUMBER>,
    "size" : 5193728,
    "uuid" : "3e8e5a39-1a35-33e5-b772-58ea844c0fbc",
    "path" : "\/Users\/USER\/*\/nvim",
    "name" : "nvim"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" :<PHONE_NUMBER>,
    "size" : 49152,
    "uuid" : "95dbe1d0-4dd8-3502-abb6-0b08ff7b4e0f",
    "path" : "\/opt\/homebrew\/*\/libintl.8.dylib",
    "name" : "libintl.8.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64",
    "base" :<PHONE_NUMBER>,
    "size" : 376832,
    "uuid" : "029cb822-b5a1-307f-83d2-c52e3308505b",
    "path" : "\/Users\/USER\/*\/c.so",
    "name" : "c.so"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" :<PHONE_NUMBER>,
    "size" : 28660,
    "uuid" : "756cd10d-62a0-3283-9e57-cbaa810c95ac",
    "path" : "\/usr\/lib\/system\/libsystem_platform.dylib",
    "name" : "libsystem_platform.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" :<PHONE_NUMBER>,
    "size" : 520184,
    "uuid" : "9277aff7-3cc3-30d0-99b7-c62680da95cf",
    "path" : "\/usr\/lib\/system\/libsystem_c.dylib",
    "name" : "libsystem_c.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" :<PHONE_NUMBER>,
    "size" : 582972,
    "uuid" : "6f2c2bb8-4bbc-3b64-b927-d3f3193b6295",
    "path" : "\/usr\/lib\/dyld",
    "name" : "dyld"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" :<PHONE_NUMBER>,
    "size" : 237544,
    "uuid" : "7acbd9bc-d056-310e-858d-81b116cf6d28",
    "path" : "\/usr\/lib\/system\/libsystem_kernel.dylib",
    "name" : "libsystem_kernel.dylib"
  },
  {
    "source" : "P",
    "arch" : "arm64e",
    "base" :<PHONE_NUMBER>,
    "size" : 53248,
    "uuid" : "b401cfb3-8dfe-32db-92b3-ba8af0f8ca6e",
    "path" : "\/usr\/lib\/system\/libsystem_pthread.dylib",
    "name" : "libsystem_pthread.dylib"
  },
  {
    "size" : 0,
    "source" : "A",
    "base" : 0,
    "uuid" : "00000000-0000-0000-0000-000000000000"
  }
],
  "sharedCache" : {
  "base" :<PHONE_NUMBER>,
  "size" :<PHONE_NUMBER>,
  "uuid" : "581a6955-d455-3735-973b-5233bd5dd16e"
},
  "vmSummary" : "ReadOnly portion of Libraries: Total=917.9M resident=0K(0%) swapped_out_or_unallocated=917.9M(100%)\nWritable regions: Total=1.3G written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=1.3G(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nActivity Tracing                   256K        1 \nKernel Alloc Once                   32K        1 \nMALLOC                           240.2M       30 \nMALLOC guard page                   96K        4 \nMALLOC_MEDIUM (reserved)         600.0M        5         reserved VM address space (unallocated)\nMALLOC_NANO (reserved)           384.0M        1         reserved VM address space (unallocated)\nSTACK GUARD                       56.1M        5 \nStack                             40.1M        5 \nVM_ALLOCATE                       23.3M      187 \n__AUTH                             309K       58 \n__AUTH_CONST                      3737K      142 \n__DATA                            1674K      137 \n__DATA_CONST                      4224K      146 \n__DATA_DIRTY                       361K       58 \n__LINKEDIT                       801.9M        4 \n__OBJC_RO                         66.2M        1 \n__OBJC_RW                         2011K        1 \n__TEXT                           116.0M      153 \ndyld private memory                272K        2 \nshared memory                       32K        2 \n===========                     =======  ======= \nTOTAL                              2.3G      943 \nTOTAL, minus reserved VM space     1.3G      943 \n",
  "legacyInfo" : {
  "threadTriggered" : {
    "queue" : "com.apple.main-thread"
  }
},
  "logWritingSignature" : "45aab1b94f4f2dc9d27536d367af6aea32fe0da8",
  "trialInfo" : {
  "rollouts" : [
    {
      "rolloutId" : "62fe74515312cd4599bd3c80",
      "factorPackIds" : {
        "MYRIAD_BOOSTS" : "62fe74805312cd4599bd3c81"
      },
      "deploymentId" : 240000006
    },
    {
      "rolloutId" : "60186475825c62000ccf5450",
      "factorPackIds" : {

      },
      "deploymentId" : 240000026
    }
  ],
  "experiments" : [
    {
      "treatmentId" : "c28e4ee6-1b08-4f90-8e05-2809e78310a3",
      "experimentId" : "6317d2003d24842ff850182a",
      "deploymentId" : 400000013
    }
  ]
}
}

I'm also able to reproduce it with the following minimal init
vim.o.signcolumn = 'yes:1'
vim.o.number = true
vim.o.relativenumber = true
vim.o.statuscolumn = ' %=%l %s %C'

vim.schedule(function()
  local str = vim.api.nvim_eval_statusline(vim.o.statuscolumn, {
    winid = vim.api.nvim_get_current_win(),
    use_statuscol = true,
  }).str
  vim.notify('Str: ' .. str)
end)

Sorry, I cant reproduce the crash. I had experienced crashes myself which I already fixed, I don't quite remember if I force pushed any change after posting the branch here. Are you on the latest commit?

@akinsho FYI opts->use_statuscol was renamed to use_statuscol_lnum and should be set to the line number. No need to modify v:lnum directly.

Thanks for the heads up @luukvbaal and for all your work on that and the previous PR 🙏🏾


Add all support images from the original repo

This PR includes all CEs and Servants from the original repo.
Servants are organized by folder, as per the new structure.
I'm sure the APK size will linearly increase as we add more images, so maybe these should be distributed as a separate package instead?

@potchy We're actually planning to keep the images organized in a separate repository.
We're still in the process of deciding file name conventions to avoid duplicates and all.
I'll let you know once the conventions are ready or we could handle adjusting the filenames ourselves if you're too busy and all.

I've done it again. I've migrated the whole codebase to Kotlin, PR in review #108.
Xamarin C# was giving us some problems like weird errors on the latest version (Android 7.1.2) of Nox emulator.
Also, memory leaks were a pain to debug with limited support for free users of Visual Studio.
So, this app is now a proper Android app which is developed in Android Studio.
As a result, the directory structure for the project will change heavily causing even more conflicts with this PR. So, I'm closing it.
BTW, thank you for your work on the original Lua project. 👍
I'll be happy to have you here too if you got time.


Improve Blake 3 performance using compiler flags

All compiler flags are switched off for lowest common denominator compile. Should be possible to improve mining and validation performance by improving make files to switch on compiler flags where appropriate.

have a look in config.ac - this is the line that switches the flags off -
CFLAGS="$CFLAGS -DBLAKE3_NO_SSE2 -DBLAKE3_NO_SSE41 -DBLAKE3_NO_AVX2 -DBLAKE3_NO_AVX512"

Ok removed it and start to compile as for now its ok

fails all time I think it is related to files inside blake3 folder

Yes, I was only able to get it to compile by putting this kludge in the make file. I'm sure a make file wizard could have this compiling to a single binary with all the optimizations that only kick-in when the required CPU features are available. It's beyond my skills though.

hmmm, i was able to get it to compile by using the
CFLAGS="-march=skylake-avx512"
with CONFIG_SITE=
However the miner crashes running it on different hardware, so i guess this will compile with the optimizations, but will crash on a computer that doesn't have the CPU instructions.
Miners may be able to gain optimizations by compiling it on the machine they are running it with and compiling with CFLAGS="-march=native"
more details on compiling here - looks like each of the files needs to be compiled with different processor switches.
https://github.com/BLAKE3-team/BLAKE3/blob/master/c/README.md#x86

left sse and avx2 flags on. possible additional gains if avx512 switch properly added.


Plugin boilerplate

Note: this should be reset once the typescript generator is merged to main

Provide a simple boilerplate for creating a plugin
Provide instructions for creating a plugin

@mweichert @ricklove , what's the status of this PR?
Is this something we should rebase and merge?


fix: release build to 18 to support semantic

Description

semantic requires >18

Testing required outside of automated testing?

[ ] Not Applicable

Screenshots (if appropriate):

[ ] Not Applicable

Rollback / Rollforward Procedure

[ ] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.12.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket: