setLineItems and setLineItem private API function examples missing

Hi there,
Please update the following sample-code-php example to include examples of private function calls needed to create lineItems:
sample-code-php/PaymentTransactions/get-an-accept-payment-page.php
During creation of transaction before requesting a hosted payment page. To add Lineitems to customer order, the private function examples are missing.
["order":"net\authorize\api\contract\v1\TransactionRequestType":private]=> NULL ["lineItems":"net\authorize\api\contract\v1\TransactionRequestType":private]
order->Lineitems is only superficially referenced in API documentation located here:
https://developer.authorize.net/api/reference/index.html#payment-transactions-create-an-accept-payment-transaction
There is only a python sdk example at the moment:
https://community.developer.authorize.net/t5/Integration-and-Testing/Adding-lineItems-in-python-sdk/m-p/59737/highlight/true#M34315
When trying to do the following:
      $lineItem1 = array();
      $lineItem1["itemId"] = "12345";
  $lineItem1["name"] = "first";
  $lineItem1["description"] = "Here's the first line item";
  $lineItem1["quantity"] = "2";
  $lineItem1["unitPrice"] = "7.99";

  $lineItems = array();
  $lineItems[] = $lineItem1;

      $transactionRequestType->setLineItems($lineItems);

API responds with this error:
PHP Fatal error:  Call to a member function getItemId() on array
There seems to be private functions designated in API for this purpose but are not documented.
Thank you,
Zeshan

What is the type of your create transaction request?

