Add docs on OverlaySupport.local.

It gives very useful usecases but it's not obvious that I can achieve these usecases with this library. I could contribute on this but not sure if this package is still supported

Thank you very much for your idea of contributing and submitting.
This project is still being supported, so you are welcome to contribute.

@boyan01 sorry I noticed that my contribution is wrong. I added this to wrong md. it should be in main md but it is in example md)

well ok, in main md it's written that for details we go to example md then everything is ok


SIGSEGV in BIO_new_dgram_sctp

Master build configured like this - ./config -d sctp
BT
#0 0x7fdb01309220 in dgram_ctrl  openssl/crypto/bio/bss_dgram.c:559:17
#1 0x7fdb0130c218 in dgram_sctp_ctrl  /openssl/crypto/bo/bss_dgram.c:2452:15
#2 0x7fdb012fe8d5 in BIO_ctrl openssl/crypto/bio/bio_lib.c:682:11
#3 0x7fdb012fe745 in BIO_int_ctrl openssl/crypto/bio/bio_lib.c:652:12
#4 0x7fdb0130ac84 in BIO_new_dgram_sctp /openssl/crypto/bio/bss_dgram.c:1715:5
I see problem with cast in dgram_ctrl function
bio_dgram_data *data = NULL;
....
data = (bio_dgram_data *)b->ptr;
...
and it shoot in
if (data->local_addr_enabled) // SIGSEGV
If we look at previous function dgram_sctp_ctrl
We see same cast but on ANOTHER struct
bio_dgram_sctp_data *data = NULL;
...
data = (bio_dgram_sctp_data *) b->ptr;
In function BIO_new_dgram_sctp
We see bio created like this
bio = BIO_new(BIO_s_datagram_sctp());
BIO_new->BIO_new_ex->dgram_sctp_new
And in dgram_sctp_new
bio_dgram_sctp_data *data = NULL;
...
bi->ptr = data;
Hence this cast
data = (bio_dgram_data *)b->pt
is illegal

The incorrect cast is there in older branches too, but the bio_dgram_sctp_data and bio_dgram_data structures are much more similar so that's why the incorrect cast is harmless there.

This will require some non-trivial refactoring, but it must be done.

Great!

    # Looks like you failed 2 tests of 6.
not ok 4 - Test configuration 04-client_auth.cnf

It looks like the sctp dgram code assumes that bios ptr data is castable between struct bio_dgram_sctp_data_st and struct bio_dgram_data_st, when it definately isn't:
typedef struct bio_dgram_data_st {
    BIO_ADDR peer;
    BIO_ADDR local_addr;
    unsigned int connected;
    unsigned int _errno;
    unsigned int mtu;
    OSSL_TIME next_timeout;
    OSSL_TIME socket_timeout;
    unsigned int peekmode;
    char local_addr_enabled;
} bio_dgram_data;

typedef struct bio_dgram_sctp_data_st {
    BIO_ADDR peer;
    unsigned int connected;
    unsigned int _errno;
    unsigned int mtu;
    struct bio_dgram_sctp_sndinfo sndinfo;
    struct bio_dgram_sctp_rcvinfo rcvinfo;
    struct bio_dgram_sctp_prinfo prinfo;
    BIO_dgram_sctp_notification_handler_fn handle_notifications;
    void *notification_context;
    int in_handshake;
    int ccs_rcvd;
    int ccs_sent;
    int save_shutdown;
    int peer_auth_tested;
} bio_dgram_sctp_data;

I would imagine the most direct refactoring would be to eliminate all the common fields between the two and embed a bio_dgram_data_st inside the bio_dgram_sctp_data_st instead.

For reference, anyone building with enable-sctp has to have the sctp kernel module loaded and configured:
sudo modprobe sctp
sudo sysctl -w net.sctp.auth_enable=1

fixed in #22278


Trying to get property 'base_currency' of non-object

I just installed fresh Bagisto project and I am getting this error at start

Hi jasbin,
Please run this command - php artisan db:seed

i wiped out database again and remigrate and db seed then it finally worked


Update Tags.gitignore

Updated the tags ignore to include the .tags file. The main reason behind this is because Atom's symbols-view (https://atom.io/packages/symbols-view) supports tags/.tags/TAGS/.TAGS. Therefore, I thought it was a good idea to add the .tags/.TAGS to the ignore list.

The main reason behind this is because Atom's symbols-view (https://atom.io/packages/symbols-view) supports tags/.tags/TAGS/.TAGS.

cc @github/atom for a :thumbsup:?

cc @github/atom for a :thumbsup:?

:+1:


schedule notification with crontab on iOS

On android I can schedule a notification with NotificationAndroidCrontab object but on iOS I have no idea how to schedule a notification like that. What should I do?

And if I can't schedule notifications on iOS with cron, how can I schedule NotificationInterval with start date that send notification with interval from a specified date?

Hi! Sorry for taking so long to respond to your issue on GitHub. I was focused on releasing the new 0.7.0 version of awesome_notifications and awesome_notifications_fcm and i didn't had time enough to do both. But now I can answer all your questions.
So now i'm asking you to recreate this topic using the new issue template. There's a lot of missing informations that i need to understand your problem, and all the instructions are already in the new issue template. Also, remember to check beforehand if your issue was posted by another user.
So I will automatically close all previous issues so far.
Sorry for the inconvenience and i will be waiting for your new issue request.
Thank you so much for your support!


Mistakable error message: Variable not available

The JSON code:
"intval" : 1,
"testlist" : ["B", 2],
"param_${testlist}['${intval}']}" : 3

causes:
Error: 'The variable '${testlist}['1']' is not available!'!
Here I have doubts about the meaning of the single quotes inside the square brackets. Are they allowed/required or not? The requirements are unclear to me.
But I expect that expressions are resolved from innermost to outermost. What should be the order of computation in the code example above?
I expect:

Detect parameter intval
Parameter intval does exist
Parameter intval is of type int
Parameter intval is wrapped in single quotes, therefore will be interpreted as string
This is found inside square brackets, therefore can either be an index or a key name
The parameter, the square bracket expression belongs to, is of type list, therefore the content of the square brackets is expected to be of type int (but is of type str, and this is an error).

In my opinion it should be possible to provide a corresponding error message, telling that list indices are expected to be of type int.
To tell only that a variable does not exist, does not really help the users.
And independent from this: Quotes should not be accepted as part of parameter names (or dictionary key names). Seems that the JsonPreprocessor still has a common issue with proper handling of quotes inside expressions.
Reference: JPP_0268

Hi Son,
a possible speaking error messge would be:
${testlist} expects integer as index. Got string instead in 'param_${testlist}['${intval}']}'.
Thank you,
Thomas

Hi Son,
what is the status of this ticket?
Thank you,
Thomas

Hello Thomas,
I will implement this ticket in next 0.11.0 release.
Thank you,
Son

Update:
The following line from code example above, is invalid in between:
"param_${testlist}['${intval}']}" : 3
Because of the decision, not to create parameter names dynamically.
Therefore the code example needs to be adapted:
"intval" : 1,
"testlist" : ["B", 2],
"param" : ${testlist}['${intval}']

Result:
Error: 'The variable '${testlist}['1']' is not available!'!
That's wrong. This is still a type issue, and not a missing variable issue.
Expected error message: List indices have to be of type int.

Hello Thomas,
I implemented this ticket and pushed the change to stabi branch.
Thank you,
Son

"intval" : 1,
"testlist" : ["B", 2],
"param" : ${testlist}['${intval}']

causes:
Error: '${testlist} expects integer as index. Got string instead in ${testlist}['${intval}']'!
This is like expected now.
But the same with a string parameter:
"strval" : "ABC",
"testlist" : ["B", 2],
"param" : ${testlist}[${strval}]

causes:
Error: 'The parameter '${testlist}['ABC']' is not available!'!
But expected is the same error message like above.

Hello Holger,
Thank you for your finding! I'm going to forward the exception from Python the error message for both cases like below:
Exception: Could not resolve expression '${testlist}['1']'. Reason: list indices must be integers, not str
Exception: Could not resolve expression '${testlist}['ABC']'. Reason: list indices must be integers, not str
If the new error message is fine, I will push the change to stabi branch. Please give me your feedback?
Thank you,
Son

Hi Son,
see also https://github.com/test-fullautomation/python-jsonpreprocessor/issues/306
Should be aligned.

Hi Son,
that's fine to me. And you should adapt the wording a little bit.
Either:
list indices must be of type 'int', not 'str'
or:
list indices must be integers, not strings

Hello Holger,
The reason list indices must be integers, not str is forwarded from Python's exception.
Do we need to modify the exception message from Python?
Thank you,
Son

Hi Son,
oops - I was not aware of that. No modification please.

Hello Holger,
I push commit f3df857af39 to solve your review comment.
Thank you,
Son

Retest successful. Issue can be closed.

integrated in 0.12.1


1582 - Special Positions in a Binary Matrix

Description of the Problem
Given a rows x cols matrix mat, where mat[i][j] is either 0 or 1, return the number of special positions in mat.
A position (i,j) is called special if mat[i][j] == 1 and all other elements in row i and column j are 0 (rows and columns are 0-indexed).
Code
class Solution(object):
    def numSpecial(self, mat):
        """
        :type mat: List[List[int]]
        :rtype: int
        """

Link To The LeetCode Problem
LeetCode

Please assign me to this issue

would love to tackle this

Can I work on it?

i want to work on this


fix: set current context to new sandbox-context

Fix #102.

I have to fix https://github.com/redhat-developer/podman-desktop-sandbox-ext/issues/25 first then.

