Invalidate compiled script cache when it is updated

What type of enhancement is this?
User experience, API
What does the enhancement do?
We have to invalidate other frontend's compiled python script cache when the script is updated in cluster mode.
We need an event broadcast mechanism to do it.
Implementation challenges
No response

It can be done by calling Mailbox::broadcast to submit a "script invalidation request" to all the frontend nodes. There's an example to start with, see struct InvalidateCache.

Hi, I would like to try this one. Could you assign it to me?

Hi, I would like to try this one. Could you assign it to me?

Have fun🚀

Hi, I would like to try this one. Could you assign it to me?

Have fun🚀

Hi @WenyXu, I plan to communicate via Frontend--notify-->Metasrv--broadcast-->Frontend When I implemented it, I found that mailbox::send in Frontend requires an InstructionReply, and it seems that Instruction is always sent by Metasrv as heartbeat response. If I make Frontend notify Metasrv, it seems to break this semantics and design. Should I do it this way? Cloud you give me any suggestions?

Hi, I would like to try this one. Could you assign it to me?

Have fun🚀

Hi @WenyXu, I plan to communicate via Frontend--notify-->Metasrv--broadcast-->Frontend. When I implemented it, I found that mailbox::send in Frontend requires an InstructionReply, and it seems that Instruction is always sent by Metasrv as heartbeat response. If I make Frontend notify Metasrv, it seems to break this semantics and design. Should I do it this way? Cloud you give me any suggestions?

PTAL @waynexia

Hi, I would like to try this one. Could you assign it to me?

Have fun🚀

Hi @WenyXu, I plan to communicate via Frontend--notify-->Metasrv--broadcast-->Frontend. When I implemented it, I found that mailbox::send in Frontend requires an InstructionReply, and it seems that Instruction is always sent by Metasrv as heartbeat response. If I make Frontend notify Metasrv, it seems to break this semantics and design. Should I do it this way? Cloud you give me any suggestions?

PTAL @waynexia

It seems we need to design an RPC service to accept cache invalidation requests from the Frontend. Would you like to implement this RPC service? We need another issue to track this feature.

We still cannot ensure a correct result. The step broadcast -> other frontends is not synced. Let's implement this first to achieve a relax invalid process.

We still cannot ensure a correct result. The step broadcast -> other frontends is not synced. Let's implement this first to achieve a relax invalid process.

In this context, what level of consistency are we expecting?

Expect read-after-write like other insertion operations.

Expect read-after-write like other insertion operations.

