Some character auth data returning null?

Trying to get a copy running in nginx environment without Docker.  Forced into PHP 8.3, so I had to upgrade some packages and deal with some other allowances.
Things appear to be working overall, except that some character data is returning blank/null and causing logins to immediately fail with 403.
/app/Controller/Controller.php, line 332 has an If statement that matches the timestamps and the token hash.  Timestamps are validating, but $characterAuth->token is blank.  I can see the value in the DB table and it does match the hash in the cookie, so I'm not sure what is breaking down.  Doesn't matter what cache method I'm using either.
Any suggestions?

So this is something of a false alarm.  The problem wasn't in Pathfinder specifically but the underlying modules.  Leaving some notes in case anyone else should encounter this.
First, I had to update FatFree by bocsca to version 3.8.2 in order to be compatible with PHP 8.3
Second, I had to alter the error reporting level of PHP 8.3 to act like 7.x due to undeclared variables in Pathfinder itself
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_WARNING
Third, due to the fact that the nginx environment I am running in is itself a container in a Linux hosting environment, I had to deal with the internal port mapping to 8080 being picked up by FatFree and had to comment out /vendor/bcosca/fatfree-core/base.php at line 2487 - 2488 to ignore SERVER_PORT.
Did the same thing to /vendor/guzzlehttp/psr7/src/ServerRequest.php at lines 229 - 230 to ignore SERVER_PORT.
Finally, to the specific issue above about the empty character data.  Seems that the IP verifications taking place on the session cookie were picking up the random port from the client web browser, and as that can change almost immediately, it was causing security violations.
/vendor/bcosca/fatfree-core/db/sql/session.php line 69.  Replaced the If statement that checked the IP address and user agent with the following
if (strstr($this->get('ip'), ':', true) != strstr($this->_ip, ':', true) || $this->get('agent')!=$this->_agent) {
I think that's everything I had to do.


Add more test coverage

Motivation
Right now there are only a few test cases that cover basic functionality  process.
https://github.com/falcosecurity/falco-playground/blob/4dfca29224c0d090b676c553a7096a892825889b/cypress/e2e/home.cy.ts#L5-L28
Feature
Add more test cases that cover features and it's edge cases like

[x]  Share
[ ]  Import from yaml
[x]  Copy
[ ]  Upload Scap and run
[x]  Download
[x]  Load examples
[ ]  Run with Scap

Please assign me this issue.

Hey @Shubham1450, thank you!!. You can go ahead and start covering the test cases of your choice.

can i work on this please?

Hi @hades24 Yes you can !!

/reopen

@Rohith-Raju: Reopened this issue.

In response to this:

/reopen

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

I would like to work on this. Can you assign it to me?

sure, please go ahead!!


Add support for Varsovia

Add support for Varsovia

@MichalPietruczyk I am sorry, the domain student.study does not seem to be owned by this organization.
Instead of requesting the license with your email address, please use an alternative way.
Please enroll to GitHub Student Developer Program at https://education.github.com/discount_requests/application. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).
I have to close this request without merging.
Thank you for your understanding!

Thank you for your response! I would like to clarify that the main domain of the organization is https://varsovia.study, while student email addresses use the subdomain student.varsovia.study.
Could you please reconsider the request based on this information?
Thank you for your understanding!
pozdrawiam,
Michał Pietruczyk
Telefon: +48 508 855 829
Mail<EMAIL_ADDRESS>https://pietruczyk.plhttps://pietruczyk.pl/
[LOGO]
IT Security Michał Pietruczyk
al. Niepodległości 12/88
05-200 Wołomin
NIP: 125-160-53-04

Od: Philip Torchinsky @.>
Wysłane: Sunday, November 24, 2024 6:04:40 PM
Do: JetBrains/swot @.>
DW: Michał Pietruczyk @.>; Mention @.>
Temat: Re: [JetBrains/swot] Add support for Varsovia (PR #25324)
@MichalPietruczykhttps://github.com/MichalPietruczyk I am sorry, the domain student.study does not seem to be owned by this organization.
Instead of requesting the license with your email address, please use an alternative way.
Please enroll to GitHub Student Developer Program at https://education.github.com/discount_requests/application. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).
I have to close this request without merging.
Thank you for your understanding!
—
Reply to this email directly, view it on GitHubhttps://github.com/JetBrains/swot/pull/25324#issuecomment-2496110592, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BDIHOCIAL66XTKTWJTR5KSD2CIBKRAVCNFSM6AAAAABSEMMQNWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJWGEYTANJZGI.
You are receiving this because you were mentioned.Message ID: @.***>

@MichalPietruczyk Thank you for your patience while waiting for a review and processing your request. Pull request merged. Please start applying for JetBrains educational subscription at https://www.jetbrains.com/shop/eform/students in an hour, to allow the changes to propagate through JetBrains systems.


dpinger: works on gateways which support VIPs

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Is your feature request related to a problem? Please describe.
A few years ago we had issues with wrong "primary" address reading so we added reliable functions for it and concluded the replacement in 22.1. Now primaries are never VIPs by initial design, but some services wanting VIPs but not getting them from primary address fail for the right reasons.
Describe the solution you like
Add VIP listening support to dpinger.
Describe alternatives you considered
Not a real alternative as gateways already allow VIPs.
Additional context
#5766
#4221
5509fabfa3c3d

@eimann good morning, proposal is b37c1774a2 pending some discussion, but would be nice to know if it works for you:
# opnsense-patch b37c1774a2

Cheers,
Franco

Small issue during testing, it's cc6a80c164 now actually and it works from here in IPv4 and IPv6.
# opnsense-patch cc6a80c164

Cheers,
Franco

I applied cc6a80c1649ce8d5d2d30ad74049a3d2bf8a72c8 saved the IPv6 gateway and applied this as well.
Unfortunately dpinger doesn't seem to start and I get:
[meta sequenceId="1"] /status_services.php: The required WANtest_GWv6 IPv6 interface address could not be found, skipping.

@eimann sorry, screwed up the amendment, 34e47da should be the right one
# opnsense-patch 34e47da

Cheers,
Franco

Yup, that works nicely. All green and pinging. Thank you for this fix :)

Great, thanks!


Missing file in Wikipedia raw text

Dear author,
As I'm running the file to generate all datasets, I run into an error when running gen_test_train/gen_all.lua. Here the part regarding Wikipedia goes wrong as it is missing a file. I am missing the following file (which is not in the provided dataset):
./data/basic_data/test_datasets/wned-datasets/wikipedia/RawText/Chippenham_United_F.C.
I tried taking the approach that the issue listed here had taken, but in that case it was missing a different file:
./data/basic_data/test_datasets/wned-datasets/wikipedia/RawText/Electoral_division_of_Apsley'
Did you skip over documents that did not exist or could you please tell me how you handled this?
Thanks in advance!

Hmm, I am not sure why this happens. As far as i remember (might be wrong though), I skipped only over docs that have no annotations.

I found a similar issue . I had to perform two operations:

unzip it using my Ubuntu instance (I use Windows by default).
Windows recognizes dots at the end of filenames as file extensions, so I changed the files by removing the dot at the end (do not forget to change the XML file as well). I think this is purely a Windows problem, thanks for your quick response!


Remove retesteth rpc service and commands

PR description
retesteth is a legacy reference testing framework which besu has supported both via RPC service and t8n tool.
Accodring to the maintainer for retesteth, @winsvega, the rpc option is no longer used or needed.  Not only has retesteth has been t8n tool driven for some time, but also EF testing has trasitioned over to pyspec.
We can safely remove this rpc service and operation mode for besu.
Fixed Issue(s)

Thanks for sending a pull request! Have you done the following?

[ ] Checked out our contribution guidelines?
[ ] Considered documentation and added the doc-change-required label to this PR if updates are required.
[ ] Considered the changelog and included an update if required.
[ ] For database changes (e.g. KeyValueSegmentIdentifier) considered compatibility and performed forwards and backwards compatibility tests

Locally, you can run these tests to catch failures early:

[ ] unit tests: ./gradlew build
[ ] acceptance tests: ./gradlew acceptanceTest
[ ] integration tests: ./gradlew integrationTest
[ ] reference tests: ./gradlew ethereum:referenceTests:referenceTests

Yes, I remember since Cancun, you said tests via rpc couldn't work.
But we are talking about test rpc here right?
Test_setChainParams
Test_mineBlock
...

But we are talking about test rpc here right?
Test_setChainParams Test_mineBlock ...

Yes.  The retesteth service and subcommand started besu with those specific test_* RPC methods.  There shouldn't be any change in functionality for evmtool t8n or t8n-server commands


Debounce the hex input, give user time to enter +3 characters (#512)

Fixes #512
This adds a 750ms debounce to the custom hex inputs, which gives the user a little extra time to enter a custom value before the hex check is called, and the handleInput method applies the value. This avoids the issue of 3-character hex codes causing the handleInput event to fire prematurely (eg. The event fires at #fc0, applying #ffcc00, but I actually want to type #fc009f).
Debounce does not affect non hex inputs, or clicking on preset colours.
User can define their own value for the debounce via props if 750ms is too long or short for their use case. Docs updated with new prop details + default.

Is there an issue with this fix? Happy to tweak or consider other approaches as necessary, otherwise will close and look for an alternative

This looks good and makes sense to me. It seems like the CI isnt passing, happy to merge it in once you have fixed it.

Great, thanks. Looks like I missed a prop when catching up to the remote, my bad - failing test should be good now.

Would it be possible to get a new release to get this fixed?

how is this still not merged 😢

I'm not using react-color on anything now, but if this is still an issue I'm happy to take the time to tidy up this PR and fix the conflicts if I can get confirmation it would be merged.


Add Renaming of environments

Add support for changing environment names.
Two considerations

Changing env name in the imported environments
Resolving old env name in the imported Pulumi Config

Add support for changing environment names.
Two considerations

Changing env name in the imported environments
Resolving old env name in the imported Pulumi Config

I second this. It would be much nicer to be able to rename environments while they:

Automatically update any imports from other environments to the renamed name.
Maintain encryption of any secrets (fn::secret:) that were in place before the name.

Without the ability to rename or current state, we must

Create a new environment with a new name.
Remember or search out and manually update any imports from other environments.
Manually redo any secrets with plaintext values when creating the new environment.
Delete the old environment.

Added to epic https://github.com/pulumi/pulumi-service/issues/18145

For Pulumi config imports, would the list of stacks that need to be updated always be available so that users can change them later rather than doing it right when they change the environment name?


Added ANN interface and implementations

Added ANNMixin class to extend Recommender models with ANN functionality.
Added HnswlibMixin and NmslibHnswMixin which implement ANNMixin._build_ann_index  and ANNMixin._infer_ann_index methods. The first one is for dense vectors, the second one is for sparse vectors. To add ANN functionality (build and infer index) to the model, you need to inherit from HnswlibMixin or NmslibHnswMixin, and implement _get_ann_infer_params, _get_vectors_to_infer_ann_inner, _get_ann_build_params, _get_vectors_to_build_ann and _use_ann methods.
ANN classes implement _filter_seen functionality inside their methods.
Added functions for dumping and reading index file from hdfs.

lets go through this code at the next meeting as it is complicated


Create juped.mdx

I think this is right...

Thanks for your profile! After checking to see if v2 will play nice with master, we'll merge your pr!


week 3 review ticket

Math quiz
Design Process

I would give Eli a 2.7+ He has pretty much the same amount of work as Ryan, 3 quiz q's, his design is nice, however he doesn't have a score so this puts him below whatever Ryan would get, but his process is very in depth, well done!

I would give this a 2.7+, all requirements were met and the quiz is productive for his math class.

I would give this a 2.7+, All requirements were met and the quiz covered a well know subject.


Internal linking between chapters of progit2 is broken on git-scm.com only

For example, see this page from the first chapter, history.asc (here is the rendered version at git-scm.com). The asciidoc file contains the appropriate link <<_git_branching>> and 1-git-branching.asc has the correct corresponding anchor: [[_git_branching]] but the book as deployed on git-scm.com doesn't correctly build links between chapters.
I initially opened an Issue against the progit2 repository (https://github.com/progit/progit2/issues/369) but as @ben points out links are built correctly in the pdf version and this seems to be an issue with how git-scm.com is deployed.

This no longer seems to be an issue and should be closed.


[BUG]: Dev |  E-filing| update api error.

To Reproduce
Steps to reproduce the behavior:

Go to 'Dev'
enter all the details for case filing.
click on 'Submit case'.
See error

Reference link:
https://jam.dev/c/a95ff8ff-6096-4ab5-9ba1-72ddd98b03ac

Verified in Dev[sol] env, its working fine.
https://jam.dev/c/7ccc70f9-9642-48e8-9b0b-44a30c0868cf


Error still shows when code is correct with ElmjutsuDumMyM0Dul3.elm

I am on 9.9.2 now. I made a very basic Hello World elm file. It seems that after I add an import (Html in this case) the error I had about I am seeing String...I only know how to handle Html persists even after the import was added. It also adds a file called ElmjutsuDumMyM0DuL3.elm to the project folder. I receive no other error in the console. The file ElmjustsuDumMyM0DuL3.elm then continually add the line -- exposing (..) every 10 seconds or so I had 10 in about two minutes.

works fine on an older version of Atom. ugggh


Exclude processors from default Handler Interceptors configuration

Enhancement Description
It would be beneficial if the EventProcessingConfigurer allowed a way to remove/exclude default MessageHandlerInterceptors from a processor.
Current Behaviour
Whenever the EventProcessingConfigurer#registerDefaultHandlerInterceptor operation is invoked, there's no means to remove the default interceptors from a processor.
Wanted Behaviour
Provide a way to exclude processors from the default handler interceptor registration.
Or provide a way to remove default handler interceptor registration afterward.
Possible Workarounds
Make the default configured interceptors smart enough to ignore some processors.

Completely forgot that the EventProcessingConfigurer#registerDefaultHandlerInterceptor operation allows returning a null instance, in which case the registration is ignored.
Hence, if certain Event Processors should be excluded from containing default handler interceptors, the provided method should include a construction filter to return null instead.
In future releases, it would be nice if the EventProcessingConfigurer#registerDefaultHandlerInterceptor BiFunction would return an Optional. That would be cleaner than using null.
For now though, excluding interceptors is possible, and hence this issue can be closed.


feat: Add Beekeeper Studio

Project URL

https://www.beekeeperstudio.io
Category

Database
Description

Adds entry for Beekeeper Studio, a SQL database editor and manager GUI app.
Why it should be included to Awesome macOS open source applications  (optional)
Beekeeper Studio is the best GUI DB app I've used so far – setup is easy, it's aesthetically well-designed, and it supports a variety of SQL implementations, so I don't need to install a separate app for each one.
Checklist

[x] Edit applications.json instead of README.md.
[x] Only one project/change is in this pull request
[x] Screenshots(s) added if any
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

@jidicula Thank you! 🚀


enhance eslint-plugin-react jsx-props-no-spread-multi to report member expressions

Currently, on jsx-props-no-spread-multi will report on the following code:
<Test {...props} {...props} />

but it will not report on
<Test {...props.foo} {...props.foo} />

we should enhance the rule to support this case

fixed in https://github.com/oxc-project/oxc/pull/4981


Update Function Name to Reflect Thicket PR97

Matches changes in https://github.com/LLNL/thicket/pull/97

Pulled into #32


Devops/docker

Checklist

[ ] Tests have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce?
Add Dockerfile in the repository to make docker use obvious/easier for users.
What is the current behavior? What is the new behavior?
The official docker image is not up-to-date and does not point to any repository.
Adding the dockerfile to this repository may be the easy way to keep docker image in sync.
Does this PR introduce a breaking change?
Nope :D

All great points @XVincentX.
Just one thing:

This is missing the CI automation to publish the new image when we release Prism.

I think that would be a job for us to handle separately. Making a docker image means people can clone this down and run it with docker, that is a good step on its own. Then we can push those images out somewhere else, maybe closer to v3.0 final.

All right so maybe what we can do here is to create and merge a Dockerfile that builds the image starting from the source code in the repository directly of trying to create a production image from the artefacts, whose process to get accepted is going to be a little bit harder.
@MikeLebeau What do you think? If you're up for the task, I can give you some other suggestions and make it happen!

Yo !
Yeah! I am OK to take this point 😄
Other suggestions ? I'm listening 😄
OK, I have seen the git dependency on jsonpath.
What do you recommend :
- Build prism before build docker ? Or build prism inside docker ?
- Once I have build prism (with yarn build), how can I embed the libs within docker and make it work ?

jsonpath is a special case, because we use a fork pegged to a specific commit. We are erradicating this from our ecosystem one project at a time but we gotta do it for prism too. https://github.com/stoplightio/spectral/pull/257
Fancy a challenge? 😅

Hey @MikeLebeau ,
this is not going to be exactly that trivial, since Prism is a multi package and needs a compilation step as well. We're going to need to leverage the MultiStage build feature.
The docker file should resemble something like this:
FROM node:12 as compiler

WORKDIR /usr/src/prism

COPY package.json yarn.lock packages/* /usr/src/prism/

RUN yarn
RUN yarn build

FROM node:12 as dependencies

ENV NODE_ENV production
COPY package.json ./package.json
RUN yarn

FROM node:12-alpine

WORKDIR /usr/src/prism
COPY --from=dependencies /usr/src/prism/node_modules /usr/src/prism/node_modules
COPY --from=compiler /usr/src/prism/**/dist /usr/src/prism/**/dist

Not exactly a 30 minutes job :)

Hey @MikeLebeau ,
Don't hesitate if you need some help :)
I've modified a little bit the dockerfile provided by @XVincentX
I don't understand really well what you try to achieve with
COPY --from=compiler /usr/src/prism/**/dist /usr/src/prism/**/dist
The double asterisk don't work with the copy command. (It doesn't have the same behavior as the cp command)
For the dependencies stage there's no direct dependencies in the package.json file so nothing is really happening on this stage. And so this COPY command is useless ? (Or I'm completly mistaken and I don't understand really well how to build prism thats would be pretty likely the case)
COPY --from=dependencies /usr/src/prism/node_modules /usr/src/prism/node_modules
FROM node:12 as compiler

WORKDIR /usr/src/prism

COPY package.json yarn.lock /usr/src/prism/
COPY packages /usr/src/prism/packages/
RUN yarn
RUN yarn run build

FROM node:12 as dependencies

WORKDIR /usr/src/prism

ENV NODE_ENV production
COPY package.json /usr/src/prism/
RUN yarn

FROM node:12-alpine

WORKDIR /usr/src/prism
COPY --from=dependencies /usr/src/prism/node_modules /usr/src/prism/node_modules/
COPY --from=compiler /usr/src/prism /usr/src/prism/build/

Hey @KillianH,
thanks for looking into this!

The double asterisk don't work with the copy command.

I know :) As I mentioned in the comment above, that was what the Dockerfile should look like, it was not a complete and working file. The idea was to show @MikeLebeau the direction and the intentions of the file.

For the dependencies stage there's no direct dependencies in the package.json file so nothing is really happening on this stage.

I'm not too sure if I understand correctly. When running yarn on a workspace it will follow the yarn.lock file that has got all the dependencies, included the one from the inner package.json files.
In general the idea is:

Compile from TypeScript
Install prod dependencies
Copy stuff in a cleaner container and make it run

Hey what's up @KillianH ?!
Thanks for your help 😄
Yes I have seen the double asterisk mistake ;D
And for the dependencies stage, Yes, as said @XVincentX yarn will pull all dependencies in yarn.lock file

Hey @KillianH,
thanks for looking into this!

The double asterisk don't work with the copy command.

I know :) As I mentioned in the comment above, that was what the Dockerfile should look like, it was not a complete and working file. The idea was to show @MikeLebeau the direction and the intentions of the file.

