Multicall rpc error check

Description
Add bool to have an option that in multicall mode to check all responses when seeing rpc error.
Tests
TODO
Additional context
Add any other context about the problem you're solving.
Metadata

Fixes #[Link to Issue]

@jelias2 @danyalprout PTAL, will add unit tests if this approach seems to make sense

@jelias2 sorry I should've made the PR description more clear.
The motivation is that because we multicall sendRawTransaction to 2 different mempool nodes (geth + reth), we noticed sometimes one node would return an RPC error while the other return success with no error.
However at proxyd level, an RPC error is not an actual error since it's still 200. This gives the end user a bad experience as we've gotten reports saying that they received an RPC error but the TX actually went through.
Let me know if the motivation makes sense

So with this new design, what do you wish to return to the user if there is one success and one failure for the same request?
If its all failures or all success, just return the appropriate success/failure

So with this new design, what do you wish to return to the user if there is one success and one failure for the same request?
If its all failures or all success, just return the appropriate success/failure
Overall no qualms about the implementation, I would lean placing the processErrorMulticall in a separate function and clearly document the what the behavior is for the same request returned with different results

if one success and one failure it'd return the success.
Sounds good let me update it as a separate function

proxyd/v4.10.0


Accept textfile containing scanned barcodes

At my last job, I would create a text file as I scanned barcodes for retail stuff.
I made this little python script that can take an inventory CSV, and then depending on the workflow, either increment the stock of an item for each time its barcode was scanned, or assume that we have scanned all instances of that product on hand, and set the value for the sum of the occurrences of a given barcode in the textfile.
Here's what that looks like, for me:
https://github.com/jamesbiederbeck/invmgr/blob/master/receivinghelper.py
Here's somepseudocode:
create empty dict "itemcounts"
open scan file
for each row in scan file, if the barcode is not in itemcounts' keys:
itemcounts[barcode] = 1
if barcode is in itemcounts' keys:
itemcounts[barcode] +=1
Then you have a list of quantities and barcodes!
From here it should be easy to add, or update quantities as appropriate
This would go great with one particular barcode scanner on amazon, which could remember all scanned barcodes, then when you scanned a control code, it would write the full list as HID output through a dongle. This made it easy to go back to my desk, after walking around the store with the scanner. So I just opened up a text document, dumped the scanned barcodes, ran my above script, and I had a small inventory file I could merge back into the POS.
This seems like an easy enough process to generalize, and apply here.

I've thought about this and how to do it like take the scanner shopping with me and then let it just unload when I got home and have it run through it all.  I think though in order accomplish this I need to figure out how to do this threaded and I am just not there yet with my skills.


Unresponsive debugger

VSCode Version: 1.6.1 (latest)
OS Version: Windows 10 Pro

Steps to Reproduce:

Start nodejs debugger
Make the code reach a breakpoint or an exception

After waiting some seconds waiting for the debugger to respond, I get a new tab of the file which stopped the execution labeled with the absolute path to the file. In the editor the content of the file is not displayed, instead it shows: Could not retrieve content . The call stack and variables seem to be correct, I am just not able to see the file content and debug properly.
There is no error in the developer console, and I am having this error since I updated to 1.6.1

I made a fresh installation of the newest version (1.7.1) and it worked as a charm 👍 You can close the issue or investigate it if you prefer, but it's solved for me.

@epaezrubio great to hear, thanks!


Use RSVP.Promise instead of ember-cil/lib/ext/promise

Ember-CLI made this change earlier this year and using ember-cli/lib/ext/promise will result in a deprecation warning.
The change in Ember-CLI can be found here.

Hello? :)

We ended up removing this package when upgrading our Ember application. I'll close this PR for you 😄


Update Activator.cpp

std::string objectClass = ref_any_cast<std::liststd::string >(event.GetServiceReference().GetProperty(ServiceConstants::OBJECTCLASS())).front();
throw an exception：In us::ServiceListeners::ServiceChanged at ....\src\service\usServiceListeners.cpp:185 : Service listener threw an exception!
See：
class ServicePropertiesImpl
{
... ...
private:
std::vectorstd::string keys;
... ...
};
Not std::list, is std::vector.
Edit:
std::string objectClass = ref_any_cast<std::liststd::string >(event.GetServiceReference().GetProperty(ServiceConstants::OBJECTCLASS())).front();
std::list -> std::vector

Update \examples\eventlistener\Activator.cpp

Thanks for the PR. This was fixed some time ago in the development branch, which is soon going to become the 3.0 release. There are no plans to back-port this to some 2.x release though.


Poc boilerplate appsre

/hold
This is what things will look like once https://github.com/openshift/boilerplate/pull/136 and https://github.com/openshift/boilerplate/pull/137 are merged and pulled into a-a-o; and the second commit herein is stacked on top of that.

The real thing is at #547


Feature/update scripts

I've moved all the functionality from the main.go entrypoint into the individual cmd/foo binaries and updated the runner scripts and README to match the new paths.
I've also put all the runner scripts into a scripts directory to group them a bit.

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@a79cef3). Click here to learn what that means.
The diff coverage is 7.14%.

@@            Coverage Diff             @@
##             develop      #16   +/-   ##
==========================================
  Coverage           ?   29.12%
==========================================
  Files              ?       11
  Lines              ?     1229
  Branches           ?        0
==========================================
  Hits               ?      358
  Misses             ?      806
  Partials           ?       65

Impacted Files
Coverage Δ

pki/database.go
54.41% <7.14%> (ø)

Continue to review full report at Codecov.

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


Build for gnumach-headers fails on osx 14.5.0

Issue description
Build for gnumach-headers fails on osx 14.5.0
Steps to reproduce
try to build any gnumach-headers or any package depending on it
Technical details

System: Darwin 14.5.0 Darwin Kernel Version 14.5.0
Nix version: nix-env (Nix) 1.11.4
Nixpkgs version: 17.03pre94828.ecbb932

Build log (middle omitted for brevity):
installing ‘mig-20100512’
these derivations will be built:
  /nix/store/0s93k5h5y9v4a8dx5zw9vzax37xq9jbi-gnumach-headers-20120303.drv
  /nix/store/rn6xxmjcy60ckf3hnmdgrna598i7wbvd-mig-4fee6a5.drv
  /nix/store/rjkdnk16njlhjlj3qpcqvdv9gdqh0s3a-mig-20100512.drv
building path(s) ‘/nix/store/m109m9nljxna62k5jmr88spyq60nr7m1-gnumach-headers-20120303’
unpacking sources
unpacking source archive /nix/store/wpc4d1zdfxla3akx7a4m6q501xjf885s-gnumach-2a603e8
...
./doc/mach.texi:845: @itemx must follow @item
./doc/mach.texi:873: @itemx must follow @item
make[1]: *** [Makefile:6613: doc/mach.info] Error 1
make[1]: Leaving directory '/private/var/folders/_f/09m12zw96d98ynr3x82jv2580000gn/T/nix-build-gnumach-headers-20120303.drv-0/gnumach-2a603e8'
make: *** [Makefile:6883: install-data-recursive] Error 1
builder for ‘/nix/store/0s93k5h5y9v4a8dx5zw9vzax37xq9jbi-gnumach-headers-20120303.drv’ failed with exit code 2
cannot build derivation ‘/nix/store/rjkdnk16njlhjlj3qpcqvdv9gdqh0s3a-mig-20100512.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/rjkdnk16njlhjlj3qpcqvdv9gdqh0s3a-mig-20100512.drv’ failed

It looks like the build is failing because of texinfo strictness?

can you mention the macOS version

gnumach-headers no longer exists in Nixpkgs.


safe-creator fails to create safe

Describe the bug
safe-creator fails to create safe
Expected behavior
to create a safe
Additional context
safe-cli v0.3.0
nethermind rpc  v1.12.4
output.log

Could you do:
pip install -U web3
And then try again?


test5

test

/prombench master

⏱ Welcome to Prometheus Benchmarking Tool. ⏱
Compared versions: PR-32 and master
After successful deployment, the benchmarking metrics can be viewed at:

Prometheus Meta
Prombench Dashboard
Grafana Exlorer, Loki logs

Other Commands:
To stop benchmark: /prombench cancel
To restart benchmark: /prombench restart v2.12.0

/prombench cancel

Benchmark cancel is in progress.


ZEVA: Update Supplier Information Table (IDIR User)

Describe the task
Implement a new table for IDIR users under the Supplier Information section to display both historical vehicle sales data ("Previous Years Vehicle Sales") and current supply data ("Previous 3 Year Vehicles Supplied"). The new table will present Previous Years Vehicle Sales alongside Previous 3 Year Vehicles Supplied to align with the terminology change from "Sales" to "Supplied."
Purpose
This update will allow IDIR users to view both historical sales and current supply data side by side, with an explanatory tooltip to clarify the data's context. The addition of Previous Years Vehicle Sales provides users with access to the full historical record for compliance purposes.
Acceptance Criteria

