Lodestar produced block with invalid attestation during Sepolia instability

Post merge Sepolia has 2 unstable epochs

the first merge slot was https://sepolia.beaconcha.in/block/115193
Up until slot 115232, we don't see any of the config issue related validators missing a single slot. 115233 however is missed by lodestar and subsequently 115234&115235 are also missed by Besu and Nimbus. These are providers where no config issue is known, hence it could be a shuffling issue or something else
The trigger point could be slot 115233, see slot dump from Nimbus node invalid.tar.gz
Teku also logged that invalid slot. They failed validating the signature but the proposer_index matches the expected one (709) according to beaconcha.in 115233.zip
Seems like the block contains an attestation with invalid signature state_at_115232.ssz.zip
The offending attestation is

IndexedAttestation{attesting_indices=SszList{size=17: 50, 198, 311, 389, 556, 639, 804, 1121, 1238, 1324, 1435, 1448, 1487, 1497, 1612, 1640, 1779}, data=AttestationData{slot=115232, index=0, beacon_block_root=0xacd63ca2b12641cb281fe40a479a5bf37debbba9ae324e4c9089742fdbbe1403, source=Checkpoint{epoch=3599, root=0x5a4b89da91bfe310be27b6cccaf4ead3ec62280d1ed9f4356e6df525a1f2d19b}, target=Checkpoint{epoch=3601, root=0xacd63ca2b12641cb281fe40a479a5bf37debbba9ae324e4c9089742fdbbe1403}}, signature=SszByteVector{0x86330d22c822f54c36456a82420ec64150024016a9ca1dd59218cec47d4d0be8182dbad6eacfff6debecd9ab2c7390840321416e0cb7ce01e6428ddef73f2777ca69e7d7fe448fc1febd86c6bff4d8a509bc29a3ec32e19e3f79aee8661c30ff}}

source is correct, the target is weird. And gap between source and target is a couple of epochs. Source pre-merge and target post-merge.

Hypothesis

attestation is valid wrt side chain and makes it into pool
beacon node produces block on mainchain (with divergent shuffling) and pulls thsi attestation from the pool (because it was pre-validated)
block is invalid because bitfield represents side-chain shuffling and is invalid to the assumed mainchain shuffling in the block

continue

the gap 3599-3601 is present in other attestations https://sepolia.beaconcha.in/epoch/3601 - the target root is wrong
But it might be correct wrt to the side chain, which the node had blocks available at the time
The gap here at the point merge implies that there was still agreement in latest finalized and thus the source correct and thus lodestar still importing side-chain blocks

The hypothesis is correct, the weird block 0xacd63ca2b12641cb281fe40a479a5bf37debbba9ae324e4c9089742fdbbe1403 happened in attestations of block slot 115225 to 115231 as head root. From https://sepolia.beaconcha.in/ I suppose:

Note that slot 115224 does not pass the main branch checkpoint (115200), common ancestor is 115192
At epoch 3600, some validators voted for 115224 as head and their attestations are valid because attester dependent root is last slot of epoch 3598 (same shuffling to main branch)
At epoch 3601, some validators voted for 115224 as head, it passes gossip validation because we use state 115224 to verify. However attester dependent root (slot 115199) is different to main branch (different shuffling to main branch), i.e if we use head state to validate these attestations, signature verification would failed.
At slot 115233 (epoch 3601), we produced block and include this conflicted attestation

Note

According to the spec https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/validator.md#attestations : Up to MAX_ATTESTATIONS, aggregate attestations can be included in the block. The attestations added must satisfy the verification conditions found in [attestation processing](https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#attestations)

@tuyennhv so is there any issue that causes this block to be valid with respect to Lodestar and invalid to other network participants?

@tuyennhv so is there any issue that causes this block to be valid with respect to Lodestar and invalid to other network participants?

no, lodestar is compatible to other clients. In the example above the produced block is not valid even to lodestar. Before bundling an attestation into block, we need to validate the signature of attestation. But since we did it in gossip validation function, we only need to make sure the shuffling of attestation is compatible to the state used to produce block.


Size # of sensors req'd

Estimate a range of number of sensors required for:

Ideal coverage of 25%, 50%, 75%, 100% coverage of Chicago population
Need to understand sensors per capita - look for reports, docs, etc
10 year total cost of buying + maintaining sensors