For the dependencies stage there's no direct dependencies in the package.json file so nothing is really happening on this stage.

I'm not too sure if I understand correctly. When running yarn on a workspace it will follow the yarn.lock file that has got all the dependencies, included the one from the inner package.json files.
In general the idea is:

Compile from TypeScript
Install prod dependencies
Copy stuff in a cleaner container and make it run

Oh I was missing some files that's why :)
So something more like this ?

Hey :sunglasses:

Ok! I can build and run this docker image !
I've encountered some strange problems :
- If I run npm install tsconfig-paths/register after yarn, @oclif/command contains only node_modules folder...
- I need to install `globby` manually

Have you some more advises ? Dockerfile improvement ?

Hey @MikeLebeau and @KillianH,
I went ahead and I made it work. As you can probably see from the new file, it was a little bit more complicated than I was originally thinking, mostly because the project is split into multiple directories and collecting the dist files here and there with their package.json is a little bit repetitive :)

I understand a little bit better the prism architecture like this haha.
I'll try this out :)

Do not make the file scary you though — this is an image built from sources, which probably we're not going to use anyway.
The production docker image will effectively a scratch with the binary built in inside, it's going to be much easier :)


[Feature Request]: Failed Logins in audit log

Describe the feature you'd like
Additional event filter in audit log for failed logins
Describe the benefits this feature would bring to BookStack users