[x] Add a table displaying “Previous Years Vehicle Sales” below or alongside the existing "Previous 3 Year Vehicles Supplied" table.
[x] Add a tooltip to provide context: Supplier’s total vehicle sales for each reportable model year’s compliance period (October 1st – September 30th). Read-only historical record.
[x] Implement "See More/See Less" functionality to improve user navigation.
[x] Verify that the table, tooltip, and See More/See Less functionality are displayed and functioning correctly according to the mock-up.

Additional context
Mock-up for the updated table and tooltip:
Supplier Information Table Mock-up: Prototype Link
How to Navigate to the Supplier Information Tab"

Go to the Vehicle Supplier Tab.
Click on the Supplier you wish to view.
You will land on the Supplier Info Tab, where the table with the new "Previous Years Vehicle Sales" and "Previous 3
Year Vehicles Supplied" will be located.

@emi-hi, please see below. Let me know if you need me to explain in more detail.
Sales:

Reflects vehicle sales (LDV) for MY 2023 - the last year to be reflected in the sales table.
This information is automatically entered once the MY 2023 report is assessed by the Director.

Supplied:

Reflects ZEVs supplied from MY 2024 onward (starting October 1, 2024).
MY 2024 supplied numbers will automatically populate in the Supplied table once the report is assessed by the Director.
Suppliers will provide historical "supplied" ZEV numbers for previous years, which the business area will manually enter to determine the
Vehicle Supplier Class.

@emi-hi Is it possible to make the tooltip completely black? It's currently a bit transparent, and I can see the text behind it.  Everything else is great.


Minor fixes

Some minor refactoring, renaming, and clean up work done in this PR - no new feature was implemented in this work. Highlights are as follows:

Namespace changed from rigid_pendulum -> gen_alpha_solver
Subdirectory name changed from rigid_pendulum_poc -> gen_alpha_solver_poc
Aliases for Kokkos data structures, namely HostView1D and HostView2D introduced in individual header files rather than in a single location
Updating const and Enum names from ALL CAPS -> PascalCase as recommended in Google style guide
Add parameter names to function declarations in header files where the parameters are not clear from the context, particularly for matrices and vectors

I'm curious why you want to define HostView1D and HostView2D in 4 or 5 different places, instead of just 1 place? In what circumstance would you want them to have different definitions in some places?

These aliases can be different for different places (obviously not here), and probably easier to find their definition in the header file rather than trying to hunt for it in a single location. What seems to be the standard practice?

Also, I thought we discussed waiting on major file/folder moves until after David makes the GPU changes? Conflicts are harder to resolve in files that have been moved or renamed.

I do remember that conversation and we can sit on merging this PR until after the GPU related work gets merged. Does this sound reasonable?

If the aliases might have different definitions in different headers, then I would give them different names to avoid confusion. If they need to be passed from one scope to another, obviously they need to be the same type in both scopes. If they are the same, and need to be compatible for passing back and forth, then there should only be one definition since duplication causes higher maintenance effort and is error prone.
Yes let's hold off on merging until we see the extent of David's GPU changes. Great, thanks.

If the aliases might have different definitions in different headers, then I would give them different names to avoid confusion. If they need to be passed from one scope to another, obviously they need to be the same type in both scopes. If they are the same, and need to be compatible for passing back and forth, then there should only be one definition since duplication causes higher maintenance effort and is error prone.

@alanw0  What do you think about the following design?  We define the aliases in a separate source file openturbine_types.h in the openturbine::util namespace as follows.
#pragma once

#include <Kokkos_Core.hpp>

namespace openturbine::util {

// Used to store a 1D Kokkos View of doubles on the host
using HostView1D = Kokkos::View<double*, Kokkos::HostSpace>;

// Used to store a 2D Kokkos View of doubles on the host
using HostView2D = Kokkos::View<double**, Kokkos::HostSpace>;

}  // namespace openturbine::util

When we need to use the above data structures, we bring that into the current scope.
using openturbine::util::HostView1D;
using openturbine::util::HostView2D;

@alanw0 What do you think about the following design? We define the aliases in a separate source file openturbine_types.h in the openturbine::util namespace as follows.
When we need to use the above data structures, we bring them into the current scope.

Yes that seems good.

I think these changes look ok, but it's hard to be certain without running them in a cuda build. Have you been able to do a cuda build and run tests?

I have not done the cuda build - I'll make sure things look good there before merging this. I wonder if there's a good way to automate this via the CI pipeline.

test HeavyTopProblemFromBrulsAndCardona2010PaperTest.CalculateTangentDampingMatrix aborts on CUDA builds with error:
Kokkos::View ERROR: attempt to access inaccessible memory space (label="nonzero_block").

test HeavyTopProblemFromBrulsAndCardona2010PaperTest.CalculateTangentDampingMatrix aborts on CUDA builds with error:
Kokkos::View ERROR: attempt to access inaccessible memory space (label="nonzero_block").

@ddement  Thanks for pointing out the above. I currently don't have access to the NREL supercomputer (it should be resolved in a few days) to go through the CUDA build myself, could you help me debug this issue? Specifically, I looked into the changes made to the HeavyTopLinearizationParameters::TangentDampingMatrix and reverted a change with the latest commit. Please try to build and run the unit tests on CUDA.

@faisal-bhuiyan I fixed the test failures.  There were a couple of places where you accidentally reverted DefaultExecutionSpace to DefaultHostExecutionSpace.  Everything should be good to push

@faisal-bhuiyan I fixed the test failures. There were a couple of places where you accidentally reverted DefaultExecutionSpace to DefaultHostExecutionSpace. Everything should be good to push

Thanks for taking a look at this and fixing it, @ddement.


Some subtyping issue resulting in verification failure

A.fst:
module A

module HST = FStar.HyperStack.ST

assume val foo (r:HST.erid) :HST.ST unit (fun _ -> True) (fun _ _ _ -> True)

B.fst:
module B

open A

module HS = FStar.HyperStack

let bar () = foo HS.root

fstar.exe B.fst --use_extracted_interfaces true fails.
On some debugging, I found that smt is trying to prove forall (r:rid). is_eternal_region r, which is clearly not provable. Moving refinement to requires works. So it could be a subtyping issue, will need to see more. And extracted_interfaces flag is also required for the bug to manifest.

Smaller:
module Test

#set-options "--max_fuel 0 --max_ifuel 0"

module HS = FStar.HyperStack
module HST = FStar.HyperStack.ST

assume val foo (r:HST.erid) :HST.Unsafe unit (fun _ -> True) (fun _ _ _ -> True)

let bar () = foo HS.root

For this example we were generating an ill-typed VC. And so, it succeeded without extracted interfaces, but failed with, since we were typechecking the VC in the extracted interface.
At a high-level, this is the issue:
Suppose we have c:t, where c is some constant and t is its annotated type. At some point, we try to coerce it to x:t{phi}. This generates a guard phi c. When we add this guard to the wp of c (Tot t), we get a wp of the form fun p -> phi c /\ forall (x:t). p x. The forall part of the wp is a problem. Consider a continuation that relies on type of c being x:t{phi}. When this continuation is inlined in this wp, under forall, it only gets to assume x:t and not x:t{phi}, which loses information and fails to typecheck.
The current fix is to insert a return so that the wp is: phi c /\ p c.


Guard Duty malware protection error - Go in v6.42.0 of the AWS provider

Describe what happened
See link - wasn't sure if bug was best filed under the bridge repo or this one: https://github.com/pulumi/pulumi-terraform-bridge/issues/2150
Attempted to implement the new S3 malware protection that was ported from Terraform. Received this error:
Previewing update (local-casey):
  pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:local-casey::aws-platform::pulumi:pulumi:Stack::aws-platform-local-casey]
AWS Region: us-west-2
AWS Account: 374xxxxxxxxxxxx
    + hr:aws:guardduty:MalwareProtectionPlan: (create)
        [urn=urn:pulumi:local-casey::aws-platform::hr:aws:guardduty:MalwareProtectionPlan::local-intake]
error: Failed to prepare a resource encoder: cannot derive an encoder for resource "aws_guardduty_malware_protection_plan": Cannot derive an encoder for property "actions": issue deriving an object encoder: Cannot derive an encoder for property "tagging": when deriving converters for an element of a collection: LookupSchemaPath failed at walk.NewSchemaPath(): walk.ElementStep{} is not applicable
The structure/definition of Actions/Taggings has a problem - I cannot determine the proper input structure. Example code from the Pulumi docs fails as well. Tried the sample constructor code as there are no direct code examples yet - https://www.pulumi.com/registry/packages/aws/api-docs/guardduty/malwareprotectionplan/#constructor-example