My plan is to add a version field to the scripts table (or use gmt_modified, but I'm not sure if there will be clock drift).
When Frontend try to execute a script, it needs to read the scripts table and determine if the local cache is outdated.
If the read and write operations follow a read-after-write consistency, it ensures the latest data.
The cost is that we have to read the scripts table, which adds an extra RTT. However, I believe this is acceptable because I think caching the script is not intended to save this particular RTT, but rather to reduce the CPU overhead during script compilation.
Moreover, we no longer need to implement broadcasting in the MetaSrv.
Do you think this plan is feasible?

version should be enough. The map from script to "compiled binary" must (and already) exist. We only need to leverage some cache invalidation mechanism over version. Having an extra read to datanode also looks fine to me. Data feeds into scripts also come from datanode. And there are ways to reduce this overhead.
This does override the need for broadcasting if we choose to implement this "strict" mode now Can you give a more detailed per-step plan of how you break this task down and plan to implement it?

cc @discord9

version should be enough. The map from script to "compiled binary" must (and already) exist. We only need to leverage some cache invalidation mechanism over version. Having an extra read to datanode also looks fine to me. Data feeds into scripts also come from datanode. And there are ways to reduce this overhead.
This does override the need for broadcasting if we choose to implement this "strict" mode now Can you give a more detailed per-step plan of how you break this task down and plan to implement it?

Sure.
I have made some changes to my plan because I found a new issue. After inserting a script, it cannot be executed through SQL in other Frontends unless it is first executed through the HTTP API using /run-script. This is because scripts are only registered as UDFs in the ScriptManager::compile. I previously overlooked the possibility of executing it directly through UDF instead of going through the /run-script API.
Taking the UDF part into consideration, here is my plan:

First, add a providers field and a get_function_fallback function to FunctionRegistry. The get_function_fallback function will attempt to dynamically retrieve the Function through the providers.
Then, In the QueryEngineState::udf_function function, use FUNCTION_REGISTRY.get_function_fallback to retrieve the latest UDF.
The ScriptManager will implement this provider. I plan to modify the try_find_script_and_compile function to read from the scripts table each time and compare it with the locally cached version to determine whether to recompile and update the cache(ScriptManager::compiled).
Of course, there will be an additional field in the cache to indicate the version. But I'm not sure whether to add a new version field to scripts table or simply use gmt_modifie. I'm concerned that adding a new field might cause some complications during the upgrade.

Now, whether it is called through the HTTP API or SQL UDF, the latest script can be executed.

version should be enough. The map from script to "compiled binary" must (and already) exist. We only need to leverage some cache invalidation mechanism over version. Having an extra read to datanode also looks fine to me. Data feeds into scripts also come from datanode. And there are ways to reduce this overhead.
This does override the need for broadcasting if we choose to implement this "strict" mode now Can you give a more detailed per-step plan of how you break this task down and plan to implement it?

Sure.
I have made some changes to my plan because I found a new issue. After inserting a script, it cannot be executed through SQL in other Frontends unless it is first executed through the HTTP API using /run-script. This is because scripts are only registered as UDFs in the ScriptManager::compile. I previously overlooked the possibility of executing it directly through UDF instead of going through the /run-script API.
Taking the UDF part into consideration, here is my plan:

First, add a providers field and a get_function_fallback function to FunctionRegistry. The get_function_fallback function will attempt to dynamically retrieve the Function through the providers.
Then, In the QueryEngineState::udf_function function, use FUNCTION_REGISTRY.get_function_fallback to retrieve the latest UDF.
The ScriptManager will implement this provider. I plan to modify the try_find_script_and_compile function to read from the scripts table each time and compare it with the locally cached version to determine whether to recompile and update the cache(ScriptManager::compiled).
Of course, there will be an additional field in the cache to indicate the version. But I'm not sure whether to add a new version field to scripts table or simply use gmt_modifie. I'm concerned that adding a new field might cause some complications during the upgrade.

Now, whether it is called through the HTTP API or SQL UDF, the latest script can be executed.

Looks good to me! Let's take a step.

Expect read-after-write like other insertion operations.

My plan is to add a version field to the scripts table (or use gmt_modified, but I'm not sure if there will be clock drift).
When Frontend try to execute a script, it needs to read the scripts table and determine if the local cache is outdated.
If the read and write operations follow a read-after-write consistency, it ensures the latest data.
The cost is that we have to read the scripts table, which adds an extra RTT. However, I believe this is acceptable because I think caching the script is not intended to save this particular RTT, but rather to reduce the CPU overhead during script compilation.
Moreover, we no longer need to implement broadcasting in the MetaSrv.
Do you think this plan is feasible?

A version field is great, but I wonder how to process the atomic increment of this field, greptimedb doesn't support transactions and update currently.

Expect read-after-write like other insertion operations.

My plan is to add a version field to the scripts table (or use gmt_modified, but I'm not sure if there will be clock drift).
When Frontend try to execute a script, it needs to read the scripts table and determine if the local cache is outdated.
If the read and write operations follow a read-after-write consistency, it ensures the latest data.
The cost is that we have to read the scripts table, which adds an extra RTT. However, I believe this is acceptable because I think caching the script is not intended to save this particular RTT, but rather to reduce the CPU overhead during script compilation.
Moreover, we no longer need to implement broadcasting in the MetaSrv.
Do you think this plan is feasible?

A version field is great, but I wonder how to process the atomic increment of this field, greptimedb doesn't support transactions and update currently.

 Both of them have some issues

version may have multiple writes to the same version during concurrency, which and may also lead to version rollback.
Updating gmt_modified is not a 'read-modify-write' operation; it simply inserts the latest value, similar to 'last write wins.' However, it can still have similar issues during concurrency when there is clock drift between multiple frontends. If Node A has a faster clock than Node B, concurrent updates from A and B may occur, but B's write arrives later. The cache on Node A cannot be updated because its timestamp is greater than the data written by B.

I have browsed the documentation and found Metasrv Distributed Lock. Perhaps it can be used to ensure atomicity when updating. The likelihood of concurrent updates to the same script is low, so the lock contention is minimal. Users are aware of what they are doing, I believe it is acceptable.

I have browsed the documentation and found Metasrv Distributed Lock. Perhaps it can be used to ensure atomicity when >updating. The likelihood of concurrent updates to the same script is low, so the lock contention is minimal. Users are aware > of what they are doing, I believe it is acceptable.

@xxxuuu Yes, I believe it's ok.

I don't have much time on weekdays due to work, but I'm still dedicated to this issue. In fact, I have already completed the logical implementation of the functionality, but testing has not been done yet. I will be able to finish it this week :）


The usage of weak dependencies pollutes Cargo.lock

Feel free to close if duplicated or if it is a "feature" of Cargo.
Problem
A feature declared with optional weak dependencies will unnecessarily pollute Cargo.lock with all the declared non-activated items as well as their transients, which is crazy.
Take for example the rust_decimal crate. If declared as rust_decimal = { default-features = false, version = "1.0" }, then Cargo.lock will contain 5 dependencies but if declared as rust_decimal = { default-features = false, features = ["std"], version = "1.0" }, then Cargo.lock will contain +40 dependencies.
# Cargo.toml (https://github.com/paupino/rust-decimal/blob/master/Cargo.toml#L80)

# ...

std = ["arrayvec/std", "borsh?/std", "bytecheck?/std", "byteorder?/std", "bytes?/std", "rand?/std", "rkyv?/std", "serde?/std", "serde_json?/std"]

# ...

$ cargo tree

rust_decimal v1.27.0
    ├── arrayvec v0.7.2
    └── num-traits v0.2.15
        [build-dependencies]
        └── autocfg v1.1.0

Version
1.65.0

Is this kinda a duplicate of #10801?

It is, indeed.

@weihanglo I thought #10801 is about lock files including optional features of direct dependencies.  Does it also include indirect dependencies?
Note that in this issue, the lock file for

rust_decimal = { default-features = false, version = "1.0" } contains 5 items
rust_decimal = { default-features = false, features = ["std"], version = "1.0" } contains 40+ items

The number of lock file entries when std isn't specified I think confirms that #10801 is only about direct dependencies and shows this issue is independent of #10801.
The key part here is weak dependencies.  It seems we are resolving the lock file as if none of those weak dependencies were weak.
Re-opening for now so this doesn't get lost track of.  If there was something I missed, we can always re-close.

#10801 is

bar depends on foo with feature serialization enabled.
Feature serialization contains a weak dep feature time?/serde-well-known.
Optional dep time ended up in the lockfile.

#11426 is

some_pkg depends on rust_decimal with feature std enabled.
Feature std contains weak dep features borsh?/std, bytecheck?/std…
Those optional deps ended up in the lockfile.

I didn't see the difference between them 🤔.

Somehow I had missed the weak dependency aspect of the other one.  I've re-titled it to call that out.  Of course, if there is another angle to that that I missed, let me know and we can fix it :)


Failed to watch *v2alpha1.CiliumLoadBalancerIPPool: failed to list *v2alpha1.CiliumLoadBalancerIPPool

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
I am having error when deploying cilium-operator
level=error msg=k8sError error="github.com/cilium/cilium/pkg/k8s/resource/resource.go:183: Failed to watch *v2alpha1.CiliumLoadBalancerIPPool: failed to list *v2alpha1.CiliumLoadBalancerIPPool: ciliumloadbalancerippools.cilium.io is forbidden: User \"system:serviceaccount:cilium:cilium-operator\" cannot list resource \"ciliumloadbalancerippools\" in API group \"cilium.io\" at the cluster scope" subsys=k8s

Cilium Version
v1.12.4
Kernel Version
5.15.59
Kubernetes Version
v1.24.7-eks-fb459a0
Sysdump
No response
Relevant log output
No response
Anything else?
No response
Code of Conduct

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

Hello @ichasco-heytrade, *v2alpha1.CiliumLoadBalancerIPPool is only available in Cilium >= 1.13.0-rc3. That's why it fails in 1.12.4

The problem is that in the chart is defined latest version. And if I comment it adds v1.12.4 that fails because the correct tag need to be v1.12 beacause in qualys doesn't exist the other one:
Failed to pull image "quay.io/cilium/operator-generic-ci:v1.12.4": rpc error: code = NotFound desc = failed to pull and unpack image "quay.io/cilium/operator-generic-ci:v1.12.4": failed to resolve reference "quay.io/cilium/operator-generic-ci:v1.12.4": quay.io/cilium/operator-generic-ci:v1.12.4: not found

Is there any way to not hardcode the tag version in the Chart?
Thanks!

I have fixed using the dockerhub images instead of the qualys. Thanks!

I am installing it with HELM
dependencies:
  - name: cilium
    version: 1.12.4
    repository: https://helm.cilium.io/


Update required permissions for GITHUB_TOKEN

The list of permissions includes all required permissions for executing the software templates and for the orchestrator chart to start successfully.
Fixes #181

/lgtm


Github Actions: create Adapter for client to ci_integrations

Author the user story for this feature
As a user, I want to make sure that Github Actions Client properly integrates with ci_integrations module so I can import data from my Github projects.
Is your feature request related to a problem? Please describe.
Import Github project data to Metrics.
Describe the solution you'd like
Implement SourceClient adapter according to CI integrations module architecture

Per request added https://github.com/platform-platform/monorepo/issues/738 to split this into smaller tickets/prs.


signinSilent not working properly

I have set automaticSilentRenew:true and also set silent_redirect_uri.
It behaves randomly sometimes call and sometimes not call.
silent-refresh.html as below

Not enough info.

I was trying to use signinSilentCallback() but not working as expected. It was not updating my access token is not getting updated and getting unauthorized after 1 hour.
Below is the code for UserManager settings
this.userManager = new UserManager({
  ...............................
  response_type: 'id_token token',
  automaticSilentRenew: true,
  silentRequestTimeout: 30000,
  loadUserInfo: false,
  redirect_uri: `${cfg.redirectUri}/auth/login`,
  post_logout_redirect_uri: `http://localhost:3000/auth/logout`,
  silent_redirect_uri: `http://localhost:3000/auth/silent`,
  revokeAccessTokenOnSignout: true,
  userStore: new WebStorageStateStore({ store: localStorage})
});

And my auth/silent call the React component which contains the render below code
public render() {
authClient.signinSilentCallback();
return (
Silent Login Redirect Handler
)
}

What info you needed?

It behaves randomly sometimes call and sometimes not call.

This doesn't help me in any way. I need more of an explanation of what you see and what you expect. When does it behave incorrectly and why do you think so? Etc...

I was trying to use signinSilentCallback() but not working as expected. It was not updating my access token is not getting updated and getting unauthorized after 1 hour.

Sounds like you're caching your user, rather than reloading via getUser.

Is your IdentityProvider on the same domain like the App? We have the same problem cross-domain, when a browser is blocking third party cookies. We are still searching for a good solution.

i have set settings like as below
let settings = {
authority: 'https://testidservertenant1.papersave.com:44888/',
client_id: 'angular_spa',
redirect_uri: http://localhost:4200/auth-callback,
silent_redirect_uri: http://localhost:4200/silent-callback.html,
post_logout_redirect_uri: http://localhost:4200/,
response_type: 'id_token token',
automaticSilentRenew: true,
scope: 'openid profile myapi',
filterProtocolClaims: true,
loadUserInfo: true
};
this._userManager = new UserManager(settings);


fix: API error Unmarshaling

Context
Current Error struct does not match format of the API sent by the API
The API format is:
{
  "status": 422,
  "error": "Unprocessable Entity",
  "code": "validation_errors",
  "error_details": {
    "code": ["value_already_exist"]
  }
}

while the current implementation is expecting:
{
  "status": 422,
  "message": "Unprocessable Entity",
  "error_details": ["value_already_exist"]
}

Description
This PR updates the struct tags to ensure error received from the API are correctly parsed

Related to https://github.com/getlago/lago-go-client/issues/92


Is it work with dynamically added element?

I tried the following code but no luck
$(document).on('mouseenter.hoverIntent', element, function() {});

As showed on https://briancherne.github.io/jquery-hoverIntent/, you should do something like
$(document).hoverIntent(
    function() { console.log('in') },
    function() { console.log('out') },
    'selector'
)

It's what I do and it works on elements present at first and dynamically added ones

Thanks @twidi for responding! :)
@kamiyeye, I'll close this issue for now, but please comment again if you think you've found a bug or limitation in the plug-in, or if you have any other directly-related follow-up question.

@usmonster: you're welcome, I just started using this plugin and as always, I do a quick check on issues and pull requests to know the actual defects, and seen this, as I just did it in my code, so... :)


Incorrect information about flow launch panel

documentations says that "If the Flow is configured to gather data from the end user before running, the Flow Launch Panel will be displayed after choosing the button. Otherwise, the Flow will just run." We just spend time with MS Support who said that this is not possible and flow launch panel will always show, even if there's no user input required.

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

ID: f60068c3-4534-a400-350b-fdbcefd684b6
Version Independent ID: 228accdb-a7de-0671-34ad-60a37866c380
Content: Use column formatting to customize SharePoint
Content Source: docs/declarative-customization/column-formatting.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

Good to know... thanks for the feedback. Seems like that sentence should be removed. Care to submit a PR?

Hi @andrewconnell
PR https://github.com/SharePoint/sp-dev-docs/pull/4230 is raised for this change.
Please review and let me know in case of any changes needed. Thanks!

FYI - you don't need to link to PRs in the comments... as you can see above, it's already linked. When PRs are reviewed, it will get reviewed ;)


Using n-quads

Merry Christmas - please respond to this after your break! I am now signing off for the evening anyway

In order to do the Sochrates query using RDF/JS quads in the eye-js package; I first want to convert to n-quads (it is the easiest thing to write using n3.js); which means my data looks like
<http://example.org/socrates#Socrates> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://example.org/socrates#Human> .
    <http://example.org/socrates#Human> <http://www.w3.org/2000/01/rdf-schema#subClassOf> <http://example.org/socrates#Mortal> .
    ?A <http://www.w3.org/2000/01/rdf-schema#subClassOf> ?B _:b1 .
    ?S <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?A _:b1 .
    ?S <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?B _:b2 .
    _:b1 <http://www.w3.org/2000/10/swap/log#implies> _:b2 .

and my query looks like
<http://example.org/socrates#Socrates> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?WHAT _:b1 .
<http://example.org/socrates#Socrates> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?WHAT _:b2 .
_:b1 <http://www.w3.org/2000/10/swap/log#implies> _:b2 .

When I try and run this in a query I get a syntax error on the last line of each file/ Is there an easy way of resolving this?

That is normal :-)
The business of eye is reasoning and not understanding and speaking different langages but understanding and speaking one lingua franca which is N3.


UI Buttons Not Responding in HoloLens