helpful for admins fixing Login problems of other users
helpful for preventing unauthorized access to bookstack (e.g. searching for failed logins in bookstack and blocking specific ip addresses / network ranges in server firewall)

Additional context
No response

Hi @cal940, Thanks for the request.
I generally attempt to keep our internal activity/audit-log tracking to activities that modify system state in some way. Adding logging for this kind of thing can open up other areas of potential abuse and concern (For example, someone abusing the login form with many failed logins to fill the audit log and cause a mass of writes to the database).
We do already have separate specific functionality for logging failed logins:
https://www.bookstackapp.com/docs/admin/security/#failed-access-logging
This is done in a way which can then actually be used by other system tools such as Fail2Ban or manually inspected if desired.

Thanks for the workaround. I will check this out on my server.


not worked for me

salam man package shoma ro nasb kardam faghat datepicker baz mishe vali ghabel taghir dadan date nist
hata demo khode shoma ham vasam kar nemikone
in version chrome man hast
Version 92.0.4515.131 (Official Build) (64-bit)

I just did what you said in toturials

I tested live demo too ,it didn't work for me

I can't reproduce the issue that you have. Create a demo of what you did in codesandbox.

I tested live demo too ,it didn't work for me

May you record a video when you are scrolling inside this demo and upload that here?

Hello Dear,
I solve my problem
thank u
On Sat, Aug 28, 2021 at 10:57 AM Ali Torki @.***> wrote:

Closed #3
https://github.com/persian-tools/persian-mobile-datepicker/issues/3.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/persian-tools/persian-mobile-datepicker/issues/3#event-5221375610,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMQFBJGH6XYYF6HFLL7LXYLT7B6VDANCNFSM5CAUQ3TA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

What was that?

hello Dear,
I have problem for jalali date , because I use toIsoDateSting() , it change
the selected date and I change it to toLocaleDateSting() and my problem
solved
فاطمه فرهی
On Fri, Sep 10, 2021 at 2:44 PM Ali Torki @.***> wrote:

What was that?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/persian-tools/persian-mobile-datepicker/issues/3#issuecomment-916792901,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMQFBJHP64ZA6UWOA7QJIOLUBHK63ANCNFSM5CAUQ3TA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


BLD: Added h5py and hdf5 for SWMR

Attn @ericdill
cc: @tacaswell @danielballan
This adds h5py and hdf5 libraries that work with SWMR. I have built and they work for me ok. Could you please have a look and if good merge, I need these packages on CSX. Thanks!

lgtm. thanks @stuwilkins


Cities_light_city.subregion_id Incorrect

I think I may have found an issue with how the SubRegion ID is populated in the "Cities_light_city" table. I have used the test project in the main branch and also the tagged 3.7.0 to replicate this issue. I am unfortunately not super confident in my python ability, but I am trying to figure out what is happening but I just have not been able to figure it out yet.
Using the below query:
select cities_light_country.name as "Country", cities_light_region.name as "Region", cities_light_subregion.name As "SubRegion", cities_light_city.name as "City"
from cities_light_city
join cities_light_country ON cities_light_country.id = cities_light_city.country_id
join cities_light_region ON cities_light_region.id = cities_light_city.region_id
join cities_light_subregion ON cities_light_subregion.id = cities_light_city.subregion_id
Where cities_light_city.name like "%Los Angeles%"