Sample program
Code snippet:
c.MalwareProtectionPlan, err = guardduty.NewMalwareProtectionPlan(
		ctx,
		fullName+"/malwarePlan",
		&guardduty.MalwareProtectionPlanArgs{
			Actions: guardduty.MalwareProtectionPlanActionArray{
				&guardduty.MalwareProtectionPlanActionArgs{
					Taggings: pulumi.Array{
						pulumi.Any("status: ENABLED"),
					},
				},
			},
			ProtectedResource: &guardduty.MalwareProtectionPlanProtectedResourceArgs{
				S3Bucket: &guardduty.MalwareProtectionPlanProtectedResourceS3BucketArgs{
					BucketName:     pulumi.String(args.Bucket),
					ObjectPrefixes: pulumi.ToStringArray(args.ObjectPrefixes),
				},
			},
			Role: pulumi.String(role.Arn),
			Tags: pulumi.ToStringMap(args.Tags),
		},
		pulumi.Parent(c),
	)
	if err != nil {
		return nil, err
	}
	return c, nil

Log output
Previewing update (local-casey):
  pulumi:pulumi:Stack: (same)
    [urn=urn:pulumi:local-casey::aws-platform::pulumi:pulumi:Stack::aws-platform-local-casey]
AWS Region: us-west-2
AWS Account: 374xxxxxxxxxxxx
    + hr:aws:guardduty:MalwareProtectionPlan: (create)
        [urn=urn:pulumi:local-casey::aws-platform::hr:aws:guardduty:MalwareProtectionPlan::local-intake]
error: Failed to prepare a resource encoder: cannot derive an encoder for resource "aws_guardduty_malware_protection_plan": Cannot derive an encoder for property "actions": issue deriving an object encoder: Cannot derive an encoder for property "tagging": when deriving converters for an element of a collection: LookupSchemaPath failed at walk.NewSchemaPath(): walk.ElementStep{} is not applicable

Affected Resource(s)
guardduty.NewMalwareProtectionPlan
Output of pulumi about
pulumi about
CLI
Version      3.121.0
Go Version   go1.22.4
Go Compiler  gc

Plugins
KIND      NAME        VERSION
resource  aws         6.42.0
language  go          unknown
resource  kubernetes  4.13.1
resource  random      4.16.3
resource  tls         4.11.1

Host
OS       darwin
Version  13.6.7
Arch     x86_64

This project is written in go: executable='/usr/local/go/bin/go' version='go version go1.22.3 darwin/amd64'

Dependencies:
NAME                                        VERSION
github.com/go-viper/mapstructure/v2         v2.0.0
github.com/knadh/koanf                      v1.5.0
github.com/knadh/koanf/v2                   v2.1.1
github.com/pulumi/pulumi-aws/sdk/v6         v6.42.0
github.com/pulumi/pulumi-kubernetes/sdk/v4  v4.13.1
github.com/pulumi/pulumi/sdk/v3             v3.121.0
github.com/stretchr/testify                 v1.9.0
golang.org/x/exp                            v0.0.0-20240613232115-7f521ea00fb8
github.com/pulumi/pulumi-random/sdk/v4      v4.16.3
github.com/pulumi/pulumi-tls/sdk/v4         v4.11.1
github.com/valyala/fastjson                 v1.6.4

Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Sorry you're running into this @casey-robertson-paypal! This is caused by https://github.com/pulumi/pulumi-terraform-bridge/issues/2020. ListTypable and SetTypable elem values for custom types are not properly handled right now.
Good news is that https://github.com/pulumi/pulumi-terraform-bridge/issues/2020 was fixed end of last week and once we roll it out this bug should be fixed too.


Owned NFT not visible in the wallet.

This person: 14gKAiYVcuBkjE3nekRCXz4Brr3WhudumncPZbMpb8T26SA3
Owns an NFT he minted as POAP.  He is the owner. This NFT: https://kodadot.xyz/ahp/gallery/89-1
Minted on chain: AHP

But when you open his profile, you dont see the NFt between collected. Its not showing - looks like its not linked to his profile even though he owns it. Check his AHP NFTs: its not there.
Reward
In case you wanna reward finder, here is his payment link:
https://kodadot.xyz/ahp/transfer?target=14gKAiYVcuBkjE3nekRCXz4Brr3WhudumncPZbMpb8T26SA3&amount=20

Pain to debug
query MyQuery {
  collectionEntityById(id: "89") {
    id
    nfts(limit: 10) {
      id
      currentOwner
      burned
    }
    nftCount
  }
  tokenEntities(where: {collection: {id_in: "89", nfts_some: {currentOwner_eq: "14gKAiYVcuBkjE3nekRCXz4Brr3WhudumncPZbMpb8T26SA3"}}}) {
    id
    name
    nfts {
      currentOwner
    }
  }
}

IMO this is more of indexer issue since we don't have owner in tokenEntity


Add popup menu that like City Guides by National Geographic

This is a popup menu that like City Guides by National Geographic, the document have updated, please reference the section Circle popup menu with NAPinAnnotation.
Thanks!

Same comment as before. To get it merged it would need tests, but you can also add this to the demo project instead of extending the library proper. It looks like you attempted the latter, but do make sure that you're not adding anything to the library itself in that case.

Wow - this is quite a feature - thanks @troyz
I'm with @dblock - I'd love to see this added to the example application instead of directly into NAMapKit itself, thanks for contributing back 👍

Also, another option would be to make another pod that depends on namapkit, like namapkit-popupmenu. Something we could link from our README and that would be a good extension example! Then you can do whatever you want there @troyz :)

Ok, i will add this feature to the example application. @dblock @orta :)


Mobileclient v2.1 - Situations

New API-Url
https://mclients.googleapis.com/sj/v2.1/
Situations content can be retrieved via POST (for body see proof-of-concept implementation):
sj_url + listennow/situations?alt=json&hl=en_US&tier=aa
IIRC all three params are required
Original response (stripped-down) -> listennow/situations
{
    "primaryHeader": "It's Friday evening",
    "situations": [
        {
            "description": "Awaken your inner cool...",
            "stations": [
                {
                    "kind": "sj#radioStation",
                    "name": "The Chase Sequence",
                    "stationSeeds": [
                        {
                            "kind": "sj#radioSeed",
                            "curatedStationId": "Lbh2gdnwc3jgypojtd2nar5ehuu",
                            "seedType": "9"
                        }
                    ],
                    "seed": {
                        "kind": "sj#radioSeed",
                        "curatedStationId": "Lbh2gdnwc3jgypojtd2nar5ehuu",
                        "seedType": "9"
                    },
                    "skipEventHistory": [],
                    "compositeArtRefs": [
                        {
                            "url": "http://lh3.googleusercontent.com/...",
                            "kind": "sj#imageRef",
                            "aspectRatio": "1"
                        }
                    ],
                    "imageUrls": [
                        {
                            "url": "http://lh5.ggpht.com/...",
                            "kind": "sj#imageRef",
                            "aspectRatio": "1",
                            "autogen": false
                        }
                    ],
                    "description": "Escape reality by the skin..."
                },
            ],
            "imageUrl": "http://lh3.googleusercontent.com/...",
            "title": "Shaking not stirring",
            "wideImageUrl": "http://lh3.googleusercontent.com/...",
            "id": "Nk7cvai7biiz7ayx7wdniirixfi"
        },
        {
            "description": "Here are all the the latest hits...",
            "title": "Brand New Music",
            "situations": [
                {
                    "description": "Select a List",
                    "stations": [
                        {
                            "kind": "sj#radioStation",
                            "name": "Today\u2019s Club Tracks",
                            "stationSeeds": [
                                {
                                    "kind": "sj#radioSeed",
                                    "curatedStationId": "Lsaoeuljaxajct53pcgmrndi4da",
                                    "seedType": "9"
                                }
                            ],
                            "seed": {
                                "kind": "sj#radioSeed",
                                "curatedStationId": "Lsaoeuljaxajct53pcgmrndi4da",
                                "seedType": "9"
                            },
                            "skipEventHistory": [],
                            "compositeArtRefs": [
                                {
                                    "url": "http://lh3.googleusercontent.com/...",
                                    "kind": "sj#imageRef",
                                    "aspectRatio": "1"
                                }
                            ],
                            "imageUrls": [
                                {
                                    "url": "http://lh3.googleusercontent.com/...",
                                    "kind": "sj#imageRef",
                                    "aspectRatio": "1",
                                    "autogen": false
                                },
                            ],
                            "description": "Listen to the latest hits from..."
                        }
                    ],
                    "imageUrl": "http://lh3.googleusercontent.com/...",
                    "title": "Cool New Music",
                    "wideImageUrl": "http://lh3.googleusercontent.com/...",
                    "id": "Nkn5n46fz6po2r76j2urdvtnjoi"
                },
            ],
            "imageUrl": "http://lh3.googleusercontent.com/...",
            "wideImageUrl": "http://lh3.googleusercontent.com/...",
            "id": "Nkfneot2mdyylkb34to2caqeqba"
        },
    ],
    "data": {
        "items": []
    }
}

