Support search capability in YAML windows

Describe the problem/challenge you have
When attempting to live edit a YAML definition when there are many lines, it can be difficult to pinpoint the exact one desired.
Describe the solution you'd like
Add a simple search field in all YAML editor tabs that can allow searching for a given string. The matches should be highlighted in the YAML definition.
Anything else you would like to add:
Octant rules.
Environment:

Octant version (use octant version):
Kubernetes version (use kubectl version):
OS (macOS 10.15, Windows 10, Ubuntu 19.10 etc):

If you have the YAML viewer/editor active, Ctrl-F will open the Monaco find dialog.

Thank you, did not know this! Closing request.


Added Friuli-Venezia Giulia

Added the regionwide layer for Friuli-Venezia Giulia in Italy.

Looks good, thanks!


Client optimizations to support > 1 million smart contracts

In its current state, substrate chains can support up to ~1 million accounts (cc @shawntabrizi ). Although this number will increase with the use of parity-db, it is not yet clear what the new upper bound will be.
For most substrate chains, the existential deposit (ED) set in pallet-balances provides a way to enforce the upper bound by increasing the minimum balance of any given account. Any account with balance below the ED will be reaped.
Unfortunately, setting any nonzero ED violates Ethereum compatibility. There are many situations where smart contracts have value stored in another contract (ERC20, NFTs, etc) but may not own any value directly. If the ED is increased to enforce the upper bound on accounts, these contracts would be reaped, thereby limiting many common use cases.
On Moonbeam every smart contract is an account which implies Moonbeam is limited to at most 1 million smart contracts under the current constraints. Substrate chains which use AccountId32 face the same constraint because they set pallet_evm::AddressMapping to HashedAddressMapping such that each smart contract address maps to a unique substrate account. If there is a limit of 1 million substrate accounts, then there is also a limit of 1 million smart contract addresses that can map to these accounts.
Ethereum is able to handle 165 million accounts because it has many client-side optimizations for reading account data in the trie. I'm opening this issue to coordinate brainstorming of similar client-side optimizations in frontier/client.

Can anyone explain why Substrate chains can only support 1 million accounts. I hadn't heard that before.

One possibility is to store offchain the nonce of an account that disappeared because of the existential deposit, in order to give it back the same nonce if it is reborn.
This implies to modify the logic of CheckNonce in order to allow any nonce (and to store the provided nonce) in the case of the 1st transaction of a new account (i.e. if the nonce of this account is zero, as this is the value to return if the account does not exist in the on-chain storage).
This would make replay attack impossible, except for a validator/collator, which can be handled by slashing or other sanction mechanism, depending on the project.

@librelois that idea transfers a lot of additional work to block authors and they are not paid for it:

Maintain the offchain nonce storage for every dead account.
Maintain a similar offchain storage for contract code and contract storage for the case when a contract gets reaped.
Check every new account-creating transaction to see whether it has ever been played before in the history of the blockchain (or risk getting slashed).

Maintain the offchain nonce storage for every dead account.

So 4 bytes per address, it's not much, and it can be stored only for a limited time (for example 6 months). We can consider that if an account has been emptied AND is inactive for a certain time, it becomes acceptable to no longer protect its author against replay attacks.

Maintain a similar offchain storage for contract code and contract storage for the case when a contract gets reaped.

We don't have to do this. We can very well say that if the smart contract goes under the existence deposit it is destroyed, and must be redeployed.
We can also make sure that the existential deposit does not apply to contract accounts, and on the other hand increase the cost of deploying a contract.

Check every new account-creating transaction to see whether it has ever been played before in the history of the blockchain (or risk getting slashed).

Of course the author of the block wouldn't do that. In case the nonce is neither in the on-chain storage nor in the off-chain storage of the node, the node can decide not to include the transaction in its blocks, but to relay it anyway on the network, so that another node having the nonce in its off-chain storage can write it.

If we put an expiration date, we still reintroduce the replay attack. Also it would be better to have the expiration on chain in that case.
If we do an offline system, it will still not prevent replay attack (and you can't slash anyone for including it because the replay attack is reusing the same addresses. At best you slash the block authors for not verifying it). If we go with slashing we need a very complex system to report (because we don't control finality)

So far the best idea i found was to use existential deposit and to set the non e of a new account to 100*block.number. which prevents replay attack as long as you don't submit 100 txs per bocks before it gets reaped.

So far the best idea i found was to use existential deposit and to set the non e of a new account to 100*block.number. which prevents replay attack as long as you don't submit 100 txs per bocks before it gets reaped.

This might not play well with existing tools, but that's probably a lesser problem than others.
It doesn't help with deployed contracts, however.

Another possibility is to have custom gas price depending of the action. Transferring to a new account will have a min price of 100 gwei for ex.
Contract deployment should also cost gas_per_bytes times more to deploy

Contracts are still limited to 24k in size, so the size isn't a huge issue. I suppose we could take the gas from the CREATE / CREATE2 opcodes (32000, I think?) and use them as an existential deposit. That doesn't actually change the security aspects of this, however -- an abuse would still cost the same.

This might not play well with existing tools, but that's probably a lesser problem than others.

This is the way. I'm not aware of any incompatibility.

@sorpaas it might be an issue for project expecting given address on contract deployment

So far the best idea i found was to use existential deposit and to set the non e of a new account to 100*block.number. which prevents replay attack as long as you don't submit 100 txs per bocks before it gets reaped.

This is going to break local nonce tracking code that could be used by code wallets. Also we had some previous attempt https://github.com/paritytech/substrate/pull/8822


[JCR Importer] don't remove existing properties

don't remove page properties that are not updated by the package

We also need to support for package installation in a non existing page structure. With this change this will not be possible as the filter root is pointing to an non existing jcr:content node

iirc it is only necessary to have a .content.xml file with the proper primary type of any ancestors of the "non existing" node. Vlt will automatically create ancestor structures if possible. But worth to test this. @jckautzmann didn't you test that as well?

Sounds good.


AnimationPath RepeatBehavior="1" not work as expected

Describe the bug
<hc:AnimationPath Data="M 0,0 l 5,5 l 8,-8" Stroke="White" StrokeThickness="2" RepeatBehavior="1"
                  StrokeStartLineCap="Round" StrokeEndLineCap="Round" StrokeLineJoin="Round" />

Expected behavior
The animation only run once then stop.
Screenshots
If applicable, add screenshots to help explain your problem.
Environment (please complete the following information):

.net: .NET 5
IDE VS2019
Version 3.1.0

Additional context
Add any other context about the problem here.

Did you try  RepeatBehavior="Forever" ?

Forever show me same behavior.

 Now after finish, the path disappeared.
<hc:AnimationPath Data="M0,0 l4,5 l8,-8" Stroke="White" StrokeThickness="1.5" RepeatBehavior="1x" Duration="0:0:1"
                  StrokeStartLineCap="Round" StrokeEndLineCap="Round" StrokeLineJoin="Round" />

But how to holds the animation path after end? Now after finish, the path disappeared.
<hc:AnimationPath Data="M0,0 l4,5 l8,-8" Stroke="White" StrokeThickness="1.5" RepeatBehavior="1x" Duration="0:0:1"
                  StrokeStartLineCap="Round" StrokeEndLineCap="Round" StrokeLineJoin="Round" />

after bebe9b8 you can use RepeatBehavior="1x" FillBehavior="HoldEnd"


Bug: Format Query action removes commented queries

Describe the bug
Format Query action removes commented queries
Before

After

Steps to reproduce
Steps

Write two queries
Comment out the first query
Format the query

Expected behaviour
I expect the comments to be preserved
Surrealist Environment
Version: 3.0.0-beta.2
Flags: feature_flags: false, query_view: true, explorer_view: true, graphql_view: true, designer_view: true, auth_view: true, functions_view: true, models_view: true, apidocs_view: true, cloud_view: true, themes: true, newsfeed: true, database_version_check: false, highlight_tool: false, legacy_serve: false, cloud_endpoints: production, cloud_access: false, cloud_killswitch: true, changelog: hidden
Contact Details
<EMAIL_ADDRESS>Is there an existing issue for this?

[X] I have searched the existing issues

Code of Conduct

[X] I agree to follow this project's Code of Conduct

This is currently expected behaviour since we use the internal SurrealDB parser for formatting queries which strips out any encountered comments. We are planning on expanding editor functionality with a custom language server and eventually create a formatter which doesn't strip comments.
For now, a workaround is to select only the part of the editor that you want to format, as formatting will be limited to an active selection when present


one beforesuite hook for multicontext