All of the fields in PHP SDK are private. If a field is supposed to be set in a request, appropriate setter is present. (See for reference:
a. In TransactionRequestType , lineItems is defined as private .
b. setLineItems setter is defined for lineItems.
c. Similarly, you can create a lineItem object based on LineItemType.php

LineItems is an array.
A lineItem, in itself is an object. Hence similar to the python example, the object attributes need to be assigned. For each attribute, the respective setter method need to be used.

Can you try using something like below:
     $lineItem1 = new AnetAPI\LineItemType();
     $lineItem1->setItemId("12345");
     $lineItem1->setName("first");
     $lineItem1->setDescription("Here's the first line item");
     $lineItem1->setQuantity(2);
     $lineItem1->setUnitPrice("7.99");
     $lineItems[0] = $lineItem1;

      //create a transaction
      $transactionRequestType = new AnetAPI\TransactionRequestType();
      $transactionRequestType->setTransactionType( "authCaptureTransaction");
      $transactionRequestType->setAmount($amount);
      $transactionRequestType->setOrder($order);
      $transactionRequestType->setPayment($paymentOne);
      $transactionRequestType->setLineItems($lineItems);

I have based it on the charge-credit-card  sample.

An easier implementation would be this:
    $lineItem1 = new AnetAPI\LineItemType();
    $lineItem1->setItemId("12345");
    $lineItem1->setName("first");
    $lineItem1->setDescription("Here's the first line item");
    $lineItem1->setQuantity("2");
    $lineItem1->setUnitPrice("7.99");

    $transactionRequestType->addToLineItems($lineItem1);

I've tested this and it works perfectly well.

Thank you, setting the variable to the provided settype function worked.
$lineItem1 = new AnetAPI\LineItemType();
My concern is that these functions aren't referenced in API reference doc.
For example only lineitem is mentioned.
Thank you very much for this response to my inquiry.
Regards,
Zeshan
On Thu, Jul 12, 2018, 12:57 PM Gabriel Broadwin Nongsiej <
<EMAIL_ADDRESS>wrote:

An easier implementation would be this:
$lineItem1 = new AnetAPI\LineItemType();
$lineItem1->setItemId("12345");
$lineItem1->setName("first");
$lineItem1->setDescription("Here's the first line item");
$lineItem1->setQuantity("2");
$lineItem1->setUnitPrice("7.99");

$transactionRequestType->addToLineItems($lineItem1);

I've tested this and it works perfectly well.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AuthorizeNet/sample-code-php/issues/116#issuecomment-404579868,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGXRY-eczN9yS5Z6axnDEErqGITiLS4Oks5uF3_ygaJpZM4VM5Md
.

Hi Zeshan,
We're sorry for the inconvenience. We will relay this information to the relevant teams and have them carry it forward.
Do let us know if you have any other issues. If your issues are resolved, kindly close this issue.

HI @gnongsie,
Just to confirm, is the following correct understanding of what variables have this type function name  designation?

element
function

order
$your-holder =  new AnetAPI\OrderType();

tax
$your-holder = new AnetAPI\TaxType();

duty
$your-holder = new AnetAPI\DutyType();

customer
$your-holder = new AnetAPI\CustomerType();

billTo
$your-holder = new AnetAPI\BillToType();

..
..

In reference to API doc located here:
https://developer.authorize.net/api/reference/index.html#payment-transactions-create-an-accept-payment-transaction
Regards,
Zeshan

Hi @zeshanb,

The field "order" is of AnetApi\OrderType.
Any tax or duty amount is of AnetApi\ExtendedAmountType.
The "billTo" field is of AnetApi\CustomerAddressType.
The "shipTo" field is of AnetApi\NameAndAddressType.

For further information, kindly refer to our PHP SDK. For your particular request, you can find further information of the fields here for Creating an Accept Payment Request and here for Getting a Hosted Payment Page Request.


chore: fetch Cairo1 compiler version from Cargo.toml

This change is

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

Project coverage is 76.81%.  Consider uploading reports for the commit e353e2a to get more accurate results

Files
Patch %
Lines

crates/blockifier/src/test_utils/cairo_compile.rs
0.00%
10 Missing :warning:

Additional details and impacted files
@@                                    Coverage Diff                                    @@
##           dori/move-compilation-logic-to-feature-contracts-enum    #1872      +/-   ##
=========================================================================================
- Coverage                                                  76.90%   76.81%   -0.09%
=========================================================================================
  Files                                                         61       61
  Lines                                                       8721     8731      +10
  Branches                                                    8721     8731      +10
=========================================================================================
  Hits                                                        6707     6707
- Misses                                                      1572     1582      +10
  Partials                                                     442      442

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


Sms / Mms integration

Could be good to use the Riot app as the default sms/mms application on android.
It needs to integrate well with contacts. Moreover it must allow a user to fallback to sms if they want or if network is not available (message not receive by the other side after a delay)

+1

With Signal and @moxie0 rejecting to federate, this would be the opportunity to grab users into a secure, decentralized, modern messaging platform. Pushing forward democracy and reducing SPF like these.


Save comment state

Keep comment state for each app instance, if comments are opened again show the old comment data

Done


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-main" workflow

Codecov Report

Merging #58 (08b4e0c) into main (78b9623) will decrease coverage by 3.90%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #58      +/-   ##
==========================================
- Coverage   71.99%   68.09%   -3.91%
==========================================
  Files           4        3       -1
  Lines         457      351     -106
  Branches       28        0      -28
==========================================
- Hits          329      239      -90
+ Misses         94       78      -16
  Partials       34       34

Flag
Coverage Δ

cdk
?

go-lambda
68.09% <ø> (ø)

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

Impacted Files
Coverage Δ

src/index.ts

Continue to review full report at Codecov.

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


var keyword will generate invalid output

Upcoming Defold v1.9.3 uses the var keyword as a parameter in its documentation: https://defold.com/ref/beta/types/#types.is_hash:var
Use of this reserved keyword is invalid in TypeScript: SyntaxError: 'var' is not allowed as a parameter name.
We should probably detect the var parameter and change it to v.

Interesting choice for a parameter name, haha.


--Stride option  in what modes does it work?

albertobsd commented 27 days ago
This option is already in the last update please use it with -I 1 where 1 is the stride.
Any comments let me now
https://github.com/albertobsd/keyhunt/issues/37#issuecomment-951156537
I tried using this parameter in xpoint modes as well as in bsgs mode but didn’t see it working. Stride: 100,000,000,000 I expected a stride every 100,000,000,000 keys, but it doesn't. Thanks.

Only is available for address, rmd160, xpoint and ethereum.
It will never going to work for bsgs check
https://github.com/albertobsd/keyhunt/issues/132

Hi alberto I appreciate your work. If we specify the step option as 1, the name does not have any meaning? We should be able to specify the desired number, as in bitcrack. Therefore, the step function does not work.


Add parse-backticks to pulse, actions and blame

Well why not??
<!--

Thanks for contributing! 🍄

1. LINKED ISSUES:
   Does this PR close/fix an existing issue? Write something like `Closes #10`

2. TEST URLS:
   Add some test URLs

3. SCREENSHOT:
   Add a screenshot here if your PR makes visual changes

@fregante are you able to merge these pr's? I have too many open 😄

Every time you force push it forces me review the whole PR. Just use git merge when necessary, not git rebase. Why was a force push needed here?

Sorry

Im not done yet. Just have to leave the computer so i pushed

I give up. I am not sure how to do this. If you want you can just revert the isactions and isPulse


[FEATURE_REQUEST] Public IP widget - Allow choosing ipv4/ipv6

Is your feature request related to a problem? If so, please describe.
No response
Describe the solution you'd like
The vm on which dashy runs uses mullvad vpn, using public ip widget I get the ipv6 address displayed (which also gets cut off if only 1 column is configured), I would like an option for the widget to instead show the ipv4 address.
I use just the default 1 line to make the widget:
    widgets:
      - type: public-ip

Otherwise let me just say thanks for dashboard of my dreams ❤
Priority
Low (Nice-to-have)
Is this something you would be keen to implement
No response

Just looking into this now, there are three different providers supported for getting IP address. But after looking through their docs, (correct me if I'm wrong) I don't think any of them let you specify IPv4 / IPv6 address type to display.
We could use some CSS to either reduce the text size or allow it to break onto the next line? Alternativley, if you're running Glances, you could try the gl-ip-address widget.
On another note, I also use Mullvad, and I think it's fairly popular, so I am thinking of making a Mullvad widget. They have a a small REST API: https://am.i.mullvad.net/json, which displays IP address, server or ISP location and Mullvad status. Doesn't fix the long IPv6 address issue tho.

I couldn't find a way to choose the protocol at provider lvl either. Alternatively a widget option to not show the ip, just the flag and isp? As long as I see it's not my real isp I know I'm good (why I wanted ipv4 address is because I remember if it's 8x. i'm off vpn and if it's 1xx. I'm on vpn).
Mullvad specific widget would be very nice, I switched to them few months back from pia and I'm quite happy.
I am looking into Glances, for now I just made the network section 2 columns wide.

I think adding an option to hide the IP address, from the IP address widget, might not be the most practical.
So how about you instead do this just on your instance, with CSS. Under the config menu, go to custom styles, and paste something like: p.ip-address { display: none; }. Or put it under  appConfig.customCss in your config.

Fantastic, the CSS line works just as how I wanted it, even better than showing the ip, many thanks!


Run tsne callbacks in a subprocess

Could make tsne plotting module.
Make impl functions for 2d,3d that can be called as a normal python function.
Pass in a h5 or npy file path to embedding coordinates and have the function save the plot to save_path, write to tensorboard,wandb, etc.
EX:  plot_tsne2d_impl(embeddings_path, save_path, wandb=None, tensorboard_writer=None, **kwargs)
Then make a click interface to the 2d, 3d tsne impls. '2d' vs '3d' can be a CLI param.
Now make another function that uses the subprocess module to call the click CLI (below)
def plot_tsne(embeddings_path, save_path, plot_dim, subprocess=False, **kwargs):
    if subprocess:
        # call click CLI with subprocess module
   else:
       if plot_dim == '2d':
           plot_tsne2d_impl(...)
      elif plot_dim == '3d':
          plot_tsne_3d_impl(...)

Note: both the click interface and the subprocess interface are very small functions... just passing args basically.
This makes the callbacks very simple. They only need to save the embeddings to disk as a npy file (or something) and then call the plot_tsne function with subprocess=True. In fact, this way we only need 1 tsne callback and we can specify 2d,3d,both as an input parameter. This way the embeddings file won't get saved twice.
Putting the 2d,3d together is not the most general approach e.g. what if a future callback also needs the embeddings. There is probably a better solution to saving the embeddings for use with multiple callbacks...

Done.


Add no-op asgi-lifespan handling

Super simple hook that checks for lifespan and immediately responds type.complete, essentially making startup/shutdown lifespan events no-ops for the prometheus ASGI app.
Fixes #855
from hypercorn.middleware import DispatcherMiddleware
from prometheus_client import make_asgi_app
import asyncio

async def main():

    from hypercorn.asyncio import serve
    from hypercorn.config import Config

    app = DispatcherMiddleware({
        "/metrics": make_asgi_app(),
    })

    config = Config()
    config.bind = ["localhost:8080"]

    await serve(app, config)

Before:
    assert scope.get("type") == "http"
AssertionError

After:
[2022-11-15 16:05:20 -0800] [59048] [INFO] Running on http://<IP_ADDRESS>:8080 (CTRL + C to quit)
INFO:hypercorn.error:Running on http://<IP_ADDRESS>:8080 (CTRL + C to quit)

Signed-off-by: Sheena Artrip<EMAIL_ADDRESS>

If an exception is raised when calling the application callable with a lifespan.startup message or a scope with type lifespan, the server must continue but not send any lifespan events.

this might be a better solution!


Fix code error

Codecov Report

Merging #231 into master will not impact coverage.

@@           Coverage Diff           @@
##           master     #231   +/-   ##
=======================================
  Coverage   98.97%   98.97%
=======================================
  Files           6        6
  Lines         391      391
  Branches      117      117
=======================================
  Hits          387      387
  Misses          2        2
  Partials        2        2

Continue to review full report at Codecov.

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

this is not an "error", rather a syntax choice, if the project requires a linting step, there are plenty of options to adopt. suggest closing this as un-needed change.


Firdes refactoring

This includes a few proposed changes to firdes and related modules:

Window functions no longer use the FilterWindow trait, but directly returns the window as Vec<f64>. The use of FilterWindow trait seemed unnecessary, added a tight dependency between modules, and complicated the use of e.g., simd.

Several of the window functions now includes a periodic argument that specifies whether the window should be constructed to be periodic. This is useful for spectral analysis (e.g., used in radar).

firdes now supports generic numeric types using the num_traits::FromPrimitive trait. This includes of course f32 and f64, but can also be used for e.g., fixed-point numbers. Basically, everything is computed with f64, and then converted to the desired type before returning the filter taps.

firdes now also includes a RRC filter.

In principle, the num_traits::FromPrimitive could also be used for the window functions, but I do not see the immediate benefit at the moment. It can be implemented later if needed.

It might be possible, but I guess it requires the number of taps be known at compile time. If for instance the kaiser method is used to design the filter, then the number of taps depends on the transition width and ripple. In practice, I guess these parameters will often be static, and so the design_kaiser_window() function can be made const. The question is whether the benefits of using a static filter length outweigh these constraints. There might be a way to achieve both flexibility, but I am not sufficiently proficient in Rust to see that option :)


Add LBL

A esoteric interpreted language created by MrGargoyle134 here : https://github.com/MrGargoyle134/LBL

i'm sorry i don't know how to do


[CI] Don't clone repo if pending or skip jobs

There's no need to clone antrea repo if it is a pending or skip job.
This PR should fasten job build speed by deleting scm related fields in
job-template.
Signed-off-by: Zhecheng Li<EMAIL_ADDRESS>

/skip-all


[ISSUE #XXX] Remove unused imports in tests

Make sure set the target branch to develop
What is the purpose of the change
remove unused imports
Brief changelog
remove unused imports
Verifying this change
no need
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Plz create an issue and link this pull request

Plz create an issue and link this pull request


Refactor-do_not_use_flutter_isolate

Flutter does not support invoking method channels in isolates. Therfore, the usage of the flutter isolate package is not necessary anymore.
Note: This is based on my other PRs

Using Flutter's native isolate also has the advantage that the isolate can be named.


HTTPCLIENT-2099: SSLConnectionSocketFactory timeout fix

SSLConnectionSocketFactory no longer overrides the socket timeout
with the connect timeout when an unlimited socket timeout is
configured. This matches behavior of HTTPCLIENT-2091.
Note that in scenarios where SocketConfig sets an infinite timeout
and the RequestConfig sets a bounded timeout, this change results
in the connect-timeout no longer applying to the TLS handshake.
This behavior can be retained by setting the expected timeout in
the SocketConfig.

@carterkozak Damn, the pull request was against master, not the 5.1.x branch. I will have to move it to the 5.1.x branch.

oops, my fault, sorry about that. I can set up a revert pr and a second change if you like.

@carterkozak No, worries. I will fix it.

@carterkozak I apologize for causing such a confusion.  HTTPCLIENT-2091 fix committed to master and not 5.1.x. So, we are all good.

Not a problem, thanks again for your help!


add support for RapidVideo.tv

It only requires a javascript beautifier to get the direct video url:
http://howtodownload.org/how-to-download-videos-from-rapidvideo-tv

Post an example url.

ok, here it is:
http://www.rapidvideo.org/x9q9dh32cvle

The video is a copyrighted tv show episode (Wikipedia article) and I doubt they have the rights for distributing that content, and it seems that a lot of their videos are infringing copyright. We can't add support for this kind if sites.


Modularize CloudProviders with new gradle structure

blocks #21 (switch from maven to gradle)

Looks like there's a few remaining cloud items in the portability-core cloud package that remain to be moved to the new spi


docs: adjust workshop material to SAP BTP rebranding

This PR includes the adjusted text and images.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Update to 5.2.1 Version Number

more details would help, may be a link to release process or the set of steps.
or a previous release issue number


Proposed 0.33.0-b7

Includes PRs: #1813, #1816, #1818, #1822 and #1824

Current coverage is 71.80% (diff: 98.84%)

Merging #1827 into develop will increase coverage by 0.19%

@@            develop      #1827   diff @@
==========================================
  Files           871        872     +1
  Lines         69787      70038   +251
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits          49973      50292   +319
+ Misses        19814      19746    -68
  Partials          0          0

Powered by Codecov. Last update 68e123a...a6fd3a1


⚠ ClamAV has degraded performance

In 21aaa15, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 74 ms

Resolved: ClamAV performance has improved in be496de after 11 minutes.


Add git tags to released versions

It'd be nice if tags were created for each released version, to make the specific commits easier to find.

I went through the commit history and pinned all versions down to the right commit from back then.


fixed Exception and upgraded coverage dependency

I fixed the type of hitmap and updated the coverage dependency because dart-coveralls failed with the following Exception (probably since Dart 2.0.0-dev.64.1):
type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'Map<String, Map<int, int>>'
package:dart_coveralls/src/collect_lcov.dart 92:44  LcovCollector.getLcovInformation
===== asynchronous gap ===========================
dart:async                                          _AsyncAwaitCompleter.completeError
package:dart_coveralls/src/collect_lcov.dart        LcovCollector.getLcovInformation
===== asynchronous gap ===========================
dart:async                                          _asyncThenWrapperHelper
package:dart_coveralls/src/collect_lcov.dart        LcovCollector.getLcovInformation
package:dart_coveralls/src/cli_client.dart 40:22    CommandLineClient.getLcovResult
package:dart_coveralls/src/cli_client.dart 66:25    CommandLineClient.reportToCoveralls

fixed by now

Hi @denniskaselow.  Sorry I didn't see this!
You'll note that we're not actually out of the woods just yet as we're hanging at runtime (#84). I'm guessing this has to do with new async semantics but haven't had the time yet to look.

And I closed this prematurely. I thought this issue because there was a new version with an upgraded dependency, but the type is still wrong.

I'd guess the problem in #84 is also related to the type. They are not using the --throw-on-error flag so it just silently fails without printing the exception.

@denniskaselow

I'd guess the problem in #84 is also related to the type

Maybe!  I was just suggesting async behavior because we've seen similar behavior elsewhere.  Anyway, this is great and we should land it -- though I admit I'm still seeing a hang with it patched in locally.  🤔  But maybe there are other similar failures getting silently suppressed?  Any more ideas welcome!  (I'll do some poking around in the meantime.)
Thanks!


How can I show the error being thrown in XRay console?

Hi
I'm using XRay with AWS Lambda and was wondering why an error, thrown in my code, doesn't end up in in the Exceptions tab inside the Segment?
What I do in my Lambda handler is just throw new Error('Hello world'); but the Exceptions tab stays empty.

The overview shows that something went wrong, but this doesn't allow me to easily pinpoint the error and on which line (stack trace).

Am I doing something wrong? Do I need to take manual action to add the stack trace to my segment?
Kind regards,
Sam

Hi SamVerschueren,
Sorry for the late reply.
Can you post your raw trace data? I want to see if the stack trace/error is on the segment at all.

Not a solution, but as a workaround to the issue I have been placing logic within a try/catch block and bubbling the errors up to it.
Inside the catch you can add a subsegment.
In the subsegment, run a subsegment.addError(err)
https://docs.aws.amazon.com/xray-sdk-for-nodejs/latest/reference/Subsegment.html
Then when you observe Xray traces you can see quick error output/a nice red error icon next to the subsegment.

@awssandra The error is not in the raw data
{
    "Duration": 3.096,
    "Id": "1-5da015d5-360ce338611f0b7ce8b61474",
    "Segments": [
        {
            "Document": {
                "id": "29fe1e5dc4f44858",
                "name": "test-xray-error",
                "start_time":<PHONE_NUMBER>.529,
                "end_time":<PHONE_NUMBER>.625,
                "error": true,
                "http": {
                    "response": {
                        "status": 200
                    }
                },
                "aws": {
                    "request_id": "c86f641e-0cb9-4744-957a-5dd50e7a6d3a"
                },
                "trace_id": "1-5da015d5-360ce338611f0b7ce8b61474",
                "origin": "AWS::Lambda",
                "resource_arn": "arn:aws:lambda:eu-west-1:333477131547:function:test-xray-error"
            },
            "Id": "29fe1e5dc4f44858"
        },
        {
            "Document": {
                "id": "1976f2c1163c43c5",
                "name": "test-xray-error",
                "start_time":<PHONE_NUMBER>.284575,
                "end_time":<PHONE_NUMBER>.5232158,
                "parent_id": "29fe1e5dc4f44858",
                "error": true,
                "aws": {
                    "function_arn": "arn:aws:lambda:eu-west-1:333477131547:function:test-xray-error",
                    "resource_names": [
                        "test-xray-error"
                    ],
                    "account_id": "333477131547"
                },
                "trace_id": "1-5da015d5-360ce338611f0b7ce8b61474",
                "origin": "AWS::Lambda::Function",
                "subsegments": [
                    {
                        "id": "1b329401178061a7",
                        "name": "Initialization",
                        "start_time":<PHONE_NUMBER>.2847211,
                        "end_time":<PHONE_NUMBER>.5230796,
                        "error": true,
                        "aws": {
                            "function_arn": "arn:aws:lambda:eu-west-1:333477131547:function:test-xray-error"
                        }
                    }
                ]
            },
            "Id": "1976f2c1163c43c5"
        }
    ]
}

@kevin-miles I'm going to look into that! Thanks for the tip.

I wanted to see what I can do with the addError. It seems I can't use AWSXRay.getSegment().addError(). Not sure why though, but I had to make a sub segment.
const AWSXRay = require('aws-xray-sdk-core');

exports.handler = async (event) => {
    AWSXRay.captureFunc('exceptions', subsegment => {
        subsegment.addError(new Error('hello world'));
    });

    throw new Error('Something went wrong');
};

This attaches the hello world error to the segment, but as a sub segment

Can't I just add it to my Invocation or to my test-xray-error parent node?
I also wanted to add a global error handler like this
const AWSXRay = require('aws-xray-sdk-core');

process.on('uncaughtException', error => {
    console.log(error);

    AWSXRay.captureFunc('annotations', subsegment => {
        subsegment.addError(error);
    });
});

exports.handler = async (event) => {
    throw new Error('Something went wrong');
};

The error is printed, but it's not added to the sub segment.
So in general, yes it can be done manually through addError but it feels cumbersome. Can't this be done automatically in the XRay SDK itself? If not, can I do it in the uncaughtException handler?

I think I was wrong regarding the uncaughtException. That handler is actually never executed. Probably because Lambda catches the errors in the background automatically which makes that errors or always caught.

Hi @SamVerschueren,
You cannot use addError() on the segment in a Lambda function because the segment created by the Lambda service is immutable by customer code. That and the initialization, invocation, and overhead subsegments are only used internally and will perform no-ops on all methods applied to them. Creating and operating with custom subsegments is the correct approach.
Either surrounding your handler code with a try/catch block and manually creating a subsegment and adding the error as @kevin-miles suggested. By the way, the close() method implicitly calls addError and handles cleanup work for the subsegment:
var AWSXRay = require('aws-xray-sdk');

exports.handler = async (event) => {
    var sub = AWSXRay.getSegment().addNewSubsegment('testError');
    try {
        // Some code...

        throw new Error('Something went wrong.');
    } catch (e) {
        sub.close(e, false); // Or sub.addError()
    }
};

Or you can surround your code with the captureFunc() or captureAsyncFunc() API to capture exceptions in your handler automatically:
var AWSXRay = require('aws-xray-sdk');

exports.handler = async (event) => {
    AWSXRay.captureFunc('testError', subsegment => {
        // Some code...

        throw new Error('Something went wrong');
    });
};

Please let me know if you have further questions, otherwise I'll close this issue.


Cameraview blacks out after changing its size

Hi,
cameraview blacks out after changing it's LayoutParams in an activity. Below piece of code used to work earlier before I updated to the latest changes:
public void applySize(int sizePixels) {
        if (cameraViewRef != null) {
            CameraView cameraView = cameraViewRef.get();
            if (cameraView != null) {
                ViewGroup.LayoutParams params = cameraView.getLayoutParams();
                if (params != null) {
                    params.width = sizePixels;
                    params.height = sizePixels;
                    cameraView.setLayoutParams(params);
                } else {
                    Timber.d("layout params are null for cameraview");
                }
            } else {
                Timber.d("camera view got GC'ed");
            }
        } else {
            Timber.e("must set a camera view");
        }
    }

I see that also when changing Visibility

@mkotyk TextureView is added twice to CameraView. So when requestLayout is called on CameraView blank surface comes up. Note that CameraView parent is FrameLayout

I met the same requirements and issues.
You can replace the layout to achieve the effect.


v0.3.5 vulnerable to RUSTSEC-2020-0146

The most recent Cargo release (v0.3.5) is vulnerable to https://rustsec.org/advisories/RUSTSEC-2020-0146
All of the affected dependencies are up to date in master.  I'd PR a backport but there doesn't seem to be a release branch or consistent tagging :shrug:
A new release v0.3.x release with dependencies patched would be great.  Thanks!

+1, this is affecting a lot of downstream Rust crypto deps including libp2p
(PS: @t-nelson I think you mean v0.3.5 rather than v0.5.3)

In the cargo.toml file of latest commit:
https://github.com/paritytech/libsecp256k1/blob/12e3829d6cd2d6459c2c920d7cf222f3a930b955/Cargo.toml#L5

A patched version generic-array 0.12.4 is now available, so any downstream projects affected by this can now fix it just by running:
cargo update -p generic-array:0.12.3

do you mean:
cargo update -p generic-array:0.12.4

Any plans to release a version to patch this vulnerability ?

No changes to this project are needed since generic-array 0.12.4 was released. New downstream projects will use the latest compatible version by default, which includes the fix. Existing Cargo.lock files can be updated with cargo update.


HTTP/3 Patch for Nginx 1.18.0 stable ?

Curious if there's any plans to bump up or release a HTTP/3 patch for latest Nginx stable which moved from 1.16.1 to 1.18.0 http://nginx.org/en/download.html ?

good idea

And now 1.19.0.

@Wsget Nginx 1.19.0 is the mainline version, but I'd also like to see support for it.

Thanks @ghedo. Your comment gave me confidence to test it out.
We tested the patch against nginx 1.19.2 version and it seemed to work. We released an edge docker image containing latest nginx with quiche (ranadeeppolavarapu/nginx-http3:edge). Please feel free to test and play around with it to your liking.

Looks like we can close this.

The current patch file does not work anymore due to the removal of post_accept_timeout in the core, https://github.com/nginx/nginx/commit/2ec8fac2d6b8e5023c9894d10bc50d78e63f242c.

A sketch for nginx >= 1.19.7 (that has not been released yet) is here [1] and the derived patch is contained here [2].
[1] https://github.com/marinelli/nginx/tree/quiche-nginx-1.19.7
[2] https://github.com/marinelli/quiche/tree/quiche-nginx-1.19.7

1.19.7 is released now

compiled failed with 1.19.7

A preliminary patch is available in Zestginx but needs a follow-up as per the comment on line 364.
https://github.com/ZestProjects/zestginx/commit/977f2a9ec71053108aa4271f613c63704f00a3b5


Add support for generics

Considering we're implementing data-structures not available in golang. It would be great to make data-structure operations and type generic.

Implemented generics in existing data-structures. Going forward any data-structure in dsa_go will support generics.


Fix User Input Auto-Advance

Fixes Auto-Advance enabled until the next user input not ending on user input.
Fixes the PR https://github.com/dialogic-godot/dialogic/issues/2022.
This PR fixes unit tests relying on the Dialogic autoload.

Lgtm


virtualMachineScaleSet ARM template fails to deploy if spot restoration fields are present

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Describe the bug
The spot restoration feature is included on a new VMSS via ARM template by including spotRestorePolicy which includes a boolean field called enabled.
However, this only works when priority is set to Spot. If priority is set to Regular, the template will fail to deploy with Spot restoration feature is supported only for Azure Spot Virtual Machine Scale Sets, regardless of the whether the boolean enabled field for spotRestorePolicy is set to false.
The only solution right now is to have 2 separate templates, one for spot and one for regular VMSS
To Reproduce

Create a VMSS ARM template with priority of 'Regular', creating a non-spot VMSS
Include the spotRestorePolicy field and try changing the enabled field to true or false. Both will fail.

Expected behavior
Logically, it should be possible to create a template of priority Spot or a template of priority Regular, and still include this field.
When priority == Regular and spotRestorePolicy -> false, the template should still deploy.
Environment summary
Mac OS (Big Sur) 11.5.1. Azure CLI version 2.30.0. API version 2021-07-01 for virtualMachineScaleSets in ARM template.
Additional context
N/A

Compute


Add v2.7.0 image of aws load balancer controller

Please select the kind of this pull request, e.g.:
/kind enhancement
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #1265
Special notes for your reviewer:

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

thanks 😄
/lgtm
/approve

/ok-to-test


SVG primitives and role=button

I want to be able to use role=button in combination with aria-pressed=true||false on an SVG primitive. NOTE: I also want to be able to use aria-selected as well but we will only be testing role=button for now (which is not compatible with aria-selected).
We will need to develop scaffolding for this and also test these semantics across screen readers and browsers.
Notes: parent structure above the button is also an unknown. It is possible that some parent semantics will affect button and aria-pressed performance.
Should we use region -> group -> button? Figure -> group -> button? Graphics-document -> graphics-object -> button? Menu? Tree? Grid? Treegrid?
How do we make these elements accessible to keyboard-only users (users that do not leverage a screen reader)? tab-index, wrapped in an <a> element, javascript and custom keypress handling?
Expectations:

We expect that a screen reader (SR) can navigate to each element with a role and aria-label using a keyboard (SVG, g, and all SVG primitives).
We expect that a SR will announce the aria-label correctly.
We expect that a SR will be able to toggle the element on or off.
We expect that a SR will announce the toggle state correctly when navigated to.
We expect that a SR will announce the toggle state correctly when changed.
We expect that different SVG primitives (rect, circle, path, text) will be consistent with each other based on previous expectations.
We expect that the SVG elements will provide the same experience as the HTML elements (below the SVG space).

@frankelavsky After our conversation about the test, I was wondering if you could update the "Interaction instructions" to be more specific? For example,
"Move into the chart using TAB for keyboard only. If using a screen reader, navigate as normal. Then press SPACEBAR on an element."

@frankelavsky Hi! Mentioning the bug we found here that needs to be fixed before I can continue testing. The aria pressed attribute is toggling on the parent element in the HTML section.

Hi @shelbyelavsky, the issue with toggling should be fixed now. Thanks for the heads up!

I'm noting here that there is a difference in behavior for the role=button test environment if you press TAB versus using a screen reader's built in navigation keys. It produces different results.
Since our goal is to focus on how SRs interact and explore SVGs I will only be testing/recording using each screen reader's default buttons - arrow keys to navigate and SPACE to interact.

Important note as I do testing with VoiceOver and Safari:
Pressing SPACE versus pressing VoiceOver's Control+Option+SPACE produces slightly different results. While they are similar - VO states "selected" when using their key press setting.
Therefore, I am using VoiceOver's default Control+Option+SPACE for selecting/interacting with the toggleable buttons during my tests.

I'm adding the recorded test videos for each browser/screen reader combinations here for easy access.
NVDA and Chrome
https://user-images.githubusercontent.com/98043076/161120396-13196f9e-db42-473b-9b4c-f8016fa501bb.mp4
https://user-images.githubusercontent.com/98043076/161120408-fa909f03-ae7f-4eee-8c9e-5bffa43bf916.mp4
NVDA and Firefox
https://user-images.githubusercontent.com/98043076/161120427-5ef6252b-4f2b-46fa-9b6c-a85c4ef42478.mp4
VoiceOver and Safari
https://user-images.githubusercontent.com/98043076/161120445-0ab8259a-e399-452a-ba8c-39b22b3d1f78.mp4
JAWS and Chrome
https://user-images.githubusercontent.com/98043076/161120328-2bef237b-feb4-48e3-961d-f850b6293c03.mp4
https://user-images.githubusercontent.com/98043076/161120349-3bfee67b-de28-4db7-be99-bc4699be4e02.mp4


Button click effect is gone

When using your module this button click effect that shows animations like border is gone

What button? a reproduction would be helpful.


Fix a regression that caused the DirectByteBuffer constructor to be unavailable

Motivation:
The check for the availability had been modified to account for changes in the constructor arguments in Java 17.
Unfortunately, these changes broke the check for all versions, and made us fall back to plain ByteBuffer-based implementations.
Modification:
Fix the check. Specifically, we cannot use invokeExact because the constructor returns a DirectByteBuffer object, and that class is package-private to java.nio.
Result:
We can now use unsafe buffer implementations again.

The build failed with an OutOfMemoryError due to us now holding on to the PoolArenas more strongly than we did before #12276.
This is fixed in #12279.

@chrisvest can you rebase ?

@normanmaurer Rebased. Hopefully the build goes green now.


Update track.py

Thanks.
I believe the track itself shouldn't impact the user experience.
Even if an error raised, the user doesn't need to be aware of it.


Each Source class currently has a "url" variable. Is this needed?

Should we just remove it?

@kindly said his thinking about this was to allow someone to say "Oh, this new API is the same format as this other API. I'll just get the CLI to run the other source, but I'll specify a different base URL." A) if they are doing this they would need to specify a new source id to B) this just avoids someone having to make a new class - is that such a common task we need to avoid?
Anyway, if we are going to keep them so we can do something like the above, we'll have to edit all sources to use the self.url variable - all sources currently hard code the URL.

Ok, there might be uses for this in future, and it's a tiny thing to leave it / add to new ones so let's leave it for now until things become clearer. Closing.


typo: publically -. publicly

@nschonni : Thanks for your contribution! The author, @douglaslMS, has been notified to review your proposed change.


When attempting to debug a device, we now check whether the web inspe…

…ctor is enabled

It looks good apart from the minor question


pure python schema parsing

I implemented the parsing of Spark SQL schemas in pure python.
Comparing the performance of the python parser as compared to delegating the task to the spark function shows a 20 fold improvement when running in a databricks notebook

Hi @GustavNK, i think you also encountered issue #219. This is the fix for you. All tests pass now.


Implement the Loan Repayment steps for Share Companies with outstanding Loans

Loan Repayment by The eleven (11) Share Companies starts when the President of a Share Company purchases the first 6 Train. The Share Company that did the purchase Completes the operations of the Company before the Loan Repayment State is entered.

Each Player, in Player Order starting with the President of the Company who bought the 6 then repay the Loans the companies they are the president of before proceeding to the next player.
The Share Companies MUST pay back in $100 increments any outstanding loans from the Company Treasury
The President of the Share Company paying back the loan MAY pay back loans in $100 Increments.
The President MAY NOT sell shares to pay back loans. The money comes only from their personal Treasury.
If the company has outstanding loans, set a flag that this company will be absorbed into the CGR

Basic Functionality for Loan Repayment will be finished in V0.7.28 Beta

Items to complete:

The UNDO Button needs to be added below the DONE Button for each Player. The UNDO Button should only be active for the Active Player.
For Network Games, for the Non-Active Players, the DONE Button,, and UNDO Button should be disabled.
For Network Games, for the Non-Active Players, the actual Active Player box should have an ORANGE Border
For Network Games, for the Active Player Box should have an ORANGE Background -- FINISHED
For Network Games, when a Redeem Loan (regardless of Pay from Treasury or Pay from President) there needs a Special Panel Effect be added to a Special Panel Action (which chains the the previous action) and sent to make sure the remote clients have their frame updated.
Add an Open Market Portfolio display between the last Player Box.

Need to test all UNDO situations.

All of the above has been completed. One very minor item left (Undo after all Loans are paid, need to re-show the Loan Repayment Frame. Also added a Notification sub-panel, and this will show a CONTINUE button once all loans have been confirmed paid (or not paid). The Continue will proceed to folding the shares into CGR.
Note, once this step is started, need to complete all aspects before the game can continue.
It can be Skipped (simply have all players close the frame) Game should continue as it has in the past.


Fix as_json for async client

I have verified that it fixes the issue locally. I'm working on some testing that will be in a follow up PR.

This fix will be very helpful for new release of pyTriton client.


Various fixes

I was going through Playground.jl and I found various minor issues including:

Fix octal integer mistake with chmod
Unnecessary begin blocks
Switch to using @unix
Using readchomp instead of extra strip call

Can you make a separate PR for just the chmod fix to master and the rest of these changes can go to dev.

Will do.

New PR using dev as base #33


Memory usage difference between racon with sam or paf files

Hello,
I am running Racon with sam file and paf file as input, respectively. What I observe is that racon with paf input consumes almost 2x memory than racon with sam input. What can be the reason for this?
Thank you!

Hi,
Which mapper did you use to generate the sam file? It is possible that the aligner you used generates output which is more specific than Minimap1 mappings without alignment, especially in case of shorter repetitive regions.
How many overlaps do you have reported in your .paf file? And how many alignments in the .sam?
Best regards,
Ivan.

Hi Ivan,
I used BWA-MEM for the .sam files and Minimap1 for the .paf files. There are 251.911 overlaps in .paf file and 176.425 mappings in the .sam file. Is there any algorithmic difference that can cause this memory usage difference? Or is it just because there are more overlaps than mappings?
Thank you.
Best,
Damla

Hi Damla,
are you using Racon for error correction or the default mode (consensus/polishing)?
Best regards,
Robert

Hi Robert,
For polishing.
Best,
Damla

How large are your SAM and PAF file, respectively?

SAM file is 4.2GB and PAF file is 34MB.

How are you measuring the memory consumption? Is it twice as large during the whole runtime or just on some parts?

I just used it with /usr/bin/time -v, so it is the peak memory usage, not the average.

The number of overlaps might indicate why more memory is used in the PAF case (1.45 times more overlaps than the SAM file).

But in the algorithm, there is not a significant difference that can affect memory usage, right?
Thank you!

Only the POA graphs might increase in size a little due to more sequences added to them.


Run+Debug on the container?

[This page documents how to create a function then how to build and run it on a container, however it does not document how to run+debug the project on the container (i.e. hit F5 in vscode and what executes is NOT on the container, it's only running on the  host/venv). If this can or can't be done, could it please be stipulated so that we know where limits lie. Thank you.]

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

ID: 5d505ab9-d351-6650-6d0c-bb65d2daa229
Version Independent ID: 2a1d3487-a93d-2206-7ef9-a91aa275ec4e
Content: Create Azure Functions on Linux using a custom image
Content Source: articles/azure-functions/functions-create-function-linux-custom-image.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

Thank you for your feedback! We have assigned this issue to the author to review further and take the next course of action.


Cloudflare R2 - Cannot Save to R2

Describe the bug
KeeAnywhere is unable to save to Cloudflare R2 (using KeeAnywhere S3 compatible account). This appears to be due R2 not implementing streaming SigV4, and KeeAnywhere received the error: (501): Not Implemented, STREAMING-AWS4-HMAC-SHA256-PAYLOAD.
According to these R2 Docs issues:

package attempts streaming SigV4 so the operations need to be given the DisablePayloadSigning = true option
https://github.com/cloudflare/cloudflare-docs/issues/6133
https://github.com/cloudflare/cloudflare-docs/issues/4683

Searching for the error leads to other projects that have the same issues that are fixed by disabling payload signing:
https://forum.duplicati.com/t/back-up-to-cloudflare-r2-storage-fails/15511/19
To Reproduce
Steps to reproduce the behavior:

Successfully setup Cloudflare R2 as an Amazon S3 account in KeeAnywhere.
Open your database
Make a change, and save. Receive error in screenshot below.

Expected behavior
KeeAnywhere should be able to utilize Cloudflare R2 as an S3-compatible account provider
Screenshots

Environment:

OS and Version: Windows 10
KeePass-Version: 2.57
KeeAnywhere-Version: 2.1

Additional context
I realize that Cloudflare R2 could be considered not "compatible" with Amazon S3 if they do no implement all operations. It would still be nice to be able to use cloudflare R2 with KeeAnywhere 😀

According to sources which you have find looks that we would need to add DisablePayloadSigning = true to https://github.com/Kyrodan/KeeAnywhere/blob/d563e88b35987d80c6975cf81fa03204bc70f176/KeeAnywhere/StorageProviders/AmazonS3/AmazonS3StorageProvider.cs#L70


Issues with pip installed package

So pip installed boardify and I tried the example in README, faced below issues

package missed

charts/ directory
index.html

BarChart params
File "dash.py", line 46, in data   return BarChart(data, label="Fruits").generate() TypeError: __init__() got an unexpected keyword argument 'label'
JS Error: I locally fixed issues but finally charts failed to render with console error
TypeError: "Fruits" is not a non-null object [Chart.min.js:10:62042] TypeError: l._view is undefined

Loved the idea though :)

Thank you for your feedback. I fixed those both issues and I pushed a new version to PyPi.
You can install it by typing:
pip install --upgrade boardify

I updated the example in README.md too. Please have a look. If you still get any errors, feel free to tell me!


Tests failing on Windows

See https://github.com/JuliaLinearAlgebra/BLISBLAS.jl/actions/runs/9282233656

Version 0.9 of the JLL also doesn't seem to work: https://github.com/JuliaLinearAlgebra/BLISBLAS.jl/pull/13#issuecomment-2136802561

I can't recall now whether I tested blis_jll v0.9 directly on windows, but v0.8 has worked before. So this is awkward....
The failure on Julia 1.8 is known already - this was a "notorious" bug that required updating GCC 12 itself  -
https://github.com/JuliaLang/julia/pull/50135
https://github.com/JuliaLinearAlgebra/BLIS.jl/issues/23
Will need to look more closely at the issues in Julia v1.10 and nightly, which are a different type of error, involving the cblas compatibility layer in BLIS, i.e. cdotc_64_ calling bli_cdotv_zen3_ref which may be a fallback function for the CI machine.

I looked at the header files in blis.v1.0.0.x86_64-w64-mingw32.tar.gz. They contain the lines
#if 0
#define BLIS_ENABLE_COMPLEX_RETURN_INTEL
#else
#define BLIS_DISABLE_COMPLEX_RETURN_INTEL
#endif

indicating that it was configured as expected, using the GFortran complex return convention.
I also looked at the disassembled function zdotc_64_. It has in the beginning the statement
30995451b: 49 89 cc                     movq    %rcx, %r12

which saves the first argument (%rcx) in register %r12. Near the end there are the statements
3099545b9: 4c 89 e0                     movq    %r12, %rax
3099545bc: 41 0f 11 04 24               movups  %xmm0, (%r12)

which copy %r12 to %rax, which holds the return value. That is, this function returns either an integer or a pointer. It also stores a single precision floating-point value into the address pointed to by %r12.
This looks as if this function was using the Intel Fortran complex return convention.
If that is correct then BLIS would have been miscompiled, either due to of an error in its configuration management or due to an error in our Yggdrasil recipe.

Looking at this a bit, I think maybe the Windows x64 calling convention may actually be using the Intel-style convention for returning a complex number, so I think GCC is then actually implicitly converting the given code to do the Intel return format when compiling on Windows.
Looking at the only "official" calling convention document that I can find: https://learn.microsoft.com/en-us/cpp/build/x64-calling-convention?view=msvc-170, the return values are handled like this:

A scalar return value that can fit into 64 bits, including the __m64 type, is returned through RAX. Non-scalar types including floats, doubles, and vector types such as __m128, __m128i, __m128d are returned in XMM0. The state of unused bits in the value returned in RAX or XMM0 is undefined.
User-defined types can be returned by value from global functions and static member functions. To return a user-defined type by value in RAX, it must have a length of 1, 2, 4, 8, 16, 32, or 64 bits. It must also have no user-defined constructor, destructor, or copy assignment operator. It can have no private or protected non-static data members, and no non-static data members of reference type. It can't have base classes or virtual functions. And, it can only have data members that also meet these requirements. (This definition is essentially the same as a C++03 POD type. Because the definition has changed in the C++11 standard, we don't recommend using std::is_pod for this test.) Otherwise, the caller must allocate memory for the return value and pass a pointer to it as the first argument. The remaining arguments are then shifted one argument to the right. The same pointer must be returned by the callee in RAX.

So it may be that it is treating a complex number as a struct or vector of doubles, so it then uses the pointer return method.
Another reference I found was Raymond Chen's blog here. There are two posts that might be relevant. In https://devblogs.microsoft.com/oldnewthing/20040114-00/?p=41053, he says

The return value is placed in rax. If the return value is larger than 64 bits, then a secret first parameter is passed which contains the address where the return value should be stored.

So since a complex would be greater than 64 bits, then I think it would be the secret first parameter method (aka. what is called Intel here).
There is also https://devblogs.microsoft.com/oldnewthing/20101222-00/?p=11943, where he says

Although the Microsoft C compiler supports a calling convention called __fortran, that’s just what the calling convention is called; its relationship with the FORTRAN programming language is only coincidental. The __fortran keyword is now just an old-fashioned synonym for __stdcall.

Which sounds to me like this will be the calling convention that is used normally. He then further says:

Functions which return COMPLEX or CHARACTER*(*) are internally rewritten as subroutines where the location to store the return value is passed as a hidden first parameter. (This is analogous to how C returns large structures.)

Unfortunately, I can't find any definitive source that talks about this in more detail, and my spelunking in the GCC source code didn't lead to anything understandable about how the Windows ABI looks like here.

Follow-up, looking at the LLVM source code seems to suggest that Windows uses the indirect return for a complex type (e.g. the hidden argument).
Inside the Windows ABI info it has (https://github.com/llvm/llvm-project/blob/46c05dfb6c98870f8416eeb9bf787d54ac806b12/clang/lib/CodeGen/Targets/X86.cpp#L3303)
  if (RT || Ty->isAnyComplexType() || Ty->isMemberPointerType()) {
    // MS x64 ABI requirement: "Any argument that doesn't fit in 8 bytes, or is
    // not 1, 2, 4, or 8 bytes, must be passed by reference."
    if (Width > 64 || !llvm::isPowerOf2_64(Width))
      return getNaturalAlignIndirect(Ty, /*ByVal=*/false);

    // Otherwise, coerce it to a small integer.
    return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), Width));
  }