The tests are added to cover connection factory create method and Set as default context check specifically.

Merging.


Features/using auto mapper

There is a little problem.  If you run the console example, the first two "objects" should be identical.  You'll notice that one has the Address Id set, and the other doesn't.  If you comment out line 51 of AppProcess.cpp, you'll see that the first approach returns null for the address, but the second one sets the values of the address to null (ie it creates an address object).  So there's still differences between the .Include and the projection approach.

Actually - I think the problem is in the auto mapper - leave it with me to check out a bit more.

OK, this is all fixed now.  Please review and merge to trunk.

I've just pushed some more updates.  This adds a unit test which shows that joining tables doesn't work when running unit tests.


fastlane not responsive

In my environment fastlane is not responsive for the first 10/20 seconds after I execute any command.
After this time, the command is executed normally.

True, this has to do with an old version of gem, which you have installed. If you know a bit about Ruby you can update using rvm. If not, I hope Apple updated the Ruby dependencies with the new Mac OS X. This is out of my control unfortunately.

Ok, thanks for the information. Can you tell me exactly what to update?

Fixed using rvm


[BUG] When viewing a service in the frontend, there is no way for me to return to the enclave view

Background & motivation

After I click on a service in the UI, I cannot "go back" to see my enclave. The workaround now is to press "BACK" in my browser, which is not great.
Desired behaviour
There is a button in the UI that says "return to enclave view" from the service view
How important is this to you?
Nice to have; this feature would make using Kurtosis more enjoyable.

improved the navigation.

https://github.com/kurtosis-tech/kurtosis/pull/940 as per this PR.


Use denom trace endpoint to find the denom

Maybe instead of using an asset list or registry use the /ibc/applications/transfer/v1beta1/denom_traces/ endpoint to find the base denom

Closed in #65


onDrag, onStart not working?

I am using like this:
jqyoui-draggable="hello"
$scope.hello={
animate:true,
onStart:function(e, u){
console.log('hi')
}
}

https://github.com/codef0rmer/angular-dragdrop#angular-draggable-options
onStart requires a string so the way jgyoui-draggable attribute is setup is you pass it

In my opinion, this could be probably made more flexible by turning these into attributes (on-drag, for example) and made accept function, which would then be able to take parameters?

onDrag and onStart still aren't working. I formatted similarly to twmulloy suggestion with no luck. TypeError: t.indexOf is not a function. Just moved the function to onOver on the droppable side.

This should work. https://github.com/codef0rmer/angular-dragdrop/blob/master/demo/dnd-frameworks.html

How can get value of drag element and place of element where drag


[HOLD for payment 2023-11-13] [$500]  Bank - Calendar Is broken in Bank account flow

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.3.95-0
**Reproducible in staging?:**Y
**Reproducible in production?:**N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Access staging.new.expensify.com
Sign into a valid account
Go to Profile > Workspace > Connect to bank account
Follow steps until you get to Step 2 of 5, where you can input "Incorporation date" in the calendar.
Try and input any date, for example: 01/01/1980

Expected Result:
User expects to input the date with no problems
Actual Result:
The input is broken, the user is unable to input the correct date
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/70083247-77b6-4f5b-94b8-fc1c117d76c9
Production:
https://github.com/Expensify/App/assets/78819774/f973331d-c3c1-45fc-af22-c4c8a5d6f76e
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01f4c10e0e27ccfb95
Upwork Job ID:<PHONE_NUMBER>139516928
Last Price Increase: 2023-11-02

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

Reproduced. Damn, that is indeed pretty bad

Proposal
Please re-state the problem that we are trying to solve in this issue.
Date changes while year is being entered.
What is the root cause of that problem?
Date is being parsed via new Date() - this changes the timezone and rolls the date back one day, turning 01/01/0001 to 12/31/0000.
This was introduced in the switch away from moment: https://github.com/Expensify/App/pull/29984/files#diff-6b255c40f9440d083c61f6b75caa0c2ad388438ea8fd18eefb410746b1e955f6
What changes do you think we should make in order to solve the problem?

Use date-fns parseISO() to parse the date without introducing timezone differences.
What alternative solutions did you explore? (Optional)
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

Seems like a regression from a PR from @allroundexperts and @waterim asking if they can raise a fix

@mountiny okay - is there anything for my effort on root cause and providing a solution?

Yeah we would pay you for your efforts if you solution will be used

PR is merged and we used similar solution to yours @erquhart so we will pay you $125 as 25% of the original amount which is what we usually do in these case. Since its a regression from pr we identified the author should be fixing it but your help is appreciated

@mountiny appreciated, thanks! Let me know if there are any steps I need to take.

Works!
@conorpendergrast could you please pay $125 to @erquhart for his help on the issue?

@mountiny just a heads up, other regressions are popping up and not being linked to this issue. I advised on one here: https://github.com/Expensify/App/issues/30871?notification_referrer_id=NT_kwDOACA6yrI4Mjk0ODc3ODc5OjIxMTIyMDI#issuecomment-1795369621

@mountiny @conorpendergrast sorry to bug, but I'm not sure how else to get help on this (and it's probably relevant to getting payment): I've been emailing<EMAIL_ADDRESS>for a couple weeks now, still trying to get access to Slack. I was hired on another issue also (https://github.com/Expensify/App/issues/30505#issuecomment-1785973520), and followed the steps to apply for the job on Upwork, but haven't received any response there either. Any help is appreciated.

@erquhart that's very weird; I can't see anything from you in that email list. Please can you reply to the same thread and cc me (conor@expensify.com)?

@mountiny Given this report, I'll hold on the $125 payment until I get your go-ahead again!

@conorpendergrast just sent, thanks for your help.
The payment for me is because my proposal was used by another engineer, as they fixed it as a regression. My comment above was only to point out that I'm still helping out with other places the same bug has popped up, in case that's relevant.

@erquhart thanks! We still wait for the PR to hit production +7 days regression perioed before we pay out, even if your solution helped and you havent implemented it

@erquhart Oh hey Shawn! Please could you apply for this job, so that I can pay you $125? Thanks!

@allroundexperts C+ checklist please!

@erquhart Contract sent!

Payouts due:

[x] Contributor: $125 @erquhart contract paid and ended
Contributor+: $500 @allroundexperts - manual request

Upwork job is here.

@conorpendergrast has this been paid out then, can we close this?

@mountiny I can confirm I have been paid, and I'm the only one on the list.

Yep, it has been paid, but the C+ checklist is outstanding for @allroundexperts  I think (hence why I haven't closed this yet)

Right, and it was caught via Applause by a regression test. Ok, thanks for making that clear! Closing out, we did it, hooray


unrestricted growth of Portfolio size

While working on the algorithm we've found a problem with the increasing size of Portfolio and Securities storage lists.
Even if the securities are not used in the code or the algorithm and if they don't hold any stock or affected by current or later
transactions they will not be removed. Especially it becomes reasonable when algorithm selects stocks to work with on each iteration by selector
within AddUniverse. It leads to 2 types of problems which we noticed in our algorithm which works with different stocks every day:

it leads to out of memory error if backtesting is done for a significant period. New securities are added every day to university,
size can only increase even if we trade only 1 or 2 symbols it doesn't help.
Processing time between calls of our functions increase significantly over time as all the Portfolio is processed outside.
When we tried to solve this problem by removing elements which were never used in the trades the error would appear because those elements
are accessed outside without any verification.
Where the AlgorithmManager tries to access the securities:
https://github.com/QuantConnect/Lean/blob/c475bde19ed462879dd29e8eb35a9f9c1bbdc05c/Engine/AlgorithmManager.cs#L432
in the line 432 of AlgorithManager.cs method ApplyDividend is called without any verification if the symbol exists in Portfolio or if it holds any stock etc.
The method ApplyDividend itself in SecurityPortfolioManager.cs
https://github.com/QuantConnect/Lean/blob/master/Common/Securities/SecurityPortfolioManager.cs#L599
access variable Securities[dividend.Symbol] without verification if the symbol exists within security.
Later in the code of the algorihm manager method ApplySplit called in the similar manner
https://github.com/QuantConnect/Lean/blob/c475bde19ed462879dd29e8eb35a9f9c1bbdc05c/Engine/AlgorithmManager.cs#L441
Later on in the AlgorithmManager.cs it access securities again without any verification:
https://github.com/QuantConnect/Lean/blob/c475bde19ed462879dd29e8eb35a9f9c1bbdc05c/Engine/AlgorithmManager.cs#L443
The structure of the code doesn't allow to affect the parameters stored in Slice.Dividends or Slice.Splits as algorithm doesn't have access to them.
===
How we see it is possible to solve this problem:
Option 1. Update code of the algorithmManager.cs to check existance before accessing dictionary
Option 2. Update methods ApplyDividend and ApplySplit in QCAlgorithm.cs to safely access the method
Option 3. Add modifier virtual to methods ApplyDividend and ApplySplit in QCAlgorithm.cs so we can override them to safely work with this parameters
Option 4. If there is an option that we can clean portfolio so it will not grow overtime and affect backtesting time and memory that will be great too.
===
Attached log of the test and minimum example
Minimum_Example.txt

@AnnaZuzex we're working on a theory about the RAM you might want to investigate;
ScheduleEnumerator calls -> GetLowerThreshold() GetUpperThreshold()
Methods set the number of items to allow each data thread to queue up before stopping the pre-caching of data objects. This pre-caching could possibly lead heavy memory usage with slow CPU's or algo-heavy processing.


[BUG]  Github and its Icon are connected in header.

Has this bug been raised before?

[X] I have checked "open" AND "closed" issues and this is not a duplicate

Description
Maybe add a very small margin/gap between the Github text and its icon in header.
Steps to Reproduce
Include any relevant details like:
Homepage/header
Screenshots

Do you want to work on this issue?
No
If "yes" to above, please explain how you would technically implement this
No response

Thanks for raising this issue

Sure @annuk123


website: updated to next 13.3.1

removed external @next/font package and migrated to internal next/font
migrated head.tsx to Metadata API

Getting this build error:
Running "cd .. && turbo run build --filter={website}..."
ERROR  run failed: error preparing engine: Invalid turbo.json
- No "extends" key found

Getting this build error:
Running "cd .. && turbo run build --filter={website}..."
ERROR  run failed: error preparing engine: Invalid turbo.json
- No "extends" key found

Seems like specifying root directory helped

Thank you!


Issue17 web app structure

This is my proposal for the web app structure making use of angular 1.x, it makes use of webpack for bundling the code and allowing you to use the require functionality. Gulp + webpack-dev-server will provide you tools to re bundle on any .js file change and test your application through a development server.

merging this cuz f*** it. I'll fix anything that needs cleaning up. Thanks a lot @rodrigomf24!

@harrisonlingren  sorry I didn't see your first comment about the .gitignore, sorry!

@rodrigomf24  No problem, I got it fixed. Thanks for your contribution!


bloxone_dns_forward_zone (Resource) fqdn (String) Server FQDN required for external_forwarders

Hello,
Again me :), the fqdn is mandatory "Inappropriate value for attribute "external_forwarders": map has no element for required attribute "fqdn"."
I don't understand why is it necessary the address ip only is enough normally no need for the fqdn server, in web ui for example we wan create a forward server group without mentionning any fqdn only ip address.
Is it possible to make it facultative please or have the entry of the fqdn which is equivalent to nothing ?
Thank you.
Samir TENNAH.