Hi
I have a suite that has two context classes. I've written a trait that has a @beforeSuite static function and I added it to those two classes.
When I run behat, @beforeSuite function is called two times.
What should I do?
please help me. Thanks

Using traits is equivalent to copy & paste. If you don't want your hook be called twice, don't include it twice.
Either include your twite in one of the contexts, or put your hook in its own context.

Just distinguish context with beforesuite hook and include it in any suite you like.

@jakzal I know about traits but now I understand that "behat" concatenates all context classes in a suit. wow!
and Why!?
`default:
suites:
something:

  paths:

    - %paths.base%/tests/Features/Something

  contexts:

    - Anything\FirstContext

    - Anything\SecondContext`

with above config, behat actually make one class which has all of two classes. Also, both first and second context classes have their feature files.

It doesn’t make one class, no

So why it use other classes method?? Could you please introduce me an article ? I couldn't find a good documentation about context, suite, profile.

When it runs a step, Behat looks in all the contexts of the current suite for a matching method.
If more than one method matches the step (either by two different patterns matching the step, or in your case because you copy pasted them method into two contexts) you get an error message

@ciaranmcnulty you're right. thanks.
not only steps, it uses my last context class __construct method for all features and scenarios in the suite.
Thanks. alot


Please add option to list installed services

I recently (or so I thought) deleted a service, but I'm not sure if it worked, or if I might have done it wrong. It would be super useful to see what services are installed and be able to delete the ones I don't want anymore.

It seems like it might be pretty easy to grep for "forever" or something else that might be fairly unique to your script.


Examples are not good enough in the docs

The examples given here are not good enough. Feels like a half-arsed job. I have been looking to find a way to get the contents or children of a drive when we have a drive ID i.e., I am looking for the driveItems within a driveId for a SharePoint document library. But the examples given here are for one drive. Don't seem to have the same problem with onedrive retrieving driveitems.
Can retrieve all items via lists and listitems but to perform POST or add new items to the document library we need to use drives and driveitems. Seems like it is next to impossible to retrieve document library as drives and the contents s driveItems
Tried all the following but with no luck:
sites/site.sharepoint.com,,/drives/{drive-id}
sites/site.sharepoint.com,,/drives/{drive-id}/root/children
sites/site.sharepoint.com,,/drives/{drive-id}/root:/children
sites/site.sharepoint.com,,/drive/{drive-id}/children
sites/site.sharepoint.com,,/drive/{drive-id}:/children
sites/site.sharepoint.com,,/drive/{drive-id}/items
sites/site.sharepoint.com,,/drive/{drive-id}:/items
The examples provided, definitely are not helping here. Please amend if possible. Thank you

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

ID: 6079ba35-dd9e-fe22-5254-2b7e0b5ab650
Version Independent ID: 18340dad-3014-1888-7bf7-3da9af9973e7
Content: Get a file or folder - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/driveitem-get.md
Product: sharepoint
Technology: microsoft-graph
GitHub Login: @JeremyKelley
Microsoft Alias: MSGraphDocsVteam

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


[Executor] Support dataclass and primitive types in aggregation

Description
Currently, the input of flex flow aggregation function is a dictionary in line result, not the original output of __call__, so in this PR, we support dataclass and primitive types for aggregation function.
Main Changes:
Data class handling:

src/promptflow-core/promptflow/_utils/dataclass_serializer.py: Introduced a new function convert_dataclass_to_dict that converts data classes to dictionaries. This function is used in place of convert_eager_flow_output_to_dict in other parts of the codebase. [1] [2] [3]
src/promptflow-core/promptflow/contracts/types.py: Added a new AttrDict class that allows attribute access to dictionary keys. This class is used to wrap dictionary outputs in other parts of the codebase. [1] [2] [3] [4]
src/promptflow-devkit/promptflow/batch/_batch_engine.py: Modified the output handling to wrap primitive types in a dictionary and to use AttrDict for dictionary outputs.

Test files:

src/promptflow-devkit/tests/sdk_cli_test/e2etests/test_flow_test.py, src/promptflow-core/tests/core/e2etests/test_eager_flow.py: Modified the test assertions to use attribute-style access instead of dictionary-style access. [1] [2] [3]
src/promptflow/tests/test_configs/eager_flows/basic_callable_class/simple_callable_class.py, src/promptflow/tests/test_configs/eager_flows/basic_callable_class_async/simple_callable_class.py, src/promptflow/tests/test_configs/eager_flows/basic_callable_class_with_sample_file/simple_callable_class.py: Replaced TypedDict with dataclass for the FlowOutput class and modified the __call__ and __aggregate__ methods to use attribute-style access. [1] [2] [3] [4] [5] [6]

All Promptflow Contribution checklist:

[x] The pull request does not introduce [breaking changes].
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.
[ ] Create an issue and link to the pull request to get dedicated review from promptflow team. Learn more: suggested workflow.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

Add more description about the overall logic of this change.


Submission by round detail view: Grouped by listing: Status "jump to"

Task to add filter style functionality at the top of the grouped listing allowing the user to select a status to "jump to".
Design: to follow existing styles
Acceptance criteria

[x] Filter-style selector is displayed above grouped listing
[x] All available statuses are present in the options of this selector
[x] Selecting an option anchors the user down to that status in the grouped list, scrolling to the relevant point in the list

QA criteria
Dev:

[x] checked that this feature works across all agreed supported browsers and devices.
[x] checked that this code meets the agreed accessibility level.
[x] checked that this code meets the agreed browser performance levels.
[x] checked that this code conforms to the project coding standards.
[x] had code reviewed by another developer and resolved any issues raised.
[x] tested this feature as an end user.
[x] checked that the feature works on the server/s I am deploying it to.

QA:

[x] tested this feature as a front end user and it meets the acceptance criteria/conforms to the specification and design.
[x] checked that the feature works on the server/s deployed to

Hi @fourthletter, @danblah, @arduina
This work is now ready for testing. This work is the ‘jump to’ filter at the top of the left hand submission listing on Submission by Round detail view pages e.g. https://test-apply.opentech.fund/apply/rounds/732/ (click the switcher in the top right to get from the list view to the detail view). This should allow you to anchor down to the status of interest.
Please test this against the acceptance criteria noted in the initial issue description.
Please let us know if anything is unclear or if you have any questions. Otherwise please provide
feedback of any issues you find or if everything is working as expected, please confirm and we can get this work deployed to the live site and issue closed off.
Thanks,
Maya

Acceptance criteria are visible and functional. Thanks! 💥

Thanks @fourthletter. Assigning to @todd-dembrey for deployment to live.


Hard link to image does not work on index page

Hi,
I tested your plugin and I found out what looks like an incorrect behavior:
Given that I have a link to an image in the same folder than the post
When I launch jekyll build
Then

link to image in index.html is generated as src="/my-image.png"
link to image in article is generated as src="/2017/10/03/my-image.png"

# index.html displaying a loop of full content of posts with pagination (1 per page)
...
{{ post.content }}
...

# _posts/2017/10/03/my-article.md

![Alternative text](my-image.png)

I suppose we would need to add the relative path to the image URL after Kramdown parsed the source, but I really don't know how/where to do it.

sample problem, seems no solution?

Well I have a solution, reference your image like this ![Example]({{ page.url }}bird_color.png)


x/tools/gopls: crash - index out of range

I believe this crash is highly related to https://github.com/golang/go/issues/35455. In my local testing, I had demonstrated the new version did not crash, but after updating to master and installing, I am still experiencing an index out of range crash in the same rough area.
I triple checked that I was in fact running the new, fixed version, including by opening /Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/cache/session.go and confirming that the fix was in fact in the code path.
I'm not sure why this did not experimentally reproduce for me during the discussion with @matloob  on #35455 , but it is consistently reproducing again now from master.
Included is the gopls output:
Go info
-------
go version go1.13.4 darwin/amd64

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/bhatfield/Library/Caches/go-build"
GOENV="/Users/bhatfield/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/bhatfield/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.13.4/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.13.4/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/w_/sj20ml6511v9vvzd4lzxhvlc0000gn/T/go-build756646728=/tmp/go-build -gno-record-gcc-switches -fno-common"

2019/11/08 15:17:49 : no metadata for file:///Users/bhatfield/Documents/digits/schema
panic: runtime error: index out of range [0] with length 0