Proof-of-Concept implementation
#protocol/mobileclient.py
class GetSituations(McListCall):
    static_method = 'POST'
    static_url = sj_url + 'listennow/situations'
    static_params = {'alt': 'json', 'tier': 'aa'}

    @staticmethod
    def dynamic_params(locale_code):
        return {
            'hl': locale_code,
        }

    @classmethod
    def dynamic_data(cls, locale_code):
        print(type(cls))
        print(cls)

        return json.dumps({
            'requestSignals': {
                # Not sure whether to make this one a function argument or not
                'timeZoneOffsetSecs': calendar.timegm(time.localtime()) - calendar.timegm(time.gmtime())
            }
        })

#clients/mobileclient.py
...
def get_situations(self, locale_code):
    return self._make_call(mobileclient.GetSituations, locale_code)
...

Nice; thanks.

@Tadly: Not directly related to this issue, but do you have an Android device that you're using to harvest the API calls? The webclient has a "radio/createstation" that works in a much more direct fashion than the BatchMutateTracks. Any idea if there's a matching endpoint in the mobileclient that isn't implemented here?

Relevance to the situations issue: Following through with generating the station at the end of the situations flow.

I'm not sure what that's supposed to mean in this or any other context.

The webclient has a "radio/createstation" that works in a much more direct fashion than the BatchMutateTracks

Mobileclient.create_station uses BatchMutateStations, not BatchMutateTracks, which uses the radio/editstation endpoint.

@thebigmunch my mistake on the BatchMutateTracks vs BatchMutateStations. That is what I meant.
There is significantly more setup involved in making the radio/editstation call versus calling radio/createstation with a seedId and seedType. I would much rather use the appropriate api endpoint if one exists rather than a roundabout mechanism for creating a station.
I don't have an Android device anymore to do the footwork on this one. The webclient does have a radio/createstation endpoint, but I'm not sure what the JSON structure would be. I've only successfully made jsarray requests.

Then you should have opened a new issue asking/requesting that as your comments are entirely unrelated to this one.

Opening a new issue wasn't appropriate either as the question was directed at the author of this issue, not at the project in general. Hence the direct callout to the author in my post. I edited in the loose relevance after submission because I agree that this isn't the right place... but it's also not entirely the wrong place.

No worries; not like there was much discussion going on here anyway :grin:

8 hours late to the party...
@madkat TBH I "stole" most of that stuff from over here -> https://github.com/vially/googlemusic-xbmc and put together "pretty" issues for simon to resolve :D
So I can't really help as you probably know more about the API as I do ;)

@Tadly Thanks for the response! Looks like I'll just have to find a cheap Android phone and figure it out. :D

@madkat not sure how you'd go about logging the requests.
I used a very bad app (wouldn't recommend)
If you'd proxy all request with your pc, you could just use an emulator.
There are some included within the Android Dev SDK that come with Google Play Services.
On linux the emulator used is Qemu and uses NAT for networking IIRC so that should be fairly easy to log (I think. I'm not an network export by any means :D)
If you'r on windows, no Idea and good luck ;D

I did some testing of listennow/situations. To make use of the situation as a station, modify create_station to accept a curated_station_id. Here's a modification that should work:
    def create_station(self, name,
                       track_id=None, artist_id=None, album_id=None,
                       genre_id=None, playlist_token=None, curated_station_id=None):
        """Creates a radio station and returns its id.
        :param name: the name of the station to create
        :param \*_id: the id of an item to seed the station from.
        :param playlist_token: The shareToken of a playlist to seed the station from.
        Exactly one of the id/token params must be provided, or ValueError
        will be raised.
        """
        # TODO could expose include_tracks

        seed = {}
        if track_id is not None:
            if track_id[0] == 'T':
                seed['trackId'] = track_id
                seed['seedType'] = 2
            else:
                seed['trackLockerId'] = track_id
                seed['seedType'] = 1

        if artist_id is not None:
            seed['artistId'] = artist_id
            seed['seedType'] = 3
        if album_id is not None:
            seed['albumId'] = album_id
            seed['seedType'] = 4
        if genre_id is not None:
            seed['genreId'] = genre_id
            seed['seedType'] = 5
        if playlist_token is not None:
            seed['playlistShareToken'] = playlist_token
            seed['seedType'] = 8
        if curated_station_id is not None:
            seed['curatedStationId'] = curated_station_id
            seed['seedType'] = 9

        if len(seed) > 2:
            raise ValueError('exactly one {track,artist,album,genre}_id must be provided')

        mutate_call = mobileclient.BatchMutateStations
        add_mutation = mutate_call.build_add(name, seed, include_tracks=False, num_tracks=0)
        res = self._make_call(mutate_call, [add_mutation])

        return res['mutate_response'][0]['id']

I did this yesterday when I implemented listennow/situations locally. This, again, is a separate issue.

@thebigmunch Now you are being completely ridiculous. There is no question that this should be in this thread. My last comment was the rest of the implementation for THIS ISSUE.
As an aside: 65 open issues is not a large issue tracker. This is a small open source project that could benefit from a few more contributors. It looks to me like you're actively trying to dissuade people from being a part of the community.

@madkat, thanks for the contribution, and I'm sorry your first interaction with this project has been frustrating. I'm sure thebigmunch is just trying to keep the backlog tidy, not antagonize you; please give the benefit of the doubt.
@thebigmunch, I worry your candor can be mistaken for aggression, which is why madkat is feeling like their contributions are being rebuked. While I absolutely appreciate all your help, please help make this a welcoming place for new contributors.
To get us synced up: I think what @thebigmunch meant was that this issue was to support an api call to retrieve situations (post listennow/situations), rather than to seed stations with them (post radio/editstation). And that both of these are implemented locally, now, correct?

I speak in quite a matter-of-fact way, indeed. I understand, with the way far too many people behave, that people will jump to a negative conclusion. But there's little I can (or will) do about that besides just restraining from speaking altogether. Both other parties in this Issue have made mention that these comments indeed belong in separate issues as they weren't related to this issue. It's something that happens and is corrected on thousands (probably millions) of issue trackers and forums daily as it's expected, if not spelled out explicitly.
And, as @simon-weber pointed out, the last comment was indeed about seeding a station and not the issue topic of retrieving Listen Now situations. I was not being ridiculous at all; it's a separate topic to the one in this issue. Moreover, it is its own fully-formed topic that shouldn't just be in its own issue, it deserves one.
To illustrate why it might be more important than you might believe, imagine you're browsing issues for seeding a station in that way or just station-related issues if you didn't know exactly what you're looking for. Your comment is in an issue unrelated to creating stations. They can't find it through simply browsing the issue tracker.
As for the actual issue topic, I forgot to link #444 in here as the blocker for proper implementation previously. I have that implemented, as well as this, and along the way I played with some things and realized the same as @madkat about curated station seeding. I threw it in quick but ran out of time before testing last night, and it's not committed. I certainly don't mind @madkat or someone else opening a PR for it. I was simply stating that I had done the same, and likely the other issue made that play in a different tone. Less work is never a bad thing : )


feat: Removing babel chunkname renaming

This plugin will no longer rename chunks to replace slashes with dashes
BREAKING CHANGE: The plugin will no longer rename chunks to dashes

Really wanted to do this, huh :).
I saw you removed rename for nested chunks as well - did you give dynamic imports inside dynamic imported chunks a test?

So this should work fine with nested imports. It would just create more folders.
Only issue is if you try to use Universal as a string. Because folder chunks (importing a folder with a variable) causes chunknames to include folder-chunk.
What I’ll do shortly is try and update flush chunks so it attempts to locate both slashed and dashed chunks.
That’s where the real issue is. The client is fully managed by webpack.
As I work with webpack more and more, I’m looking at solutions to consolidate chunk resolution into the build itself, just for servers.

@ScriptedAlchemy it doesn't look like flush chunks has that behaviour and the only option is to indicate a config ignoreBabelRename with every universal call. Is there a better solution?

Why is this change an improvement? Couldnt this be configured as an option instead, similar to  ignoreBabelRename: true,? Now i need to add this ignoreBabelRename: true, to all universal calls. And isnt a flatten pattern better? https://github.com/faceyspacey/babel-plugin-universal-import/issues/45


os/mac/diagnostic: fix OpenCore check

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

Fixes #18763.

Interesting that CI runner triggers it. I wonder if it is actually set up with OpenCore.

Yea, I only checked GitHub hosted runners which do not seem to use OpenCore.
If that's the case then maybe we can allow it in CI?

Can you add opencore_version to message? Curious what it is outputting.

Warning: You have installed macOS using OpenCore Legacy Patcher, version 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:opencore-version	REL-083-2022-08-01

If that's the case then maybe we can allow it in CI?

Yeh, agreed to allow in CI unless it's failing specifically in our CI.

Looks good once CI check removed.

@MikeMcQuaid Not sure if I followed. I added the CI check (ENV["CI"]) to allow CI to pass because our self-hosted runners do seem to be on OpenCore. Would you like it to be done differently?

Not sure if I followed. I added the CI check (ENV["CI"]) to allow CI to pass because our self-hosted runners do seem to be on OpenCore. Would you like it to be done differently?

Ah, no worries, ignore me then. 🚢 it!

Interesting that CI runner triggers it. I wonder if it is actually set up with OpenCore.

OpenCore is a bootloader whereas OCLP is what patches old hardware to run newer OS.
We use a custom bootloader because we run multiple instances of macOS on the same hardware.
So the unsupported configuration is more OCLP rather than OpenCore as that is what makes old CPUs run x86_64 binaries that might not necessarily be built for said old CPUs (i.e. pre-Westmere). Given Eric's findings above, the reliable check might be to check if both OCLP-Version and opencore-version is set.

OpenCore is a bootloader whereas OCLP is what patches old hardware to run newer OS. We use a custom bootloader in CI because we run multiple instances of macOS under a k8s environment on native hardware (so the host layer is technically Linux). We do not use OCLP.
So the unsupported configuration is more OCLP rather than OpenCore as that is what makes old CPUs run on macOS versions where our x86_64 binaries might not necessarily be built for said old CPUs (i.e. pre-Westmere). Given Eric's findings above, the reliable check might be to check if both OCLP-Version and opencore-version is set.

Thanks for the explanation! Adding an additional check for OCLP in #18766. I suppose with that we won't need to skip the check in CI.


CRLF formatting fix

Associated fixes: https://github.com/BetterThanTomorrow/calva-fmt/pull/9

Okay, fixed the tests. Basically I needed to remember to pass :eol "\n" into the appropriate calls.

Removed the shadow-cljs :exports that I migrated from the old branch.

Closing this for now since you have released a decent fix. 😀


Resolve the 404 that shows when you click 'download' on the CPI time series visualisation

Not including it in current sprint, as we have a lot on, but to pick up in sprint 8.
All (I believe, but will test) other 'download' links automatically provides a download of the data. In this instance, we currently end up with a 404: https://data.youthfuturesfoundation.org/dashboard/cpi/data/cpi/cpi_linechart.csv

@ODILMichelle i don't know how to fix this sorry. maybe @gilesdring or @slowe could help instead.

Unassigned you. Let's pick it up in sprint 8 as there are one or two other instances of this across the site and it's not super urgent.

@luke-strange I don't know how to fix it either as I don't have enough knowledge/understanding of Lume.

@slowe looks like a @gilesdring problem then ;)