And for the complex double, the Width will be 128 - so it will use an indirect reference for the variable.
Does this call work through OpenBLAS? I wonder what calling convention it follows on Windows.

I'm using the following test script:
using BLISBLAS, LinearAlgebra

println("Float64:")
a = ones(Float64, 4096) .+ 1im
@show BLAS.dotc(a, a)

println("Float32:")
a = ones(Float32, 4096) .+ 1im
@show BLAS.dotc(a, a)
println("Done!")

On my machine, the Float64 version works just fine, but the Float32 one breaks.  If I manually force LBT to use the "normal" complex return style (instead of the "hidden argument" style), OR to forgo CBLAS divergence normalization, everything just works.   The fact that I get the correct answer both ways is interesting; it looks to me like BLIS has implemented their "argument style" return values in such a way that the correct answer is simultaneously available in both the first argument and the return value.  (This can be seen in the zdotc_64_ disassembly that @eschnett posted above; the value is available in both *($rcx) and $rax).
I've spent almost the whole day on this, digging into the assembly, debugging LBT and am currently very confused.  To trace out the sequence of events, first Julia calls cblas_cdotc_sub64_ in LBT, which does not immediately forward to BLIS, instead it first goes to our CBLAS shim lbt_cblas_cdotc_sub64_ which then calls LBT's own cdotc_64_.  Why does it do this?  Because it has determined that BLIS is "CBLAS-divergent" which is a fancy way of saying that the library has properly-mangled Fortran symbols (e.g. cdotc_64_, but does not have properly-mangled CBLAS symbols (e.g. it does not have cblas_cdotc_sub64_, it only has cblas_cdotc_sub).  I first came across this in MKL where there are both ILP64 and LP64 symbols in the same library, so we can't just use the non-prefixed names willy-nilly, they might be the wrong interface!
So instead, we re-translate back to the fortran names, which shouldn't cause any issue, we should simply be able to wrap a few arguments in references and be on our way.  When we call cdotc_64_ we still don't jump straight to BLIS, because we've also decided that BLIS does argument-style complex returns, so we hit our cmplxret_cdotc_64_ adapter next.  Finally, from there, we jump into BLIS at the cdotc_64_ symbol.

Thanks for your efforts all!
Copying over key information from Slack, which conforms with above:
The call is running through LBT and when calling cdotc, where it’s calling through cmplxret_cdotc_64_. I understand BLIS by default uses the gfortran interface (returning a ComplexF32 value) rather than passing through an argument as the Intel style does, so it’s crashing on this incompatibility. This doesn’t show up for linux or macOS.
Stacktrace from the CI on this issue:
 Exception: EXCEPTION_ACCESS_VIOLATION at 0x7ffeeb560590 -- bli_cdotv_zen3_ref at C:\Users\runneradmin\.julia\artifacts\9b9fc411ec291c3a58b3853ecd815fc9beab13ee\bin\libblis.dll (unknown line)
in expression starting at C:\hostedtoolcache\windows\julia\1.10.3\x64\share\julia\stdlib\v1.10\LinearAlgebra\test\blas.jl:33
bli_cdotv_zen3_ref at C:\Users\runneradmin\.julia\artifacts\9b9fc411ec291c3a58b3853ecd815fc9beab13ee\bin\libblis.dll (unknown line)
cdotc_64_ at C:\Users\runneradmin\.julia\artifacts\9b9fc411ec291c3a58b3853ecd815fc9beab13ee\bin\libblis.dll (unknown line)
cmplxret_cdotc_64_ at /workspace/srcdir/libblastrampoline/src\complex_return_style_adapters.c:92
lbt_cblas_cdotc_sub64_ at /workspace/srcdir/libblastrampoline/src\cblas_adapters.c:83
dotc at C:\workdir\usr\share\julia\stdlib\v1.10\LinearAlgebra\src\blas.jl:362 [inlined]
dotc at C:\workdir\usr\share\julia\stdlib\v1.10\LinearAlgebra\src\blas.jl:395

On Windows:
julia> using blis_jll

julia> LinearAlgebra.BLAS.lbt_forward(blis_jll.blis; clear=true, verbose=true, suffix_hint="64_")
Generating forwards to C:\Users\~\.julia\artifacts\9b9fc411ec291c3a58b3853ecd815fc9beab13ee\bin\libblis.dll (clear: 1, verbose: 1, suffix_hint: '64_')
 -> Autodetected symbol suffix "64_"
 -> Autodetected interface ILP64 (64-bit)
 -> Autodetected argument-passing complex return style
 -> Autodetected gfortran calling convention
 -> Autodetected CBLAS-divergent library!
 - [2732] complex(cdotc_64_)
 - [2733] complex(cdotu_64_)
 - [4439] complex(zdotc_64_)
 - [4440] complex(zdotu_64_)
 - [2547] cblas(cblas_cdotc_sub64_)
 - [2549] cblas(cblas_cdotu_sub64_)
 - [2695] cblas(cblas_zdotc_sub64_)
 - [2697] cblas(cblas_zdotu_sub64_)
 - [2588] cblas(cblas_ddot64_)
 - [2655] cblas(cblas_sdot64_)
Processed 4949 symbols; forwarded 167 symbols with 64-bit interface and mangling to a suffix of "64_"
167

This is on macOS (same environment as above):
julia> LinearAlgebra.BLAS.lbt_forward(blis_jll.blis; clear=true, verbose=true, suffix_hint="64_")
Generating forwards to /Users/fos08b/.julia/artifacts/e3f67ac3e3d64cc5c2d61619eb826bc28f3d0a62/lib/libblis.4.0.0.dylib (clear: 1, verbose: 1, suffix_hint: '64_')
 -> Autodetected symbol suffix "64_"
 -> Autodetected interface ILP64 (64-bit)
 -> Autodetected normal complex return style
 -> Autodetected gfortran calling convention
 -> Autodetected CBLAS-divergent library!
 - [2547] cblas(cblas_cdotc_sub64_)
 - [2549] cblas(cblas_cdotu_sub64_)
 - [2695] cblas(cblas_zdotc_sub64_)
 - [2697] cblas(cblas_zdotu_sub64_)
 - [2588] cblas(cblas_ddot64_)
 - [2655] cblas(cblas_sdot64_)
Processed 4949 symbols; forwarded 167 symbols with 64-bit interface and mangling to a suffix of "64_"
167

So there seems to be a difference with the complex autodetection of cdotc, ... zdotu, which are also precisely the functions covered by the BLIS complex-return option in https://github.com/flame/blis/pull/434

FYI, this logic in BLIS is implemented from here:
https://github.com/flame/blis/blob/5cbec6503de335b3b63fa5d4f388fddd3aff2b61/frame/compat/bla_dot.c#L89-L147
https://github.com/flame/blis/blob/5cbec6503de335b3b63fa5d4f388fddd3aff2b61/frame/include/bli_gentfunc_macro_defs.h#L89-L94
and
https://github.com/flame/blis/blob/master/frame/compat/cblas/f77_sub/f77_dot_sub.c

So it appears to me that the BLIS folks also implemented cblas_cdotc_sub in terms of cdotc_: https://github.com/flame/blis/blob/5cbec6503de335b3b63fa5d4f388fddd3aff2b61/frame/compat/cblas/f77_sub/f77_dot_sub.c#L46-L60

The top question I have is why autodetection different on windows to linux/mac systems.

The fact that LBT works for complex double and not for complex float is really interesting.  My current thought is that I am applying an inappropriate workaround for this complex return style on a complex float function when I don't actually need to.  In the morning, I will check the ABIs of Linux and macOS and whatnot and see if the rules there are different; if it turns out that complex float can be register-passed only on Windows, that would explain this discrepancy.

Because it has determined that BLIS is "CBLAS-divergent" which is a fancy way of saying that the library has properly-mangled Fortran symbols (e.g. cdotc_64_, but does not have properly-mangled CBLAS symbols (e.g. it does not have cblas_cdotc_sub64_, it only has cblas_cdotc_sub).

Hmm, yes, we don't appear to be patching BLIS to change any of the CBLAS calls to have a 64 suffix. Our patch labelled "cblas" in Yggdrasil is actually patching the calls that CBLAS is making to normal blas to have the suffix. This would be annoying to do though because all the CBLAS functions are just straight definitions and aren't formed using any macros to build the names.

it looks to me like BLIS has implemented their "argument style" return values in such a way that the correct answer is simultaneously available in both the first argument and the return value.

I get the feeling this is a quirk of the compiler, actually. When actually doing the indirect return method, BLIS has a void return type.

My current thought is that I am applying an inappropriate workaround for this complex return style on a complex float function when I don't actually need to.

My reading of the Windows x86_64 ABI suggests that complex float won't be an indirect return, because it is 64 bits (the condition in the LLVM compiler for generating this indirect return has the strict greater-than check for 64 bit width). So I think that it should treat it as a normal return instead.

I will check the ABIs of Linux and macOS and whatnot and see if the rules there are different; if it turns out that complex float can be register-passed only on Windows, that would explain this discrepancy.

At least for the Linux ABI, it appears it will be returned in registers for both float and double. LLVM implements the classification for complex numbers here: https://github.com/llvm/llvm-project/blob/46c05dfb6c98870f8416eeb9bf787d54ac806b12/clang/lib/CodeGen/Targets/X86.cpp#L1942, and it says it uses SSE style behavior for both float and double element types. The SSE style behavior will use the vector registers to hold the data. (The formal specification of this is in https://refspecs.linuxbase.org/elf/x86_64-abi-0.99.pdf, Section 3.2.3).
So it looks like the difference is probably that Windows mixes the two return styles (double uses implicit arguments, float uses registers), whereas Linux uses registers for both. Does LBT do the complex return classification on a per-function basis, or is it done globally for the library a single time?

Alright, I've got a PR up to LBT that solves this by adding a new complex return style, one that will create adapters for only complex double-returning functions (like zdotc) but not for complex float-returning functions (like cdotc).  My test code (and the BLISBLAS.jl test suite) pass when using it, but you need a small patch to Julia to make LinearAlgebra happy with the new LBT info code.
This should all appear in Julia v1.12, and is potentially backportable as there's few changes to Julia itself, although I did touch quite a bit of LBT, so we'll have to wait and see if those changes are all good.

Once https://github.com/JuliaLang/julia/pull/54791 is merged, julia nightly should "just work" here.

Just to close the loop, I re-ran the tests on main and can confirm that while Julia v1.10 still segfaults, the latest nightly does not.


Custom DSL language highlighting

Language
We have written custom DSL, that our backend parses. Is it possible to add new custom definition, but without need to make it publicly available because it's useless for others outside our company?
The trouble I see at the moment is being unable to change components.json inside npm installed PrismJS.
I hope I asked question on the right place, I apologize if I didn't. Any direction in the right way will be helpful.

You asked in the right place and it's a tricky question. Right now, we do not have an API for others to add custom language definitions and don't think that we will have one any time soon. The reason an API is difficult is that it has to work with at least loadLanguages and our babel plugin. Ideally, this will also support the Autoloader and our download page.
While an API is difficult, we can work around this today. Since you installed Prism via npm, you are using either loadLanguages or the babel plugin. Let's go through both:
Babel plugin:
You can make a helper module that imports Prism, adds your custom language(s), and then re-exports Prism. All modules that use Prism then import the helper module.
// src/prism-helper.js
import Prism from "primsjs";
Prism.languages['custom-language'] = { ... };
export default Prism;

// src/component.js
import Prism from "./prism-helper.js";

All languages your custom language(s) depend on have to be added to the plugin config.
loadLanguages:
Similar approach as with the babel plugin:
// src/prism-helper.js
const Prism = require("primsjs");
const loadLanguages = require("prismjs/components/");
loadLanguages(["foo", "bar", ...]);
Prism.languages['custom-language'] = { ... };
module.export = Prism;

// src/component.js
const Prism = require("./prism-helper");

If you do not use loadLanguages after defining your custom language(s) or your language(s) do not have dependencies to Prism's languages, then this will be fine but otherwise, you might run into some issues. (I.e. If a custom language depends on JavaScript and another language that modifies JS (e.g. JS Templates) is loaded after the custom language is defined, then the custom language might retain the old version of JS.)

I hope this helps.

@RunDevelopment thank you very much. This is more than enough to get it started.
I have also tried to extend some language and then override its tokens (i.e. Keywords) and it seems it works that way also... I would just have to override all props.

I have also tried to extend some language and then override its tokens (i.e. Keywords) and it seems it works that way also... I would just have to override all props.

If you use Prism.language.extend, then modifications to the extended language probably won't be a problem. It's only an issue if you load the modifier after your language definition. Though, this might be what's wanted in certain cases. Example:
// add JSDoc support to JavaScript and the custom language
loadLanguages(["javascript", "jsdoc"]);
Prism.languages['custom-language'] = Prism.languages.extend('javascript', {...});

// add JSDoc support to JavaScript but not the custom language
loadLanguages(["javascript"]);
Prism.languages['custom-language'] = Prism.languages.extend('javascript', {...});
loadLanguages(["jsdoc"]);

Also, if you overwrite all properties of the extended language, you don't need to extend at all.


A use case example

Could you provide an example of show case of how your LLMcompiler provides a plan and final answer?
Thanks

Please refer to the example below.
Example of Performing Complex Mathematical Calculations

Thanks @crazyyanchao. Is there any way that we use the StateGraph instead of MessageGraph and update the state in each task?

@nooralahzadeh I would consider implementing a stategraph of state updates for the LLMCompiler. Also, can you add a specific reason why you'd like to use stategraph?

@crazyyanchao  In specific use cases, you need to pass a JSON or data frame structure from one step to another step and add or complete it during the steps in the graph. Having a state graph will help a lot!


Start using the [unfold-c] attribute for defined recursors, like eq.rec_on.

The idea is to improve the usability of esimp.
For example, esimp will not automatically simplify something like
eq.rec_on (eq.refl a) H

And it will also simplify something like eq.rec_on idp H, because it puts the specified argument in whnf (by only unfolding reducible definitions), right?

And it will also simplify something like eq.rec_on idp H, because it puts the specified argument in whnf (by only unfolding reducible definitions), right?

Yes, with #497 and this one, it will simplify it.

Yes, with #497 and this one, it will simplify it.

But do we want idp to unfold when fully applied (i.e. always) when using esimp? Proofs with eq.refl are much longer, and don't usually give more useful information than proofs with idp.

I see your point.
It seems we need a way to say unfold esimp when it is the argument of a recursor.
More generally, we need a mechanism to say unfold f when a f application is the i-th argument of g. What do you think?

I'm not sure what you mean. If I write eq.rec_on p H, I don't want to unfold p no matter what when calling esimp.
I just want to unfold p to check whether it reduces to eq.refl _. If it does, I want eq.rec_on p H to perform a iota-reduction step. If it doesn't, I don't want to change anything in p (unless I specifically say that some subterm of p must be unfolded).

I'm not sure what you mean. If I write eq.rec_on p H, I don't want to unfold p no matter what when calling esimp.

I meant a general mechanism, that would unfold g when we have (f ... (g ...) ...) and (g ...) is the ith-argument.

I just want to unfold p to check whether it reduces to eq.refl _

This is simpler to implement. However, we should put some restrictions to avoid performance problems. Example: we only unfold reducible definitions. Otherwise, for every recursor application, we will have to perform a potentially expensive whnf operation.

I meant a general mechanism, that would unfold g when we have (f ... (g ...) ...) and (g ...) is the ith-argument.

Why do we want this?

This is simpler to implement. However, we should put some restrictions to avoid performance problems. Example: we only unfold reducible definitions. Otherwise, for every recursor application, we will have to perform a potentially expensive whnf operation.

That sounds good.

Why do we want this?

I assumed it would be useful.

I assumed it would be useful.

It might be. I was wondering whether you had a specific use for it. I can't think of a situation where I would need it right now.

I’m frustrated by this one.
Adding the [unfold-c] annotations automatically for rec_on, cases_on, … was fine, and didn’t affect the library.
The second feature was a mess, the library was broken in many places.
It unfolds too much. For example, in field.lean, if execute esimp at
	a * b = 0

which corresponds (without notation) to
	has_mul.mul a b = has_zero.zero A

After applying esimp, we get
	division_ring.mul a b = division_ring.zero A

The new version is really bad for pattern matching with existing theorems.
I tried different combination (e.g., avoid new features for structures), but there were always something breaking in the library.

That's annoying.
To check: with "the second feature" you mean putting the specified argument in whnf to check whether to unfold the definition, right?
There is indeed little difference between
eq.rec_on idp [foo]

and
has_zero.zero ([coercions] A)

Both reduce to [type].rec [arguments] [constructor], but in the first case we want to unfold it, and in the second case we don't. To make things worse, if I have something like
precategory.rec_on precategory_hset [stuff]

(where precategory_hset := precategory.mk [something]), I do want this to be unfolded. And there's very little difference between this example and the ring one. I can see why you get frustrated with this issue.
I think that the ring-example is special, because you apply a projection of a "small" structure (has_mul) to an extended structure (division_ring), and that in most (all?) other cases you do want the projection to get unfolded. Would that be a reasonable heuristic to use?

I think that the ring-example is special, because you apply a projection of a "small" structure (has_mul) to an extended structure (division_ring), and that in most (all?) other cases you do want the projection to get unfolded.

I think the ring example is not an isolated issue. The issue I described happens all over the place in the algebra folder.

Would that be a reasonable heuristic to use?

How small should be a "small" structure?
I'm pretty sure no matter what we decide, people will complain later.

How small should be a "small" structure?

Small was maybe not the best word for it. I mean any structure which is extended later.

I'm pretty sure no matter what we decide, people will complain later.

That's probably right...

That's probably right...

So, I think we should let the user decide. That is, we add yet another attribute :-)

I added a new attribute [unfold-m], when a declaration is annotated with this hint, it will be unfolded by esimp and the (future) simplifier whenever it is the major premise of a recursor like application.
Thus, eq.rec_on idp H reduces to H in the HoTT library.
We also avoid the the problems with the algebraic hierarchy described above

My point earlier was that I think that we want to add the attribute [unfold-m] to every definition, except the ones which are (automatically generated) coercions from an extended structure to a parent structure.
But maybe there are more examples where we don't want to unfold.

The implemented approach is a compromise. It doesn't change the behavior of the existing system.
It just adds a new feature. So, nothing breaks.
The more general rule broke many files in the library and the test suite.
The heuristic you suggested fixes one of the breaks I analyzed.
Even if we implement the heuristic it is not clear we will be able to compile the whole library.
We will probably have to keep polishing the heuristic.

That is possible.
Let's leave it as-is. I'll start using [unfold-m], and I'll check

whether it is annoying to add that attribute to every definition where I want it
whether there are other kinds of definitions where we don't want the attribute [unfold-m]


Using continue twice breaks when using the MoonScript continue mode

Using continue twice when the MoonScript continue mode is enabled will generate a second internal variable, thus breaking the first continue

Since this is quite a big oversight, a new patch will be made.

Issue has been fixed, the patch will be released soon.


Update the "Join The Project Team" section of the README.md file

Right now there is no content. This would be a good first issue.
Join The Project Team

@lucavallin,  Could you assign me this issue, I would like to take it up.

@fauzurraheem Done!


stream.pipeline async scope

Since we return a Duplex in stream.pipeline it's not entirely clear where and when we should propagate async scope. Might need some tests to demonstrate and confirm.

@mcollina: This is not something I think we need to fix right now. At some point when you have time it would be nice to discuss the async hook thing more in depth and try to make sure we are covering most of the edge cases.

Had a chat with Anna and my questions have been answered.


Add more dependencies for meson

Our configuration sets ignore_missing_imports so it isn't immediately apparent these would be used...

See also https://github.com/mesonbuild/meson/pull/12551 (fixes our mypy.ini since it seems like setting that was always wrong; will result in failing to typecheck without installing these deps).

Thanks, I fixed the conflict and merged to master


Re-organise script Variables

I have been having a look over the script files and think they require sort re-organising and a tidy up. The aim is to make it easier for end users to understand and get info on the settings and to help developers keep them consistent.
I have come up with a mock up of how I think they should look. You will notice there are several links to wiki pages. The idea is that its easier to explain the settings in the wiki pages that in a comment.
Feedback welcome
#### LGSM Settings ####

# Notification Alerts
# https://gameservermanagers.com/alerts

## Email
emailalert="off"
<EMAIL_ADDRESS>
## Pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"

# Steam login
# https://gameservermanagers.com/steamcmd-login
steamuser="anonymous"
steampass=""

# Logging
logdays="7"
consolelogging="on"

# IP Address
# https://gameservermanagers.com/ip
ip="<IP_ADDRESS>"

# Update
# https://gameservermanagers.com/update
updateonstart="off"

#### Game Server Settings ####

# Ports
# https://gameservermanagers.com/ports
port="27015"
clientport="27005"
sourcetvport="27020"

# Start Parameters
# https://gameservermanagers.com/start-parameters
defaultmap="de_dust2"
mapgroup="random_classic"
maxplayers="16"
tickrate="64"

## Game Modes
## https://gameservermanagers.com/csgo-gamemodes
## [Game Modes]           gametype    gamemode
## Arms Race                  1            0
## Classic Casual             0            0
## Classic Competitive        0            1
## Demolition                 1            1
## Deathmatch                 1            2
gametype="0"
gamemode="0"

## Game Server Login Token
## https://gameservermanagers.com/gslt
gslt=""

## Workshop Settings
## https://gameservermanagers.com/workshop
authkey=""
ws_collection_id=""
ws_start_map=""

# Custom Start Parameters
# https://gameservermanagers.com/custom-start-parameters
customparms=""

# Pre-defined Start Parameters
fn_parms(){
parms="-game csgo -usercon -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +sv_setsteamaccount ${gslt} -tickrate ${tickrate} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers_override ${maxplayers} +mapgroup ${mapgroup} +game_mode ${gamemode} +game_type ${gametype} +host_workshop_collection ${ws_collection_id} +workshop_start_map ${ws_start_map} -authkey ${authkey}"
}

#### Advanced LGSM Settings ####

# Server Details
servicename="csgo-server"
gamename="Counter Strike: Global Offensive"
engine="source"

# Github Branch Select
# Allows for the use of different function files
# from a different repo and/or branch.
githubuser="dgibbs64"
githubrepo="linuxgsm"
githubbranch="master"

# SteamCMD
appid="740"

## Steam App Branch Select
## Allows to opt into the various Steam app branches. Default branch is "".
## Example: "-beta <IP_ADDRESS>"
branch=""

# Directories
rootdir="$(dirname $(readlink -f "${BASH_SOURCE[0]}"))"
selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
lockselfname=".${servicename}.lock"
## Server files
filesdir="${rootdir}/serverfiles"
systemdir="${filesdir}/csgo"
## LGSM Dir
lgsmdir="${rootdir}/lgsm"
functionsdir="${lgsmdir}/functions"
libdir="${lgsmdir}/lib"
## Executable
executabledir="${filesdir}"
executable="./srcds_run"
## Backup
backupdir="${rootdir}/backups"
## Config
servercfg="${servicename}.cfg"
servercfgdir="${systemdir}/cfg"
servercfgfullpath="${servercfgdir}/${servercfg}"
servercfgdefault="${servercfgdir}/lgsm-default.cfg"
## Logs Dir
gamelogdir="${systemdir}/logs"
scriptlogdir="${rootdir}/log/script"
consolelogdir="${rootdir}/log/console"
scriptlog="${scriptlogdir}/${servicename}-script.log"
consolelog="${consolelogdir}/${servicename}-console.log"
emaillog="${scriptlogdir}/${servicename}-email.log"
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').log"
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log"

I like that.
As we're in there, we could maybe remove the steam login for anonymous games, unless there is a good reason i don't know yet for it being there.

Well, removing it means the steamcmd handler for anonymous games will be different than the ones that have authentication. Which strikes me as a distinction without a valid difference. My thinking is that it should be one function to handle anonymous or Auth, that way we only have to work with one piece of code instead of two.

I think this is it: https://github.com/GameServerManagers/LinuxGSM/issues/1151


Unused consumes all processing resources often leading to computer hang or automatic restart

Just wondering if anyone else is having an issue where running unused uses all available resources and usually results in either hanging the computer or the operating system restarting itself?
I've tried using:
sudo nice -n -20 unused
but it does not have any effect.
I left unused running over night to see if it would finish during an 8 - 10 hour window but the computer was unresponsive in the morning and had to be restarted.
My installation steps were:
brew tap joshuaclayton/formulae
brew install unused
git ls-files | xargs ctags

When I start the program it states:
Unused: analyzing 5883 terms
Then it usually hangs the computer.
I've also tried:
sudo nice -n -20 unused -C
I'm running macOS 1015.3
I have this version installed: joshuaclayton/formulae/unused <IP_ADDRESS>
I've also added the .unused.yml file to my root directory from here:
https://github.com/joshuaclayton/unused#user-content-unusedyml
I'm running a rails app. Happy to give more details on the application if needed.

@ctoynbee yes, this is a known issue with this version of Unused. I'm wrapping up a complete rewrite in Rust that is much more memory-efficient and reduces execution time to a trivial amount for most moderately-sized codebases. Since I won't be addressing the performance issues in this repo, I'm closing this issue out.


Set deployment targets at the project level

This simplifies the project settings a bit and is required to be used in a universal target (e.g. https://github.com/ishkawa/APIKit/pull/179).

Great!
Thx for the PR :+1:
Could you please add an entry in the CHANGELOG to credit yourself? Thx!

Done ✨

Anything else?

Seems ok from what I read from the diff on GitHub, will merge soon — probably tonight — when I have access to my Mac to make a proper test and release.

Sorry I've been more busy than I thought in the last few days, and also had to release a new version of SwiftGen in parallel… but rest assured I didn't forget about OHHTTPStubs and this PR :wink:


Release?

Once https://github.com/coiled/dask-mongo/pull/2 is merged, dask-mongo will have initial support for reading from / writing to mongo databases. This might be a good time for an initial dask-mongo release on PyPI.
cc @ncclementi

Closing this as, HLG currently does not support bag


Add an og:image for previews when sharing on Facebook etc

Linking to RS does not inspire people to click, since there is no preview picture. It would be very nice if you would add that.
Thanks! :)
https://developers.facebook.com/tools/debug/?q=https%3A%2F%2Fmap.railway-stations.org%2F

Added our logo. Let's see if it works.

That's much better! I think it would be even better with a mosaic of photos of stations behind the logo instead of a red background. You could consider trying that. Anyway, very fast turnaround, so thanks! :)


New reconcile tests

How to categorize this PR?

/area robustness
/kind enhancement
/priority 3
What this PR does / why we need it:
This PR adapts the unit and integration tests for the new reconcile (see also PR #497).
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

NONE

/test

/test

/test

Testrun e2e-d7skw-wf was started with NewReconcile = false.


Macvim jslint issue?

Hi,
Syntastic came installed as part of janus (https://github.com/carlhuda/janus), and at this stage i've basically tried everything I can think of to get it working.
Here is the .vimrc.local file:
https://gist.github.com/1205877
The janus vimrc file is:
https://github.com/carlhuda/janus/blob/master/vimrc
I also have jslint installed
$which jslint
/usr/local/bin/jslint

Not sure if this helps, but:
:echo SyntaxCheckers_javascript_GetLocList()
returns []
Does this mean that somehow jslint is not being picked up?

I'm having this problem as well (both when trying jslint and jshint). Using MacVim 7.3, and jshint/lint are installed in /usr/local/bin/

Ditto, I get:
[{'lnum': 3, 'bufnr': 1, 'col': 12, 'valid': 1, 'vcol': 0, 'nr': 1, 'type': '', 'pattern': '', 'text': 'Expected ''==='' and instead saw ''==''.'}, {'lnum': 3, 'bufnr':
 1, 'col': 18, 'valid': 1, 'vcol': 0, 'nr': 2, 'type': '', 'pattern': '', 'text': 'Expected ''{'' and instead saw ''return''.'}, {'lnum': 9, 'bufnr': 1, 'col': 19, 'val
id': 1, 'vcol': 0, 'nr': 3, 'type': '', 'pattern': '', 'text': 'Expected ''!=='' and instead saw ''!=''.'}, {'lnum': 15, 'bufnr': 1, 'col': 18, 'valid': 1, 'vcol': 0, '
nr': 4, 'type': '', 'pattern': '', 'text': 'Expected ''!=='' and instead saw ''!=''.'}]

But I don't see anything show up as far as warnings, errors, underlines, etc like I used to.

I was experiencing the same problem with jslint that I installed from MacPorts. Some syntastic debugging showed that the errorformat was not matching anything into the loclist:
        let errorformat='%-P%f,%*[ ]%n %l\,%c: %m,%-G%.%#'

You should test two things:

Start a /bin/bash and make sure that shell has jslint in its path by running which jslint. If it doesn't, you should fix that as you might be running into this default shell replacement hack:

    if !s:running_windows && (s:uname !~ "FreeBSD")
        "this is a hack to stop the screen needing to be ':redraw'n when
        "when :lmake is run. Otherwise the screen flickers annoyingly
        let &shellpipe='&>'
        let &shell = '/bin/bash'
    endif

Run jslint on one of your source files and make sure that one of the first lines is the filename you ran jslint on.
If the name of the checked file does not appear in the jslint output, you are probably not using node-jslint. You have two options:

Get the proper jslint from npm by running npm install jslint [-g], or cloning https://github.com/reid/node-jslint
Edit your errorformat in the syntastic bundle to suit yout jslint's needs.

I wouldnt be at all surprised if the jslint and jshint output has changed since the checkers were written. I have been using the gjslint checker - which seems to work fine.
If you really want to use jslint or jshint then it will almost certainly be necessary to update the errorformats for them.
I am considering dropping one or 2 of the javascript checkers since it is just more work to maintain and I only use one. Either that or spam the original authors of those checkers.

I  have fixed jshint/jslint.
The error formats are based on jslint 0.1.0 and jshint 0.5.3.
Check these 2 commits for details:
8ca2028f3e82354ddf5c8cc4401767c899f72513
70166f4ac694eb18ac6bf4a0e501c59f719173aa
Comment here if there are any problems :)


idea: make it accept an .editorconfig file and apply styling accordingly

There's https://github.com/RReverser/github-editorconfig for editorconfig support


add icons to Howl of the Wild spells and associated spell effects

Any repeats?

All these icons should be distinct. I ended up re-using mouth-teeth-long-red for Gluttonous Growth for lack of finding anything better.


Examples cleanup

Cleanup Examples code
I linted code in the  /examples folder with ESLint config that ships with create-react-app and I found a few warnings.
Changes made:

Removed unused variables, imports
Refactored switch statement to a simple if statement
Removed unnecessary escape in Regex

Please let me know if you want me to squash commits or make changes 😄

Just a note - while manually testing I found that a couple of the 0.9.1 examples are broken, but it's broken on master too, not a result of this change. Opened https://github.com/facebook/draft-js/issues/1668 about it.


Stuck at launch

Everything seems to be working fine until the app gets stuck when launching the first screen.
No idea what is causing this..
React native is logging this:
[Sun Apr 19 2020 18:28:22.485]  LOG      Running "StupoPlatform" with {"rootTag":1,"initialProps":{}}
Could someone help me with this?
Thanks

I think something is going wrong with the combination of turbolinks and perhaps my web app. The standard screen when creating a react native app does load.

Try use you local ip instead localhost

Thanks for your swift reply.
tried this:
Turbolinks.startSingleScreenApp({url: 'IPv4-adress'});
this returns:
Alert
This requested url has not been found on this server.
Also tried this:
Turbolinks.startSingleScreenApp({url: 'IPv4-adress:3000'});
this returns:
Alert
The url can't be shown.

You should use you local address like 192.168.0.xxx

I did it like this:
Turbolinks.startSingleScreenApp({url: 'IP'});
got the ip adress from here:

Am I doing something wrong?

If you are using server example it should be <IP_ADDRESS>:9292

I keep getting this response:

it is opening on browser?

No it isn't..
I tried npx react-native run-ios with http://localhost:9292
Returned: 'Can't connect to server'
also tried npx react-native start
but It doesn't work in browser..

The problem seens to be on server... I updated server to run on ruby 2.7.1... clone and try to run ./demo-server


Feature request: Built-in RSS support

Hey, engineer from openrss.org, here! :wave:
We love this initiative and the thought of an entirely independent web browser is just what our web needs! Another thing our web needs is more intuitive RSS adoption. Web browsers used to have an RSS button where users could easily subscribe to an RSS feed after having visited a website. But many removed them, which is a shame. It's unfortunate because we have thousands of users who would love to see free, all-inclusive RSS functionality baked into their browser. The feature would also be helpful for users who have never tried RSS due to the technical know-how required to begin to use them.
Are there any plans for RSS to be built into Ladybird?

From the FAQ

When will you implement $THING?
Maybe someday. Maybe never. If you want to see something happen, you can do it yourself!

Web browsers used to have an RSS button where users could easily subscribe to an RSS feed.

They have all conspired together, in favour of the advertising and spy industries, to eliminate support for this essential feature, which has resorted me to find a solution which eventually has caused to my career to chage from a lawyer to an engineer, and without that conspiracy, over 10 projects I am responsible for, namely of Syndication and XMPP, would not have existed.
See also XSLT support, and this userscript which renders Atom, RDF, RSS, JSON and OPML with JS.

See also this stylesheet which renders Atom, RDF and RSS syndication feeds.
It works with WebKit browsers and the corporates behind Gecko have again sabotaged the native built-in XSLT of Gecko (including the JS based processor) when a standard option omit-xml-decleration is present.

Please also consider Syndications of type XMPP. See also Reeder and Rivista which both support XMPP Syndications.


Write the Docs: add doc for using configmap data in pods

This PR is part of the Write the Docs writing day effort. It adds a new doc for using ConfigMap data in pods and fixes some issues in the edited configmap task. (follow-on to PR #3759).

This change is

Sorry, there was error message during the preview build:
Liquid Exception: Liquid syntax error (line 10): 'capture' tag was never closed in docs/tasks/configure-pod-container/configure-pod-configmap.md
The issue might be putting {% include task-tutorial-prereqs.md %} as a bullet item. Try removing the asterisks on line 10.

@chenopis - We chatted briefly about this on Tuesday, but I thought it'd be useful to get it on record here as well. The last section of this doc should probably be its own tutorial -- it deals with using configmaps to configure pods using redis as an example. LMK if you'd like me to open an issue for it.

@jputrino Thanks for the reminder. I'll try and work on it later today. Yeah, go ahead and open an issue so that we can make sure it don't fall through the cracks. Thanks!


DOCS: Remove gender specific pronoun

No reason to assume the player is a guy :)
Checklist

[ ] Use a separate branch in your local repo (not master).
[ ] Test coverage is 100% (or you have a story for why it's ok).

I signed it!


Show warnings for uncorrect converting types

Typically in result Go code we see like:
	pool[0].pathitem = noarch.ByteSliceToIntSlice(((*(*[1]byte)(unsafe.Pointer(uintptr(unsafe.Pointer(&noarch.IntSliceToByteSlice(pool[0].pathitem)[0])) + (uintptr)(pool[0].itembytes)*unsafe.Sizeof(noarch.IntSliceToByteSlice(pool[0].pathitem)[0]))))[:]))

But package noarch haven't function like noarch.IntSliceToByteSlice.
That function name generated for creating workaround, but without add information about that in warning list.
The goal of that issue is changing from "hide" warning to visibly warning into dashboard.

A solution to the underlying would be to add those functions to the transpiled file.
I.e. instead of noarch.IntSliceToByteSlice we would have IntSliceToByteSlice and append the function:
func IntSliceToByteSlice(a []int) []byte {
    return *(*[]byte)(unsafe.Pointer(noarch.UnsafeSliceToSlice(a, 4, 1)))
}

We could have this as a template so no matter which type combination we could benerate the right conversion function.


Documentation for timestamping

Not sure if the question belongs to this repo.
There are iothub-app-iothub-creation-time-utc and iothub-creation-time-utc for timestamping purposes when you send telemetry data in a batch way.

https://github.com/iot-for-all/iot-central-batch-telemetry-with-python/blob/main/batch.py#L161-L168
https://feedback.azure.com/forums/911455-azure-iot-central/suggestions/35197819-device-originated-timestamp

Does anyone know which one we should use? And where it's been documented?

You should use 'iothub-creation-time-utc' in the message property to override the hub ingestion time of messages sent.
The 'iothub-app-iothub-creation-time-utc' is specific to the batch send protocol used where system properties are prefixed with 'iothub-app-' within the batch.
Unfortunately the documentation around this is a bit sketchy we are working to correct this and to improve the documentation on system message properties.

Gotcha, so those two have different usage.
Look forward to having the documentation once it's ready. Thank you for answering!