goroutine 23 [running]:
golang.org/x/tools/internal/lsp/cache.(*session).bestView(0xc000196420, 0xc0002a8100, 0x78, 0x0, 0x0)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/cache/session.go:218 +0x18f
golang.org/x/tools/internal/lsp/cache.(*session).DidOpen(0xc000196420, 0x1833900, 0xc0001df1d0, 0xc0002a8100, 0x78, 0x0, 0xc000379000, 0xeb6, 0x1000, 0x1601fe0, ...)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/cache/session.go:255 +0x2b8
golang.org/x/tools/internal/lsp.(*Server).didOpen(0xc00013db60, 0x1833900, 0xc0001df1d0, 0xc000213000, 0x0, 0xc000240420)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/text_synchronization.go:29 +0x15e
golang.org/x/tools/internal/lsp.(*Server).DidOpen(0xc00013db60, 0x1833900, 0xc0001df1d0, 0xc000213000, 0xc000213000, 0x0)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/server.go:135 +0x49
golang.org/x/tools/internal/lsp/protocol.serverHandler.Deliver(0x1848600, 0xc00013db60, 0x1833900, 0xc0001df1d0, 0xc0002a2000, 0xc0001df100, 0xc0001981e0)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/lsp/protocol/tsserver.go:111 +0x1b66
golang.org/x/tools/internal/jsonrpc2.(*Conn).Run.func1(0xc0001a0360, 0xc0002a2000, 0xc00013dbc0, 0x1833900, 0xc0001df1d0, 0x0, 0x0, 0xc00016cce0)
	/Users/bhatfield/go/src/github.com/golang/tools/internal/jsonrpc2/jsonrpc2.go:370 +0x170
created by golang.org/x/tools/internal/jsonrpc2.(*Conn).Run
	/Users/bhatfield/go/src/github.com/golang/tools/internal/jsonrpc2/jsonrpc2.go:354 +0x877
[Error - 3:17:49 PM] 2019/11/08 15:17:49 : no metadata for file:///Users/bhatfield/Documents/digits/schema
[Error - 3:17:49 PM] Connection to server got closed. Server will not be restarted.

@matloob I can confirm just like in #35455 that the "schema" referenced here does not have go modules in it.

I'm seeing this too when creating an overlay file in an empty directory (i.e. no go.mod).


apis: exclude slo pkg imports from extension to avoid cycle ref

Ⅰ. Describe what this PR does

exclude the imports of slo pkg from extension pkg
Ⅱ. Does this pull request fix one issue?

extension pkg is a basic pkg, it should not import other pkg like slo. Otherwise it will cause cycle reference.
Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in make test

/lgtm


gulp.watch doesn't notice new files

I found a bug which I'm not sure if it's an issue of gulp or gulp-sass.
The styles of my app has the following structure:
  /styles
    /moduleA
      moduleA.scss
      moduleA.css
    /moduleB
      moduleB.scss
      moduleB.css

And I have the following tasks in gulp:
gulp.task('sass', function () {
    return gulp.src(['styles/**/*.scss'],{base: "./"})
        .pipe(sourcemaps.init())
        .pipe(sass().on('error', sass.logError))
        .pipe(sourcemaps.write())
        .pipe(gulp.dest("./"));
});

gulp.task('sass:watch', function () {
    gulp.watch(cfg.rootPath + '**/*.scss', ['sass']);
});

The goal is to place the generated .css next to the .scss. This works well for existing .scss files but for some reason it doesn't work for new files.
Surprisingly, if I manually call the sass task it works as expected.
gulp.task('sass:watch', function () {
    gulp.watch(cfg.rootPath + '**/*.scss', function() {
        gulp.start('sass');
    });
});

Any clue why is this happening? Thanks!

This is a feature/bug with gulp. It's only watching files that match your glob (cfg.rootPath + '**/*.scss') at the time you ran the command.

Thank you for your promptly reply.


README spelling fixes

README spelling fixes

Codecov Report

Merging #34 (fa98424) into main (3e5368c) will increase coverage by 0.47%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #34      +/-   ##
==========================================
+ Coverage   40.22%   40.70%   +0.47%
==========================================
  Files          14       15       +1
  Lines         619      624       +5
==========================================
+ Hits          249      254       +5
  Misses        370      370

Impacted Files
Coverage Δ

src/zhinst/qcodes/driver/devices/base.py
31.25% <0.00%> (ø)

src/zhinst/qcodes/driver/devices/shfqa.py
67.34% <0.00%> (ø)

src/zhinst/qcodes/driver/devices/uhfli.py
71.42% <0.00%> (ø)

src/zhinst/qcodes/driver/devices/uhfqa.py
33.33% <0.00%> (ø)

src/zhinst/qcodes/driver/devices/__init__.py
100.00% <0.00%> (ø)

src/zhinst/qcodes/driver/devices/shfqc.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


User testing fixes

Changes

Remove links from tooltips
Temporarily remove flush left styling from input table. This looked broken in the user testing browser. I'll work on fixing it in a subsequent pull request, today if possible.

Additions

Add credit score scenario. The data was all there in the related GH issue, so I added the full scenario... I could add inactivated entries in the dropdown for the other scenarios too.

Screenshots
Credit score scenario & input table flush left style change:

Links removed from tooltips:

Review
@cfarm @huetingj  @stephanieosan @sonnakim @mthibos

Code looks good and I tried out the front end locally and things are workin' well.
@stephanieosan  or @sonnakim will have to look before we merge

This looks good to me! We're between tests for the next half hour, so it might be a good window to merge.

Also, I'm sort of preferring the not flushed left. Maybe we should just keep it like this, and then you won't have to do work to fix it in other browsers?

agreed... thank you!


Windows installer is broken

Guys, your windows installer is not working on my Windows 10 PC.
This is the message I found here: "The installer has encoutered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2755."

I believe that's related to your windows installation. It's permissions issue.
Check that SO thread for few solutions.

If you're still having this issue, 4 years in, I'd recommend checking specifically this answer.
Make sure C:\Windows\Installer exists (if windows is installed in C:).

If it doesn't, just create it and run the installer again.

Worked like a charm here. And agreed with @al1k this isn't a Keybase problem, issue should be closed.


Add HttpConnector mode for Jetty9.4 runtimes

Add an HttpConnector mode to bypass the RPC layer for the Jetty 9.4 runtimes.
This was done previously for the Jetty12 runtimes with https://github.com/GoogleCloudPlatform/appengine-java-standard/pull/96

I see failures
Error:    FailureFilterTest.testFilterInitFailed:51->runtimeContext:46 » ConditionTimeout Condition with Lambda expression in com.google.apphosting.runtime.jetty9.JavaRuntimeViaHttpBase$RuntimeContext was not fulfilled within 30 seconds.
Also, in my branch, I see lite EE10. Is it ready?

Manually adapted from internal repo to accomodate mandatory extra internal changes needed to pass all internal tests.


whe scaleSimMat?

Excuse me, I am confused about the fuction ScaleSimMat, why do you use this fucntion before RandSurf and GetPPMIMatrix, why not use the native adjMatrix?

I got it, it present the probability while random surfing . Sorry to bother u


Create bug tracker

As a user,
i want to be able to communicate bugs to the developer
AC:

Frontend: User has a bug icon/interactable and gets redirected to a tool to communicate errors
Page to list bugs (github issues might be sufficient)

was solved with new frontend subpage


Update acl.md

Requirements is actually under bin/:
https://github.com/acl-org/acl-anthology/blob/master/bin/requirements.txt

I'm getting this error:
$ python bin/create_hugo_yaml.py
Traceback (most recent call last):
  File "bin/create_hugo_yaml.py", line 43, in <module>
    from anthology import Anthology
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/__init__.py", line 1, in <module>
    from .anthology import Anthology
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/anthology.py", line 24, in <module>
    from .formatter import MarkupFormatter
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/formatter.py", line 25, in <module>
    from .utils import stringify_children, remove_extra_whitespace
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/utils.py", line 28, in <module>
    from .people import PersonName
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/people.py", line 18, in <module>
    import anthology.formatter as my_formatter
AttributeError: module 'anthology' has no attribute 'formatter'

I'm getting this error:
$ python bin/create_hugo_yaml.py
Traceback (most recent call last):
  File "bin/create_hugo_yaml.py", line 43, in <module>
    from anthology import Anthology
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/__init__.py", line 1, in <module>
    from .anthology import Anthology
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/anthology.py", line 24, in <module>
    from .formatter import MarkupFormatter
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/formatter.py", line 25, in <module>
    from .utils import stringify_children, remove_extra_whitespace
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/utils.py", line 28, in <module>
    from .people import PersonName
  File "/Users/jimmylin/workspace/acl-anthology/bin/anthology/people.py", line 18, in <module>
    import anthology.formatter as my_formatter
AttributeError: module 'anthology' has no attribute 'formatter'

Weird, which Python version?

nm, I really need to rtfm.
When you say "(with Python 3.7+)", you really mean it. Above error with Python 3.6.

One more thing, it appears I gotta mkdir build/data myself?
I believe this is because I didn't run the makefile, and am skipping steps?
Otherwise, if I don't do this create_hugo_yaml.py complains about no path.

I think I am correct? https://github.com/acl-org/acl-anthology/blob/master/Makefile#L103

Yep looks like you are, I must've ran make before I ran the script but forgot


No property 'normalise' a layer of type dagnn.SoftmaxCELoss

When I run the script run_distillation, there is an error No property 'normalise' a layer of type dagnn.SoftmaxCELoss.

I add an property named 'normalise' in SoftmaxCELoss.m, it seems that it works but I'm not sure if it is a correct solution.

Hi @longinfield, apologies for the slow response.  This layer is found in mcnExtraLayers (I've updated the README to reflect his).


How do I use server::conn::Connection::poll_without_shutdown?

It seems to require type parameter E to implement some private trait, with a default bind to some private type.
The closest I can get:
use hyper; // 0.12.24
use hyper::server::conn::Connection;
use hyper::service::Service;
use tokio::prelude::{AsyncRead,AsyncWrite,Future};

struct MyWrapper<T:AsyncRead+AsyncWrite,S:Service,E>
(pub Connection<T,S,E>)
//where Connection<T,S,E>: Future<Item=(),Error=()>
;

impl<T:AsyncRead+AsyncWrite,S:Service,E> MyWrapper<T,S,E> where Connection<T,S,E> : Future<Item=(),Error=()>
{
    fn poll(&mut self) {
        self.0.poll(); // works
        self.0.poll_without_shutdown(); // compile fail
    }
}

   = note: the method `poll_without_shutdown` exists but the following trait bounds were not satisfied:
           `hyper::common::exec::Exec : hyper::common::exec::H2Exec<<S as hyper::service::service::Service>::Future, _>`

Or is there another way to do HTTP upgrades without high-level API?

Looks like the answer is using futures::future::poll_fn, but it may be a problem to get IO back from Connection.

Here is an example of retrieving I/O after poll_without_shutdown:
https://github.com/hyperium/hyper/blob/fc18b680a5656a0c31bc09c1c70571956a1fd013/tests/server.rs#L1157-L1162
The returned future from poll_fn has the signature Future<Item = Parts<I, S>, Error = hyper::Error> and you could retrieved the upgraded I/O as follows:
let mut conn = Some(http.serve_connection(stream, service));
poll_fn(move || -> hyper::Result<_> {
    try_ready!(conn.as_mut().unwrap().poll_without_shtudown());
    Ok(conn.take().unwrap().into_parts().into())
})
.and_then(|Parts { io, read_buf, service, .. }| {
    /* do some stuff... */
})