I expect to get from that query:

City
SubRegion
Region
City

Los Angeles
Los Angeles County
California
United States

East Los Angeles
Los Angeles County
California
United States

But instead, what we actually get is:

City
SubRegion
Region
City

Los Angeles
Dubois County
California
United States

East Los Angeles
Dubois County
California
United States

This is not correct because neither Los Angeles nor East Los Angeles is in Dubois County (Dubois County is in Indiana).
It seems like  def _get_subregion_id is filtering for the country id and sub region id but not the Region ID or somthing.

I think I may have figured it out. I am not super confident though.
    def _clear_identity_maps(self):
        """Clear identity maps and free some memory."""
        if getattr(self, '_country_codes', False):
            del self._country_codes
        if getattr(self, '_region_codes', False):
            del self._region_codes
        if getattr(self, '_subregion_codes', False):
            del self._subregion_codes
        self._country_codes = {}
        self._region_codes = collections.defaultdict(dict)
+        self._subregion_codes = collections.defaultdict(lambda: collections.defaultdict(dict))
-        self._subregion_codes = collections.defaultdict(dict)

and
    def _get_subregion_id(self, country_code2, region_id, subregion_id):
        """
        Simple lazy identity map for (country_code2, region_id,
        subregion_id)->subregion
        """
        country_id = self._get_country_id(country_code2)
        if region_id not in self._region_codes[country_id]:
            self._region_codes[country_id][region_id] = Region.objects.get(
                country_id=country_id, geoname_code=region_id).pk

+        if subregion_id not in self._subregion_codes[country_id][region_id]:
+            self._subregion_codes[country_id][region_id][subregion_id] = \
-        if subregion_id not in self._subregion_codes[country_id]:
-            self._subregion_codes[country_id][subregion_id] = \
                SubRegion.objects.get(
                    region_id=self._region_codes[country_id][region_id],
                    geoname_code=subregion_id).pk
+        return self._subregion_codes[country_id][region_id][subregion_id]
-        return self._subregion_codes[country_id][subregion_id]

But at the very least the query I used before now shows correctly that Los Angeles is in Los Angeles County.

City
SubRegion
Region
City

Los Angeles
Los Angeles County
California
United States

East Los Angeles
Los Angeles County
California
United States

@thisisnotmyuserid Thanks for the fix I checked in the code and you are right.
I did the copy on the code with your improvements and created a pull request with your changes and others with version 3.7.1.


Text Field backspace does not delete the last character when maxLength is specified

Note: I ran this in the Dartpad. there's no need to create a new flutter project.

Run flutter create bug.
Update the files as follows: gist.github.com/b6409e10de32b280b8938aa75364fa7b

///main.dart
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  final TextEditingController _controller = TextEditingController();
  void _incrementCounter() {
    setState(() {
      _counter++;
    });
  }

  @override
  void dispose(){
    _controller.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            TextField(
            decoration: InputDecoration(
            labelText: "Type more than 9 Characters, then try to use the backspace key",
            ),
            controller: _controller,
            onChanged: (value){

              print(_controller.text);
            },
            maxLength: 9,
            ),
          ],
        ),
      ),
    );
  }
}

After entering more than specified maximum length characters in the textfield. the backspace won't delete the last character.

Expected results:
Should Delete the last Character based on the specified maxLength property
Actual results:
Did not delete the last character.

Logs

Being fixed by #67892

Thanks! I will close this now.


LexicalSyntacticFeaturizer computes unnecessary operations !

Description of Problem:
LexicalSyntacticFeaturizer computes unnecessary operations when creating features.
https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py#L184
In the '_tokens_to_features' function, tokens are converted to appropriate features.
However, when a window of features is given and there are common feature names among window elements,
the same function is applied on the same token unnecessarily.
The function is applied in the following line.
https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py#L268
value = self.function_dict[feature](token)

Overview of the Solution:
In each sentence, keep a dictionary for tokens. If a function is applied on a token, keep the result in a dictionary.
Probably using dictionary keys as a tuple of token text and given function would work. And the value will be the result.
Actually, there should not be a dictionary for each sentence. There could be one dictionary for all training data, since result will be same when the token text and the function are given.
This solution is somehow similar to Dynamic Programming in terms of keeping the result, and using it over and over when needed.
Examples :
In my configuration file, I am a little bit greedy about this layer.
My configuration looks like the following.
The window size is 7 in the configuration.
- name: LexicalSyntacticFeaturizer
      "features": [
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
        ["low", "prefix5", "prefix2", "suffix5", "suffix3", "suffix2", "suffix1", "upper", "title", "digit",],
      ]

In my training dataset, there are 60k+ sentences. And this layer tooks around 26 minutes.
When I set the window size as 1, the layer tooks around 4 minutes.
Therefore, keeping the results of functions only in each sentence would improve my configuration from 26min to 4min.
I think applying this operation to whole training data would let to less than 1 minute of layer processing time since words are common among sentences.
(All operations in the configuration would be applied once for each token in the vocabulary.)

Thanks for submitting this feature request 🚀 @melindaloubser1 will get back to you about it soon! ✨

I have been thinking about the situation, in the question, I assumed that the bottleneck is processing the function on a token. I am also questioning this now.
If it is the bottleneck, the proposed solution would work, if not, what can be the bottleneck?
For example, CountVectorizer layer takes around 2 minutes, so, LexicalSyntacticFeaturizer should also take similar duration.

@alopez what is the status of this issue?

@alopez what is the status of this issue?


[5.3] Provide a notification channel contract

Provide a notification channel contract

I purposefully left this off because I don't see a big need for defining one. If your class contains the send method it will be compatible if it doesn't it will throw an error. The interface only adds additional file loading.


Workspace Editor Page Design Updates

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/12257
Tests

See QA Steps

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

QA Steps

Note: I'm sorry in advance. The testing steps are the same on all platforms. There should be no changes to functionality with any of these code changes. I'm a little unsure if these will actually get to all the screens - I had to hack a bit locally to make it work - so please reach out to me if you need assistance and we can work through it together.

Log into an account without a VBA.

Create a new Workspace and go to the Workspace Settings

Click the question mark in the top right of the Workspace Settings view and confirm that the design matches 1 in the screenshots file, and all buttons/links work as expected.

Go to Request a setup call and confirm that the design matches 2 in the screenshots file, and all buttons/links work as expected.

Go to Issue cards and confirm that the design matches 10 in the screenshots file, and all buttons/links work as expected.
Go to Reimburse expenses and confirm that the design matches 16, 17, and 19 in the screenshots file, and all buttons/links work as expected.
Go to Pay bills and confirm that the design matches 7 and 8 in the screenshots file, and all buttons/links work as expected.
Go to Send invoices and confirm that the design matches 13 and 14 in the screenshots file, and all buttons/links work as expected.
Go to Book travel and confirm that the design matches 20 in the screenshots file, and all buttons/links work as expected.
Go to Connect bank account and confirm that the design matches 3 in the screenshots file, and all buttons/links work as expected.
Connect a bank account via Plaid and continue to the end of the flow, where it asks you to add a work email address. Confirm that the design matches 5 in the screenshots file, and all buttons/links work as expected
Cancel adding that bank account and restart the connection manually.
When you get to the flow asking for verification amounts, leave the flow.
Go back into Workspace settings and click Connect bank account again. Confirm that the design matches 4 in the screenshots file, and all buttons/links work as expected.
Return to the validation screen and enter in the amounts and continue. Confirm that the design matches 6 in the screenshots file, and all buttons/links work as expected.

Log into an account/workspace with a VBA.

Go to the Workspace Settings

Go to Issue cards and confirm that the design matches 11 in the screenshots file, and all buttons/links work as expected.
Go to Reimburse expenses and confirm that the design matches 16, 17, and 18 in the screenshots file, and all buttons/links work as expected.
Go to Pay bills and confirm that the design matches 7 and 9 in the screenshots file, and all buttons/links work as expected.
Go to Send invoices and confirm that the design matches 13 and 15 in the screenshots file, and all buttons/links work as expected.
Go to Book travel and confirm that the design matches 21 in the screenshots file, and all buttons/links work as expected.