I'm going to close this issue with the work from Rahul's sizing doc (https://github.com/Code-For-Chicago/Air-Quality/blob/main/docs/011221 Sensor Sizing.xlsx)


Callable signature not found in interface

class A {}
class B extends A {
  data: {data: Baz}
}

type Baz = A | () => A
interface Foo {data: Baz }
type Bar = {data: Baz }

let b = new B()
let foo1: Foo = {data: new B}
let foo2: Foo = {data: function () {return new B}}  // ❌ error here： Callable signature not found

let bar1: Bar = {data: function () {return new B}}
let bar2: Bar = {data: new B}

b.data = {data: function () {return new B}}
b.data = {data: new A}

see also
What difference between Object Type and Interface?

A few of points...
• Errors for unions are dependent on their order: https://twitter.com/GiulioCanti/status/791858268813586432
If you switch the union for Baz, you'll get a different error...
type Baz = () => A | A

7: interface Foo {data: Baz }
                        ^ function type. Callable signature not found in
11: let foo1: Foo = {data: new B}
                           ^ B
8: type Bar = {data: Baz }
                     ^ function type. Callable signature not found in
15: let bar2: Bar = {data: new B}
                           ^ B
3:   data: {data: Baz }
                  ^ function type. Callable signature not found in
18: b.data = {data: new A}
                    ^ A

• When you specify () => A | A, you're saying the type is a function that returns an instance of A OR an instance of A. If you want to specify that it's a constructor, you need to use the Class<A> notation.
• If you want to use Class<A> | () => A, just remember that objects are invariant by default. Since Class<A> is a superclass to Class<A> | () => A, you need to mark the object as contravariant (write-only) to accept supertypes:
class A {}
class B extends A {
  data: {data: Baz}
}

type Baz = Class<A> | () => A
// Notice the "-" in front of data
interface Foo { -data: Baz }
type Bar = {data: Baz }

let foo1: Foo = { data: new B }

You have ignored the operator order.
type Baz = () => A | A is a function return (A | A),  in other word, type Baz = () => A | A is equal to  type Baz = () => (A | A).
In above case, the error output won't be caused by the Union order . This problem is what difference between Interface and Object type. I think this is a bug.

Ah, you're right about type Baz = () => (A | A).

FWIW, marking interface Foo { +data: Baz } as covariant makes it type check.

This is a simpler example & illustrates a difference between classes and primitives as properties. Example 1 makes interfaces look invariant over their properties, where Example 2 does not.
// @flow

// Example 1

type FooB = { foo: ?string }
interface FooInterfaceB { foo: ?string } // ERROR

var test1: FooB = { foo: '' }
var test2: FooInterfaceB = { foo: '' }

// Example 2

class A {}
class B extends A {}
class C extends B {}

type FooA = { foo: B }
interface FooInterfaceA { foo: B }

var test3: FooA = { foo: new C() }
var test4: FooInterfaceA = { foo: new C() }

6: interface FooInterfaceB { foo: ?string }
                                  ^ null. This type is incompatible with
9: var test2: FooInterfaceB = { foo: '' }
                                     ^ string
6: interface FooInterfaceB { foo: ?string }
                                  ^ undefined. This type is incompatible with
9: var test2: FooInterfaceB = { foo: '' }
                                     ^ string

Example 3 & 4:
// Example 3 union convariant
type FooC = {foo: A | D}
interface FooInterfaceC {foo: A | D}

var test5: FooC = {foo: new D}
var test6: FooInterfaceC = {foo: new D}

// Example 4: function convariant
type FooD = {foo: (B) => A}
interface FooInterfaceD {foo: (B) => A}

var test7: FooD = {foo: (a: A) => {return new B}}
var test8: FooInterfaceD = {foo: (a: A) => {return new B}} // error

This now works.


[5|Resource Page (Item) and Note Taking Feature] The tooltip

 🍰 Appetite 🍰

Property
Value

Points
10 points

Difficulty rating
★★☆☆☆

Maximum Assignees
2 person

🤔 Problem Statement

Create a tooltip and make it appear every time the user selects a piece of text in the resource article's content. The Highlight and Make a Note buttons will do nothing for now. The copy button will do a copy action.
You can either use an external library or develop your own logic for this tooltip.
🧪 Required Tests
Mainly screenshot tests.
Review the Code & Testing Guidelines for more info.
⚠ Careful about:
No major rabbit holes identified. But always be careful with scope creep!
🤖 Technologies focused on in this feature

React
Tailwind
Shadcn
NextJS

can you assign me this feature @vo-d  @hzz4343  @Iwaslazkis

can you assign me this feature @hzz4343

Working on this one!

@thejasveer message me once you're done the Reporting feature and I'll get you added to these.

@khnatiuk  yeah i am free now!


Update version requirements

Fixes #55
This:

upgrades dependencies
change python version requirements (py38 is near EOL, unsupported by pandas, and py312 is stable)

Note: lint CI action will likely not pass as I updated black but did not run it (to keep the diff small)

Did you update the lock file or regenerate it? Usually regenerating makes less trouble.

Flake8 seems dead and doesn't work with newer python libraries, so I replaced it with ruff. Formatting is still done by black (otherwise the diff would be gigantic), but in the future formatting too could be done by ruff.

We can also transition to ruff in another PR for formatting.

We can also transition to ruff in another PR for formatting.

Yep, I don't plan in adding anything to this PR, it's good as-is !
(just in case you're not aware, only you can merge, I don't have the rights, and it's the same for #57)

Feel free to merge then

I can't, I don't have the rights to this repo


added #import statement to readme

A simple oversight, but potentially confusing to a n00b.

Thanks!


Post topic

allow to add a topic for each post
topic search view
very nice looking

Wait for #47


Added remove folders function

removeFolders deleted the contents of the /Objects/ and /FileCabinet/SuiteScripts/ folders. The purpose is to provide a clean slate for development and synchronizations between environments.

trusting @christopherwxyz to add a warning message


Fix scrolling menu

Summary
When in landscape mode, some screens (specifically the No Exposure screen, as pointed out in https://github.com/cds-snc/covid-alert-app/issues/955) are clipped at the bottom by the overlay menu.
This is caused by the decision to have the ScrollView behind the OverlayView. This is a nice visual effect to let the content 'scroll behind' in a nice way. This could be implemented with contentInsets and without the weird gap, but a simpler fix here is to simply ensure that there is padding.
In the below screenshot, you see that the contentView (aka the content) only extends a portion of the screen, but the scroll view (blue) sits below only a portion of the menu. In a future PR that should probably be fixed / cleaned up but is very low priority.

Additionally, this restores "proper scrolling" and bounciness to the ScrollView if and only if the content is longer than the scrollable area. This looks and feels better.
Test instructions
The test here is to ensure that all screens are visible in both portrait and in landscape mode. There should be zero content that cannot be reached.
Additionally, it should be tested that when in portrait, the screens are not scrollable UNLESS there is content below the menu.
Since this affects the BaseHomeView the following screens need to be viewed, and tested:

No Exposure screens (No region, region covered, region not covered)
Bluetooth Disabled
Exposure Notifications disabled
Framework Unavailable
Network Disabled
Exposed
Diagnosed / Share
Unknown Problem View

You should see behaviour like this on most pages.
The view will be static. You cannot scroll this as there is not enough content!

In landscape, you can scroll and it bounces.
Please note that the colour changes in the menu was caused by the gif capture!

Help requested
I was able to test this properly on iOS (simulator + iPhone X) but not on android (only emulator, no device.) Although emulator seemed fine.
Unresolved questions / Out of scope
As mentioned in the issue and linked issues, on very tiny screens regardless of if the content is scrollable or not, it's still difficult to see things. The menu is too fat!
Reviewer checklist
This is a suggested checklist of questions reviewers might ask during their review:

[ ] Does this meet a user need?
[ ] Is it accessible?
[ ] Is it translated between both offical languages?
[ ] Is the code maintainable?
[ ] Have you tested it?
[ ] Are there automated tests?
[ ] Does this cause automated test coverage to drop?
[ ] Does this break existing functionality?
[ ] Should this be split into smaller PRs to decrease change risk?
[ ] Does this change the privacy policy?
[ ] Does this introduce any security concerns?
[ ] Does this significantly alter performance?
[ ] What is the risk level of using added dependencies?
[ ] Should any documentation be updated as a result of this? (i.e. README setup, etc.)

Reviewing this PR I am noticing that we don't have consistent bottom padding on our home screen views:
marginBottom="xl" on last element in ExposureView:

marginBottom="m" on last element in NoExposureUncoveredRegionView:

This is not actually a problem specific to this PR though - I can fix this in a follow up PR.

@smcmurtry let's fix in a follow up PR


Etap 2 - checklist

[x] Starting point

[x] text is in C#
[x] all UT are green
[x] the program behaves as expected (intermediate approval test)

[x] Data Layer

[x] responsibility of this layer is to represent boundaries of the movement rectangle and balls
[x] balls representation are independent and self-contained (no timer required)
[x] balls implementation uses concurrent programming

[x] Logic Layer

[x] responsibility of this layer is to manage movement rectangle boundaries and balls interaction (collisions)
[x] prove that the protection  of data integration is implemented
[x] Logic uses only the abstract Data layer API

[x] Presentation Layer (MVVM)

[x] responsibility of this layer is to manage the graphical user interface (GUI)
[x] user => GUI interoperability must be implemented using interactive programming only
[x] GUI => the user interoperability must be implemented using reactive programming only (timer is not allowed)
[x] interoperability of the GUI and underlying layers must be synchronized

[x] Fulfill functional requirements of the task
[x] Testing

[x] Unit Test - layers are tested independently using dependency injection (additional framework is not required)
[x] Mock may be used for testing purposes (expected but not required)

Zaliczone :)


Lexes without semantics should be optional

Lexes like

@ in Quantum Gate Modifiers (language/gates.html#quantum-gate-modifiers)
, separating qreg/qubit arguments to gate directives

that possess no semantics and merely serve as road braille for the user should be admissible but optional.
E.g., taking an example from Quantum Gate Modifiers:
// Define a controlled Rz operation using the ctrl gate modifier.
gate crz(θ) q1, q2 {
    ctrl @ U(θ, 0, 0) q1, q2;
}

could just as easily be written
// Define a controlled Rz operation using the ctrl gate modifier.
gate crz(θ) q1 q2 {
    ctrl U(θ, 0, 0) q1 q2;
}

This observation does not apply to commas (,) used to separate gate parameter arguments which do possess semantics where expressions can appear.

Lexes like
* `@` in Quantum Gate Modifiers (language/gates.html#quantum-gate-modifiers)

* `,` separating qreg/qubit arguments to gate directives

that possess no semantics and merely serve as road braille for the user should be admissible but optional.
E.g., taking an example from Quantum Gate Modifiers:
// Define a controlled Rz operation using the ctrl gate modifier.
gate crz(θ) q1, q2 {
    ctrl @ U(θ, 0, 0) q1, q2;
}

could just as easily be written
// Define a controlled Rz operation using the ctrl gate modifier.
gate crz(θ) q1 q2 {
    ctrl U(θ, 0, 0) q1 q2;
}

This observation does not apply to commas (,) used to separate gate parameter arguments which do possess semantics where expressions can appear.

The comma operator has semantics.

What's the semantics of the comma? I may be wrong, but I'm having trouble imagining an example where a gate invocation would become ambiguous without the commas.

What's the semantics of the comma? I may be wrong, but I'm having trouble imagining an example where a gate invocation would become ambiguous without the commas.

The comma operator creates lists and/or enumerations. That's the semantics.
Arguments and/or parameters passed to functions, gates, kernels, etc. are lists.

My position is such commas should be "permitted but not required".
There is no parsing ambiguity omitting the commas (it seems to me).
The LALR syntactic list-iness of the qubit/qreg targets of a gate operation is not a concern for the user.
They are a list with or without the commas.
inv mygate(some, params, possibly, expressions) qx qy;
Again, I refrain from applying my plumb line to the commas separating parenthesized gate parameters because expressions might appear there.

My position is such commas should be "permitted but not required".

Noted.

The LALR syntactic list-iness of the qubit/qreg targets of a gate operation is not a concern for the user.

It is a concern to the compiler writer, and I am speaking as such.

Ha, @steleman ! As @taalexander has already found out, I have been lying in wait for someone to offer that justification!
In response, I quote to you from IBM's premier language designer of the 20th century:
The general principle is that very few people have to implement interpreters or compilers for a language, whereas millions of people have to use and live with the language. One should therefore optimize for the millions, rather than the few. Compiler writers didn't love me for that, because Rexx got to be a hard language to interpret or compile, but I think it has paid off for people in general, certainly programmers in general.
IBM Fellow Emeritus Michael Cowlishaw, A Conversation with Michael Cowlishaw by Jack Woehr,  Dr. Dobb's Journal, March 01, 1996

Hmm I tried this and the whole test suite passed.
The problem of permit-but-not-require commas in index identifiers is probably more complex than this but it doesn't look intractable.
$ git diff
diff --git a/source/grammar/qasm3.g4 b/source/grammar/qasm3.g4
index c789c09..f381e13 100644
--- a/source/grammar/qasm3.g4
+++ b/source/grammar/qasm3.g4
@@ -177,6 +177,7 @@ indexIdentifier

 indexIdentifierList
     : ( indexIdentifier COMMA )* indexIdentifier
+    | ( indexIdentifier )* indexIdentifier
     ;

 indexEqualsAssignmentList
diff --git a/source/grammar/tests/outputs/declaration.yaml b/source/grammar/tests/outputs/declaration.yaml
index 08c27e8..dc2345b 100644
--- a/source/grammar/tests/outputs/declaration.yaml
+++ b/source/grammar/tests/outputs/declaration.yaml
@@ -1,7 +1,7 @@
 # indent w/ 2 spaces
 source: |
   int[10] x, y;
-  qubit q1[6], q2;
+  qubit q1[6] q2;
   bit b1[4]="0100", b2 = "1";
   bool m=True, n=bool(b2);
   const c = 5.5e3, d=5;
@@ -39,7 +39,6 @@ reference: |
                   expressionTerminator
                     6
               ]
-            ,
             indexIdentifier
               q2
         ;

Anyway, I went further with this, but there is no point in proceeding if it's not of interest to the team. Commas, at-signs, (@), if the team wants them in the language, that's the way it's going to be.


The last two PWM are missing on Cerb

Mapping is 16 PWM but TOTAL_PWM_CONTROLLER is defined 14.

Could not reproduce. There was a lot of changes since the bug was found so it is probably fixed by the changes.


add wasm http middleware

Signed-off-by: Loong Dai<EMAIL_ADDRESS>Thank you for helping make the Dapr documentation better!
Please follow this checklist before submitting:

[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] Read the contribution guide
[ ] Commands include options for Linux, MacOS, and Windows within codetabs
[x] New file and folder names are globally unique
[ ] Page references use shortcodes instead of markdown or URL links
[ ] Images use HTML style and have alternative text
[ ] Places where multiple code/command options are given have codetabs

In addition, please fill out the following to help reviewers understand this pull request:
Description

Issue reference

related to https://github.com/dapr/components-contrib/pull/1747

for https://github.com/dapr/dapr/pull/4765

@daixiang0 - Any update here?

@daixiang0 - Pinging again? We are in endgame and need to close this issue. Can you

Review my comments
Check the Wasm Hello world example into the Dapr/Samples repo?

@msfussell sorry for the slow response, I am busy this week and will do this next week.

@msfussell @yaron2 thanks for your help! I will add example later.


Consider nox instead of tox+make+shell script for automation

Is your feature request related to a problem? Please describe.
At the moment, instructlab is using a mix of tox, Makefile, shell scripts, and pre-commit for automation.

tox is used create virtual envs and drive testing, linting, and code formatting
Makefile is used for container images, to run some tox targets, run container for markdown validation, and more
tox uses scripts/ruff.sh to run Ruff's checker and formatter
pre-commit is used by some to perform the same code and format checkers
The README.md also contains a bunch of rather complex instructions how to create a virtual env and install a PyTorch stack for CPU, CUDA, ROCm, Apple MPS, Apple on Intel, and so on.

Describe the solution you'd like
Nox would allow us to consolidate tox, Makefile, and shell script into a single system and single file. From Nox's documentation:

nox is a command-line tool that automates testing in multiple Python environments, similar to tox. Unlike tox, Nox uses a standard Python file for configuration.

In other words, Nox is a powerful alternative for Tox. Tox uses a domain specific language (ini files), which limits it and makes it less flexible. Nox uses Python code to define commands. It has the full power of Python at its disposal. This makes Nox more versatile.
We could replace all of tox and most of make with Nox. On top of that, we can introduce a command to create a virtual env for the user with correct build and pip flags for GPUs, MPS, and so on. PyBaMM is a good example for dev env creation.
Additional context

upstream docs: https://nox.thea.codes/en/stable/
https://sethmlarson.dev/nox-pyenv-all-python-versions
https://hynek.me/articles/why-i-like-nox/

This is an interesting proposal, thanks for the writeup!
I have a few observations:

We could replace all of tox and most of make with Nox

What part of the Make file would move to Nox?

On top of that, we can introduce a command to create a virtual env for the user with correct build and pip flags for GPUs, MPS, and so on. PyBaMM is a good example for dev env creation.

So this cannot be done with Tox?

tox uses scripts/ruff.sh to run Ruff's checker and formatted

So will ruff.sh be rewritten in Python and included in Nox?
Even though consolidation sounds good, I don't see a strong argument or urgent need for this switch. It looks like it would take quite a bit of work, and so far, I haven't seen anything we can't do with Tox that Nox would fix.
All that being said I'm opposed to this, especially if you want to tackle it and have the capacity. I just want to make sure we’re not fixing what isn’t broken or always jumping to refactor with the latest cool tool. I know that’s not what you’re suggesting, I’m just being a bit cautious, that’s all! :)
Thanks!

@tiran are you able to take this on?


Possible issue with temperature readings

I was testing my bean within a fridge and when the temperature fell to 0 it seems the reading overflows and hits 255 instead of showing a negative representation. This was done using the temp request function within bean.js just as was done in the examples.

That's the expected behavior. getTemperature returns an int8_t, which is a signed 8-bit integer which can represent number from -127 to 128 (which suffices, considering the bean can report temperatures from -40C to 88C). The negative numbers are represented int the "upper half" of the 0-255 range, adding the negative number to 256. In other words, 255 is -1 (256 - 1), 254 is -2 (256 - 2), etc.


Namespace of ApplicationInsightsTelemetryPublisher

The namespace of ApplicationInsightsTelemetryPublisher is Microsoft.FeatureManagement.Telemetry.ApplicationInsights today. It's cumbersome for users to add long namespaces like this. I'd propose we move it under Microsoft.FeatureManagement.Telemetry. In the future, if we add any new publishers, we can put them all under the same namespace. This way users don't have to add namespaces for each publisher individually.

Sounds reasonable. Will be more discoverable. Shouldn't cause bloat since a user would have to specifically target this package to have this type appear.

To clarify- we're just changing the namespace and not the package name- correct? Meaning in the future we would have two packages:

Microsoft.FeatureManagement.Telemetry.ApplicationInsights
Microsoft.FeatureManagement.Telemetry.LogAnalytics

Both having:
namespace Microsoft.FeatureManagement.Telemetry;

Additionally, how do we feel about Microsoft.FeatureManagement.Telemetry.ApplicationInsights.AspNetCore ? It holds the TargetingTelemetryInitializer.
Should it follow suit and be:
namespace Microsoft.FeatureManagement.Telemetry.AspNetCore;

?

Additionally, how do we feel about Microsoft.FeatureManagement.Telemetry.ApplicationInsights.AspNetCore ? It holds the TargetingTelemetryInitializer

I don't think it should change. Here's why. The publisher is an implementation of a generic concept. Any telemetry destination would need it's own publisher. So standardizing to simple namespace allows the implementations to be discoverable easy as Zhenlan mentioned.
But, ITelemetryInitializers are App Insights specific components. I don't think they generalize well.

Makes sense. Updated PR.


Fixing #54

The fix for #54 was pretty straightforward once I finally narrowed down where it was coming from. We didn't catch this before because we were foiled by NumPy/JAX broadcasting rules.
cc @lgarrison, @Matematija

I think there's one issue where this will break things. Let me diagnose before we merge!


Optionally adding state to url so box and dropbox will work

During regression testing we noticed that although dropbox was now working box was not allowing connections.  This commit allows for one state to be added to the url, and adds a test to be certain there is a state for box and dropbox providers.

Coverage increased (+0.9%) to 63.342% when pulling 46ff49ba7c6becff414534cdeba3895db78490a5 on provider into 878f6011d5607ca81175bb6892bc94b8bc99df31 on master.


KBM mapping CTRL to alt

ℹ Computer information
PowerToys version: 0.33.1
PowerToy Utility: KBM
Running PowerToys as Admin: no
Windows build number: 20h2 (19042.867)
📝 Provide detailed reproduction steps (if any)

✔ Expected result
What is the expected result of the above steps?

if you press alt + c it should copy text.
if you press alt + v it should paste text.
if you press alt + f4 it should kill the active window/app.

❌ Actual result
What is the actual result of the above steps?
Nothing happend. No copy no paste. Neither if you press "ctrl" or "alt".

@knippinski
you are doing it in the wrong direction.
Alt + c -> Cntl + c
Alt + v -> Cntl + v
etc.


Add FileDropInput widget and demo in example_base.

This commit includes an update to the example project to work with
dash and settings and update to django 1.10.
Also included is an experiment in the example_base project with the
dropzone library for ajax uploading of files (don't think we need this
at present).
@pkimber - Please review

:+1:

Very nice...
I didn't realise the file had been uploaded, so perhaps we need something else to indicate this?

Very happy if you want to merge this...


I sent my wallet.What does this mean?

The stx token was sent from Binance to okcoin. Of course, I've attached a memo. Currently, Binance says it has been sent and okcoin cannot confirm it.

@jeongkwonwi this issue does not looks like it's related to this repository or did I miss something?


Return created objects

As per the suggestion of @victorlap, methods which create a new organization/user/membership/etc., should return the newly created object.
This, combined with the right HTTP status code 201, can be better than just returning { created: true }.

⚠ This issue has not seen any activity in the past 2 months so I'm marking it as stale. I'll close it if it doesn't see any activity in the coming week.

This is now fixed in v3.


New dictionary for Greek

It was not tested if it builds.

It does not.
For one, there is an opening tag <wordlist> missing in the el_wordlist.xml.
And then, at least on my computer, the file seems to be much too big. Just for testing, I shortened it to loose all the words with f="1" (frequency), resulting in a dictionary of 370.5718 words, which is still quite impressive.
Maybe you could apply those changes.

I have updated according to your recommendations.


host '<IP_ADDRESS>' is cast to 'localhost'

Do you want to request a feature or report a bug?
Report a Bug
What is the current behaviour?
preact watch command doesn't work in Docker
If the current behaviour is a bug, please provide the steps to reproduce.
Use this Dockerfile :
FROM node:12.2.0-alpine as base
RUN npm install -g preact-cli
WORKDIR /app

and this docker-compose file:
version: "3.4"
services:

    app:
      build:
        context: .
      stdin_open: true
      tty: true
      ports :
        - "8080:8080"
      working_dir : /app

What is the expected behaviour?
When running  docker-compose run --service-ports app preact watch --host=<IP_ADDRESS>, the port should be exposed to the external network.
It's not the case because of this line :
https://github.com/developit/preact-cli/blob/533500309f982a2b03c6d49c977f7233ef561377/packages/cli/lib/lib/webpack/run-webpack.js#L46

you're saying it's unreachable externally?

Yes exactly.
It's a way to specify "any IPv4 address at all", and it's always used when opening public ports in Docker containers.
Create-react-app had the same kind of issue back then:
https://github.com/facebook/create-react-app/issues/137

Yeah, it has to remain a network address for docker / VM users. Co-worker pointed this out to me for PWA


Inherit rule

Rule to inherit rules from another library

Inherit rule should support pulling from URI

https://github.com/halcyon-tech/vscode-rpgle/blob/main/extension/server/src/providers/linter/index.ts#L171


Plan the next sprint : Signer, SDK, StarknetKit Connector, Dapp/Demo

We have identified a number of things to do as part of the coming sprint and before we make the repository public:

improve the documentation:

add a mdbook and a deployment to the github pages (this requires the account to be published)
document the plugin interface and create a simple howto guide to show how we can develop a simple plugin
explain the plan for the executor validators and how they fit with the validators (do not implement yet)

add more starknet forge tests
make the project public

This project is public with a doc on the github pages. we still need to improve but it will come with the development of SDKs


fix(go): opt out of directpath instead of opting in

Fixes #251

This fixes the linked issue only for Go, are fixes still required in other langs?

I believe all other langs have already been fixed, ref: #252, #256 .


Batch signature verification

/bench

/bench

We should put some benchmarks in schnorrkel for this so that we have a comparison.  Can I ask @DemiMarie-parity to fix those?

As discussed in https://github.com/dalek-cryptography/ed25519-dalek/pull/117 we seemingly need deterministic batch verification for ed25519 since you can craft invalid blocks that's invalid for only some validators using its current form.  We avoid this problem in schnorrkel by avoiding the cofactor.  Yay Decaf!

/bench

NikVolf deleted a comment from parity-benchapp
that was bench before #ab94831 where batching was effectively activated

Just for testing, I think it would be nice to see a version that "dispatches" the verification to a background thread. The background thread could just verify signature by signature. However, as this is done in parallel to the execution of the transaction. We may can get even a better performance than blocking at the end for batch verify.

Just for testing, I think it would be nice to see a version that "dispatches" the verification to a background thread. The background thread could just verify signature by signature. However, as this is done in parallel to the execution of the transaction. We may can get even a better performance than blocking at the end for batch verify.

For sr25519/ed25519 part, I'm thinking of maybe even better approach - figure out optimal batch size (it is variable afaik, so 100 tx can be more cheap to batch-verify per-tx than 200, for example - @burdges ?), and then send batch of optimal size to the background thread once it is reached. I think it will be more robust on low-tier machines and will cost less computing power.
For ECDSA yes, I will add what you are proposing

What happens when we don't reach this batch size? I think the batch size should be much smaller to make sure we really dispatch it multiple times.

What happens when we don't reach this batch size? I think the batch size should be much smaller to make sure we really dispatch it multiple times.

It will just block-verify with suboptimal batch size at the end. It will be suboptimal in terms of time than doing everything at the background immediately, but it means that block are very far from full, and we don't need to waste computing power to try to import them as fast as possible?

The whole work isn't required when we talk about the current, almost empty blocks :D This optimizations will just be really useful for full blocks.
In general I just wanted to know what would be the difference when we import in the background while we execute the transactions. Maybe it is total useless and don't bring that much.

The whole work isn't required when we talk about the current, almost empty blocks :D This optimizations will just be really useful for full blocks.

This is my point also, yes :)

In general I just wanted to know what would be the difference when we import in the background while we execute the transactions. Maybe it is total useless and don't bring that much.

I will use your approach for ed25519 (it's batching is buggy anyway) and make a benchmarking run just for that. I don't think it is useless, I think theoretical answer to that that it will effectively remove signature verification from the main pipeline and give time performance boost of ~20% instead of current 13%.

I filed https://github.com/w3f/schnorrkel/pull/54 to fix the benchmarks @burdges.

/bench ed25519

An auditor noticed nodes gossiping bad transactions consumes too much CPU.  Among the solutions is rate limiting gossiped transactions per gossip source.  If we know the gossip source, and can assume the source checked all signatures, then we can batch verify transaction signatures gossiped from the same source.  We require the Ed25519 batch_deterministic feature for this too.
We could benefit even more with other gossip messages signed by different nodes.  We might want a more general infrastructure for this, ala https://www.zfnd.org/blog/futures-batch-verification/

An auditor noticed nodes gossiping bad transactions consumes too much CPU. Among the solutions is rate limiting gossiped transactions per gossip source. If we know the gossip source, and can assume the source checked all signatures, then we can batch verify transaction signatures gossiped from the same source. We require the Ed25519 batch_deterministic feature for this too.
We could benefit even more with other gossip messages signed by different nodes. We might want a more general infrastructure for this, ala https://www.zfnd.org/blog/futures-batch-verification/

I'm not sure about the current implementation, but we should use the same reputation system as it is used for sync. If a node sends a transaction with an invalid signature, it should be instantly disconnected.

An auditor noticed nodes gossiping bad transactions consumes too much CPU.

Can I read this auditor report?

/bench ed25519

Finished benchmark for branch: nv-dynamic-extensions
Master: Wasm: 62.26 ms (+/- 0.14 ms)
Master: Native: 22.85 ms (+/- 0.11 ms)
Branch: Wasm: 56.60 ms (+/- 0.13 ms)
Branch: Native: 18.22 ms (+/- 0.08 ms)
Change: Wasm: -9.09%
Change: Native: -20.28%

as predicted @bkchr 😅

/bench import

Nice prediction. So, why should we use batching than? This results can just getting better, when we have transactions that are more expensive.

Nice prediction. So, why should we use batching than? This results can just getting better, when we have transactions that are more expensive.

I believe batching will have (almost) the same time saving if non-blocking, but also will consume less (3x) CPU.

I donno about optimal batch size really.  Isis had old benchmarks that said 100, but the batch size should've grown significantly when dalek later merged Pippenger multiscalar multiplication in https://github.com/dalek-cryptography/curve25519-dalek/pull/249
I'd think overly large batch sizes should only cause regressions in the cryptography, due to allocation and cache locality.  In schnorrkel, we could do streaming batch verification that avoids allocations and associated cache locality issues, but requires system randomness.

If we're verifying the whole block after we make it then I'd expect that ed25519 with the deterministic verifier works.  We'd need to keep verifying the whole block after creation though.

/bench import

Do we really need sr25519_batch_verify and ed25519_batch_verify. Couldn't that be done transparently by the host function in sr25519_verify and ed25519_verify?

Always batch-verify and fallback if no batching is registered? It is possible, and there is a fallback in batching function which verifies immediately.
But I sense some kind of footgun here. We call sr25519_verify and it returns ok, but we unaware that it has just batched the verification and no actual checks were done.

/bench import

/bench import

/bench ed25519

Do we really need sr25519_batch_verify and ed25519_batch_verify. Couldn't that be done transparently by the host function in sr25519_verify and ed25519_verify?

Always batch-verify and fallback if no batching is registered? It is possible, and there is a fallback in batching function which verifies immediately.
But I sense some kind of footgun here. We call sr25519_verify and it returns ok, but we unaware that it has just batched the verification and no actual checks were done.

While you are right with the footgun, I'm not totally convinced. Don't we have the same footgun the other way around? Like we now call batch_verify in UncheckedExtrinsic and could also forget to call finish_batch_verify()?

Do we really need sr25519_batch_verify and ed25519_batch_verify. Couldn't that be done transparently by the host function in sr25519_verify and ed25519_verify?

Always batch-verify and fallback if no batching is registered? It is possible, and there is a fallback in batching function which verifies immediately.
But I sense some kind of footgun here. We call sr25519_verify and it returns ok, but we unaware that it has just batched the verification and no actual checks were done.

While you are right with the footgun, I'm not totally convinced. Don't we have the same footgun the other way around? Like we now call batch_verify in UncheckedExtrinsic and could also forget to call finish_batch_verify()?

Do we really need sr25519_batch_verify and ed25519_batch_verify. Couldn't that be done transparently by the host function in sr25519_verify and ed25519_verify?

Always batch-verify and fallback if no batching is registered? It is possible, and there is a fallback in batching function which verifies immediately.
But I sense some kind of footgun here. We call sr25519_verify and it returns ok, but we unaware that it has just batched the verification and no actual checks were done.

While you are right with the footgun, I'm not totally convinced. Don't we have the same footgun the other way around? Like we now call batch_verify in UncheckedExtrinsic and could also forget to call finish_batch_verify()?

Yeah, we can probably panic when extension is dropped and there are verifications still pending?

/bench import

NikVolf deleted a comment from parity-benchapp bot

Stupid me, benches are (still) using single-threaded task executor which just blocks

/bench ed25519

/bench import

Merge remote-tracking branch 'origin/master' into nv-dynamic-extensio…

ok, this seems to be the fastest variant 🤷♀

/bench import

/bench ed25519

/bench import-wasm

/bench import

Couldn't that be done transparently by the host function in sr25519_verify and ed25519_verify?

Yeah, we can probably panic when extension is dropped and there are verifications still pending?

done and done

/bench import/large

/bench import/large

As a rule, signature verification code should never return bool, but always some #[must_use] type like Result<(),()> or similar.  It's maybe okay if a routine only gets used internally, but even then bool makes auditing harder.

As a rule, signature verification code should never return bool, but always some #[must_use] type like Result<(),()> or similar. It's maybe okay if a routine only gets used internally, but even then bool makes auditing harder.
We'd some previous bug in substrate due to bool signature verification values being silently ignored, right?

Which bug?
You can put #[must_use] above every method to get a warning too.

@cheme I think I addressed all concerns/suggestions

I still think -> Result<(),..> sounds preferable to #[must_use] fn .. -> bool because verification failures would normally trigger some error path so exploit ? etc and you cannot forget the #[must_use] so easily.  I do not however know how substrate handles error types.  ;)

If you call ? the the must use is satisfied and we are not interested on the reason why the verification failed. We just need to know if it worked or not.


README: remove Homebrew-specific things.

[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.
[x] Have you successfully run brew tests with your changes locally?

Make this README more Linuxbrew focused.
Replaces broken https://github.com/Linuxbrew/brew/pull/426.

🚢?

As with #429, just waiting for @maxim-belkin's approval.

Closed in 59a33850248e81f2301c5e534a59a7d660ab3718
Thanks @MikeMcQuaid


Getting rid of scss fully

Since issue https://github.com/posativ/isso/pull/89 has been closed, isso does not require scss.
However, its documentation still requires the use of this CSS preprocessor:
$ make site
scss --no-cache docs/_static/css/site.scss docs/_static/css/site.css
make: scss: Command not found
make: *** [Makefile:56: docs/_static/css/site.css] Error 127

I'm closing this : I thought at first it would only be a matter of getting rid of the scss command in the Makefile, but now realizes that it would mean converting all the theme files in docs/_static/css, I cannot do this myself right now.
As it is neither a bug nor a feature, just a developper itch, and I managed to install scss on my machine : YAGNI


Change the background color

Hello I would like to change the background color, the green color but I can not find or I can change it.
Can you help me ? Thank you

Very entertaining


Added code to adapt algorithm to work with disks of different radii

It is worth noting I used the code in @laurelkeys pull request "Sample a uniformly random point from spawnCentre".

@chaseguyer Hi friend, your code does not work as intersections still happen. My guess after half-understanding is that there are not enough collision checks to weed-out overlaps.
https://imgur.com/a/jomFVBe
Seems @SebLague dropped these series. I will try to make my own version in which the grid is a hexgrid and each time an element is spawned, it will remove hex-cells and new circles that don't have hex-cells to consume will be considered to be overlapping. The code would attempt to generate the largest first, then medium circles and then fill it up with the smallest.
Alternatively, I was thinking of spawning physical 2D circles on top of eachother, then have them fall/collide in a rectangle and let the Physics2D system have them mix.
Alternatively, using voronoi + relaxation, then using the points as circle centers and the smallest radius that can fit in the polygon.


Added iPhone X Support

Addressed issue #14
I thinks is more a new feature than a issue.
Thanks for this awesome library!

+1


Add TP-Link L920-5

Device information

TP-Link L920-5 wifi LED strip
Home Assistant Device information

L920
by TP-Link
Firmware: 1.1.3 Build 231229 Rel.164316
Hardware: 1.0
Checklist

[X] I have created a single PR per device. When you have multiple submissions please create separate PR's.
[X] For lights - I have only included the gzipped files (*.gz), not the raw CSV files.
[X] For lights - I have provided a CSV file per supported color mode. Look that up in Developer Tools -> States

Additional info

Fixed bad point.

Thanks a lot!


CH376 USB playback support

hi @Edzelf, is the usb CH376 feature in v1 is also available? i didnt see the library includes in the pio ini

No, not yet.

would it be possible to use more native USB support?
I am olso interested in USB support to read files.
Best

Do you have any idea if and when you will be adding USB file support? it would be so awesome for me!

See version 1 of the radio.

Sure, I am trying to port the last usefull modifications you made on v2


pythonPackages.pycrypto: deprecate in favor of pycryptodome

Issue description
pycrypto is a package that hasn't been maintained for a long time now. A maintained fork and drop-in replacement is pycryptodome. Therefore, we should get rid of pycrypto and use pycryptodome.
Packages typically have pycrypto as install_requires either in setup.py or requirements.txt. Packages that have this should be patched.
https://pycryptodome.readthedocs.io/en/latest/src/introduction.html
Technical details
This applies to both  16.09 and master.

Can't we fake the package name or introduce a dummy package named pycrypto which pulls in pycryptodome and in turn the Crypto python module?

@fpletz Good idea. Working on that now

The dummy is now in master and not in stable. I suggest we wait and see before we backport this dummy, since most dependents don't have any test suites.

This breaks https://github.com/NixOS/nixpkgs/issues/21730

This also breaks Gajim with OTR and E2E.

Also, after digging a bit on what exactly went wrong, it seems that pycrptodome is not suitable as a drop-in replacement and it has a lot of backwards-incompatible changes, see for example https://github.com/Legrandin/pycryptodome/blob/57548f05eec372932f54b552fecf0f0f1d54d941/Changelog.rst#breaks-in-compatibility.
For example this is the exception that's now thrown with the gotr plugin:
Traceback (most recent call last):
  File "/nix/store/i64sgga5635s5y9jmrwdbgybsvh182l0-gajim-0.16.6/share/gajim/src/common/ged.py", line 93, in raise_event
    if handler(*args, **kwargs):
  File "/home/aszlig/.local/share/gajim/plugins/gotr/otrmodule.py", line 562, in handle_incoming_msg
    appdata={'thread':event.session.thread_id if event.session else None})
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/context.py", line 196, in receiveMessage
    self.handleQuery(message, appdata=appdata)
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/context.py", line 390, in handleQuery
    self.authStartV2(appdata=appdata)
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/context.py", line 398, in authStartV2
    self.crypto.startAKE(appdata=appdata)
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/crypt.py", line 259, in startAKE
    outMsg = self.ake.startAKE()
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/crypt.py", line 352, in startAKE
    self.encgx = AESCTR(self.r).encrypt(gxmpi)
  File "/home/aszlig/.local/share/gajim/plugins/gotr/potr/compatcrypto/pycrypto.py", line 52, in AESCTR
    return Cipher.AES.new(key, Cipher.AES.MODE_CTR, counter=counter)
  File "/nix/store/8lcqn954v2vm86rv7d4wpn2yr95gwvfb-pycryptodome-3.4.3/lib/python2.7/site-packages/Crypto/Cipher/AES.py", line 260, in new
    return _create_cipher(sys.modules[__name__], key, mode, *args, **kwargs)
  File "/nix/store/8lcqn954v2vm86rv7d4wpn2yr95gwvfb-pycryptodome-3.4.3/lib/python2.7/site-packages/Crypto/Cipher/__init__.py", line 130, in _create_cipher
    return modes[mode](factory, **kwargs)
  File "/nix/store/8lcqn954v2vm86rv7d4wpn2yr95gwvfb-pycryptodome-3.4.3/lib/python2.7/site-packages/Crypto/Cipher/_mode_ctr.py", line 319, in _create_ctr_cipher
    _counter = dict(counter)
TypeError: 'Counter' object is not iterable

@aszlig gajim master seems to have changed to pycryptodome and cryptography
https://dev.gajim.org/gajim/gajim/blob/master/requirements.txt
Quite frankly, I wouldn't trust any package that has been using an unsafe library for this long and still hasn't bothered to release a version that is using a safe solution.

@FRidh: Mhm, I'm giving it a shot trying to backport the changes from master to use pycryptodome.

@aszlig some test for python-axolotl also break with pycryptodome.

Yeah, which also is needed for Gajim and OMEMO. Also, backporting this is not so easy because first of all cherry-picking the right commits from master is quite difficult because both implementations use the same module names.
Aside from that, there are plugins that are relying on pycrypto. These however are downloaded from the gajim plugin repository so we don't have control over them. So in the long term we might want to package the plugins as well.
So, I'm not going to backport this because this is going to take a lot of time and I have more pressing issues to attend to at the moment.
But that aside: @FRidh: What exactly are the security issues of pycrypto? And what about patching those issues for pycrypto until every package that depends on it has switched over to pycryptodome?

@aszlig pycrypto was on the list in https://github.com/NixOS/nixpkgs/issues/21642
The issue https://lwn.net/Vulnerabilities/710478/
As I wrote on the roundup issue:

python-crypto or pycrypto isn't being maintained anymore. According to this comment the issue has been resolved on master already 3 years ago, but it hasn't been included in any release.
A maintained fork of pycrypto is pycryptodome. We should see if we can replace pycrypto with pycryptodome.

We didn't backport the pycrypto dummy, so its just on unstable where some packages are broken. In my opinion packages that still depend on pycrypto by the time we release 17.03 should be marked broken.

But that aside: @FRidh: What exactly are the security issues of pycrypto? And what about patching those issues for pycrypto until every package that depends on it has switched over to pycryptodome?

If someone feels like maintaining that package, feel free.

Commit 3b7193604f8b05dcb08afab8801203825bd966c1 breaks otr in poezio as well.

One solution is to add a pycrypto-original which packages can choose to use, This package would be marked as broken or insecure https://github.com/NixOS/nixpkgs/pull/22890. That means your users have to explicitly allow using pycrypto-original in order to use your package.

pycrypto-original can be marked as insecure now.

@grahamc we don't have a pycrypto-original yet. Right now pycrypto is a dummy that installs the mostly drop-in replacement pycryptodome. In certain cases this works, in others it doesn't. I proposed keeping the dummy, but adding a new pycrypto-original that would me marked insecure.

Sorry, I should have said more. I meant to say now that the PR is merged, this is a workable idea.

How should we proceed with this?
I was unable to find any non patched security issue with pycrypto (the last known security issue I found was patched by @fpletz in fe9373460c08c83449657b22c026c806bec92d21).
I created a pycrypto-original (in our nixpkgs fork) but I feel a bit uneasy marking it as insecure even there are no known security issues: https://github.com/mayflower/nixpkgs/blob/master/pkgs/development/python-modules/pycrypto-original/default.nix

@grahamc what is the purpose of the new "insecure" feature. Is it to only mark packages as insecure that are known to be insecure, with the claim being backed somehow. Or could we also use it for packages that we do not trust, because its a package for security but isn't maintained?

Task left to do:

[ ] check for every package whether they expect pycypto or can use pycryptodome instead of our dummy pycrypto package.

@optimus-p1509

Hey,
How do I work around with this?
I am kinda new to this.

Take a look at https://nixos.wiki/wiki/Poezio_OTR for a workaround. It basically does what was suggested at https://github.com/NixOS/nixpkgs/issues/21671#issuecomment-281951215

IMHO this issue can be closed in favour of package-specific issues for packages that don't like our pycryptodome shim thing. Disagreement is welcome and will be taken into account :)


System.IO.FileNotFoundException

When Even i try to detect it throws an error :- System.IO.FileNotFoundException: 'Cannot found pre-trained model, check all config files available (.cfg, .weights, .names)'
My Code
        var configurationDetector = new ConfigurationDetector();
        var config = configurationDetector.Detect(); //Error Throws here
        YoloWrapper yolo = new YoloWrapper(config);

Please send the names of your files...

Please send the names of your files...

Fixed By Installing New Version of Visual Studio and Yolo But i have a problem it ain't real time...


Frontend:Non-Interactive Mode

Non Interactive Mode Feature:
Description:

This feature has a function that translates the graph to make sure latest nodes of the graph are always shown.
The function was made in G6Graph file.
A store file was also created to store the interactive mode variable to be used between G6Graph and App.svelte components.
This feature also has a display message function which displays a message letting the user know of the time the last received node was pushed to the graph
This feature was implemented in the App.svelte where we used a time interval to check for when we stop receiving nodes.
The message with the time stamp is displayed on the screen after a minute of not receiving any new nodes.

Screenshots:
Display Message with Timestamp:

Testing:

Testing was done using the current event generator.

Some observations / thoughts:

just like the arrow key movement PR, I will ask to try to animate the camera following the graph: it will look a whole lot nicer.

the button to enable it seems backward: it is orange when disabled, I dont think its a good idea to enable this by default. but at least sync the button to be orange when the feature is enabled

Non interactive mode disables on input, this is clever but it also triggers when hovering a node: this might be too sensitive.

overall neat little feature, just need to get the feel right

So, I have now implemented the button to go from orange(non-interactive) to black (interactive), as for the animating it's created bugs in the feature while I tried implementing it so decided against it and lastly the hover trigger was a part of this feature which we demoed for Axis and they liked having it so I decided to not change that.

Ok I will look over it once more then in a bit

Thanks!


Expose Minio console in quickstart with Docker Compose

Add --console-address ":9001" to minio service command.
Resolves #133
Signed-off-by: Christian Kadner<EMAIL_ADDRESS>

can you add a version tag to the minio image? so that latest minio changes won't break our code immediately in the future.

can you add a version tag to the minio image? so that latest minio changes won't break our code immediately in the future.

Unfortunately, they don't really have succinct release tags, more like timestamps for new daily releases, i.e.
minio/minio:RELEASE.2021-07-08T19-43-25Z
For other widely used Docker images like python:3.9 or mysql:5.7 the tags follow a more clear semantic versioning which get updated with fixes but non-breaking API changes.
For minio we would be frozen in time. And I am not sure how long the soon to be old daily release tags will be available, although I do see 5 year old version.

The timestamp release tag should be good enough. KFP was also using the timestamp tag before they build their own license compliance minio image.

Unfortunately, they don't really have succinct release tags, more like timestamps for daily releases, i.e.

if you see a tag that has RELEASE word in it, the build is based on an official minio release rather than a nightly build. Minio hasn't put any version number in their images for several years already.

The timestamp release tag should be good enough

I added the latest minio image tag RELEASE.2021-07-12T02-44-53Z and tested it works ok

quick question: only the console is exposed to port 9001? All the other minio api calls still work on port 9000?

quick question: only the console is exposed to port 9001? All the other minio api calls still work on port 9000?

The minio API remains on port 9000

/lgtm

Thanks @Tomcli


Update Project.toml

@JuliaRegistrator register

Comments on pull requests will not trigger Registrator, as it is disabled. Please try commenting on a commit or issue.


Issue with changing default output repository location

When I have changed in [project folder]/.ceylon/config file location of output repository:
[repositories]
output=~/.ceylon/repo
For strange reason the Ceylon compiler copy content of folder ~/.ceylon/repo to [project folder]/home/[userName] (or to [project folder]/Users/[userName] on Windows).
I can delete this folder without any problems with build, but this behavior not expected and doesn't make sense.

I was not able to reproduce this. Perhaps the problem is that ~ is not understoof on Windows. Anyway, I think it would be better to discuss the problem on gitter.


Translated chinese messages to english

Just a fast translation to help everyone to understand what your code is doing.

Thx.


Update to latest Svelte and Sveltekit

Now that Svelte 5 is in Release Candidate mode, it would be great to update this to use the latest and also show am the proper way to serve different html pages. There also have been some changes with Electron 30 that would be great to reflect.
Let me know if you need any help.

I ended up making a fresh version here with a couple of different options serving the pages either with mainWindow.loadFile or using electron-serve: https://github.com/mhkeller/sveltekit-electron

Sorry neither of us have had a chance to get to this - feel free to submit a PR with updates and I'll take a look!


Add support for s390x cpu frequency

As could be seen from this issue, the unit test SysinfoTest.NominalCPUFrequency has always been failing on s390x machines. The reason for the failure is because there is no mechanism in abseil code to retrieve CPU time and frequency for s390x machines. I am adding the methods for s390x by referencing a similar method committed to another project, see here.

I am also not sure how likely this API will be used by s390x users, but the reason I would like to fix this is that Tensorflow uses this API in its code, see here, and that also leads to some test case failures with Tensorflow.

TensorFlow should not be doing that.
From https://abseil.io/about/compatibility:

Do not depend upon internal details. This should go without saying: if something is in a namespace or filename/path that includes the word “internal”, you are not allowed to depend upon it. It’s an implementation detail. You cannot friend it, you cannot include it, you cannot mention it or refer to it in any way.

Thanks for pointing out that, I did feel a little bit strange when seeing them using this API rather than another Tensorflow-native API to retrieve CPU frequency. I may raise an issue in the Tensorflow community about this.
As for the fix itself, I think I will still look into it a little bit to see if I could fix it. If it is too much trouble, I guess I will then close this PR since it is not a critical bug as you mentioned. Will that be okay if I leave it open now?

Do we need to keep this PR in open state?

Hi, I have raised the issue with Tensorflow and they have not responded yet, so I will follow up on it. Currently, I think it may not worth investing more time in fixing the cpu frequency issue since it is not actually used (or not supposed to be used) anywhere, so I will close this PR for now and I will consider reopening it if things have changed. Thank you.


Inventory drag and drop

It's very unintuitive to me to click to pick up and click to drop, though many games support this. Can a click and drag to move items be added?

Currently no plans for me to add this, as gamepad and mouse interaction use the same input map actions to keep things simple and flexible.
Would be happy to add/include if someone else wants to tackle this.


About Vibora and Python 3.7

Vibora server example:
from vibora import Vibora, Request
from vibora.responses import JsonResponse

app = Vibora()

@app.route('/')
async def home(request: Request):
    return JsonResponse({'hello': 'world'})

if __name__ == '__main__':
    app.run(debug=True, host='<IP_ADDRESS>', port=8000)

English comes from online translation, so you will feel strange when you read it.
Traceback:
Traceback (most recent call last):
  File "/home/gannicus/github/Aquila/server.py", line 1, in <module>
    from vibora import Vibora, Request
  File "/home/gannicus/anaconda3/envs/envibora/lib/python3.7/site-packages/vibora/__init__.py", line 7, in <module>
    from .server import *
  File "/home/gannicus/anaconda3/envs/envibora/lib/python3.7/site-packages/vibora/server.py", line 11, in <module>
    from .workers.handler import RequestHandler
  File "/home/gannicus/anaconda3/envs/envibora/lib/python3.7/site-packages/vibora/workers/handler.py", line 3, in <module>
    from socket import IPPROTO_TCP, TCP_NODELAY, SO_REUSEADDR, SOL_SOCKET, SO_REUSEPORT, socket
ImportError: cannot import name 'SO_REUSEPORT' from 'socket' (/home/gannicus/anaconda3/envs/envibora/lib/python3.7/socket.py)

got error message ,no input files:
writing manifest file 'vibora.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
building 'vibora.parsers.parser' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I. -I/git/vibora/vibora -I/usr/local/include/python3.7m -c vibora/parsers/parser.c -o build/temp.linux-x86_64-3.7/vibora/parsers/parser.o -O3
gcc: error: vibora/parsers/parser.c:
gcc: fatal error: no input files
compilation terminated.
error: command 'gcc' failed with exit status 1

$ pip3 install cython

$ pip3 install cython

thanks for reply. Installed Cython 0.29.7 and file not found problem remains in building 'vibora.parsers.parser' extension.

and did you followed instructions?

run build.py
then
python3 setup.py install

and did you followed instructions?

run build.py
then
python3 setup.py install

Solved ,thanks. The problem caused by I'm running setup.py directly.


Update translations

Verified that @aurambaj has signed the CLA. Thanks for the pull request!

+1


using FV alpha package to get Nancy.FluentValidation working

Prerequisites

[x] I have written a descriptive pull-request title
[x] I have verified that there are no overlapping pull-requests open
[x] I have verified that I am following the Nancy code style guidelines
[ ] I have provided test coverage for my change (where applicable)

Description
This pulls in FluentValidation RC2 package and adds a GetTypeInfo into Nancy.Validation.FluentValidation to make it compile.
An example of its usage has been added to the Kestrel demo.

Tiny change then it will be ready to be pulled

done


After connecting to remote server theres no tree view

To be able to see the tree view again you have to manually toggle the remote-ftp panel this is what its like after connecting. http://imgur.com/a/PYQ8g

Does the Show view on startup setting in the package preferences help?

Having that option on/off does not make a difference :/

Did you try: activate the option, completely close Atom and open the project again?

Yeah, still makes no difference also it does not start on startup unless i manually toggle it even with the option. Not sure if this is relavent but when i toggle it manually the first time on each reset of atom i get see error 433 not sure if that is to dow with this is did look but dint think it was.

Do you have the latest version of this package and Atom?
Is there any other package that could be interfering with tree view visibility? To help troubleshoot what's going on you could temporarily disable other packages.

Im using the latest version of atom and remote-ftp. With every package disabled but remote-ftp it still does it.

If you go to File then Stylesheet is there any special styling for .tree-view or .remote-ftp-view?
If you add this:
.tree-view {
  display: inline-block;
}

and save the file, does anything happen?

Identical report as https://github.com/mgrenier/remote-ftp/issues/643

Hello, adding:
`.tree-view {
  display: inline-block;
}

Dose nothing.`

hey, i have to this problem.
i see when i connect to another server all is fine.
why this happen? and what i can to do please?


How to personalized Utilization Labels (tspan)

First of all, good job for this amazing tool, it is very useful for me !
I would like to know how I can edit the tspan labels. For the moment there are only your random values when I check 'Utilization Labels' to 'Enabled' in the 'Settings'.
Is it possible to insert a value into a tspan via the .json config ?
For example :
"tspan" : "my_value"
Thanks in advance :)

Sorry for the slow reply, the github notice downed in my inbox. Short answer, yes you do that by registring your own datasource. That is the function that will be called when the networkmap will be refreshed. That will give you a chance to call your backend to fetch data and transform it. The utilization will be picked up by the link and displayed. Check the link bellow for an example function
https://github.com/otm/networkmap.js/blob/master/src/datasource.js#L32
When you have your data source you use need to load it by:
map = new networkMap.Graph('example2', {datasource: 'example'}).load('assets/weathermap/example2.json');
Please let me know if I missed something.

So I added an ajax request in this function. I get a value for each link from the json file and then I request my data source from another website with the ajax function.
And it works perfectly, thank you :D !


How to download the repository right before the deadline(Submission Repositry)?

Your script downloads the latest submissions for all the students.

[Q] Is there any way to download the submitted repository, which is right before the deadline?
Please note that --due-date option does not work if the its submitted after the deadline and it downloads the latest submission again.
Thank you for your valuable time and help.

The script downloads always downloads the entire repo, because even if a
student submitted late I would sometimes want to check what they did.
The "grade" command takes a due date as an argument. This loops through
every repo and creates a branch ("grading_branch" I think) off the last
commit before the due date.  Then, when you look through the repos you are
only seeing work that was committed before the deadline. This is probably
what you're looking for!
I put the student's grade and my comments in a file called "GRADE.txt" that
I would add to their repo and commit.  The "return" command then merges
this back into their main branch, and pushes everything back to GitHub.
Best,
Geoff
On Sun, Feb 18, 2018, 7:04 AM avatar-lavventura<EMAIL_ADDRESS>wrote:

Your script downloads the latest submissions for all the students.
[image: screen shot 2018-02-18 at 15 02 49]
https://user-images.githubusercontent.com/18537398/36351557-e7635464-14bc-11e8-83ee-b36fd66f7291.png
[Q] Is there any way to download the submission repository (Submitted
Repository), which is right before the deadline? Thank you for your
valuable time and help.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/geoffryan/classroom-util/issues/1, or mute the thread
https://github.com/notifications/unsubscribe-auth/AC6HE9UwX8HrSeFBUwrUF6VuxFfDaOL4ks5tWBHWgaJpZM4SJqn2
.

Thanks @geoffryan. It was __grading_branch, and the late submission remain as master.  The issue was: for example if deadline is now. A student did not submit any code before the deadline and he committed his code 1 hour late. The scripts pulls late submitted person's complete code under branch name master instead of __grading_branch. Hence, if a person's submission late, I do not want to pull any code of him.
But if another user submits before and after the deadline his only latest commit before the deadline pulled. (This is what I want, so there is no problem)
I have come up with this script, which moves late submissions (that is label as master branch under your script) into a folder called LATE.
cd $FOLDER/
for d in $FOLDER*/ ; do
    echo "$d"
    cd $d
    branchName=$(git rev-parse --abbrev-ref HEAD) #Branch name only
    if [ "$branchName" == "master" ]; then
	mv ../$d ../LATE
    fi
    cd ..
    echo '-----------------------------'
done

Ah, I am deeply sorry :( . I mismatched your code with this one (https://gist.github.com/robwhess/48547bf369ccf422cca78e5753b5a1c7#comments).
I think your code will not pull any code of someone if he/she has done a late submission.
I am trying to run your code but I was not able to make it work. Where should I find the classdata?
The way I run:
bash classroom.sh collect classroom.txt homeworkName


🐛 [cloud_firestore] "Can't merge user_target_xcconfig for pod targets" with Fluttertoast

Bug report
Describe the bug
This is a build conflict with Fluttertoast 8.0.9 that only occurs when trying to "flutter run" on iOS simulator or when doing a "pod install"
The pod errors are below. This also causes flutter run to fail, but a build can still succeed.
Based on the targets :
["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "fluttertoast"]
I think its a conflict between just FirebaseFirestore and fluttertoast. You may blame fluttertoast but I don't know what is at fault and I suspect it occurs with other packages and the Flutter/Firestore team has greater ability to resolve the conflict.
This happenned to me because I was using the Flutter catcher package which uses fluttertoast.
flutterfire/packages/cloud_firestore/cloud_firestore/example/ios pod install
cloud_firestore: Using Firebase SDK version '9.6.0' defined in 'firebase_core for FirebaseFirestore framework'
Analyzing dependencies
Pre-downloading: `FirebaseFirestore` from `https://github.com/invertase/firestore-ios-sdk-frameworks.git`, tag `9.6.0`
cloud_firestore: Using Firebase SDK version '9.6.0' defined in 'firebase_core'
firebase_core: Using Firebase SDK version '9.6.0' defined in 'firebase_core'
Downloading dependencies
Installing Firebase (9.6.0)
Installing FirebaseCore (9.6.0)
Installing FirebaseCoreDiagnostics (9.6.0)
Installing FirebaseCoreInternal (9.6.0)
Installing FirebaseFirestore (9.6.0)
Installing Flutter (1.0.0)
Installing GoogleDataTransport (9.2.0)
Installing GoogleUtilities (7.8.0)
Installing PromisesObjC (2.1.1)
Installing Toast (4.0.0)
Installing cloud_firestore (3.4.9)
Installing firebase_core (1.23.0)
Installing fluttertoast (0.0.2)
Installing nanopb (2.30909.0)
Generating Pods project
Integrating client project
Pod installation complete! There are 5 dependencies from the Podfile and 14 total pods installed.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

Steps to reproduce
Steps to reproduce the behavior:

Checkout https://github.com/firebase/flutterfire/tree/master/packages/cloud_firestore/cloud_firestore/example
resolve errors to get it to compile on current flutter
flutter pub add fluttertoast
cd ios && pod install
see error below

Expected behavior
no error
Sample project
https://github.com/firebase/flutterfire/tree/master/packages/cloud_firestore/cloud_firestore/example

Additional context
Add any other context about the problem here.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.3, on macOS 12.6 21G115 darwin-x64, locale en-AU)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.2)
[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.2)
[✓] VS Code (version 1.68.1)
[✓] Connected device (4 available)
[✓] HTTP Host Availability

• No issues found!

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.18.2
Flutter SDK 3.3.3
cloud_firestore_example 0.0.0

dependencies:
- cloud_firestore 3.4.9 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 1.23.0 [firebase_core_platform_interface firebase_core_web flutter meta]
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
- fluttertoast 8.0.9 [flutter flutter_web_plugins]
- http 0.13.5 [async http_parser meta path]

dev dependencies:
- drive 1.0.0-1.0.nullsafety.5 [test_api flutter_test flutter_driver stack_trace flutter]
- flutter_driver 0.0.0 [file flutter flutter_test fuchsia_remote_debug_protocol path meta vm_service webdriver archive async boolean_selector characters clock collection crypto matcher material_color_utilities platform process source_span stack_trace stream_channel string_scanner sync_http term_glyph test_api typed_data vector_math]
- test 1.21.4 [analyzer async boolean_selector collection coverage http_multi_server io js node_preamble package_config path pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]

dependency overrides:
- cloud_firestore_platform_interface 5.7.5 [collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 2.8.8 [cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_core 1.23.0 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_core_platform_interface 4.5.1 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 1.7.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]

transitive dependencies:
- _fe_analyzer_shared 47.0.0 [meta]
- analyzer 4.7.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- archive 3.3.0 [crypto path]
- args 2.3.1
- async 2.9.0 [collection meta]
- boolean_selector 2.1.0 [source_span string_scanner]
- characters 1.2.1
- clock 1.1.1
- collection 1.16.0
- convert 3.0.2 [typed_data]
- coverage 1.5.0 [args logging package_config path source_maps stack_trace vm_service]
- crypto 3.0.2 [typed_data]
- fake_async 1.3.1 [clock collection]
- file 6.1.2 [meta path]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph]
- flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
- frontend_server_client 2.1.3 [async path]
- fuchsia_remote_debug_protocol 0.0.0 [process vm_service file meta path platform]
- glob 2.1.0 [async collection file path string_scanner]
- http_multi_server 3.2.1 [async]
- http_parser 4.0.1 [collection source_span string_scanner typed_data]
- io 1.0.3 [meta path string_scanner]
- js 0.6.4
- logging 1.0.2
- matcher 0.12.12 [stack_trace]
- material_color_utilities 0.1.5
- meta 1.8.0
- mime 1.0.2
- node_preamble 2.0.1
- package_config 2.1.0 [path]
- path 1.8.2
- platform 3.1.0
- plugin_platform_interface 2.1.3 [meta]
- pool 1.5.1 [async stack_trace]
- process 4.2.4 [file path platform]
- pub_semver 2.1.1 [collection meta]
- shelf 1.4.0 [async collection http_parser path stack_trace stream_channel]
- shelf_packages_handler 3.0.1 [path shelf shelf_static]
- shelf_static 1.1.1 [convert http_parser mime path shelf]
- shelf_web_socket 1.0.2 [shelf stream_channel web_socket_channel]
- sky_engine 0.0.99
- source_map_stack_trace 2.1.0 [path stack_trace source_maps]
- source_maps 0.10.10 [source_span]
- source_span 1.9.0 [collection path term_glyph]
- stack_trace 1.10.0 [path]
- stream_channel 2.1.0 [async]
- string_scanner 1.1.1 [source_span]
- sync_http 0.3.1
- term_glyph 1.2.1
- test_api 0.4.12 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
- test_core 0.4.16 [analyzer async args boolean_selector collection coverage frontend_server_client glob io meta package_config path pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
- typed_data 1.3.1 [collection]
- vector_math 2.1.2
- vm_service 9.0.0
- watcher 1.0.1 [async path]
- web_socket_channel 2.2.0 [async crypto stream_channel]
- webdriver 3.0.0 [archive matcher path stack_trace sync_http]
- webkit_inspection_protocol 1.2.0 [logging]
- yaml 3.1.1 [collection source_span string_scanner]

Thanks for the report. Using steps to replicate, I am seeing same behavior as reported:
Pod installation complete! There are 13 dependencies from the Podfile and 40 total pods installed.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "fluttertoast"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `Runner` to `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` or include the `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` in your build configuration (`Flutter/Release.xcconfig`).

[!] Your project does not explicitly specify the CocoaPods master specs repo. Since CDN is now used as the default, you may safely remove it from your repos directory via `pod repo remove master`. To suppress this warning please add `warn_for_unused_master_specs_repo => false` to your Podfile.
dhs@Dhss-MacBook-Pro ios %

Verified using previous and latest plugin version and with 9.5.0 and 9.6.0 sdk versions.

/cc @russellwheatley

Just to add some info, it is not only specific to fluttertoast, I got a similar error but it is conflicting with isar_flutter_libs
[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "isar_flutter_libs"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

[!] Can't merge user_target_xcconfig for pod targets: ["FirebaseFirestore", "AutodetectLeveldb", "Base", "WithLeveldb", "isar_flutter_libs"]. Singular build setting EXCLUDED_ARCHS[sdk=iphonesimulator*] has different values.

This isn't a crash, they are warnings.
If you're having trouble with your build, it will likely be a result of using the pre-compiled version of Firestore. This line:
pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => "9.6.0"

In that event, please add:
  target.build_configurations.each do |config|
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end

@russellwheatley interesting contribution. I can't confirm it works right now, but it doesn't seem necessary with XCode 13.4.1 & Flutter 3.0.5.

They are warnings, but they prevent the app from launching on the iOS simulator

@buzzware  Could you share your full logs, please?

Closing due to inactivity.


Is it possible to use provided spark?

Are there any ways to use provided Spark instead of downloading it on a notebook?
In my case,  install Jupyter on Dataproc where Spark package is provided.
It seems to be possible if SPARK_HOME can be configured.

I'd say this is the most common deployment type (i.e. Spark being provided by the container) for businesses.

@aishfenton I agree… Yet this poses a number of challenges.
When running spark calculations from the kernel, it acts as the driver. Its classpath is the one of almond, plus the user-added dependencies. If one relies on a spark distribution, the classpath of the executors corresponds to jars in the spark distribution (plus those passed as spark.jars I think).
That means the classpath on the driver (almond) and the executors (spark distrib) don't necessarily match.
I ran in numerous issues even with (very) minor differences between the driver and executor classpaths (like two versions of the JAR of scala-library landing in the executor classpath, something like 2.11.2 and 2.11.7 IIRC, making List deserialization fail).
In the past, I circumvented that by using a vendored spark version as a Maven dependency from almond (rather than via a spark distribution), and only using spark configuration files from the spark distribution.
Yet @dynofu seems to have successfully used a spark distribution via ammonite-spark. I don't know how far he went though…

If one were to get a spark distribution working via ammonite-spark, what more would be needed to be able to get the same functionality surfaced within an almond kernel?


[QA] CLAUDIA-4290 OSMetadata Test Cases (2)

####Reviewers
@jesuspg
####Description
Minor FIX from previous PR (162)
REMOVE tags of fixed bugs
ADD Content representation test cases
####Tested
Locally

LGTM

LGTM


Broken Carousel Navigation

Bug is related to

[x] embla-carousel (core package)
[x] embla-carousel-react
[ ] embla-carousel-vue
[ ] embla-carousel-svelte
[ ] embla-carousel-autoplay
[ ] embla-carousel-auto-height
[ ] embla-carousel-class-names
[ ] embla-carousel-docs (documentation website)

Embla Carousel version

v7.0.5

Describe the bug

After creating an embla instance (following basic example on website), it appears as if the instance is not detecting all of the slides passed to it. It does not enable the next button and when trying to drag the slider, it only drags the first slide and then returns it to its original position. I recreated the bug using a vite app, but originally I saw the issue on a Gatsby app. This issue happens on react version 16.14.0 (Gatsby app) as well as react version 18.2.0 (vite app)

CodeSandbox

CodeSandbox

Steps to reproduce
There really are no steps to reproduce, just try and drag the slider and you will see it does not drag and the next button is not enabled
Expected behavior

Carousel should be draggable and next/prev buttons should be enabled/disabled if there is another slider to navigate to.

Additional context
https://user-images.githubusercontent.com/41240399/205138076-2adda6ef-aa40-426e-9567-242e775e2da2.mov

Hi @esanchezvz,
Thanks for your bug report. This is not a bug but rather caused by an incorrect HTML setup on your side. You're only rendering Slide 1 inside the container that will scroll the slides. The rest of the slides are siblings to the container and not children as they should be:

Best,
David

Huh, interesting. I'll take a look at whats going on. thanks for your quick response. Will close the issue then.


fatal error

[2024-12-18 11:19:49] flarum.ERROR: Illuminate\Database\Eloquent\ModelNotFoundException: No query results for model [Flarum\User\User]. in /home/site.com/public_html/vendor/illuminate/database/Eloquent/Builder.php:527
Stack trace:
#0 /home/site.com/public_html/vendor/flarum/core/src/User/UserRepository.php(40): Illuminate\Database\Eloquent\Builder->firstOrFail()
#1 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(42): Flarum\User\UserRepository->findOrFail()
#2 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(33): Msc\ChatGPT\ClientProvider->getAgent()
#3 /home/site.com/public_html/vendor/illuminate/container/Container.php(873): Msc\ChatGPT\ClientProvider->Msc\ChatGPT{closure}()
#4 /home/site.com/public_html/vendor/illuminate/container/Container.php(758): Illuminate\Container\Container->build()
#5 /home/site.com/public_html/vendor/illuminate/container/Container.php(694): Illuminate\Container\Container->resolve()
#6 /home/site.com/public_html/vendor/illuminate/container/Container.php(609): Illuminate\Container\Container->make()
#7 /home/site.com/public_html/vendor/illuminate/container/Container.php(277): Illuminate\Container\Container->rebound()
#8 /home/site.com/public_html/vendor/illuminate/container/Container.php(388): Illuminate\Container\Container->bind()
#9 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(33): Illuminate\Container\Container->singleton()
#10 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(36): Msc\ChatGPT\ClientProvider->boot()
#11 /home/site.com/public_html/vendor/illuminate/container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#12 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#13 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#14 /home/site.com/public_html/vendor/illuminate/container/Container.php(653): Illuminate\Container\BoundMethod::call()
#15 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(290): Illuminate\Container\Container->call()
#16 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(273): Flarum\Foundation\Application->bootProvider()
#17 [internal function]: Flarum\Foundation\Application->Flarum\Foundation{closure}()
#18 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(272): array_walk()
#19 /home/site.com/public_html/vendor/flarum/core/src/Foundation/InstalledSite.php(151): Flarum\Foundation\Application->boot()
#20 /home/site.com/public_html/vendor/flarum/core/src/Foundation/InstalledSite.php(82): Flarum\Foundation\InstalledSite->bootLaravel()
#21 /home/site.com/public_html/vendor/flarum/core/src/Http/Server.php(59): Flarum\Foundation\InstalledSite->bootApp()
#22 /home/site.com/public_html/vendor/flarum/core/src/Http/Server.php(36): Flarum\Http\Server->safelyBootAndGetHandler()
#23 /home/site.com/public_html/public/index.php(26): Flarum\Http\Server->listen()
#24 {main}
[2024-12-18 11:19:49] flarum.ERROR: Illuminate\Database\Eloquent\ModelNotFoundException: No query results for model [Flarum\User\User]. in /home/site.com/public_html/vendor/illuminate/database/Eloquent/Builder.php:527
Stack trace:
#0 /home/site.com/public_html/vendor/flarum/core/src/User/UserRepository.php(40): Illuminate\Database\Eloquent\Builder->firstOrFail()
#1 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(42): Flarum\User\UserRepository->findOrFail()
#2 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(33): Msc\ChatGPT\ClientProvider->getAgent()
#3 /home/site.com/public_html/vendor/illuminate/container/Container.php(873): Msc\ChatGPT\ClientProvider->Msc\ChatGPT{closure}()
#4 /home/site.com/public_html/vendor/illuminate/container/Container.php(758): Illuminate\Container\Container->build()
#5 /home/site.com/public_html/vendor/illuminate/container/Container.php(694): Illuminate\Container\Container->resolve()
#6 /home/site.com/public_html/vendor/illuminate/container/Container.php(609): Illuminate\Container\Container->make()
#7 /home/site.com/public_html/vendor/illuminate/container/Container.php(277): Illuminate\Container\Container->rebound()
#8 /home/site.com/public_html/vendor/illuminate/container/Container.php(388): Illuminate\Container\Container->bind()
#9 /home/site.com/public_html/vendor/muhammedsaidckr/flarum-chatgpt/src/ClientProvider.php(33): Illuminate\Container\Container->singleton()
#10 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(36): Msc\ChatGPT\ClientProvider->boot()
#11 /home/site.com/public_html/vendor/illuminate/container/Util.php(40): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()
#12 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure()
#13 /home/site.com/public_html/vendor/illuminate/container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod()
#14 /home/site.com/public_html/vendor/illuminate/container/Container.php(653): Illuminate\Container\BoundMethod::call()
#15 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(290): Illuminate\Container\Container->call()
#16 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(273): Flarum\Foundation\Application->bootProvider()
#17 [internal function]: Flarum\Foundation\Application->Flarum\Foundation{closure}()
#18 /home/site.com/public_html/vendor/flarum/core/src/Foundation/Application.php(272): array_walk()
#19 /home/site.com/public_html/vendor/flarum/core/src/Foundation/InstalledSite.php(151): Flarum\Foundation\Application->boot()
#20 /home/site.com/public_html/vendor/flarum/core/src/Foundation/InstalledSite.php(82): Flarum\Foundation\InstalledSite->bootLaravel()
#21 /home/site.com/public_html/vendor/flarum/core/src/Http/Server.php(59): Flarum\Foundation\InstalledSite->bootApp()
#22 /home/site.com/public_html/vendor/flarum/core/src/Http/Server.php(36): Flarum\Http\Server->safelyBootAndGetHandler()
#23 /home/site.com/public_html/public/index.php(26): Flarum\Http\Server->listen()
#24 {main}

The exception throwing part of this error will be fixed. However, this happens because of the user id you entered in the plugin settings. If the user id you entered does not exist, this error is thrown among registered users.


add method to create downsampled version of cog

Codecov Report

Merging #63 into read-point will decrease coverage by 0.06%.
The diff coverage is 91.66%.

@@              Coverage Diff               @@
##           read-point      #63      +/-   ##
==============================================
- Coverage       95.70%   95.64%   -0.07%
==============================================
  Files              11       11
  Lines             792      804      +12
==============================================
+ Hits              758      769      +11
- Misses             34       35       +1

Impacted Files
Coverage Δ

aiocogeo/cog.py
97.45% <91.66%> (-0.48%)
:arrow_down:

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 85b385d...7794c45. Read the comment docs.


Nav2 toNamed deletes the history making back button skip previous routes

Describe the bug
Nav2 Get.rootDelegate.toNamed seems to remove the routing history
**Reproduction code
I have the route setup as follows:
abstract class Routes {
  Routes._();

  static const AUTH = _Paths.AUTH;
  // /auth/phone
  static const AUTH_PHONE_SIGNIN = _Paths.AUTH + _Paths.AUTH_PHONE_LOGIN;
  // /auth/phoneVerification
  static const AUTH_PHONE_VERIFY = _Paths.AUTH + _Paths.AUTH_PHONE_VEIFY;
}

abstract class _Paths {
  static const String AUTH = '/auth';
  static const String AUTH_PHONE_LOGIN = '/phone';
  static const String AUTH_PHONE_VEIFY = '/phoneVerification';
}

static final routes = [
    GetPage(
        name: '/',
        page: () => RootView(),
        binding: RootBinding(),
        participatesInRootNavigator: true,
        preventDuplicates: true,
        children: [
          // Auth related
          GetPage(
              name: _Paths.AUTH,
              page: () => LoginView(),
              binding: LoginBinding(),
              children: [
                GetPage(
                    name: _Paths.AUTH_PHONE_LOGIN,
                    page: () => PhoneSignInView(),
                    binding: PhoneAuthBinding()),
                GetPage(
                    name: _Paths.AUTH_PHONE_VEIFY,
                    page: () => PhoneVerificationView(),
                    binding: PhoneAuthBinding())
              ]),
  ];

class RootView extends GetView<RootController> {
  @override
  Widget build(BuildContext context) {
    return GetRouterOutlet.builder(
      builder: (context, delegate, current) {
        final title = current?.location;
        return Scaffold(
          resizeToAvoidBottomInset: false,
          appBar: AppBar(
            title: Text(title ?? ''),
            centerTitle: true,
          ),
          body: GetRouterOutlet(
            initialRoute: Routes.AUTH,
          ),
        );
      },
    );
  }
}

LoginView contains a button when clicked will navigate to PhoneSignInView which asks users for their phone numbers. After verify user's phone number, it navigates to PhoneVerificationView by Get.rootDelegate.toNamed(Routes.AUTH_PHONE_VERIFY);
However, when I press the back button offered by AppBar on the PhoneVerificationView, it doesn't go back the PhoneSignInView, instead it goes straight back to LoginView
To Reproduce
Steps to reproduce the behavior:

Go to PhoneSignInView
Navigate to PhoneVerificationView with Get.rootDelegate.toNamed(Routes.AUTH_PHONE_VERIFY);
Press back button with AppBar

Expected behavior
Expect it to go back to PhoneSignInView
Screenshots
https://user-images.githubusercontent.com/15679461/129310394-2482ff99-4db7-428c-b81c-032141a267a3.mp4
Flutter Version:
Latest
Getx Version:
4.3.5
Describe on which device you found the bug:
Mi 9 Android 11
Minimal reproduce code
Provide a minimum reproduction code for the problem

Please, insert a reproduce code

@jonataslaw here: https://github.com/WangHansen/getx_test. I tried to repro from my code but the nested route just stopped working all together. Maybe you can take a look at that as well

are you using the last version?

are you using the last version?

Oh, I didn't realize there was a new version today. Let me try the latest version and get back to you! Thanks for the hard work!

are you using the last version?

Yes, I am on 4.3.8 for the repro codebase

Same code with 4.3.7:
https://user-images.githubusercontent.com/15679461/129408141-56103179-a0b1-4889-aa81-ad7eb601bb72.mp4
When upgraded to 4.3.8, navigation stops working:
https://user-images.githubusercontent.com/15679461/129408186-cbd4cb7f-4e4e-4b73-af8c-7c915fc37844.mp4

@jonataslaw Please roll back this, it's causing too many issues https://github.com/jonataslaw/getx/blob/master/lib/get_navigation/src/nav2/router_outlet.dart#L93
@WangHansen you need to override the logic for the back button in the app bar to call Get.rootDelegate.popRoute, since the default one calls the root navigator pop

@jonataslaw Please roll back this, it's causing too many issues https://github.com/jonataslaw/getx/blob/master/lib/get_navigation/src/nav2/router_outlet.dart#L93
@WangHansen you need to override the logic for the back button in the app bar to call Get.rootDelegate.popRoute, since the default one calls the root navigator pop

@ahmednfwela Thanks for letting me know, however, Get.rootDelegate.popRoute behave exactly the same as the system supplied back button where both pages are poped. Do I need to supply any params?

@WangHansen the pop mode needs to be set to history

@WangHansen the pop mode needs to be set to history

Thanks, it works now for the back button. But if I swipe right on screen (system back), it still behaves the old way. Is there some setting I can change for system level? Also, I am not quite sure if I understand the history mode very well. Can you point me to some docs that I can read through, thank!

For now the new navigation system is still incomplete with some things to solve, so it's not fully documented yet.
The system back should work normally though


PHP 5.6 support

The required version in composer.json is 5.6, but when I try to install it on legasy PHP 5.6 project I got an error from a dependent package "php-enum" which require PHP 7.3 or 8
Problem 1
    - myclabs/php-enum 1.8.3 requires php ^7.3 || ^8.0 -> your PHP version (5.6.30) does not satisfy that requirement.
    - myclabs/php-enum 1.8.3 requires php ^7.3 || ^8.0 -> your PHP version (5.6.30) does not satisfy that requirement.
    - Installation request for myclabs/php-enum 1.8.3 -> satisfiable by myclabs/php-enum[1.8.3].

Направих няколко теста.
с php 5.6 се ползва myclabs/php-enum (1.6.6) която е за 5.4+ и няма никакъв проблем с инсталацията.