feat: Sync from noir

Automated pull of development from the noir programming language, a dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
chore: Add a regression test for bit not on untyped integer (https://github.com/noir-lang/noir/pull/5589)
feat: Implement poseidon2_permutation in comptime interpreter (https://github.com/noir-lang/noir/pull/5590)
fix: 'cannot eval non-comptime global' error (https://github.com/noir-lang/noir/pull/5586)
fix(frontend)!: Restrict numeric generic types to unsigned ints up to u32 (https://github.com/noir-lang/noir/pull/5581)
feat: Implement zeroed in the interpreter (https://github.com/noir-lang/noir/pull/5540)
fix: correctly track sources for open LSP documents (https://github.com/noir-lang/noir/pull/5561)
fix: error on trait impl generics count mismatch (https://github.com/noir-lang/noir/pull/5582)
fix: allow calling a trait method with paths that don't consist of exactly two segments (https://github.com/noir-lang/noir/pull/5577)
fix: Run macros within comptime contexts (https://github.com/noir-lang/noir/pull/5576)
chore: Remove comptime scanning pass (https://github.com/noir-lang/noir/pull/5569)
fix(frontend): Disallow signed numeric generics (https://github.com/noir-lang/noir/pull/5572)
chore: disable aztec-packages CI checks (https://github.com/noir-lang/noir/pull/5566)
feat: LSP inlay parameter hints (https://github.com/noir-lang/noir/pull/5553)
feat: Add TraitDefinition::as_trait_constraint() (https://github.com/noir-lang/noir/pull/5541)
fix: Fix uhashmap test name (https://github.com/noir-lang/noir/pull/5563)
fix: let unary traits work at comptime (https://github.com/noir-lang/noir/pull/5507)
feat: Add a compile-time hash map type (https://github.com/noir-lang/noir/pull/5543)
chore(docs): Docs for turbofish operator (https://github.com/noir-lang/noir/pull/5555)
fix(frontend): Error for when impl is stricter than trait (https://github.com/noir-lang/noir/pull/5343)
chore: filter warnings from elaborator in Aztec Macros (https://github.com/noir-lang/noir/pull/5556)
fix: Don't panic when a macro fails to resolve (https://github.com/noir-lang/noir/pull/5537)
fix(ssa): More robust array deduplication check (https://github.com/noir-lang/noir/pull/5547)
fix: Fix occurs check (https://github.com/noir-lang/noir/pull/5535)
fix: type_of for pointer types (https://github.com/noir-lang/noir/pull/5536)
chore: Release Noir(0.32.0) (https://github.com/noir-lang/noir/pull/5268)
fix: revert PR #5449 (https://github.com/noir-lang/noir/pull/5548)
fix: never panic in LSP inlay hints (https://github.com/noir-lang/noir/pull/5534)
feat: LSP document symbol (https://github.com/noir-lang/noir/pull/5532)
feat: add comptime support for modulus_* compiler builtins (https://github.com/noir-lang/noir/pull/5530)
chore: Remove unknown annotation warning (https://github.com/noir-lang/noir/pull/5531)
feat: Add TraitConstraint type (https://github.com/noir-lang/noir/pull/5499)
fix: Error on empty function bodies (https://github.com/noir-lang/noir/pull/5519)
feat: LSP inlay hints for let and global (https://github.com/noir-lang/noir/pull/5510)
chore: Remove dbg on find_func_with_name (https://github.com/noir-lang/noir/pull/5526)
chore: Remove the remainder of legacy code (https://github.com/noir-lang/noir/pull/5525)
chore: Remove --use-legacy and resolution code (https://github.com/noir-lang/noir/pull/5248)
chore: switch to Noir Keccak implementation with variable size support (https://github.com/noir-lang/noir/pull/5508)
chore: standardize experimental feature disclaimer across documentation (https://github.com/noir-lang/noir/pull/5367)
END_COMMIT_OVERRIDE

The previous sync mistakenly took the noir sync commit on master rather than the new one generated by the sync itself. Thus we see a lot of the same commits as in https://github.com/AztecProtocol/aztec-packages/pull/7577 but the actual diff is much smaller.

Benchmark results
Metrics with a significant change:

avm_simulation_time_ms (Token:transfer_public): 34.1 (-53%)
protocol_circuit_proving_time_in_ms (base-parity): 1,362 (-28%)
l2_block_building_time_in_ms (4): 13,027 (+27%)
l2_block_rollup_simulation_time_in_ms (4): 13,027 (+27%)
l2_block_public_tx_process_time_in_ms (4): 11,307 (+32%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,713 (-1%)
1,537 (-1%)
704 (-1%)
740
768 (-1%)

proof_construction_time_sha256_30_ms
11,716 (-1%)
3,160 (-1%)
1,418 (+1%)
1,443
1,478

proof_construction_time_sha256_100_ms
43,714 (-1%)
11,953
5,415
5,450
5,410 (+1%)

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
59.0 (+2%)
88.0

proof_construction_time_poseidon_hash_30_ms
1,515 (-1%)
415
199
231 (+3%)
267

proof_construction_time_poseidon_hash_100_ms
5,604 (-1%)
1,514
678
733 (-1%)
760 (+2%)

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
708
708
708

l1_rollup_calldata_gas
6,600
6,596
6,600

l1_rollup_execution_gas
583,062
583,209
583,364

l2_block_processing_time_in_ms
768 (+2%)
1,432 (+1%)
2,726 (+2%)

l2_block_building_time_in_ms
:warning: 13,027 (+27%)
20,373 (+1%)
43,353 (+9%)

l2_block_rollup_simulation_time_in_ms
:warning: 13,027 (+27%)
20,373 (+1%)
43,352 (+9%)

l2_block_public_tx_process_time_in_ms
:warning: 11,307 (+32%)
18,364 (+1%)
40,075 (+6%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
7,069
9,959

node_database_size_in_bytes
12,738,640
16,846,928

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

GasToken:_increase_public_balance
100 (-1%)
13,790

GasToken:set_portal
13.6 (+1%)
3,339

Token:constructor
124 (+1%)
23,692

FPC:constructor
92.2 (-2%)
13,592

GasToken:mint_public
81.8 (-13%)
10,158

Token:mint_public
265 (-1%)
19,034

Token:assert_minter_and_mint
84.4 (+17%)
12,925

AuthRegistry:set_authorized
44.2 (-4%)
7,812

FPC:prepare_fee
250
11,068

Token:transfer_public
:warning: 34.1 (-53%)
44,012

FPC:pay_refund
73.0 (-7%)
15,961

Benchmarking:increment_balance
1,029 (+3%)
11,281

Token:_increase_public_balance
15.3 (-3%)
15,006

FPC:pay_refund_with_shielded_rebate
133 (+1%)
17,056

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.156 (+1%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.5 (+1%)
16.8 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.607 (+1%)
0.518 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
50.2 (+2%)
75.9
131 (+1%)
244 (-1%)
474 (+1%)

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.513 (+2%)
0.465
0.451
0.443 (-1%)
0.442 (+1%)

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
62.1 (+2%)
111
182 (+1%)
352 (-1%)
694 (+1%)

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.525 (+2%)
0.500
0.483
0.477 (-1%)
0.477

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
75.2 (+2%)
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
133
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.534 (+2%)
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
77,362
668,542

Transaction size based on fee payment method
| Metric |  |
| - |  |


Need support ZCL attribute reporting

Problem
The three example apps #1775, #1776 , #1777, should use ZCL attribute reporting for value changes in cluster, which is fully supported in current ZCL implementation.
Proposed Solution
Implement arrtibute reporting.

Similar to https://github.com/project-chip/connectedhomeip/issues/2470


Exclude its subtree

LGTM :+1:

🐳

It seems the test on Circle CI is all green 🍏
https://circleci.com/gh/bm-sms/daimon-news/2082


Generate links to definition in rustdoc source code pages

How can Bevy's documentation be improved?
https://github.com/rust-lang/rust/pull/84176 (just merged) allows rustdoc to generate links to definitions in source code pages. This new feature is disabled by default. Once this moves off nightly we should enable the feature with the --generate-link-to-definition option.

Doesn't this need to be enabled by the one building the docs which is not us but docs.rs?
The doc built during CI are not published anywhere, having the links there wouldn't be visible

docs.rs uses nightly rustdoc. It also allows you to pass arbitrary flags to rustdoc using a section in Cargo.toml I believe.

https://docs.rs/about/metadata

Marking this as unblocked. We now use nightly to build our docs, and so does docs.rs.

Closing as fixed.


Formatting, grammar, spelling updates for Installation section docs

Hi again! I hope this PR isn't too hefty. I've gone through the installation section of the docs and fixed some formatting, a few spelling errors, and some grammatical roughness.
Thanks!

Thanks a lot! :sweat_smile:


Update documentation for oauth and other new features

A few new features have been added, but they have not been documented. The following documentation needs to be written:

[ ] oauth2 / oidc provider
[ ] public access system status endpoint
[ ] public door bump API for integrating door bumping from remote systems
[ ] public debit (for vending machines etc.) API endpoint
[ ] list of links able to be added to homepage cards
[ ] postgres database backend env vars config

Would be good to get some docs on the API as well - I'm happy to write some of them.
The /debit API is of particular interest as I'm not quite sure how I associate a call from a device such as a vending machine or 3D printer management system with a specific user.

It's done by supplying their RFID card number in the API request. You can see how the old vending machine firmware used to do it here: https://github.com/HSBNE/VendingMachine/blob/db6c5e38621be9088b0f85e790960ae4049fdea8/RFID_Vending_Machine/RFID_Vending_Machine.ino#L184

I saw some code to interact with Moodle as well on the latest dev branch, any chance we can get documentation on that as well please? :)

:rofl: There's really no rush, I've just managed to find time to do stuff with this recently that I otherwise wouldn't have done!
 However, we found that canvas cloud was super limiting in terms of their API, oauth, etc. Users have to register with the same email in MM, and the canvas UX for returning users who aren't logged in is awful. We've had so many people try to come back to canvas halfway through (or users who've used canvas elsewhere prior) unable to complete the induction because of how bad it is.
Moodle is reasonably easy to setup and run your own instance on and supports oauth. It works well on my local dev instance and means during induction you just click "start induction" which kicks you to Moodle, and auto logs in if oauth is configured correctly. 100 times better than the Canvas flow. The intention with Moodle is to eventually hook it up to interlocks and automatically provision access to certain (low risk) tools after the relevant course is completed.


Unified definition

The tuple representation allows for much slimmer, simpler usage by clients (no need for first-class modules, functors, etc.).
Here's an example of usage before/after this PR: https://github.com/FormidableLabs/reason-urql/pull/132/files#diff-58c974b09e3cc8d4b9e0332289157a63
And the definition-based api applied to the other operation types: https://github.com/FormidableLabs/reason-urql/pull/133#issue-345359529
Right now this PR only provides it for bucklescript - if it looks good to you, I'll copy the implementation over to the native side as well.

This is very nice, thanks so much! Opens up for many improvements in graphql client libraries 😄
Could you please explain what the last function in the tuple does? I see it is called composeVariables in reason-urql, but what exactly is its purpose (and also type)? Can't seem to figure it out from the changes in this PR, ppx is tough 😕
Thanks!

I agree on ppx's being tough! It took an hour or so to set up a tight iteration loop to develop on it.
Here's what the tuple expands into:
  let makeVariables = (~key, ()) =>
    Js.Json.object_(
      [|("key", Js.Json.string(key))|]
      |> Js.Array.filter(((_, value)) =>
           !Js.Json.test(value, Js.Json.Null)
         )
      |> Js.Dict.fromArray,
    );
  let definition = (
    parse,
    ppx_printed_query,
    (graphql_ppx_use_json_variables_fn, ~key, ()) =>
      graphql_ppx_use_json_variables_fn(
        Js.Json.object_(
          [|("key", Js.Json.string(key))|]
          |> Js.Array.filter(((_, value)) =>
               !Js.Json.test(value, Js.Json.Null)
             )
          |> Js.Dict.fromArray,
        ),
      ),
  );

So the last item in the tuple (composeVariables) is a higher-order function. If we ignore the first argument for now, all this function does is take labelled arguments and build the Js.Json.t variables object. Then it passes that variables object to graphql_ppx_use_json_variables_fn.
The idea here is that the client (apollo, urql, etc.) can pass in a function that takes a completed variables object and does whatever (probably makes a network call), and by the magic of currying, this HoF will turn it into a labelled-argument function.
Hopefully that makes sense - it took awhile to noodle through in person with @Schmavery!

@MargaretKrutikova in case it helps, you can also think of the last function as being one that takes a function f and arguments a and then returns f(a).
It's just a little weirder because we want to be able to pass the arguments as named arguments, so it makes the types a bit harder to read in the graphql client code.
This is useful because we can write whatever logic we want the client to do with the variables, and then shove that inside the composeVariables function and get back a new function that accepts all the variables as named args and then calls our function with those variables parsed into a Js.Json.t

This was merged quickly! Wouldn't it be better to allow for some discussion, and wait until it has the native code before releasing?
We are essentially duplicating data in the tuple, basically you now have the query definition and the parse function in two places. Increasing the bundle size and other potential negative side effects.
I think it's better to have one of the two situation:

Remove parse and query from the module, with a breaking change that everything is in definition now

Actually if implementation want to pass the whole definition you can also use first class modules to pass the module contents, so then this PR can only add composeVariables (very nice addition BTW).

@jfrolich I understand your concerns. Thank you for starting a discussion. I would like to answer a few of them.

We are essentially duplicating data in the tuple, basically you now have the query definition and the parse function in two places. which might have some potentially negative side effects.

We're not duplicating parse and query, we're just passing already defined functions. If you look into ppx output you'll see:
 let definition = (
    parse,
    ppx_printed_query,
    (graphql_ppx_use_json_variables_fn, /* variables */) => /* output */
)

Actually if an implementation wants to accept the "query/mutation definition" you can also use first class modules to pass the module contents, so then this PR can only add composeVariables (very nice addition BTW).

 On one hand it can be a good idea to force people to learn about it but on the other hand it's harder to get started coming from JS background.

More radical, just compile to the definition, and don't compile to a module anymore.

This is interesting, I would really like to pay with that. It would allow us to remove this magic: https://github.com/baransu/graphql_ppx_re/blob/master/src/bucklescript/output_bucklescript_module.re#L30 but we would lose access parse return type in easy way as it's available via Query.t.

Thanks a lot for the explanation, @sgrove @Schmavery ! Is there any way we could have those changes for native too?

Please consider adding something to the README, possibly with a migration guide. Currently that information is spread out in this comment thread and a 3rd party's repo for sample code changes.

@nirvdrum Created issue for that #55


DCOS-12892: Display declined offers for ServiceTree instances in ServicesTable

This PR adds the declined offers warning for groups of apps if any apps inside the group have declined offers.

Rebased with integration test fixes 🎉

@orlandohohmeier Thanks for catching this stuff, I've addressed all of your comments

@orlandohohmeier - going to merge because I know you're busy. I'll take on the additional changes if what john did doesn't satisfy your request.


cinder-volume udev mount not set up correctly in container

Tracking upstream bug https://bugs.launchpad.net/openstack-ansible/+bug/1488228

Closed upstream as invalid so also closing here.


AGDIGGER-123 Download Apple's WWDR certificate during OSX provisioning

See https://issues.jboss.org/browse/AGDIGGER-123
How to verify:

Have an OSX machine with SSH enabled. e.g. your local Mac
Change cluster-up-example inventory file like this:

[macos]
<IP_ADDRESS>

Run this:

ansible-playbook -i cluster-up-example sample-build-playbook.yml --tags=osx_download_certs

In case of login problems, add --ask-pass flag to the command above. It will ask the password of the OSX user (by default, it the user named jenkins)

@laurafitzgerald I will need some help to publish the role to Ansible Galaxy once this PR is merged.

@aliok yes I can help you with that. We haven't been doing a regular publish to Ansible Galaxy as the installer is configured to pull the installer from github atm. From an community perspective it would be good to keep it updated so that it can be pulled from galaxy.
I don't have an OSX machine for the verification (unless there is one created somewhere) but will do a review now on the code changes.


Source string review

As per @hturner at https://r-contributors.slack.com/archives/C0210D7EN1X/p1684139404126109

Sometimes there are minor issues in the source strings e.g. double spaces vs single space - it would be good it we could fix these as we go along.

https://docs.weblate.org/en/latest/workflows.html#source-strings-reviews.

I think the best we can do for now is setting up a "Source string bug reporting address" that will be used if someone writes a comment on Weblate for a string with the "Source string comment, suggestions for changes to this string" option:

Maybe the best would be to collect these outside of R core (e.g. a mailing list?) and compile a list of suggestions along with the quarterly patch files?

@lawremi had a great suggestion to create a new Slack channel, generate an email address that ingests messages, and use that as the "Source string bug reporting address". This way folks can monitor suggestions and also can discuss it in the related thread.
@hturner I think only you have the power to create new channels, and probably also to create a related email address. Can you help with that? Maybe call it #core-translation-po-source-fixes or similar.


”Ceamurlia de Jos”, ”Lunca” are listed in the drop-down menu

Description:
When user writes ”Ceamurlia de Jos”, ”Lunca” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Ceamurlia de Jos"

Expected results
The location appears in the drop-down menu as "Sat Ceamurlia de Jos, TULCEA (Ceamurlia de Jos)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Lunca"

Expected results
The location appears in the drop-down menu as "Sat Lunca, TULCEA (Ceamurlia de Jos)".


File decryption fails when device is rotated during decryption

Found in this Google Play comment: https://play.google.com/store/apps/details?id=com.doplgangr.secrecy&reviewId=Z3A6QU9xcFRPRnRiTmEtN0ItY2J6RTRRQ2dSVFdEMjQ2TlRkOFZKOUVQWDQ3ZHczaHZXS0xmUUFZQ1dPQzM1NWZoSDVrSWhFWmJBV256MERQelY3eFEzZWlJ
I can reproduce the problem.

                                                                                This could be due to that the decryption function is somehow bound inside an activity, and any configuration change in the activity can trigger a remodeling of the activity instance and kill the decryption. One possible way is to put it in a job and make it independent of the activity.                                                                                Sent from my BlackBerry 10 smartphone.                                                                                From: L-HenkeSent: Monday, 16 February, 2015 7:05 AMTo: SecrecySupportTeam/secrecyReply To: SecrecySupportTeam/secrecySubject: [secrecy] File decryption fails when device is rotated during decryption (#93)Found in this Google Play comment: https://play.google.com/store/apps/details?id=com.doplgangr.secrecy&reviewId=Z3A6QU9xcFRPRnRiTmEtN0ItY2J6RTRRQ2dSVFdEMjQ2TlRkOFZKOUVQWDQ3ZHczaHZXS0xmUUFZQ1dPQzM1NWZoSDVrSWhFWmJBV256MERQelY3eFEzZWlJ

I can reproduce the problem.
—Reply to this email directly or view it on GitHub.

closed wth #103. View implementation is just unrelated minor problem.


LUCENE-10539: Return a stream of completions from FSTCompletion.

I plan to commit this in if there are no objections.

Thanks @msokolov !


Sync eng/common directory with azure-sdk-tools repository

Sync eng/common directory with azure-sdk-tools repository

/azp run cpp - core - ci

/azp run cpp - storage - ci


feat: add API for multiplicative characters

This adds some API lemmas for multiplicative characters. We also remove a couple of porting notes (the previous proof lines work again).

we should move it to somewhere in the algebra hierarchy.

I'm planning to move MulCharacter to NumberTheory.MulChar.Basic (and add more API in a new Lemmas file); see here on Zulip. I'm also going to move GaussSum directly under NumberTheory (the original development was motivated by quadratic reciprocity, but Gauss sums are more generally uesful) and eventually add NumberTheory.JacobiSum as well.

Gauss sums are more generally useful

I agree strongly! So you're saying this move will follow in a future PR?

this file imports Mathlib.Algebra.EuclideanDomain.Instances

I have removed the import. Thanks for spotting this!

LGTM!
maintainer merge


Add Semiring (Disj a), Semiring (Conj a) instances

Resolves #20
Supersedes https://github.com/purescript/purescript-semirings/pull/5

:+1: Thanks!


Can't Login and Can't Login Support sorry

Hi, I'm trying to create a SendGrid account but receive the following error:
"Please provide further information
You will not be able to send email through SendGrid until you provide more information. Please contact Support to answer a few more questions.
"
But I can't contact support without logging in, and my issue isn't addressed in the FAQS. What should I do?

Expected content
Actual content
Link to page:

Hello @proof-by-accident  ,
We're sorry you're having this issue. You can access support contact options by going to https://support.sendgrid.com and clicking "Trouble Logging in?". From there, you can tell us a little more about your problem without having to log in, and one of our fantastic support people will get back to you. Hope this helps!
Twilio SendGrid Docs Team


Flutter doesn't render UI on iPhone 6 plus running iOS 10.3.2

Steps to Reproduce
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'iOS Bug',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        body: Center(
          // Center is a layout widget. It takes a single child and positions it
          // in the middle of the parent.
          child: Card(
            child: Text(
              "Test",
              style: TextStyle(fontSize: 50, color: Colors.white),
            ),
            elevation: 20,
            color: Colors.blue,
          ),
        ),
      ),
    );
  }
}

Above is a minimal code that you can reproduce this bug.
Run this code on iPhone.
It doesn't render widgets but prints a lot of error logs in Xcode.

I tested this code on an emulator running 10.3 but it works as expected. I found this bug while I was trying to run my project to multiple devices. This was the only one has this problem.
Would you recommend me to set the deployment target to iOS 11?
Expected results:
Renders UI correctly.
Actual results:
It doesn't render UI.
Output Log

Logs

flutter run --verbose

Analyzing bug...
No issues found! (ran in 1.6s)

[✓] Flutter (Channel beta, 1.19.0-4.3.pre, on Mac OS X 10.15.3 19D76, locale en-KR)
    • Flutter version 1.19.0-4.3.pre at /Users/captainpark/Library/Flutter/sdk
    • Framework revision 8fe7655ed2 (5 days ago), 2020-07-01 14:31:18 -0700
    • Engine revision 9a28c3bcf4
    • Dart version 2.9.0 (build 2.9.0-14.1.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/captainpark/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • ANDROID_HOME = /Users/captainpark/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.8.4

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 41.1.2
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] IntelliJ IDEA Ultimate Edition (version 2020.1)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 46.0.3
    • Dart plugin version 201.7223.43

[✓] Connected device (5 available)
    • Nexus 5X         • 025d9eaac3aa2a09                         • android-arm64 • Android 8.0.0 (API 26)
    • SM G965N         • 21bd4fb43b037ece                         • android-arm64 • Android 9 (API 28)
    • SM G981N         • R3CN40AGS3T                              • android-arm64 • Android 10 (API 29)
    • Taehyun’s iPhone • 00008020-000570D82284002E                • ios           • iOS 13.4
    • iPhone           • c22785dc2a6631af0e74c77f6ba687157d613600 • ios           • iOS 10.3.2

• No issues found!

Hi @njovy
Could you please provide a video while running the video since its render UI issue. Is just white or something else?
Thank you

@TahaTesser First I observed this issue in my main project so I created a simple code to see if my code went wrong but it didn't. If you run this code on a device, it doesn't render shadow and text.

The white iphone is a problematic screen. It doesn't render UI as expected.

Attached is a screenshot of an actual result. It doesn't have an elevation, or text.

/cc @chinmaygarde is this fixed on master?

Hi, I had the same problem and i can confirm with latest master it is solved!
Here is my flutter doctor:
[✓] Flutter (Channel master, 1.20.0-8.0.pre.57, on Mac OS X 10.15.5 19F101, locale en-IL)
    • Flutter version 1.20.0-8.0.pre.57 at /Users/trope/flutter
    • Framework revision 8bd2e6585b (22 hours ago), 2020-07-11 12:15:19 -0700
    • Engine revision 9b3e3410f0
    • Dart version 2.9.0 (build 2.9.0-21.0.dev 06cb010247)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc3)
    • Android SDK at /Users/trope/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0-rc3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.5, Build version 11E608c
    • CocoaPods version 1.9.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (3 available)
    • Alan’s iPhone (mobile) • b5576f079e641777304d86c333e4084894f6cdf6 • ios            • iOS 10.3.3
    • Web Server (web)       • web-server                               • web-javascript • Flutter Tools
    • Chrome (web)           • chrome                                   • web-javascript • Google Chrome 83.0.4103.116

@TahaTesser @zanderso
I can confirm that everything works as expected with the latest master as well.
Thank you for fixing this issue so fast :D

This was patched in https://github.com/flutter/engine/commit/0dc86cda19d55aba8b719231c11306eeaca4b798 and that patch is being applied as a hot-fix to stable branches.


[KOGITO-2758] Refactor publisher-consumer code

Moving most of the code to constant classes. Since we cannot use reflection at runtime, Im relying on Function to execute conditional object creation.
Result of code generation is:
For consumer
@javax.enterprise.context.ApplicationScoped()
public class TravelersMessageConsumer_3 {
@javax.inject.Inject()
@javax.inject.Named("Travelers")
Process<TravelersModel> process;

@javax.inject.Inject()
Application application;

@org.eclipse.microprofile.config.inject.ConfigProperty(name = "kogito.messaging.as-cloudevents")
Optional<Boolean> useCloudEvents = Optional.of(true);

EventConsumerFactory eventConsumerFactory = new DefaultEventConsumerFactory();

@javax.annotation.PostConstruct()
public void configure() {
}

@org.eclipse.microprofile.reactive.messaging.Incoming("travellers")
public void consume(String payload) {
    eventConsumerFactory.get(event -> {
        TravelersModel model = new TravelersModel();
        model.setTraveller(event);
        return model;
    }, org.acme.travel.Traveller.class, TravelersMessageDataEvent_3.class, useCloudEvents).consume(application, process, payload, "travellers");
}

}
for producer
@javax.enterprise.context.ApplicationScoped()
public class TravelersMessageProducer_7 {
@javax.inject.Inject()
@org.eclipse.microprofile.reactive.messaging.Channel("processedtravellers")
org.eclipse.microprofile.reactive.messaging.Emitter<String> emitter;

@org.eclipse.microprofile.config.inject.ConfigProperty(name = "kogito.messaging.as-cloudevents")
Optional<Boolean> useCloudEvents = Optional.of(true);

EventMarshaller marshaller = new DefaultEventMarshaller();

@javax.annotation.PostConstruct()
public void configure() {
}

public void produce(ProcessInstance pi, org.acme.travel.Traveller eventData) {
    emitter.send(this.marshall(pi, eventData));
}

private String marshall(ProcessInstance pi, org.acme.travel.Traveller eventData) {
    return marshaller.marshall(eventData, e -> new TravelersMessageDataEvent_7("", e, pi.getId(), pi.getParentProcessInstanceId(), pi.getRootProcessInstanceId(), pi.getProcessId(), pi.getRootProcessId(), String.valueOf(pi.getState()), pi.getReferenceId()), useCloudEvents);
}

}

Hi @fjtirado many thanks working on this, seems neat. I haven't seen a change in the CloudEvent message producer/consumer. I think it's worth taking a look and testing this change with the Knative eventing example. You don't need a cluster to do that, a local smoke test would do.
Thanks!

I realize there is no test for consumer/producer when I see the poor coverage. Ill add one to integration test

Nice! But please, take your time and try to build/test the example locally as well with your changes to make sure that we are not breaking anything.

Nice! But please, take your time and try to build/test the example locally as well with your changes to make sure that we are not breaking anything.

I added bpmn from example to integration to ensure it is properly deployed with new code.
Pure Unit test was also added to event implementation classes used in generated code

LGTM! Many thanks putting such effort to test the CloudEvent over HTTP implementation as well. I'm just curious to see if this template could be changed as well as you did here: https://github.com/kiegroup/kogito-runtimes/blob/master/kogito-codegen/src/main/resources/class-templates/events/CloudEventsMessageProducerTemplate.java#L45-L57

Sure, done.

jenkins retest this

@kiegroup/gatekeepers please merge this

@cristianonicolai @evacchi could you please take a look?

looks good, just some minor improvements could be done around formatting, like in here https://github.com/kiegroup/kogito-runtimes/pull/723/files#diff-266a17d98d95b932425d0fe0fa53e050R32

Swithed the formatter so it only wrap method parameters when stricly necessary

jenkins retest this

please jenkins retest this

@kiegroup/gatekeepers  please merge this


After updating, MLB CEs aren't chosen after the first run

Preparation

[X] I tested the latest release
[X] I looked at other issues (even the closed ones)
[X] I read the Troubleshooting Guide

FGO server
NA
FGA build number
1594
Describe the bug
I'm doing the current NA event right now, so I made the bot choose to use supports that have servants with MLB CEs on them. The first run went perfectly with the bot choosing a servant with a MLB CE. After the first run, however, I noticed that the bot would just choose a non-MLB Event CE. I tested it out a few times, and it does seem like after the first run, it just stops checking to see if the CE is MLB or not.
I did some testing and I think the issue doesn't occur if you pause the run, go to the preferred servant/CE page on FGA, uncheck the MLB choice and recheck it.
(I do not know how to check my status of my device model or my RAM as I'm using Bluestacks, so I put 7)
Video
a
Device model
Bluestacks <IP_ADDRESS>2 N32
Android version
7
Screen size
1920x1080
RAM
3GB

Sorry it took me a while to get the video.
Link: https://youtu.be/aoCDnxrbFFo

At the support servants screen, set the filter to only show mlb ce. This way the app will only pick the right ce.

@lolcatzidk The video is without debug rectangles. But other users also reported this issue and I think it's just an issue with the current event and has nothing to do with recent code changes.
If I see the video with debug rectangles, I can say for sure whether it's because of the event CE. But the event is almost over anyways.

At the support servants screen, set the filter to only show mlb ce. This way the app will only pick the right ce.

Oh true. I had it on before, but I forgot to turn it back on after doing the CQ. Thanks for letting me know.

@lolcatzidk The video is without debug rectangles. But other users also reported this issue and I think it's just an issue with the current event and has nothing to do with recent code changes.
If I see the video with debug rectangles, I can say for sure whether it's because of the event CE. But the event is almost over anyways.

How would I turn on debug triangles? Maybe I can redo the video.

Under More Options -> Advanced -> Debug Mode


Add explanation about the impact -u- extension and  semantics

During the 2021-04-08 ECMA402 meeting
"
FYT: OK to change spec to shorter option and go to TC39 Stage 3? Support or object?
RGN: In principle, I’m on board but the current explanation does not support semantics we’ve just been discussing.
...
SFC: Do we have consensus on Intl Locale Info for Stage 3?  I support it.
...
RGN: +1, contingent on the changes we talked about
"
This is related to the decision that we treat the -u- extension as a way to "restrict" (vs "to expand")
the list return by
get Intl.Locale.prototype.calendars
get Intl.Locale.prototype.collatiions
get Intl.Locale.prototype.hourCycles
get Intl.Locale.prototype.numberingSystems
get Intl.Locale.prototype.timeZones
@gibson042 @sffc @zbraniecki
Any suggestion WHERE such explanation need to be added?
Do you think we should added to each of these getter? or somewhere else?

Or should we just rename
CreateArrayFromListAndPreferred(list , preferred )
to
CreateArrayFromListOrRestricted(list , restricted )

closed by #42


Error when running chrome cast command

Output from terminal. I also have Soundflower installed and that is set as the audio source.
AM-MacBook-Pro:~ alexmcgonagle$ chromecast
found device "Crustcast" at <IP_ADDRESS>:8009
Connecting to device 'Crustcast'
connected, launching app ...
streaming at http://<IP_ADDRESS>:3000/stream.mp3
app "Default Media Receiver" launched, loading media http://<IP_ADDRESS>:3000/stream.mp3 ...
/usr/local/lib/node_modules/chromecast-osx-audio/lib/index.js:72
console.log('status broadcast playerState=%s', status.playerState);
^
TypeError: Cannot read property 'playerState' of undefined
at DefaultMediaReceiver. (/usr/local/lib/node_modules/chromecast-osx-audio/lib/index.js:72:64)
at DefaultMediaReceiver.emit (events.js:95:17)
at MediaController.onstatus (/usr/local/lib/node_modules/chromecast-osx-audio/node_modules/castv2-client/lib/senders/default-media-receiver.js:16:10)
at MediaController.emit (events.js:95:17)
at MediaController.onmessage (/usr/local/lib/node_modules/chromecast-osx-audio/node_modules/castv2-client/lib/controllers/media.js:19:12)
at MediaController.emit (events.js:117:20)
at Channel.onmessage (/usr/local/lib/node_modules/chromecast-osx-audio/node_modules/castv2-client/lib/controllers/controller.js:16:10)
at Channel.emit (events.js:98:17)
at Client.onmessage (/usr/local/lib/node_modules/chromecast-osx-audio/node_modules/castv2-client/node_modules/castv2/lib/channel.js:23:10)
at Client.emit (events.js:117:20)

Same issue here with ChromeCast version 27946, but after updating to 31432, now it works! All you have to do to update is to reboot the Chromecast from the Chromecast remote app.

Hi @thevolcanomanishere; please try the fix suggested by @j15e, and see if this issue persists; usually this error is because communication has failed with the chromecast at the time that the audio stream is picked up; I've never been able to replicate it, unfortunately.
Please re-open this issue if the problem persists.


Change delete by index to delete by nusnet ID, and change command word to 'delstu'

Awaiting team conclusion on whether or not we should stick with deleting by index since the user can scroll.
Additionally, deleting by nusnetID may be seemingly impractical for a TA. Worry compromises on the "how well it matches the target user" under the 5m product design category,
before fixing tests and commented out code

Conclusion was to still include this feature

Hey @ForAeons or @tituschewxj , I'm not sure how to trigger the 4 tests that automatically runs everytime a PR/Commit is made. Any clue?

Hey @ForAeons or @tituschewxj , I'm not sure how to trigger the 4 tests that automatically runs everytime a PR/Commit is made. Any clue?

Nvm, resolved, it was due to a Merge Conflict

Hey @ForAeons or @tituschewxj , I'm not sure how to trigger the 4 tests that automatically runs everytime a PR/Commit is made. Any clue?

Nvm, resolved, it was due to a Merge Conflict

Are you referring to github ci? For ci, you can click on details and press rerun all failed jobs

Yep I was, previously due to Merge conflict it didn't even appear so idk what to even google. but alls good now, thanks.


chore: fix airgap explorer test

In the test we were looking for the add js libraries button, but we cannot add js libraries on airgap. So skipping add libraries from the assertion list.

/ok-to-test

@akash-codemonk - Merging this now. Lets check the Airgap run.


Error: failed to find BLE beacon for LRWYGDEEOPCxxxxxx

Hello,
I created the key pairs by tesla-keygen and try to add it to car and got error below. it looks like the private key was not loaded, the key file was set. I run this on raspberry pi 4.
Any suggestions ?
thx
tesla-control -debug -ble add-key-request rPi6_pub_key.pem owner cloud_key
2023-12-12T09:16:17-05:00 [debug] Set VIN to 'LRWYGDEEOPCxxxxxx'
2023-12-12T09:16:17-05:00 [debug] Set session cache file to ''
2023-12-12T09:16:17-05:00 [debug] Set key name to 'rPi6'
2023-12-12T09:16:17-05:00 [debug] Set key file to '/home/admin/vehicle-command/rPi6_pri_key.pem'
2023-12-12T09:16:17-05:00 [debug] Set OAuth token name to ''
2023-12-12T09:16:17-05:00 [debug] Set OAuth token file to ''
2023-12-12T09:16:17-05:00 [debug] Set keyring type to ''
2023-12-12T09:16:17-05:00 [debug] Set keyring Debug Logging to 'false'
2023-12-12T09:16:17-05:00 [debug] Skipping private key loading because FlagPrivateKey is not set
2023-12-12T09:16:17-05:00 [debug] No private key available
2023-12-12T09:16:17-05:00 [debug] Connecting over BLE...
2023-12-12T09:16:17-05:00 [debug] Creating new BLE device
2023-12-12T09:16:18-05:00 [debug] Searching for BLE beacon Saba34e378372xxxxxx...
2023-12-12T09:16:18-05:00 [debug] Connecting to BLE beacon...
Error: failed to find BLE beacon for LRWYGDEEOPCxxxxxx (Saba34e378372xxxxxx): can't scan: context deadline exceeded

Does the vehicle need to be in the specific state to pair?

I'm currently having the same issue on Raspberry Pi Zero 2 W with an external Bluetooth dongle. Dongle is being detected via hcitool dev and exclusively accessed by the "connector/ble" Go package. I've disabled the internal interface with dtoverlay=disable-bt in /boot/config.txt, but still not working.

what hardware did you use for your "INSUFFICIENT_PRIVILEGES" problem? it seems you connected to the vehicle.

I used the built in UART BLE interface of the Raspberry Pi, which is working. However, the connection was too unreliable that's why I wanted to switch to some external BLE dongle.

You don't need to load a private key for add-key-request because the command is authorized using an NFC card. The log line you highlighted isn't cause for concern. It looks like the your Pi found the vehicle over BLE but timed out while connecting; "context deadline exceeded" is how Golang likes to label timeout errors. You could try increasing the connection timeout but it may simply be an issue with the BLE dongle, drivers, or go-ble library.

Thank you @sethterashima I did try it inside the car. Maybe it's BLE driver issues.

You don't need to load a private key for add-key-request because the command is authorized using an NFC card. The log line you highlighted isn't cause for concern. It looks like the your Pi found the vehicle over BLE but timed out while connecting; "context deadline exceeded" is how Golang likes to label timeout errors. You could try increasing the connection timeout but it may simply be an issue with the BLE dongle, drivers, or go-ble library.
Trying to pair from inside the car may help if signal strength or interference are issues.

Can confirm that. BLE seems to be more sensitive than expected. After moving my Pi a few meters away from a metal fence, it works as expected. I have no idea why it temporarily worked via the UART interface.

I believe there is something wrong with the code. it's not reliable. I tried with my raspberry pi 4, raspberry pi zero w, and both are failed with same error message. I also tried on my intel MacBook Pro and it failed many times (both in and out of car). right before I gave up, I gave it a try just outside my car and it just works to let me tap the key card in the centre console. so my MacBook is listed as a key, but after that I got the same error it doesn't matter which command I use (lock, ping, list-keys, etc) and which location I was (in or out). I guess the ble code needs to be optimized.

As @sethterashima mentioned this probably not SDK related. Try to do an hcidump during the tesla-control execution and check if your BLE beacon can be found by your host's Bluetooth stack. If this is not the case, it's related to your Bluetooth hardware.

Hello @L480 . I run there hcidump, but I can't interpret it. I also run the hcitool lescan and found some thing. one of them is 74:B8:39:62:1D:31 S9c710d358225a7a2C, which has similar format of my ble beacon "Searching for BLE beacon Saba34e378372xxxxxx..."
I run this on my raspberry pi zero w. any though?
 Also trying to put my public_key.pem in my car's white list with this sdk and tesla app using https://www.tesla.com/_ak/{my_domain.com}. Both doesn't work. How can I register my public key to car?

@qja0707 agreed. it's not hardware issue. it's the code issue.

Did someone managed to debug this ?
I have the same issue : yesterday, it was working well. I slept, and now it's not working anymore.
I did not move the bluetooth dongle, nor my server. And the Tesla is at the same spot...
root@srv:/usr/local/bin/app# /usr/local/bin/app/tesla-control  -vin LRW.... -ble -key-name /pouet/private.pem -key-file /pouet/private.pem  -debug ping
2024-06-12T21:42:56Z [debug] Set session cache file to ''
2024-06-12T21:42:56Z [debug] Set OAuth token name to ''
2024-06-12T21:42:56Z [debug] Set OAuth token file to ''
2024-06-12T21:42:56Z [debug] Set keyring type to ''
2024-06-12T21:42:56Z [debug] Set keyring Debug Logging to 'false'
2024-06-12T21:42:56Z [debug] Client public key: 044xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2024-06-12T21:42:56Z [debug] Connecting over BLE...
2024-06-12T21:42:56Z [debug] Creating new BLE device
2024-06-12T21:42:57Z [debug] Searching for BLE beacon S106089xxxxxxxxx...
2024-06-12T21:42:57Z [debug] Connecting to BLE beacon...
Error: failed to find BLE beacon for LRWxxxxxxxxx (S106089xxxxxxxxxx): can't scan: context deadline exceeded


Discord Bot in JS

Discord Bot in HTML, CSS, JS and REACT

I would like to solve this issue as a GSSOC Participant'22


Linode Entity Detail Adjustments

Description

Update the Linode Entity Detail used in the Linode Detail and Linode Landing grid view pages
Clean up the component and remove unnecessary styles
Also added a fix to prevent the status on Domain Landing from wrapping

Screenshots
Before:
Linode Detail View

Linode Landing Grid View

After:
Linode Detail View

Linode Landing Grid View

Note to Reviewers
~There's definitely some scope creeping happening here so will wait for https://github.com/linode/manager/pull/7145 to be merged first so I can fix the conflicts~

Do we have a design for tablet viewport sizes? There's a lot of whitespace here:

There's also a regression in VLANS:

And (less importantly) DBaaS:

There are currently no tablet designs but I'll inquire about the status of those and I'll create a new ticket to fix the regressions

@DevDW good catch! There seem to be some inconsistencies throughout the app when it comes to the link colors in the dark theme so I'll create a separate ticket to handle any others but I did fix the managed one
You make a good point with the VLAN naming convention so I'll include that in another PR that I'll have up soon


Implement random seed for RandomForest and DecisionTree.

For #57.
I created a SeedGenerator in datasets.cpp to generate a repeatable stream of seeds ((but currently it just returns -1)).
For DecisionTree:

[ ] At each split, use a seed when choosing random features (if mtry != -1).

For RandomForest:

[ ] Use a different seed for each bootstrap.
[ ] Pass a different seed when creating each tree (for mtry).

So far we've implemented FindBestSplit in DecisionTree with an mtry parameter. Vanilla decision trees always use mtry equal to the number of features in the dataset, which is why they tend to be so highly correlated. Trees in Random Forests use a smaller mtry to evaluate a random subset.
For an actual vanilla decision tree, having the mtry parameter and random subset functionality is superfluous. I didn't point this out earlier as I figured we could implement DecisionTree with the mtry subset included, so that our Random Forest simply is a collection of DecisionTrees with mtry smaller than the number of features.
From #57 I see that's also how you implemented RF v1, so it looks like we're thinking along the same lines. Long wall of text to point out something obvious, but figured it's good to voice that design choice explicitly.

I wasn't sure myself if vanilla decision trees ever used a subset of features or not, so thanks for the clarification. I followed your original implementation of best_split from the helpers file, which is why the mtry hyperparameter ended up in the DecisionTree class.
But in any case, I agree that it seems like the best design approach. Especially for parallelization, because it allows the DecisionTree algo to dispatch the training of each tree instance to the DecisionTree class.
Leads to a very simple RandomForest.fit():
https://github.com/johannes-kk/cs205_final_project/blob/master/src/random_forest.cpp#L114-L131

❤


Resolve rendering issue with IE compatibility #976

Now renders correctly in Windows Google Drive Application by forcing Internet Explorer to compatibility to use the most recent IE version.

#976

My initial impression is that this is too specific to be something we ought to include in the distribution.

I was speaking to someone yesterday about a similar issue in IE where CAS has trouble rendering views with IE goes into compatibility mode. This might be something we could add to the documentation.

This resolves a display issue for any user on Windows OS who use the Google Drive Sync Application.  Unlike the browser, the application does not offer the option to enable and disable compatibility views.  While logging in from a browser is not an issue I am sure there is more than one person who would like to use the Sync tool on Windows.

I understand the problem but I tend to agree with @serac here. While I am sure the fix here is appropriate, it does feel like too specific of a solution to account for a too specific of a problem, with a browser specially that is not exactly known for its support for standards and good behavior. Of course we have to be pragmatic and I am happy to make this a documentation item for folks to apply, but I am not so sure yet that we need to actually maintain it.
@asgrant is the same problem we were talking about yesterday?

Tongue in cheek, the best solution is report this to Microsoft and have them fix the thing that requires their browser to switch to that mode :)

@mmoayyed this is the problem we were discussing. I think I'm on board with the idea of adding this as documentation as a small use-case gotcha. With the way that Microsoft operates this tag being added could mean nothing or we'll need additional tags in a different version of IE/Edge.

Thanks. I made an effort to update the docs.


Game Over issue

logic the determine the enemy position with door position have some issue with the logic as the values are not able as enemy is always at the corners and door is in between so fix it

it is fixed! (BUT NO IDEA)


ingest/cdp: get latest ledger as default for unbounded range

What problem does your feature solve?
for uses cases of cdp.ApplyLedgerMetadata where caller just wants it to start a range at whatever is latest ledger of network, requires the caller to obtain the latest ledger manually from history archives first and pass that as range.from
What would you like to see?
When caller of cdp.ApplyLedgerMetadata passes UnboundedRange.from=0, cdp.ApplyLedgerMetadata should detect and fetch the latest checkpoint ledger from target network and substitute that in the UnboundedRange.from value passed to BufferedStorageBackend.
What alternatives are there?
callers of cdp.ApplyLedgerMetadata that want to start streaming from current network ledger, must manually call HistoryArchive.GetLatestLedgerSequence() first to obtain the latest sequence.

It would be extra cool if Datastore could be queried to provide its highest and lowest ledger sequences currently available on it, then this type of behavior for clients to initiate unbounded from latest data point would be trivial:
https://github.com/stellar/go/issues/5498


Open TDirectoryFile

I was trying to open a regular ROOT file with the following structure:
KEY: TDirectoryFile   events;1        events

TDirectoryFile*         events  events
 KEY: TTree     events;1       Tree containing event data

If I try to open the file and change the directory with
f = uproot.open('test.root')['events']

I only get a <Undefined (no class named 'TDirectoryFile') at 0x7f5cc9f9d0b8>.
I have also tried to rename the TTree to something else that is not identical to the TDirectory name and this works as expected! So uproot seems to have a problem if the TDirectory and TTree in it have the same name.

I didn't know that two objects could have the same name at the same level! Could you send me an example file so that I can look at it in detail? (If it's small enough and can be made public, I'll add it as a unit test so that this bug doesn't regress.)

Sorry, I thought that the problem would be the naming. But I generated now two small test files (explained in the following) and both seem to work - I am a bit puzzled what happened. The issue could also be that I try to load a ROOT 5 file and test with ROOT 6. Are there known incompatibilities? I could send you the file I want to load in private (500MB) .. in the meantime I will continue to figure out where the issue exactly is.
This is what I tested and what I can confirm that both worked:
File 1:
"events" - TDirectory
|-> "events" TTree (within the TDirectory)
File 2:
"events" - TDirectory
|-> "Tevents" TTree (within the TDirectory)

In principle, ROOT 5 and 6 should be compatible. You're talking about writing files in ROOT 5 or 6 and reading in uproot, right?
(I've got a series of unit tests written in all ROOT versions from the past 5 years, which includes several versions of ROOT 5. But there can always be corner cases that I didn't explicitly test...)
It should be perfectly legal to name an object inside a directory the same name as the directory. Your second tests behave as expected. What I was saying is that I didn't think it was legal to have two objects at the same level with the same name. (After all, how would you extract them by name?)
You can reopen this issue if you reproduce the error.

Okay, I'll take a look.

Thanks! Just for reference, I tried to load with:
import uproot
f = uproot.open('test_same_names.root')['events']
f.keys()

In uproot, TFile and TDirectory were the only exceptions to Python classes exactly mirroring C++ classes. (Technical reason: I couldn't see a way to do it without repeating a lot of code.) TDirectoryFile should have been another exception. All I had to do was replace the
if classname == "TDirectory":

special cases with
if classname == "TDirectory" or classname == "TDirectoryFile":

They have the same serialization and the same meaning. This fix is going in as version 2.8.11 (in master now; in the process of deployment to PyPI).

Many thanks for the quick fix!


Different tau are used in different SRS files, is it safe?

As I know, Aleo holds plumo trustsetup to generate tau, in my mind, which will generate only One tau.
But when I try do unmarshal different SRS files, it seems different tau are used.
I add the following case in AleoHQ/snarkVM/parameters/src/testnet3/powers.rs.
it is supposed to be pass, but unfortunately, it not.
Could aleo guys help this problem?
    #[test]
    fn test_check_content_are_same(){
        let b15 =   &**POWERS_OF_BETA_G_15;
        let p15 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(b15);

        let b16 = Degree16::load_bytes().expect("fail to load degree16");
        let p16 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(&*b16);

        let b17 = Degree17::load_bytes().expect("fail to load degree17");
        let p17 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(&*b17);

        let b18 = Degree18::load_bytes().expect("fail to load degree17");
        let p18 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(&*b18);

        let b19 = Degree19::load_bytes().expect("fail to load degree17");
        let p19 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(&*b19);

        let b20 = Degree20::load_bytes().expect("fail to load degree17");
        let p20 = PowersOfBetaG::<Bls12_377>::load_powers_of_beta_g(&*b20);
        println!("p15[0]:{}, p16_0:{}, p17_0:{}, p18_0:{}, p19_0:{}, p20_0:{}", p15[0], p16[0], p17[0], p18[0], p19[0], p20[0]);

        for i in 0..p15.len(){
            assert_eq!(p15[i], p16[i]);
            assert_eq!(p15[i], p17[i]);
            assert_eq!(p15[i], p18[i]);
            assert_eq!(p15[i], p19[i]);
            assert_eq!(p15[i], p20[i]);
        }

        for i in 0..p16.len(){
            assert_eq!(p16[i], p17[i]);
            assert_eq!(p16[i], p18[i]);
            assert_eq!(p16[i], p19[i]);
            assert_eq!(p16[i], p20[i]);
        }

        for i in 0..p17.len(){
            assert_eq!(p17[i], p18[i]);
            assert_eq!(p17[i], p19[i]);
            assert_eq!(p17[i], p20[i]);
        }

        for i in 0..p18.len(){
            assert_eq!(p18[i], p19[i]);
            assert_eq!(p18[i], p20[i]);
        }

        for i in 0..p19.len(){
            assert_eq!(p19[i], p20[i]);
        }
    }

Hi there, thank you for taking a look. The next power starts immediately where the previous stops, in order to prevent taking up double the amount of space. To fill the powers, no trimming is needed: https://github.com/AleoHQ/snarkVM/blob/testnet3/parameters/src/testnet3/powers.rs#L424

@vicsn thank for your info.
Please help to check another issue also related to SRS files,  https://github.com/AleoHQ/snarkVM/issues/2335.


settings: loading key-value pairs for given subtree

Currently It is possible to load all the settings at once.
This make difficult design of big app when we rather want to initialize modules one by one. Especially when some modules should be initialized befor other  - which enforce split module initialization to initialization only for settings reception and further for the rest of initialization.

cc @Qbicz Can you take the voice here?

But what if settings_load("") meaning load all is called after this, can the subtree be reloaded ?
Yes
Or would we remove the settings_load("") completely and only allow settings_load("subtree") ?
No - keep API compatible backward.

I am still a little unsure of the expectations:
a. What if settings_load() is called before a settings_load_subtree() ?
b. Is the settings_load_subtree() limited to the settings.name or would you allow it to go down to the entry name ?

@Laczen it should be possible to load whole tree or to load a chosen subtree. There are applications where it is beneficial to be able to load the settings during initialization of a module, but do not enforce that all other settings users are initialized at this point, letting modules not block each other in this process. But some applications will be happy will simplicity of loading everything at once.
I agree with @jhedberg it is up to application to load each subtree only once or know the consequences of reloading.

Hi @Qbicz, thanks for the elaboration. Maybe my concern is not exactly clear: suppose you have two modules where one is dependent (mod1) on the other (mod2), next to some other modules which do not care. If there is a routine settings_load() that loads all there is no way of ensuring this is not called before a settings_load_subtree(). This means that the mod1 set routine should catch the not yet being loaded of mod2 and decide to wait. Afterwards the mod1 would need to be loaded.
If we look at the settings as it is now this would mean we call settings_load() again. When settings_load_subtree() is available we can call settings_load_subtree("mod1").
So if we compare the advantage of adding the settings_load_subtree() it is very limited.
However there is a different way of getting a behavior that  is wanted by doing it differently: we define routines settings_load_exclude("subtree") that would set a filter on the set routines to exclude "subtree" from the set/commit routines. We also define a settings_load_include("subtree") to include it. Whenever we are ready with the filter we just call settings_load(). A call to settings_load() resets the filter to include all settings.

@Laczen, in such case no one would load all: mod1 will do settings_load_subtree(mod1), mod2 settings_load_subtree(mod2) and other module will load with settings_load_subtree(othermodule). Currently BT module requires that application does settings_load() but IIRC this is in order to let application use settings also in other modules (because there is no subtree loading possible). After implementation of loading a subtree, I imagine BT stack can move to loading settings_load_subtree("bt").
The only thing I'm worried about is if the BT stack moved to loading a subtree, application will be forbidden from calling settings_load(). In such case, excluding that you propose could be useful. @jhedberg what do you think?

b. Is the settings_load_subtree() limited to the settings.name or would you allow it to go down to the entry name ?

I think it should be possible to load subtree and certain key-value pair  as well.
I can also imagine that for some reason we can have a sub-tree and a key-value with the same name:
lest consider example of key stored:
x/y
x/y/z
x/y/q
The x/y is the key for some value and also the sub-tree for two children.
so when settings_load_subtree("x/y") will be called I expect that all keys will be loaded.

@Qbicz, your proposal would mean that settings_load() is removed and all modules should load calling their own subtree. This would break the backwards compatibility. It also means the settings file needs to be processed for each module.
@nvlsianpu, doing something like this is moving into the direction of a direct read of variables in the backend (and probably means it would be best handled at the backend for efficiency). The settings module seems like a very inefficient way to achieve that.
@Qbicz, @nvlsianpu, I think there needs to be a better understanding of what needs to be added. Creating a settings_load_subtree() only solves the dependency problem if settings_load() is removed, and results in multiple processing of the backend. Taking the load_subtree even lower than the module will result in even more processing of the backend.
My proposal would be:
a. limit the loading to a subtree and don't go lower.
b. extend the settings_handler with an "exclude" property that is standard set to "false" (so include it). Modules that need dependency set the exclude to true.
c. implement a settings_load_subtree() as: set all exclude to true, set exclude for the subtree to false, call settings_load().
d. the settings_handler "exclude" property is used in both the set and commit routines.

@Qbicz, your proposal would mean that settings_load() is removed and all modules should load calling their own subtree. This would break the backwards compatibility.

Not if the settings subsystem tracks which modules have already been loaded (unless I misunderstood something with that proposal).

It also means the settings file needs to be processed for each module.

Isn't that only true for the NFFS backend? Perhaps it would make sense to split the NFFS storage so that there's one file per module?

@jhedberg, I think the bt module is a good example of what is required:
a. You don't want the settings_load() to be called before everything is setup
b. Once everything is setup you want to call settings_load_subtree()
There are two requirements here, and only b is fulfilled with a settings_load_subtree().
So what if a user would like to change the bt settings (e.g. delete) before the bt module is setup ?

After going through the code I think the problem of dependency and requirement to wait until somethings are initialized can be done with just 1 line of code: in settings_handler_lookup(char *name) only return the handler if "enabled" .
So every settings_handler gets a bool "disabled" that is standard set to false.
If a module needs to wait for initialization or another module it declares the "disabled" property to true.
If initialization is finished or a required module is loaded the "disabled" property is set to false.
A settings_load() can be called at any moment and will not call the set/commit routines if a module is not ready.
Please comment if you see things that would not work with this method

fixed by https://github.com/zephyrproject-rtos/zephyr/pull/16711 (settings_load_subtree() API)
even enhanced by https://github.com/zephyrproject-rtos/zephyr/pull/19541 + https://github.com/zephyrproject-rtos/zephyr/pull/19077 (settings_load_subtree_direct() API)


Fix some JavaDoc details

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.
n/a Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective.
n/a Provide unit tests (under <subproject>/src/test) to verify logic.
n/a 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.

Reviewing cheatsheet
Before merging the PR, comments starting with

❌ ❓must be fixed
🤔 💅 should be fixed
💭 may be fixed
🎉 celebrate happy things

Thank you for your contribution!
This PR has a valid DCO and is documentation only.

The same documentation problem exists with the Optional annotation.


use of numpy intrinsic

https://github.com/OpenSourceEconomics/soepy/blob/1c0b0d640a35b9027cbaca821fa7224e370ae75c/soepy/python/shared/shared_auxiliary.py#L16
Please refactor by using https://docs.scipy.org/doc/numpy/reference/generated/numpy.fill_diagonal.html instead.

This is done with #25.


Update dbeaver-community to 4.0.4

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Duplicate of #31801


Ungoogled Chromium 118.0.5993.70 segfaulting with --fingerprinting-canvas-measuretext-noise

OS/Platform
Arch Linux
Installed
Other (please use 'Additional context' field below to mention how exactly)
Version
118.0.5993.70
Have you tested that this is not an upstream issue or an issue with your configuration?

[ ] I have tried reproducing this issue in Chrome and it could not be reproduced there
[ ] I have tried reproducing this issue in vanilla Chromium and it could not be reproduced there
[ ] I have tried reproducing this issue in ungoogled-chromium with a new and empty profile using --user-data-dir command line argument and it could not be reproduced there

Description
Using --fingerprinting-canvas-measuretext-noise in chromium-flags.conf will produce segfault at specific URL
How to Reproduce?
On Arch, all updates as of 2023-10-14. X11, i3. With chromium-flags.conf:
--enable-features=VaapiVideoDecodeLinuxGL
--disable-features=UserAgentClientHint
--user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36"
--extension-mime-request-handling=always-prompt-for-install
--fingerprinting-canvas-image-data-noise
--fingerprinting-canvas-measuretext-noise
--fingerprinting-client-rects-noise

If you go to https://www.nginx.com/blog/http-2-rapid-reset-attack-impacting-f5-nginx-products/ a website dealing with a recent security vulnerability, you will get a segfault.
Bug could exist for longer, I just updated to 118 and happened to hit the bug with the website mentioned.
No difference with all extensions disabled.
When I remove --fingerprinting-canvas-measuretext-noise tab stays alive.
Actual behaviour
Tab shuts down with an "Ah, snap, SIGSEGV".
Expected behaviour
No segfault ;-)
Relevant log output
Oct 14 00:03:57 x kernel: chromium[176452]: segfault at 20 ip 0000562d74fcfcf4 sp 00007fffd245ff90 error 4 cpu 1 in chromium[562d6a6fd000+c109000] likely on CPU 1 (core 1, socket 0)
Oct 14 00:03:57 x kernel: Code: 8d 55 af 48 8d 4d a8 4c 8d 45 a4 4c 89 e7 4c 89 fe 49 89 d9 e8 5d 23 6a fe 66 41 81 4c 24 fc 01 00 80 3d 12 9c 1e 02 00 74 19 <49> 8b 46 20 48 8b 40 08 f2 0f 10 80 38 06 00 00 4c 89 e7 67 e8 73

Additional context
Using the package from https://download.opensuse.org/repositories/home:/ungoogled_chromium/Arch/$arch by @networkException

This is a known issue and will be fixed by #2552

@networkException You really are on top of your game! Should have also checked open pull requests and not only open issues. Thank you for taking the time to reply, very much appreciated. And thank you for maintaining this. :-)
Closing as duplicate.

Already worked on in https://github.com/ungoogled-software/ungoogled-chromium/pull/2552


How to add images?

Looking at the source, it seems like the images get matched by attachment _id that should be og_image but it's actually unclear how to achieve attachment having that sort of ID. Any pointers?

Can't remember, but that's more of a Lektor question. I think I just created them directly instead of using the Lektor admin site. It been a long time, if I remember attachments are just nested under content folders.

Can't remember, but that's more of a Lektor question. I think I just created them directly instead of using the Lektor admin site. It been a long time, if I remember attachments are just nested under content folders.

Also, this extension is just the bare minimum right now, the roughest idea of what I needed at the time. Happy to add further improvements or documentation if you're interested.

Also, this extension is just the bare minimum right now, the roughest idea of what I needed at the time. Happy to add further improvements or documentation if you're interested.

That's be nice. Or at least point to a repo that uses it. Yes, attachments are stored next to the content and I even tried to edit the related metadata with _id: og_image. I'm curious if that requires any model modifications to work because I'm out of ideas now.

That's be nice. Or at least point to a repo that uses it. Yes, attachments are stored next to the content and I even tried to edit the related metadata with _id: og_image. I'm curious if that requires any model modifications to work because I'm out of ideas now.

Well, I meant "happy to merge further improvements" :wink: The Pallets website uses this, but I don't know if there were any pages that use attachments. https://github.com/pallets/website/

Well, I meant "happy to merge further improvements" :wink: The Pallets website uses this, but I don't know if there were any pages that use attachments. https://github.com/pallets/website/

Well, I meant "happy to merge further improvements"

:rofl: yeah, that first suggestion sounded weird :)

The Pallets website uses this, but I don't know if there were any pages that use attachments. pallets/website

Perfect! Looks like the only mention of og_image is the filename of https://github.com/pallets/website/blob/1e7f06a6d97b7b4cb2443e89b3ed4fb7e02571d2/content/og_image.png which hints me that _id is probably just a filename base. Let me verify that...

Well, I meant "happy to merge further improvements"

:rofl: yeah, that first suggestion sounded weird :)

The Pallets website uses this, but I don't know if there were any pages that use attachments. pallets/website

Perfect! Looks like the only mention of og_image is the filename of https://github.com/pallets/website/blob/1e7f06a6d97b7b4cb2443e89b3ed4fb7e02571d2/content/og_image.png which hints me that _id is probably just a filename base. Let me verify that...

So symlinking the target image worked:
$ ln -sv {cli-ins-n-outs,og_image}.svg
'og_image.svg' -> 'cli-ins-n-outs.svg'

I'm not particularly happy with having a hardcoded filename, though. Need to invent a better way for using an image with its original name. I guess I could rely on a field in the post models additionally.

So symlinking the target image worked:
$ ln -sv {cli-ins-n-outs,og_image}.svg
'og_image.svg' -> 'cli-ins-n-outs.svg'

I'm not particularly happy with having a hardcoded filename, though. Need to invent a better way for using an image with its original name. I guess I could rely on a field in the post models additionally.


⚠ Bofrost.es has degraded performance

In 8a8d4c7, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1541 ms

Resolved: Bofrost.es performance has improved in bb5c98a after 1 hour, 15 minutes.


Unshim GpuOrcScan and GpuParquetScan [databricks]

This is part of #5005.  This unshims GpuOrcScan and GpuParquetScan which now each only have one implementation in the shim layer.

build


Surface POST /config errors as Kubernetes events

Is there an existing issue for this?

[X] I have searched the existing issues

Problem Statement
If Kong rejects an entity (route, service, etc) during POST /config, link the error message to the culprit Kubernetes resource by emitting a Kubernetes Event associated with it.
This is similar to #3097. #3097 created Kubernetes events for failures in the translate phase. This issue is about creating similar events for entities that were discarded by db-less Kong during a POST /config.
Proposed Solution

Expect that Kong enhances the POST /config HTTP 400 response (in the event of validation failure of some entities in the request) with objects uniquely identifying the entity that failed validation (currently, ordering of errors in the response body is not reliable)
Implement a mechanism in KIC that links the error message from the POST /config HTTP 400 response to a Kubernetes object
Emit a Kubernetes event (similarly to what #3097 did) in that event

Additional information
Out of scope: doing the same thing (emitting events for rejected resources) for the DB mode. This requires implementing the backpropagation of errors in decK.
Acceptance Criteria

[ ] When Kong (in DB-less mode) rejects an entity during POST /config, a Kubernetes Event is created on the resource that is the reason for rejection.

Closed by https://github.com/Kong/kubernetes-ingress-controller/pull/3446


Weird issues modeling a problem

First of all: sorry for the shitty quality bug report.
I'm trying to model bitcoin coin selection with lp-modeler and have this which works completely as expected:
https://gist.github.com/RHavar/d2249af67e428befb966e4fcf7d95a17/92c7bb2bac02ec2147b2a1871be45a4391536cfb
(You can run it, and it also dump the .lp file.
Anyway, with a minor change, it fails with:
signal 6:
And with another minor change, it leads to bizarre results  (giving a decimal output for a binary problem) with weird names.
It's probably easiest to see by going to the gist:
https://gist.github.com/RHavar/d2249af67e428befb966e4fcf7d95a17/a95eb5a35aede5871f1835b37bbf938700ee81e5
And the original version is the one that works, and the next two changes are the weird results

Ok, I will take a look soon. Can you give me your CBC version ? Did you try CBC with the exported lp file in command line ?

Ok, I understand the problem. For now, this lib does not support distributive property. Example: 3 * (x1 + x2) or 3 * (2 + x1) doens't work yet. They should be written rather like this 3*x1 + 3*x2 and 6 * x1 respectively.
Your program must be rewritten as this (I hope this is equivalent) :
extern crate lp_modeler;

fn main() {
    use lp_modeler::problem::{LpObjective, Problem, LpProblem};
    use lp_modeler::operations::{LpOperations};
    use lp_modeler::variables::{LpInteger, LpBinary, LpExpression, lp_sum};
    use lp_modeler::solvers::{SolverTrait, CbcSolver};
    use lp_modeler::problem::LpFileFormat;

    let input_coins: Vec<i32> = vec![150, 200, 300, 5000, 20323];
    let output_coins = vec![203];
    let fee_rate = 300;

    // constants

    let bytes_per_input = 92;
    let transaction_fixed_bytes = 12;
    let bytes_per_output = 34;

    // problem below

    let mut problem = LpProblem::new("Coin Selection", LpObjective::Minimize);

    let input_expressions: Vec<(LpBinary, LpExpression)> = input_coins.iter().enumerate().map(|(i,coin)| {
        let constraint_name = format!("contains{}", i);
        let ref constraint_variable = LpBinary::new(constraint_name.as_str());

        (constraint_variable.clone() , *coin * constraint_variable)
    }).collect();

    let input_amount_expressions = input_expressions.iter().map(|&(_,ref amount)| { amount }).collect();
    let input_count_expressions: Vec<LpExpression> = input_expressions.iter().map(|&(ref b,_)| { fee_rate*bytes_per_output*b.clone() }).collect();

    let ouput_sum = output_coins.iter().fold(0, |a,b| a + b);

    let input_count = lp_sum(&input_count_expressions);
    let transaction_bytes = input_count + fee_rate*transaction_fixed_bytes + fee_rate*bytes_per_output;
    let tx_fee_required = transaction_bytes;

    let must_be_ge_than_ouput = (lp_sum(&input_amount_expressions)).ge(ouput_sum + tx_fee_required);
    problem.add_constraints(&must_be_ge_than_ouput);

    // ...but let's try minimize it

    let input_count = lp_sum(&input_count_expressions);
    problem.add_objective_expression(&input_count);

    problem.write_lp("problem.lp");

    let solver = CbcSolver::new();

    match solver.run(&problem) {
        Ok((status, res)) => {
            println!("Status {:?}", status);
            for (name, value) in res.iter() {
                println!("value of {} = {}", name, value);
            }
        },
        Err(msg) => println!("{}", msg),
    }
}

I create a new issue for distributive property: #10


Add support for feature flags

Is your feature request related to a problem? Please describe.
To have a chance to preview new features to a limited set of users, or have the chance to remove a feature from public use, we should use feature flags.
For instance, we can release the header in preview so that we receive feedback about it. Or have two headers and show each to different users. Similar case for resource explorer and other major features that are in development.
Describe the solution you'd like
Connect the configurations to azure so that we can turn things on and off.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

this is agreed work engineering will drive. moving off PM.  Blocked on understanding cost.

@thewahome I'm in fact finding mode on this at the moment looking into what internal tooling there is which we could apply to this.


support touch/mouse gestures

Users are looking for a means of supporting mouse/touch events using the app. I've been looking into how this is potentially communicated using python-mpv, and whether this arrives in python-button-press

Looking into this as well. I think I may be close to a solution, but not sure.

Any progress on this? I'm willing and I'm ready to help. Just need a kickstart as to know where to start.

Unfortunately no progress from me as I've been busy with school and work.
I do think that this is 100% possible, it's just a matter of passing the data to mpv or another player. Shouldn't be too bad, but hoping to jump back into this soon.

Hi how about it? i can't wait to test it!


Activate lightwalletd RPCs in Docker image when RPC port is set

Motivation

The runtime-entrypoint.sh uses the RPC_PORT env var when the user
specifies the getblocktemplate-rpc feature

Some users might want to use the Docker image with lightwalletd, but without configuring getblocktemplate-rpcs. So let's work out how to do that!
Previously, the Dockerfile only activated the RPC port when it was set, but I agree that doesn't make sense with getblocktemplate-rpcs:
https://github.com/ZcashFoundation/zebra/commit/8c90f653915b1587a2fcc3f227a791a421f832ad#diff-5b838857fc3410c2438196effdbdcffae6548bdba431a4a938e76a0be62d008eL49
So we might want logic like:

If getblocktemplate-rpcs is activated, activate the default RPC port if it is unset
If there aren't any active RPC features, activate the RPC port only if it is set
Otherwise, don't activate the RPC port

This covers the 3 different use cases of mining, light wallet, and no RPCs.
Originally posted by @teor2345 in https://github.com/ZcashFoundation/zebra/pull/7162#pullrequestreview-1517161441

We could also have another env var that activates the RPC port the same way that the getblocktemplate feature does. (Just with the default ports.)


rabbitmq-manager no consumers

Thank you very much for the rabbitmq client.
We have been using this library online for more than a year, but recently in rabbitmq manager I find that the consumer disappears automatically, but my service is running normally, I also set up auto-reconnect using your library, but the consumer still doesn't show up, I don't know what the problem is, I restarted my service and I can see the Consumer appears, what is probably the problem with this?

This one comes up once in a while, but I haven't localized what's causing it

sorry , It's a problem with our server.


Cannot GET /v2/accounts/

I got this error while calling /V2/accounts/:address API on an address.

"message": "failed while searching for account: account_round err pq: cannot cast type jsonb to bigint"

What does it means? Is it a bug?

That happens when the Indexer is running on Postgres of an older version. Do you know what version of postgres the server is running? I think it's tested most on >= 11.5 might should work on >= 11.0

Thanks!


atom, atom-beta: nicer fix for #42618

Motivation for this change
https://github.com/NixOS/nixpkgs/pull/42622#issuecomment-400421680
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: atom, atom-beta
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: atom, atom-beta
Partial log (click to expand)
/nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/resources/app/apm/node_modules/ajv/scripts/prepare-tests: interpreter directive changed from "/usr/bin/env sh" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/sh"
/nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/resources/app/apm/node_modules/open/vendor/xdg-open: interpreter directive changed from "/bin/sh" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/sh"
/nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/resources/app/apm/script/postinstall.sh: interpreter directive changed from "/bin/bash" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/bash"
/nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/resources/app/atom.sh: interpreter directive changed from "/bin/bash" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/bash"
checking for references to /build in /nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0...
cannot find section .dynamic
file /nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/atom had a PT_GNU_STACK program header, converted
file /nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0/share/atom-beta/resources/app/apm/bin/node had a PT_GNU_STACK program header, converted
/nix/store/hcmsbkd1bj6y7047d8485sv00wpxiy5l-atom-1.28.0
/nix/store/ijbqaiq6m18qv5qxv2cdlaa784flrsbs-atom-beta-1.29.0-beta0

Thanks!


Missing attributes from the payload

I notice the three ecsClusterName, ecsLaunchType and ecsClusterArn disappearing. Before->After
I believe that this is not expected.
I guess it is related to https://github.com/newrelic/nri-ecs/issues/30 and the NRIA_IS_FORWARD_ONLY change.

For more info we dig during the pairing, in the docs we literally say:

All the events reported from an ECS cluster contain the attributes ecsClusterName, ecsLaunchType and ecsClusterArn.


Update Known-issues.md

@LolaJacobsen 	@waseemhashem 	Added information that the department name will be missing when application endpoint is created with SfB Server 2015 which causes BVD provisioning failure as the BVD code relies on the department name. No code check in yet to resolve this.

@marclauinger - for your review


Fix a bug for loading artifacts in getContractAt

Summary Of Changes
This PR fixes a bug for loading artifacts in getContractAt()
And:

Add relevant unit tests
Run lint for the new files
Add hardhat-deploy dependency
Unignore a artifact json for testing

Testing Notes
You can test new changes via script:
yarn mocha --recursive \"test/with-hardhat-deploy.ts\" --exit

Result:
Ganache spawn: 1.545s
### Started our own ganache instance with args: '["-d"]' in 1564ms ###
  hardhat-deploy plugin
    hardhat config with external artifacts
      getContractAt
        with the name and address
          ✔ Should return an instance of a contract (614ms)

### Stopped ganache instance ###

  1 passing (3s)

Deployment Notes

[x] New Dependencies

Closes #15

Thanks!

Thank you so much for the fast review, @wighawag 👍 🙌
Could you please release a tag, so that I can use it in the current project shortly?
Cheers! 🥂

forgot to mention, it is already in : 0.3.0-beta.11


🍒 Cherry pick PR #10908 to staging 🍒

🍒 Cherry pick https://github.com/Expensify/App/pull/10908 to staging 🍒

🚀 Cherry-picked to staging by @OSBotify in version: 1.1.98-1 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Cherry-picked to staging by https://github.com/AndrewGable in version: 1.3.28-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.


Move Default Auto-Correct Misspellings to Separate File

There has been a push to make plugins more performant for the Obsidian app. The main.js for the Linter is about 1.4MB in size. Most of the bundled size (.9MB) comes from the default misspellings. However this is really only needed if auto-correct common misspellings is enabled. I suspect that not all users are using this rule, but it is causing the bundle to be so large that it is slowing down the load time of the plugin which thus impacts the load time of the user's vault. To help speed this up, it is being moved to its own Markdown file. This Markdown file should be installed once when the rule is enabled or if it is missing. This also allows for the auto-correct file to be loaded when the layout is ready. This also greatly helps improve the loading time of the plugin.
The zip file generated as part of release should now include the default Markdown file to help manual installations work well.

I need to update where it is pointing for the default misspellings list on the settings page, but after that this should be clear to be merged.


how to install this lib?

Hi, I am using this command npm i react-native-skia-catalog --force but got this error:
'react-native-skia-catalog@*' is not in this registry.

can u help?

@fukemy We appreciate you giving this library a try. This is basically a catalog kind of thing to demonstrate the power of Skia library. It has not been published as npm package yet. We are planning to release it over npm as well and we are working on it. As of now if you want to use it, you can simply copy-paste code and do modifications according to your need.

thanks you I got it
this lib is really helpful to me


Deleting a Thing sometimes causes User to be deleted

I think I tested this with making a new account, then making one thing and deleting it.
You can't make a new user with the same name, but you can't login with that user either.
I've noticed this bug appearing with deleting bids as well(perhaps only if you delete the same bid twice?)..
Note that the deletion uses : mThing.new Deleter().delete(); as that's the only way to delete something inside of thing.

It probably isn't deleting the user, but right now any error while loading a user will tell you the user doesn't exist (probably shouldn't, but really there shouldn't be any errors while loading user information). I image somethings going on where a user still holds onto an id of a deleted game. Could either retroactively fix errors(game doesn't exist, ignore and delete id and move on) but ideally should find the root cause.

Owner wasn't updating itself online. Fixed.


Add RHEL support for Nutanix to image-builder

Description of changes:
Add RHEL8 and RHEL9 images support for Nutanix

change AWS image-builder to support RHEL8 and RHEL9 for Nutanix
add patches for K8S image-builder
revert Makefile changes for nutanix config: the changes break connection to nutanix cluster

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I'll review this today

/ok-to-test


Dealing with public access to model and data files

Script to download neccessarily data and models for public access.

make these files open in S3 (NER model, taxonomy embeddings, taxonomy formatted, hier mappers)
script to download
update readme setup bit with this

done


[FEATURE]: CR/Values Private Repository

For those customers who cannot allow the CSI to pull various container images from external registries, it would be beneficial to adopt a configmap process that does the following:
DEFAULT
apiVersion: v1
kind: ConfigMap
metadata:
name: image-registry-config
namespace: your-namespace
data:
registryAddress: "docker.io/dellemc"
Customer Registry
apiVersion: v1
kind: ConfigMap
metadata:
name: image-registry-config
namespace: your-namespace
data:
registryAddress: "my-container-repo/"
This approach would then ensure that any values or CR file is able to utilize the amended registry such that a values or CR file does not need to be manually updated as this could lead to accidental omissions and typo's etc.,
This would also allow future updates to be done where those values and CR files needn't be edited as well.

With the Operator there is a recommendation here: https://sdk.operatorframework.io/docs/best-practices/common-recommendation/#other-common-suggestions ; with plain Kubernetes resources we have the image attribute, with helm deployment it is already properly tackled per standard practices: https://github.com/dell/helm-charts/blob/main/charts/csi-isilon/values.yaml#L7


GH-40038: [Java] The offset buffer of empty vector with variable-size layout should not be empty

Rationale for this change

We encountered an error when exchanging string array from Java to Rust through Arrow C data interface. At Rust side, it complains that the buffer at position 1 (offset buffer) is null. After tracing down and some debugging, it looks like the issue is Java Arrow BaseVariableWidthVector class assigns an empty offset buffer if the array is empty (value count 0).
According to Arrow spec for variable size binary layout:

The offsets buffer contains length + 1 signed integers ...

So for an empty string array, its offset buffer should be a buffer with one element (generally it is 0).
What changes are included in this PR?

This patch replaces current empty offset buffer in variable-size layout vector classes.
Are these changes tested?

Added test cases.
Are there any user-facing changes?

No

Closes: #40038

Ah, okay, I see. I've not found the ticket. Looks like both cases (empty or single zero element) are acceptable. I will close this. Thanks for the info.

Are you using arrow2? It's possible it was never updated to fix this, but arrow-rs appears to have been fixed

Hmm. While we allow that for IPC, I think I'm wrong about C Data: we explicitly specify this is not allowable https://arrow.apache.org/docs/format/CDataInterface.html#c.ArrowArray.buffers
@pitrou presumably Java should actually be fixed here, but what do other implementations do/we appear to be missing tests for this case?

The buffer pointers MAY be null only in two situations:
for the null bitmap buffer, if ArrowArray.null_count is 0;
for any buffer, if the size in bytes of the corresponding buffer would be 0.

Isn't it allowed for second situation?

Ah, fair. It reads as a bit ambiguous to me: would the size of the buffer be 0, or is it that it should not be 0, but we allowed 0 as an exception before? I guess both interpretations lead to the buffer being 0-sized, though, and so it applies. Maybe we should spell out the case...
Regardless, it does seem we're missing an integration test then.

@pitrou presumably Java should actually be fixed here, but what do other implementations do/we appear to be missing tests for this case?

Yes, I think it should be fixed. Zero-length columns are tested in the integration test, but whether they actually miss an offsets buffer depends on how the JSON reader behaves.

Sorry, this is for the C Data integration tests

Ah ok, now I see what you mean

It seems this fix might be a bit heavy-handed if it adds a heap allocation for every empty var-width vector? AFAIU, Arrow Java uses empty vectors quite liberally.

Ah, fair. It reads as a bit ambiguous to me: would the size of the buffer be 0, or is it that it should not be 0, but we allowed 0 as an exception before? I guess both interpretations lead to the buffer being 0-sized, though, and so it applies. Maybe we should spell out the case...

I think it should mean that the buffer size is 0, the buffer pointers may be null, for the second situation.

I think it should mean that the buffer size is 0, the buffer pointers may be null, for the second situation.

Yes, but it's the buffer size, not the array size. For an empty array, the buffer size should be 4 (or 8 for a large offsets type), so the buffer can't be null.

It seems this fix might be a bit heavy-handed if it adds a heap allocation for every empty var-width vector? AFAIU, Arrow Java uses empty vectors quite liberally.

Yea, and I believe that @lidavidm meant that these empty offsets for empty var-width vector are valid. That's why I closed this and proposed a fix at ffi module at Rust instead.

Yes, but it's the buffer size, not the array size. For an empty array, the buffer size should be 4 (or 8 for a large offsets type), so the buffer can't be null.

That's what I thought at the beginning and the reason I proposed this fix.
But somehow from the context @lidavidm provided:
https://lists.apache.org/thread/w7g1zfqrjxx0bvrct0mt5zwxvdnc9nob
I think he means that it is a valid case (empty offset).

I guess that this might be something we really need to fix (at least for the C data export part for var-size arrays). Reopened it.

Yes, but it's the buffer size, not the array size. For an empty array, the buffer size should be 4 (or 8 for a large offsets type), so the buffer can't be null.

Except for empty array, I cannot image any other case that could result in empty offset buffer. So I guess that it means we should not never have null offset buffer in C data interface?
But from above context and the implementation in arrow-rs, it looks like we allow empty offset buffer for empty array?

As long as data stays internal to Arrow Java, the missing buffer is ok, but for purposes of exchanging data, a proper offsets buffers should be exported (this one can easily be statically allocated, by the way).

I see. Then it makes sense. So seems I should not change these empty offset buffers as currently did in this PR but should change C data interface in Java to properly export it for empty offset cases.

Yes, I think it would be the most reasonable change here.

cc @sunchao for another eyes on this. Thanks.

Thanks for the review @lidavidm

Thank you @lidavidm @pitrou @vibhatha @andygrove for the review


Updates ds global script & campaign run title field

What's this PR do?

Makes the campaign run title field translatable by using title module
Updates ds global script to update existing campaign run titles

How should this be manually tested?
dosomething@dev:/var/www/dev.dosomething.org/html$ drush ds-global-titles-fix campaign_run
Replacing field values for  in campaign_run node.
Done.                                                                                [ok]
dosomething@dev:/var/www/dev.dosomething.org/html$

What are the relevant tickets?
Fixes #6016
Screenshots (if appropriate)

oh and heads up @angaither @sbsmith86 ! :siren:

@sergii-tkachenko ready for re-review!

:+1:

Make sure to run ds-global enable-campaign-runs after deploying!


Target .NET Standard 2.0

@pranavkm

Revive the two API check files

Why? The projects target only .NET Standard 2.0, never .NET Framework AnyWhere.AnyHow.

Yup, shouldn't need those.