Log into an account/workspace with a VBA and an Expensify Card

Go to the Workspace settings
Go to Issue cards and confirm that the design matches 12 in the screenshots file, and all buttons/links work as expected.

Log into an account/workspace with an Expensify Card.

After verifying your personal information, confirm that the design matches 22 in the screenshots file, and all buttons/links work as expected.

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

Offline Steps

No changes are expected, offline elements should be greyed out; errors on relaunch should be displayed as before.

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] iOS / native
[x] Android / native
[x] iOS / Safari
[x] Android / Chrome
[x] MacOS / Chrome
[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 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 was added in all src/languages/* files
[x] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[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 a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[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(themeColors.componentBG)

[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] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

PR Reviewer Checklist
The reviewer will copy/paste it into a new comment and complete it after the author checklist is completed

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] 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)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

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

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

[ ] 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)
[ ] 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.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots

All screenshots are available here: https://www.dropbox.com/s/1nv9cicwl758ea7/Screenshots.zip?dl=0
Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

Updated! I think I caught everything in the Figma you shared. There are a couple more places in settings where we use the same Section component, which I think are also the places we might want to update illustrations. They are:

Enable Step (I think this is in the bank account setup flow but I'm not sure)
Validation Step (I think this is in the bank account setup flow but I'm not sure)
Workspace Bank Account Page
Workspace Bills VBA View
Workspace Card No VBA View
Workspace Card VBA No ECard View
Workspace Card VBA With ECard View
Workspace Invoices VBA View
Workspace Reimburse View (there's a fourth card for if they have a VBA)
Workspace Travel VBA View

I think all of those will show up on an account that has a bank account connected - except for Workspace Card No VBA View which you may be able to get to now. I think the Card is referencing the Expensify card? I will try to get some screenshots of the existing design of the others so you can work on what you want instead!
There are also a couple places we use Sections that AREN'T settings related. I think it still would likely be worth changing these as well, but would love to know what you think. If we do update them, I'll go through this code and put all the styles into the component as defaults instead of passing it each time here. Those places are:

Get Assistance Page
Request Call Page

Also, I didn't update the button shapes (since that will be global, right?) or the icons (since I don't have the icons yet) but happy to do either/both if we have the goods.
And, let me know if you want me to rename any of the illustrations; these should mostly be fine but some are a little wonky (if we're eventually going to remove the existing ones we can be a little more broad in how we name these).
Lastly, there are some merge conflicts, I'll work on those separately.

Yup, no worries on the button shape or icons just yet.
For those sections you referenced, can you share screenshots of them here?

@shawnborton here you go! There are a couple I couldn't quite figure out how to get at yet, so I screenshotted the code (that notes what icons are used). I realize that's not super helpful but figured you could start on the others and then I will keep figuring out how to see the remaining four.
Remaining Sections.zip
Also please remind me that in this PR i changed the background color of the sections to blue so I could see them better, so I need to update that before we go much further.

Here's another batch of illustrations to use: MoreSimpleIllustrations.zip
I tried going through your screenshots in the same Figma file... here are some proposed ideas:

We might want to change the headline for this one, the equals sign made the break a bit awkward:

Awesome, thanks @shawnborton ! I've updated all of the screens and so I'm going to go through and screenshot their final forms (and really try to get those last few). Now that we have updated ALL of them, I'm going to switch out the styling changes from each individual instance into the main <Section> component, too. Will post screenshots here, and then I think we just hold for the new colors/icons!

Sounds great, thanks for the update! I'm planning to do a weekly update for the overall branding tasks in the open source room tomorrow, so let me know where we're at by tomorrow morning when you get a moment.

Haven't had time for anything yet but things are slowing down outside of this PR so I plan to have it completed and ready for final review later today!

Sounds great, thanks for the update!

 Started going through this and will be able to finish tomorrow.

Just committing some more updates here. Just the last four remaining (the harder ones to figure out where they actually exist... Can track progress here: https://docs.google.com/spreadsheets/d/1NEe1pc-1Wy2f0gpSCPPAb0SsHSAeXub56BuX_6-oaBU/edit#gid=0

Updated and ready for review! I believe this should remain on hold until the new colors/icons are ready because I'll likely have to make some final changes at that point. But, it's all synced up with the new style in all the sections.
Screenshots, labelled by the number noted in the Google Sheet are here - all 138 of them. There are also a couple marked "OLD" which is for places I was able to get what they looked like before.
Lastly, I didn't make that copy change (the = one) because I figured we should wait for the new fonts in case the line break was different. I believe I made all the other changes, but take a look at the screenshots to make sure - you only really have to look at one of the platforms, they're pretty much all the same.

New reviewers - I think we can wait for review for now until @shawnborton and @grgia take a look but I wanted to take this out of draft to be safe.

Oops @shawnborton I found one more that definitely needs an update:

Right now that's an animated icon (confetti pop) but obviously is the wrong size/background color, so something in the new style is probably preferable even without animation.

How about this?

No need to animate this, we can leave it as a static icon to match the others.
simple-illustration__thumbsupstars.svg.zip

Updated to include that new image - thanks!

This is looking great, nice work Daniel!
The only small thing I noticed was on the pages below, it seems like the option rows are a bit too close together. I think they should all be 64px tall but have 0px spacing in between each of them. Let me know if that makes sense!

It looks fine here though:

Okay, this looks SO GOOD

I'm taking this off hold but only so that we can merge next week if we so desire, once we decide on a plan!

Any reason why we couldn't merge this now, assuming everything looks good? cc @grgia @Luke9389 @JmillsExpensify

IMO Since it's fairly contained, if it tests well on both current and dark theme, I don't see why not. If we decide to do that, I could merge the new IOU Preview card style too.

That sounds great to me!

We should merge main into this PR, this PR still contains the wrong colors that @grgia fixed

Reviewing like this may lead to confusions on if this is really breaking something or not.

That is as expected! That's the only place that doesn't have the card. Figma is here: https://www.figma.com/file/OgM6vzR98Qnr1gdmZOQPKz/Implement-Our-New-Brand?node-id=173%3A19885 and Screenshots are dropbox.com/s/1nv9cicwl758ea7/Screenshots.zip?dl=0
I will merge main and then we may need someone else to carry this over the line - about to run out to a flight!

Ha! you are right, it seems to be the only one not wrapped by a card. Is this intentional @shawnborton ?
@grgia do you want to take this over the finishing line in case there is anything else to do? otherwise I can give it a try.

Yes, it is intentional!

Yeah I think we can definitely merge this now. It's completely independent of the other changes. 👍

+1. It's also a flow few users hit. Excited to get this on out!

@aldo-expensify I applied your suggestions, thank you! I can't build on this device (not work computer) so if you have time could you quickly check those two cards (Enable Step - both with and without the Expensify Card on the account - and Validation Step - "let's chat" stage) and make sure they still match the designs in the Figma? Really appreciate you taking the time to look through all these - I know it's a lot!

That's a lot of screens it would take more time to test this one, I'll do my best to test this one with a couple of days!

@aldo-expensify I applied your suggestions, thank you! I can't build on this device (not work computer) so if you have time could you quickly check those two cards (Enable Step - both with and without the Expensify Card on the account - and Validation Step - "let's chat" stage) and make sure they still match the designs in the Figma? Really appreciate you taking the time to look through all these - I know it's a lot!

Thanks @dangrous , I'll be reviewing this today. Enjoy your time off!

@JmillsExpensify I don't think this is WAQ, should we postpone spending time on reviewing this? The PR may be ready, but reviewing it thoroughly and providing screenshots of everything may be very time consuming considering the number of views affected.

This is part of the branding initiative of the WAQ milestone.

@shawnborton thanks, then I'll review today!

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] 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)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

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

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

[ ] 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)
[ ] 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.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

@grgia do you want to review before I merge?

@Santhosh-Sellavel all you!

Thanks for the bump on it already!

Reviewer Checklist

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] 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)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] 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).
[ ] I verified that comments were added to code that is not self explanatory
[ ] 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.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] 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.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] 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
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

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

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

[ ] 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)
[ ] 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.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://user-images.githubusercontent.com/85645967/203452081-c8a45516-714c-4c83-8c86-05954ec7a220.mov

Mobile Web - Chrome
https://user-images.githubusercontent.com/85645967/203452607-62f4fe77-ce2c-4772-9608-ca47aa76a404.mp4

Mobile Web - Safari
https://user-images.githubusercontent.com/85645967/203451990-432d2b20-7d81-42ab-b2d6-f702d81a81d4.MP4

Desktop
https://user-images.githubusercontent.com/85645967/203451967-53036796-d418-46f8-9e29-9e5f8e59adbe.mov

iOS & Android
https://user-images.githubusercontent.com/85645967/203451931-69ded98a-9826-4ff9-95b0-655e78e757e9.mov

Is this expected on offline, shouldn't buttons be disabled?
cc: @shawnborton

Hmm good catch, how does it currently work on the main branch?

Same behaviour on main too!

Okay cool, then no worries if it's the same thing on main.

Should we log a bug for it @shawnborton ?

@Santhosh-Sellavel can't hurt, you can bring that up in #expensify-bugs

If the bug is logged, am I good to merge this?

Lol, now I see that Luke posted "Buttons merged", so I guess that was about a different PR

Yup, let’s do it!
On Wed, Nov 23, 2022 at 10:47 AM Aldo Canepa Garay @.***>
wrote:

@shawnborton https://github.com/shawnborton from this slack
https://expensify.slack.com/archives/C01GTK53T8Q/p1669147855166289
conversation , I understand that we should proceed with the merge, right?
—
Reply to this email directly, view it on GitHub
https://github.com/Expensify/App/pull/12419#issuecomment-1325515645, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AARWH5R3RLD2IVAOVC3UDLLWJZRCHANCNFSM6AAAAAARVUSZKQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Done!

: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 @aldo-expensify in version: 1.2.31-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

The production deploy comment failed for this PR, but this was deployed to production on v1.2.32-2 on Nov 28.

As requested in https://github.com/Expensify/App/issues/13318#issuecomment-1349860737 - commenting here. This was not really a bug per se so we don't need a new process. Generally I guess we should make sure that if multiple PRs are affecting something (say, a redesign), we make sure that all of them are considered in each. In this case, we were matching the style of the old buttons, and not the new ones.


adding execute-as-user feature.  refer to documentation on usage details

A lot cleaner commit messages.
Thanks to David Chen for all the tips and tricks!

also see https://github.com/azkaban/azkaban/pull/517 for previous comments and feedbacks


[release-0.20] Trigger staging bundle for v0.20.9

Description of changes:
Trigger staging bundle for patch release v0.20.9
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve

/lgtm
/approve


Lambda GraphQL resolver results in UPDATE_FAILED

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
18.12.1
Amplify CLI Version
12.1.1
What operating system are you using?
Ubuntu (WSL)
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
Just one manual change: I've attached a policy to the function excecution role and a trigger that is currently disabled.
Describe the bug
In a currently working schema I add a Lambda Graphql resolver but fails to deploy using amplify push.
 type Mutation {   saveModel(object: MyModelType): String @function(name:"DoStuff-${env}") }
Note: MyModelType its an @model. Don't know if this might be an issue.
Error:
🛑 The following resources failed to deploy:
Resource Name: GraphQLAPITransformerSchema3CB2AE18 (AWS::AppSync::GraphQLSchema)
Event Type: update
Reason: Schema Creation Status is FAILED with details: Internal Failure while saving the schema.
🛑 Resource is not in the state stackUpdateComplete
Name: GraphQLAPITransformerSchema3CB2AE18 (AWS::AppSync::GraphQLSchema), Event Type: update, Reason: Schema Creation Status is FAILED with details: Internal Failure while saving the schema., IsCustomResource: false
In cloudformation stack I find an event stating:
Currently in UPDATE_ROLLBACK_IN_PROGRESS with reason: The following resource(s) failed to create: [FunctionDirectiveStack]
Expected behavior
Lambda resolver is deployed
Reproduction steps
Add a lambda resolver to schema.graphql
run amplify push with amplify cli
Project Identifier
No response
Log output

# Put your logs below this line

Additional information
I'm working with us-east-1
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

Hi @Choquenizer 👋, Thanks for raising this issue. We are working on reproducing the issue. Could you please run below command and send us the report amplify diagnose --send-report and share the project identifier with us?
Please refer here

Hi Anil,
This is the project identifier: e27dc722521eba84f90adcd5ec5b3297
Thank you for you interest

@Choquenizer can you also check in the cloudformation logs in the AWS console for that failed lambda resolver update? There is a tab in that console called Events that should provide a more helpful error message that leads us to the cause of the issue.

Hi Chris,
The complete event message is:
Embedded stack arn:aws:cloudformation:us-east-1:722223182257:stack/amplify-tramitesamplify-dev-153653-apitramitesamplify-1ARUYWOY0EYCC/0fe2d390-8878-11ed-ac66-0e2e23c1a04f was not successfully updated. Currently in UPDATE_ROLLBACK_IN_PROGRESS with reason: The following resource(s) failed to create: [FunctionDirectiveStack]. The following resource(s) failed to update: [CodigoFormulaSearch, GraphQLAPIDefaultApiKey215A6DD7].

Hi,
The problem is fixed.
I had a few stacks in DELETE_FAILED status since some time ago I've deleted some functions but forgot to delete custom permission policies to they're respective roles.
I've deleted those stacks (manually removed the permission policies before) and now amplify push works fine.
Thanks!


Feedback for “Windows 1click Installer” : Can't install it

I can`t install this. I once install a lama cleaner using “Windows 1click Installer” but by my mistake, I moved the installed lama cleaner folder and I found it is not working anymore. So, I deleted this folder and unziped “Windows 1click Installer” file and install new.
As instruction, I double clicked "win_config.bat" and there was some errors but web pages was appears good.
After save configurations, I doble clicked "win_start.bat" but it is show error message very quick.
This is it.

Platform: Windows-10-10.0.22621-SP0
Python version: 3.10.6
torch: 2.0.1
torchvision: 0.15.2
Pillow: 10.0.0
diffusers: 0.16.1
transformers: 4.27.4
opencv-python: <IP_ADDRESS>
xformers: 0.0.16
accelerate: N/A
lama-cleaner: 1.2.2
rembg: 2.0.50
realesrgan: 0.3.0
gfpgan: 1.3.8

2023-07-14 13:32:34.408 | INFO     | lama_cleaner.parse_args:parse_args:193 - Loading installer config from C:\Users\johnber\Downloads\Compressed\lama-cleaner\win_start.bat..\installer_config.json
Traceback (most recent call last):
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\runpy.py", line 196, in run_module_as_main
return run_code(code, main_globals, None,
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\Scripts\lama-cleaner.exe_main.py", line 7, in
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\site-packages\lama_cleaner_init.py", line 13, in entry_point
args = parse_args()
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\site-packages\lama_cleaner\parse_args.py", line 206, in parse_args
import torch
File "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\site-packages\torch_init.py", line 122, in
raise err
OSError: [WinError 127] The specified procedure was not found. Error loading "C:\Users\johnber\Downloads\Compressed\lama-cleaner\installer\lib\site-packages\torch\lib\c10_cuda.dll" or one of its dependencies.
Press any key to continue . . .
How can I solve this problem? I attach screen shots that shown during execute "win_config.bat", too.

I solve this problem with "--no-cache" option to setup torch 1.13.1, instead 2.0.1.


Replace landing page screen shots

Convert the jpgs to pngs for better clarity.

@KatieMcEvoy - After looking at the original full-size image, they look a bit muddy/blurry. Are you able to provide a higher quality image to start with?


Lamptest & Mex critical associations support

This PR would add
1.Lamp test support from pldm
2. Mex critical associations for health rollup function.
3.Also removes some unwanted trace

upstream commits:
https://gerrit.openbmc-project.xyz/c/openbmc/pldm/+/49619
https://gerrit.openbmc-project.xyz/c/openbmc/pldm/+/40373
https://gerrit.openbmc-project.xyz/c/openbmc/pldm/+/48531


Capture frame every nth action step

Many graphs that rely on recursion (multiple ticker/action steps) do not visually update every action step, but rather every nth action step. It would be great if we had a setting in video creator to only capture a frame every nth step to make rendering these graphs practical.

Related: https://github.com/DesModder/DesModder/issues/130 ("If" condition for capture of frames)


[ Issues 10788 ] Fixed  flaky test AdminApiTest.

Fixes #10788
Master Issue: #10788
Motivation
See this issue: https://github.com/apache/pulsar/issues/10788
Cause
Due to NamespaceService split and updateNamespaceBundles may fail because of concurrent write to zookeeper,
And exceeded the maximum number of retries.
Source code is here:

NamespaceService 838:856

Modifications
Since this error is less likely to occur, we can try to retry the test in case of an error to solve the problem.

@lhotari  @eolivelli If you have time, can you please take a look at this PR~ :)


Fix gaps of monitoring probes on all components

Listing the few that don't have any livliness health checks
operator (namespace: hypershift) livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
cluster-api - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
cluster-autoscaler - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
cluster-policy-controller - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
cluster-version-operator - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
control-plane-operator - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
hosted-cluster-config-operator -livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
kube-scheduler - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.
openshift-controller-manager - livliness period 240 seconds. readiness period 30. Failure threshold 3 for each.

livliness and readiness can use same endpoint if applicable (same http route)
Ideally there is some sort of continous monitoring on these to help ensure they are functioning overtime

Good ones to start with are operator, control-plane-operator, and hosted-cluster-config-operator

relevant code for operator:
https://github.com/openshift/hypershift/blob/main/cmd/install/assets/hypershift_operator.go#L122
relevant code for control-plane-operator:
https://github.com/openshift/hypershift/blob/main/hypershift-operator/controllers/hostedcluster/hostedcluster_controller.go#L1837
relevant code for hosted-cluster-config-operator:
https://github.com/openshift/hypershift/blob/6411565039a5d696f6fd8e6113b57dc5bbe909e1/control-plane-operator/controllers/hostedcontrolplane/configoperator/reconcile.go#L160
(just for general pointers may need code changes elsewhere after testing)

Example code link to where to add livliness probe for hosted-cluster-config-operator:
https://github.com/openshift/hypershift/blob/main/control-plane-operator/controllers/hostedcontrolplane/configoperator/params.go#L42
And example livliness probe for kas:
https://github.com/openshift/hypershift/blob/main/control-plane-operator/controllers/hostedcontrolplane/kas/params.go#L153-L165

/assign @hasueki

/unassign @hasueki
/assign @michael-topchiev

I do not see metrics or health endpoints in cluster-policy-controller and could not find them in its source code either (https://github.com/openshift/cluster-policy-controller). Adding the probes to cluster-policy-controller will probably require modifying cluster-policy-controller code.

cluster-version-operator does not have any listeners, neither for metrics nor for liveness/readiness probes. I do not see the probes its source code either (https://github.com/openshift/cluster-version-operator). Adding the probes to cluster-version-operator will probably require modifying cluster-version-operator code.

Remaining components without healthcheck
machine-approver
openshift-controller-manager
cluster-version-operator
cluster-policy-controller

/unassign @michael-topchiev

Remaining ones require more work and are
openshift-controller-manager
cluster-version-operator
cluster-policy-controller

/assign @michael-topchiev

Additionally: Readinessprobes need to be specified on
deployment.apps/konnectivity-server readinessProbe:
deployment.apps/openshift-oauth-apiserver readinessProbe:

Since they are apart of a service.

Additionally: Readinessprobes need to be specified on
deployment.apps/konnectivity-server readinessProbe:
deployment.apps/openshift-oauth-apiserver readinessProbe:

Since they are apart of a service.

PR is submitted for these two components: https://github.ibm.com/alchemy-containers/sonar-squad/issues/142

/close


Make sure identity exchange tests run on desktop, Android and iOS

We never got the tests to run all the way to completion on both platforms. We need to do that.

Make sure to merge in from customer and then do a PR to master

Note that testLiveIdentityExchange.js is current disabled.

I found a bug in line 484 of testIdentityExchangeEndpoint, it doesn't show up in the mock on the desktop because the logic in the mock is obviously not consistent with our actual logic. But I am disabling testIdentityExchangeEndpoint for right now because I need to first get the CI environment going.

I disabled testSmallerHashStateMachine because I had removed the protections that keep nock from running on mobile because I was told that the fix for the nock issue was in v<IP_ADDRESS> (something I tested on the desktop and found to be true) and was also told that JXcore-Cordova 0.0.7 had JXcore v<IP_ADDRESS>. Apparently not. I filed https://github.com/jxcore/jxcore-cordova/issues/82 to find out what is going on.

Please see https://github.com/jxcore/jxcore-cordova/blob/master/Changelog.md BTW 0.0.8 has it now. https://github.com/jxcore/jxcore-cordova/blob/0.0.8/Changelog.md


All Images Update Properly

I did it lel. All images are now properly adjusted when the theme changes.
Pretty much this should now be the new usage of ImageList class:
Previously, this is how it was used:
imageList = new ImageList();
imageList.ColorDepth = ColorDepth.Depth32Bit;
imageList.ImageSize = ScaleHelper.Scale(new Size(16, 16));
imageList.Images.Add(...);

Now:

If image lists are really needed, for example using ListView which does not allow you to set images of individual items, use the ImageListManager class: (e.g. Lines 229~245)
If image lists are only used as a list of images, please use actual Array or List<> since ImageList makes copies of the images added so they will not be refreshed. (e.g. Lines 64~126, Lines 33~141)
If image lists are used to resize images to 16x16, now use the MainForm.FindImage16() method. (e.g. Lines 122~126)

There are 3 ways of using ImageListManager.

Use the void Initialize() method and OnInitialize event. OnInitialize gets fired whenever the theme is changed, and before it fires the image list is cleared automatically. Initialize() simply calls OnInitialize. e.g. When the ImageList doesn't add any images on initialization.
Use the Initialize(EventHandler) method. This is a simpler version of the option 1 since it assigns the handler to event and calls Initialize(). This method is used in most cases. e.g. When the ImageList is populated at initialization.
Derive ImageListManager class and override OnRefresh() method. This is used to perform custom refresh routine (i.e. when you don't want/need to clear the image list). e.g. When all image list items can/should be re-initialized without clearing&adding.

ImageListManager can be implicitly converted to ImageList, and explicitly converted from ImageList. So it will feel more like a derived class of ImageList.
Closes #832.

Just to follow current coding practices:

Avoid creating unnecessary spaces in code, comment lines if you want to clarify parts
Use ImageListOnInitialize vs. ImageList_Initialize for event handler names

Otherwise everything seems to work nicely, tested at 150% on Win7.

I used to have the event handler names as ImageList_OnInitialize because the event name is OnInitialize, but since On doesn't really make sense, I renamed them anyways. (There is a method called Initialize so I had to add On on the event name.)
I tried to look for unnecessary spaces to remove, but couldn't find much? You mean blank lines, right? If you meant something else, please tell me so I can fix it :)

When I did this to try out the 32x32 images

The Project Manager tree has cropped images for images retrieved by MainForm.FindImage(). (But not the ones retrieved from its resources.)

Is this expected, since i'm not using true HDPI? Or should I fix this by replacing FindImage() by FindImage16()?

It seems like setting images using ImageList.Images[Int32] doesn't trigger image resizing unlike Add(Image) method. (Probs a bug)
I've fixed the issue.

This has some conflicts now.


[SPARK-36255][SHUFFLE][CORE] Stop pushing and retrying on FileNotFound exceptions

What changes were proposed in this pull request?
Once the shuffle is cleaned up by the ContextCleaner, the shuffle files are deleted by the executors. In this case, the push of the shuffle data by the executors can throw FileNotFoundExceptions because the shuffle files are deleted. When this exception is thrown from the shuffle-block-push-thread, it causes the executor to exit. Both the shuffle-block-push threads and the netty event-loops will encounter FileNotFoundExceptions in this case.  The fix here stops these threads from pushing more blocks when they encounter FileNotFoundException. When the exception is from the shuffle-block-push-thread, it will get handled and logged as warning instead of failing the executor.
Why are the changes needed?
This fixes the bug which causes executor to exits when they are instructed to clean up shuffle data.
Below is the stacktrace of this exception:
21/06/17 16:03:57 ERROR util.SparkUncaughtExceptionHandler: Uncaught exception in thread Thread[block-push-thread-1,5,main]
java.lang.Error: java.io.IOException: Error in opening FileSegmentManagedBuffer

{file=********/application_1619720975011_11057757/blockmgr-560cb4cf-9918-4ea7-a007-a16c5e3a35fe/0a/shuffle_1_690_0.data, offset=10640, length=190}
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1155)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.IOException: Error in opening FileSegmentManagedBuffer\{file=*******/application_1619720975011_11057757/blockmgr-560cb4cf-9918-4ea7-a007-a16c5e3a35fe/0a/shuffle_1_690_0.data, offset=10640, length=190}