CPI Time series graph is not using data in the top level _data/sources directory which is required for the download functionality to work. Pipeline / vis definition need to change to refer to data from there, at which point it should work.


announce HHVM 4.104

Thanks. Still waiting for the builds to finish, will commit this as soon as those are done.


Form.Autosuggest Accessibility - Label Association

One of the more complex issues involves how labels are associated with the component's <input> element. Unless a floatingLabel attribute is provided, there will be no label created for the <input>. This means that developers will need to implicitly associate a label by wrapping the <Form.Autosuggest> in <Form.Label>. See below:
<Form.Label>
    <Form.Autosuggest>
	<Form.AutosuggestOption />
        <Form.AutosuggestOption />
        {...more options}
    </Form.Autosuggest>
</Form.Label>

Unfortunately, while this does solve the problem of associating a label with the <input>, this presents another issue where the dropdown icon button (dropdown arrow) doesn’t behave as expected. It appears that the wrapping done by the <Form.Label> is interfering with the way the icon button receives its onClick event. The icon button will expand the list, but will not close it. This only occurs when clicking exactly on the nested <svg> element.
https://github.com/openedx/paragon/assets/92897870/054c7a49-1032-4775-8ee4-c338e3f73042
A possible fix for this would be to remove the <Form.Group> that is provided inside of the <Form.Autosuggest> and require developers to always wrap this component in a <Form.Group> when implementing, which also provides the ability to add in a custom label.
<Form.Group>
     <Form.Label
          <h3> Select an option from below </h3>
     </Form.Label>
     <Form.Autosuggest>
          <Form.AutosuggestOption />
          <Form.AutosuggestOption />
          {...more options}
     </Form.Autosuggest>
<Form.Group>

Alternatively, effort could be put towards figuring out why the button isn’t behaving correctly when the component is wrapped in a <Form.Label>. Perhaps there is some propagation getting in the way that we can disable?

Might be worth bringing this up in the next Paragon WG meeting

Topic for Paragon WG, ask:

If we should put time into figuring out why the button isn't behaving correctly or
if we should move forward with the proposed fix

