@collection ideas

This is just a note of some ideas how to add to the existing collection concept. This could be developed further into a roadmap.
This is based on a comment I submitted here: https://github.com/getgrav/grav/commit/077ba28706f38ea00804f4c39644e34e40ff0b71
content:
  items:
    - @page: /fruit
    - @page.descendants: /fruit  # recurse, alternative syntax to recurse flag...
    - @root   # Alternative syntax to using  @page: @root
    - @root.descendants  # Same as above but recurse
    - @self.parent    # Just the parent page
    - @self.siblings   # A collection of all other pages on this level
    - @self.modular
    - @self.children
    - @self.descendants # recurse
    - /fruit/pear     # Add just a single named page to the collection
    - /fruit/apple    # Add just a single named page to the collection

I'll take a look at these in more detail after we get Grav 1.0 final sorted.  Thanks!

Just one point, as the recursive flag is now already in the current branch it will be hard to change later should you opt want to adopt the .descendant variant proposed here instead. So I think its better to make a decision now while you still can change things. Once v1.0 is out and people are using the other syntax  from https://github.com/getgrav/grav/commit/077ba28706f38ea00804f4c39644e34e40ff0b71 you can't change it any more.
You don't have to implement the full sibling set know, just make a decision whether to bring in line the @root/recurse syntax with above proposal or keep it as commited.

I have modified this a little:
    - '@root'                                       # Get the root children
    -<EMAIL_ADDRESS>                            # Get the root children (alternative)
    -<EMAIL_ADDRESS>                             # Get the root and recurse through ALL children

    -<EMAIL_ADDRESS>                              # Get the parent of the current page
    -<EMAIL_ADDRESS>                            # A collection of all other pages on this level
    -<EMAIL_ADDRESS>                             # Get only the modular children
    -<EMAIL_ADDRESS>                            # Get the non-modular children
    -<EMAIL_ADDRESS>                             # Recurse through all the children

    - '@page': '/fruit'                             # Get all the children of page `/fruit'
    -<EMAIL_ADDRESS>'/fruit'                    # Alternative to above
    -<EMAIL_ADDRESS>'/fruit'                        # Get a collecton with only the page `/fruit'
    -<EMAIL_ADDRESS>'/fruit'                     # Get and recurse through all the children of page '/fruit'

    -<EMAIL_ADDRESS>photography                  # taxonomy with tag='photography'
    - '@taxonomy': {tag: birds, category: blog}     # taxonomy with tag='photography' && category='blog'

Please test when you get a chance!  Cheers.

Ah, nice.
.recurse is shorter to type than .descendants. But with .recurse its not clear if it will include the page itself or not. Given that recurse scenarios are used not that often I wouldn't be too concerned about the length of the keyword.
If recurse however does include the top page itself, then there should be an option to get just the children, grandchildren, grandgrandchidren and so forth without the page itself.
From the example above it appears that @self.recurse behaves different in that respect than @page.recurse.
The @ as I understand indicates a command which transforms a following parameter into a list of pages. As such specifying a page directly would not necessarily require a command as no transformation is performed, its just an item added directly to the list. So maybe the @page.self command would not really be necessary if pages can be added straight. Or maybe allow both syntaxes.
With all these additions the collections feature becomes even more powerful and this is a unique feature of Grav where other CMS require database queries to retrieve collections (sql, active records et al), your collection concept make this obsolete and easy to understand and use.

I thought that recurse was clearer than descendants, but the more I think of it maybe its better to stick with the family metaphor (children/parents/siblings/decendents/etc).. I'll make the change.
@page.self is probably not necessary, but I thought for consistency it was nice, and there maybe a need to get a single page from a collection, so better to have it than to not.

Yes, @page.self complements nicely the list and make it look orthogonal.
And I could use the feature of adding single pages into a collection. So either by just @page.self or just adding the page path without command or both syntaxes.

I think we are good the way things are.  It feels more consistent now. If you find any issues with any of them, please let me know.


[idea] have a new branch for the removed v1 filters

what do you think of making a new branch and add back the filters from vue 1 + the current ?

so for the v1 users they can only get the extended new ones master branch,
and for the v2 they get a drop-in replacement for the removed one + the extended v2 branch with dependency of the master to avoid replication

@ctf0 It's a good idea. When I am free I will do this, maybe in this weekend. 😬

This project(vue2-filters) do the job, it has all the vue@1 filters.


New version: FreeDV.FreeDV version <IP_ADDRESS>

Pull request has been created with komac v2.0.2 :rocket:
Microsoft Reviewers: Open in CodeFlow

Hi @fancybody,

This PR's version number <IP_ADDRESS> has 4 parameters (sets of numbers between dots - major, minor, etc), which is greater than the current manifest's version 1.9.7, which has 3 parameters.

Is this intentional?
(Automated response - build 674)