at org.apache.spark.network.buffer.FileSegmentManagedBuffer.nioByteBuffer(FileSegmentManagedBuffer.java:89)
at org.apache.spark.shuffle.ShuffleWriter.sliceReqBufferIntoBlockBuffers(ShuffleWriter.scala:294)
at org.apache.spark.shuffle.ShuffleWriter.org$apache$spark$shuffle$ShuffleWriter$$sendRequest(ShuffleWriter.scala:270)
at org.apache.spark.shuffle.ShuffleWriter.org$apache$spark$shuffle$ShuffleWriter$$pushUpToMax(ShuffleWriter.scala:191)
at org.apache.spark.shuffle.ShuffleWriter$$anon$2$$anon$4.run(ShuffleWriter.scala:244)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
... 2 more
Caused by: java.io.FileNotFoundException: ******/application_1619720975011_11057757/blockmgr-560cb4cf-9918-4ea7-a007-a16c5e3a35fe/0a/shuffle_1_690_0.data (No such file or directory)
at java.io.RandomAccessFile.open0(Native Method)
at java.io.RandomAccessFile.open(RandomAccessFile.java:316)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)
at org.apache.spark.network.buffer.FileSegmentManagedBuffer.nioByteBuffer(FileSegmentManagedBuffer.java:62)