Wrapping a label around a control works (well, with the exception of the bugs you identified) but it isn't Best Practice. Programmatic association (for= attribute on a , pointing to a unique ID on the control, or aria-labelledby on the control, pointing to a unique ID on the labeling element, or aria-label) is preferred.  More specifically, if the label isn't "programmatically determined", it'll throw a warning or error in automated testing.
My preferred solution is to add a new labeling option (as a new default) for Paragon controls, to get the Form.label in the preferred format (now that we're trying to deprecate floating labels).  An Open edX community partner requested this option be added some time ago as well.

Based on the examples we have on the docs site for labels, and the fact that we're moving to deprecate floating labels, I'm leaning towards

A possible fix for this would be to remove the <Form.Group> that is provided inside of the <Form.Autosuggest> and require developers to always wrap this component in a <Form.Group> when implementing, which also provides the ability to add in a custom label.

There are, however, components that don't follow the patterns in those examples (such as TextFilter), so it's likely worth investigating other options/gathering other opinions too.

verify this works and properly associates the label with the input textbox
<Form.Group>
     <Form.Label
          <h3> Select an option from below </h3>
     </Form.Label>
     <Form.Autosuggest>
          <Form.AutosuggestOption />
          <Form.AutosuggestOption />
          {...more options}
     </Form.Autosuggest>
<Form.Group>

if not find a way to fix it


typescript compilation in pre-commit

the build_frontend action will fail if we forgot to compile our .ts files (except for the case where there are new .js files that have not previously been added)


Anko Layout on CoordinatorLayout has a weird AppBarLayout.ScrollingViewBehavior

I search the anko layout sample for coordinatorlayout looks like they are perfectly works. But when I tried to implemented it, it has a strange behavior. I used anko version 0.10.2
class MainActivityUI(
    val adapter: RecyclerView.Adapter<out RecyclerView.ViewHolder>) : AnkoComponent<MainActivity> {
  override fun createView(ui: AnkoContext<MainActivity>): View = with(ui) {
    coordinatorLayout {
      fitsSystemWindows = true
      themedAppBarLayout(R.style.AppTheme_AppBarOverlay) {
        toolbar {
          id = Ids.toolbar
          setTitleTextColor(WHITE)
          popupTheme = R.style.AppTheme_PopupOverlay
          lparams(width = matchParent)
        }
      }.lparams(width = matchParent) {
//        behavior = AppBarLayout.ScrollingViewBehavior()
      }
      recyclerView {
        id = Ids.mainList
        layoutManager = LinearLayoutManager(ctx)
        adapter =<EMAIL_ADDRESS>      }.lparams(width = matchParent, height = matchParent) {
        behavior = AppBarLayout.ScrollingViewBehavior()
      }
      floatingActionButton {
        id = Ids.faButton
        imageResource = R.drawable.ic_add_circle_white
      }.lparams {
        gravity = Gravity.RIGHT or Gravity.BOTTOM
        margin = dip(16)
      }
    }
  }
}

With this code, the whole view (including toolbar) have the scrolling behavior. If I un-comment that appbar's lparam behavior, the toolbar position fixed and not scrolled, but the recyclerview height is overlapping at the bottom side. Is there something wrong with this or I do a silly mistake? Thanks

I'm not sure what are you trying to achieve, but i think you need to set scrollFlags for toolbar

I tried to make a trivial layout like the one when creating a new basic activity (from the android studio menu). A layout that has 1 toolbar, 1 fab, and 1 content (in my case a recyclerview) inside a coordinatorlayout. Actually a very basic layout without a collapsing toolbar

Some examples for you #1 #2 #3

@4u7 Thank you. So in anko I have to define the scrollFlag on my toolbar whereas on xml layout I don't have to add scrollFlag to the toolbar to create a normal toolbar (non-collapsing)?
Both of these producing the same layout. The different is on the scrollfag defined on my anko to stop toolbar for scrolling up
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent""
    >
  <android.support.design.widget.AppBarLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      >
    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="56dp"
        />
  </android.support.design.widget.AppBarLayout>
  <android.support.design.widget.FloatingActionButton
      android:id="@+id/addFAB"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_gravity="bottom|right"
      android:layout_margin="16dp"
      android:src="@drawable/ic_add_circle_white"
      />

  <android.support.v7.widget.RecyclerView
      android:id="@+id/list"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      app:layout_behavior="@string/appbar_scrolling_view_behavior"
      />

</android.support.design.widget.CoordinatorLayout>

class MainActivityUI(
    val adapter: RecyclerView.Adapter<out RecyclerView.ViewHolder>) : AnkoComponent<MainActivity> {

  private lateinit var toolbar: Toolbar

  override fun createView(ui: AnkoContext<MainActivity>): View = with(ui) {
    coordinatorLayout {
      fitsSystemWindows = true
      themedAppBarLayout(R.style.AppTheme_AppBarOverlay) {
        toolbar {
          id = Ids.toolbar
          setTitleTextColor(WHITE)
          popupTheme = R.style.AppTheme_PopupOverlay
        }.lparams(width = matchParent){
          scrollFlags = SCROLL_FLAG_ENTER_ALWAYS
        }
      }.lparams(width = matchParent) {
        //        behavior = AppBarLayout.ScrollingViewBehavior()
      }
      frameLayout {
        recyclerView {
          id = Ids.mainList
          layoutManager = LinearLayoutManager(ctx)
          adapter =<EMAIL_ADDRESS>          lparams(matchParent, matchParent)
        }
      }.lparams(width = matchParent, height = matchParent) {
        behavior = AppBarLayout.ScrollingViewBehavior()
      }
      floatingActionButton {
        id = Ids.faButton
        imageResource = R.drawable.ic_add_circle_white
      }.lparams {
        gravity = Gravity.RIGHT or Gravity.BOTTOM
        margin = dip(16)
      }
    }
  }
}

There are some inconsistencies in xml and programmatically created layouts. In this case when AppBarLayout.LayoutParams is created from xml  scrollFlags is initialised with 0. When you create it programmatically it is initialised with SCROLL_FLAG_SCROLL. It's a bug in design library.

Thank you, I didn't even know there's such an inconsistency on creating layout in xml & programatically. It is clearer now


Use postgres compatible formatter for to_char with interval types

Summary of the changes / Why this improves CrateDB
Previously, to_char would ignore the string formatting field and just output the standard string rendering of the interval. This PR instead uses the postgres syntax compatible parser by adding the interval to the date 0000/01/01 00:00:00, which brings it into agreement with the behaviour with postgresql.
Checklist

[ ] Added an entry in CHANGES.txt for user facing changes
[x] Updated documentation & sql_features table for user facing changes
[x] Touched code is covered by tests
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

@mkleen I was unsure about whether I should add one, since in https://github.com/crate/crate/blob/master/docs/appendices/release-notes/unreleased.rst there is the line "Added the to_char scalar function for timestamp, interval and numeric types.", and I wondered whether it made sense to add something to the changelog for something that changes the behaviour of an unreleased feature. What do you think?

@mkleen I was unsure about whether I should add one, since in https://github.com/crate/crate/blob/master/docs/appendices/release-notes/unreleased.rst there is the line "Added the to_char scalar function for timestamp, interval and numeric types.", and I wondered whether it made sense to add something to the changelog for something that changes the behaviour of an unreleased feature. What do you think?

Good point, I agree with you. I would say lets leave it as it.


Support Laravel 5.5

Collection::loadMissing() was only added in Laravel 5.6.22.
I also think it's unnecessary: We already check if the relationship is loaded with relationLoaded().

Thanks for this - one of those situations where I didn't need 5.5 support, so hadn't really considered it, however I'm sure plenty of users will thank you for it :-D


Cassandra GetEndPoints fails with return value Java_com_sun_jna_Native_getStringBytes

I seem to get 2 out of 3 cassandra nodes start but the 3rd one fails with the following. Seems to be a problem with the 'main.go' code. Any help is appreciated
INFO  17:32:35 get endpoint params: default, cassandra, cassandra-0.cassandra.default.svc.cluster.local
**INFO  17:32:35 cassandra endpoint data: Java_com_sun_jna_Native_getStringBytes**
ERROR 17:32:35 unexpected error building cassandra seeds: Unexpected character ('J' (code 74)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: java.io.StringReader@5fd4f8f5; line: 1, column: 2]
Exception (org.apache.cassandra.exceptions.ConfigurationException) encountered during startup: The seed provider lists no seeds.
The seed provider lists no seeds.
ERROR 17:32:35 Exception encountered during startup: The seed provider lists no seeds.

other two have the correct data
INFO  17:30:57 get endpoint params: default, cassandra, cassandra-0.cassandra.default.svc.cluster.local
**INFO  17:30:58 cassandra endpoint data: {"ips":["cassandra-0.cassandra.default.svc.cluster.local"]}**

I instrumented the 'KubernetesSeedProvider.java' with two additional 'logger.info' lines to get this data
logger.info("get endpoint params: " + namespace + ", " + service + ", " + initialSeeds);
String data = go.GetEndpoints(namespace, service, initialSeeds);
logger.info("cassandra endpoint data: " + data);

We have also run into this issue (among many other issues such as missing packages required by Cassandra from the base image k8s.gcr.io/debian-base-amd64:0.3 that are not included in the build.sh file) . Having said this this issue happens in the interface between GO and Java using JNIA  The CString's memory allocation is freed before the Java has time to read it and java fails during string get bytes read call.  you can see this by commenting the following line in main.go.  Then the 3rd and 4th cassandra pods should run properly
//defer C.free(unsafe.Pointer(rc))
Obviously using defer (which defers the memory allocation to the end of call in the current code) is not going to solve this issue.  Also we can't leave this line commented. The memory needs to be released otherwise we will have a memory leak
This issue can be solved by freeing the memory from java side once the java is done reading the seeds string (which has a json format).
Also there are many unused code on the java JNA side that is complicating troubleshooting this issue.  My recommendation of to remove this code and simplify the GoInterface on the java side (BTW there are many instances of unused code all over the place, ex: look at   Integer seedSize inside the provider java class)
1- Content  of GoInterface.java should be as following:
/***** Start of File ********/
package io.k8s.cassandra;
import java.util.Arrays;
import java.util.List;
import com.sun.jna.Library;
import com.sun.jna.Pointer;
public interface GoInterface extends Library {
public Pointer GetEndpoints(String namespace, String service, String seeds);
public void FreeCString (Pointer cString);**
}
/***** End of File ********/
2- Also "KubernetesSeedProvider.java needs to change where we call the GetEndPoints with the following (note that . you need to import the pointer in the beginning of java file (import com.sun.jna.Pointer;)
            Pointer seedsPointer = go.GetEndpoints(namespace, service, initialSeeds);
            String data = seedsPointer.getString(0);

            //cleanup allocated memory in the GO/C program
            go.FreeCString(endPointPointer);

3- Finally on the GO side we need to comment the following call:
//defer C.free(unsafe.Pointer(rc))
and add the following additional method for java to free up the memory (make sure you copy export line below):
//export FreeCString
func FreeCString (buf *C.char) {
log.Printf("Freeing memory for String: "+C.GoString(buf))
C.free(unsafe.Pointer(buf))
log.Printf("Mem free completed inside Native GO generated library for seed string.\n")
}
We can make files available to you if you are interested.  Good luck


Need more detail in this Doc page on how to enforce dialing restrictions from CAP phones

Examples of dialing restrictions customers might request for CAP:

Disallow long-distance / international calling
Only allow calls to users/devices within the company, i.e. no outside line allowed

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

ID: b4ab5215-f24f-75cf-bb92-16ac0ff5e5ca
Version Independent ID: 701cc58f-d2ea-cbb6-f5fc-47b9fbfb1119
Content: Set up the Common Area Phone license - Microsoft Teams
Content Source: Teams/set-up-common-area-phones.md
Service: msteams
GitHub Login: @cazawideh
Microsoft Alias: czawideh

Hello @JasonSmith-MS
The procedure focuses on what is available with a CAP license, an a CAP license does not include domestic or international calling, for that, you would have to assign a Calling Plan. If you decide to assign a CP, you could use dial plans and outbound calling restrictions as with any other user.
Please let me know if I understood you correctly,
Thanks

@scanum


first push SOD optimisation

Closes #114
After doing some experiments on SOD, it turns out (as expected) that more than 95% of the extra time complexity is purely because of numpy function isin() used in snn() function in SOD.
However, this function cannot be used under numba since it is not supported yet.
I implemented a workaround to make it work under numba.
The results show noticeable improvement in time complexity and even faster than Fast ABOD algorithm.
Although SOD achieves a pretty good precision in high-dimensional spaces, nevertheless, please note that SOD is well-known to have relatively poor time complexity as many papers and blogs show (example).
Experiment Settings:

#Samples
#Features
#Neighbors

10K
10
50

Results

Model
Time(sec)

SOD (old)
130

SOD (new)
58

ABOD
87

Pull Request Test Coverage Report for Build 1005

3 of 13 (23.08%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.2%) to 95.513%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pyod/models/sod.py
3
13
23.08%

Totals

Change from base Build 999:
-0.2%

Covered Lines:
3981

Relevant Lines:
4168

💛  - Coveralls


Firefox - Tabs not loaded on launch

When opening the extension, the tabs are not loaded until an action triggers the reloadPage() function.

#77 Fixes this issue.


[Feature][Doc] Add global search functionality to the official website documentation.

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Description
Related links:
SkyWalking Official Website
Algolia for Developers

Usage Scenario
No response
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

1

@ic4y Update, https://github.com/apache/seatunnel-website/pull/265


WiP json: drop exceptions from the json sanitizer

Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

@wbpcode fyi -- we can make sure CI is cool before review.

/retest

/retest

I believe the graph ql is failed because other reasons. And this lgtm. Thanks.

apologies @jmarantz i marked this as draft on the basis that the title says WIP

Good call on the fuzzing branch. This runs through the default corpus just fine, but I couldn't figure out how to let the fuzzer explore for a long time. I have done that in the past but failed to save a script, and the is wrong.

I think the code is safe.
If it actually has a problem, after we merged it to main, it will be tested lots of times everyday by our CI. We can find it in our CI report.

/retest


is there any examples for redis  to do access control ?

hi:
I want to use redis plugin .but i can't find any examples for that can you give me some example

Hi @Karity, Redis Plugin: https://github.com/emqtt/emqttd_plugin_redis

@Karity, I updated the README: https://github.com/emqtt/emqttd_plugin_redis/blob/master/README.md


Adding 7 new sets of systems design questions to seed files

@ocelotdive has created 7 sets of multiple choice questions for the Interview Prep section.
Here they are: https://github.com/OcelotDive/FCCquestions
We're looking for an open source contributor who can help port these text files over to freeCodeCamp's JSON files so that these challenges will be accessible from the challenge map.
Here's the file where they would go, which already includes a set of multiple choice questions for reference: https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/seed/challenges/08-coding-interview-questions-and-take-home-assignments/system-design-and-concept-questions.json
This would make a good first issue issue. To get started:
Get freeCodeCamp running locally: https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/CONTRIBUTING.md
Join the Contributors chatroom: https://gitter.im/freecodecamp/contributors
And comment here to claim this issue. Then please post frequent updates so we can ensure this is ready in time for shipping beta :)