Overview
I can't select UI Buttons when I build out to the HoloLens. They work in Editor and on the HoloLens the cursor seems to still see my hand and the tap gesture.
Expected Behavior
I select a button and get the behavior out of it.
Actual Behavior
Nothing, the tap gesture doesn't seem to effect Unity UI Buttons anymore.
Steps to reproduce
Create a Unity UI Button
Add a Behavior to it.
Build and try to select the Button on HoloLens.
Unity Editor Version
Unity 2017.2.0p1
Mixed Reality Toolkit Release Version
v1.2017.2.0

Please be sure to search for issues before submitting.
Duplicate of #1267
This will be addressed in an upcoming release.  For now follow all instructions regarding HoloLens development in the v1.2017.2.0 release


[K4] Error in stats.php with page IDs consisting only of numbers

I get the message "Kirby\Cms\App::page(): Argument #1 ($id) must be of type ?string, int given, called in /.../site/plugins/simplestats/src/models/Stats.php on line 938" in backend.
I have some page IDs with numbers only (e.g. "360"), so PHP seems to treat $uid as int in this case. I was able to work around by making sure that $uid is string ($uid = strval($uid); before line 938). The diagram creation process now works as expected.
I'm running Kirby 4.1.0 on PHP 8.2.15, so I don't know if it's a case for the Kirby 4 incompatibility list or just a PHP issue.
Anyway, thanks for this great plugin!

Hey,
Thanks for the detailed bug report, sounds legit, I'll apply your solution somewhen soon.


Updating  login.microsoftonline.com info

Adding documentation to also include details for adding login.microsoftonline.com in addition to the older login.windows.net

Looks good to me. #sign-off

@JasonWHowell: I'm sorry - only the author of this article, @hrasheed-msft, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


[Proposal] Add DropdownButton theme

Currently, there is no theme for DropdownButton, this is required so the widget can be customized via theme such as customizing underline, dropdown arrow, cursor etc
Proposal
Add DropdownButton Theme

Closing in favor of https://github.com/flutter/flutter/issues/98695


allow freezing all nuisances + others

There may be cases where the user wants to freeze all constrained nuisances and some other parameters (e.g. unconstrained fit parameters).

This has been requested several times from users and the usual answer is cumbersome, so this is a welcome fix. Just tested and seems to work on a relatively complex datacard!
Thanks.


Compiling a compute shader for GFX1010 shows incorrect 'wave_size'

If you compile a compute shader with [numthreads(64,1,1)] the top of the ISA output says "wave_size(64)". However it's apparently from the generated asm that the code generated was designed for wave32.
Evidence for this is manipulation of only exec_lo (exec_hi is never touched) and the fact that DX12 Wave Intrinsics such as "WaveActiveSum" generate code that only sums across 32 lanes.
If GFX1010 uses Wave32 now as its native wave size for Compute then the "wave_size(64)" at the top of the ISA output should read "wave_size(32)" instead.

Hi AdamJMiles,
Thanks for reporting this issue. A fix will be delivered in one of AMD's future driver releases. You do not need to update RGA to consume this fix.


Validator register never triggered when VC starts with inactive state validator keys

Description
In Teku version 23.11.0, starting VC with a validator key in an inactive state does not initiate the validator registration even when it becomes active.
I reviewed the changes between 23.10.0 and 23.11.0 and suspected that it was affected by this commit.
Logs with 23.10.0
2023-12-01 06:25:01.347 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075325, Root: 6d30210b9d39e6a2323ec1219cfee697bd09d629e6a6772d3052da2795d076d6
2023-12-01 06:26:00.200 INFO  - Validator   *** 2 out of 2 validator registration(s) were successfully sent to the builder network via the Beacon Node.
2023-12-01 06:26:51.055 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075334, Root: 314b24dd70410c7b5a9e2c344f8070c965ade32e5389436c294d70ca90678073
2023-12-01 06:29:40.083 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075348, Root: 36c6d198a760bda513f1b7c9512edf65da21dc0be9e39d83bca0135f03051d5e

Logs with 23.11.0
2023-12-01 06:23:04.084 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075315, Root: cdfb649fa61398d3b3482f7d1ba2cc76fee22623114a24b240a6632f2989e50b
2023-12-01 06:27:49.149 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075339, Root: f20a1e69fd6e17080ee9267ffddfed5496884e8a1f082fc935feef2b1fbfff35
2023-12-01 06:29:24.751 INFO  - Validator   *** Published attestation        Count: 1, Slot: 7075347, Root: 36c6d198a760bda513f1b7c9512edf65da21dc0be9e39d83bca0135f03051d5e

Steps to Reproduce (Bug)

Start VC with --validators-builder-registration-default-enabled=true option
Import keys which are in an inactive state
Deposit ETH to the keys
Wait until keys become active and check logs

Expected behavior: VC starts validator registration process when some or every key becomes active
Actual behavior: VC does not initiate validator registration
Frequency: Always
Versions (Add all that apply)

Software version: [teku --version or look for log lines starting with Teku version:]

teku/v23.11.0/linux-x86_64/-eclipseadoptium-openjdk64bitservervm-java-17

Java version: [java -version]

openjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment Temurin-17.0.9+9 (build 17.0.9+9)
OpenJDK 64-Bit Server VM Temurin-17.0.9+9 (build 17.0.9+9, mixed mode)