Does this PR introduce any user-facing change?
No
How was this patch tested?
Added a unit to verify no more data is pushed when FileNotFoundException is encountered. Have also verified in our environment.

@Ngone51 @mridulm Please help review this bug fix.

Can one of the admins verify this patch?

Once a job in a Spark application completes, the shuffle files are cleaned up by the executors.

Actually, it's cleaned up by the ContextCleaner when the shuffle dependency can be GCed. Job completion doesn't ensure that. Could you update the description to make it more accurate?

ok to test

Test build #141563 has started for PR 33477 at commit 6bb9709.

Can one of the admins verify this patch?

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46081/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46081/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46081/

Test build #141563 has finished for PR 33477 at commit 6bb9709.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/141563/

Thanks, merged to master/3.2.

Thanks @Ngone51 @gengliangwang @srowen for the reviews

Late LGTM. Thanks for fixing this @otterc !
Thanks for the reviews @Ngone51, @srowen, @gengliangwang


Grid Customization

The Twitter bootstrap grid can be customized easily via LESS: http://twitter.github.com/bootstrap/scaffolding.html#gridCustomization.
I think it would be cool if it was possible to customize roots' grid through the child theme. Essentially, I think it would be possible to have filters like roots_gridColumns, roots_gridColumnWidth and roots_gridGutterWidth (siteWidth would be computed automatically from the previous 3 variables).
The code in the child theme would be, for example: add_filter( 'roots_gridColumns', 'childtheme_gridColumns' ); where the childtheme_gridColumns function receives the default value (of 12) and returns an integer (just like any other WordPress filter).