this means that now no need to add fqdn ? because I still have the issue:
"Inappropriate value for attribute "external_forwarders": map has no element for required attribute "fqdn"."
Thank you.
Samir TENNAH.

FYI, I am using csp.eu.infoblox.com as CSP.
Samir TENNAH.

Yes, this issue is fixed and should be available in the next released version of the provider.

Thank you for this information when will be the next release please ?
Samir TENNAH.

We released v1.0.0 today. Please let us know if the issue has been resolved for you.


UIImageView extension: crash if URLRequestConvertible throws

I am experiencing a reproducible crash while using UIImageView extension, in case if URLRequestConvertible passed to af_setImage throws.
It crashes in ImageDownloader.swift in ImageDownloader.ResponseHandler's init method due to the use of an implicitly unwrapped optional:

Sample code:
extension ImageRequest: Alamofire.URLRequestConvertible {
    public func asURLRequest() throws -> URLRequest {
        guard let url = URL(string: self.urlString) else {
            throw ImageKitError.url
        }
        return URLRequest(url: url)
    }
}
... // UIImageView extension:
let request: ImageRequest = ...
self.af_setImage(withURLRequest: request as URLRequestConvertible,
                         placeholderImage: request.imagePlaceholder?.image,
                         filter: nil,
                         imageTransition: UIImageView.ImageTransition.noTransition,
                         runImageTransitionIfCached: false) { (response: DataResponse<UIImage>) in
... }

I am using Xcode 8.2.1, AlamofireImage 3.2.0.

Hi @hybridcattt,
This is certainly a bug in AFI. The image downloader wasn't designed with the idea of having the ability to have URLRequestConvertible be able to throw. As a workaround until we get this design flaw properly addressed, I'd suggest you ensure you're requests being sent into the ImageDownloader will not throw.
I'll keep this open until we get a PR up to address the underlying issue.

Is there a plan to fix this? I can probably help :)

Closing this issue out for PR #392. Please redirect all future comments to that PR. Thanks! 🍻


adding spark sql based transformations for python templates

Could you add unit tests to covert the added properties?

@hhasija can you please update it with the latest so that it can be merged.


Bug 92325: This Static Web App already has the maximum number of staging environments

This PR fixes:

Bug 92325: This Static Web App already has the maximum number of staging environments
Adds required field to remove the staging web app when the PR is closed

To confirm each PR, we deploy a staging version of the web app to Azure. We can therefore, test the web app part of the solution without needing to necessarily checkout the PR locally. Will make it easier for Preppers / Designers / Testers to validate PRs.
Some were previously failing, as we only have 3 staging environments for the Free tier. I have therefore increased this to the Standard tier so we can have up to 10 staging environments. I.e. 10 PRs that are ready for review.
To test this PR @EdiWeeks:

Confirm on this page it says "All checks have passed"
Click "Details" next to "React App Tabs to Test / Build and Deploy Job (pull_request)"
Expand "Build and Deploy" section
Click on "Visit your site at: https://aaaaaaaaaaaaaaaa.centralus.5.azurestaticapps.net/"

Update: I have amended permissions so the GitHub workflow can write a simple comment to this PR as follows:

FYI @desousamario85 @akash2017sky

Trying to authenticate though gives:
AADSTS50011: The redirect URI 'https://happy-grass-0cba10710-44.centralus.5.azurestaticapps.net/' specified in the request does not match the redirect URIs configured for the application '9b80eb43-d75a-43e3-8104-0d6d0f0b41ec'. Make sure the redirect URI sent in the request matches one added to your application in the Azure portal. Navigate to https://aka.ms/redirectUriMismatchError to learn more about how to fix this.
The redirect URI used in the authentication request (https://happy-grass-0cba10710-44.centralus.5.azurestaticapps.net/) is not among the redirect URIs configured in your Azure AD application registration.
We can use the Azure CLI or Microsoft Graph API in our GitHub Actions workflow to add the staging URL as a redirect URI to the Azure AD application during deployment.
Set Up Azure Credentials in GitHub Secrets

Create a service principal with permissions to update the app registration.
Store the service principal credentials (AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID) as GitHub secrets.

Install Azure CLI in the Workflow
- name: Install Azure CLI
  run: |
    curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

Log in to Azure CLI
- name: Azure Login
  run: az login --service-principal -u ${{ secrets.AZURE_CLIENT_ID }} -p ${{ secrets.AZURE_CLIENT_SECRET }} --tenant ${{ secrets.AZURE_TENANT_ID }}

Clean Up Redirect URIs on Pull Request Close
In our close_pull_request_job, remove the staging URL from the redirect URIs.
- name: Remove Redirect URI
  run: |
    az ad app update --id 9b80eb43-d75a-43e3-8104-0d6d0f0b41ec --remove web.redirectUris https://${{ steps.builddeploy.outputs.deploymentUrl }}

@BenGWeeks this is ready to be merged.


Variables

It is better to have a clear short variable name. Rather than having "deletebutton"  we can have  "delete" or "deletebtn".

const deleteButton = document.createElement('button');
const todoListContainer = document.querySelector('.todolistbody');
const savedTodosData = JSON.parse(localStorage.getItem('todosData'));
2.good to have array with objects
const newTodo = {
index: todos.length,
description,
completed: false,
};

add short meaningful variable names


Enforce unix style line endings using .gitattributes

I also propose we export-ignore some stuff on 2.x, like, the massive tests folder.

NB, this is useful for windows users to ensure they don't accidentally use the wrong line endings.

text=auto
Git will handle the files in whatever way it thinks is best.

I don't like allowing GIT to guess the line ending and change it.

We'll we'll notice if it's making bad changes, but so far, it's been a pain for me to develop on windows without it

I develop on windows too and have just set core.autocrlf=input to disallow GIT to manipulate line endings.
Also, all IDEs allows to set line ending type.

Hmmm. I guess we're not going to agree here then, lol.

Why not? Please remember that I have already merged PRs that I wasn't happy about, but the community want it.
Also, what about text eol=lf ? Since we doesn't want git to guess (or at least I don't want), them we may told what the eol is. They are often used together, since first also detect which files are text (not binary), and second enforce correct eol

text eol=lf

That's fine with me. ;)

How does that look now?

@keradus How does this look now?
AppVeyor seems stuck on https://ci.appveyor.com/project/keradus/php-cs-fixer/build/dev-528 btw too.

I'm neither :-1: nor :+1:
Let the others decide

±0 ;)

lol

seems like a tooling issue and not something caused/needs fixing by this project, but I would not mind having this in, so I'm +/-0 as well :)

wel... anyone ?

Looks like we're going to have to assume everyone loves it! :trollface:

@GrahamCampbell +1
@keradus ±0
@gharlan ±0
@SpacePossum ±0
result: +1

I wouldn't count author's vote, and if does then -1 from me.
We have a ±0 so far.

I wouldn't count author's vote, and if would then -1 from me.

LOL. Hax.

* text=auto

# Always use LF
core.autocrlf=lf

This should work perfect :+1: and configure the global config to use input.

global config wouldn't be used in that case, why to change it?
What is the difference with the solution you provided and * text eol=lf ?

:+1:

Hi @joecohens , nice to see you here! It's your first time, isn't it? I hope one day you will become a contributore of PHP CS Fixer as well as you are contributor of Style CI!
BTW, it would be great to see more vote from PHP CS Fixer contributor team ;) As it's will change (or not) the way you are working with repo.

Hi @keradus thanks for the welcome! I think it's my second time, for sure I'll see you more often :)

:+1:

ping @sstok ref https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1556#issuecomment-161060925

ping @sstok ref https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1556#issuecomment-160975761

hurrah, 3rd guy from StyleCI ;)
People, please, this is a settings for people who write the code in this repository, let them decide.