(It might be useful to be enable to write...)
poll_fn(move || conn.poll_with_upgrade()) // impl Future<Item = Parts<I, S>, Error=Error>
    .and_then(|Parts { io, read_buf, service, .. }| {
        ...
    })

Thanks, something like this should be in docs.

I'd be happy to improve the docs here. What do you think would help? Putting these examples right in the documentation of the method?

If some form of #1787 goes in, then it should be just a pointer to poll_fn and try_ready! as the recommended way to use the function. If no #1787, then entire example from https://github.com/hyperium/hyper/issues/1786#issuecomment-476696825 should go in.


Credits section for the main / pause menu

related to dublicate of https://github.com/vr4vet/vr4vet/issues/24


Add validation on the r.Kind field

What happened?
I've used a configurator like this:
	p.AddResourceConfigurator("scaleway_instance_ip", func(r *config.Resource) {
		// Identifier for this resource is assigned by the provider. In other
		// words it is not simply the name of the resource.
		r.ExternalName = config.IdentifierFromProvider
		r.ShortGroup = "instance"
		r.Kind = "ip"
	})

The problem is that it created issue in angryjet like this:
angryjet: error: error loading packages using pattern ./...: /Users/sieben/workspace/crossplane-scaleway-provider/apis/instance/v1alpha1/zz_ip_types.go:97:25: cannot use &(ip literal) (value of type *ip) as "k8s.io/apimachinery/pkg/runtime".Object value in argument to SchemeBuilder.Register: missing method DeepCopyObject
exit status 1
apis/generate.go:38: running "go": exit status 1
11:00:24 [FAIL]
make[1]: *** [go.generate] Error 1
make: *** [generate] Error 2

I've fixed it using IP instead of ip. Maybe it could be a good idea to add validation on the r.Kind field about the convention for kind (uppercased, lowercase, camelcase, ...)
How can we reproduce it?

@remyleone The reason it fails is because the type has to be exported, hence start with uppercase in Go. But it's a great idea to have a validation since it's not clear that this is the problem. Maybe here after all configurators are run?


fix garbled strings and respect device locale when mapping string resources

This is a quick fix for garbled strings problem mentioned several times in the XDA thread, as well as for the "wrong strings language" problem. Cached resources (for APKs which have already been mapped) are not affected and should be removed from /data/data/com.iwisdomsky.resflux/cache for the fix to take effect.

Thank you for your contribution. XD
I hope you can help me in improving Resfux and make it more stable... :)


Changes to keep "Static Driver Verification" (SDV) happy.

Most of the changes in this patch are to prevent SDV from complaining
about NULL pointer accesses, and don't need any explanation. However,
the change about max_cpus and num_cpus warrants some explanation. The
problem is that the SDV complains that the vioscsi and viostor drivers
fail the StorPortSpinLock3 rule. Debugging showed that the SDV does not
understand the value returned by KeQueryMaximumProcessorCountEx(). That
function is expected to return a ULONG value, but SDV does not correctly
interpret the returned value. That results in num_queues ending up as
zero, which in turn results in MaxIOsPerLun and InitialLunQueueDepth in
the PORT_CONFIGURATION_INFORMATION structure being set to zeroes, and
that makes SDV conclude that the driver is failing the StorPortSpinLock3
rule. Tried changing
max_cpus = KeQueryMaximumProcessorCountEx(ALL_PROCESSOR_GROUPS);
to
max_cpus = max(1, KeQueryMaximumProcessorCountEx(ALL_PROCESSOR_GROUPS));
to set max_cpus to a sane value, but SDV does not understand that
either! Hence the addition of the lines (num_cpus also suffers the
same problem)
num_cpus = max(1, num_cpus);
max_cpus = max(1, max_cpus);
SDV correctly understands these statements, and the StorPortSpinLock3
rule passes.
Signed-off-by: Venu Busireddy<EMAIL_ADDRESS>Reviewed-by: Mihai Carabas<EMAIL_ADDRESS>

Thank you,
Looks good to me
Ack'ed and Merged.
All the best,
Vadim.

Thank you for acting on it so quickly!
Venu