Hi,
I'm on it, i'll start today after work !

@jsparanoguy Awesome! Sounds great. I've set this to "in progress". Please keep us posted on your progress :)

@QuincyLarson i checked it more in depth, initialised the project on local, if i didnt musunderstood it, it will be ready for saturday night (at least saturday nitght for me, sunday morning for you i guess because of the timezone !)

@jsparanoguy Awesome! I'm excited to see your work on it! Thanks for keeping us updated.

Hi !
It's almost done there is only one problem i have, for the question 4 from https://github.com/OcelotDive/FCCquestions/blob/master/GeneralFCC.txt it doesn’t look like a choice question for me…
so i’m a bit stuck here ! i don't know how to handle this one, but everything else seems ok

@jsparanoguy Yes - It is not a choice question, but we can make it a choice one. You can present the question in this manner:
Q.1) Select the correct Numeric types to their correct size.
a) Byte - 32 bits, long - 8 bits , int - 64 bits, short - 16 bits.
b) Byte - 8 bits, long - 32 bits , int - 64 bits, short - 16 bits.
c) Byte - 8 bits, long - 16 bits , int - 32 bits, short - 64 bits.
d) Byte - 8 bits, long - 32 bits , int - 64 bits, short - 16 bits.
In above question, option (a) is correct. I hope it'll help. If you need any further assistance please reply back. Happy coding! 😄.

@vkWeb Thanksyou !

@vkWeb Thanks for the suggestion! That's a good set of potential answers.
@jsparanoguy how is this coming along? Let us know if we can do anything to help.

@QuincyLarson well i did what i could for the subtitles fields, i'm just waiting for the feedback from the PR if there is anything to change :) !


Update channels.csv

Change some stations to call signs.
Depends on: iptv-org/iptv#14093

Why did you remove the other non-Korean channels?

Do you see the updated changes? It should be up to date.

Found the root cause. User error on fast fowarding.
Reference


python3Packages.chardet: 3.0.4 -> 4.0.0

Motivation for this change
Update to latest upstream release 4.0.0
Change log: https://github.com/chardet/chardet/releases/tag/4.0.0
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
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 nixpkgs-review --run "nixpkgs-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)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Was expected:
$ nix-env -f /home/nix-pkg/.cache/nixpkgs-review/pr-117258/nixpkgs -qaP --xml --out-path --show-trace --meta
3388 packages updated:

/rebase staging

Result of nixpkgs-review pr 117258 at d3827a33 run on x86_64-linux 1

129 packages marked as broken and skipped:

agdaPackages.iowa-stdlib
aqemu
awsebcli
bareos
bonfire
cassandra_2_1
cassandra_2_2
hadoop
hadoop_2_7
hadoop_2_8
...

9410 packages skipped due to time constraints:

EBTKS
R
abcl
acd-cli
adapta-gtk-theme
adoptopenjdk-icedtea-web
aerc
afew
agda (agdaPackages.agda)
agda-pkg
...

20 packages built successfully:

pylode
python38Packages.betamax
python38Packages.cachecontrol
python38Packages.chardet
python38Packages.factory_boy
python38Packages.flask
python38Packages.flask_sqlalchemy
python38Packages.pytest-localserver
python38Packages.requests
python38Packages.responses
python38Packages.sphinx
python38Packages.werkzeug
python39Packages.betamax
python39Packages.chardet
python39Packages.flask
python39Packages.flask_sqlalchemy
python39Packages.requests
python39Packages.responses
python39Packages.sphinx
python39Packages.werkzeug

/rebase staging

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 117258 run on x86_64-linux 1

1 package built:

home-assistant

part of https://github.com/NixOS/nixpkgs/pull/117452


Migrating from v4 idField

i read this at the bottom of your docs

This has replaced the transform, idField and refField options that were available in react-firebase-hooks v4 and earlier.
can you provide a simple example of how to implement this at least for the legacy - idField

i have been able to use useCollection and get the id, but i kind of prefer the simpler useCollectionData

@Schmell The Firebase documentation has a nice example of how to create a converter: https://firebase.google.com/docs/reference/js/firestore_.firestoredataconverter#example. The fromFirestore method of the converter is passed the QueryDocumentSnapshot which has access to the idField.
Then simply specify a converter using withConverter on the collection and pass that into useCollectionData as you would previously, e.g.
const ref = collection(firestore, 'collectionName').converter(yourConverter);
const [data, loading, error] = useCollectionData(ref);

I'll close this but please let me know if this doesn't work for you.

Hey thanks for your reply.
The example is confusing, like do I have to make a class to map to??
anyway I just get lots of Object possibly null errors.
I don't want to waist your time as I am just a noob.  I can just use useCollection
Thanks anyway

@Schmell I have just added a full example to the documentation here: https://github.com/CSFrequency/react-firebase-hooks/tree/master/firestore#transforming-data. Hopefully this makes it clearer

Hey thanks, I appreciate your input on this.
Yes it was a better example especially for Typescript and v9
works great, I didn't even know about the docRef  and that is even cooler
Thanks again

I tried to build a generic converter that added an id field to all data coming from firestore based on snapshot.id, but what I'm seeing is that it's actually adding an id parameter to the document when I add new documents as well.
I'm solely trying to get the ID field on the client-side.  Would someone be able to tell me what I'm doing wrong here?
export const withIDConverter: FirestoreDataConverter<any> = {
  toFirestore(data: WithFieldValue<any>): DocumentData {
    return data;
  },
  fromFirestore(snapshot: QueryDocumentSnapshot, options: SnapshotOptions): any {
    const data = snapshot.data(options);
    return {
      id: snapshot.id,
      ...data,
    };
  },
};


Design user interface for mobile responsive

What exactly is the requirement here? I checked the sites on mobile view and they work fine


Validate code lens still works on local variables after 0b2e2768fcdaeb784f2a3a7888ed49bc5aafe799

https://github.com/cquery-project/cquery/commit/0b2e2768fcdaeb784f2a3a7888ed49bc5aafe799

renamed to config->codeLens.localVariables

brought back local variables in def->outline


Error reconnecting to a cluster when Monokle has been opened for a while

Describe the bug
When you connect to a cluster and Monokle is open for a while, the connection stops working
To Reproduce
Steps to reproduce the behavior:

connect to a cluster in cluster mode
wait
stop the connection
Wait
Connect again

Expected behavior
The connection works
Screenshots

Desktop (please complete the following information):

OS: Mac
Version 2.0.9