hurrah, 3rd guy from StyleCI ;)

We support one another, plus this makes sense for PHP-CS-Fixer anyway.

Actually only folks from StyleCI want this, noone other see the benefits

Actually only folks from StyleCI want this, noone other see the benefits

Actually only folks from StyleCI want this, noone other see the benefits

Well, to be fair, it ultimately makes no difference for us. We can add it to our own version if we want.
I just think it makes it easier for people to contribute to PHP-CS-Fixer with this change.

That's why I would like to have an opinion from people that actually contribute to PHP CS Fixer itself. And non of them actually follow that proposal. Maybe it is an issue of your env/global settings?
I don't say not, but it must serve the people who will use it.
@sstok proposal is really interesting too!

I'm fine using @sstok's idea instead. Both do the job.

Setting the global configuration to "input" makes it work for all local repositories.
Setting the configuration locally ensures that someone with a "wrong" global configuration doesn't have to worry about wrong line-endings.
All this hassle to support Windows, the only in the OS in the world that doesn't follow modern logic.

Thank you for the information @sstok .
I'm using the input global configuration for years and have no problem on Windows with line ending in git ;)
Changing the local is same as text=auto eol=lf in that case.
Symfony, Zend or PHPUnit do not use .gitattributes settings at all. Of course some repos use it, like Composer.
Take a look at Composer .gitattributes. Maybe we should go that way?
Also, it may be tricky that *.test files will not follow all the rules :(

Very well. Closing.


[Bug] Self-referencing HasManyThrough relationship

Laravel Version: 5.5.7 and before
PHP Version: 7.1
Database Driver & Version: MySQL 5.6.3

Description:
This is a really basic example, but here goes.
Say you have a users table and an orders table, and you have a feature where I can refer a friend to order a product, on the orders table you may have referrer_id column which stores the user_id of the user that initiated the referral.
Given that scenario, you could potentially have a relationship on the User model that looks like this
public function referrals()
{
    return $this->hasManyThrough(self::class, Order::class, 'referrer_id', 'id');
}

Then, you may do something like this to get all Users that have referred someone...
$users_that_have_referred = User::has('referrals')->get();

This will return incorrect results, it will just return all users.
The SQL generated looks like this...
select * from `users` where exists (select * from `users` inner join `orders` on `orders`.`id` = `users`.`id` where `users`.`id` = `orders`.`referrer_id`)

The problem with this is that the outer query users table conflicts with the inner query's users table.
To get that query to actually work, you would need to something like aliasing the outer table name like this....
select * from `users` as `users_outer` where exists (select * from `users` inner join `orders` on `orders`.`id` = `users`.`id` where `users_outer`.`id` = `orders`.`referrer_id`)

Steps To Reproduce:
I have setup a repo with this all setup ready for testing, it just dumps the results from the web.php route file.
git clone https://github.com/JayBizzle/HasManyThroughBug.git
cd HasManyThroughBug
composer install
php artisan key:generate
php artisan migrate
php artisan serve

Same problem over here with a different database structure.
When using a BelongsTo relation on itself, it doesn't alias the related table.
public function parent()
{
    return $this->belongsTo(self::class, 'entity_id');
}

When using the given relation on a table (id, entity_id, flag, slug, timestamps), in combination with this: $model->doesntHave('parent'), it returns an error:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'laravel_reserved_0.id' in 'where clause' (SQL: select * from `entities` where `flag` = leaflet_category and not exists (select * from `entities` where updated_at >= 1970-01-01 01:00:00 and `laravel_reserved_0`.`id` = `entities`.`entity_id` and `laravel_reserved_0`.`deleted_at` is null) and `entities`.`deleted_at` is null)

Looks like it does correctly alias it in the main query, but the sub query doesn't receive the aliased name.

I've updated the sample repo to make the issue a little more obvious (see above for details on how to replicate the issue)
https://github.com/JayBizzle/HasManyThroughBug
@themsaid Would like the hear your thoughts on this? Either just to know if it is possible to fix, or if it is a no-fix issue.
Thanks

Not quite sure but I think it's worth an attempt, feel free to open a PR with the idea of aliasing when you get the chance.

I'll take a look when i get chance to sit down and get my head around it. Unfortunately, the query builder is one of my weakest Laravel knowledge areas

Gave myself a quick crash course in the query builder and I seem to have fixed this issue. Will take me a couple of days to tidy it up, test it properly and put together a proper PR...

PR submitted #21792

Fixed in #21883


feat(autorest): bump to 3.6.3

Description
bump autorest to 3.6.3
Checklist
To ensure a quick review and merge, please ensure:

[ ] The PR has a understandable title and description explaining the why and what.
[ ] The PR is opened in draft if not ready for review yet.

If opened in draft, please allocate sufficient time (24 hours) after moving out of draft for review

[ ] The branch is recent enough to not have merge conflicts upon creation.

Ready to Land?

[ ] Build is completely green

Submissions with test failures require tracking issue and approval of a CODEOWNER

[ ] At least one +1 review by a CODEOWNER
[ ] All -1 reviews are confirmed resolved by the reviewer

Override/Marking reviews stale must be discussed with CODEOWNERS first

preview pr: https://github.com/Azure/azure-sdk-for-net/pull/38253


SDP-1116 Support External_ID DRAFT PR (See TODO). reece

What
This change will be deployed in a branch with a PR Preview pipeline  to support Vibrant Assist in testing integration of supporting external_id in SDP registration deep link and sep24 post interactive deposit for partner integration.
The receiver’s invitation DeepLink should include the field external_id, containing the ID of that receiver_wallet
This code will not be merged for now. We should decide if we want to adopt this external-id field or not.
TBH, it could remove the need for an OTP step on our end, but we should discuss if we want that.
We need to validate the decision with @Nando Vieira  before concluding if this will be part of the official implementation, or if an optional field.
added some additional unit tests and verified all existing tests are passing.
Why
To support reconciliation of vibrant client (mobile phone) with SDP Host Customer ID by using an external_id field in the deeplink sent from the sdp host (SDP registration deep link). then this will be passed within SEP24 claims for reconciliation.
Known limitations / TODO
TBD - not yet part of this PR: When validating the wallet-registration, verify if the SEP24 incoming info contains the field: customer_id=external_id:hash(phone_number) Use the external_id to find the user in our database Hash the user’s phone number and compare it with the incoming hashed phone number It’s ok to send an informative response, so Vibrant can understand this well.
PR Structure

[x ] This PR has a reasonably narrow scope
[x ] This PR title and description are clear enough for anyone to review it.
[ ] This PR does not mix refactoring changes with feature changes (split into two PRs otherwise).

Thoroughness

[ ] This PR adds tests for the new functionality or fixes.
[ ] This PR contains the link to the Jira ticket it addresses.

Configs and Secrets
there is a new configuration option useExternalID (true/false) to make this optional.  This has not yet been updated to helm charts yet until we determine if we plan to include this support in our standard release.
Release
not for release at this time.  only for testing with Vibrant.
Deployment
Will be deployed only in a pr-preview pipeline at this time.

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

Something went wrong with PR preview build please check

Something went wrong with PR preview build please check

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

Something went wrong with PR preview build please check

Something went wrong with PR preview build please check

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr256.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr256.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr256.previews.kube001.services.stellar-ops.com

Something went wrong with PR preview build please check

Something went wrong with PR preview build please check


update python pinning

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

This package seems to cause an issue with pip check (see https://github.com/bioconda/bioconda-recipes/pull/50188) and it seems like the build string may be incorrect (just py). Rebuilding and also updating the python pinning.

@conda-forge-admin, please rerender

Build string looks correct now noarch/littleutils-0.2.2-pyhd8ed1ab_1.conda

thanks, @aliciaaevans


Fix type for loginViewController

Replace typo loginViewcontroller in loginViewController

I signed it.
On Tue, Feb 23, 2016 at 22:14 googlebot<EMAIL_ADDRESS>wrote:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project. Before we can look at your
pull request, you'll need to sign a Contributor License Agreement (CLA).
[image: :memo:] Please visit https://cla.developers.google.com/
https://cla.developers.google.com/ to sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll
verify. Thanks.

If you've already signed a CLA, it's possible we don't have your
GitHub username or you're using a different email address. Check your
existing CLA data https://cla.developers.google.com/clas and verify
that your email is set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
If you signed the CLA as a corporation, please let us know the
company's name.

—
Reply to this email directly or view it on GitHub
https://github.com/firebase/FirebaseUI-iOS/pull/43#issuecomment-188097371
.

LGTM, thanks for this! Sorry it took so long to merge--busy last few weeks.


Docker Support!

This PR adds support for Docker!
To test:
# Build
docker build -t reverse_ssh .

# Create a directory to store data in. You could use a docker volume instead.
mkdir ./data

# Run
docker run -p4321:2222 -e EXTERNAL_ADDRESS=example.com:4321 -e SEED_AUTHORIZED_KEYS="$(cat ~/.ssh/id_ed25519.pub)" -v ./data:/data reverse_ssh

The SEED_AUTHORIZED_KEYS env variable is not required. If not supplied, you'll need to manually add your key in data/authorized_keys. It is also a one-time operation -- if authorized_keys exists already and has contents, SEED_AUTHORIZED_KEYS will be ignored.
This is intended to be used with link for client compilation. No clients are compiled on build or run. DLLs and UPX are also supported out of the box!
Future stuff:
Once this eventually gets merged to main, CI/CD should be set up to push to dockerhub. Then, we can include a one-liner in the readme.

Fantastic thanks! I'll look at merging this tomorrow

Awesome, thanks for this. I'll be testing it out today

This still has the issue where you cannot ctrl + c the docker container itself


_APINode is very inefficient and creates a new Requests object for every part of the path

In the pylxd/client.py file there is the following code in the _APINode class:
class _APINode(object):
    """An api node object."""

    def __init__(self, api_endpoint, cert=None, verify=True, timeout=None):
        self._api_endpoint = api_endpoint
        self._timeout = timeout

        if self._api_endpoint.startswith('http+unix://'):
            self.session = requests_unixsocket.Session()
        else:
            self.session = requests.Session()
            self.session.cert = cert
            self.session.verify = verify

This looks okay on the face of it, except when you realise that _APINode is created for each part (method) of a call like:
client.api.containers[name].post()

In this call, 3 requests.Session() or requests_unixsocket.Session() objects are created, and only the final one is used in the post().  This is using up resources that simply don't need to be made AND makes testing harder as new _APINodes keep popping up dynamically as calls are constructed.
Going forward, the code should delay the creation of the requests or requests_unixsocket objects until the end method is called.

This also causes issues for any call-sites who want to manipulate that session to set e.g. trust_env


Caching - handle in-flight caching

multiple requests  for the same thing should only result in one network request, even if the first request hasnt completed its network i/o yet

done awhile back inflight-cache


Can't run old multiple commands anymore

I’ve upgraded to 4.2 (previously 3.5.1) and I can’t get my old commands to work, turning on/off 2 LightwaveRF lights at the same time.
It’s very possible I’m doing something wrong due to the new changes, but whatever I try doesn’t work. (I've tried adding them as individual entries, combined entries in the regular fields, and combined entries in the bottom legacy fields without any luck)
These are the commands I use to use after creating a manual button and setting the type as UDP:
On
[{"item":"udp://<IP_ADDRESS>:9760/001,!R2D1F1","delay":1000},
{"item":"udp://<IP_ADDRESS>:9760/001,!R2D2F1"}]

Dim
[{"item":"udp://<IP_ADDRESS>:9760/100,!R2D1FdP${intensity.math(X/8)}","delay":1000},
{"item":"udp://<IP_ADDRESS>:9760/100,!R2D2FdP${intensity.math(X/8)}"}]

Off
[{"item":"udp://<IP_ADDRESS>:9760/001,!R2D1F0","delay":1000},
{"item":"udp://<IP_ADDRESS>:9760/001,!R2D2F0"}]

Any help would be appreciated.

I am going to guess, that the Device Type is not UDP for this item. Updating the line items to be the udpDevice in the new editor will fix this, i believe.

I've already done that (if I understand correctly)
Here's screenshots of what I've tried
http://d.pr/i/lzcd
http://d.pr/i/y2TT
http://d.pr/i/GQW8
http://d.pr/i/FDR
(I've tried setting 'Device Type (Informational)' as UDP as well)

So, are you getting errors in your log? I need to see the log from the process output.

@jonohunt http://d.pr/i/lzcd is the correct syntax, suggest to move the delay to the first item as that is what controls the delay after the call.

Thanks, I've moved the delay to the first items. When I press the button it shows this in the logs:
Could not decode Json for url items: 40 for hue state change request: test from <IP_ADDRESS> body: {"on":true} url items: [{"item":"udp://<IP_ADDRESS>:9760/001,!R2D1F1","type":"udpDevice","delay":"1000"},{"item":"udp://<IP_ADDRESS>:9760/001,!R2D2F1","delay":"","type":"udpDevice"}]

Interesting, I've cut and pasted your udp request on my system on Windows and it is working.

Strange.
If I use the commands separately for each light they work fine, just not combined anymore.

I get it to work under 4.0.2, Turn on Debug for the UDP plugin
Here is my configuration for your device

Try the new 4.0.3 version, that has some fixes

That's it, it seems to be working OK now! Thanks for the help! (again)


Slim v3

Upgrade Slim functions to match functionality for version 3.

I think it's time to make a new Slim2 branch, and then move develop and master to be Slim3. Anybody have any objections or concerns?

That looks like a good option, but should we wait until tests pass to merge it to master?

Working on getting all the tests to pass.
I think it would be a great idea to move Slim3 to the main branch.
Will update as soon as its all done.

Sounds great. Thanks! Great to see this project getting some attention. I really appreciate it.

All checks passed.

This looks like it's progressing well. Is it time to pull this in and make the Slim2 branch and move this to develop and master with a release?

                                                                                I think that would be a good move.                                                                                From: Craig DavisSent: Wednesday, July 6, 2016 11:00 AMTo: there4/slim-test-helpersReply To: there4/slim-test-helpersCc: Jermaine McFarlane; AuthorSubject: Re: [there4/slim-test-helpers] Slim v3 (#31)This looks like it's progressing well. Is it time to pull this in and make the Slim2 branch and move this to develop and master with a release?

—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.

I've created a new branch for version two of the framework, and am preparing a new 2.1 release for this PR.
Again, thanks for continuing to support this project!

You are most welcome.
This has been a great helper for a project I am currently working on.
Keep up the great work!


README Suggestions

At the moment the script only show the browsers weak points without suggesting possible solutions that can be implemented by add-on or browser developers.
Would it be possible to add a suggestions section in the README with information that developers and end users can use to protect themselves or implement counter-measures in their codes?

Suggesting solutions and/or counter-measures is outside the scope of this project. But, questions on specific metric are always welcome.

Closing, but feel free to discuss


Bug: Post a device model with an empty model id

I tried to post a new device model through the API and I can't access to the device model detail :

Here is the script I used to post this device model :

I also tried to delete this device model and an error occured :

Hi @adcoly ,
Thank you for this issue submission.
I'm working on it.
The correction will be to check if the device model identifier is null or empty before creating it (otherwise, it will create a GUID model identifier).
As a workaround, you might be able to ether:

Post a device model omitting the model identifier inside the payload
Post a device model with your custom device model identifier


Add display of parser logs to aid in debugging

This requires https://github.com/nationalarchives/ds-caselaw-custom-api-client/pull/172.

Codecov Report

Merging #891 (6127451) into main (f962261) will increase coverage by 0.56%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #891      +/-   ##
==========================================
+ Coverage   88.33%   88.90%   +0.56%
==========================================
  Files          35       35
  Lines        1389     1379      -10
  Branches       51       50       -1
==========================================
- Hits         1227     1226       -1
+ Misses        146      137       -9
  Partials       16       16

Impacted Files
Coverage Δ

judgments/utils/aws.py
44.94% <ø> (+3.52%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


find or create ghost div at runtime

Find or create the ghost div at run time so if the dom gets reloaded, the autosizing still works.
Fixes issue #2

@pomartel Thanks for this; merging. I plan to do some maintenance/housekeeping before cutting a release with your change


Demonstrating Fisher  Forecasts

I think one of the sections of the paper should illustrate how easy it is, and how stable it is to get Fisher matrices from a differentiable code.
This can be illustrated for instance by comparing Fishers of increasing complexity on a DES Y1 case compared to cosmosis.

I've added a first draft of a notebook comparing Fisher forecasts for a DES Y1 analysis between jax-cosmo and CCL. Can be found here:
https://github.com/DifferentiableUniverseInitiative/jax-cosmo-paper/blob/master/notebooks/Fisher.ipynb
For the moment, I've been able to find 2 things:

Discrepancy between jax-cosmo and CCL on number count cross correlations between first and last/second to last lens samples.

Instabilities in the gradient computation with finite differences (shocker I know) on the CCL side. For instance this is the gradient of shear shear spectra with respect to (A, eta) IA parameters with CCL:

There are weird large jumps, which, I can only assume, are due to failures to some integrals sometimes when CCL runs. This translates in a dramatic change of IA parameters contours:

Maybe plot the derivatives as L dC_ell /  dp, with L as the Cholesky decomposition of the inverse covariance?  That would highlight which are the impactful changes.  Also it's often useful to plot (C_ell_CCL - C_ell_jax) / sigma to get a better idea of where the differences matter.


ssh_port default missing in few places

Hi,
the aws provisioner fails due missing definition for ssh_port:
TASK [manage_ec2_instances : Add hosts to control_nodes group] ****************************************************
fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'ssh_port' is undefined\n\nThe error appears to have been in '/srv/ansible-lightbulb/tools/aws_lab_setup/roles/manage_ec2_instances/tasks/create.yml': line 9, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Add hosts to control_nodes group\n  ^ here\n\nexception type: <class 'ansible.errors.AnsibleUndefinedVariable'>\nexception: 'ssh_port' is undefined"}

there are these places which should have default set like {{ ssh_port | default('22') }}:
# grep -r ssh_port roles/
roles/manage_ec2_instances/tasks/create.yml:    ansible_port: "{{ ssh_port }}"
roles/manage_ec2_instances/tasks/create.yml:    ansible_port: "{{ ssh_port }}"
roles/common/handlers/main.yml:    port: "{{ ssh_port }}"

Fixed by PR.


Added screenProps to DrawerNavigatorItemsProps

fixes #96

Thanks for the PR. Can you rebase it against master so CI passes?

It's done.

@satya164
I did rebase master. but I failed again. the massage says that ScreenProps does not exist.
previously there is a ScreenProps type like below:
export type ScreenProps = {
    [key: string]: any;
  };

is it renamed to another thing?

@satya164
I did rebase master. but It's failed again. the massage says that ScreenProps does not exist.
previously there is a ScreenProps type like below:
export type ScreenProps = {
    [key: string]: any;
  };

is it renamed to another thing?

Are you mean I must change the line to line below?
screenProps?: unknown

where unkonwn type is defined? I can't find it.

It's a built-in type in TypeScript


fix(PeriphDrivers, CMSIS): Fix build warnings and errors

This PR addresses below issues.

Build tests on MAX32672 boards fail due to redefinition warnings: https://github.com/zephyrproject-rtos/zephyr/issues/79283
Shutdown mode function is declared as MXC_LP_EnterShutDownMode however it is implemented as MXC_LP_EnterPowerDownMode for MAX32662. This could cause undefined reference errors.

What was fixed to resolve the redefinition warnings? This is happening in the MSDK too, and it is not obvious what changed.

I think the order of inclusions was causing the error. __I is defined in both xxx_regs.h and core_cm4.h. core_cm4.h does not check if __I is already defined so redefinition warnings pop up. Though I am not sure why this is only an issue with cpp builds.


Option to disable specific UI modules

Sorry for the many issues! After today another compat issue with leatrix plus. As you've mentioned before it is difficult to have full compat with LTP, so my question is if it would be possible to add toggles for each UI element? For example, the questlog was updated, but I like using the enhanced quest log from LTP as I find the regular quest log to be quite unusable.

I see trainers/professions already have a toggle. Quest log is missing

My quest log is fixed now after a reload... Not sure what the issue was

Deactivate the LeatrixPlus Questlog option; I think a chat message should pop up if you have this enabled.

I made the Era Questlog exactly like the new Cata one, so you dont need any other addon/Leatrix etc.  (The default Era Questlog is indeed unuseable)
My goal is to do a complete overhaul mod, so the default frames etc should be good already. Other, bigger addons can improve that, but small tweaks like some of the more popular options from addons like Leatrix will be implemented as default.
Some Era frames need a complete overhaul because the 20 year old blizzard code is so bad and inconsistent. They are made with custom textures for simple things like the frame border style etc, while the newer frame use a Template with a nineslice texture. So you cant just swap the textures, because I would have to draw them myself for so many frames.
With my UI system I can add the frame style with 3 lines of code, and they are then consistent with all the other frames. Most addons that hook onto some of the old frames, like the addon compatibility I did in the last few days, are also not coded in a good way, because a lot of stuff is hardcoded, and any change to the original frame breaks it completely, although there would easier ways to add onto them.

Deactivate the LeatrixPlus Questlog option; I think a chat message should pop up if you have this enabled.

My chat is getting spammed with addon messages when I log in. I must've missed it. I'll disable LTP quest log for now, thanks


Provide API to know if Picture is being loaded

When the picture is being loaded, we might want to show a spinner etc.

onLoadStarted, onLoadSuccess, onLoadFailure added


How to create a chain of LSTMcells in Lux.jl?

Hi,
could anyone provide a similar example in Lux.jl to this Flux classifier example below:
# Seq2Many network
struct Seq2Many
    rnn # Recurrent layers
    fc  # Fully-connected layers
end

rnn = Chain(Dense(in_dim => nodes), Dropout(0.2f0), LSTM(nodes => nodes))
nn = Dense(nodes => out_dim, sigmoid))
# Make full Seq to Many
model = Seq2Many(rnn, nn)

# then make it trainable... etc.

Is there a way for multiple layers of LSTM in Lux.jl constructed in the way as it is in the examples?
https://github.com/avik-pal/Lux.jl/blob/main/examples/SimpleRNN/main.jl
Thanks!

Closing since the OP's answer is the correct solution. Also for future reference there are utility layers like https://lux.csail.mit.edu/dev/api/layers/#Lux.StatefulRecurrentCell and https://lux.csail.mit.edu/dev/api/layers/#Lux.Recurrence which make handling RNNs in Chain easier.


feature: Derive Hash for KeyboardInput.

Objective
Derive Hash for KeyboardInput.
Problem
I was writing code to take crossterm events and republish them as bevy input events. One scenario requires I check if the same key press was happening repeatedly; in a regular terminal we don't get key released events, so I was simulating them.
I was surprised to find that I couldn't put KeyboardInput into a HashSet.
Work Around
My work around was to add a new type that implemented Hash.
#[derive(Deref, DerefMut, PartialEq, Eq)]
struct KeyInput(KeyboardInput);

impl Hash for KeyInput {
    fn hash<H>(&self, state: &mut H)
    where
        H: Hasher,
    {
        self.key_code.hash(state);
        self.logical_key.hash(state);
        self.state.hash(state);
        self.window.hash(state);
    }
}

Solution
A better solution since all members of KeyboardInput implement Hash is to have it derive Hash as well.
Testing
My newtype solution works for its purpose.

@shanecelis I added the Hash trait reflection, which immediately caused formatting to fail. Format this and then bug me to merge this please?

Thanks @joshka!

@shanecelis I opened https://github.com/shanecelis/bevy/pull/2, which should make CI pass. Could you please merge it?

@shanecelis I opened shanecelis#2, which should make CI pass. Could you please merge it?

Woops - that was my bad :D

@shanecelis I opened shanecelis#2, which should make CI pass. Could you please merge it?

Woops - that was my bad :D

No worries! This PR just went through two merge trains, so I figured I'd try my best to fix anything blocking it.
@alice-i-cecile if you want to skip the PR entirely, you can apply https://github.com/shanecelis/bevy/pull/2/commits/b96f3ff217a43c08cfb314b604e723217c985fec and merge. (No worries if you don't get to it, though!)

Thanks @BD103 for the PR. I merged and the tests now pass.
Sorry I didn't see your comment earlier, @alice-i-cecile.

Awesome, thank you all <3


[Torii] gRPC to support Events query and subscription

Support event query and subscription over grpc, similar to graphql.
This should be pretty straight forward to implement, very similar to how entity query/sub is implemented.

Hi @broody. I would like to try this one

A sought after feature by the lords :D


Remote backup doesn't work on google drive in the root path

Hi,
I discovered the following issue. When I save the database in the root path of my google drive then backup files won't be created when I git the save button. But when I save the database in a subfolder it works correctly (as I set it up), for example in /keystore/database.kdbx.
Sounds like a bug or is it a feature?
Best regards,
Mauro

Hi @MauroG86
Question.
Where are you changing this path, where to store backups on google drive?
I can't see such option. And backups doesn't work for me.

Hi @amid0,
when you save your database on the cloud you can choose the path.
File -> Save As -> Save to Cloud Drive...
Then a dialog pops up and you can choose where you want to save your database.
If you now choose the root path, then the backups won't be created when you save a change.
Best regards,
Mauro


Update dependabot.yml

Could you please describe your PR, specifying the particular issue you are addressing?

Could you please describe your PR, specifying the particular issue you are addressing?

update for pr #201


Document settings required to populate Dashboards.

I've been trying out this docker image as someone new to both the Grafana products and OpenTelemetry in general.  I believe I'm your target audience.  That said, I'm struggling to get any of the three sample Dashboards to populate with metrics using the OpenTelemetry Java Agent with my own application.  I can confirm instrumentation is working because I'm able to see some metrics using Explore, I'm also seeing Traces and Logs populated as well but all the metrics dashboards remain obstinately blank.
Here are my settings for Java Agent 2.2.0:
# Settings for the opentelemetry java agent

# in ms...
otel.bsp.schedule.delay=5000
otel.metric.export.interval=5000

otel.exporter.otlp.metrics.default.histogram.aggregation=base2_exponential_bucket_histogram

# capture enduser info...
otel.instrumentation.common.enduser.enabled=true
otel.instrumentation.common.enduser.id.enabled=true

otel.instrumentation.common.peer-service-mapping=foo-host:8082=foo-service

otel.semconv-stability.opt-in=http

otel.resource.attributes=service.version=HEAD-SNAPSHOT
otel.service.name=my-service

The above settings are trying to get the JVM and RED (native histograms) dashboards to populate.
General feedback:

Having two RED Metrics dashboards is confusing.  Strongly recommend a single RED dashboard using the metrics you view to be the best / future-proof path for someone new to OpenTelemetry.  After a bunch of Googling I think that might be the "native histogram" one but I'm still not sure!
Please document the settings required to populate the Dashboards.  Yes, I did see the description at the top for the two RED Metrics dashboards but it would be great to add the property settings (in addition to environment variables) or simply a link to a more detailed page on this github project.  The JVM Metrics dashboard is missing any instructions so I have no idea how to get it to populate (in Explore view I can see some jvm_* metrics are populated so I dunno?!
Consider enabling github Discussions on this project (this issue would be more appropriate as a discussion post but I can't figure out where to post feedback!)

Hope this doesn't come across as overly negative.  It's pretty awesome to be able to spin up a product suite supporting metrics, traces and logs with a single command!

I think this might have to do with the collection names. Can you please double check that the generated collection names are matching, there's this temporary duality with adding/not-adding the unit, when the OTEL metrics are converted to Prometheus.

Sorry I mean the Prometheus series name. I apologize for the confusion.

@grcevski If I'm understanding correctly, here's the list of metric series names populated:
"http_client_request_duration_seconds",
"http_server_request_duration_seconds",
"jvm_class_count",
"jvm_class_loaded_total",
"jvm_class_unloaded_total",
"jvm_cpu_count",
"jvm_cpu_recent_utilization_ratio",
"jvm_cpu_time_seconds_total",
"jvm_gc_duration_seconds",
"jvm_memory_committed_bytes",
"jvm_memory_limit_bytes",
"jvm_memory_used_after_last_gc_bytes",
"jvm_memory_used_bytes",
"jvm_thread_count",
"otelcol_exporter_queue_capacity",
"otelcol_exporter_queue_size",
"otelcol_exporter_send_failed_log_records_total",
"otelcol_exporter_send_failed_metric_points_total",
"otelcol_exporter_send_failed_spans_total",
"otelcol_exporter_sent_log_records_total",
"otelcol_exporter_sent_metric_points_total",
"otelcol_exporter_sent_spans_total",
"otelcol_http_server_duration_bucket",
"otelcol_http_server_duration_count",
"otelcol_http_server_duration_sum",
"otelcol_http_server_request_content_length_total",
"otelcol_http_server_response_content_length_total",
"otelcol_process_cpu_seconds_total",
"otelcol_process_memory_rss",
"otelcol_process_runtime_alloc_bytes_total",
"otelcol_process_runtime_heap_alloc_bytes",
"otelcol_process_runtime_total_sys_memory_bytes",
"otelcol_process_uptime_total",
"otelcol_processor_batch_batch_send_size_bucket",
"otelcol_processor_batch_batch_send_size_count",
"otelcol_processor_batch_batch_send_size_sum",
"otelcol_processor_batch_metadata_cardinality",
"otelcol_processor_batch_timeout_trigger_send_total",
"otelcol_receiver_accepted_log_records_total",
"otelcol_receiver_accepted_metric_points_total",
"otelcol_receiver_accepted_spans_total",
"otelcol_receiver_refused_log_records_total",
"otelcol_receiver_refused_metric_points_total",
"otelcol_receiver_refused_spans_total",
"otlp_exporter_exported_total",
"otlp_exporter_seen_total",
"processedLogs_total",
"processedSpans_total",
"queueSize_ratio",
"scrape_duration_seconds",
"scrape_samples_post_metric_relabeling",
"scrape_samples_scraped",
"scrape_series_added",
"target_info",
"traces_service_graph_request_client_seconds_bucket",
"traces_service_graph_request_client_seconds_count",
"traces_service_graph_request_client_seconds_sum",
"traces_service_graph_request_server_seconds_bucket",
"traces_service_graph_request_server_seconds_count",
"traces_service_graph_request_server_seconds_sum",
"traces_service_graph_request_total",
"up"

Not sure what I should be matching these up against?  Is this related to this Grafana blog post and this OpenTelemetry Collector document that mentions Prometheus Normalization?

Hm, interesting, you don't see http_server_request_duration_seconds_bucket and http_server_request_duration_seconds_count?
Did you install the docker/grafana-dashboard-red-metrics-classic.json or docker/grafana-dashboard-red-metrics-native.json? Based on the metric series names I think you need to use docker/grafana-dashboard-red-metrics-native.json.

@grcevski I'm using the docker container as published to Docker Hub via docker run -p 3000:3000 -p 4317:4317 -p 4318:4318 --rm -ti grafana/otel-lgtm as per the Grafana Labs blog post.  I haven't cloned this repo and customized anything, thus my comment above about the confusion between the two different predefined RED dashboards that are visible in the Grafana UI.  All three dashboards show No Data.

Ah I see, we should possibly expand the documentation to include mention of the other dashboards. Are there any other dashboards available, we need to use the 'Native Prometheus Dashboard' for the metrics series names you have.

@grcevski Which other dashboards are you referring to?  I see three dashboards by default:

It looks like these correspond to the dashboard definitions in the docker/grafana-dashboard-*.json files in this repo.  Are there others?

OK, great, so the "RED Metrics (native histogram)" should work if you have data in "http_server_request_duration_seconds". Is it also empty?

@grcevski I seem to have data:

but nothing shows up on the dashboard:

I'm trying to understand where the docs can be improved.
I've just followed the proposed steps for native histograms - please let me know where it didn't work:

start LGTM
go to native dashboard
see instructions (screenshot)
adjust run.sh, uncommenting export OTEL_EXPORTER_OTLP_METRICS_DEFAULT_HISTOGRAM_AGGREGATION=base2_exponential_bucket_histogram
run run-example.sh and generate-traffic.sh
native dashboard shows data (second screenshot)

@zeitlinger Sorry, if the intent is for this container to only work with the sample you provided you can go ahead and close this ticket.  I'm feeding data in from my own application via the OpenTelemetry Java Agent.  I still think it's confusing to have two RED dashboards but maybe that makes sense to OTel experts?

I still think it's confusing to have two RED dashboards

Only one of the RED dashboards can work, depending on how you send the data (controlled by OTEL_EXPORTER_OTLP_METRICS_DEFAULT_HISTOGRAM_AGGREGATION).
I'm happy to improve the docs if you have a suggestion :smile:

@zeitlinger For me none of the three dashboards are working with Java Agent 2.2.0 per notes above.  Not sure what I'm doing wrong.  I'd suggest adding docs for whatever is required for the JVM Dashboard to show information.

@zeitlinger For me none of the three dashboards are working with Java Agent 2.2.0 per notes above.

Are you using the included example app or your own? If the latter, can you point to a repo - or steps how to reproduce?

@zeitlinger My own application.  The application isn't public so can't point you to a repo.  I included the Java Agent config in ticket summary.  Let me know what additional details you'd need.  Like I said, even the JVM dashboard doesn't display anything but when I explore Metrics, Logs and Traces I do see information so I know the agent is properly activated and feeding data over.

@zeitlinger My own application.

Can you try to reproduce the issue with the java app?

Maybe just changing some settings in run.sh - and create a draft PR
If necessary, also copy the relevant parts of your app into the draft PR

closing as stale


[Spike] Analyze performance issues

Description
Time limit: one day.
Spend one day analyzing performance issues, and come up with areas of improvement. Fix the most important one if you have the time.
To Reproduce

Given this demo URL https://elements-demo.stoplight.io/?spec=https://api.apis.guru/v2/specs/stripe.com/2020-08-27/openapi.yaml#/operations/Post3dSecure
See error

Expected behavior
It should either load eventually (slowly but calmly) or error out and say this API document could not be loaded.
Additional context
Screenshot

Environment:

Library version: f9cb301
OS: MacOS
Browser: Firefox 87

Summary
I investigated performance problems while loading Stripe, and other docs.
Identified problem areas
Non-bundled specs
Many specs we handle (even ones on the demo page) are not bundled, meaning that the original specs files with tons of external refs are uploaded. We handle spec-relative and absolute-URL external refs just fine, but this often means needing to download 10s (or in extreme cases approaching 100) separate files from the server. This causes a very significant performance hit, especially on the first load (and on subsequent loads if HTTP caching is not configured).
Non actionable, users can fix it for themselves.
$ref parsing bottleneck
The Stripe spec is bundled, but it contains literally more than 1700 $refs, parsing and resolving this takes time. I identified some hotspots in @stoplight/json-schema-ref-parser which I am about to send a PR for.

Simple fix, will be fixed in the scope of this issue.*

Mosaic bottleneck with a large ToC
The Stripe spec does not use tags, so every endpoint and model is dumped directly onto the main ToC, generating some 800+ entries. As the new ToC is using mosaic's css-abstractions (Box, Flex and friends) heavily, this places a large toll (about an extra 1-2s on my machine) on rendering any page. As in JSV, replacing abstractions with their underlying (e.g. <Box my={3} /> -> <div className="sl-my-3"/>) improves performance heavily.

Simple fix, can be done later if required. *

With these implemented, the overview page now loads fairly rapidly, especially given that it's a 2.8MB spec.
Unknowns
Unfortunately with all the above implemented, the individual operation pages of the Stripe spec are still taking a lot of time to render. This needs further investigation.


Correction for raw affiliation PHIM, IRD, INRAE, CIRAD, Université de Montpellier, Montpellier, France

Correction needed for raw affiliation PHIM, IRD, INRAE, CIRAD, Université de Montpellier, Montpellier, France
raw_affiliation_name: PHIM, IRD, INRAE, CIRAD, Université de Montpellier, Montpellier, France
new_rors: 051escj72;003vg9w96;05q3vnk25;05kpkpg04;05y5s3h28
previous_rors: 051escj72;003vg9w96;05q3vnk25;05kpkpg04
works_examples: W4399442772
contact: f9fcb8d7d80bd2d4bd232315b02789ee:952f61ba3db5084275a6d1540eafbe335a78 @ inrae.fr

This issue was accepted and ingested by the OpenAlex team on 2024-11-18. The new affiliations should be visible within the next 7 days.


ospParticleViewer Question

In regards to the ospParticle viewer. is the Model class creating a model for each atom that is being created or is it just one model that has all the atoms or particles within it? We are trying to see if there is a way to manipulate the radius of particles independently of others that way we have variety with them. Thank you for any assistance.
Victor Reyes
<EMAIL_ADDRESS>

While OSPRay supports an individual radius for each sphere the ospParticleViewer does not use this feature, i.e. its Model class currently only holds one radius for all atoms.
Depending on your use-case you could extend the particle viewer in different ways:

If you just want a few different sizes (e.g. small, medium and large atoms) you can use three models, each having a different radius.
If many atoms have different sizes you can use the offset_radius parameter of the 'spheres' geometry, which specifies the offset (in bytes) of each sphere's 'float radius' value within the data array spheres.

Implemented in latest version of ospray; particle viewer can now specify radius per atom type, and ospray sphere geometry is now supporting this during rendering.


One-click deploy to web visible in new projects (without export setup)

Tested versions
Slightly out of date master (c4279fe3e0b27d0f40857c00eece7324a967285f)
System information
All systems
Issue description
The one click deploy button for web export is always available even when the export is not set up. This is visible even in a new project even though its not functional.

The button should only appear when a web export is set up and set to "runnable"
Steps to reproduce
Create a new project
Minimal reproduction project (MRP)
web-export-bug.zip

Indeed, I was about to report this too.
See #35592 for context of last time we had this behavior and fixed it. I couldn't quickly find which PR fixed it for context, but there should also be one for Android / starting adb that can be used for reference.
Basically if there's no configured preset for the platform, we should return early.

Bisecting points to #91369 as the culprit:


Optimizing Firestore Data Structure to Reduce Read counts

Currently, each member's record is stored in an individual document within the Firestore collection. While this structure allows for easy querying of individual records, it leads to a significant spike in the number of reads. This is especially problematic when performing operations that require fetching data for all members, as it results in a separate read for each document.
The same issue exists for other collections where individual records are stored as separate documents.
Proposed Solution
To optimize Firestore's read costs and improve efficiency, we propose restructuring the data:

Store all member records as an array within a single document.
Apply this restructuring to other collections with similar issues.
Implement pagination and partial document fetching (using Firestore's array-contains or similar features) to prevent fetching unnecessarily large data.

This approach will drastically reduce the number of reads, especially for bulk operations, while maintaining a manageable structure for the data.

can you assign this issue to me

i dont think we need this issue anymore


Infinite scrollback

In https://github.com/sourcelair/xterm.js/issues/518 it was mentioned that a large number should be given. In most APIs, if we want to specify such an infinite number, we would either pass -1 or 0.
xterm causes an error for:

scrollback: -1, produces:  "Invalid array length"
scrollback: 0, produces: "cannot read index 0 of undefined"
scrollback: Number.MAX_SAFE_INTEGER, produces "Invalid array length"

It appears that JS arrays are limited to an unsigned 32 bit value.
A better approach would be to detect scrollback <= 0 || scrollback ><PHONE_NUMBER> and assign it the max upper value of<PHONE_NUMBER>

:+1: PRs welcome


Replace SwitchPreference with CheckBoxPreference to avoid weird toggling behaviour of multiple SwitchPreferences on the same activity (issue #233)

Merging this because this issue seems to affect versions pre-lollipop.


Updated outdated docs about NOx conversions.

Pull request
Please confirm that this pull request has done the following:

[ ] Tests added
[x] Documentation added (where applicable)
[ ] Example added (either to an existing notebook or as a new notebook, where applicable)
[x] Description in CHANGELOG.rst added

NOx is not a simple alias for NO2 any more. Update docs accordingly.
Prompted by https://github.com/pik-primap/primap2/discussions/96

The linting failure is fixed in https://github.com/openscm/openscm-units/pull/33/commits/0903fa52bf2692e3fd713a44fb1c1bbcac87affb . I think including it here as well would cause merge conflicts later on?

Ah, no, sorry, other problem. Apparently, a newer black version. May I interest you in https://pre-commit.ci/ for auto-fixing black commits?

The liniting failure which is now left is actually https://github.com/openscm/openscm-units/commit/0903fa52bf2692e3fd713a44fb1c1bbcac87affb .

May I interest you in https://pre-commit.ci/ for auto-fixing black commits?

Ye sure

I think including it here as well would cause merge conflicts later on?

Ye up to you if you want to just wait for #33 or rebase #33 later


Span overlap ESpan class

Tested this in the REPL:
>>> from replacy import ESpan
>>> from replacy import ReplaceMatcher
>>> from replacy.db import load_json
>>> import spacy
>>> nlp = spacy.load("en_core_web_sm")
>>> match_dict = load_json('./replacy/resources/match_dict.json')
>>> ematcher = ReplaceMatcher(nlp, match_dict=match_dict, SpanClass=ESpan)
>>> s = ematcher("She extracts revenge.")[0]
>>> s
extracts
>>> s.suggestions
['exacts']
>>> s.match_name
'extract-revenge'
>>> doc = nlp("She extracts revenge.")
>>> e = ESpan(doc, 1, 2)
>>> e
extracts
>>> e.suggestions
[]
>>> e.match_name
''
>>> e.comment
''
>>> e.vector
array([ 3.7579389 , 390608 ,  ... , 0.37205344], dtype=float32)
>>> e.kb_id
0
>>> e.vector_norm
25.310467
>>> e._.comment = "yo metaprogramming"
>>> e.comment
'yo metaprogramming'
>>> e == e._
True

I added the following to the match_dict to check for overlap behavior
{
  "make-due": {
    "patterns": [
      {
        "LEMMA": "make",
        "TEMPLATE_ID": 1
      },
      {
        "LOWER": "due"
      }
    ],
    "suggestions": [
      [
        {
          "TEXT": "make",
          "FROM_TEMPLATE_ID": 1
        },
        {
          "TEXT": "do"
        }
      ]
    ]
  },
  "dupe-test": {
    "patterns": [
      {
        "LEMMA": "make",
        "TEMPLATE_ID": 1
      }
    ],
    "suggestions": [
      [
        {
          "TEXT": "build",
          "FROM_TEMPLATE_ID": 1
        }
      ]
    ],
    "comment": "This is a bad match, it is here to demonstrate overlap behavior",
    "test": {
      "positive": ["I will make something"],
      "negative": []
    }
  }

this gives
>>> spans = ematcher("I will make due")
>>> spans
[make, make due]
>>> spans[0].match_name
'dupe-test'
>>> spans[1].match_name
'make-due'
>>> spans[1].suggestions
['make do']
>>> spans[0].suggestions
['build']

Added a factory method so you don't have to import ESpan, not sure which I like more:
from replacy import ReplaceMatcher
from replacy.db import load_json
import spacy
nlp = spacy.load("en_core_web_sm")
match_dict = load_json('./replacy/resources/match_dict.json')
ematcher = ReplaceMatcher.with_espan(nlp, match_dict=match_dict)
s = ematcher("She extracts revenge.")[0]

thoughts?

The match dict in your test doesn't represent the overlap problem we are trying to solve, this one does:
STILL WORKS with this one
{
    "make-1": {
        "patterns": [
            {
                "LEMMA": "make"
            }
        ],
        "suggestions": [
            [
                {
                    "TEXT": "MAKE"
                }
            ]
        ],
        "subcategory": "MAKE_CAPS"
    },
    "make-2": {
        "patterns": [
            {
                "LEMMA": "make"
            }
        ],
        "suggestions": [
            [
                {
                    "TEXT": "MaKe"
                }
            ]
        ],
        "subcategory": "MAKE_STYLE",
        "comment": "This is a bad match, it is here to demonstrate overlap behavior",
    }
}

Tested this in the REPL:
>>> from replacy import ESpan
>>> from replacy import ReplaceMatcher
>>> from replacy.db import load_json
>>> import spacy
>>> nlp = spacy.load("en_core_web_sm")
>>> match_dict = load_json('./replacy/resources/match_dict.json')
>>> ematcher = ReplaceMatcher(nlp, match_dict=match_dict, SpanClass=ESpan)
>>> s = ematcher("She extracts revenge.")[0]
>>> s
extracts
>>> s.suggestions
['exacts']
>>> s.match_name
'extract-revenge'
>>> doc = nlp("She extracts revenge.")
>>> e = ESpan(doc, 1, 2)
>>> e
extracts
>>> e.suggestions
[]
>>> e.match_name
''
>>> e.comment
''
>>> e.vector
array([ 3.7579389 , 390608 ,  ... , 0.37205344], dtype=float32)
>>> e.kb_id
0
>>> e.vector_norm
25.310467
>>> e._.comment = "yo metaprogramming"
>>> e.comment
'yo metaprogramming'
>>> e == e._
True

I added the following to the match_dict to check for overlap behavior
{
  "make-due": {
    "patterns": [
      {
        "LEMMA": "make",
        "TEMPLATE_ID": 1
      },
      {
        "LOWER": "due"
      }
    ],
    "suggestions": [
      [
        {
          "TEXT": "make",
          "FROM_TEMPLATE_ID": 1
        },
        {
          "TEXT": "do"
        }
      ]
    ]
  },
  "dupe-test": {
    "patterns": [
      {
        "LEMMA": "make",
        "TEMPLATE_ID": 1
      }
    ],
    "suggestions": [
      [
        {
          "TEXT": "build",
          "FROM_TEMPLATE_ID": 1
        }
      ]
    ],
    "comment": "This is a bad match, it is here to demonstrate overlap behavior",
    "test": {
      "positive": ["I will make something"],
      "negative": []
    }
  }

this gives
>>> spans = ematcher("I will make due")
>>> spans
[make, make due]
>>> spans[0].match_name
'dupe-test'
>>> spans[1].match_name
'make-due'
>>> spans[1].suggestions
['make do']
>>> spans[0].suggestions
['build']

all good, just one change: added has_extension implementation


Documentation links for messages

I'd like for my team to be able to click on information icon next to each message and open up a page in web browser that gives extensive detailed explanation of the issue (specific linters will have to provide such URLs).
For example, I'm already working on adding documentation URLs for CSSLint and hope to surface them in linter-csslint eventually.
I'll also be interested in adding this kind of documentation URLs to ESLint rules as well, when this is available.
How can we go about making it happen?

That should be placed as an element in the trace message property, and I believe that you can specify the html property of the trace message instead of the text, and get a clickable link.

@Arcanemagus is there a linter that uses html property already that I can look at for reference?

linter-eslint has the capacity to use it for regular messages, see here. Trace messages are essentially the exact same thing as regular messages, but only show in tooltips.

Thank you. I looked at the code, it seems to be straightforward to add links to linters themselves.
Let me try adding links to it to see how it all works with <a> tags and opens the browser. And if all good there, we can close this issue.

This has been implemented in linter-eslint