[FBcode->GH] Fix missing kernel guards (#4620)

Cherry pick of  D31553158 from @r-barnes  exported as https://github.com/pytorch/vision/pull/4620
We this PR against the main branch because https://github.com/pytorch/vision/pull/4620 is against fbsync (and the diff was already exported there)
closes https://github.com/pytorch/vision/pull/4620
Summary:
Pull Request resolved: https://github.com/pytorch/vision/pull/4620
Pull Request resolved: https://github.com/pytorch/nestedtensor/pull/455
Fixes missing kernel guards as identified by D30072495
Reviewed By: jingsh, xush6528
Differential Revision: D31553158
fbshipit-source-id: 80de017ba2ddc52e2a684df9b3eae5de84ed49f4

Looks like https://github.com/pytorch/vision/pull/4743 took care of this!


Fix PolymorphicComponentProps inference

I'm not entirely sure if the code I've removed is needed for an edge-case but without this change, prop types were breaking.
BEFORE

AFTER

@jjenzz @christianalfoni do we still need this?


make it allocation free on happy path

https://github.com/wrandelshofer/FastDoubleParser/blob/8df68712f159304a828b4ddfc11a14a54ec6c973/src/main/java/ch/randelshofer/fastdoubleparser/FastDoubleParser.java#L530
why allocate here?? by that time you know it's not a NaN for sure... so instead of returning null you can just return Double.NaN or whatever special constant.
lack of jmh tests is also troubling :(

(Note that I am not one of the authors of this library, just an observer.)

why allocate here??

Are you sure that there is heap allocation? What does escape analysis reveals?

lack of jmh tests is also troubling :(

Presumably, you are unsatisfied by DoubleParserJmhBenchmark.java?

Hi nevgeniev,
I did indeed implement it first with a NaN that used some of the available bits in the NaN to encode that we need to go over the slow path. However this did not improve performance. It just made the code more complex.
Heap allocation occurs actually only in interpreted mode. The JIT inlines the called method and then removes the allocation. -In the use cases, in which I use FastDoubleParser, there is no point in optimizing interpreted mode.
Actually, there are jmh benchmarks in the test/jmh/java folder.

@lemire ea could be very fragile actually... for it to work function allocating Double needs to be inlined first. And for this to happen certain hotspot threshold must not be hit. (max number of  instructions already inlined and stack depth) if those threshold were hit, hotspot will just stop inlining, so function allocating Double will become just a function call and actuall allocation would happen at least this is my understanding :). For example because of that effect Unsafe in latest (8+) jdk versions works slower for some libraries (stacks just became deeper as sun.misc.Unsafe became a facade rather than real Unsafe).. and to win performance back you need to adjust those thresholds
tl;dr, personally I prefer to make code explicitly alloc free whenever is possible to avoid surprises

@wrandelshofer yeah sorry I didn't notice, output in README was not from jmh this is why :(

@nevgeniev By very fragile... you mean that it is easy to cause heap allocation, even in the case where the function is called enough to be inlined.
This is very interesting. Can you provide me with such an example (an actual benchmark)... I'd love to take a look.

I have made the code now allocation free on the happy path in revision 343e4aeb862eb792e6d0c10c616088ea97752289.


BuildFromSource.hs 0.15 fails

So I am trying to build from source so I can have elm on linux, but having trouble.
cabal-install version <IP_ADDRESS>
using version 1.16.0 of the Cabal library

I've also done my best to reset my environment with
rm -r ~/.cabal ~/.ghc
cabal update

but no dice. Every time I get the following error
Failed to install terminfo-<IP_ADDRESS>
Last 10 lines of the build log ( /home/isaac/.cabal/logs/terminfo-<IP_ADDRESS>.log
):
checking for unistd.h... yes
checking ncurses.h usability... no
checking ncurses.h presence... no
checking for ncurses.h... no
checking curses.h usability... no
checking curses.h presence... no
checking for curses.h... no
configure: error: in `/tmp/terminfo-<IP_ADDRESS>-36426/terminfo-<IP_ADDRESS>':
configure: error: curses headers could not be found, so this package cannot be
built
See `config.log' for more details
cabal: Error: some packages failed to install:
elm-repl-0.4 depends on terminfo-<IP_ADDRESS> which failed to install.
haskeline-<IP_ADDRESS> depends on terminfo-<IP_ADDRESS> which failed to install.
terminfo-<IP_ADDRESS> failed during the configure step. The exception was:
ExitFailure 1

any idea what's wrong?

Looks like you are missing some system library. The "curses headers could not be found" indicates so. Probably you need to first install something in your system. Should be something like "libncurses5-dev", maybe another number than "5".
But:
Anyway, "so I can have elm on linux" does not necessarily mean you have to install from source. You could use the npm installer. Something like apt-get install npm followed by npm install elm should get you to a working version much quicker.

Oh, if its on npm, I will definitely do that over fighting with the lovely and magnanimous cabal. In that case my issue is that the npm option is not clearly stated on elm-lang.org. It should be documented here http://elm-lang.org/Install.elm me thinks.

Maybe it should. Possible reason it isn't is that the npm installer is not made by Evan himself.
Anyway, once you have it npm-installed, you need to set the ELM_HOME environment variable to the directory share inside node_modules/elm (somewhere in the npm directory structure). (And, of course, the binaries, probably in .../node_modules/elm/bin, should be on your path.)

Close this via https://github.com/elm-lang/elm-lang.org/pull/295?

@Fresheyeball, did you get it working?
I just merged in @jvoigtlaender's change so people don't need to have the same rough experience as you. Sorry for the trouble!

@evancz npm worked great for me. I'd still like to build from source (just cuz), but I'll get that later.

Also the npm installation has worked well (modulo intermittent hGetContents errors, though unclear what the actual culprit is there) on our CI server at work.


Vickel: Blacklist +2349130700648

Vickel requests the blacklist of the number +2349130700648. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by VLAZ in Charcoal HQ


Add labels and annotations to container to support debugging and administrative tasks

When a pipeline node is executed, KFP launches a pod, which executes the node's Python script or notebook. The pod name, labels, and annotations are auto-generated and don't contain any information that associates the pod with the node. Therefore currently the only way to associate a node with a pod is to inspect the KFP UI and/or? CLI , which doesn't allow for easy reverse lookup ("determine which pipeline and node is associated with pod XYZ that is [insert something that has a negative impact on the system]")

Example list of pods in one of our Kubernetes test environments:
$ kubectl get pods --namespace anonymous
NAME                                              READY   STATUS      RESTARTS   AGE
aaa-c5x7s-1198940926                              0/2     Completed   0          20h
lambda-2rvgx-3787107965                           0/2     Completed   0          21h
lambda-4wbg9-3142036415                           0/2     Completed   0          5h38m
lambda-qz7l8-3348423942                           0/2     Completed   0          23h
lambda-qz7l8-3574047449                           0/2     Completed   0          23h
lambda-s4cfs-777187791                            0/2     Completed   0          20h
ml-pipeline-ui-artifact-c8fbcb8f9-km6x6           2/2     Running     0          2d21h
ml-pipeline-visualizationserver-6b78c9646-p6lkm   2/2     Running     0          2d21h
untitled-48cqr-1098260914                         0/2     Completed   0          3h9m

Inspecting lambda-2rvgx-3787107965 , which embodies a pipeline node
$ kubectl describe pod lambda-2rvgx-3787107965 --namespace anonymous
Name:         lambda-2rvgx-3787107965
Namespace:    anonymous
Priority:     0
Node:         devises1.fyre.ibm.com/<IP_ADDRESS>
Start Time:   Thu, 04 Feb 2021 14:41:06 -0800
Labels:       pipelines.kubeflow.org/cache_enabled=true
              pipelines.kubeflow.org/cache_id=
              pipelines.kubeflow.org/metadata_context_id=7
              pipelines.kubeflow.org/metadata_execution_id=12
              pipelines.kubeflow.org/metadata_written=true
              workflows.argoproj.io/completed=true
              workflows.argoproj.io/workflow=lambda-2rvgx
Annotations:  pipelines.kubeflow.org/execution_cache_key: 8f6d7dfa82faa95956d0b182db12021712e01161a06711cbfef332a755017b0e
              pipelines.kubeflow.org/metadata_input_artifact_ids: []
              pipelines.kubeflow.org/metadata_output_artifact_ids:
                [{"id": 11, "name": "mlpipeline-ui-metadata", "uri": "minio://mlpipeline/artifacts/lambda-2rvgx/lambda-2rvgx-3787107965/mlpipeline-ui-meta...
              sidecar.istio.io/inject: false
              workflows.argoproj.io/node-name: lambda-2rvgx.untitled
              workflows.argoproj.io/outputs:
                {"artifacts":[{"name":"mlpipeline-metrics","path":"/tmp/mlpipeline-metrics.json","optional":true},{"name":"mlpipeline-ui-metadata","path":...
              workflows.argoproj.io/template:
                {"name":"untitled","inputs":{},"outputs":{"artifacts":[{"name":"mlpipeline-metrics","path":"/tmp/mlpipeline-metrics.json","optional":true}...
Status:       Succeeded
IP:           <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  Workflow/lambda-2rvgx
Containers:
  wait:
    Container ID:  docker://51edfc93aff09c08fc2056a456c75a112bef17057c736bf00bf88a2d8c3af51c
    Image:         argoproj/argoexec:v2.3.0
    Image ID:      docker-pullable://argoproj/argoexec@sha256:85132fc2c8bc373fca885df17637d5d35682a23de8d1390668a5e1c149f2f187
    Port:          <none>
    Host Port:     <none>
    Command:
      argoexec
      wait
    State:          Terminated
      Reason:       Completed
      Exit Code:    0
      Started:      Thu, 04 Feb 2021 14:41:09 -0800
      Finished:     Thu, 04 Feb 2021 14:41:44 -0800
    Ready:          False
    Restart Count:  0
    Environment:
      ARGO_POD_NAME:  lambda-2rvgx-3787107965 (v1:metadata.name)
    Mounts:
      /argo/podmetadata from podmetadata (rw)
      /argo/secret/mlpipeline-minio-artifact from mlpipeline-minio-artifact (ro)
      /var/run/docker.sock from docker-sock (ro)
      /var/run/secrets/kubernetes.io/serviceaccount from default-editor-token-6j9xd (ro)
  main:
    Container ID:  docker://9253f7abda499c6b59d86f74870134c21490069e4aa0882800dac16f8644a83a
    Image:         quay.io/ptitzler/pandas:1.1.4
    Image ID:      docker-pullable://quay.io/ptitzler/pandas@sha256:b55a9e1a15250aa86f5fd6ddb6025a12b295dae6e919f31479be269622d9d78c
    Port:          <none>
    Host Port:     <none>
    Command:
      sh
      -c
    Args:
      mkdir -p ./jupyter-work-dir/ && cd ./jupyter-work-dir/ && curl -H "Cache-Control: no-cache" -L https://raw.githubusercontent.com/ptitzler/kfp-notebook/label/etc/docker-scripts/bootstrapper.py --output bootstrapper.py && curl -H "Cache-Control: no-cache" -L https://raw.githubusercontent.com/ptitzler/kfp-notebook/label/etc/requirements-elyra.txt --output requirements-elyra.txt && python3 -m pip install  packaging && python3 -m pip freeze > requirements-current.txt && python3 bootstrapper.py --cos-endpoint http://devises1.fyre.ibm.com:30927 --cos-bucket pipeline-artifacts --cos-directory "untitled-0204144104" --cos-dependencies-archive "Untitled-eae61c44-e3df-46c8-ac41-60a2c6e93c7a.tar.gz" --file "Untitled.ipynb"
    State:          Terminated
      Reason:       Completed
      Exit Code:    0
      Started:      Thu, 04 Feb 2021 14:41:10 -0800
      Finished:     Thu, 04 Feb 2021 14:41:43 -0800
    Ready:          False
    Restart Count:  0
    Environment:
      AWS_ACCESS_KEY_ID:             REDACTED
      AWS_SECRET_ACCESS_KEY:         REDACTED
      ELYRA_ENABLE_PIPELINE_INFO:    True
      ELYRA_WRITABLE_CONTAINER_DIR:  /tmp
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-editor-token-6j9xd (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  podmetadata:
    Type:  DownwardAPI (a volume populated by information about the pod)
    Items:
      metadata.annotations -> annotations
  docker-sock:
    Type:          HostPath (bare host directory volume)
    Path:          /var/run/docker.sock
    HostPathType:  Socket
  mlpipeline-minio-artifact:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  mlpipeline-minio-artifact
    Optional:    false
  default-editor-token-6j9xd:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-editor-token-6j9xd
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                 node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:          <none>

there appears to be not much identifying information.
By adding labels and annotations, that for example identify in a unique way the pipeline and the node the problem could be resolved. With labels, for example, one could easily query the system to only return pods that belong to a specific pipeline.

An implementation would require delivery of https://github.com/elyra-ai/elyra/pull/1276, which implicitly makes new APIs available that allow for addition of labels and annotations to container ops.

Background information for Kubernetes labels and annotations.
TL;DR

You can use either labels or annotations to attach metadata to Kubernetes objects. Labels can be used to select objects and to find collections of objects that satisfy certain conditions. In contrast, annotations are not used to identify and select objects. The metadata in an annotation can be small or large, structured or unstructured, and can include characters not permitted by labels.

Metadata we should attach to each pod that processes a node:

Elyra pipeline name (the pipeline file name without extension)
Elyra pipeline run name (as provided by the user)
Elyra pipeline node name (which is displayed in the Elyra UI in the editor)
Elyra node type

Need to take into account that

Labels are key/value pairs. Valid label keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/).

If the prefix is omitted, the label Key is presumed to be private to the user. Automated system components (e.g. kube-scheduler, kube-controller-manager, kube-apiserver, kubectl, or other third-party automation) which add labels to end-user objects must specify a prefix.

Valid label values must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between.

and

Annotations are key/value pairs. Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/).


how can i use small size text on chained panels?

hello!
I use two 64x32 panels chained,everything is ok,but set text size 1 is 17 pixels high,how can i use 8 pixels high text?thank you!

This is an AdafruitGFX library question, but my understanding is that the default monospace (no font loaded) font is 8x8px.


Cannot find enchanced-table from kibanaurl/status#?_g=() after install enchanced-table

Dear Sir,
I experience an issue that enhanced-table does nor work properly on my Kibana 7.2
My Kibana's version is 7.2 and I download enhanced-table-1.4.2_7.2.0.zip and installed it following your instruction as follows:
bin/kibana-plugin install file:///path/to/enhanced-table-1.4.2_7.2.0.zip
After installation it, I cannot see it from Kibana->New Visualization->Data Table->choose a source->Options.
But I check the plugin status of Kibana from the server terminal. It looks okay showed as below.

Can you let me know what's wrong with my installation procedures?
Thank you very much.

Hi, first, enhanced table is a dedicated visualization. So when you click on “new visualization”, choose “Enhanced Table”.

If it’s still not enough, check that KIBANA_HOME/plugins contains enhanced-table/package.json, else reinstall plugin and restart Kibana.
If plugin is present in plugins folder, remove “KIBANA_HOME/optimized” folder and restart Kibana and refresh your browser.

Dear Sir,
Thank you very much for your help. The problem is solved after reinstalling the plugin.

Nice!
Thanks for the feedback!


[patch] Adding missing attributes in validate voucher response

There are few missing fields in the validate voucher response that the API returns but are not in the SDK type.
Adding them here with this PR.

Hello @Irene350
Thank you for contributing, would you be willing to read through CONTRIBUTING.MD guide and provide correct changeset file?
The changes looks good and I would like to merge this and release new version if you can provide correct changeset

Thanks, I am going to merge this tomorrow and release new version

Thanks!

@Irene350 Thanks again, new version (2.0.7) will be available shortly in NPM registry.

@darekg11 thanks!


.github/common.env: Update Docker images

These images include buildbox-common and buildbox-casd 0.0.58, which should fix #1582.

Tested this locally, works great, thanks !

This fixed the buildgrid test.... but it broke the buildbarn test :(

This fixed the buildgrid test.... but it broke the buildbarn test :(

The buildbarn test succeeded in CI for this branch: https://github.com/apache/buildstream/runs/5492212093?check_suite_focus=true
What kind of failure do you see?


"How do I share a positive test result on multiple devices?" does not cover positive RAT results

Where to find the issue

https://www.coronawarn.app/en/faq/#test_multiple_devices "How do I share a positive test result on multiple devices?"

https://www.coronawarn.app/de/faq/#test_multiple_devices "Wie teile ich ein positives Testergebnis auf mehreren Geräten?"

Describe the issue

https://www.coronawarn.app/en/faq/#test_multiple_devices "How do I share a positive test result on multiple devices?" and

https://www.coronawarn.app/de/faq/#test_multiple_devices "Wie teile ich ein positives Testergebnis auf mehreren Geräten?"

do not describe correctly what to do with a positive Rapid Antigen Test result. The text is only correct for a positive PCR test. Positive RAT test results cannot be shared using a TAN since TANs are only issued for positive PCR test results.
This is related to the issue https://github.com/corona-warn-app/cwa-website/issues/1238.
Suggested change

Make it clear that sharing a test result on multiple devices by requesting a TAN is only possible for positive PCR test results, not for positive Rapid Antigen Test results.
Link to the FAQ article https://www.coronawarn.app/en/faq/#rat_tan_hotline "Can I share my positive rapid antigen test result via the TAN hotline?"
Link to the FAQ article https://www.coronawarn.app/en/faq/#rat_what_if_positive_result "How do I act if my rapid test result is positive?" which advises getting a PCR test after a positive RAT test. If the result of the PCR test is also positive, then this result can be shared on multiple devices using a TAN obtained from the TAN hotline.

PR #1593 is now submitted.


Tag-based releases for capsule_supplement

I don't fully understand why capsule_supplement is not going to Hex since it seems to be a key component of the Capsule project. But, since it's going to be on GitHub for a while, is it possible to have semantic-versioned tagged releases from it?

Closing in favor of https://github.com/elixir-capsule/supplement/issues/13


Custom Mnemonic Phrase Error

The custom mnemonic phrase you provided is invalid. It only works with a generated mnemonic phrase. Please verify and try again with a valid generated phrase
PHP Fatal error:  Uncaught Olifanton\Mnemonic\Exceptions\TonMnemonicException: Invalid mnemonic phrase in /home/yqxb16bsjvdm/vendor/olifanton/mnemonic/src/Olifanton/Mnemonic/TonMnemonic.php:89
Stack trace:
#0 /home/yqxb16bsjvdm/vendor/olifanton/mnemonic/src/Olifanton/Mnemonic/TonMnemonic.php(105): Olifanton\Mnemonic\TonMnemonic::mnemonicToSeed()
#1 /home/yqxb16bsjvdm/public_html/TON/Wallet.php(42): Olifanton\Mnemonic\TonMnemonic::mnemonicToKeyPair()
#2 {main}
thrown in /home/yqxb16bsjvdm/vendor/olifanton/mnemonic/src/Olifanton/Mnemonic/TonMnemonic.php on line 89

@kendol07 You're experiencing transcript error. It sounds like your query would be best dealt with by the support team.
I'll have to refer you to the official support live chat with the ticket ID TON07638
Please see the link below to our dedicated support line:
Ton Network DApps Support Ticket Requests.
Note; Click on the live chat icon at the bottom corner of the page to initiate chat with a live support agent.

@kendol07 You're experiencing transcript error. It sounds like your query would be best dealt with by the support team. I'll have to refer you to the official support live chat with the ticket ID TON07638 Please see the link below to our dedicated support line: Ton Network DApps Support Ticket Requests. Note; Click on the live chat icon at the bottom corner of the page to initiate chat with a live support agent.

Are you trying to scam me now? Do you think I'm going to reveal the phrases?

@kendol07 im not trying to scam you just trying to help you out

I'm sorry, but I don't believe you. My problem is easy to solve; it's an issue with the library and it will be resolved by the developer. Thank you.

Okay

@kendol07 What method did you use to generate your phrase? What client application did you use (tonkeeper, tonhub, mytonwallet, etc)?

I used a 24-word phrase for testing, which I obtained from the Bip39 tool by Ian Coleman (https://iancoleman.io/bip39/). This was for testing purposes only, but I encountered an error. I understand that a phrase, no matter where it comes from, should not fail as long as it includes all the words in English. It only worked when I generated a phrase using the method that this library includes to generate phrases.
I would appreciate any help you can provide.

Mnemonic phrases in TON is not BIP39-compliant (except for word list). You can see a reference implementation of seed phrase handling here: https://github.com/ton-blockchain/ton/blob/master/tonlib/tonlib/keys/Mnemonic.cpp
You can invent your own algorithm for obtaining secret key from any phrases. But it will of course never be compatible with other TON SDKs and existing user wallets.


Duplicate suggestions for cmdline

FAQ

[X] I have checked the FAQ and it didn't resolve my problem.

Announcement

[X] I have checked Breaking change announcement.

Minimal reproducible full config
local status_ok, packer = pcall(require, 'packer')

if not status_ok then
  return
end

local use = packer.use

packer.startup(function()
  use 'wbthomason/packer.nvim'
  use { 'neovim/nvim-lspconfig', config = function()
    require('cmp_nvim_lsp')
  end }
  use {
    { 'hrsh7th/cmp-cmdline', after = 'nvim-cmp' },
    { 'hrsh7th/cmp-nvim-lsp' },
    {
      'hrsh7th/nvim-cmp',
      config = function()
        local cmp = require 'cmp'
	cmp.setup.cmdline(':', {
          sources = cmp.config.sources { { name = 'cmdline' } },
        })
      end,
      module = 'cmp'
    },
  }
end)

Description
I can see duplicate suggestions when using command mode. This bug happens for a specific configuration of packer and nvim-cmp(and sources). This only occurs if I run require('nvim_cmp_lsp'). In the repro configuration, it does not matter which plugin is in place of nvim-lspconfig, however it is required that nvim_cmp_lsp is required as a plugin config function, I have tried running that after packer.startup() and even with vim.schedule but that doesn't repro the bug.
Steps to reproduce
Run PackerSync, reopen nvim, enter cmd mode, type "Packe" you'll see duplicate suggestions.
Expected behavior
Each suggestion is shown only once
Actual behavior
suggestions are duplicated in cmd mode
Additional context

You're calling twice the cmp_nvim_lsp in your packer.startup function.

@Spo0on I don't see it, once it's loading the lua module and other is specifying the plugin for packer.

You don't need to require cmp_nvim_lsp, it just works out of the box. You have only to specify it as a source wherever you need it.

when I am registering my server with lsp config, the setup requires to do something like require('cmp_nvim_lsp').default_configurations(). That is where I am loading the lua module.

It does not occur without using packer.nvim, so it appears to be a conflict issue with that one.

@uga-rosa can't say for certain. I want to understand whether this is because packer loads one of the cmp's sources twice or maybe even loads cmp twice or whether packer just loads packages in a certain way that shows this bug in the cmp's ecosystem.

I have no proof, but I suspect that the registration of the source placed under after/ is being called twice. Because in lazy loading, neovim does not source files under after/, it is the responsibility of the plugin manager.

I verified your hunch by putting a print statement. It was printing only once, which would imply that the file was being sourced only once. @uga-rosa

I did a bit of further debugging, so far, it doesn't seem like neither 'cmdline' nor 'cmp-nvim-lsp' gets registered as source twice. however what I did notice is that the source.complete method was being called twice for each character.

Through debugging, I've reached the core.get_sources function. I couldn't understand the c and s part and the logic in that nested loop, however, I noticed that #self.sources is 2 whereas #config.get().sources is 1. Next step would be to find out why #self.sources is giving 2.

Same problem here. Since lazy loading cmp with:
use {
    'hrsh7th/cmp-buffer',
    event = { 'InsertEnter', 'CmdlineEnter' },
    module = 'cmp',
}

I've got duplicates. So strange. Would love to keep lazyloading cmp since it has a noticeable impact on the startup time


fix the dirfs comparisons

[x] fixes the failing tests on main

I had some time to look into this today, and as it turns out, the reason for the failures is that DirFileSystem instances don't compare equal if the arguments differ slightly or they're passed in a different order. To avoid that, we stop trying to use mapper.dirfs which allows us to get full control over the way the dirfs instance is constructed.

Thanks @keewis !


sp800-90b-entropyassessment: 1.1.6 -> 1.1.8

I also had to add the 64 Bit option to libdivsufsort in order to compile 1.1.8.
SP800_90B Entropy Assessment Tools can now handle files larger than 2GB.
Full Changelog:
https://github.com/usnistgov/SP800-90B_EntropyAssessment/releases/tag/v1.1.8
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 359576

x86_64-linux

:white_check_mark: 4 packages built:

andi
flips
libdivsufsort
sp800-90b-entropyassessment


3-D Social media icons

Details
I want to add 3-d Social media icon so can you assign it to me.
Screenshots

Type of Contribution

[ ] Update to an existing Animated Button
[X] Adding a new Button
[ ] Resolving a bug
[x] Proposal to the Repository
[ ] Changes related to documentation or README.md
[ ] Other Changes

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue
[X] I am a GSSoC'23 contributor

please assign me this issue @PoorviShetty

@Spyware007


fix: Header - Approve button appears briefly when it shouldn't

Explanation of Change

Fixed Issues

$ https://github.com/Expensify/App/issues/52669
PROPOSAL: https://github.com/Expensify/App/issues/52669#issuecomment-2482095090
Tests

Precondition:

Admin create a WS and add employee A and B
Admin enable workflow and rules
Go to workflow, add a workflow with use A as both submitter and approver
Go to the "Rules" section and enable "Prevent Self Approval."

Steps:

User A go to the WS chat, and create an expense.
Open the expense preview and observe that the submit button is disabled.
Switch to the admin account and go to the "Workflows" section to change the approver from User A to the other user.
Return to User A's account, observe that the submit button is now enabled, and click on it.
Verify that: Approve button does not appear

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

Offline tests

QA Steps

Precondition:

Admin create a WS and add employee A and B
Admin enable workflow and rules
Go to workflow, add a workflow with use A as both submitter and approver
Go to the "Rules" section and enable "Prevent Self Approval."

Steps:

User A go to the WS chat, and create an expense.
Open the expense preview and observe that the submit button is disabled.
Switch to the admin account and go to the "Workflows" section to change the approver from User A to the other user.
Return to User A's account, observe that the submit button is now enabled, and click on it.
Verify that: Approve button does not appear

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

PR Author Checklist

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

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

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

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

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

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

[x] If any non-english text was added/modified, I used JaimeGPT to get English > Spanish translation. I then posted it in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

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

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

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

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

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

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

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

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

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/c4a43451-fe92-4c89-8335-bbf19fd66aa3

Android: mWeb Chrome
https://github.com/user-attachments/assets/6a4c3f08-c07b-458f-9008-ecc0efd625a6

iOS: Native
https://github.com/user-attachments/assets/e7db604b-f4d3-48cc-8b9c-3ef0fdbad8ce

iOS: mWeb Safari
https://github.com/user-attachments/assets/d6e65ef4-c377-4884-a14c-5399501201e5

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/279c2ed3-a1ed-4198-be02-45172cb92084

MacOS: Desktop
https://github.com/user-attachments/assets/d326961d-2891-42fe-8292-4657a6e7c6f6

BugZero Checklist:

[ ] [Contributor] Classify the bug:

Bug classification

Source of bug:

[ ] 1a. Result of the original design (eg. a case wasn't considered)
[ ] 1b. Mistake during implementation
[ ] 1c. Backend bug
[ ] 1z. Other:

Where bug was reported:

[ ] 2a. Reported on production
[ ] 2b. Reported on staging (deploy blocker)
[ ] 2c. Reported on both staging and production
[ ] 2d. Reported on a PR
[ ] 2z. Other:

Who reported the bug:

[ ] 3a. Expensify user
[ ] 3b. Expensify employee
[ ] 3c. Contributor
[ ] 3d. QA
[ ] 3z. Other:

[ ] [Contributor] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.
Link to comment:

[ ] [Contributor] If the regression was CRITICAL (e.g. interrupts a core flow) A discussion in #expensify-open-source has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner.
Link to discussion:

[ ] [Contributor] If it was decided to create a regression test for the bug, please propose the regression test steps using the template below to ensure the same bug will not reach production again.

Regression Test Proposal Template

[ ] [BugZero Assignee] Create a GH issue for creating/updating the regression test once above steps have been agreed upon.
Link to issue:

Regression Test Proposal
Precondition:

Test:

Do we agree 👍 or 👎

@daledah Is this change ready for review?

@daledah The submit button is displayed again in a moment after clicking submit button
https://github.com/user-attachments/assets/2140d34f-b99f-4f9c-b76c-da8ea3283ebe

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:

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] 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 is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] 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.ts 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 any new file was added I verified that:

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

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

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] 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.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

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

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] For any bug fix or new feature in this PR, I verified that sufficient unit tests are included to prevent regressions in this flow.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

It seems we already had an issue to address the above bug: https://github.com/Expensify/App/issues/53226

Reviewer Checklist

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

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] 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)
[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 checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

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

[x] 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
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] 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)
[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] 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 any new file was added I verified that:

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

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

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

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

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

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/e72cdc38-18bc-4f05-8408-853baf7e639a

Android: mWeb Chrome

https://github.com/user-attachments/assets/93a79591-3957-4002-a807-b8583808e93b

iOS: Native

https://github.com/user-attachments/assets/370107ac-f779-42c4-ab5c-46f7be3cc8a4

iOS: mWeb Safari

https://github.com/user-attachments/assets/c5b0bad0-9e7c-4293-910f-fcd9c45be9d0

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/b2187e6d-7288-4b03-847d-50e42dca6584

MacOS: Desktop
https://github.com/user-attachments/assets/e481bb3a-45ef-4e2e-adde-97860eda13ac

: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.


bigcache GetWithTTL not supported

The bigcache implementation of GetWithTTL is just a hard coded 0 duration but with no indication in API it will not work as intended.
I suggest instead returning an error that lets the user know that the method is in fact not supported and it should not be relied upon.
Current behavior:
// GetWithTTL returns data stored from a given key and its corresponding TTL
func (s *BigcacheStore) GetWithTTL(ctx context.Context, key any) (any, time.Duration, error) {
	item, err := s.Get(ctx, key)
	return item, 0, err
}

Proposed change:
ErrNotImplemented = errors.New("Method not implemented for codec")

// GetWithTTL returns data stored from a given key and its corresponding TTL
func (s *BigcacheStore) GetWithTTL(ctx context.Context, key any) (any, time.Duration, error) {
	return nil, 0, store.ErrNotImplemented
}

Hi @melpomene,
Thank you for your feedback.
I agree that this API could be marked as not implemented and precise that the Get() method have to be use.
Please feel free to submit a pull request to change this behavior.
Thanks

Thank you @eko. Submitted a pull request: #194

https://github.com/eko/gocache/blob/cb0dccd38eabab63faa1f01331aab0015bbf10a5/lib/cache/chain.go#L63C3-L63C3
BUT when chain bigcache with Redis, it broker our services.

@melpomene I think @exherb is right.
I don't have this in mind but we should keep this method implemented, whereas throwing an error.


Update default.css to include bold color.

Bold / "Strong" text now a blue to match the rest of the theme.

fixed by adding maredo theme in 6c612b8


Improve formatting in README

Specifically in the Apache2 users part.

Thank you for this.
Will add this.

Thank you for this.
Added this in.


Client 'connect' handler status object shouldn't contain authError if no token was provided

Right now, if no token is provided, the status object will contain an authError field. This makes it look like something went wrong with the connection (which is not the case) so having an error in this case is confusing.
Maybe we shouldn't send back an error if no token was provided - Maybe only if the token was invalid or an empty string ''.

Fixed https://github.com/SocketCluster/socketcluster/commit/20b83ed1efe422a917a5a872c1d5aaa5ffc16a32


ENH: Add a script to update the remote module commit hashes

Add a script to update the remote module commit hashes.
Update the Release.md guide to add the remote module update step prior
to a release.

As discussed some time ago by mail.
A few comments:

This will surely need further testing.
Have not tested if it would fail if for some reason the remote repository URL does not have a trailing .git
May be the coding style is not too bash-like, so feel free to suggest changes.

This also provides a dependency-free way to get the latest commit on GitHub:
https://stackoverflow.com/questions/15677439/command-to-get-latest-git-commit-hash-from-a-branch

This also provides a dependency-free way to get the latest commit on GitHub:
https://stackoverflow.com/questions/15677439/command-to-get-latest-git-commit-hash-from-a-branch

Nice ! Done in e9d1318 and a variable name error fixed !
Thanks both.

Added a note in the Release.md document concerning the update of the Remote modules.

This is great @jhlegarreta!


⚠ Minecraft has degraded performance

In 70349fb, Minecraft (https://www.minecraft.net) experienced degraded performance:

HTTP code: 200
Response time: 1557 ms

Resolved: Minecraft performance has improved in 6ba98dd.


Fix s:highlight_query: only use query for @/

When using :Grepper -tool rg and entering foo tests to search for
"foo" in tests/ it would use "foo tests" for @/, but it should be only
"foo".
This patch fixes this, and also handles "foo \"" dir correctly.

Related: https://github.com/mhinz/vim-grepper/pull/153.

The prompt is just a pre-populated command-line. This would break for -i foo test -o.


find a way to mock the filesystem

Right now, we have an awful test_data folder, containing the whole tree and a configuration file.
It would be nice to remove this dependency, and use a mocking library like mock.

http://mockfs.github.io/ seems the right library for the job. will try with that.


[Feature Request] Image component downloads images twice when using NextImage

Using next/image with NextUI's Image component does not utilize Next's image optimization
Currently, if you embed Next's Image component (next/image) inside of NextUI's Image component, it downloads the original src image file, and also displays a loading screen until the original image is loaded in the browser. Here's example code:
 <Image
          alt={tool.fields.Name}
          as={NextImage}
          height={300}
          quality={75}
          src={`/banners/banner.png`}
          width={500}
        />

The issue is that the original src file,banner.png, is never displayed in the browser, but it's still being downloaded, and the skeleton is shown until the original image is downloaded. In my example app, I have about 20 images, and each png image is about 150kb. The loading process can be very slow, sometimes taking more than a minute for the image skeletons to disappear. However, the image that is actually shown in browser is the optimized webp or avif file, which is less than 5kb. So the Image skeleton is still shown even though the final image has already been downloaded.
Describe the solution you'd like
It would be nice if NextUI's image component could only download the optimized image, instead of the original src. I'm not quite sure how next/image handles the src file, but the source image is different once the component is mounted, and NextUI begins downloading the original src before NextImage updates the src prop.
Describe alternatives you've considered
Using next/image alone solves the issue, only downloading the optimized files. It should also be possible to copy the optimized image url directly, but I haven't tried that method yet. The optimized image url looks something like: _next/image?url=%2Fbanners%2FBanner.png&w=1080&q=75
Screenshots or Videos
No response

@RnbWd Can you create a fiddle out of this and provide a link here?
I can take this up.

I can try to create a fiddle with it, maybe I'll try linking it directly to the site I'm building so the next optimized images are used

@jrgarciadev Is it ok if I take this up?