how would this be possible without editing the bootstrap core files? wouldn't the .less files need to be .php to get those values?

generate that bit of css with php.

@leoj3n - Just found a plugin that seems to do exactly what your asking for.
http://wordpress.org/extend/plugins/bootstrap/


Try emitting an error when export would be emitted as initializer with different unwidened type

This is a very very bad attempt at making the problems we've found in #55445 into check errors. I guarantee that this PR is wrong, you can see very strange things happening because observing isDeclarationVisible of each declaration passed to checkVariableLikeDeclaration seems to cause a side effect (???), and my check is poorly copied from declarations.ts so has some improper edge cases.
In any case, it still catches everything we mentioned in #55445 so it's somewhat interesting.

@typescript-bot test top200
@typescript-bot user test this

Reading live logs, this seems to be firing on private things, probably because those are "preserved" in d.ts emit but with types removed (but this test PR doesn't model that).

@typescript-bot test top100
@typescript-bot user test this

A bunch of the above declarations are still ones that shouldn't be visible, so I've clearly still done something wrong.

@typescript-bot test top100
@typescript-bot user test this

@typescript-bot test top200
@typescript-bot user test this

@typescript-bot perf test this

@jakebailey you mentioned examples where this doesn't just solve a divergence of declaration emit, and maybe I missed the specifics in the design meeting. Can you write up/show what this solves more explicitly?

Yes, I am building an example repo now!

Example: https://github.com/jakebailey/dts-emit-widened-unwidened-examples
Just to summarize @weswigham, this is arguably a limitation of declaration emit, and we could alternatively fix this by introducing syntax into d.ts emit that emulates ternaries, destructuring, ??, etc, which all have this problem. This is the method we currently take via emitting initializers (and why this PR skips those as they are already handled). Fixing it in declaration emit is somewhat preferable because it doesn't shift this problem off to users.

Just guessing based on the title of this PR, but is https://github.com/microsoft/TypeScript/issues/55832 related? (it's a case where declaration emit produces a different type--in particular any (!)--than what's inferred locally)

@typescript-bot pack this

Just guessing based on the title of this PR, but is #55832 related? (it's a case where declaration emit produces a different type--in particular any (!)--than what's inferred locally)

In a way, yes, it's similar to this and #55901.


COLLECTIONS-798: HasherBuilderTest improvements using Mockito

Thanks for the PR. The bloomfilter package is currently being rewritten and this class will be removed in the new version.

I appreciate the effort to make the changes but the class under test is removed in the bloomfilter simplification code.

Thank you for quick reply. I'm closing this PR.


How to output the evaluation result

Hello, I run your code. But I do not know how to output the evaluation result, i.e., B1, B4, Meteor, and CIDer.

Could you check the .eval file in the output experiment folder? The file contains execution log of the evaluation code

Sorry to open the closed issue.I run the code ,and solved some problems.
But after the Java environment was installed,the execution log of the evaluation code shown some usages like that：

I don't know why.Could you help me ?


Better Range Input

The HTML5 range input looks terrible and doesn't display the value anywhere.
Replace this with a custom range input, maybe theme specific.

+1  just noticed that the display value doesn't show.   is there a way to get the value into the description with a template {{tag}}?


Instantiate ContractResolver to CamelCasePropertyNamesContractResolver()

Good work forking and submitting a PR @TimDurward . Unfortunately I completely missed #14 was referenced on the "up for grabs" issue - https://github.com/NancyFx/Nancy/issues/1607 so looks like someone has done it, it just needs merging.
Apologies for that but hopefully forking, cloning and submitting a PR was a good exercise.
Keep an eye on the up for grabs issues and hopefully we can get you in as a contributor ASAP :smile:


IP Parsing fails for variables

This will incorrectly raise CC0064:
var correctIP = "<IP_ADDRESS>";
System.Net.IPAddress.Parse(correctIP);

The analyzer should ignore non string literals.
Might be happening also for others, like Regex and Json.

I can fix that :)
-----Original Message-----
From: "Giovanni Bassi"<EMAIL_ADDRESS>Sent: 28/10/2015 12:19
To: "code-cracker/code-cracker"<EMAIL_ADDRESS>Subject: [code-cracker] IP Parsing fails for variables (#571)
This will incorrectly raise CC0064:
var correctIP = "<IP_ADDRESS>";
System.Net.IPAddress.Parse(correctIP);The analyzer should ignore non string literals.
Might be happening also for others, like Regex and Json.
—
Reply to this email directly or view it on GitHub.

@andrecarlucci Go for it!


Not able to open Camera or Microphone  in Webview

we already give the camera and microphone permission but we are not able to open a camera and microphone in webview.

duplicate of https://github.com/flutter/flutter/issues/57460