OS Name & Version: [cat /etc/*release]

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.3 LTS"
PRETTY_NAME="Ubuntu 22.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

Docker Version: [docker version]
Cloud VM, type, size: [Amazon Web Services I3-large]

Thank you for feedback. We've localized the issue and it should be fixed. The fix will be included in the next release, 23.12.0, probably


Update emoji index and generator

materialx has been deprecated for the emoji index and generator option.
Instead should now the built-in material.extensions version in Material for MkDocs be used.
The old extension still works but will print deprecation warnings on serve and build.

I also added indents to the CSS entries to have consistent list indents in the file.

Thanks!


feat: added support for notification settings in teams antivirus account

This PR configures the teams antivirus notification settings
The cloudflare-go PR https://github.com/cloudflare/cloudflare-go/pull/1499

acceptance tests all passing
TF_ACC=1 go test ./internal/sdkv2provider -v -run "^TestAccCloudflareTeamsAccounts_" -count 1 -timeout 120m -parallel 1
=== RUN   TestAccCloudflareTeamsAccounts_ConfigurationBasic
--- PASS: TestAccCloudflareTeamsAccounts_ConfigurationBasic (11.74s)
PASS
ok  	github.com/cloudflare/terraform-provider-cloudflare/internal/sdkv2provider	12.622s


Provide OpenSUSE / SUSE Enterprise Server / RHEL binaries

OpenSUSE is a linux distribution used in the wild, so it would be good if we could provide release binaries for it as well.
(context: https://groups.google.com/g/verible-users/c/Z-iTXOakQUY )

Unai, do you think this would be easy to do ?

The user in question uses SUSE Enterprise Server 12.

I can't find SUSE Enterprise Server containers. There are https://hub.docker.com/r/opensuse/tumbleweed and https://hub.docker.com/r/opensuse/leap. Hence, it should be possible to generate pre-built binaries for opensuse, but I doubt those can be guaranteed to work on different versions of it.
See also:

https://github.com/f4pga/ideas/issues/59
https://build.opensuse.org/project/show/hardware:FPGA
https://build.opensuse.org/package/show/home:seanmao/verible

Might be already a good starting point. In particular if we bulid the binaries mostly static s we already do for the rest ( BAZEL_LINKOPTS / BAZEL_LINKLIBS).
(In the particular case, it turned out that the user was then abel to run binaries we built for Ubuntu 16, so that particular distribution might've been pretty old, libc-wise)

While at it: RHEL is also often used in some enterprise contexts. Are there also RHEL containers we can use to build for these ?

With regard to RHEL, see https://github.com/chipsalliance/verible/issues/1301.

Since we now have static binaries https://github.com/chipsalliance/verible/releases
... more efforts for various Linux distributions might not be needed anymore


Added git revert help button to link to webpage

Thanks for the PR, Sam!
I see a few problems that need fixing.

The really easy one: instead of using java.awt.Desktop, can you import java.awt.Desktop and just use Desktop? This would be consistent with the style everywhere else.

The easy one: you've put a try/catch around your code and left the catch empty. This is dangerous, since if an exception happens, we'll never know about it. This is a common idiom in Java because if it is a checked exception, you're stuck figuring out how to propagate it. How to fix this is a very controversial topic. I've settled for a perspective from Bruce Eckel (site seems to be done at the moment) where he proposes wrapping the exception in a RuntimeException, and then you can at least re-throw it. Anyway, search through the Elegit code and find examples of use of the ExceptionAdapter class. You can fix this example by tossing this line of code:

 throw new ExceptionAdapter(e);
... in your empty catch clause.

With the buttons now added to the dialog box, at least on my Linux machine, the full text in that dialog is no longer visible; it trails off with "...". Do you see the same? If so, can you make the dialog bigger so it has room the for text?

On my Linux machine, the clicking on the URL causes Elegit to lock up. This is apparently a known problem. I'm amazingly amused by this because I had said to you "it's just a link, why create an automated test?" when the automated test would have caught it. Well, maybe. This has to actually integrate with the rest of the OS, so who knows what would happen? I'll admit I like the second fix linked above; it just means that on my system, the link won't go. So we need to fix it. What would make the most sentence? Do you want to try the above fix? Try it on a Linux VM? Or would you rather me make that fix after you update the above, since I can easily test on my machine?

I fixed and commited the the simple Desktop and Exception Issues, but I think problems 2 and 3 would be fixed easier on your Linux machine since you can test them there. For number 2, the window size problem doesn't occur on my Mac.

@terwilligers I'm pretty sure I fixed the remaining problems. At least, they now work for me. Can you verify that I didn't break anything for you, i.e. that the dialog box and help buttons still work as you intended?

I ran it on my machine and everything still works as intended!

Tests all pass locally for me; Travis is coughing about Java version. That's next up for fixing, but in the meantime, this pull request is great.


ERROR: slave_oserdese has disconnected OQ/OFB output ports

https://github.com/chili-chips-ba/openeye-CamSI/issues/31#issue-2636175027

Should be fixed now in this branch:
https://github.com/openXC7/nextpnr-xilinx/tree/oserdes-master-slave


use set_dictonary to minimize/check the dictionary

When using ShortUUID(dictionary), an invalid dictionary could be specified.  Given set_dictonary normalizes and verifies that the supplied value, use it rather than setting the values by hand.

This looks good, except the unit tests use assertRaises as a context manager, which breaks Python 2.6. Can you use it as a function call with a lambda instead?

Sure, see updated commit.

Thanks!


Investigating improving pipenv usage on Travis CI

CI=1, so there's that.

Are talking about issues like that https://travis-ci.org/mos-polytech/homework-template/builds/278936917#L511 ?
My problem was: pipenv install -d raised on travis:

AttributeError: '_NamespacePath' object has no attribute 'sort'

After adding pipenv install -d --system everything worked fine.


Single-line comments disturb C preprocessing directives highlighting

Type: Bug
To reproduce, enter the following code into a C editor.
#ifndef SOMETHING // A comment
#if NO_THREADS
xxx
#else
yyy
#endif
zzz
#endif

#define X // A comment
this is incorrectly colored

#if A // A comment
#ifdef B // Another comment
this is incorrectly colored
#endif
#endif

Expected result: Preprocessing directives are correctly highlighted, and the code is deemed valid.
Actual result: The single-line comments disturb the highlighting. This makes the highlighter think the last #endifs in the two parts are invalid.

VS Code version: Code - Insiders 1.78.0-insider (cbf35328c8357175b9cd747823f39ade987c3d3c, 2023-04-04T18:41:32.861Z)
OS version: Windows_NT x64 10.0.19042
Modes:
Sandboxed: Yes

/extC

It looks like this is caused by the C extension. Please file the issue to the C extension repository. Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our issue reporting guidelines for more information.
Happy Coding!


[typography] Allow sx prop-like responsive values on the variant prop

Summary
For a lot of props, the Sx syntax is availble, like
<Typography color={{xs: 'red', md: 'blue'}} >

Or even
<Typography color={(theme) => ({xs: 'red', md: 'blue'})} >

But this syntax doesn't work with the variant prop. => the following is not working
<Typography variant={{xs: 'h1', md: 'h2'}} > // not working
<Typography variant={(theme) => ({xs: 'h1', md: 'h2'})} > // not working

Examples
No response
Motivation
It would be great if this syntax could work. :
Simply to use a different variant depending on screen size (very common use case I think)
It would be very usefull in projects that deal with multiple themes.
It's also usefull during double run (theme migration while both old theme and new theme must coexist in the code).
Search keywords: variant typography

Hey @drico, thanks for opening the issue! This sounds very much related to this issue: https://github.com/mui/material-ui/issues/41402, where they propose to make the size prop "breakpoint-aware". This could work the same with other props, such as variant, in this case.
@brijeshb42 & @siriwatknp, should both of these issues be generalized into something Pigment CSS could handle? I guess whatever approach we take here, it should be standardized and available for Material UI and Joy UI (in the long term). What do y'all think?

I am not sure if this comes under Pigment CSS or even @mui/system. The props for which the sx syntax is available are native css properties and unrelated to that specific component. But @mui/system or Pigment CSS only deals with native CSS properties with some extended syntax.
This requirement is asking to deviate from that and include other properties as well (eg: variant). As an example, variant for one component (primary/secondary for Button) may not mean the same thing for some other component (ie, example above). So it'll ideally have to be dealt with in the package that has these prop definitions.

Ah yeah, true. I guess what both of these issues are requesting is a similar responsive syntax to the sx prop for using different variants depending on the breakpoint. We have the useMediaQuery hook for that already, but maybe there's a more sx-like way to write it?

From Material UI perspective, it will not support this kind of configuration. It's not just about the Typography but variant prop in general.
I'm closing this issue.


Removes global PDFJS usage from the src/core/.

TODOs:

[ ] move shared/global.js to display/global.js
[ ] test with examples and in pdfjs-dist configuration

Some of the functions that are moved from src/shared/util.js into src/display/dom_utils.js have unit tests. For consistency, can those tests be moved from test/unit/util_spec.js into test/unit/dom_utils_spec.js instead?

/botio test

The test failures are most likely caused by not passing in the CMap options when doing new Font(...) in evaluator.js, see evaluator.js#L1992 and evaluator.js#L2085.
Also, a nit, but shouldn't it ideally be named cMapOptions (note the upper-case M), such that it's consistent with the current cMapUrl/cMapPacked properties (given that these are Character Map related, as opposed to the also existing TrueType cmap table).

The test failures are most likely caused by not passing in the CMap options when doing new Font(...) in evaluator.js, see evaluator.js#L1992 and evaluator.js#L2085.

That was it (plus one another thing with passing options as argument in LocalPdfManager)

Also, a nit, but shouldn't it ideally be named cMapOptions (note the upper-case M), such that it's consistent with the current cMapUrl/cMapPacked properties

Renamed
/botio test

/botio-windows test

/botio test

/botio test

/botio-linux test

/botio-linux test

/botio test

/botio test

/botio test

/botio test

/botio-windows test

/botio test

added dependencies of display/global.js for files that still use PDFJS
/botio test

interesting that I got OOM while running the botio-windows (saved report http://<IP_ADDRESS>:8877/memory-report.json.gz)
/botio-windows test

/botio test

/botio test

TEST-PASS | load test issue6108 | in firefox

Firefox is often stops after the test above: issue6961 - the #6961 is a performance issue. Maybe timeout needs to be increased. The problem does not appear when run on the botio-windows from command line. Will continue trying using gh botio interface with increased timeout.
/botio-windows test

/botio-windows test

/botio test

/botio-windows test

/botio test

/botio-linux preview

/botio test


Render the description in HTML using asciidoctor

The work item descriptions are input using the Asciidoc markup language, but the platform should be able to render it in HTML so that the UI can display it.
This issue is related to #98

putting on hold since we already have support for Markdown


Add GitHub PR Template to encourage linking issues

Why
I thought it would possibly help to provide more structure to PR descriptions. As outlined in #10584, I have noticed that sometimes PRs are opened and merged without the issue they address being closed. My main goal with adding a template like this is to encourage PR authors to use keywords like closes so that the issue they are fixing is automatically closed.
This is a suggestion that I would be happy to have merged into this repo. Edits from maintainers are allowed, so feel free to modify it right here, but if Microsoft reviewers want to write their own from scratch feel free to close this.

Closes #10584

Changes
This PR adds a GitHub Pull Request template.
I took inspiration from a few other templates while creating this:

https://github.com/MicrosoftDocs/Contribute/blob/main/.github/PULL_REQUEST_TEMPLATE.md
https://github.com/github/docs/blob/main/.github/PULL_REQUEST_TEMPLATE.md

@JohanFreelancer9, I've committed the suggestions from your review. As always thank you for your eagle eyes!

@aczechowsk, no problem. I'm just happy it was helpful and hopefully will be for those who contribute to this repo. Thanks as always! 👍


[WEEX-294][iOS]use NSTimer to implement setTimeout

Use NSTimer to implement setTimeout.
testcast:http://dotwe.org/vue/5e897eb8621fbb35cdbe49c41cf7c9dd

This PR is closed because it's outdated. If you still need this modification, please resolve the conflicts and open another PR.


Redesign the crawler classes to extend from BasicCrawler, instead of internally using it

The current system is rather confusing and makes the crawlers difficult to document. It's also a good step in the direction of migrating the SDK to TypeScript in 2022. This is closely related to #801
We should:

Have BasicCrawler extend from EventEmitter (see #635)
Have CheerioCrawler and PuppeteerCrawler extend from BasicCrawler.

A thing to take into consideration is also the future replacement of PuppeteerPool with BrowserPool and thus the possibility of replacing PuppeteerCrawler with BrowserCrawler and then extending Puppeteer|Playwright|OtherCrawler from this one.

Good idea! A few times I have regretted the design decision that we made CheerioCrawler/PuppeteerCrawler not inherit from BasicCrawler

Inheritance over composition? :D

Good idea! A few times I have regretted the design decision that we made CheerioCrawler/PuppeteerCrawler not inherit from BasicCrawler

We had a call about it today with @mtrunkat and were saying exactly the same. Looks like we're in a complete alignment on this one. 👍

Haha, that's probably the first time :)


Core - Updater bugs

I finally was able to test the new updater! It doesn't work properly.
To-Do List:

[ ] Fix updater not being able to replace older file (std::filesystem issue?)
[ ] Fix updater treating older versions on betas as "newer versions"

An idea to fix the first bug: like AIO-Switch-Updater and my new project, Downloader, I should forward the app to a forwarder which will replace the nro file with a new one.
An idea to fix the second bug: add a new method that uses the api.github.com tag page to download a new version of the app.

I'm no longer working on the main branch, however, once I add the updating feature to the rewrite branch, all of these issues will be accounted for.
Once the updating feature is fully implemented, this will be closed.


Screenshot doesn't match an installed version

We've rejected this app from releasing it on AppCenter. Please resolve this issue and release a new version.
The screenshot in the repo (https://github.com/bbuhler/HostsManager/blob/master/data/screenshots/main.png) doesn't match the app after the installation. Namely, the screenshot presents a header bar and additional functionality (like adding new entries) which doesn't exist in the installed version.
If you have a local WIP version somewhere that has this new functionality, you should probably set up 2 branches so that master remains clean.

The screenshot is fixed.
The new version has a header bar now but without the "add new entry" button.


Update nf-microbe modules with changes in nf-core

PR checklist
Closes #XXX

[ ] This comment contains a description of changes (with reason).
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If you've added a new tool - have you followed the module conventions in the contribution docs
[ ] If necessary, include test data in your PR.
[ ] Remove all TODO statements.
[ ] Emit the versions.yml file.
[ ] Follow the naming conventions.
[ ] Follow the parameters requirements.
[ ] Follow the input/output options guidelines.
[ ] Add a resource label
[ ] Use BioConda and BioContainers if possible to fulfil software requirements.
Ensure that the test works with either Docker / Singularity. Conda CI tests can be quite flaky:

For modules:

[ ] nf-core modules test <MODULE> --profile docker
[ ] nf-core modules test <MODULE> --profile singularity
[ ] nf-core modules test <MODULE> --profile conda

For subworkflows:

[ ] nf-core subworkflows test <SUBWORKFLOW> --profile docker
[ ] nf-core subworkflows test <SUBWORKFLOW> --profile singularity
[ ] nf-core subworkflows test <SUBWORKFLOW> --profile conda

Need to update CarsonJM/modules and PR from that repo to here since I don't have access to push to nf-core/modules


Improve dependencies task output documentation

https://github.com/gradle/gradle/issues/21197
Context
Also a general rewrite/refactor of the page for docs readability.

[x] TODO: Once we've agreed on wording in the documentation, I'll update the annotation key output as well to improve the CLI experience.
Current page
Render of the new page

Contributor Checklist

[X] Review Contribution Guidelines
[X] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[X] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[X] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[X] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[X] Provide unit tests (under <subproject>/src/test) to verify logic
[X] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[X] Ensure that tests pass sanity check: ./gradlew sanityCheck
[X] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

@ljacomet thanks for the review, please take a look at my suggested fixes when you get the chance.

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

@bot-gradle test BD

OK, I've already triggered the following builds for you:

BuildDistributions build

@bot-gradle test and merge

OK, I've already triggered a build for you.


Bugfix | 1907 stubs for Exceptions

Hello!

Type: bug fix
Link to issue: #1907

Added tests
Fixed stub generation in case of Exception
Fixed stub generation in case of use declaration with FQN
Improved sharness tests
Excluded sharness temp directory from CS-Fixer inspection

Thanks

Thank you


Terminal not interactive, and opening a new terminal not working

Issue Type: Bug
Following latest Insiders update, the Terminal is no longer interactive upon opening VSCode. Trying to split the terminal, or opening a new terminal window (regardless of using bash, zsh etc) results in an empty box.

Do you mean like this because I have the same regardless what color scheme im using

same behaviour, regardless extensions and color themes.
Version: 1.61.0-insider (Universal)
Commit: c28c86fcd12e4f8693d6569deadfc740dcf8f55b
Date: 2021-09-20T05:15:38.795Z
Electron: 13.4.0
Chrome: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Darwin x64 21.1.0

bootstrap-window.js:249 TypeError: this._cursorRenderers[n] is not a function
    at e._render (CursorRenderLayer.ts:153)
    at e.onGridChanged (CursorRenderLayer.ts:115)
    at e.renderRows (WebglRenderer.ts:276)
    at t._renderRows (RenderService.ts:114)
    at e._renderCallback (RenderService.ts:61)
    at e._innerRefresh (RenderDebouncer.ts:61)
    at RenderDebouncer.ts:42
b @ bootstrap-window.js:249
CursorRenderLayer.ts:153 Uncaught TypeError: this._cursorRenderers[n] is not a function
    at e._render (CursorRenderLayer.ts:153)
    at e.onGridChanged (CursorRenderLayer.ts:115)
    at e.renderRows (WebglRenderer.ts:276)
    at t._renderRows (RenderService.ts:114)
    at e._renderCallback (RenderService.ts:61)
    at e._innerRefresh (RenderDebouncer.ts:61)
    at RenderDebouncer.ts:42

I'm also having issues with the integrated terminal after today's Insider's update. The cursor is not even there (I can't type in commands) and when resizing it the text is distorted:

The fix for me was to switch  "terminal.integrated.cursorStyle": "line", back to the default 'block'

regarding this commit (92ec2bb4ae0d6a16740308d7466ed55cc611b838) bar will be the new name for line. It does add an legacy mapping. So using following also works for me, regardless the warning that this setting is not introduced yet (would have to wait for new nightly build)
"terminal.integrated.cursorStyle": "bar",

@irackson @alexanderniebuhr, I have the same issue and the same solution

I can't reproduce this in Insider's, so believe it's been fixed.


Access the underlying row type of QueryResult

I have a use case with dynamic queries, similar to what's described in #2148. Using an existing SeaORM connection (switching to another library is not an option), I need to execute dynamic queries and then process the result by inspecting the returned columns, their types, type names, values in rows...
At the moment, QueryResult doesn't provide all necessary info to do that. sqlx::Row trait does, but it's not implemented for QueryResult. In theory, I could've tried to implement it. But I couldn't immediately tell if it's possible or how long it's going to take, given that MockRow and ProxyRow don't implement it either. And I don't actually care about those, because I only ever use real Postgres!
So I went with an approach that's quick and guaranteed to provide all necessary info. I simply added direct access to the underlying sqlx::PgRow which already implements sqlx::Row. I also reexported sea_orm::sqlx in order to have guaranteed access to sqlx types at correct versions and feature flags. This worked really well and I already depend on my fork of 0.12.15 in my project.
I'd like to upstream it. To make a better contribution, here I also added equivalent methods for all other databases.
Tests don't seem to be necessary here. These accessor methods are trivial and I'm not even sure how to manually construct a QueryResult in a public doctest.
PR Info

Closes

Dependencies:

Dependents:

New Features

QueryResult::try_as_mysql_row
QueryResult::try_as_pg_row
QueryResult::try_as_sqlite_row
QueryResult::try_as_mock_row
QueryResult::try_as_proxy_row
reexported sea_orm::sqlx

Bug Fixes
Breaking Changes
Changes

@tyt2y3 @billy1624 is there any chance this can get merged? I'm still using the fork :(


chore(release): Automated agent plugin release notes (v0.8.49)

Automated PR

merged into doc/agent-plugin-release


Add climatology features

Before merging we will need to update the workflow to ensure this works

@dnerini could you have a look at the code in its current state ? I moved the calculation of the rolling mean to mlpp-features, as discussed.


new ci

Looks like this is working. @protz can you double check that this went as expected?

I don't seem to have access to the logs. Is this a one-time error?

Failed to generate URL to download logs. Logs may have been removed based on retention settings on the repo at the time the run was started.

I'll make the runner a little more robust with #10


Update lock files for crayfish using newer chullo

Fix Milliner tests relying on dead classes
GitHub Issue: n/a
Follow-up to https://github.com/Islandora-CLAW/Crayfish-Commons/pull/24 as Crayfish services all rely on islandora/crayfish-commons:dev-master.
As a follow on to this (say not on a Friday) we probably should cut a 0.1 release of Crayfish-Commons and change all the services here from islandora/crayfish-commons:dev-master to islandora/crayfish-commons:^0.1
What does this Pull Request do?
Updates lock files and fixes test fixtures.
What's new?
Really updates the crayfish-commons version which updates the chullo version.

Does this change require documentation to be updated? no
Does this change add any new dependencies? no
Does this change require any other modifications to be made to the repository (ie. Regeneration activity, etc.)? no
Could this change impact execution of existing code? no

How should this be tested?
I guess the best would be to pull this into a claw-playbook and see if it still works, but as only the tests still referred to the missing classes I think (🤞 ) we should be ok.
Interested parties
@Islandora-CLAW/committers

@whikloj Let's do this and I'll update #62


Provide a way to subscribe to changes globally

It would be helpful if there were a way to register a global listener that is notified of any change to any object.  For instance, this would be useful to efficiently trace state changes.  Or in my case, I'm trying to use mobservable in a more structured, Redux-like data flow and I'd like to detect if anyone tries to modify the state outside of the proscribed pattern.
Currently it's possible to achieve this by using an autorun() in which you serialize the entire state tree.  However, you'll end up examining the whole state every time it is changed, which gets prohibitively expensive as the app gets more complex.  Obviously mobservable knows internally when every change happens, but right now (as far as I can tell) there's know way for me to subscribe to all such events.

Hi @smikula,
The simplest way to achieve that is to use autorun(() => mobservable.toJSON(myTree)) (which will also work for cyclic structures btw). However for large state trees that is indeed quite inefficient, in such cases createTransformer comes in handy. Effectively it can be used to create a lot of small 'autoruns' that memoize so that they don't need to re-run on objects that didn't change. See for an example of serializing the state tree using createTransformer this example.
I have some ideas on building a small abstraction layer on top of mobservable which implements a lot of these standard flux / redux functions in an standardized way so that you get them really out-of-the-box.

Closed for inactivity, feel free to re-open at any time.


Enable active vuln test for postgres

Description
A detailed explanation of the changes in your PR.
Feel free to remove this section if it is overkill for your PR, and the title of your PR is sufficiently descriptive.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

/test all

/test gke-postgres-nongroovy-e2e-tests

/test all

/test gke-postgres-nongroovy-e2e-tests

/test gke-postgres-nongroovy-e2e-tests

/test style-checks


Alsa Routing Adapter Enhancements

This PR provides some new features, fixes and an improved documentation.
For further detail please review the different patch files.

still getting no emails.


API request : Allow the language mode to provide indent information

CodeMirror modes can provide an indent function that is called with the state object for the line so that one can use it to provide a true formatted indent for a line.
I used this in alm here : https://github.com/alm-tools/alm/blob/c7d31e48864a96379fabe27d1bb507ccce3e9319/src/app/codemirror/mode/typescriptMode.ts#L206-L214
As you can see it allowed me to offload to the TypeScript language service I have running on the client (in the form of the classifier cache).
It would be great if onEnterRules?: IOnEnterRegExpRules[]; could also take a function ((state:IState, textAfter:string)).

On second thought suspect registerOnTypeFormattingEditProvider might do what I want. Will report back :rose:


Restructure to support helm chart releaser action

What was changed

Restructured the chart files into chart folder and created a helm releaser workflow
Why?
So that helm releaser will pick the chart and create github pages branch in order to be able to use the repository as helm repository
Checklist

Closes https://github.com/temporalio/helm-charts/issues/313

How was this tested:
Tested in a local k8s using forked repo

Any docs updates needed?
Updated README file to match new folder structure

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

Closing PR since a workaround is mentioned in the issue


Fix react git ignore

the .cache and dist folders aren't being ignored by default.
Also, for Rust contracts the target directory wasn't being ignored, but looking at the code it seems to be doing it correctly so it might just not be released? If not, happy to fix that, but it wasn't intuitive for me how to run from source (my JS is rusty sorry)

@austinabell thanks!
looks like needs to be updated to pass CI:
https://travis-ci.com/github/near/create-near-app/builds/221825003
commit message should match expected format:
https://github.com/conventional-changelog/commitlint/#what-is-commitlint

@austinabell thanks!
looks like needs to be updated to pass CI:
https://travis-ci.com/github/near/create-near-app/builds/221825003
commit message should match expected format:
https://github.com/conventional-changelog/commitlint/#what-is-commitlint

Force pushed with new commit. Let me know if the new commit is in the right form


Add scheduled job to delete marked jenkins workspaces

This adds a new scheduled job to remove marked (ws-cleanup in their names) workspace folders on windows.
Assumed that Jenkins always use workspace folder under jenkins user home directory and also changed Jenkins_User role name to Jenkins.
Addresses #477.

@ali-ince travis failed linting:
./playbooks/AdoptOpenJDK_Windows_Playbook/roles/Jenkins/tasks/main.yml
11:29 warning  truthy value should be true or false(truthy)
19:81 warning  line too long (156 > 80 characters)(line-length)
21:5 error    wrong indentation: expected 6 but found 4(indentation)
22:81 warning  line too long (144 > 80 characters)(line-length)
24:5 error    wrong indentation: expected 6 but found 4(indentation)
28:14 warning  truthy value should be true or false(truthy)
28:17 error    no new line character at the end of file(new-line-at-end-of-file)

You only have to fix errors to get it to pass

@ali-ince Unfortunately travis still doesn't like it :-)

@karianna Sorry for the trouble, it took some time to get used to :)

No worries at all thanks for the help!!


#274: Fix auditing of entities with fields that require php conversion

Q
A

Bug fix?
yes

New feature?
no

BC breaks?
no

Deprecations?
no

Has tests?
yes

Fixed tickets
#274

Fixed

thank you!


2.x Refactorings/reactive registry

NetflixOSS » eureka » eureka-pull-requests #265 SUCCESS
This pull request looks good


pip install isn't working.

Downloading/unpacking geograpy2
Could not find any downloads that satisfy the requirement geograpy2
installing from source isn't working either.
ubuntu 14.04, python 2.7

I tried as well, Mac yukon, via Python 2.7, same msg.

We're still working on the software. It's not registered on pip yet :|

I see. Cool then. All the best :)

We look forward to seeing it. Aritra and I help admin 3 of the more popular Python FB groups. When you get it registered we will pass along the word.

Oh, thank you, these are good news :) I took a break from this project but I intend to finish it soon. I'll post here when things are ok.

Sounds good!

Hi, when do you expect to have geograpy2 registered?

It's still unfinished. The parser is ok, but the code to find the correct cities is not.

yah, I downloaded and then installed  but I keep getting an error saying trees dont have a label attribute... totally dont get it, but what to do...

Hi all, any progress on its release? Just tried to pip install it, but no luck! Will it be registered soon?

Yes is this already completed? Unfortunately it is still not available through pip it would be awesome if this would be available any time soon :) !

Honestly, I wouldn't bother with this, it is very amateurish and incomplete.
On Monday, 29 February 2016, Daan Helsloot<EMAIL_ADDRESS>wrote:

Yes is this already completed? Unfortunately it is still not available
through pip it would be awesome if this would be available any time soon :)
!
—
Reply to this email directly or view it on GitHub
https://github.com/Corollarium/geograpy2/issues/2#issuecomment-190190445
.

Haha alright i will look at some other things then ;) !

What are you trying to achieve, I may be able to advise. G
On Monday, 29 February 2016, Daan Helsloot<EMAIL_ADDRESS>wrote:

Haha alright i will look at some other things then ;) !
—
Reply to this email directly or view it on GitHub
https://github.com/Corollarium/geograpy2/issues/2#issuecomment-190296899
.

@garrettoca I think your comment stating 'very amateurish and incomplete' is very rude and unfair, particularly when this user has spent time doing something open source, whether it be incomplete or not. Instead of moaning in this way that you did, maybe contribute and do a pull request?

Currently trying to find all Cities in a piece of text using NLTK's chunker. I am using Geopy atm now but they dont seem to have an option to only find Cities (it finds countries as well) so it is a bit of a hassle.

Try Yahoo Placemaker
On Monday, 29 February 2016, Daan Helsloot<EMAIL_ADDRESS>wrote:

Currently trying to find all Cities in a piece of text using NLTK's
chunker. I am using Geopy atm now but they dont seem to have an option to
only find Cities (it finds countries as well) so it is a bit of a hassle.
—
Reply to this email directly or view it on GitHub
https://github.com/Corollarium/geograpy2/issues/2#issuecomment-190298865
.

Unfortunately, publishing poor products costs other people time and money
investigating. It's the suede of FOS s/w. G
On Monday, 29 February 2016, ruby childs<EMAIL_ADDRESS>wrote:

@garrettoca https://github.com/garrettoca I think your comment stating
'very amateurish and incomplete' is very rude and unfair, particularly when
this user has spent time doing something open source, whether it be
incomplete or not. Instead of moaning in this way that you did, maybe
contribute and do a pull request?
—
Reply to this email directly or view it on GitHub
https://github.com/Corollarium/geograpy2/issues/2#issuecomment-190298747
.

@garrettoca But by OS a project, you save the company having to build one themselves or using proprietary software at a cost. Hence you actually owe anyone willing to OS anything they've worked on a great deal. Try and appreciate people's efforts more rather than this feeling of entitlement that you're showing

Nobody Is entitled to gratitude for poor work except in la-la land where
everyone is better than average!
On Monday, 29 February 2016, ruby childs<EMAIL_ADDRESS>wrote:

@garrettoca https://github.com/garrettoca But by OS a project, you save
the company having to build one themselves or using proprietary software at
a cost. Hence you actually owe anyone willing to OS anything they've worked
on a great deal. Try and appreciate people's efforts more rather than this
feeling of entitlement that you're showing
—
Reply to this email directly or view it on GitHub
https://github.com/Corollarium/geograpy2/issues/2#issuecomment-190306368
.

This project is not finished and there are messages here stating this. It's why it's not in pip. I appreciate your comments @rubychilds, thank you.
@garrettoca I'd be very pleased to accept your PR to fix what is left to do instead of "saying I'm not paying for it or helping and it doesn't work."

Any updates?

@scottwernervt Where do those functions go? Where do I see the 'output'?

@JavierTSalas I copied those class instance methods from https://github.com/Corollarium/geograpy2/blob/master/geograpy2/extraction.py. So just install nltk and do not bother with geograpy2. Sample could for finding named entities would be:
import nltk

def named_entities(text):
    # word_tokenize should work well for most non-CJK languages
    words = nltk.word_tokenize(text)

    # TODO: this works only for english. Stanford's pos tagger supports
    # more languages
    # http://www.nltk.org/api/nltk.tag.html#module-nltk.tag.stanford
    # http://stackoverflow.com/questions/1639855/pos-tagging-in-german
    # PT corpus http://aelius.sourceforge.net/manual.html
    #
    pos_tag = nltk.pos_tag(words)

    nes = nltk.ne_chunk(pos_tag)
    return nes

def find_entities(text):
    """Parse text and tokenize it.
    """
    nes = named_entities(text)

    places = []
    for ne in nes:
        if type(ne) is nltk.tree.Tree:
            if ne.label() in ['GPE', 'PERSON', 'ORGANIZATION']:
                places.append(u' '.join([i[0] for i in ne.leaves()]))

    return places

locations = find_entities('I work at GitHub which is located in San Francisco, California.')

This didn't work for me :(
I ended up using https://pypi.org/project/geotext/

plz I am unable to write to database...
Traceback (most recent call last):
File "geo.py", line 25, in
pc= PlaceContext(e.places)
File "/usr/local/lib/python3.6/dist-packages/geograpy3/places.py", line 28, in init
self.conn = sqlite3.connect(db_file)
sqlite3.OperationalError: unable to open database file


Add identifier to split points for automated vs user created split points

Is your feature request related to a problem? Please describe.
When split points are automatically created due to tablet sizes, these split points persist until a user runs a merge.
If a merge is run automatically, then it might remove split points that were purposely set by the user.
Describe the solution you'd like
Split points created automatically by accumulo should be identified as such so they can easily be removed.

I will take a look at this issue, I think it makes sense to add a new column to track the split point type to the tablet metadata

@keith-turner - I've started to look into this and prototype something with a new column qual that will be added to the split family that was added and a few questions come to mind on how we want to handle marking the tablets:

Should we always require a split type to be set or is absent valid?
This relates to my first question and I'm wondering if it makes sense to always store the split type (either user or system) or if it makes more sense to just mark a tablet if it's user generated and for system splits there would just be an absent marker. This could depend on if we ever plan to have more than 2 types at some point.
For new tables I was thinking we'd either just mark them as system or absent depending on if absent is valid. For merges I am guessing we'd do the same? after the merge mark it as system generated or unset it etc.

Should we always require a split type to be set or is absent valid?

The pro for this is less data in the metadata table for a common case.  The con is absence can mean two things, its kinda like using null in java.  I can mean there is a bug and it was not set when it was intended to be set or it can mean its a system split.  So maybe we should only go w/ absence==system split if we feel confident enough in our tests to ensure that user split marker is always being set when intended.

For new tables I was thinking we'd either just mark them as system or absent depending on if absent is valid.

The create table API has a mechanism to set initial splits on a table.  Those could be marked as user initially.  The default tablet at the end of every table seems like it would always be marked system, but not sure.  The default tablet is always there when you have zero or more splits.

For merges I am guessing we'd do the same?

I can not remember what merge does w.r.t. adding splits.  Reviewing all of your merge changes, I remember something about deleterows inserting a split point possibly but not sure.  But, maybe this was removed in the 4.0 changes?  If merge is still adding splits, it was just doing that to make things work so not sure those should be marked as user.

Would the following be a good way to handle upgrade?

Upgrade marks all splits as system
There is per table prop that will enable automatic merges based on size.  The default value for this property is disables automatic merging.
The add split API call is modified such that if a user calls it passes in an existing split that is a system split it will remark it as a user split.

Then after upgrade user have a chance to mark splits that should never be automatically removed before enabling the auto merge feature.

Would the following be a good way to handle upgrade?

Upgrade marks all splits as system
There is per table prop that will enable automatic merges based on size.  The default value for this property is disables automatic merging.
The add split API call is modified such that if a user calls it passes in an existing split that is a system split it will remark it as a user split.

Then after upgrade user have a chance to mark splits that should never be automatically removed before enabling the auto merge feature.

I was wondering about the upgrade case, i like the idea of using absent for system splits as most splits will be system splits. However, one downside is any existing splits that a user created would be incorrectly marked as a system split on upgrade unless there were manual steps down like mentioned during upgrade.
I think this is fine but I'm wondering how we make it easy for a user to mark splits. We might need a new command line tool or something to make it simple to mark them. In fact, I could use a use case where a user decides maybe there's some tablets they don't want merged (even if originally system created) and they could use the tool not just for upgrades but for marking those to prevent merging too.

I think this is fine but I'm wondering how we make it easy for a user to mark splits. We might need a new command line tool or something to make it simple to mark them. In fact, I could use a use case where a user decides maybe there's some tablets they don't want merged (even if originally system created) and they could use the tool not just for upgrades but for marking those to prevent merging too.

Also wondering about unmarking them.  The TabletInformation API couild be used to get information about the markings.  Then just need to figure out what the APIs and shell commands are for marking and unmarking them.  Could be similar to APIs and shell commands for makring tablet availability.

This could depend on if we ever plan to have more than 2 types at some point.

Maybe instead of marking how a split was created we mark a splits mergability.  That could have the following three states.

ALWAYS : User or system initiated merge can merge this split away
USER : Only a user initiated merge can merge this split away
NEVER : Nothing can merge this split away and if a user merge operations is initiated on it then the merge operation would fail

Several of us talked and came up with a path forward for now, the tentative plan to try is:

There will be a new property created that is a percentage or ratio of the split threshold that can be used for automatic merges. The intent is that tablets can be merged together once they are below the threshold (ie maybe 10% or 25% of the split threshold). This prevents automatic merging from creating a tablet too big that will just immediately split.
A new column in metadata for the tablet that will store mergeability state of a table (if a tablet is eligible to be automatically merged). There will be 3 possible states and these will be represented by a duration that is relative to manager steady time. The exact names are still to be determined but we could represent it with something like NEVER (-1), NOW (0), FUTURE (timestamp). Future would mean that the tablet is eligible after some period of time for merging relative to the steady time.
There will need to be an updated API to set the mergeability information. A new method in the API called putSplits() can be created that will either create or update existing splits to set the mergeability. The existing addSplits() method can be deprecated and just default to never. The create table API can also be created with splits and this will also be able to set it.
There would need to be some way for a user to read the mergeability state of the tablet so needs to be returned as part of a new API call or modify an existing API.
By default, all user created tablets could be marked with a state of NEVER and system spits would be marked as NOW (or whatever we call it) so they can automatically merge. Pre-created splits for system tables like Fate, and Metadata, etc would be marked as NEVER by default.
On upgrade we would mark all existing tablets as NEVER.

One thing I am still trying to figure out is how the automatic merging should work if we reach the threshold we set (say smaller than 10% of the split threshold) and if we should only ever merge together 2 tablets or try and merge as many as possible etc.
@keith-turner - Is there anything I missed or got wrong after the conversation and conclusions we came to?

One thing I am still trying to figure out is how the automatic merging should work if we reach the threshold we set (say smaller than 10% of the split threshold) and if we should only ever merge together 2 tablets or try and merge as many as possible etc.

I like merging as many tablets that fit into the merge threshold. So if we have five tablets and the sum of their existing sizes is less than the merge threshold then can merge all five of them.

My plan is to break this into multiple PRs, I'm thinking 3 parts for now:

The first PR will be to add a new Mergeability column to the metadata table and to have Accumulo start populating it based on system splits vs user created splits. Pre split tables like Fate will be marked to not merge. Some basic inital tests will be added.
The next PR will handle the API changes which will allow setting the Mergeability of a table/tablet at table creation time or when creating/updating splits later. There will also be API updates to allow viewing the values. These changes will make it easier to add a lot more tests.
The last PR will implement the automatic merge feature to handle finding tablets that need merging and handling that. I'm envisioning this will be done with FATE and set up very similar to how splits work now. There will be a new property as well for the merge threshold, like splits. This last PR could be broken done even further into more than one PR if the scope becomes too large.


daemon crash

been spawning 10k containers in a bash loop (command was just top), at around 2.5k I got:
2015/12/18 10:39:39 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"

containerd crashed, containers list is empty after the crash, don't know if it's related to the code or to my system

Could be something weird happening on the system side.  Most of my tests and bench marks are running 1-2k containers.  I'm not sure how to debug this because that is a weird error, did that come from the daemon or client?

@crosbymichael I've seen that logs appearing in both daemon and client :/
the loop was just:
$ cat bench.sh

#!/bin/bash

for i in {1..10000}
do
	./bin/ctr containers start $i $(pwd)
done

I think it's grpc error, probably due to ulimit hit, but daemon shouldn't crash of course.

testing again

@LK4D4 daemon crashed:
[containerd] 2015/12/18 19:34:46   15-min rate:         1.65
[containerd] 2015/12/18 19:34:46   mean rate:           6.97
ERRO[0253] get process pid                               error=[6] Unknown error: invalid process
ERRO[0257] get process pid                               error=[6] Unknown error: invalid process
ERRO[0259] get process pid                               error=[6] Unknown error: invalid process
ERRO[0271] get process pid                               error=[6] Unknown error: invalid process
[containerd] 2015/12/18 19:35:46 counter containers
[containerd] 2015/12/18 19:35:46   count:            1959
[containerd] 2015/12/18 19:35:46 counter events
[containerd] 2015/12/18 19:35:46   count:            2424
[containerd] 2015/12/18 19:35:46 counter events-subscribers
[containerd] 2015/12/18 19:35:46   count:            2419
[containerd] 2015/12/18 19:35:46 timer container-start-time
[containerd] 2015/12/18 19:35:46   count:            1959
[containerd] 2015/12/18 19:35:46   min:          42991034.00ns
[containerd] 2015/12/18 19:35:46   max:         457644847.00ns
[containerd] 2015/12/18 19:35:46   mean:        138091592.04ns
[containerd] 2015/12/18 19:35:46   stddev:       61120164.91ns
[containerd] 2015/12/18 19:35:46   median:      126740613.00ns
[containerd] 2015/12/18 19:35:46   75%:         168180653.25ns
[containerd] 2015/12/18 19:35:46   95%:         253614820.75ns
[containerd] 2015/12/18 19:35:46   99%:         339428078.60ns
[containerd] 2015/12/18 19:35:46   99.9%:       457092969.49ns
[containerd] 2015/12/18 19:35:46   1-min rate:          5.48
[containerd] 2015/12/18 19:35:46   5-min rate:          4.11
[containerd] 2015/12/18 19:35:46   15-min rate:         1.85
[containerd] 2015/12/18 19:35:46   mean rate:           6.53
[containerd] 2015/12/18 19:35:46 gauge goroutines
[containerd] 2015/12/18 19:35:46   value:            6828
[containerd] 2015/12/18 19:35:46 gauge fds
[containerd] 2015/12/18 19:35:46   value:            3677
ERRO[0304] get process pid                               error=[6] Unknown error: invalid process
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: use of closed network connection"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
2015/12/18 19:36:05 grpc: Server.processUnaryRPC failed to write status: connection error: desc = "transport: write unix /run/containerd/containerd.sock->@: write: bad file descriptor"
FATA[0318] accept unix /run/containerd/containerd.sock: bad file descriptor

and this is the cause in client I think:
[ctr] rpc error: code = 2 desc = "[9] System error: fork/exec /proc/self/exe: too many open files"

I'm pretty sure that it's error from l.Accept on unix-socket. So, it's Go error as I understand. Probably you want to up ulimit or write your client(it's super easy with grpc and should be the primary use case of containerd) which will reuse a connection.

Maybe left open fds in the client because he is running it in a loop


Training with knowledge distillation

Hi. First of all, thank you for the excellent article and its implementation.
Your article describes experiments with knowledge distillation from CNN and repository contains a script for training in KD, but it looks incomplete because it uses DistillationLoss, which is not declared either in the repository or in third-party libraries. Could you, please, publish the code of this function to reproduce the results?

Sorry to my late reply. I have uploaded the missing loss_adv.py.


M3U not adding port

When Tunarr is creating the M3U it stopped adding the port number in the latest Edge build.

Narrowed to https://github.com/fastify/fastify/issues/4682. Only affecting edge at the moment. Should be a simple fix!


[$250] Android - LHN - Sending a text+attachment displays text with ellipsis.

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

Version Number: 9.0.12
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team
Action Performed:

Launch app
Tap on a report
Send a text+attachment choosing a image from gallery
Navigate to LHN

Expected Result:
Sending a text+attachment must display text+attachment in LHN
Actual Result:
Sending a text+attachment displays text with ellipsis
Workaround:
Unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/user-attachments/assets/8c10f84d-4d8e-45e0-b894-d125f1c792d6
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0143efae25694044fa
Upwork Job ID:<PHONE_NUMBER>797436242
Last Price Increase: 2024-08-02

Issue OwnerCurrent Issue Owner: @mollfpr

@RachCHopkins  FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

We think that this bug might be related to #vip-vsp

@lanitochka17 do we know what "Sending a text+attachment must display text+attachment in LHN" means? I can't decipher the meaning of this statement, what should show in the LHN?

That is the word Attachment should be displayed instead of ...

Thanks @lanitochka17

@daledah Could you explain why it's only happen in native?

@daledah That's make sense to me!
The proposal looks good, but I would prefer the alternative solution incase we will use getOptionData in somewhere else then the alternateText is well formatted.
🎀 👀 🎀 C+ reviewed!

fyi @RachCHopkins the PR for this issue led to a regression (https://github.com/Expensify/App/issues/47248). I'm not paying folks in that issue, but they should be subject to the regression penalty in this one (if you haven't paid them yet, which it seems like you haven't)

@techievivek @mollfpr I can't actually tell what's going on with this issue - is someone able to give me a quick summary of where it's at?

@RachCHopkins I think it's ready for the payment summary. The original PR and follow-up PR were in production last month.

Payment Summary:
Contributor: @daledah to be paid $125 via Upwork
Contributor+: @mollfpr to be paid $125 via NewDot Manual Request
Upwork job here

@daledah I have sent you another proposal!

I just saw the job on upwork but after reading the comments, I am unsure if it's fixed now or not. Could anyone please clarify?

Sorry for the confusion @rohit9625 - that was me trying to get a fresh offer to the person who'd already fixed the issue.
Contributor has been paid, the contract has been completed, and the Upwork post has been closed.

Sorry for the confusion @rohit9625 - that was me trying to get a fresh offer to the person who'd already fixed the issue.

No problem, Thanks :)

$125 approved for @mollfpr


Add CUDA custom call example as a JAX test

TODOs:

[ ] use new XLA FFI macro to declare handler with C linkage
[ ] make sure the test runs in GitHub CI
[ ] make sure the test is skipped when not running on GPU

Thanks @andportnoy! I'm taking a look at this right now. An initial comment: it looks like we'll need to make sure that we skip this test if we don't have the appropriate hardware. We can skip individual tests using jtu.skip_on_devices, but that doesn't operate at the module level. One option might be to add a raise unittest.SkipTest at the top level (I haven't actually tried this)?

@dfm Makes sense, I hoped to account for this by adding
    disable_backends = [
        "cpu",
        "tpu",
    ],

in the BUILD file (see invocation of jax_test rule), but don't know if it has an equivalent effect, do you know? I see that many GPU tests have logic for this both at the Bazel and Python level, do I need both?

Yeah! The GitHub actions tests (and some other internal builds) are run using pytest and this test gets discovered through that process.

Although Bazel knows libfoo.so is a runtime dependency for this test, pip doesn't: https://github.com/google/jax/actions/runs/9373790714/job/25846357873?pr=21645#step:8:496.
Is there a way to specify this to pip? Alternatively, maybe the test can run through the Makefile in OSS CI instead? That would be quite appropriate and would prevent it from getting stale.

I don't really think there's a good mechanism for testing this using pytest given our current infrastructure. By design jax is a Python-only package, and we don't want to start trying to compile anything as part of the install. I'd say that I think it would be fine to just test this as part of the Bazel runs, and omit it from the pytest runs. I think this still adds a really important test of this feature!

Sounds good, how do I disable this in pytest/OSS CI but not in internal Bazel?

Good question! I think it would be sufficient to add --ignore here:
https://github.com/google/jax/blob/dfe61285093ff826e1ad23bb36b77a42c01040b4/pyproject.toml#L76
- addopts = "--doctest-glob='*.rst'"
+ addopts = "--doctest-glob='*.rst' --ignore='tests/cuda_custom_call/cuda_custom_call_test.py'"

@hawkinsp and I talked about this PR a bit offline, and we think that this would be great to include in the docs directory (rather than tests) and we can make sure that the internal GPU builds discover this test even in that location. I think this helps clarify what we're trying to test here, and also satisfies the goal of testing that this API works in an end-to-end case. Perhaps this example could replace (eventually) or sit next to the existing docs/gpu_ops code? WDYT?

Sounds good to me. It's also on my todo list to update the example to use the new "best practices" that have been added in the meantime: use @ezhulenev's macro for C linkage and evaluate ffi_lowering introduced in https://github.com/google/jax/pull/21484 and see if it applies here.
I'll take a stab at making a test under docs discoverable, but might end up needing help setting up Bazel to do this.

Great! I'm happy to help with getting the build/test to work in the new location. Don't worry about digging into it in too much detail - it's probably easier for me to debug it when it's ready. Ping me whenever you want met to take a look. Thanks!

@dfm I think I've fixed the CI linting/test discovery bugs, please retrigger!

Can you squash the commits now, actually? I think that the best approach here would be for us to merge this as is (the test isn't running on a GPU yet) and then I can enable it after this lands.

Hmm, why is copybara still unhappy?

It's a little complicated on our end. I'll dig into it but probably not until tomorrow!

Understood, thanks.

In the meantime, can you add the usual license text to the top of each file? That might already fix it. Sorry I didn't catch that before!

Ah, I forgot that, done.


Support svg makeProps

We supported most svg props, what we lacked was accessibility properties. Added here https://github.com/davesnx/styled-ppx/pull/149


Add Translog files age to TranslogStats

Relates: https://github.com/elastic/elasticsearch/pull/28613
At the same time, review the properties exposed on TranslogStats to ensure that they align with those exposed in Elasticsearch.

Closed as #3358 is merged


Fix example

Please ensure all pull requests are made against the develop branch.
Issue #, if available:
https://github.com/awslabs/aws-serverless-express/issues/58
Description of changes:
add convert_to_text to options method of proxy resource
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

:tada: This PR is included in version 3.3.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Error installing pnpm on mac

Describe the bug
When i run make build on mac I get the following error:
Checking pnpm installation...
pnpm is not installed. Installing corepack to enable pnpm...
npm ERR! code EEXIST
npm ERR! path /opt/homebrew/bin/yarn
npm ERR! EEXIST: file already exists
npm ERR! File exists: /opt/homebrew/bin/yarn
npm ERR! Remove the existing file and try again, or run npm
npm ERR! with --force to overwrite files recklessly.

npm ERR! A complete log of this run can be found in: /Users/gneubig/.npm/_logs/2024-04-06T11_41_44_231Z-debug-0.log
/bin/sh: corepack: command not found

Setup and configuration
Current version:
commit 228889c50cf301bfbda9aacfe4e18ea6a3ff108d (HEAD -> main, origin/main, origin/HEAD)
Author: RaGe<EMAIL_ADDRESS>Date:   Sat Apr 6 07:04:10 2024 -0400

    fix frontend dependencies (#810)

    fixes #805

Commands I ran to install and run OpenDevin:
make build

Logs, error messages, and screenshots:
Here is the full log cited in the error message above.
2024-04-06T11_41_44_231Z-debug-0.log
Additional Context
OS is Mac OS Sonoma 14.1.2 (23B92)
Maybe we don't need pnpm

Are you trying to install PNPM with Yarn?


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:17: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:22: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:26: missing_python: For pypi packages, python should be present in the host and run sections. Missing in run
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:33: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:40: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:40: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_e1qn39d0ri/clone/recipe/meta.yaml:40: missing_description: The recipe is missing a description
Errors were found

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:17: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:22: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:26: missing_python: For pypi packages, python should be present in the host and run sections. Missing in run
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:33: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:40: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:40: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_a715z7ye6d/clone/recipe/meta.yaml:40: missing_description: The recipe is missing a description
Errors were found


Docs note defined? as opposite of itself in description.

It says

returns true if none of the things are undefined, as tested with typeof. This is the inverse of defined?

It should say

returns true if none of the things are undefined, as tested with typeof. This is the inverse of undefined?

https://docs.sibilant.org/defined
Sorry, would submit a pull request for this but I couldn't tell how to edit the docs correctly on first glance.

Thanks for catching this! Here's the line in question: https://github.com/jbr/sibilant/blob/master/src/macros/predicates.sibilant#L49


Linux with XDG Desktop Portal: set_directory() only works with save dialog

set_directory() only works with save dialogs, not with open dialog. I'm not sure if this is really a bug in rfd but in XDG portal itself. According the docs setting the starting path should be supported in general, the rustdoc comments still show it as "GTK-only" though.

That is not true https://bilelmoussaoui.github.io/ashpd/ashpd/desktop/file_chooser/struct.OpenFileRequest.html#method.current_folder, the option is either not used by rfd or you have an old portal installed that doesn't support it.


add verification that empty string overrides work for kubelet config

Issue #, if available:
Description of changes:
details in added e2e test.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

nice!