Additional context
Restarted the VM to make sure it was not that.
Logs:
[2023-04-21 19:59:28.939] [browser] [warn]  This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
[2023-04-21 19:59:28.941] [browser] [error] Error: getaddrinfo ENOTFOUND api.segment.io
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26)
[2023-04-21 20:15:45.736] [browser] [warn]  This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
[2023-04-21 20:15:45.737] [browser] [error] Error: getaddrinfo ENOTFOUND api.segment.io
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:107:26)
[2023-04-24 12:43:53.902] [browser] [error] (node:94026) ExtensionLoadWarning: Warnings loading extension at /Users/sergio/Library/Application Support/monokle/extensions/fmkadmapgofadopljbjfkapdkoienihi:
Permission 'scripting' is unknown or URL pattern is malformed.
(Use Electron --trace-warnings ... to show where the warning was created)
[2023-04-24 12:43:53.905] [browser] [error] (node:94026) ExtensionLoadWarning: Warnings loading extension at /Users/sergio/Library/Application Support/monokle/extensions/lmhkpmbekcpmknklioeibfkpmmfibljd:
Manifest version 2 is deprecated, and support will be removed in 2023. See https://developer.chrome.com/blog/mv2-transition/ for more details.
Permission 'notifications' is unknown or URL pattern is malformed.
Permission 'contextMenus' is unknown or URL pattern is malformed.
[2023-04-24 12:43:55.774] [browser] [info]  Skip checkForUpdates because application is not packed and dev update config is not forced
[2023-04-25 08:53:39.985] [browser] [info]  Checking for update
[2023-04-25 08:53:40.532] [browser] [info]  Update for version 2.0.9 is not available (latest version: 2.0.9, downgrade is disallowed).
[2023-04-25 08:54:58.355] [browser] [warn]  This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
[2023-04-25 08:54:58.356] [browser] [error] {}
[2023-04-25 12:13:04.212] [browser] [info]  [kubectl-proxy] STOP 34009
[2023-04-25 12:13:04.213] [browser] [info]  [kubectl-proxy] STOP 34072
[2023-04-25 15:35:34.021] [browser] [info]  Checking for update
[2023-04-25 15:35:34.727] [browser] [info]  Update for version 2.0.9 is not available (latest version: 2.0.9, downgrade is disallowed).

kubectl get pods works

It does not invent a new namespace, it is using a namespace from the last connection, that is random. But identifiable in the configuration of the other kubeconfig.


fix for #298

Introducing a new root file for storage of unreleasables.

Travis fails because master has still some doubled lines in EU4province.h which prevent compilation and which are in queue on the first PR.


Async UART for STM32 U5 suppport

Is your enhancement proposal related to a problem? Please describe.
Is is possible to add STM32 U575/U585 support for tests/drivers/uart/uart_async_api. I'am aware that U5 DMA support is not yet merged, https://github.com/zephyrproject-rtos/zephyr/pull/45350  but after that would be nice time.
Describe the solution you'd like
To be able to build and run test: west build -p auto -b b_u585i_iot02a_ns tests/drivers/uart/uart_async_api
Describe alternatives you've considered
Additional context

Thanks for raising this PR.
The async UART for stm32u5 requires DMA : purpose of the #45350
Then I have a branch here https://github.com/FRASTM/zephyr/tree/uart_dma_u5 for running the uart_async_api. not yet finalized because of a interrupt raising unexpectedly.

There is a device errata for the in the stm32U575/585
ES0499
that prevent the use of the DMA for USART transfer :  "USART does not generate DMA requests after setting/clearing DMAT bit
Description
If the DMA is used for data transmission (DMAT = 1 in USART_CR3 register), and the software clears DMAT bit
and sets it again to prepare the next transmission, then the peripheral does not generate DMA requests anymore.
As a result, data are not transmitted.
Workaround
• Avoid clearing DMAT.
• If clearing DMAT is needed after the end of DMA transfers, once DMAT is cleared, disable and reenable the
peripheral through UE bit of USART_CR1 register. This workaround is acceptable only if the peripheral is not
used in receiver mode.
This is the case in the tests/drivers/uart/uart_async_api/, when test_write_abort and test_forever_timeout : the DMA request (DMAT of the USART CR3 bit) is disabled and re-enabled to start a next transmission.

Please see  branch https://github.com/FRASTM/zephyr/tree/uart_async_u5 as a first step.

@JiiZR Conclusion of this ticket is that unfortunately UART DMA RX is not functional on U5 and this is a hardware limitation.
A workaround is available on TX as described above by @FRASTM.
Closing.

Thanks for the info. So this means that there will not be async UART support for U5 series. or did I missed something ?

Thanks for the info. So this means that there will not be async UART support for U5 series or did I miss something ?

At least it would require some heavy workaround. This is unlikely this would go upsteam.

Could you please have a look at PR https://github.com/zephyrproject-rtos/zephyr/pull/50968


scylla_cloud_io_setup: fix NameError

Since ecdbd44b5661cd8e97fec18c1d74a311ec4c2fa7 was bring from scylla_io_setup patch, there are incompatible variable names. We need to rename them in following rules:

idata and disk_properties should be member of self
rename instance_class() to instancetype

@syuu1228 Running https://jenkins.scylladb.com/job/scylla-master/job/releng-testing/job/next-machine-image/169/ to make sure it will work. once it's completed i will merge

@syuu1228 Running https://jenkins.scylladb.com/job/scylla-master/job/releng-testing/job/next-machine-image/169/ to make sure it will work. once it's completed i will merge

Passed


[WIP]: Add dev mode for faster rendering

PR Checklist
If you are contributing to Javis.jl, please make sure you are able to check off each item on this list:

[ ] Did I update CHANGELOG.md with whatever changes/features I added with this PR?
[ ] Did I make sure to only change the part of the file where I introduced a new change/feature?
[ ] Did I cover all corner cases to be close to 100% test coverage (if applicable)?
[ ] Did I properly add Javis dependencies to the Project.toml + set an upper bound of the dependency (if applicable)?
[ ] Did I properly add test dependencies to the test directory (if applicable)?
[ ] Did I check relevant tutorials that may be affected by changes in this PR?
[ ] Did I clearly articulate why this PR was made the way it was and how it was made?

Link to relevant issue(s)
Attempt to close #166
How did you address these issues with this PR? What methods did you use?
The idea is to automatically track the updated frames in case the dev_mode is specified while creating the videos. This definitely has its limitations and cannot always track every unchanged frame i.e. if the image of the frame is left unchanged but somehow that frame was referred to or used since last render it will still get created in the next render.
Currently, tests need to be added to benchmark the improvements (if any). @Wikunia @TheCedarPrince could you give a initial review if possible?
Thanks!

Will have a look later this weekend. Probably Sunday. Do you mind giving some code to go into dev mode and a bit more explanation to what should happen?
Thanks in advance m testing with morphing might fail based on your explanation so far.

Yes sure @Wikunia.
using Javis

function ground(args...)
    background("white") # canvas background
    sethue("black") # pen color
end

myvideo2 = Video(500, 500; dev_mode=true)
Background(1:70, ground)
red_ball = Object(1:70, (args...)->object(O, "red"), Point(100,0))
render(myvideo; pathname="tutorial_1.gif", compute_frames=:latest)

This is the way one should use it. I am still on the benchmarking part, trying to see what is the outcome. I did not find a test so far where not re-drawing the frames had any significant speed up. I will try to find one and add it as a test in a subsequent commit as test. Thanks.

Sure @codejaeger - I could probably do a cursory review today to give some feedback. 😄

Thanks! What's the :latest part? Can one specify the frames one want to recompute? And does this work for gif and mp4?

:latest is to signify to re-compute/draw only the frames which are thought to be different. If not specified, it should work just as it was before. I tried it with gif, I will do the same with mp4 and let you know. No, currently there is no way to take in the frame range to compute as input. I will add that after this. This seemed to me a simpler way to provide a speed up.

@codejaeger, Sorry for poking my nose in here, but I totally understand the Image.load() latency issue here as I had faced something similar while trying to reduce the lag in Jupyter Viewer. One approach you could try is replace frame_image = Images.load("$(tempdirectory)/$(lpad(filecounter, 10, "0")).png")  with something "in-memory" eg, like fetch that particular frame from an array of frames(stored previously). Again that might lead to increased allocations but it's worth giving a try.

Lol we had the same thought @Sov-trotter just in a different issue #166

Will try that @Sov-trotter, thanks for the suggestion.

@Wikunia I tried the approach of storing the frames in memory. In a crude way, there is a performance speed up of 25% when I try with examples generating 300 and 500 frames. I will add tests for these. I wanted to ask does this speed up seem reasonable against the increased memory consumption?

I think it makes sense to provide the option with bigger memory consumption but for faster rerendering.


Use dedicated tag for electricity-input

This PR extracts and implements several simplifications from #125, in particular:

split the list of fuels into one list of energy carriers specific to the power sector (including nuclear, non-biomass renewables, etc.) and a shorter list of generic fuels (used for heat, etc.)
refactor all power-sector-related variables to the new tag-list
harmonize units and remove units at alternative orders of magnitude (MWh & GWh)

fyi @erikfilias