Its a bugfix. (https://github.com/drowe67/freedv-gui/releases/tag/v<IP_ADDRESS>)


Move diagrams out of top-level docs/ directory and merge

docs/devel/developer-guide.md into docs/devel/README.md
@bgrant0607

LGTM.
Could add a TOC to the developer README, but fine to merge as is.

all green

cc @erictune to merge


Mental Health Notebook Port

depends on #366

Port the mental health notebook to the opendp library:
https://github.com/opendp/smartnoise-samples/blob/master/analysis/tutorial_mental_health_in_tech_survey.ipynb
(Note: this notebook was originally created by @MayanaPereira)

Now that we have filtering (the lib calls it subsetting), this notebook should now be ready to port.

Closing. The tutorials are being built around a different data set.


Improve Softplus kernel accuracy

Ticket
https://github.com/tenstorrent/tt-metal/issues/9910
Problem description
Softplus kernel is inaccurate when the input distribution is centered around small values of X. See #9910 for more details.
What's changed

The softplus kernel has been reimplemented using a Remez approximation instead of using the existing log and exp functions. The max error is 0.0006.
This has improved the overall accuracy without a meaningful drop in device time.

Checklist

[x] Post commit CI passes
[x] Model regression CI testing passes (if applicable)
[x] New/Existing tests provide coverage for changes

For future reference, here is how I generated the coefficients:
import numpy as np
from scipy import optimize
import matplotlib.pyplot as plt

# Softplus function definition
def softplus(x):
    return np.log1p(np.exp(x))

# Remez algorithm to generate polynomial coefficients
def remez_approximation(func, degree, interval):
    def error(coeffs, x):
        return np.polyval(coeffs, x) - func(x)

    x = np.linspace(interval[0], interval[1], degree + 2)
    y = func(x)
    initial_guess = np.polyfit(x, y, degree)
    result = optimize.least_squares(error, initial_guess, args=(x,))
    return result.x

# Define intervals and degrees for piecewise approximation
intervals = [(-20, -5), (-5, 0), (0, 5), (5, 20)]
degrees = [5, 6, 6, 5]

# Generate coefficients using Remez algorithm for each interval
piecewise_coeffs = [
    remez_approximation(softplus, degree, interval)
    for degree, interval in zip(degrees, intervals)
]
print("Coefficients", piecewise_coeffs)

def softplus_approx(x):
    if x < -20:
        return 0.0
    elif x < -5:
        return np.polyval(piecewise_coeffs[0], x)
    elif x < 0:
        return np.polyval(piecewise_coeffs[1], x)
    elif x < 5:
        return np.polyval(piecewise_coeffs[2], x)
    elif x <= 20:
        return np.polyval(piecewise_coeffs[3], x)
    else:
        return x  # Handle cases where x > 20 (not defined in softplus, but for completeness)

# Generate values for plotting
x_values = np.linspace(-30, 30, 1000)
actual_values = softplus(x_values)
approx_values = np.array([softplus_approx(x) for x in x_values])
error_values = np.abs(actual_values - approx_values)

print("Max error", np.max(error_values))

plt.figure(figsize=(14, 7))

plt.subplot(2, 1, 1)
plt.plot(x_values, actual_values, label="Actual softplus(x)", color="blue")
plt.plot(
    x_values,
    approx_values,
    label="Piecewise Approximation",
    color="red",
    linestyle="dashed",
)
plt.xlabel("x")
plt.ylabel("softplus(x)")
plt.title("Piecewise Approximation of softplus(x)")
plt.legend()
plt.grid(True)

# Plot the error between the actual function and the approximation
plt.subplot(2, 1, 2)
plt.plot(x_values, error_values, label="Error", color="purple")
plt.xlabel("x")
plt.ylabel("Error")
plt.title("Error between Actual and Approximated softplus(x)")
plt.legend()
plt.grid(True)

plt.tight_layout()
plt.show()

How does the new approximation compare for different distributions of input? Is it always better than the old log approach?

Yes, it should be more accurate across the entire domain.

Is this method higher or lower perf? Should we keep the old implementation and put it in the if constexpr (APPROXIMATION_MODE)?

Is this method higher or lower perf? Should we keep the old implementation and put it in the if constexpr (APPROXIMATION_MODE)?

The perf is the same, both implementations are ~0.015 ms on device.
We can leave the old one, although the non-approx mode is more inaccurate which could be confusing. Let me know what you prefer.

Code looks good to me, but I would wait for @rtawfik01 input before merging.

Since the old method is less accurate, and with @esmalTT 's updates, also slightly less performant, then yeah we don't need to keep the old implementation under approximate mode.

Approximate mode could be the next implementation with a look-up table approximation of the softplus function


fix: external group memberships should have correct origin

External group memberships determined from processing an OIDC or SAML login should be stored with the origin of the identity provider and not the default uaa origin.

please check if my rebase is Ok for you.
Sonar is green: https://sonarcloud.io/summary/new_code?id=cloudfoundry-identity-parent&pullRequest=3033
The issue is known but I was not sure in the past, wheather this is a bug or feature , so from our side (SAP) we can agree to this change but from @hsinn0  @peterhaochen47 broadcom side you should check as well

Yes the rebase looks fine to me

The issue is known but I was not sure in the past, wheather this is a bug or feature , so from our side (SAP) we can agree to this change but from @hsinn0 @peterhaochen47 broadcom side you should check as well

Thanks, we will take a look at this.

We will try to find out whether the existing implementation was intentional or an oversight, and also if there is anything out there that depends on the current behavior.
Meanwhile, a question to @mikeroda. Are you trying to resolve an actual field issue with this change, or did you just find the problem by examining the code?

@hsinn0, It is causing an actual issue for me.

Here is my understanding reading the existing code:
ScimUserBootstrap is for processing any users CRUD as defined in server config (uaa.yml), which I think only defines UAA internal users, whose origin can only be uaa.
The external IDP users (origin != uaa) are not defined in uaa.yml. They are created by a external IDP login, and their group membership are defined by various relevant settings (e.g. external group mapping), rather than the scim users section of uaa.yml. At least I think that's the intention, and the reason why when ScimUserBootstrap is processing users, it's always assuming UAA internal users.

In addition to processing users in the server config, it also receives events like ExternalGroupAuthorizationEvent, used to process external groups during external logins. Anyway, my commit still works for users processed from the server config.
To answer your question, I have some custom code that does additional processing for external group memberships and I rely on the origin being set correctly.

In addition to processing users in the server config, it also receives events like ExternalGroupAuthorizationEvent, used to process external groups during external logins. Anyway, my commit still works for users processed from the server config. To answer your question, I have some custom code that does additional processing for external group memberships and I rely on the origin being set correctly.

I see. Yeah I don't see any issues with this PR.


Add AWS profile option to profiles.yml

Describe the feature
New option to be allowed on Redshift targets in profiles.yml, specifying the AWS profile to use when getting credentials via IAM.
Describe alternatives you've considered
Allow specification of full awscli command used to fetch credentials? Not sure
Additional context
Maybe relevant only for Redshift, but I think other cloud providers would have similar features.
Who will this benefit?
Increasing security regarding credentials when using DBT.

To allow the complete flexibility for IAM auth it may also be worth also adding the equivalent of:

AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN (only valid if the two prior variables are specified)
AWS_DEFAULT_REGION

EC2/ECS credentials will automatically be picked up by the provider chain so don't need any extra setup.
The alternative is to ignore this entirely and point to the boto3 documentation, as all of these can be used by setting the above environment variables before running DBT.
Reference https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html

The alternative is to ignore this entirely and point to the boto3 documentation, as all of these can be used by setting the above environment variables before running DBT.

I think this is how we've gone about this in the past, when it's been necessary.

Could you say a bit more about which specific values you'd want to add as options for method: iam in the Redshift profile?
How are you deploying dbt?

We have several AWS accounts, however the access key/credentials at the user level are only defined in one account, whereas redshift sits in a different account. Thus I always need to use credentials from account X to access account Y. The way I do that in the awscli is just specifying a profile with --profile.
We deploy DBT as an ECS task that runs on a schedule, and that ECS task is invoked using an exclusive IAM role that exists on the same environment as Redshift, and I haven't tried, but I think DBT would work fine with IAM validation when deploying since the credentials and redshift are on the same account.

I want to give it a shot at implementing this!
My idea is to add a new config option 'aws_profile' to profiles.yml, when the method is IAM, and pass that config to the boto3 call that gets the authentication.
Does that sound reasonable?

To be clear, your proposal is that we shouldn't add additional parameters for all of:

AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN
AWS_DEFAULT_REGION

Instead, we should expect users to configure those via boto3, and to identify a set of credentials by its profile name. Does that sound right?
If so, that sounds like a quick addition to me. It's all yours @landbay-brunomurino. Let me know if you want help getting started.
You should also look into adding to/updating the Redshift unit test test_iam_conn_optionals.

Think so, yeah. I think (and correct me if I'm wrong) most users of AWS would have the .aws folder with their credentials and profiles, so simply pointing to the correct profile would enable all sorts of connections.
Thanks! Actually I'm struggling with something @jtcohen6  I've set up the environment but am struggling to run the unit tests specific to redshift, it doesn't connect successfully and I'm not sure I should play too much with how things run.

@landbay-brunomurino You shouldn't need any database connection to run unit tests. Are you able to run make test-unit?
If you're trying to run integration tests, you will need to define Redshift credentials as environment variables in a file called test.env, as in test.env.sample.

Yea, sorry, I didn't mean unit tests, I meant the integration tests. I was able to run make test-unit successfully.
I did define the credentials in the test.env but that's not working.
May not be relevant, but I connect to redshift via SSH tunnel, and when running DBT via docker I need to specify an internal docker host ip output of dig +short host.docker.internal, instead of localhost when not using docker. Since the tests run via docker, I tried putting that IP in the test.env file and now I'm getting a different error (I think the connection worked?):
No module named 'dbt.deps.local'

Got it, that is tricky. I haven't ever tried connecting to Redshift via Docker + SSH; I agree your error message is promising as far as the connection, but unexpected otherwise.
For what it's worth, when you open a PR, CI tests against a sandboxed Redshift cluster will run automatically. As long as you can do some end-to-end testing of your changes locally, I think it's fine to open a fork PR and see.

@jtcohen6 I got it working locally now, but not sure about the test you mentioned before. If the sandboxed redshift/aws is configured with the default profile, then the current test should pass fine as the new option (profile) is optional.
I created the PR for this , but the first of the CI tests failed with
ERROR:   flake8: commands failed

I'm not sure what's the issue


[Regression] Input dragDistanceThreshold no longer works in 3.18.0 and 3.18.1

Tested it on https://phaser.io/examples/v3/view/input/dragging/drag-distance-threshold
Observe on version 3.18.0 and 3.18.1 the eyes sprite will turned tinted (red) as soon as the mouse button is pressed but not moved.
Compare with version 3.17.0, the eyes sprite will only turned red after the mouse is pressed and moved beyond the threshold as expected.

dragTimeThreshold also no longer works.
(https://phaser.io/examples/v3/view/input/dragging/drag-time-threshold#)

I think I've found the source (or rather sources) for this:
Unless BOTH dragDistanceThreshold and dragTimeThreshold were set it was jumping right to drag state 3 and never waiting for the threshold to be reached.  This was caused by line 1193 in inputPlugin.js using || instead of && (so if either one of the two was not set, it would skip threshold checking completely).
In addition, in the move to the new input system in 3.18, the massive processDragEvents() function got split up into many functions and the thresholds are getting checked in processDragThresholdEvent().  From what I can tell, this function is not being called everywhere it is needed.
dragDistanceThreshold
For every drag move event, if we are in drag state 2 we should be checking if the distance threshold has been passed.  However, processDragMoveEvent() ignores all drag states other than 4.  I added the following at the top to try and alleviate this:
//  2 = Pointer being checked if meets drag criteria
if (this.getDragState(pointer) === 2)
{
    this.processDragThresholdEvent(pointer, this.manager.game.loop.now);
}

Since time was not available as a parameter, I looked back at where it can originate form in the old 3.17 and saw that it was coming from the game.loop.now variable so I found a way to access that in the input plugin.  Leaving time undefined is okay for a distance threshold but NOT for a time threshold and was causing some weird behavior when a time threshold was set.
dragTimeThreshold
There is no direct drag event that would signal a timeout being over which is what we need for the time threshold to work perfect.  Ultimately, if you move the mouse and try to drag it you are creating move events and the change above for the distance threshold will work but it will only trigger once you move the mouse, not exactly when the time threshold is reached.
This doesn't quite match the way 3.17 worked.  It would detect the timeout and the draggable image would be tinted red at the exact right moment.  You can get this behavior in 3.18+ by simply telling the draggable object to do polling.  Just call setPollAlways() (or setPollRate() with some reasonable rate) on the object and then, inside the updatePoll() function, the threshold will get checked on each timeout of the poll and it will trigger without moving the mouse.  I updated the documentation for the dragTimeThreshold variable to explain this.
I did also find a bug in how processDragThresholdEvent() was being called inside updatePoll().  The time parameter was not being passed.  I fixed this and also guarded against calling it unless the drag state is 2.  Here time is a parameter to updatePoll() so I just use that:
if (this.getDragState(pointer) === 2)
{
    this.processDragThresholdEvent(pointer, time);
}

I'm going to package this up in a pull request shortly!

Thank you for submitting this issue. We have fixed this and the fix has been pushed to the master branch. It will be part of the next release. If you get time to build and test it for yourself we would appreciate that.


Drop detection - onMouseEnter and onMouseLeave not firing during drag

Thank you for adding drop-detection to the examples.  When I tried to replicate the same logic in my code by adding onMouseEnter and onMouseLeave to the div wrapped inside DraggableCore, it appears that those events have been suppressed during drag and are not firing when I try to drag over other DraggableCore components over it.  When there is no drag event, both events fire correctly.  Are there additional properties I need to add to the DraggableCore to enable those listeners?
Also the demo does not seem to reflect these additions, could it be that the site is outdated?

Sharing my findings in case if anyone encountered similar problems.  It appears that the reason onMouseEnter and onMouseLeave appear to be suppressed during drag is because of the higher z-index value of the Draggable than the "Dropzone".  The z-index value of the item being dragged is increased in onDragStartStart in order to ensure Draggable item is always visible, as such, the "Dropzone" z-index is less than the Draggable z-index thus the onMouseEnter and onMouseLeave of the "Dropzone" is not getting called.

@datoslabs, were you ever able to overcome this problem?
I'm facing a similar issue with the . I want to detect the "dropzone" div id that would be under the dragged element but I can't find a way to do that. I've tried calling an onDrag function but the event parameter never gets the correct target dropzone. It starts with the initial zone's id but fails to change if dropped over a different div dropzone.

Are you trying to find the "dropzone's" id after the drop is complete?

Are you trying to find the "dropzone's" id after the drop is complete?

I have multiple dropzones all having unique ids. I'm trying to determine the dropzone's id that the dragged element is over and just prior to it being dropped. I suppose it doesn't matter if I get the dropzone's id after the drop is done just so long as I can get it.

It's been awhile so I don't recall how I resolved this; however, looking at the example in this repo, it appears the latest version of the library addressed the issue I reported.  Look for onDropAreaMouseEnter and onDropAreaMouseLeave methods, you should be able to get the id from the event object if you need to get it before the drop and reset after it leaves without dropping.  Alternatively, you could use onDrop and get the child div from e.target or if you want to avoid traversing Dom, you can pass it in like (e)=>this.onDrop(e, some_id).

Thanks for those suggestions. I'll take a look at each of them.
Is it me or do those methods not exist in the latest version (4.4.5). I searched Draggable.js and DraggableCore.js and I do not see any reference to them. Furthermore, I'd read in another post (https://github.com/react-grid-layout/react-draggable/pull/541) that the examples were updated to show drop-detection. I don't see that either.

Check in master branch example.js.

Check in master branch example.js.

You are correct. The example.js has that "onDropAreaMouse..." code. I was under the impression that when you said "...the latest version of the library addressed the issue...", that the core js code was changed (not just the example, which btw, is not what the demo site is running).


scale error,

scale error, for example
var r = 156.10.toBigDecimal().toStringExpanded()
assertEquals("156.10", r)
the result:
expected:<156.1[0]> but was:<156.1[]>
Expected :156.10
Actual :156.1
I expected keep two decimals，but “toStringExpanded “ will remove "0",then result will be error. please help me,thank you

Hi @treeseedm, you are making an incorrect presumption that 156.10 when converted to BigDecimal, will have a scale 2, or decimal precision of 5, it will actually have scale 1 and decimal precision of 4. Here is the relevant code when parsing floating point strings (or doubles/floats they all get converted to strings anyways)
...
                            var rightLastNonZero = right.indexOfLast { it != '0' }

                            if (rightLastNonZero == -1) {
                                rightLastNonZero = right.length - 1
                            }
                            val leftTruncated = left.substring(leftFirstNonZero, left.length)
                            val rightTruncated = right.substring(0, rightLastNonZero + 1)
...

But even if you had a number with proper scale I don't want to add formmating support to the library at this moment, as I don't have time nor need for it. Contributions are always welcome, unfortunately your pull request did not fix this issue and would introduce additional issues, so I can't accept it.
Cheers!


error installing on concrete<IP_ADDRESS>, php 5.6

I've followed the instructions, and used composer to install.  I got the following feedback:
[ps382647]$ php composer.phar install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Package operations: 1 install, 0 updates, 0 removals

Installing stripe/stripe-php (v4.3.0): Downloading (100%)
Generating autoload files

Then I attempted to activate/install the community_store_stripe package in the Dashboard/Extend concrete5 area, but I got the following error:
"Call to a member function getPackageHandle() on null"
This error doesn't lock me out of using the site, but I do get this message every time I go to the Dashboard/Store/Settings area.
Any and all help is greatly appreciated.
Thanks,
~ Jalen.
See below for my environment settings..
concrete5 Version
Core Version - <IP_ADDRESS>
Version Installed - <IP_ADDRESS>
Database Version -<PHONE_NUMBER>0000
concrete5 Packages
Community Store (1.1.3), Stripe Payment Method (1.0.3).
concrete5 Overrides
languages/cs_CZ/LC_MESSAGES/messages.mo, languages/cs_CZ/LC_MESSAGES, languages/cs_CZ, languages/da_DK/LC_MESSAGES/messages.mo, languages/da_DK/LC_MESSAGES, languages/da_DK, languages/de_DE/LC_MESSAGES/messages.mo, languages/de_DE/LC_MESSAGES, languages/de_DE, languages/el_GR/LC_MESSAGES/messages.mo, languages/el_GR/LC_MESSAGES, languages/el_GR, languages/es_PY/LC_MESSAGES/messages.mo, languages/es_PY/LC_MESSAGES, languages/es_PY, languages/fi_FI/LC_MESSAGES/messages.mo, languages/fi_FI/LC_MESSAGES, languages/fi_FI, languages/fr_FR/LC_MESSAGES/messages.mo, languages/fr_FR/LC_MESSAGES, languages/fr_FR, languages/it_IT/LC_MESSAGES/messages.mo, languages/it_IT/LC_MESSAGES, languages/it_IT, languages/ja_JP/LC_MESSAGES/messages.mo, languages/ja_JP/LC_MESSAGES, languages/ja_JP, languages/pt_BR/LC_MESSAGES/messages.mo, languages/pt_BR/LC_MESSAGES, languages/pt_BR, languages/ru_RU/LC_MESSAGES/messages.mo, languages/ru_RU/LC_MESSAGES, languages/ru_RU, languages/sv_SE/LC_MESSAGES/messages.mo, languages/sv_SE/LC_MESSAGES, languages/sv_SE, languages/tr_TR/LC_MESSAGES/messages.mo, languages/tr_TR/LC_MESSAGES, languages/tr_TR, languages/cs_CZ/LC_MESSAGES/messages.mo, languages/cs_CZ/LC_MESSAGES, languages/cs_CZ, languages/da_DK/LC_MESSAGES/messages.mo, languages/da_DK/LC_MESSAGES, languages/da_DK, languages/de_DE/LC_MESSAGES/messages.mo, languages/de_DE/LC_MESSAGES, languages/de_DE, languages/el_GR/LC_MESSAGES/messages.mo, languages/el_GR/LC_MESSAGES, languages/el_GR, languages/es_PY/LC_MESSAGES/messages.mo, languages/es_PY/LC_MESSAGES, languages/es_PY, languages/fi_FI/LC_MESSAGES/messages.mo, languages/fi_FI/LC_MESSAGES, languages/fi_FI, languages/fr_FR/LC_MESSAGES/messages.mo, languages/fr_FR/LC_MESSAGES, languages/fr_FR, languages/it_IT/LC_MESSAGES/messages.mo, languages/it_IT/LC_MESSAGES, languages/it_IT, languages/ja_JP/LC_MESSAGES/messages.mo, languages/ja_JP/LC_MESSAGES, languages/ja_JP, languages/pt_BR/LC_MESSAGES/messages.mo, languages/pt_BR/LC_MESSAGES, languages/pt_BR, languages/ru_RU/LC_MESSAGES/messages.mo, languages/ru_RU/LC_MESSAGES, languages/ru_RU, languages/sv_SE/LC_MESSAGES/messages.mo, languages/sv_SE/LC_MESSAGES, languages/sv_SE, languages/tr_TR/LC_MESSAGES/messages.mo, languages/tr_TR/LC_MESSAGES, languages/tr_TR
concrete5 Cache Settings
Block Cache - On
Overrides Cache - On
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).
Server Software
Apache
Server API
cgi-fcgi
PHP Version
5.6.29
PHP Extensions
bcmath, bz2, calendar, cgi-fcgi, Core, ctype, curl, date, dom, ereg, exif, filter, ftp, gd, gettext, hash, iconv, imagick, imap, json, libxml, mbstring, mcrypt, mhash, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, posix, pspell, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlrpc, xmlwriter, xsl, zip, zlib.
PHP Settings
max_execution_time - 30
log_errors_max_len - 1024
max_file_uploads - 20
max_input_nesting_level - 64
max_input_time - -1
max_input_vars - 1000
memory_limit - 90M
post_max_size - 65M
sql.safe_mode - Off
upload_max_filesize - 64M
mysql.max_links - Unlimited
mysql.max_persistent - Unlimited
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
session.cache_limiter - no value
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5

Have you tried using a release instead of manually firing off composer?
https://github.com/concrete5-community-store/community_store_stripe/releases/tag/v1.0.2

I'm not clear on how to proceed. I've already installed the community_store_stripe_master and run composer prior to telling c5 to install.  Do I need to undo the composer installation and the c5 installation and start fresh?

The folder name of the package should just be community_store_stripe.
Perhaps that's all that is going wrong here?
You don't need to do anything to undo composer, all that does is fetch a bunch of code and drop it into the package folder. So you can simply replace that folder with the release one.

Thanks for your help, however I already sorted out that issue and changed the name of the package to community_store_stripe.
I (manually) uninstalled the package (removing a record from the Packages table).  I renamed the original community_store_stripe folder, and uploaded the release version instead.  Then I tried installing that package through c5.  This resulted in the following error message:
"Call to a member function getPackageHandle() on null"
This was the error message that I received when I first tried installing (before doing all sorts of research etc.)

When I try to view the package by going to Dashboard/Extend c5, I get the following error:
"Cannot redeclare class Concrete\Package\CommunityStoreStripe\Controller"

That sounds like you've got two copies of the package sitting in the packages folder.

I've got community_store and community_store_stripe.  Do I not need to install both?

Well you need to install community_store first, so yes, you need both.
But the error message about redeclaring the class suggests you've got two copies of the stripe package sitting in your packages folder.

I did have two stripe packages, named differently (community_store_stripe, community_store_stripe_old), but only had one installed.  I've since removed the "_old" version, and still the same problems occur.  I received this error on installation of community_store_stripe:
"Call to a member function getPackageHandle() on null'
c5 is still functional, but I get the above error every time I go to Dashboard/Store/Settings

I'd suggest turning on full debugging via /index.php/dashboard/system/environment/debug
It might help to see more clearly where this error is being thrown
I'm not having any trouble uninstalling and installing this particular add-on on my 5.7 install myself, so I can't really debug anything. I know others have used this version.

I uninstalled community_store_stripe.  Here's what showed up when I tried reinstalling it:
(error in line 164)
/home/jvk_admin/soulsexy.life/packages/community_store/src/CommunityStore/Payment/Method.php
    return $dir;
}

protected function setMethodController()
{
    $th = Core::make("helper/text");
    $namespace = "Concrete\\Package\\" . $th->camelcase(Package::getByID($this->pkgID)->getPackageHandle()) . "\\Src\\CommunityStore\\Payment\\Methods\\" . $th->camelcase($this->pmHandle);

    $className = $th->camelcase($this->pmHandle) . "PaymentMethod";

(the last line is 164)

I think somewhere along the line where you had errors the record in CommunityStorePaymentMethods has been created wrong.
I'd suggest you remove community_store_stripe, then check the CommunityStorePaymentMethods table. If that has a record in that that references Stripe still, you'll need to delete that before trying to reinstall.

Removing that record did the trick.  Thanks!

Nice one!


Simplify Adding Content

Rather than having people create yaml files, it would be nice to have a tool which takes a URL as input, and writes a yaml file in the expected format. The author has probably be done manually, but there could be something similar to create an author from a Twitter or Github profile.
Something like this:
cdk-dev user https://twitter.com/ryands1701
cdk-dev post --author ryands1701 https://dev.to/ryands17/generating-thumbnails-via-s3-events-using-aws-cdk-typescript-l1i

The contained logic, could likely be used as a basis for an actual dynamic solution later on as well. Therefore, it would be good to keep that in Typescript as well.
I could really use something like this, to migrate existing content over from cdkweekly.com and I think it would be generally way easier for other people to contribute content.

This could use playwright. to extract the necessary content, fetch open graph metadata and take a screenshot if no preview image is presented by the website. Same goes for the user data extraction.

Hm, now that I'm thinking about this, this could be a Github action, which does this based on an issue and creates a PR automatically.
An issue could look like this:
post: https://dev.to/ryands17/generating-thumbnails-via-s3-events-using-aws-cdk-typescript-l1i
author: https://twitter.com/ryands1701

and the Github action creates the PR automatically. That'd be a way better experience, I think.

Ah, categories should be added manually as well:
post: https://dev.to/ryands17/generating-thumbnails-via-s3-events-using-aws-cdk-typescript-l1i
author: https://twitter.com/ryands1701
categories: foo, bar, baz

After talking with @EdwinRad, we've decided to implement this in AppSync and Lambda via the AWS CDK. And we'll do it mostly live :) https://livejam.io/cdk-dev/building-cdk-dev


Hint. Feature for FMX

For FMX, it is necessary not to create a window and embed it in a form, but to receive frame data from the library and then draw it somewhere else.

Thank you for your suggestion, technically you are right, the main problems are as follows.

I'm not very familiar with FMX compared to VCL, and I'm not very happy with FMX.

The simplest way to interface to MPV is mpv_set_property("wid"), wid is actually a window handle, of course there might be other ways to do this but I haven't looked too closely.

TMPVPlayerControl actually duplicates the logic of TMediaPlayerControl, an internal player component, with a slightly different implementation. I don't think it's a big deal to do this.

Of course, it would be easier (but not run faster I guess) to do what you said, but I personally don't have that much free time or ability to look into it. :)


Login not Working

Hello, I got a Problem with logging in into the example bots. This is what I get after inserting the SteamGuard Code:
connected
encrypt request
handshake complete
logon fail: 65, sessionID: 20601331
events.js:72
throw er; // Unhandled 'error' event
^
Error: Logon fail: 65
at SteamClient.handlers.(anonymous function) (/home/pi/TradeBot/node_modules/steam/lib/handlers/user.js:178:11)
at SteamClient._netMsgReceived (/home/pi/TradeBot/node_modules/steam/lib/steam_client.js:102:26)
at SteamClient.handlers.(anonymous function) (/home/pi/TradeBot/node_modules/steam/lib/steam_client.js:188:10)
at SteamClient._netMsgReceived (/home/pi/TradeBot/node_modules/steam/lib/steam_client.js:102:26)
at Connection.emit (events.js:95:17)
at Connection.readPacket (/home/pi/TradeBot/node_modules/steam/lib/connection.js:50:8)
at Connection.emit (events.js:92:17)
at emitReadable (_stream_readable.js:427:10)
at emitReadable (_stream_readable.js:423:5)
at readableAddChunk (_stream_readable.js:166:9)
How can this be fixed?

Not related to node-steam-tradeoffers.

When I usw the Steam-Node Example, It is able to connect. Only the Steam-Tradeoffers doesn't works to login. Before this, it Bad a Problem with the sentryfile, it said something with "fs" is not defined.

Thank you for reminding about fs, this is now fixed in https://github.com/Alex7Kom/node-steam-tradeoffers/commit/bec517d07d131d46713e15e908bd219b990f4da7. I suspect this was the issue since sentry file wasn't written and auth code expired in the end.

Thank you. It works now.

@spyfly How did you fix this problem? Please help.

Error 65 is invalid auth code.

I'm not sure I'm doing it well. I try to login via node, waiting for auth code, adding authcode to file and run it again.  What am I doing wrong?

Also, how to generate ssfn file?

You get the ssfn from your Steam Folder.
patrys666<EMAIL_ADDRESS>schrieb am Fr., 31. Juli 2015 18:44:

Also, how to generate ssfn file?
—
Reply to this email directly or view it on GitHub
https://github.com/Alex7Kom/node-steam-tradeoffers/issues/65#issuecomment-126748880
.


Feat/AC-to-DC-Calculator

Fixes Issue🛠
Closes #1957
Description👨💻
This issue involves adding an "AC to DC Converter Calculator," which calculates the DC voltage equivalent from an AC voltage input. The formula for conversion typically uses:
V_DC = V_AC_rms * sqrt(2)
Where:

V_AC_rms is the root mean square (RMS) voltage of the AC signal.
V_DC is the resultant DC voltage.

The calculator will allow users to input the RMS value of the AC voltage, and it will compute the DC equivalent based on the formula.
Type of Change📄

[ ] Bug fix (non-breaking change which fixes a bug)
[x] New feature (non-breaking change which adds functionality)
[ ] Style (non-breaking change which improves website style or formatting)
[ ] Documentation (non-breaking change which updates or adds documentation)
[ ] Responsiveness (non-breaking change which improves UI/UX on different screen sizes)

Checklist✅

[x] I am an Open Source contributor
[x] I have performed a self-review of my code
[x] My code follows the style guidelines of this project
[x] I have commented on my code, particularly in hard-to-understand areas

Screenshots/GIF📷

@Rakesh9100
I apologize for creating a PR without being assigned. I was focused on meeting the KWoC deadline and missed the step. It won’t happen again


Push Notifications Tracker

Features

[x] Notification gRPC service between client and Proxy.
[x] Notifier gRPC service between Proxy and server.
[x] Eviction policy for Notifier holding references to dead connections.
[ ] Restrict subscriptions only to chain owners.
[x] Implement client for linera-service/client.

Testing

[x] End-to-end tests (client subscription, server notifier). This requires the client being implemented.
[ ] Exclusive subscription test (clients can only subscribe to chains that they own)
[x] Correctness of eviction policy for notifier.

Benchmarking

[ ] End-to-End load test to uncover potential performance bottlenecks.

Closing for now as the rest of the subtasks may not happen


this.setState() in React w/ array of objects

my question is that I already know how to change the state of a simple variable using this.setState(). But Tanay what about changing the state of an array of objects. How is this done? I googled for solutions, all I got was this piece of example code:
this.setState(prevState => ({
    categories: prevState.categories.map(item =>
        item.title === title
            ? {
                ...item,
                quantity: item.quantity + 1
             }
             : item
}));

But I didn't understand this at all can you please explain this in one of the videos or live sessions

Do you still need the answer for this?

@tanaypratap Yes I would like to have the answer for this


Need more explanation on domain for userfile.yml

Hello guys,
What exactly is the domain that written in the example of your user file?
Is it the hostname that the user is signing on, or is it the domain of the user's email return back from oAuth?
Beside is there any way to validate user's email domain? something like validate the company.info part of<EMAIL_ADDRESS>Thank you

The google oauth provider fills the JWT object with some data, which is returned by the /people/me endpoint. If you match against the domain in the userfile, it is matched against this fields.
See also:
https://github.com/tarent/loginsrv/blob/e482109fc416fb8678befb27336ab5d08ff10252/oauth2/google.go#L74
loginsrv does not do any validations. But e.g. if you use the caddy-JWT plugin, you can validate the claims of the token with the allow domain company.info.
The userfile is meant for more complex scenarios. e.g. to add a special role attribute to all users from a specific domin.


Bug in carbondump.sh in open JDK 8

Description:

In JDK 8 permstat property is not available any more.
'jmap -permstat $PID > $MEMORY_DUMP_DIR/java_permgen_statistics.txt` in carbondump.sh
Suggested Labels:
Apim
Affected Product Version:
2.1.0
Steps to reproduce:
When getting carbon dump in open JDK 8 version this issue is reproduced

Removed in latest version


React DatePicker display's blank Page

Hi,
I have created date picker using react-datepicker. When I click on calendar it is showing a blank page. I tried date picker using react-date-picker, material-ui also. It shows the same result.

Hi, did you fix this?

Same issue

I have this issue too, nothing is showing in the calendar.

Same issue still, DatePicker refreshed a blank page after clicking it. Any resolution?

I think this is caused by Dark Mode on iOS 13+
Am using Expo CLI so i change "userInterfaceStyle": "dark" inside  app.json file.
Doing this changed my DateTimePicker to dark allowing me to see the Date.
if set to light you will have to disable Dark mode on iOS 13+
This has been my temp fix


Adopt not discriminated Cadl-Ranch spec

Fixes https://github.com/microsoft/typespec/issues/4004
Also fixes an issue in the ordering of constructor parameters to order starting with the base model properties.

API change check
API changes are not detected in this pull request.


[release-0.58]Fix evmcs hyperv vendor bug

What this PR does / why we need it:
This is a manual backport PR for https://github.com/kubevirt/kubevirt/pull/8840
the cherry-pick conflict was redundant import in hyperv_test.go
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/lgtm


[framework] Fix 0x2::coin::join_vec

The length of the vector is getting smaller, but i is getting bigger.
This will cause an EINDEX_OUT_OF_BOUNDS error.
Fix: remove first from front every time.
companion: #4837

use 0x2::pay::join_vec instead of  0x2::coin::join_vec
https://github.com/MystenLabs/sui/pull/5018


Help: Image removal

Describe your problem here.
so i am trying to remove the time bar in a specific song and i am trying to remove it but nothing works
here's the code:
function onCreatePost()
	setTextFont("scoreTxt", "SFPixelate.ttf")
	setTextFont("timeTxt", "SFPixelate.ttf")
	setTextFont("botplayTxt", "SFPixelate.ttf")
	removeLuaSprite('timeBar', destroy:Bool = true)
end

Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
Mods folder

remove the destroy:Bool = true part
if you plan on removing the sprite forever then just keep the true part

you can't remove it because it's not a lua sprite, make it invisible instead

what's the variable for the time bar sprite too?

thank you, but another question: how do i make a custom sprite for the health bar


move imagepullsecret to sa from deployment

issue: https://issues.redhat.com/browse/ACM-9759

/retest

/lgtm
/approve


Error while dropping a table with foreign keys

a user reported this today:
→  create table foo (id primary key);
→  create table bar (id integer, foreign key(id) references foo(id));

→  insert into foo (id) values (0);
→
→  insert into bar (id) values (0)
→  drop table foo;
Error: json: cannot unmarshal string into Go struct field httpResults.error of type http.httpErrObject

To the best of my knowledge, SQLite would not let us drop that table once it has references, which returns an error, but we should be able to deserialize the error.
@luisfvieirasilva can you take a look ASAP ?

FWIW, this worked straight on libsql-shell-go:
Error: unable to execute drop table foo: SQLite error: Error code 787: Foreign key constraint failed: Some("FOREIGN KEY constraint failed")

@luisfvieirasilva are maybe using an older version for cli ?


only treat .ts files as features

When we have a mixture of .js and .ts files, they each counted as a separate feature, hence 2 subscriptions.

Works for me.

:shipit:


Add Snake Game in Python

Aim

What is the objective of the Script

It is a classic mobile snake game that ever was.
Details

What the features will your script have

In this game we need to control the moving snake using our keyboard in which snake goes and get food and grows in length as it eats more food. We need to make sure that the snake shouldn't end up getting tangled or hitting the wall. The goal is to eat as much food as the snake can stay alive.

I have a small doubt. After raising the issue do we need to make a pull request or what exactly ? You have assigned me for what ? Can you please describe it.


Leaderboard hit api

In this pull request I implemented the following:

Consuming of API
Implement the "Refresh" button that will get all scores for a game created by you from the API (receiving data from the API and parsing the JSON).
Implement the form "Submit" button that will save a score for a game created by you (sending data to the API).
Use arrow functions instead of the function keyword.
Use async and await JavaScript features to consume the API.

Thank you for the review.


fix sphinx doc build

I think this PR fixes #326

Codecov Report

Merging #334 into master will increase coverage by 0.06%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master    #334      +/-   ##
=========================================
+ Coverage   89.54%   89.6%   +0.06%
=========================================
  Files          32      32
  Lines        2945    2945
=========================================
+ Hits         2637    2639       +2
+ Misses        308     306       -2

Impacted Files
Coverage Δ

scvi/models/vae_fish.py
70.49% <ø> (ø)
:arrow_up:

scvi/dataset/dataset10X.py
93.82% <ø> (ø)
:arrow_up:

scvi/inference/autotune.py
74.44% <ø> (+0.55%)
:arrow_up:

scvi/inference/trainer.py
88.08% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


slim: disable speech synthesis in thunderbird

Things done

[x] Made sure, no settings are changed by default
[x] Tested changes on a real world deployment

hmmm, going to copy the hack from https://github.com/NuschtOS/nixos-modules/blob/5098dc483fa21a66df80478c61131dc5639c7d3a/modules/hound.nix#L5


909 picocli ecxeptions

Description
An alternative way of handling exceptions using picocli

Do these changes require any new unit tests?

Do these changes require any new unit tests?

Good question. i don't think so. as the unit under test would be the picocli library.
there are already cucumber tests for these which still pass.


Update CircleCI 2.0

Overview
CircleCI 1.0 End of Life on August 31, 2018

Thank you for reviewing, I didn't notice that. I fixed it.


Trace improvements

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@84fb9b8). Click here to learn what that means.
The diff coverage is 56.86%.

@@            Coverage Diff            @@
##             master     #527   +/-   ##
=========================================
  Coverage          ?   39.09%
=========================================
  Files             ?      121
  Lines             ?     6065
  Branches          ?        0
=========================================
  Hits              ?     2371
  Misses            ?     3510
  Partials          ?      184

Impacted Files
Coverage Δ

middleware/trace/trace.go
0% <ø> (ø)

middleware/trace/setup.go
71.01% <72.5%> (ø)

Continue to review full report at Codecov.

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

lgtm, but this PR has some commits that don't belong? Like bbf6189?

Yeah, something to do with the way I rebased it. I can clean it up.


[sil-combine] Enable dead alloc_ref elim for ossa.

It was just looking for an alloc_ref that only has dealloc_ref,
set_deallocating, fix_lifetime users.

@swift-ci smoke test

I was thinking about that. I want to make sure @atrick is cool with it first.

@gottesmm @meg-gupta fyi, it's fine to eliminate fix_lifetime when the object is uniquely identified and there are no other uses, which is indeed the case here for alloc_ref. There are other places where we delete "dead" fix_lifetime instructions that are not uniquely referenced, which is definitely incorrect.
I have no problem with the test subdirectories matching the source subdirectories.

Ok. SGTM! I was just porting. I am trying to slim down my large patch.


use jdk7 too and install codecov

Current coverage is 25.61%

Branch #24 has no coverage reports uploaded yet.

No diff could be generated. No reports for master found.

Powered by Codecov. Updated on successful CI builds.


nHaystack v3.0.1 / WatchSub and poll when curStatus=fault

Posted originally via haystack forums:
https://project-haystack.org/forum/topic/886
In Niagara there is a point configured which has an alarm extension set to place the point's value in its fault state.  When making either a WatchSub or WatchPoll request against this point, the curStatus=fault as expected however both the zinc and json responses come back with a null value as shown below:
The json reponse:
{
    "meta": {
        "ver": "2.0",
        "watchId": "143da86f-7fa7-4681-9be0-c2c0745249d9",
        "lease": "n:10000 ms"
    },
    "cols": [
        {
            "name": "curStatus"
        },
        {
            "name": "curVal"
        },
        {
            "name": "id"
        }
    ],
    "rows": [
        {
            "curStatus": "ok",
            "curVal": true,
            "id": "r:C.Examples.AHU~2d01.FanStatus"
        },
        {
            "curStatus": "fault",
            "id": "r:C.Examples.AHU~2d01.SupplyTemp"
        }
    ]
}

The zinc response:
ver:"3.0" watchId:"3b9e058b-5830-4557-bc73-d7726f9b968f" lease:10000ms
curStatus,curVal,id
<EMAIL_ADDRESS><EMAIL_ADDRESS>
Is it expected that nHaystack should return a null curVal when curStatus is in fault? If this is expected behavior what would be the reasoning for not returning the value when the point is in fault?

https://project-haystack.dev/doc/lib-phIoT/curStatus
Closing this one.  Brian pointed me to the updated curStatus page above which makes it more obvious when curVal is not to be expected.


ks0108: "Sorry, this library does not work on 32 bit Teensy.  Use openGLCD.

Describe the bug
I am trying to operate my st7735 TFT display from the Teensy 4. I uncommented #include "../configs/ard-adagfx-st7735-notouch.h" and tried to compile some example. However, it fails with:

ks0108\ks0108.h:51:2: error: #error "Sorry, this library does not work on 32 bit Teensy.  Use openGLCD."

So does this mean Teensy 4 is not supported for this display? Is there a list of displays (un)supported on Teensy 4?
Device hardware

MCU: Teensy 4
Display with link: st7735
GUIslice config selected: ard-adagfx-st7735-notouch

@pr8x You might get more help on the teensy forum.
forum pjrc
It might be as simple as using a different include file?
Paul--


BLP Texture rendering

Hey, this PR implements BLP texture rendering directly in JS, rather than having to convert them to PNGs first
Happy to make any changes you might want, just let me know

Apologies for the late response, have been travelling. Thanks for the PR, hope to have a look at this sometime this week 😊


Web: renderer for TypeSpec + React rendering fixes

I have no idea how I managed to hit request changes there.

https://twitter.com/abock/status/992436794225512448


Can't find <SPARK_BENCH_HOME>/report

The file cannot be found  the program is finished(e g, LogisticRegression , KMeans ). How do I configure it?
Thanks

<SPARK_BENCH_HOME>/num/bench-report.dat


Enable enhanced metrics by default and write enhanced metrics to logs

What does this PR do?

Enables enhanced metrics by default (they can be disabled with DD_ENHANCED_METRICS=false)
If DD_ENHANCED_METRICS is enabled, always writes enhanced metrics to stdout
recognizes the Node v12 runtime and adds that tag to enhanced metrics

Motivation
Making enhanced metrics GA
Testing Guidelines
Updated unit tests, tested the new layer version in our demo environment

Codecov Report

Merging #50 into master will decrease coverage by 0.08%.
The diff coverage is 78.57%.

@@            Coverage Diff             @@
##           master      #50      +/-   ##
==========================================
- Coverage   93.07%   92.99%   -0.09%
==========================================
  Files          25       25
  Lines         708      714       +6
  Branches      115      116       +1
==========================================
+ Hits          659      664       +5
- Misses         29       30       +1
  Partials       20       20

Impacted Files
Coverage Δ

src/index.ts
88.73% <100%> (ø)
:arrow_up:

src/metrics/metric-log.ts
100% <100%> (ø)

src/metrics/listener.ts
91.83% <100%> (ø)
:arrow_up:

src/metrics/enhanced-metrics.ts
90.62% <57.14%> (-2.24%)
:arrow_down:

Continue to review full report at Codecov.

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


DBZ-7921 Kafka offset/history store support

https://issues.redhat.com/browse/DBZ-7921

@jpechane This wont make it into 2.7 unfortunately

👋 Hello,
I just wanted to hop into this issue (I haven't setup Redhat JIRA yet) and say we'd love to help / test this new feature at Shopify. We've been testing the operator and like the direction - this is a big feature so we're around to support.

@ryanvanhuuksloot  Hey Ryan, it's great hearing that you are testing the operator. I'd be happy hearing any feedback you can provide, or any ideas/request in terms of functionality you might have. Of course PR are definitively welcomed. In any case this will be available soon -- it's nothing problematic, I just haven't gotten around to implementing it for 2.7.
Note that this feature is really more about the cosmetics than anything else -- technically you should be able to just put the configuration under spec.source.config and it would work.

I'd be happy hearing any feedback you can provide, or any ideas/request in terms of functionality you might have.

I'd love to setup some time to discuss how we are thinking about using the operator. We have some fundamental requirements that we must have but we also see the potential of the operator. I imagine our team can really leverage and contribute to this system if roadmaps align. Would you be open to putting something in the calendar with a few folks from our team (we are primarily EST)?

Of course PR are definitively welcomed.

Amazing - as we continue to test we'll likely be coming back with bugs/fixes.

In any case this will be available soon -- it's nothing problematic, I just haven't gotten around to implementing it for 2.7.
Note that this feature is really more about the cosmetics than anything else -- technically you should be able to just put the configuration under spec.source.config and it would work.

No problem. I didn't realize it was possible. I've had very mixed success with other offset types but I'll try with Kafka and the "less than ideal" config. Or I'll do a custom build with this PR :)

Or I'll do a custom build with this PR :)

Once it is resolved. Right now this is just a preparation change which was required. I will try to find the time this week and have this resolved in full.
Would you be open to putting something in the calendar with a few folks from our team (we are primarily EST)?
Anything in the morning (EST) should work.

@ryanvanhuuksloot

I've had very mixed success with other offset types but I'll try with Kafka

Perhaps this is something you could elaborate on during our call.


x509 documentation error

Documentation error for x509.MarshalPKCS8PrivateKey...
Docs say this will marshal ecdsa.PublicKey but the author obviously meant ecdsa.PrivateKey.
ecdsa.PublicKey does not marshal:
x509: unknown key type while marshalling PKCS#8: *ecdsa.PublicKey

Thanks for catching that!


Suggestion: Optimize icon.png since it takes up most of the file size

Hey! Quick suggestion. "icon.png" is taking up most of the file size since it's 512x512. You can easily downscale it to 128x128 with just a "Nearest Neighbor" conversion to cut down on the file size by over half. It's not really a big deal, but it's a simple fix, so I thought I'd mention it.

Every time I get an issue on most of my repos it always surprises me, since I tend to forget that people do actually use stuff I write. Considering the fact that the icon size is already measured in kilobytes, I'm not particularly hung up on it.
That said, downscaling and running oxipng gets it from ~32kb down to ~7.5kb, bringing the jar from ~33kb to ~13kb, so I'd consider it worth while. I don't have the time tonight to push everything up to Modrinth so I'll do that tomorrow. Good catch!

Sounds good! While you’re at it, I don’t believe there’s a mod description in the mod (view-able through Mod Menu).


Build Python 32 bit on Linux 64 bits

cmake -DCMAKE_C_FLAGS=-m32 -DCMAKE_EXE_LINKER_FLAGS=-m32 -DCMAKE_INSTALL_PREFIX:PATH=/home/user/src/python-install ../python-cmake-buildsystem

I tried with the following options, but did not succeed
/home/user/src/Python-2.7.8/Include/pyport.h:886:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."
 #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."

I can not understand what the problem.

@alexsilva Cross-compilation support has just been integrated.
There is now continuous integration against toolchain linux-x86
See https://open.cdash.org/index.php?project=CPython#/#Circle-CI_[Latest]
Let us know if you still have issue cross-compiling.
Cc: @thewtex


[Coral-Trino] Avoid accidental translation of Trino from_unixtime SQL call

What changes are proposed in this pull request, and why are they necessary?

Avoid the accidental translation of the Trino from_unixtime introduced through #426
Context https://github.com/linkedin/coral/issues/459#issuecomment-1762160693
Fixes https://github.com/linkedin/coral/issues/459
How was this patch tested?

Regular unit tests

I think you would want to implement an operator in coral-trino similar to TrinoElementAtFunction and have the transformer convert to that one as opposed to creating a Hive function (operator). Operators currently part of "Hive Function Registry" will end up in Coral common as they capture Coral IR, and not a language specific set of operators.

@wmoustafa
I created an alternative PR https://github.com/linkedin/coral/pull/465 to follow-up on your request

think you would want to implement an operator in coral-trino similar to TrinoElementAtFunction

However, I failed in getting it to work exactly because the function  was not mentioned in StaticHiveFunctionRegistry.
StaticHiveFunctionRegistry contains already Trino (not Hive) specific content:
https://github.com/linkedin/coral/blob/a7e33e6972995eb275366878a0de3201525003af/coral-hive/src/main/java/com/linkedin/coral/hive/hive2rel/functions/StaticHiveFunctionRegistry.java#L306-L307
I believe that, in the current state of the coral library, my current PR is the right approach to fix the from_unixtime regresssion reported on https://github.com/linkedin/coral/issues/459.

Superseded by https://github.com/linkedin/coral/pull/467


Add template for debugging variables

Add templates/variables.j2, with inline usage instructions.
Reviewers should be able to try this out on a vm or wherever.

👍


Not working, and no error messages...

Hi Mathias
I have downloaded and installed your plugin.
But when I run it, nothing happens - I don't even get an error message.
I have installed the extension, restarted VS code.
Then I open a .tex file, and find the command in the "Command palette", I click the command and nothing happens.
System information:
OS: OSX 10.11.3
LaTex Distribution: MacTex
Do you have a suggestion to what could be wrong?

Hello
Thanks for using the extension.
It has possibly something to do with the 0.10.8 (January 2016) update, that have changed some of the way extensions use the internal vscode api.
I have submitted at new version of the extension and is now able to create pdf's myself.
Will you try updating through the ext update command in vscode and give it at shot.
Thanks for bringing this to my attention.

Unfortunately it still does not work for me...
When I run the command, it says "Launching [pdf] DATETIME" and still nothing happens, where can I find the log?

Sorry that this did not solve the problem.
I have released a new version that might fix it.
Can't really say for sure since it works on mine.
Sorry to ask you again, but can you update and and try again ?
If this does not work, try cloning the git repo and open the folder in vscode followed by pressing f5.
Then run the extension from Extension development host.
This will give you a debug console of what is happening.

Same here, it just says "Launching [pdf] DATETIME" and nothing happens. Where does it save pdf files?

@christianknu Did it solve you problem ?
@Kenya-West It compile and save the pdf, at the same location as the .tex file.
Do you have a Latex distribution on you system? (miktex for Windows, mactex for OSX)

Hi Mathias
No unfortunately it didn't, I haven't tried cloning the repo and debug, I could try that.

@mathiasfrohlich no I don't have any. And I haven't spotted pdf file in same folder.

@christianknu This will make you able to debug anything and change the code.
If you are able to find a bug or fix it, please submit at merge request, from that i will review the code and publish it.
@Kenya-West I will need to have a latex distribution installed. This is also stated in the requirements.
https://github.com/mathiasfrohlich/vscode-LaTeXCompile#requirements

I found that the path was the problem, I had a folder called "Git Repositories", which I then renamed to "Git-Repositories" and now it is working :smile:

@christianknu I see, i am glad you got the problem solved, i will include a description of this in the README.md, so others may avoid this problem.


YUM repo

It's not very convenient to install InfluxDB from URL pointing to a specific RPM package. It would be much better if you could create a YUM repo in AWS which the users could use to install and upgrade their InfluxDB installation.

We will  re-do packaging for the 0.9.0 release (and later), which should address this issue.

:+1:

We've just setup an official repository for new InfluxDB packages. For yum, you can run the following command (as root):
cat <<EOF>/etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL \$releasever
baseurl = https://repos.influxdata.com/centos/\$releasever/\$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
EOF

And then a sudo yum install influxdb. Let us know if you run into any issues!

:+1:

please add the details to:
https://influxdata.com/downloads/

@steverweber Links to the package installation instructions have been added. Thanks!

Is this working still on AWS?
Can you point to the doc link?

@betimd The instructions have since been moved to the Install documentation here.


Nuget package adds file reference to project, but not the file referenced

Nuget package adds a reference to Kentico.Widget.RichText.resx to the project, but not the file rex file. This causes the build to fail in Azure DevOps.
What went wrong?
Repro steps

Install nuget package
At this point it will build locally
COmmit changes to repo
Build project in Azure Devops

Expected behavior
Include the missing file in the nuget package or remove the file reference from the project.

Hello,
The problem is that Visual Studio adds these resource files as "Embedded Resource". They are then compiled into an assembly and therefore are missing later. A quick workaround could be to change the build action of these resx files to "Content".
We'll remove the reference from the project file.


pycurl version being installed (<IP_ADDRESS>) is not compatible

Celery now has a version restriction:
pycurl==<IP_ADDRESS>  # Latest version with wheel built (for appveyor)

Solved in branch develop


do you plan to release any map information in the future?

Thank you for your interest!
This release was just the first step. We are currently discussing several ways to expand the dataset, based on feedback just such as this. We will send out email updates when we have additional data available.


Default image is not the recommended one

The image used by default does not match the image recommended by AWS for ECS.
This returns amzn2-ami-ecs-gpu-hvm-2.0.20210331-x86_64-ebs:
# Get latest Linux 2 ECS-optimized AMI by Amazon
data "aws_ami" "latest_ecs_ami" {
  most_recent = true

  filter {
    name   = "name"
    values = ["amzn2-ami-ecs-*"]
  }

  filter {
    name   = "virtualization-type"
    values = ["hvm"]
  }

  owners = ["amazon"]
}

The recommended image, mentioned here, can be obtained with:
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/recommended | jq -r '.Parameters[0].Value' | jq .image_id

The image id is amzn2-ami-ecs-hvm-2.0.20210331-x86_64-ebs, and this can be fetched with terraform using:
data "aws_ssm_parameter" "ecs_optimised_ami" {
  name = "/aws/service/ecs/optimized-ami/amazon-linux-2/recommended"
}

resource "aws_instance" "myinstance" {
  ami = jsondecode(data.aws_ssm_parameter.ecs_optimised_ami.value)["image_id"]
}

you can simply change the block:
`data "aws_ami" "latest_ecs_ami" {
most_recent = true
filter {
name   = "name"
values = ["amzn2-ami-ecs-*"]
}
filter {
name   = "virtualization-type"
values = ["hvm"]
}
owners = ["amazon"]
}to this block:data "aws_ami" "latest_ecs_ami" {
most_recent = true
owners      = ["amazon"]
filter {
name   = "name"
values = ["amzn2-ami-ecs-hvm-*-x86_64-ebs"]
}
}`


Error running on AWS lambda node 18 TypeError: fetchFn is not a function

Possibly related to #112 which i commented on.
I'm running on aws lambda and the following line returns an instance of node-fetch but its not callable unless I add fetchFn.default to it.
The error Is
TypeError: fetchFn is not a function

RUNTIME.type is correctly logged as "node" from my tests, the issue appears to be related to the way the required instance is used.
https://github.com/cohere-ai/cohere-typescript/blob/48fd526c969effde139a246a4dc1a1ea1b9f6fa3/src/core/fetcher/Fetcher.ts#L83

@Gr33nLight Thanks for flagging this issue. We are actively working on this and will be releasing a patch soon.

Ok, a suggestion could be checking for the availability for the global fetch first (instead of after like now) because its available by default in node 18 and if not, fallback to requiring node-fetch

I am running into this same issue with nextjs
Steps to reproduce:

Create nextjs v14 project and add api route.
Install cohere-ai version 7.7.7 and try calling the re-rank method
You get this error

 ⨯ CohereError: fetchFn is not a function
    at CohereClient.eval (webpack-internal:///(rsc)/./node_modules/cohere-ai/Client.js:528:27)
    at Generator.next (<anonymous>)
    at fulfilled (webpack-internal:///(rsc)/./node_modules/cohere-ai/Client.js:46:32)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Code
import { CohereClient } from "cohere-ai";

const cohereClient = new CohereClient({ token: appConfig.cohereAPIKey });

const reranked = await cohereClient.rerank({
    query,
    documents: docs,
    topN: 3,
});

@dsinghvi Hello Is there an ETA for a fix?

@dsinghvi Hello Is there an ETA for a fix?

If you use the endpoint directly and not the sdk it should work. Link here: https://docs.cohere.com/reference/chat

I am now also getting this issue again - is there an eta on this fix!

Pull request with the fix is prepared - https://github.com/cohere-ai/cohere-typescript/pull/140

Hey all thanks for your patience. This should be fixed in 7.8.0. Please let me know if there are further issues or more feedback!


Web page reporting bad Corp Token

Implementing the Career Portal. I received a Swim Lane and Corporate Token from Bullhorn support.  I triple-checked the token entered on the Plugin, and it is correct, but the web site is throwing an error saying the token is bad.
This is the text of the error:
ERROR
{…}
error: Object { errorMessage: "Bad corp token", errorMessageKey: "errors.badCorpToken" }
headers: Object { normalizedNames: Map(0), lazyUpdate: null, lazyInit: lazyInit() }
message: "Http failure response for https://public-rest41.bullhornstaffing.com/rest-services/40MAA1/search/JobOrder?query=(isOpen:1) AND (isDeleted:0)&count=500&fields=id&sort=id: 400 Bad Request"
name: "HttpErrorResponse"
ok: false
status: 400
statusText: "Bad Request"
url: "https://public-rest41.bullhornstaffing.com/rest-services/40MAA1/search/JobOrder?query=(isOpen:1) AND (isDeleted:0)&count=500&fields=id&sort=id"
: Object { constructor: t() }
core.js.pre-build-optimizer.js:14597:18
Current behavior
-Error on web site
Expected behavior
-Career portal displays jobs published from Bullhorn
Steps to replicate behavior
1.https://barfieldrevenue.com/bull-horn/   Password:  bullhorn
Screenshots
Current

Expected

Its possible that the token provided was incorrect, you may want to double check with Bullhorn Support for this

Thank you.  I checked with support.  They gave me the same token.  When I verified it was the same that was entered into the plugin, they sent me to you.
John Herath
General Manager
Barfield Revenue Consulting
(919) 417-4405
john<EMAIL_ADDRESS>[A picture containing clipart  Description automatically generated]https://barfieldrevenue.com/
[cid:image004.png@01D56931.3E3E6C50]https://www.linkedin.com/company/barfieldrevenue/[cid:image006.png@01D56931.3E3E6C50]https://www.facebook.com/barfieldrevenue/[cid:image008.png@01D56931.3E3E6C50]https://www.instagram.com/barfieldrevenue/[cid:image010.png@01D56931.3E3E6C50]https://twitter.com/willb_brc
From: Charles Barnes<EMAIL_ADDRESS>Sent: Monday, December 9, 2019 1:11 PM
To: bullhorn/career-portal<EMAIL_ADDRESS>Cc: John Herath<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [bullhorn/career-portal] Web page reporting bad Corp Token (#299)
Its possible that the token provided was incorrect, you may want to double check with Bullhorn Support for this
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbullhorn%2Fcareer-portal%2Fissues%2F299%3Femail_source%3Dnotifications%26email_token%3DAN732NGJ5QWSVRKVAC3ILMDQX2C2HA5CNFSM4JYOJ7EKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGKDNPY%23issuecomment-563361471&data=02|01||39f3efc983334ea1131c08d77cd31be0|569d35fbbd314b6bac9e2bc03511be79|0|1|637115118474503919&sdata=Dd69f6YzS9PfIeu0nRh6x%2BE3OL3gBg1UQBCxQ4JN6%2FA%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAN732NEOCQ7N326XYLCH3L3QX2C2HANCNFSM4JYOJ7EA&data=02|01||39f3efc983334ea1131c08d77cd31be0|569d35fbbd314b6bac9e2bc03511be79|0|1|637115118474508924&sdata=7vfS83ZpUb1I3IECUJCbVv8%2Fx%2FF5FAUi6peZmRqbFqk%3D&reserved=0.

Hello I am tracking this down internally.   But just in case I wanted to check something real quick to be sure.  Are you sure that 0 is not an O?   I switched the corp token to 4OMAA1 and it worked.

Charles,
You were correct.  I switched it from a 0 to an O and it worked.  What a great catch.    Kind of like the, “Is it plugged in?” question.
Thank you so much!
John Herath
General Manager
Barfield Revenue Consulting
(919) 417-4405
john<EMAIL_ADDRESS>[A picture containing clipart  Description automatically generated]https://barfieldrevenue.com/
[cid:image004.png@01D56931.3E3E6C50]https://www.linkedin.com/company/barfieldrevenue/[cid:image006.png@01D56931.3E3E6C50]https://www.facebook.com/barfieldrevenue/[cid:image008.png@01D56931.3E3E6C50]https://www.instagram.com/barfieldrevenue/[cid:image010.png@01D56931.3E3E6C50]https://twitter.com/willb_brc
From: Charles Barnes<EMAIL_ADDRESS>Sent: Monday, December 9, 2019 1:23 PM
To: bullhorn/career-portal<EMAIL_ADDRESS>Cc: John Herath<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [bullhorn/career-portal] Web page reporting bad Corp Token (#299)
Hello I am tracking this down internally. But just in case I wanted to check something real quick to be sure. Are you sure that 0 is not an O? I switched the corp token to 4OMAA1 and it worked.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbullhorn%2Fcareer-portal%2Fissues%2F299%3Femail_source%3Dnotifications%26email_token%3DAN732NG7G64GRCDJNOGA4WDQX2EJDA5CNFSM4JYOJ7EKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGKEWPA%23issuecomment-563366716&data=02|01||5142eb7425e240e8208408d77cd4daab|569d35fbbd314b6bac9e2bc03511be79|0|0|637115125970674873&sdata=AM2a%2BPRHm8i1n0mfTLu6refOJQpmJhDxY2mQ35Ukpsw%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAN732NEN3OHVRKBUANUDFDDQX2EJDANCNFSM4JYOJ7EA&data=02|01||5142eb7425e240e8208408d77cd4daab|569d35fbbd314b6bac9e2bc03511be79|0|0|637115125970684866&sdata=tFtaLF5QgeIDH0yBr1DcsWi5l9ZWEagm%2BblMrpZ1Ns8%3D&reserved=0.


Fix for shape's bounds updates for Align and Distro

For more info see https://github.com/ahome-it/lienzo-core/issues/144

Hi @romartin, can you review this fix, please? Tests can be found here: https://github.com/ahome-it/lienzo-tests/pull/6

Know issue: this fix works only with right-bottom corner resize (as it is in Stunner so this fix is enough for now). For other corners there are some problems with calculations. I guess it is related to https://github.com/ahome-it/lienzo-core/issues/136


Error in SABnzbd

Hi
I am running Ubuntu 18.04 on linux.
I am getting this issue when SABnzbd tries to run the converter script:
Traceback (most recent call last):
File "/sickbeard_mp4_automator-master/SABPostProcess.py", line 5, in
from autoprocess import autoProcessTV, autoProcessMovie, autoProcessTVSR, sonarr, radarr
File "/sickbeard_mp4_automator-master/autoprocess/autoProcessMovie.py", line 11, in
import requests
ImportError: No module named requests
Anyone know how to fix this issue?
Thanks

You need to install the requests module, its pretty straight forward
https://github.com/mdhiggins/sickbeard_mp4_automator/wiki/Dependencies
If you're done this, then SAB is probably executing scripts from a different python environment and you'll need to address the fact that you have 2 environments and direct the script to be executed in the one where you installed your dependencies
https://github.com/mdhiggins/sickbeard_mp4_automator/issues?q=label%3A"multiple+environments"
Many people have had this issue


Prevent Lottie from running in the background after navigating to other pages

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/47273
PROPOSAL: https://github.com/Expensify/App/issues/47273#issuecomment-2294733914
Tests

Go to Settings - Preferences.
Navigate to Chat.
Navigate back to the Settings tab.
Click on Priority Mode, Language, or Theme.

Expected result: The animation in the Settings tab should work, and the right-side modal should open.

[x] Verify that no errors appear in the JS console

Offline tests

Go to Settings - Preferences.
Navigate to Chat.
Navigate back to the Settings tab.
Click on Priority Mode, Language, or Theme.

Expected result: The animation in the Settings tab should work, and the right-side modal should open.
QA Steps

Go to Settings - Preferences.
Navigate to Chat.
Navigate back to the Settings tab.
Click on Priority Mode, Language, or Theme.

Expected result: The animation in the Settings tab should work, and the right-side modal should open.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/88b5336c-deac-44f0-8d37-de2420c79b5a

Android: mWeb Chrome

https://github.com/user-attachments/assets/b13144ac-2eac-4992-87df-aa528248da95

iOS: Native

https://github.com/user-attachments/assets/2752b1e4-c8b4-401e-bdc7-bd6676fd2e48

iOS: mWeb Safari

https://github.com/user-attachments/assets/91097b86-ca0b-43e5-9942-4aa1344d831f

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/0892807b-2159-4e09-b663-40d9520cf306

MacOS: Desktop

https://github.com/user-attachments/assets/1192d734-caf9-40a8-8120-281d13b31fa8

@suneox @aldo-expensify Could we pause the review for now? RN was upgraded to 0.75 less than an hour ago, which is a major change. I need to retest on all platforms tomorrow to be safe.

@suneox @aldo-expensify Retested and found no major differences after merging the main branch, so it’s ready for review.
Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/14a56cb2-b6c0-4bea-88ca-6a353e01adf4

Android: mWeb Chrome

https://github.com/user-attachments/assets/6adf861c-635a-41c9-9786-7b55ed877e64

iOS: Native

https://github.com/user-attachments/assets/b9b3781f-ae76-46d5-aa34-b28c7ce3043d

iOS: mWeb Safari

https://github.com/user-attachments/assets/ae2e827d-3ca3-4fda-90a9-00e05055233c

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/4d127890-1d18-4021-a676-15251d98ba39

MacOS: Desktop

https://github.com/user-attachments/assets/d259e7e0-6e55-4c24-b553-f16baffccb90

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/aldo-expensify in version: 9.0.26-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

We reverted this PR because it caused a deploy blocker that caused an App crash https://github.com/Expensify/App/pull/48283

@suneox Oops, my bad. Didn't realize useNavigation() could throw an error if the component is ouside of NavigationContainer.

🚀 Deployed to production by https://github.com/puneetlath in version: 9.0.26-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@suneox Yes, I can still reproduce it.


Fix wrong id in edit-files-faster

I had an issue with this extension and tried to disable the edit-files-faster feature but it did not work.
So i tried to disable every feature on by on and it work when I disabled edit-comments-faster.
And then I notices that the extension logged twice that this feature was disabled, so I took a look in edit-files-faster.tsx. There I saw that the id was wrong, so this PR fixes this issue.

D'oh! Thanks for the fix! I wish we had an eslint plugin for this


add pinpoint version to 2.5.4

PINPOINT 2.5.4 has been released, adding a new version.

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

e7c96db7181b: Already exists
f910a506b6cb: Already exists
c2274a1a0e27: Already exists
[+] Pulling 5/12ll complete
[+] Pulling 5/12kipped - Image is already being pulled by jobmanager                                               0.0s
✔ taskmanager Skipped - Image is already being pulled by jobmanager                                               0.0s
✔ zoo2 Skipped - Image is already being pulled by zoo1                                                            0.0s
✔ zoo3 Skipped - Image is already being pulled by zoo1                                                            0.0s

jobmanager [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                            174.5s
pinpoint-hbase [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                           174.5s
pinpoint-mysql [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                         174.5s
pinpoint-collector [⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                         174.5s
pinpoint-web [⠀⠀⠀⠀] Pulling                                                                                174.5s
[+] Pulling 5/12h [⠀⠀⠀⠀] Pulling                                                                                174.5s
✔ taskmanager Skipped - Image is already being pulled by jobmanager                                               0.0s
✔ zoo2 Skipped - Image is already being pulled by zoo1                                                            0.0s
✔ zoo3 Skipped - Image is already being pulled by zoo1                                                            0.0s
jobmanager [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                            196.8s
pinpoint-hbase [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                           196.8s
pinpoint-mysql [⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                         196.8s
pinpoint-collector [⠀⠀⠀⠀⠀⠀⠀⠀] Pulling                                                                         196.8s
pinpoint-web [⠀⠀⠀⠀] Pulling                                                                                196.8s
pinpoint-batch [⠀⠀⠀⠀] Pulling                                                                                196.8s
✔ zoo1 Pulled                                                                                31.6s
pinpoint-agent [⠀⠀⠀] Pulling                                                                                196.8s
✔ pinpoint-quickstart Pulled                                                                                31.6s
WARNING: Some service image(s) must be built from source by running:                                             137.5s
docker compose build pinpoint-web pinpoint-collector pinpoint-hbase pinpoint-mysql pinpoint-agent pinpoint-batch jobmanageroint-web [⠀⠀⠀⠀] Pulling                                                                                137.5s
7 errors occurred:[⠀⠀⠀⠀] Pulling                                                                                137.5s
✔ zoo1 * error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
* error pulling image configuration: download failed after attempts=6: dialing production.cloudflare.docker.com:443 container via direct connection because  has no HTTPS proxy: connecting to <IP_ADDRESS>:443: dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

pinpoint-quickstart and pinpoint-agent-attach-examples hasn't changed ever since who-knows-when, so there's no need to update their versions.
please use docker-compose files in master branch and modify PINPOINT_VERSION in .env file accordingly to use pinpoint version 2.5.4


test --coverage: Shut down live-server gracefully

./go test --coverage serves results via live-server when COVERAGE_REPORT_SERVER='true'. Previously, the script would exit with a signal status when the user would enter CTRL-C to terminate the server, regardless of whether the test suite actually passed or failed.
./go test --coverage now exits with the correct status when the user terminates the server. It also emits informational messages when live-server is started and terminated.

Coverage remained the same at 97.742% when pulling c0d1ea44a0d64588e07d79ca2a4887bb18b1c119 on live-server-shutdown into 56fbc31c23783d3c53f38416c1e27d472d7c56da on master.

Coverage remained the same at 97.742% when pulling c0d1ea44a0d64588e07d79ca2a4887bb18b1c119 on live-server-shutdown into 56fbc31c23783d3c53f38416c1e27d472d7c56da on master.


Added phpcsfixer

This PR is for #43.
So I included the phpcsfixer of friends of php and dropped in the laravel-shift configuration.
I ran this against Livewire and there were some errors which I will show in a screenshot.
To get full benefits from phpcs and maybe in the future even more CI tools, I would suggest using a build for the package that will test the code and run all linters.
This preset is copied from: https://gist.github.com/laravel-shift/cab527923ed2a109dda047b97d53c200.
The following screenshot is the result of a dry-run. This means that it didn't fix the errors that are shown.
It can however fix those errors pretty easily.

Hey.
Why not use the tools for all participants, such as StyleCI, this would be a long-playing solution. Instead of users taking care of it every time.
I see that there is such an offer in the issue, but I don’t understand why not to use it.

@tabuna because Caleb needs to setup a service that runs the ci. And what tools are used is up to him.
I suggest this tool incase he will be using a more complete ci like travisci.
I do understand your question tho.
Hope I gave you a somewhat useful answer.

yeah I definitely want this handled in CI, as well as running tests, I just haven't taken the time to do it. I will be out of town until next week and don't really see this as too urgent.
But I'd welcome a PR for the addition.
I think we should go with what laravel/framework uses: StyleCI and Travis for testing

I can adjust the pr accordingly but I can't setup those services. So maybe decline this pr for now?
And reopen when your back?