Further simplify leader election by using an event based approach

We encapsulate Curator election logic using a generic Akka Stream source
of events: ElectedLeader, Standby(currentLeader). When not leader, the
curator stream polls for current leader changes and submits events as it
changes (before, we queried every HTTP request)
By using a generic stream interface, PsuedoElectionService becomes an
incredibly simple stream that simply emits a leader elected event when
it starts, and ends with a standby event when closed.
Testing also becomes easier with event production and event reacting
concerns better separated.
Further, we remove all uses of locks in ElectionService. These were
previously a source of deadlock, and a source of unseen complexity.
We add a generic Repeater BroadcastHub type stream component which
allows for late subscribers to get the last published event (or
exception).
Further, we previously had leader ready state concerns meddled with the
election service. Leader ready is the responsibility of
MarathonSchedulerService, and the concern has been moved there
appropriately. This helped improve the legibility and substantially
reduced the state dependencies of election service on
MarathonSchedulerService. ElectionService simply handles "am I elected"
and no longer needs to know anything about migration state.

retest this please

Tests are flaky

To help the review process, I rewrote the commit to exclude some tangential refactoring - namely, the events controller, and the leader proxy filter. It reduced the size of the commit by about 20%

Nice to note that the above failure was actually a case where we hit a brief period of inconsistency. The logs reveal that curator election stream did the right thing just moments later, so, in production, this would have worked as expected.

INFO [22:05:51 CuratorElectionStream$] starting leader latch
INFO [22:05:51 CuratorElectionStream$] retrying
INFO [22:05:51 CuratorElectionStream$] Leader won.
INFO [22:05:51 CuratorElectionStream$] starting leader latch
INFO [22:05:51 CuratorElectionStream$] Leader defeated. Current leader: host:1
INFO [22:05:51 CuratorElectionStream$] Closing leader latch
INFO [22:05:51 CuratorElectionStream$] Leader latch closed
INFO [22:05:51 CuratorElectionStream$] Leader defeated. Current leader: -
ERROR[22:05:51 CuratorElectionStream$] Error while getting current leader
org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /curator-1-curator/_c_be1844c7-c8ba-40e4-aff2-9db0289a2789-latch-0000000000
	at org.apache.zookeeper.KeeperException.create(KeeperException.java:111)
	at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
	at org.apache.zookeeper.ZooKeeper.getData(ZooKeeper.java:1212)
	at org.apache.curator.framework.imps.GetDataBuilderImpl$4.call(GetDataBuilderImpl.java:310)
	at org.apache.curator.framework.imps.GetDataBuilderImpl$4.call(GetDataBuilderImpl.java:299)
	at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:109)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.pathInForeground(GetDataBuilderImpl.java:296)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.forPath(GetDataBuilderImpl.java:287)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.forPath(GetDataBuilderImpl.java:34)
	at org.apache.curator.framework.recipes.leader.LeaderSelector.participantForPath(LeaderSelector.java:375)
	at org.apache.curator.framework.recipes.leader.LeaderSelector.getLeader(LeaderSelector.java:346)
	at org.apache.curator.framework.recipes.leader.LeaderLatch.getLeader(LeaderLatch.java:454)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$2.apply(CuratorElectionStream.scala:120)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$2.apply(CuratorElectionStream.scala:116)
	at mesosphere.marathon.metrics.HistogramTimer.blocking(HistogramTimer.scala:88)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter.mesosphere$marathon$core$election$CuratorElectionStream$CuratorEventEmitter$$emitLeader(CuratorElectionStream.scala:115)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply$mcV$sp(CuratorElectionStream.scala:99)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply(CuratorElectionStream.scala:91)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply(CuratorElectionStream.scala:91)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.run_aroundBody0(Future.scala:24)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable$AjcClosure1.run(Future.scala:1)
	at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
	at kamon.scala.instrumentation.FutureInstrumentation$$anonfun$aroundExecution$1.apply(FutureInstrumentation.scala:45)
	at kamon.trace.Tracer$.withContext(TracerModule.scala:58)
	at kamon.scala.instrumentation.FutureInstrumentation.aroundExecution(FutureInstrumentation.scala:44)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:23)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
INFO [22:05:51 CuratorElectionStream$] Leader defeated. Current leader: -
ERROR[22:05:51 CuratorElectionStream$] Error while getting current leader
org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /curator-1-curator/_c_732435f2-b384-4453-8389-e4886e060522-latch-0000000001
	at org.apache.zookeeper.KeeperException.create(KeeperException.java:111)
	at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
	at org.apache.zookeeper.ZooKeeper.getData(ZooKeeper.java:1212)
	at org.apache.curator.framework.imps.GetDataBuilderImpl$4.call(GetDataBuilderImpl.java:310)
	at org.apache.curator.framework.imps.GetDataBuilderImpl$4.call(GetDataBuilderImpl.java:299)
	at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:109)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.pathInForeground(GetDataBuilderImpl.java:296)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.forPath(GetDataBuilderImpl.java:287)
	at org.apache.curator.framework.imps.GetDataBuilderImpl.forPath(GetDataBuilderImpl.java:34)
	at org.apache.curator.framework.recipes.leader.LeaderSelector.participantForPath(LeaderSelector.java:375)
	at org.apache.curator.framework.recipes.leader.LeaderSelector.getLeader(LeaderSelector.java:346)
	at org.apache.curator.framework.recipes.leader.LeaderLatch.getLeader(LeaderLatch.java:454)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$2.apply(CuratorElectionStream.scala:120)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$2.apply(CuratorElectionStream.scala:116)
	at mesosphere.marathon.metrics.HistogramTimer.blocking(HistogramTimer.scala:88)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter.mesosphere$marathon$core$election$CuratorElectionStream$CuratorEventEmitter$$emitLeader(CuratorElectionStream.scala:115)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply$mcV$sp(CuratorElectionStream.scala:99)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply(CuratorElectionStream.scala:91)
	at mesosphere.marathon.core.election.CuratorElectionStream$CuratorEventEmitter$$anonfun$longPollLeaderChange$1.apply(CuratorElectionStream.scala:91)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.run_aroundBody0(Future.scala:24)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable$AjcClosure1.run(Future.scala:1)
	at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149)
	at kamon.scala.instrumentation.FutureInstrumentation$$anonfun$aroundExecution$1.apply(FutureInstrumentation.scala:45)
	at kamon.trace.Tracer$.withContext(TracerModule.scala:58)
	at kamon.scala.instrumentation.FutureInstrumentation.aroundExecution(FutureInstrumentation.scala:44)
	at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:23)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
INFO [22:05:51 CuratorElectionStream$] Leader won.
INFO [22:05:51 CuratorElectionStream$] Closing leader latch
INFO [22:05:51 CuratorElectionStream$] Leader latch closed
INFO [22:05:51 CuratorElectionStream$] Leader defeated. Current leader: -

^ these failures are unrelated to leader election; in all of the failures, reading the logs, leader election functioned as expected. The tests simply timed out.

Well, time to start considering that the failures must be related somehow; haven't seen a single success yet with this change. I'll have to dive in and look. Closing PR for now.


CSS not loaded with other ports

I've got a problem with using the 80 port, so I decide that using another port with editing the config file like '8000'.
But when I used another port, CSS not loaded, I think this problem reasons, is a routing problem in UI.

Yeah, you're correct. I just tried it and got the same problem. It's because the BaseURL and the serving port are different. If you change the View.BaseURI section of the config.json file to "http://localhost:8080/", the CSS should work as expected.

Thanks, it works fine.


DataDog JSON -> CloudFormation YAML

Hi!
Anyone thought building a DataDog JSON -> CloudFormation YAML parser?
There are some available but for TerraForm. example: https://github.com/intercom/datadog-to-terraform

Hi @sojjan1337,
This is not planned.
At the moment, our focus is to support as many endpoints as possible.
For feature request, I suggest you contact our support team. See the SUPPORT.md file for details.


Add locale input support for datetime and string pre-built functions

closes: #2691

Pull Request Test Coverage Report for Build 448522664

0 of 0   changed or added relevant lines in 0 files are covered.
38 unchanged lines in 15 files lost coverage.
Overall coverage decreased (-0.07%) to 84.298%

Files with Coverage Reduction
New Missed Lines
%

libraries/adaptive-expressions/src/builtinFunctions/formatEpoch.ts
1
84.62%

libraries/adaptive-expressions/src/builtinFunctions/formatNumber.ts
1
85.71%

libraries/adaptive-expressions/src/builtinFunctions/formatTicks.ts
1
86.11%

libraries/adaptive-expressions/src/builtinFunctions/sentenceCase.ts
1
81.25%

libraries/adaptive-expressions/src/builtinFunctions/startOfDay.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/startOfHour.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/startOfMonth.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/string.ts
1
83.87%

libraries/adaptive-expressions/src/builtinFunctions/titleCase.ts
1
82.35%

libraries/botbuilder-lg/src/templateExtensions.ts
1
85.0%

Totals

Change from base Build 443119412:
-0.07%

Covered Lines:
17688

Relevant Lines:
20036

💛  - Coveralls

Pull Request Test Coverage Report for Build 448522871

0 of 0   changed or added relevant lines in 0 files are covered.
30 unchanged lines in 14 files lost coverage.
Overall coverage decreased (-0.03%) to 84.337%

Files with Coverage Reduction
New Missed Lines
%

libraries/adaptive-expressions/src/builtinFunctions/formatEpoch.ts
1
84.62%

libraries/adaptive-expressions/src/builtinFunctions/formatNumber.ts
1
85.71%

libraries/adaptive-expressions/src/builtinFunctions/formatTicks.ts
1
86.11%

libraries/adaptive-expressions/src/builtinFunctions/sentenceCase.ts
1
81.25%

libraries/adaptive-expressions/src/builtinFunctions/startOfDay.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/startOfHour.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/startOfMonth.ts
1
87.88%

libraries/adaptive-expressions/src/builtinFunctions/string.ts
1
83.87%

libraries/adaptive-expressions/src/builtinFunctions/titleCase.ts
1
82.35%

libraries/botbuilder-lg/src/templateExtensions.ts
1
85.0%

Totals

Change from base Build 443119412:
-0.03%

Covered Lines:
17696

Relevant Lines:
20036

💛  - Coveralls


Feature request: change style of empty tabs

In GitLab by @Ustin on Apr 11, 2021, 06:56
Request to print names of empty tabs differently: grayed out or in italic.
Tabs in new NPC sheet allows for cleaner interface, but in my opinion have one drawback.
It's impossible to tell if creature have spells or inventory by looking at main screen; GM need to click on another tab to verify this and click on main tab to go back.
Two-three extra clicks per creature is not a big deal, of course. But it adds up over time.
Also would work amazingly with rules and active effects tabs: actors have a lot of items in them, and seeing if items have something attached to it without clicking on every tab would be amazing.
Example, you could tell creature doesn't have inventory or spells available:

Another example, you can tell shield block does not have any rules or active effects attached to it.

This has been implemented, closing.


chore: bdd-spring-1574160733 to 0.0.1

chore: Promote bdd-spring-1574160733 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


for icons, support referencing the bundle and the type name not just the type name

support icons for type within a given bundle, and prefer icon set in the item over one inherited

Looks good to me, I will merge it.

Can we add some tests?

I've updated tests in 956ad1552407295cbf4985327567b844fe4d5fe0 to include the new endpoint


Merge master into feature/BGE__bb-exp

This pull request was automatically generated because an automated merge hit a merge conflict

@bethbrains Can you delete feature/BGE__bb-exp or do we still need it for something?


S3 remove sync write (async only)

From @ddaspit's review:
Calling async methods from a synchronous method is not safe unless you are very careful. Since the S3 SDK doesn't provide synchronous implementations of their methods, I think it would be better to not provide an implementation for the Write method. I don't think we need it. We can simply throw a NotSupportedException.
https://github.com/sillsdev/machine/blob/2e10e0cd4a236c8479ef662154410c5a1f404315/src/SIL.Machine.AspNetCore/Services/S3WriteStream.cs#L42-L54
@ddaspit - is this called anywhere?  It is used to Initialize a BufferedStream which has a sync write - we would just need to be careful to not use it - and to have the other in-memory and local drive implementations not include a sync write/read.

Fixed in https://github.com/sillsdev/machine/pull/80


Set k in SUvolcanicEmissions to be integer

This addresses these warnings:
GOCART/Process_Library/GOCART2G_Process.F90:5787:27:

 5787 |             z1 = hghte(i,j,k-1) ! geopotential altitude at gridbox top
      |                           1
Warning: Legacy Extension: REAL array index at (1)
GOCART/Process_Library/GOCART2G_Process.F90:5824:20:

 5824 |             so2(i,j,k) = so2(i,j,k) + deltaSO2v*cdt*grav/delp(i,j,k)
      |                    1
Warning: Legacy Extension: REAL array index at (1)
GOCART/Process_Library/GOCART2G_Process.F90:5824:66:

 5824 |             so2(i,j,k) = so2(i,j,k) + deltaSO2v*cdt*grav/delp(i,j,k)
      |                                                                  1
Warning: Legacy Extension: REAL array index at (1)
GOCART/Process_Library/GOCART2G_Process.F90:5824:33:

 5824 |             so2(i,j,k) = so2(i,j,k) + deltaSO2v*cdt*grav/delp(i,j,k)
      |                                 1
Warning: Legacy Extension: REAL array index at (1)
GOCART/Process_Library/GOCART2G_Process.F90:5786:12:

 5786 |          do k = km, 1, -1
      |            1
Warning: Deleted feature: Loop variable at (1) must be integer

Do you want me to add something to the changelog?

Do you want me to add something to the changelog?

Yes, please if you don't mind. Also FYI in case of future PR: the PR merge needs to happen in the develop branch (we were able to move it manually) and labels ( 0-diff, non 0 diff, bug...) are also required during the checks. Thanks

Also FYI in case of future PR: the PR merge needs to happen in the develop branch (we were able to move it manually) and labels ( 0-diff, non 0 diff, bug...) are also required during the checks.

Sorry for targeting the wrong branch!
As outside contributor I can't apply labels. I was curious about the 0-diff meaning though. If it's about the program/tests producing the same results as before, I would expect this PR to be 0-diff?
Also the validate-YAML Workflow seems to be broken (I don't see an open issue though?).

Also FYI in case of future PR: the PR merge needs to happen in the develop branch (we were able to move it manually) and labels ( 0-diff, non 0 diff, bug...) are also required during the checks.

Sorry for targeting the wrong branch!
As outside contributor I can't apply labels. I was curious about the 0-diff meaning though. If it's about the program/tests producing the same results as before, I would expect this PR to be 0-diff?
Also the validate-YAML Workflow seems to be broken (I don't see an open issue though?).

I added the 0-diff label. No worries for the yaml test, Matt introduced a fix in a previous PR (we usually go in order for merging). My guess is as soon as we will merge the previous PR, we will be able to merge this one.

Thanks for merging this. Do you have an estimate of when the next stable release might be?

Thanks for merging this. Do you have an estimate of when the next stable release might be?

We merged quite a lot of PRs into develop, so @jrjoshi1 is going to perform several testing. Hopefully we'll have a release in the next coming weeks.


Deal with clashing style and plot options

A number of options exist both as plot and style, which results in issues when using .options. The clashing options are listed in https://github.com/ioam/holoviews/issues/2411

[x] Fixes https://github.com/ioam/holoviews/issues/2599
[x] Fixes https://github.com/ioam/holoviews/issues/2411
[x] Adds unit tests to avoid future option clashes

As I described in #2411 I've done one of three things with the clashes:

Bokeh HeatMap width and matplotlib Arrow/Text fontsize style options removed completely because they were not used.
Bokeh BoxWhisker and Bars width style option given an alias to allow eventual deprecation of clashing option.

I've also added unit tests to validate clashes on all backends, except those aliased in 2.

Ready to review/merge.

Looks good. Testing to ensure no new clashes are introduced is a good thing and the remaining changes seem sensible. We will want to deprecate the aliases and I think a new issue will be created to remind us to do that. Merging.


Be not correct

Tested the demo page with +32<PHONE_NUMBER>544525455 and it says that it is valid...

I'm fixing this today, I found the root cause of it, I'm adding more tests as well

Fixed in 1.0.1


Make draggable widgets set only one undo/redo state upon committing a value

Draggable number input sliders, color pickers, typeable text fields, and any other widgets we may have now or in the future should be able to send two types of values to the backend. An "update" and a "commit". The former should preview the change like it does now, while the latter should set a history state. Reference the text input widgets for something conceptually related (but not fully implemented end-to-end like this issue describes) regarding an update vs. a commit of a value change. That should use the same system.
Currently we set a history point for every change which wipes out history with tons of small changes caused by single-pixel drag movements in the widgets.

@zhiyuang please leave a comment in this issue.

The root cause is that right now always trigger Document.StartTransaction to save a history step. I have raised a PR to split update and commit. And then we only trigger Document.StartTransaction on commit action, not update action.

Thanks @zhiyuang. And for future reference, no need to give an elaborate comment, I just need any comment at all so GitHub lets me assign you the issue.


setState() of the App component closes the current scene if it is not the initial

Version

react-native-router-flux v4.2.0
react v16.9.0
react-native v0.61.4

Expected behaviour
Stay in the same scene after an update of the App state.
Actual behaviour
After updating the App state from another component, in a scene which is not the is  not the initial one, react-native-router-flux get me back to the initial scene. I don't have any error or warning prompted.
I use React Context API but the behaviour is exactly the same if I pass the App state directly to the Scene components.
It happens only if I call the setState() of the App component. setState() is passed in a callback to Children components.
Steps to reproduce
For non-obvious bugs, please fork this component, modify Example project to reproduce your issue and include link here.

Create a state in the App component,
Code a function which uses setState() in the App component
Put this function in the App state in order to pass it as a callback
Pass the App state to a component in another scene.
Call the callback from it.

The actual scene lets place to the initial one

I installed react navigation instead, roblem solved


feat(asset-calibration): workspace grouping

Pull Request
🤨 Rationale
User Story 2883034: [Grafana][BE][UI] Add new field support for Grafana
👩💻 Implementation
Added the necessary type and mapping, also updated how workspaces are sent to the query builder.
🧪 Testing
Added tests for the added grouping.

✅ Checklist

[ ] This PR has a title that follows the commit message format.

The name should be feature(asset): workspace grouping

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

v3.19.0
GitHub release

Your semantic-release bot :package::rocket:


Display menu popup when main menu button is pressed

This was fixed when #69 was merged.  Closing.


Add py.typed so that this package ships its typing information

As described in https://www.python.org/dev/peps/pep-0561/

Cool. Thanks! :cake: :tada: :rocket:


Show service log in web portal only

Do not expose the k8s dashboard to user.

this is a general question regarding to security and access control. close it for now.


[Bug] [Catalog] Data development FlinkSQL environment selects catalog, which is inconsistent with the catalog name in the catalog drop-down.

Search before asking

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

What happened
数据开发FlinkSQL环境选择catalog，与catalog下拉中的catalog名称不一致。
What you expected to happen
数据开发页面查询calalog接口返回名称的名称应从数据库中获取之前创建的FlinkSQLENV 的任务名称
How to reproduce

Anything else
No response
Version
dev
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

此 catalog 非彼 catalog


Reorder paw icons

attempt to close ticket #58
they make more sense this way
untested

https://github.com/ldoge/LDOGE/blob/6aa4f09d7b7109688f70a5809ca31e87e62337f1/src/qt/bitcoin.qrc#L13-L20
https://github.com/ldoge/LDOGE/blob/6aa4f09d7b7109688f70a5809ca31e87e62337f1/src/qt/transactiontablemodel.cpp#L443-L455

tested, works for me

to test without cleaning and fully rebuilding:
should be enough by removing qrc_bitcoin.cpp so it is forcefully created
if makefile is alright, that should be taken care by Make


⚠ Jenkins Plugins Artifactory has degraded performance

In 1972d3b, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1283 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 5eb88ae after 12 minutes.


Invalid geometry form the Intersection of two valid geometries

Expected behavior and actual behavior.
The Intersection of two valid Multipolygons (admittedley the second one has a strange shape) returns an invalid GeometryCollection.
I created a workaround but this still seams to me like an unexpected behaviour
Steps to reproduce the problem.
import sys

print('shapely.__version__:', shapely.__version__)
print('sys.platform:', sys.platform)

multi_polygon_one = shapely.wkt.loads('MULTIPOLYGON (((-78.04121599394897 -5.89365988248295, -79.46982124803172 -9.194972039429315, -31.771830845642597 -73.42037355623992, 47.69799040238911 -64.22540151681056, 79.46982124803172 9.194972039429311, 31.771830845642597 73.42037355623992, -47.69799040238911 64.22540151681056, -78.04121599394897 -5.89365988248295), (-44.94414807547773 60.517346154721146, 29.937481933257768 69.18144635507574, 74.88162621931913 8.664099761904156, 44.94414423125503 -60.51734611949454, -29.937485777480447 -69.18144631984912, -74.8816300087355 -8.664100200354595, -44.94414807547773 60.517346154721146)))')
multi_polygon_two = shapely.wkt.loads('MULTIPOLYGON (((-78.04121599394897 -5.89365988248295, -47.69799040238911 64.22540151681056, -79.22212318407406 -8.622575551695201, -78.04121599394897 -5.89365988248295)), ((79.46982124803172 9.194972039429311, 79.26313658326842 8.717351930944158, 79.46982124803172 9.194972039429313, 79.46982124803172 9.194972039429311)), ((-74.8816300087355 -8.664100200354591, -74.8816300087355 -8.66410020035459, -44.94414807547773 60.517346154721146, -74.8816300087355 -8.664100200354591)))')

print(multi_polygon_one.is_valid)
print(multi_polygon_two.is_valid)
print(multi_polygon_one.intersection(multi_polygon_two).is_valid)

result:
shapely.__version__: 2.0.4
sys.platform: win32
True
True
False

Operating system
Windows 11 Pro
Shapely version and provenance
2.0.4 installed from PyPI using pip

This is the same as JTS with OverlayNG's intersection, where the result is also an invalid geometry collection:

A trial-and-error approach setting small values for grid_size:
>>> res = {}
>>> for exp in range(12, 17):
...     grid_size = 10 ** -exp
...     try:
...         res[grid_size] = multi_polygon_one.intersection(multi_polygon_two, grid_size)
...     except Exception as err:
...         print(f"error with {grid_size=}: {err}")
...
error with grid_size=1e-15: TopologyException: Ring edge missing at -29.937485777480447 -69.181446319849115
>>> for grid_size, geom in res.items():
...     print(f"{grid_size=}: {geom.area=} {geom!r}")
...
grid_size=1e-12: geom.area=0.0 <MULTILINESTRING ((-78.041 -5.894, -79.222 -8.623), (79.263 8.717, 79.47 9.1...>
grid_size=1e-13: geom.area=0.0 <MULTILINESTRING ((-78.041 -5.894, -79.222 -8.623), (79.263 8.717, 79.47 9.1...>
grid_size=1e-14: geom.area=4.547473508864641e-13 <GEOMETRYCOLLECTION (POLYGON ((-47.698 64.225, -79.222 -8.623, -78.041 -5.89...>
grid_size=1e-16: geom.area=4.813371762797461e-13 <GEOMETRYCOLLECTION (POLYGON ((-47.698 64.225, -79.222 -8.623, -78.041 -5.89...>

so your best bet is to not use grid_size=1e-15 to avoid a TopologyException, but use grid_size=1e-16 to preserve the area of overlap between the polygons, or slightly coarser grid_size=1e-13 to return a simpler MultiLinestring instread. Unfortunately, not a straight-forward answer!

@dr-jts I'm not sure if there should be some internal attempts by IntersectionNG to try to get a valid result by increasing the grid size parameter, of if the user is expected to run-through a similar approach as above to get the desired result.


Question: What is happening to version 1.7?

More and more nuget packages depending on SQLite raw v2 which cannot be updated until this library also has a version for it. But the last update to it is now 7 month old.

I agree, compatibility issues are starting to creep in lately. any update on this?

I agree, also I don't see any commit on this repo related to version 1.7

Sorry about that. I'm prepping a release for today!

@praeclarum great, thanks! I think you can close this issue :)


Issue 36 main branch should always have a working version

I've updated the readme as @tomglee suggested. It is confusing that the version visible through the main branch is not the same as the version we current distribute. I have updated both streamlit links to be ow connected to the "new" streamlit account.
I've also merge changes from the development branch into main.
From now on I would leave main be and only use dev for the next versions until we have a working product. e.g. a app running on streamlit.io that stores its data on hydroshare.

@kbefus if you need help on how to do the review thing. Let me know or assign someone else :)

Yeah, I'm not sure what is meant by review - it'd be helpful to have an example session with you.

Yeah, I'm not sure what is meant by review - it'd be helpful to have an example session with you.

Sure! would be happy to do that. If you like you could also have a look at this video here: https://youtu.be/lSnbOtw4izI?t=44
How else from the group would be able to potentially step in as reviewer? Juan certainly. What about Xander?


Prediction is giving error of input shape in cell 28.

Dimensions must be equal, but are 40 and 50 for 'simplecontext_1/add' (op: 'Add') with input shapes: [64,40,40], [64,1,50].

This error occurs in lines 10 of the function simple_context() in cell 27.
Fix the code in lines 8 from
activation_energies = K.batch_dot(head_activations, desc_activations, axes=([2],[2]))
to
activation_energies = K.batch_dot(head_activations, desc_activations, axes=(2,2))
After you fix this error, you should also fix the code in lines 18 from
desc_avg_word = K.batch_dot(activation_weights, desc_words, axes=([2],[1]))
to
desc_avg_word = K.batch_dot(activation_weights, desc_words, axes=(2,1))

@taoyafan Bro Thanx you are awesome buddy


Clone failed

Hi, I want to report an issue regarding installation with your plugin, I got a clone failed error message like below:
fatal: could not read Username for 'https://github.com': terminal prompts disabled

I use Lazy for my plugin manager.

Hi @kobamkode, this plugin has no interaction with Git beyond normal installation. It sounds like it's likely to be a config issue with your Git setup.
Do you have any other plugins configured, and do they work as expected? If they do, please provide a minimal reproduction of your config displaying the problem.

Hi! thanks for super fast replay, yes you're right and I apologize to post this issue 🙏 . The installation is run smooth now. Thank you very much.


[Cosmos] fix strictness issue in src/extractPartitionKey.ts

Our goal is to remove strict: false from tsconfig.json in order to fulfill https://github.com/Azure/azure-sdk-for-js/issues/5276. I plan to do so by opening a PR with fixes per file.

Yielding to the cosmos team to fix this.


This line throws han error: Parse Error: syntax error, unexpected '['  on PHP 5.6

https://github.com/gesdinet/JWTRefreshTokenBundle/blob/7df93af1466703af7f50d6f6dcee41d3f7883a63/DependencyInjection/Compiler/DoctrineMappingsCompilerPass.php#L31

I was trying in a new branch php 5.6 test, but everything seems to be OK.
https://travis-ci.org/gesdinet/JWTRefreshTokenBundle/jobs/433129651
Are you sure is this line? I mean this error looks like new array constructor syntax from php 7 $a = [] instead $a = array();

Hi! in my case the error was raised on cache:clear symfony command.


Ommer vs Uncle discussion

Describe the feature
It's just to create a discussion about changing Ommer to Uncle for clarity purposes (Also the word Ommer does not exist).
If this issue get's accepted it would be S-breaking as it requires changes on the table names. Related: https://github.com/paradigmxyz/reth/issues/3625
Additional context
For reference I add a discussion about it: https://github.com/ConsenSys/EthOn/issues/1
### Tasks
- [ ] Finish discussion
- [ ] Apply changes if required

Any feedback?


[VL] Support columnar table cache with count(1)

What changes were proposed in this pull request?
Supports columnar df.cache.count. It is a special case that the selected schema is empty.
How was this patch tested?
add test

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_3290_time.csv
log/native_master_09_27_2023_523395c22_time.csv
difference
percentage

q1
43.36
43.84
0.473
101.09%

q2
25.29
24.25
-1.038
95.90%

q3
37.71
37.31
-0.402
98.93%

q4
42.70
41.10
-1.606
96.24%

q5
69.20
70.67
1.467
102.12%

q6
4.98
7.07
2.089
141.93%

q7
86.47
83.62
-2.856
96.70%

q8
80.84
82.10
1.263
101.56%

q9
118.36
116.36
-1.997
98.31%

q10
42.50
46.38
3.877
109.12%

q11
19.33
18.95
-0.378
98.04%

q12
29.22
25.24
-3.984
86.37%

q13
50.12
50.58
0.464
100.93%

q14
16.79
16.28
-0.510
96.96%

q15
26.50
27.18
0.676
102.55%

q16
15.87
16.28
0.406
102.56%

q17
121.33
120.13
-1.197
99.01%

q18
161.49
161.84
0.349
100.22%

q19
10.84
12.16
1.318
112.16%

q20
22.94
28.31
5.377
123.45%

q21
235.95
239.00
3.052
101.29%

q22
16.22
15.72
-0.502
96.91%

total
1278.01
1284.35
6.341
100.50%


-Filter parameter is a String, not a ScriptBlock

The -Filter parameter is described here with Backus-Naur form stating that it should be enclosed in curly braces.  However, that causes issues because something enclosed by curly braces in PowerShell is a ScriptBlock literal, yet the -Filter parameter actually accepts a value of type String.  This data type mismatch will cause problems with variable expansion and is, simply put, inherently less robust than using a String.  It's very easy to mistakenly create a ScriptBlock filter which does not expand correctly.
For a simple example taken from StackOverflow https://stackoverflow.com/a/44184818, these work:
Get-ADUser -Filter "sAMAccountName -eq ""$SamAc"""
Get-ADUser -Filter "sAMAccountName -eq `"$SamAc`""
Get-ADUser -Filter "sAMAccountName -eq '$SamAc'"
Get-ADUser -Filter ('sAMAccountName -eq "' + $SamAc + '"')

This also works:
Get-ADUser -Filter { SamAccountName -eq $SamAC }

But these do not:
Get-ADUser -Filter { SamAccountName -eq "$SamAC" }
Get-ADUser -Filter { SamAccountName -eq '$SamAC' }

This will also fail:
$User = [PSCustomObject]@{ SamAccountName = $SamAC }
Get-ADUser -Filter { SamAccountName -eq $User.SamAccountName }

This will work:
$User = [PSCustomObject]@{ SamAccountName = $SamAC }
Get-ADUser -Filter "SamAccountName -eq '$($User.SamAccountName)'"

Even worse, many of these "fail" states for the ScriptBlock literal will result in comparisons that will either always be true or always be false and will not throw terminating errors.  Indeed, they will silently succeed!

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

ID: c0b9f4db-305b-847a-1ab6-ad3b547a91f7
Version Independent ID: a626e689-b2ba-6a11-c17b-9f1fd0e565cd
Content: Get-ADUser (addsadministration)
Content Source: docset/windows/addsadministration/get-aduser.md
Service: unspecified
GitHub Login: @brianlic-msft
Microsoft Alias: brianlic

Interestingly, while this fails with the error "Get-ADUser : Property: 'SamAccountName' not found in object of type: 'System.Management.Automation.PSCustomObject'.":
$User = [PSCustomObject]@{ SamAccountName = $SamAC }
Get-ADUser -Filter { SamAccountName -eq $User.SamAccountName }

This works:
$User = Get-ADUser -Identity $SamAC
Get-ADUser -Filter { SamAccountName -eq $User.SamAccountName }

So, however the filter described in about_ActiveDirectory_Filter works, it clearly doesn't work like PowerShell's parser.

This works for me:
$User = [PSCustomObject]@{ SamAccountName = $SamAC }
Get-ADUser -Filter "SamAccountName -eq '$($User.SamAccountName)'"

Please correct example 4:
PS C:\> Get-ADUser -Filter 'Name -eq "ChewDavid"' -SearchBase "DC=AppNC" -Properties "mail" -Server lds.Fabrikam.com:50000

Hello, @AikenBM could you please review PR 752, whether it makes the situation clear?
@jszabo98 , I think the example 4 is ok, as value (ChewDavid) is not a variable, both curly braces and quotes are works correctly. What do you think?
Thank you

@MaratMussabekov I personally think example 4's filter should be a string, since that is the type, instead of depending on a script block being casted to a string.  Otherwise this teaches people to use something that won't work in all cases.  Quoting in filters seem to be a trial an error kind of thing.  For example, variables don't need to be quoted at all inside a single quoted filter:
get-aduser -filter 'name -like $user'

By the way, a "not null" example would be nice to include:
get-aduser -filter 'accountlockouttime -notlike "*"'

Or a "not member of" (parentheses seem to be optional, but normally required outside of filters).  -neq won't work since memberof is an array.
get-aduser -filter '-not (memberof -eq "foo")'

** Otherwise this teaches people to use something that won't work in all cases.**
Dear @jszabo98 , I do not think that using curly braces is somehow incorrect: both curly braces and quotes works, as long as PowerShell syntax is correct. More details here Filters with PowerShell Active Directory Module Cmdlets
About adding more examples: article is not dedicated to filtering, it is about Get-ADUser commandlet.
For filtering, there are some other articles:

Filters with PowerShell Active Directory Module Cmdlets
about_ActiveDirectory_Filter

Just because something is in the documentation, doesn't mean it's correct.  :)

@officedocsbot close

The  Backus-Naur form in the docs for -filter is wrong, and should be removed.  -Filter is a string, not a scriptblock.


[Bug]: User Activity Recognition not working

Is there an existing issue for this?

[X] I have searched the existing issues

In which area is the issue?
Location
In a specific sample?
useractivityrecog
What happened?
I tried to run the Activity Recognition Sample code on the One Plus mobile and also cloned the repo and found that it's not working. I am unable to get any update.
Relevant logcat output
No response
Code of Conduct

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

no response received yet.

Same problem on a OnePlus 7 (GM1903)


Support for node v6.0.0

Two line changes to support node v6.0.0, based on depreciations, listed here: https://nodejs.org/dist/latest-v6.x/docs/api/buffer.html#buffer_new_buffer_size

These tests are failing because they are not being tested with node v6.0.0, which was the point.  Would need to do a wrapper around the lines I changed for node >6.0.0, and original otherwise.


Make Z3 model more readable

Right now in:
https://github.com/draperlaboratory/cbat_tools/blob/7a8d7c6c42b9b0011fdbb38008c769655ec1e1f5/wp/lib/bap_wp/src/output.ml#L91-L93
We are just printing the Z3 model after running the checker. However, this model contains duplicates such as RDX0 and RDX014, making it difficult to read, i.e.:
(define-fun RDX0 () (_ BitVec 64)
    #x0000000000000000)
(define-fun RDX014 () (_ BitVec 64)
    #x0000000000000000)

We could remove duplicates by possibly using
val get_decls : model -> FuncDecl.func_decl list

and then look for the var in the env1, and match that var in env2. Use the corresponding var in the env2 to determine which value is the duplicate.

Handled in #78


Building with maven fails

I tried to build the code according to the instructions in the README:
root@b2d9ec09630d:~/GeoTriples# mvn package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building geotriples 1.1.4-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.dstovall:onejar-maven-plugin:jar:1.4.4 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.110 s
[INFO] Finished at: 2016-08-25T18:50:07+00:00
[INFO] Final Memory: 8M/228M
[INFO] ------------------------------------------------------------------------
[ERROR] Plugin org.dstovall:onejar-maven-plugin:1.4.4 or one of its dependencies could not be resolved: Failure to find org.dstovall:onejar-maven-plugin:jar:1.4.4 in http://onejar-maven-plugin.googlecode.com/svn/mavenrepo was cached in the local repository, resolution will not be reattempted until the update interval of onejar-maven-plugin.googlecode.com has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

Any ideas on what's going wrong here?

Thanks @retog!

Thanks @ktk and @retog

@dimitrianos please don't forget to merge https://github.com/LinkedEOData/GeoTriples/pull/3 :)


Not able to start video stream

When running react-carplay with the following command: sudo /home/pi/Desktop/Carplay.AppImage --no-sandbox the app will start but does not start the carplay stream.
Log output
spawning carplay {
  dpi: 240,
  nightMode: 0,
  hand: 0,
  boxName: 'nodePlay',
  width: 720,
  height: 480,
  fps: 60
}
directory found
device connected and ready
starting projection
parsing type:  8  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 08 00 00 00 f7 ff ff ff>
parsing 8 <Buffer e8 03 00 00>
Carplay message:  Support Wifi
unkown type:  13  with data::  <Buffer aa 55 aa 55 0d 00 00 00 0d 00 00 00 f2 ff ff ff>
unkown type:  14  with data::  <Buffer aa 55 aa 55 0d 00 00 00 0e 00 00 00 f1 ff ff ff>
unkown type:  18  with data::  <Buffer aa 55 aa 55 1c 00 00 00 12 00 00 00 ed ff ff ff>
parsing type:  8  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 08 00 00 00 f7 ff ff ff>
parsing 8 <Buffer e9 03 00 00>
Carplay message:  undefined
test message i
parsing type:  8  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 08 00 00 00 f7 ff ff ff>
parsing 8 <Buffer 07 00 00 00>
Carplay message:  undefined
test message
parsing type:  204  for length:  32 <Buffer aa 55 aa 55 20 00 00 00 cc 00 00 00 33 ff ff ff>
parsing 204 <Buffer 32 30 32 31 2e 31 32 2e 32 32 2e 31 36 34 37 43 41 59 00 00 00 00 00 00 00 00 00 00 00 00 00 00>
version number:  2<IP_ADDRESS>7CAY
unkown type:  25  with data::  <Buffer aa 55 aa 55 7e 00 00 00 19 00 00 00 e6 ff ff ff>
unkown type:  1  with data::  <Buffer aa 55 aa 55 1c 00 00 00 01 00 00 00 fe ff ff ff>
Socket connected. sending data...
enabling wifi
parsing type:  8  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 08 00 00 00 f7 ff ff ff>
parsing 8 <Buffer f2 03 00 00>
Carplay message:  undefined
test message r
auto connecting
parsing type:  8  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 08 00 00 00 f7 ff ff ff>
parsing 8 <Buffer f2 03 00 00>
Carplay message:  undefined
test message r
non-audio found
unknown type:  11 false false
non-audio found
unknown type:  11 false false
non-audio found
unknown type:  11 false false
parsing type:  2  for length:  4 <Buffer aa 55 aa 55 04 00 00 00 02 00 00 00 fd ff ff ff>
parsing 2 <Buffer 03 00 00 00>
no wifi avail, phone type:  3
data received { status: true }
sending unplugged event
data received { status: false }
parsing type:  4  for length:  0 <Buffer aa 55 aa 55 00 00 00 00 04 00 00 00 fb ff ff ff>

What OS are you running on? looks like it thinks the phone gets unplugged

I'm using a Raspberry Pi 3b with Raspberry Pi OS desktop Debian version 11.

I had similar recently when trying to run the pi on too low of a voltage, the pi could not handle powering phone and dongle.
closing for now due to no info, feel free to re open if you still have issues.


Output files outside of the public path directory

Laravel Mix Version: 1.2.0
Node Version: 8.1.2
NPM Version: 5.0.4
OS: LMDE 2 Betsy

Description:
I have posted this issue before but was pretty much disregarded and closed. I don't think it was understood what I was trying to achieve. I have a repository this time so that you can see exactly what I am trying to do.
I am trying to mix a file and output the resulting file outside of my public path. In a Laravel project am I taking a file from resources/assets/js/app.js and trying to output it to resources/assets/js/app2.js and in the same file grab a sass file from resources and output the result of mix.sass() to the public folder. So I am trying to output files to two different directories in the same mix file like you could do with Laravel Elixir. See the repo for a live example. I want the mix-manifest.json to go inside the public folder so setting the project root as the public path is not what I want.
My current workaround is having two mix files for outputting to resources and public respectively. Another workaround would be having the project root as the public path and then after compiling the assets, moving the mix-manifest.json to the public folder but then the directories would be pointing to stuff inside the resources folder which is not what I want either.
Steps To Reproduce:
A live example is available at this repository.
This issue is a duplicate of #951 but this is more in depth and hopefully you will understand what I want to achieve.

You can put the output path as a relative path. For example,
 mix.sass('resources/assets/css/sass/style.scss', '../resources/assets/css');
It worked for me.

That didn't work for me. It created a folder inside of my public folder called 'resources/assets/css'. It din't actually output the file in the resources folder.

mix.webpackConfig({ output: { path: __dirname + '/your/output/path' } })

@manlao You solved my issue, but now the mix-manifest.json persists to stay in the ./public folder.

+1 I’m using mix with Craft CMS and need to copy files to my templates dir which is outside of the public dir, while still needing to have mix-manifest go to public.

According to my Laravel project structure:
/laravel
/public_html

I've successfully configured the laravel-mix using the following code:
let mix = require('laravel-mix');
let path = require('path');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel application. By default, we are compiling the Sass
 | file for the application as well as bundling up all the JS files.
 |
 */

mix.setPublicPath(`..${path.sep}public_html`);

mix.js('resources/assets/js/app.js', 'js')
   .sass('resources/assets/sass/app.scss', 'css');


ElixirLS crash

Hey @luismiramirez 👋🏻
First of all, thank you for all your work on the project. I was looking to get some background information on this commit here:
https://github.com/appsignal/appsignal-elixir-phoenix/commit/4057c7e199aa06e77d1b5064688451cebe9c20fb
We are using the Elixir language server plugin for VSCode and are running into issues with the language server crashing and misapplying formatting to our code. It seems to be related to the commit above that resolved a mime dependency issues for elixir 1.9
We fixed our issue temporarily by changing the language server to run with MIX_ENV=dev, but wanted to better understand the original underlying issue to see if we could PR an update that works with both the defaults for the language server and solves the original issue.
Would you be able to provide some context and perhaps steps to recreate the original issue?

Hi @thephw, Thanks for the issue! Can you provide us with the error message you're seeing? You can also send it to<EMAIL_ADDRESS>if you mention this issue.
The commit you linked is there to get a working build on older Elixir versions. Mime is a dependency of plug and we can't use mime > 1 on these older Elixir versions. For this reason we've added this specific version lock for our test environments.

So the error we're getting is below.
Started ElixirLS v0.8.2
Elixir version: "1.13.4 (compiled with Erlang/OTP 24)"
Erlang version: "24"
ElixirLS compiled with Elixir 1.10.4 and erlang 22
MIX_ENV: test
MIX_TARGET:
[Warn  - 11:47:11 AM] ERROR! the application :mime has a different value set for key :types during runtime compared to compile time. Since this application environment entry was marked as compile time, this difference can lead to different behaviour than expected:

  * Compile time value was set to: %{}
  * Runtime value was not set

To fix this error, you might:

  * Make the runtime value match the compile time one

  * Recompile your project. If the misconfigured application is a dependency, you may need to run "mix deps.compile mime --force"

  * Alternatively, you can disable this check. If you are using releases, you can set :validate_compile_env to false in your release configuration. If you are using Mix to start your system, you can pass the --no-validate-compile-env flag

11:47:11.460 [error] Task #PID<0.276.0> started from #PID<0.123.0> terminating
** (stop) "aborting boot"
    (elixir 1.13.4) Config.Provider.boot/2
Function: &:erlang.apply/2
    Args: [#Function<1.84261748/1 in Mix.Tasks.Compile.All.load_apps/3>, [mime: nil]]

I'm confused looking at this. Our mime dependency locks to version ~> 1.0 should only apply on Elixir version 1.9 and lower. Your app reports it's using 1.13.4. It should not hit that code to use mime 1.0. Which makes me think that commit is not related.
I don't know what could be causing this error. I found this similar question on the Elixir forum, which makes me think of this change to compile_env, but the issue seems to originate from the mime package: https://github.com/elixir-plug/mime/blob/7ae92c29c56dd825b15e1fc657ce30cfd29019fc/lib/mime.ex#L116
Have you customized the mime types in your own app's config for a specific environment?

So we are not customizing the mime types. By default I believe that ElixirLS compiles with MIX_ENV=test and this issue disappears if you override to MIX_ENV=dev

So it's happening inside the VSCode extension. Let me see if I can recreate in a demo app and record a short loom video on how to get at the output. On the road for the next many days but should be able to get back to it this upcoming week.

I'm closing this issue. Let us know by commenting if it still happens with how we can reproduce it.


Azure opsman will not allow ssh access until the config is reset

Issue
When using install-pcf on Azure from the master branch and after opsman has been built, ssh access to the server is broken. The only way to get access is to log into the azure portal and "reset ssh configuration" for the opsman vm.
Context
Unable to ssh into opsman to interact with bosh if ports are locked down.
Expected result
SSH works as expected with the private key.
Current result
When running ssh terraform@opsman -i ~/.ssh/opsman_key.pub results in public key denied. Even when resetting through Azure portal, it never works. The only way to get access is to log into the azure portal and "reset ssh configuration" for the opsman vm.
Steps to Reproduce
Run install-pcf pipeline and attempt to ssh into opsman with the provided key. Reset configuration and try again.

The latest stable release comes from network.pivotal.io.  (https://network.pivotal.io/products/pcf-automation) if you don't have access you need to request this via your sales organization.  That being said, I think the problem is you are passing the public key .pub instead of private key.  This should match what is in the parameter pcf_ssh_key_priv: (https://github.com/pivotal-cf/pcf-pipelines/blob/master/install-pcf/azure/params.yml#L198)

I'm passing in both and they work and match. I've tested on other servers. Although, I have come to find out it's not related to this pipeline, but the image for opsman itself. I upgraded the opsman server and after the new image boots up, ssh no longer works, even when attempting to reset the key through Azure. There is a diff and there are a lot of options removed after resetting the configuration (which allows access via the original key).


Handling varying milli versions/dumps

Related: https://github.com/meilisearch/meilisearch/issues/2570

Initial Thoughts
Here are some initial thoughts based on preliminary research.
Dumps
Unfortunately, it appears dumps are not a good option.
The way meilisearch itself handles dumps is subpar (to say the least). However, this is not entirely their fault; the problem is rooted in the fact that different versions of dumps require different features/functionality. Thus, many dump conversion utilities are needed to read older dump versions (i.e. v1_to_v2, v2_to_v3, etc.).
Further, we do not know when a user of this package will update this package. Thus, it is impossible to know on a user's device when we should make a dump, which means you would have to make a dump after every write transaction. At that point, you might as well just have a mirrored data store of all documents using a different database.
Multiple Milli Versions
Packaging multiple versions of milli in this package seems like the current best option.
The idea: only include newer versions of milli (that break index format) into the project as required to reduce needed dev work and plugin size. If index format between milli versions is the same (perhaps for small releases or bug fixes), then we can simply do an update of the milli package version to include the new version (e.g. replace "=0.35.0" with "=0.35.1" below)!
Then, this package itself will have a reference to every milli version supported and its corresponding wrapper, so we can easily migrate between versions at-will. This should be possible with something like the following in Cargo.toml:
[dependencies]
milli_v1 = { package = "milli", version = "=0.35.0" }
milli_v2 = { package = "milli", version = "=0.36.0" }
milli_v3 = { package = "milli", version = "=1.0.0" }
# ...

We will also need to implement a wrapper for each version of milli; however, this should not be too much work as the milli APIs probably won't change that much. Mostly just a copy-paste.
With this approach, we will also need a milli_instance_settings.json file in each instance directory to store the current version of milli of each index so migrations can be done. This file will also need to store additional configuration, such as a map_size for each index.


Implement IAM attached group policies

37ae618
add model methods for iam attached group policies
3788e42
implement handlers for iam attached group policies
9f02a84
test attaching group policies
cdb1ebf
pep8 fixes
feb4616
implementing detach_group_policy

Coverage decreased (-0.2%) to 92.364% when pulling 353f8387a2926c0f3776992bdd657f084b9e3ae0 on JackDanger:jack/implement-attached-group-policies into 5bb6b98f6d0364543018b63b61c66e5813964cb9 on spulec:master.


HIVE-24715 Increase bucketId range (amagyar)

Currently the bucketId field is stored on 12 bits. When TEZ starts more tasks than 4095 it overflows.
The proposed solution is to let the bucket id overflow into the statement id. Depending on the maximum statement id (we  know that at compile time) we can dynamically allocate bits for the bucket id from the statement id field.
For example in a single statement operation only one bit is needed for the statement id and 11 extra bits can be allocated for the bucket id.
In case of a multi insert where the max statement id lets say 100 (0b000001100100), five extra bits can be allocated for the bucket Id.
Compaction ignores statement ids therefore the same buckets (delta_1_1_0/bucket_00904_0 and delta_1_1_178/bucket_00904_0) will be merged together after running a major compaction, so we won’t end up having more than 4096 files in the end.
After running an INSERT with 6000 parallel tasks we end up having 2 delta directories:
/warehouse/tablespace/managed/hive/cdr5bi/delta_0000039_0000039_0000
/warehouse/tablespace/managed/hive/cdr5bi/delta_0000039_0000039_0002

Where in the first we have buckets from 0 .. 4095 and in the second we have buckets from 0 .. 1903.
After running compaction we expect having a single base directory with buckets from 0 .. 4095.
/warehouse/tablespace/managed/hive/cdr5bi/base_0000039_v0003975

The same buckets from different statements are merged together.
See more info in the attached pdf in the Jira.

I think it could be useful to have a configuration property that could disable this behaviour. If I understand correctly it would be enough to not set maxstatementId in filesink when it is disabled, and it will fallback to the old way.

@pvargacl

I think it could be useful to have a configuration property that could disable this behaviour. If I understand correctly it would be enough to not set maxstatementId in filesink when it is disabled, and it will fallback to the old way.

Ok, I added a config with a default true value.


Add examples of usage to all --help output

e.g. on https://dclient.datasette.io/en/latest/aliases.html these would look better with examples:
Usage: dclient alias add [OPTIONS] NAME URL

  Add an alias

Options:
  --help  Show this message and exit.

Affected pages:

https://dclient.datasette.io/en/latest/aliases.html
https://dclient.datasette.io/en/latest/authentication.html
https://dclient.datasette.io/en/latest/queries.html


streams-settings: Fix toggle icon not updating.

This PR fixes a regression which was introduced in https://github.com/zulip/zulip/commit/a02937e3b4c589292ba83cbfed6f820f966bfd13 while we were removing icon-vector and replacing the same with font-awesome. We forgot to update the toggle icons from the JS file.

Testing Plan:
GIFs or Screenshots:
Before: -

After:

Merged, thanks @akashnimare!


noes v3 not found

I want to install neo on onePlus 3T, according to url : http://openboards.io/wp-content/uploads/2018/03/opeboards-neo-op3-3t-rom-install-guide.pdf
but, I cannot download neos_v3.zip
where could I dowanlod zip file?
thanks

NEOS3 is long out of date, you want NEOS8, found here, https://github.com/commaai/eon-neos


Add paste support to path bar

What's the Problem?
I cant paste a path in the path bar
Solution/Idea
Allow pasting
Alternatives

Priorities
No response
Files Version
No response
Windows Version
No response
Comments
No response

Fixed in <IP_ADDRESS>


Highlighting breaks with svg in HTML

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.92.1
OS Version: Windows 11

I was writing in vue and the highlighting seems to be glitched
Steps to Reproduce:
<template>
	<svg></svg
		>
</template>

<script lang="ts" setup>
//That doesn't work
</script>

<template>
	<svg></svg>
</template>

<script lang="ts" setup>
//That works
</script>

I can repro. Linking to https://github.com/microsoft/vscode/issues/202915, which is tracking all the issues that could be fixed by trying a new grammar


Update tests to work with Pester 5.2.0

Describe the bug
The Pester tests fails when using the latest version of the PowerShell module which is 5.2.0
To Reproduce
Steps to reproduce the behavior:

Run a PR without the -RequiredVersion 5.1.1 in the ..github\workflows\RunTests.yaml file, row 23.

Expected behavior
Run Write-Host 'Invoking Pester'
Invoking Pester
Starting discovery in 6 files.
Discovery finished in 837ms.
Running tests.
[+] D:\a\BicepPowerShell\BicepPowerShell\Tests\CompareBicepVersion.Tests.ps1 1.93s (535ms|698ms)
[+] D:\a\BicepPowerShell\BicepPowerShell\Tests\Install-BicepBuild.Tests.ps1 200ms (6ms|187ms)
[+] D:\a\BicepPowerShell\BicepPowerShell\Tests\InstalledBicepVersion.Tests.ps1 236ms (51ms|172ms)
[+] D:\a\BicepPowerShell\BicepPowerShell\Tests\ListBicepVersions.Tests.ps1 398ms (196ms|190ms)
[+] D:\a\BicepPowerShell\BicepPowerShell\Tests\Module.tests.ps1 898ms (543ms|282ms)
[-] TestBicep.Bicep CLI installed.Returns true when Bicep CLI is installed 103ms (100ms|2ms)
Expected $true, but got $false.
at TestBicep | Should -Be $true, D:\a\BicepPowerShell\BicepPowerShell\Tests\TestBicep.Tests.ps1:21
at , D:\a\BicepPowerShell\BicepPowerShell\Tests\TestBicep.Tests.ps1:21
Tests completed in 4.18s
Tests Passed: 30, Failed: 1, Skipped: 0 NotRun: 0
Error: Process completed with exit code 1.
Additional context
Add any other context about the problem here.

A work around for this bug has been implemented in #138. To fix the issue we need to update the tests to work with Pester 5.2.0.


Improvements for Change password dialog + logs added

Hi @smartguest
Adding some improvements with logging, styling for the change password dialog.
Please take a look.
Thanks :)
Attaching screenshot of updated dialog for reference:

Note: undefined profile properties seems related to RPC conversion, which Alex is working on.

It's usually nice to attach screenshots when changing UI.
Also - can this wait until after the other PR goes in? That's still being reviewed and the fewer other changes that get pushed into that the faster it can be completed.

Added screenshot.
I was looking into the undefined properties and figured this is related to the RPC conversion changes. It's fine to merge this small set of change in the main PR to make that effort complete with design improvements as well.


prisma2 lift save and prisma2 lift up hang upon migration

Reproduce:

Run prisma2 init and select GraphQL starter kit and TypeScript with local Postgres DB

Change User model to:
model User {
  id        String @default(cuid()) @id
  email     String @unique
  firstName String
  lastName  String
  posts     Post[]
}

Run prisma2 lift save

Lift is hanging on this screen:

After cancelling with ctrl+c, I run prisma2 lift up where the CLI hangs again:

I need to cancel with ctrl+c again to get back control over my terminal.

I am unable to reproduce this on a mac with<EMAIL_ADDRESS>binary version: 6159bf3a263921c3c28ee68e2c9e130b5a69c293
Can you please check the processes and make sure only one instance of Prisma2 is running?


[URGENT] Reducing our usage of GitHub Runners

Hi All: We have an ultimatum to reduce (drastically) our usage of GitHub Actions. Or our Continuous Integration will halt totally in Two Weeks. Here's what I'll implement within 24 hours for nuttx and nuttx-apps repos:

When we submit or update a Complex PR that affects All Architectures (Arm, RISC-V, Xtensa, etc): CI Workflow shall run only half the jobs. Previously CI Workflow will run arm-01 to arm-14, now we will run only arm-01 to arm-07. (This will reduce GitHub Cost by 32%)

When the Complex PR is Merged: CI Workflow will still run all jobs arm-01 to arm-14
(Simple PRs with One Single Arch / Board will build the same way as before: arm-01 to arm-14)

For NuttX Admins: Our Merge Jobs are now at github.com/NuttX/nuttx. We shall have only Two Scheduled Merge Jobs per day
I shall quickly Cancel any Merge Jobs that appear in nuttx and nuttx-apps repos. Then at 00:00 UTC and 12:00 UTC: I shall start the Latest Merge Job at nuttxpr. (This will reduce GitHub Cost by 17%)

macOS and Windows Jobs (msys2 / msvc): They shall be totally disabled until we find a way to manage their costs. (GitHub charges 10x premium for macOS runners, 2x premium for Windows runners!)
Let's monitor the GitHub Cost after disabling macOS and Windows Jobs. It's possible that macOS and Windows Jobs are contributing a huge part of the cost. We could re-enable and simplify them after monitoring.
(This must be done for BOTH nuttx and nuttx-apps repos. Sadly the ASF Report for GitHub Runners doesn't break down the usage by repo, so we'll never know how much macOS and Windows Jobs are contributing to the cost. That's why we need https://github.com/apache/nuttx/pull/14377)
(Wish I could run NuttX CI Jobs on my M2 Mac Mini. But the CI Script only supports Intel Macs sigh. Buy a Refurbished Intel Mac Mini?)

We have done an Analysis of CI Jobs over the past 24 hours:
https://docs.google.com/spreadsheets/d/1ujGKmUyy-cGY-l1pDBfle_Y6LKMsNp7o3rbfT1UkiZE/edit?gid=0#gid=0
Many CI Jobs are Incomplete: We waste GitHub Runners on jobs that eventually get superseded and cancelled

When we Half the CI Jobs: We reduce the wastage of GitHub Runners

Scheduled Merge Jobs will also reduce wastage of GitHub Runners, since most Merge Jobs don't complete (only 1 completed yesterday)

See the ASF Policy for GitHub Actions

One of the methods proposed by, if I remember correctly @btashton, is to replace many simple configurations  for some boards (mostly for peripherals testing) with one large jumbo config activating everything possible.
This won't work for chips with low memory, but it will save some CI resources anyway.

@raiden00pl Yep I agree. Or we could test a complex target like board:lvgl?

Here's another comment about macOS and Windows: https://github.com/apache/nuttx/pull/14377#issuecomment-2418914068

sorry, let me ask a dumb question.
what plan are we using? https://github.com/pricing
is apache paying for it?

what plan are we using? https://github.com/pricing

@yamt It's probably a special plan negotiated by ASF and GitHub? It's not mentioned in the ASF Policy for GitHub Actions: https://infra.apache.org/github-actions-policy.html

do you know if the macos/windows premium applies as usual?
the policy page seems to have no mention about it.

I find this "contract" a little strange. Why are all ASF Projects subjected to the same quotas? And why can't we increase the quota if we happen to have additional funding?

yea, i guess projects have very different sizes/demands.
(i feel nuttx is using too much anyway though :-)

...I'd rather use my own Mac Mini to execute the NuttX CI Tests, once a day?
Is there any merit in "farming out" CI tests to those with boards? I think there was a discussion about NuttX owning a suite of boards but not sure where that got to - and would depend on just 1 or 2 people managing it.

As an aside, is there a guide to self-running CI? As I work on a custom board it would be good for me to do this occasionally but I have noi idea where to start!

@TimJTi Here's how I do daily testing on Milk-V Duo S SBC: https://lupyuen.github.io/articles/sg2000a

@TimJTi Here's how I do daily testing on Milk-V Duo S SBC: https://lupyuen.github.io/articles/sg2000a

And I just RTFM...the "official" guide is here so I'll review both and hopefully get it working - and submit any tweaks/corrections/enhancements I find are needed to the NuttX "How To" documentation

[like]  Jerpelea, Alin reacted to your message:

From: Tim Hardisty @.>
Sent: Thursday, October 17, 2024 10:06:55 AM
To: apache/nuttx @.>
Cc: Subscribed @.***>
Subject: Re: [apache/nuttx] [URGENT] Reducing our usage of GitHub Runners (Issue #14376)
@ TimJTi Here's how I do daily testing on Milk-V Duo S SBC: https: //lupyuen. github. io/articles/sg2000a And I just RTFM. . . the "official" guide is here so I'll review both and hopefully get it working - and submit any tweaks/corrections/enhancements
@TimJTihttps://urldefense.com/v3/__https://github.com/TimJTi__;!!JmoZiZGBv3RvKRSx!8E0iWp2KKuEYOnSWqkP3whXAfsqbSXzh4AxpgBTpQ3ULEz9KJrgYsa30ZVbRyn826V66Yp62LoYKtN9N6l6JFU3cHg$ Here's how I do daily testing on Milk-V Duo S SBC: https://lupyuen.github.io/articles/sg2000ahttps://urldefense.com/v3/__https://lupyuen.github.io/articles/sg2000a__;!!JmoZiZGBv3RvKRSx!8E0iWp2KKuEYOnSWqkP3whXAfsqbSXzh4AxpgBTpQ3ULEz9KJrgYsa30ZVbRyn826V66Yp62LoYKtN9N6l4xstpnoQ$
And I just RTFM...the "official" guide is herehttps://urldefense.com/v3/__https://nuttx.apache.org/docs/latest/guides/citests.html__;!!JmoZiZGBv3RvKRSx!8E0iWp2KKuEYOnSWqkP3whXAfsqbSXzh4AxpgBTpQ3ULEz9KJrgYsa30ZVbRyn826V66Yp62LoYKtN9N6l7_blKYXg$ so I'll review both and hopefully get it working - and submit any tweaks/corrections/enhancements I find are needed to the NuttX "How To" documentation
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/apache/nuttx/issues/14376*issuecomment-2419108081__;Iw!!JmoZiZGBv3RvKRSx!8E0iWp2KKuEYOnSWqkP3whXAfsqbSXzh4AxpgBTpQ3ULEz9KJrgYsa30ZVbRyn826V66Yp62LoYKtN9N6l7bo_4zVw$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AB32XCV6F2Y7L26ESNFQJK3Z36D37AVCNFSM6AAAAABQC44TO2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJZGEYDQMBYGE__;!!JmoZiZGBv3RvKRSx!8E0iWp2KKuEYOnSWqkP3whXAfsqbSXzh4AxpgBTpQ3ULEz9KJrgYsa30ZVbRyn826V66Yp62LoYKtN9N6l4uP3yEVw$.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

@TimJTi Here's how I do daily testing on Milk-V Duo S SBC: https://lupyuen.github.io/articles/sg2000a

And I just RTFM...the "official" guide is here so I'll review both and hopefully get it working - and submit any tweaks/corrections/enhancements I find are needed to the NuttX "How To" documentation

These works, but it does not describe the entire CI, just how to run pytest checks for sim:citest configuration.

Yes let's cut what we can (but to keep at least minimal functional configure, build, syntax testing) and see what are the cost reduction. We need to show Apache we are working on the problem. So far optimitzations did not cut the use and we are in danger of loosing all CI :-(
On the other hand that seems not fair to share the same CI quota as small projects. NuttX is a fully featured RTOS working on ~1000 different devices. In order to keep project code quality we need the CI.
Maybe its time to rethink / redesign from scratch the CI test architecture and implementation?

Another problem is that people very often send unfinished undescribed PRs that are updated without a comment or request that triggers whole big CI process several times :-(
Some changes are sometimes required sometimes and we cannot avoid that. But maybe we can make something more "adaptive" so only minimal CI is launched by default, preferably only in area that was changed, then with all approvals we can make one final big check before merge?

@cederom Maybe our PRs should have a Mandatory Field: Which NuttX Config to build, e.g. rv-virt:nsh. Then the CI Workflow should do tools/configure.sh rv-virt:nsh && make. Before starting the whole CI Build?

@cederom Maybe our PRs should have a Mandatory Field: Which NuttX Config to build, e.g. rv-virt:nsh. Then the CI Workflow should do tools/configure.sh rv-virt:nsh && make. Before starting the whole CI Build?

People often cant fill even one single sentence to describe Summary, Impact, Testing :D This may be detected automatically.. or we can just see what architecture is the cheapest one and use it for all basic tests..?

Another problem is that people very often send unfinished undescribed PRs that are updated without a comment or request that triggers whole big CI process several times :-(

Often contributors use CI to test all configuration instead of testing changes locally. On one hand I understand this because compiling all configurations on a local machine takes a lot of time, on the other hand I'm not sure if CI is for this purpose (especially when we have limits on its use).

@cederom Maybe our PRs should have a Mandatory Field: Which NuttX Config to build, e.g. rv-virt:nsh. Then the CI Workflow should do tools/configure.sh rv-virt:nsh && make. Before starting the whole CI Build?

It won't work. Users are lazy, and in order to choose what needs to be compiled correctly, you need a comprehensive knowledge of the entire NuttX, which is not that easy.
The only reasonable option is to automate this process.

So it looks like for now, where dramatic steps need to be taken, we need to mark all PR as drafts and start CI by hand when we are sure all is ready for merge? o_O

[like]  Jerpelea, Alin reacted to your message:

From: CeDeROM @.>
Sent: Thursday, October 17, 2024 2:11:13 PM
To: apache/nuttx @.>
Cc: Jerpelea, Alin @.>; Comment @.>
Subject: Re: [apache/nuttx] [URGENT] Reducing our usage of GitHub Runners (Issue #14376)
So it looks like for now, where dramatic steps need to be taken, we need to mark all PR as drafts and start CI by hand when we are sure all is ready for merge? o_O — Reply to this email directly, view it on GitHub, or unsubscribe. You
So it looks like for now, where dramatic steps need to be taken, we need to mark all PR as drafts and start CI by hand when we are sure all is ready for merge? o_O
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/apache/nuttx/issues/14376*issuecomment-2419664709__;Iw!!JmoZiZGBv3RvKRSx!60hNhJMIXMMxTP8-Zr9RteOSJ2PJTdGpwx0nE8SOkWeV1d0uxP1v0N860U_WVI_zv-r-PhDE2T6b-zIlN3CrJpLbOg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AB32XCU22ONPLOEL6JKVC2LZ37AQDAVCNFSM6AAAAABQC44TO2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJZGY3DINZQHE__;!!JmoZiZGBv3RvKRSx!60hNhJMIXMMxTP8-Zr9RteOSJ2PJTdGpwx0nE8SOkWeV1d0uxP1v0N860U_WVI_zv-r-PhDE2T6b-zIlN3DcSsTpzw$.
You are receiving this because you commented.Message ID: @.***>

Stats for the past 24 hours: We consumed 61 Full-Time Runners, still got a long way away from our target of 25 Full-Time Runners (otherwise ASF will halt our servers in 12 days)

We have switched to Four Scheduled Merge Jobs per day
nuttx-apps has stopped macOS and Windows Jobs. But not much impact, since we don't compile nuttx-apps often  https://github.com/apache/nuttx-apps/pull/2750
Still waiting for nuttx repo to stop macOS and Windows Jobs, we're stuck at a disagreement  https://github.com/apache/nuttx/pull/14377
Also waiting for nuttx repo to Halve The Jobs  https://github.com/apache/nuttx/pull/14386
And for nuttx-apps to Halve The Jobs (probably not much impact, since we don't compile nuttx-apps often)  https://github.com/apache/nuttx-apps/pull/2753
Will wait for the above to be merged, then we monitor some more

Okay its 0000UTC. We are really short on time. I have merged changes. Lets monitor the use now for 24h we need metrics. We can always revert the commits.

Sorry no clue why it closed in my name o_O

The builds are so much faster today yay! https://github.com/apache/nuttx/actions/runs/11395811301

We can also disable CI checks for draft merge requests. I think it doesn't make much sense to run them as further commits/force pushes are expected.

Something That Bugs Me: Timeout Errors will cost us precious GitHub Minutes. The remaining jobs get killed, and restarting these remaining jobs from scratch will consume extra GitHub Minutes.
(1) How do we retry these Timeout Errors?
(2) Can we have Restartable Builds? Doesn't quite make sense to build everything from scratch (arm6, arm7, riscv7) just because one job failed (xtensa2)
(3) Or xtensa2 should wait for others to finish, before it declares a timeout and dies? Hmmm...
Configuration/Tool: esp32s2-kaluga-1/lvgl_st7789
curl: (28) Failed to connect to github.com port 443 after 133994 ms: Connection timed out

https://github.com/apache/nuttx/actions/runs/11395811301/attempts/1

@lupyuen: (2) Can we have Restartable Builds? Doesn't quite make sense to build everything from scratch (arm6, arm7, riscv7) just because one job failed (xtensa2)

It is possible to restart only failed tasks on GitHub :-)
If you mean the task could restart where it left.. I am not sure its possible because underlying configuration could change after update to be verified and things need to be started from scratch? :-)

11 Days To Doomsday: But we're doing much better already! In the past 24 hours, we consumed 36 Full-Time GitHub Runners. We're getting closer to the ASF Target of 25 Full-Time Runners! Today we shall:

Halve the Jobs for RISC-V, Xtensa and Simulator for Complex PRs
https://github.com/apache/nuttx/pull/14400

Do the same for nuttx-apps repo
https://github.com/apache/nuttx-apps/pull/2758

Reduce the Scheduled Merge Jobs to Two Per Day at 00:00 / 12:00 UTC (down from Four Per Day)

Hopefully we'll reach the ASF Target tomorrow, and ASF won't kill our servers no more! Thanks!

When NuttX merges our PR, the Merge Job won't run until 00:00 UTC and 12:00 UTC. How can we be really sure that our PR was merged correctly?
Let's create a GitHub Org, fork the NuttX Repo and trigger the CI Workflow. (Which won't charge any extra GitHub Runner Minutes to NuttX Project!)

https://github.com/apache/nuttx/issues/14407

(I think this might also work if ASF shuts down our CI Servers. We can create many many orgs actually)

Sounds like a repo clone that will verify nuttx and nuttx-apps master independently twice a day?

@cederom You read my mind :-)

Hi All: Our Merge Jobs are now at github.com/nuttxpr/nuttx
Yesterday we spent One-Third of our GitHub Runner Minutes on Merge Jobs. This is not sustainable, so I moved them to nuttxpr repo. (Which won't be charged)

The data from yesterday shows that our Scheduled Merge Job keeps getting disrupted by other Merged PRs. And when we restart a Scheduled Merge Job, we waste GitHub Minutes. (101 GitHub Hours for the Scheduled Merge Job!)
Two-Thirds of our GitHub Runner Minutes were spent on Creating and Updating PRs. That's why we're skipping half the jobs today.
Hi @xiaoxiang781216 @GUIDINGLI @cederom: With immediate effect, please see github.com/nuttxpr/nuttx for our Merge Jobs. I will trigger the jobs daily at 00:00 UTC and 12:00 UTC. I have given you Admin Access to nuttxpr in case you need to restart the jobs. Thanks!

Thank you @lupyuen !! :-) We have the https://github.com/nuttx organization too maybe we can make use of it too? :-)

10 Days to Shutdown: Or maybe not, because our GitHub Usage has dropped to 5 Full-Time Runners yay! Let's keep this below 25 Full-Time Runners, and make ASF super happy!

Today we split the Build Jobs for Arm64 and x86_64 from other, making them faster (Hello Goldfish :-)
https://github.com/apache/nuttx/pull/14282

Our Scheduled Merge Jobs are now at github.com/nuttxpr/nuttx, which I trigger manually at 00:00 UTC and 12:00 UTC daily. I'm still running this script, forever killing any Merge Jobs at nuttx and nuttx-apps repos.

Excellent Initiative by @raiden00pl: We Merge Multiple Targets into One Target, and reduce the build time
https://github.com/apache/nuttx/pull/14410

Here's the Email I sent to ASF Infra Team

Then Again: Yesterday was quiet, with few PRs. (But it's great for analysing the data!)

Thank you so much for your patience, let's keep this up! 🙏

We have the https://github.com/nuttx organization too maybe we can make use of it too? :-)

I think we learnt a Painful Lesson today: Freebies Won't Last Forever! The new GitHub Org for NuttX should probably be a Paid GitHub Org:

New GitHub Org shall be sponsored by our generous Stakeholder Companies (Espressif, Sony, Xiaomi, ...)
New GitHub Org shall be maintained by a Paid Employee of our Stakeholder Companies
Which means clicking Twice Per Day to trigger the Scheduled Merge Jobs (I'm getting tired of this)
And restarting the Scheduled Merge Job (if it fails). Also: Killing the Old Merge Jobs
New GitHub Org shall host the Official Downloads of NuttX Compiled Binaries (for our upcoming Board Testing Farm)
New GitHub Org will eventually offload more CI Jobs from our GitHub Repos (e.g. macOS and Windows Builds)

@lupyuen could we select arm-01, arm-03, arm-05... instead of arm-01, arrm-02,... arm-07, which could improve the chip coverage?

ould we select arm-01, arm-03, arm-05... instead of arm-01, arrm-02,... arm-07, which could improve the chip coverage?

@xiaoxiang781216 Good idea. RP2040 is in arm-06, should we select arm-06 instead of
arm-13?
So we build arm-01, arm-03, arm-05, arm-06, arm-07, arm-09, arm-11?

I am not sure if we should diverge from Apache that much, but its also sad to see zero Apache support when/where we need them most.
Having financial support from companies that use NuttX would be nice, but should we use it to pay GitHub or better pay freelancers to develop more NuttX code? GitHub benefits all here, while NuttX should.
Maybe we should look for alternatives to GitHub like GitLab where other OS runners are also possible as a complementary / backup solution to GitHub?
And the independent decentralized testing farms seems the best alternative. But its a long road.
I just hope all this won't impact NuttX quality.

Yeah it doesn't sound right that an Unpaid Volunteer is monitoring our CI Servers 24 x 7 🤔

ould we select arm-01, arm-03, arm-05... instead of arm-01, arrm-02,... arm-07, which could improve the chip coverage?

@xiaoxiang781216 Good idea. RP2040 is in arm-06, should we select arm-06 instead of arm-13?
So we build arm-01, arm-03, arm-05, arm-06, arm-07, arm-09, arm-11?

sure.

9 Days to Nirvana: Yesterday (quiet Sunday) we consumed 3 Full-Time GitHub Runners. Let's keep this below 25 Full-Time Runners, and we'll break free from suffering!

No major changes for today, we'll watch and monitor

Scheduled Merge Jobs are still at nuttxpr/nuttx

Once in a while: I'll run Ad Hoc Merge Jobs for NuttX Apps at nuttxpr/nuttx-apps (Kinda redundant because nuttx will also compile nuttx-apps)

Today is Monday, we expect the load to increase. Hoping for the best, thanks everyone!

What if we could run the CI Jobs on our own Ubuntu PCs? Without any help from GitHub Actions?
I'm experimenting with a "Build Farm" at home (refurbished PC) that runs NuttX CI Jobs all day non-stop 24 x 7:

Check out master branch of nuttx, run CI Job arm-01
Wait for arm-01 to complete (roughly 1.5 hours)
Check out master branch of nuttx, run CI Job arm-02
Wait for arm-02 to complete (roughly 1.5 hours)
Do the same until arm-14, then loop back to arm-01
Here's the CI Output Log

How does it work?

run-job.sh will run a single CI Job, by calling the NuttX Docker Image, which is called by...
run-ci.sh looping forever through arm-01 to arm-14, running the job, searching for errors and uploading the logs

8 Days to Diwali: Will our CI Servers go Dark? Sorry we're not sure, because the ASF Infra Reports are Down (sigh). But I think we briefly hit a peak of 21 Full-Time GitHub Runners, which is still within our target of 25 Full-Time Runners.

Simulator CI Job sim-01 has become the bottleneck. Today We'll split sim-01 and add sim-03:
https://github.com/apache/nuttx/pull/14428
https://github.com/apache/nuttx-apps/pull/2763

Since The ASF Reports Are Down: I'll try calling the GitHub API to fetch the Elapsed Duration of every job. Then extrapolate to GitHub Runner Minutes.

ASF Infra Reports are still now. But now we have our own Live Metrics for Full-Time GitHub Runners! (reload for updates)

This shows the number of Full-Time Runners for the Day, computed since 00:00 UTC. (Remember: We should keep this below 25) How it works:

compute-github-runners.sh calls GitHub API to add up the Duration of All GitHub Jobs for today. Then it extrapolates the Number of Full-Time GitHub Runners. (1 Elapsed Hour roughly equals 8 GitHub Runner Hours)
run.sh calls the script above to render the Full-Time GitHub Runners as a PNG (with ImageMagick)

@lupyuen the new number is very small, should we try restoring some macOS/msys2/windows ci?

@xiaoxiang781216 Let's monitor for the rest of the day. Towards the end of the day, the number of Full-Time Runners will probably jump to 21. (Like yesterday)
We could mirror the NuttX Repo to another GitHub Org account and run the Windows and macOS Jobs there (so they won't add to our quota). We just need minor changes to build.yml and arch.yml: https://github.com/apache/nuttx/issues/14407 (at the bottom of the doc)

could we use this https://github.com/nuttx account?

@xiaoxiang781216 Yep lemme work on it

@xiaoxiang781216 The macOS and Windows Builds are now running in our NuttX Mirror: https://github.com/NuttX/nuttx/actions/runs/11452528962
I made 2 fixes to enable the macOS and Windows Builds: build.yml and arch.yml
Lemme figure out how to automate this 🤔

@lupyuen Thank you for this amazing work!

7 Days to Event Horizon: Yesterday we consumed 4 Full-Time GitHub Runners (too low?). Let's keep this number below 25 Full-Time Runners, so our CI Servers won't sink into the black hole!

Last 5 days: We consumed 13 Full-Time Runners. That's below ASF's Limit of 25 Full Time Runners. So we're still on target! I shared the good news with ASF Infra Team in my email

Which means I shall Freeze our CI Workflow. Wait for ASF Infra Team to approve on 30 Oct. Then we decide how to reorg our Build Targets.

Our Merge Jobs are now at github.com/NuttX/nuttx. (Includes macOS and Windows Builds)

How It Happens: Daily at 00:00 UTC and 12:00 UTC, I click Sync Fork > Discard Commits. Then I run this script to enable the macOS and Windows Builds.

Don't Forget: I'm still running this script to kill the Merge Jobs on the old nuttx and nuttx-apps repos. (Otherwise the GitHub Runners will spike!)

The numbers from yesterday are a little sus, lemme verify...

Alternatively: We have our cool purple report (14 Full-Time Runners for yesterday)...

(Live Image) (Live Log)
Thanks everyone for the kudo! :-)

6 Days to Serenity: Yesterday we consumed 13 Full-Time GitHub Runners. (That's half of the ASF Quota for GitHub Runners) Everything is coming up nicely (even ASF agrees), thanks to everyone! 🙏

Our Cool Purple Report now turns Orange when the load goes up (yep our estimated data is a little higher than the ASF data, just to be safe)...

(Live Image) (Live Log)

5 Days to Freedom: Yesterday we consumed 14 Full-Time GitHub Runners. That's 56% of the ASF Quota for Full-Time Runners. Looking good!

We peaked briefly at 26 Full-Time Runners. Needs more monitoring.

Awesome Workflow by @simbit18: Run the Windows Build on any NuttX Repo...
https://github.com/apache/nuttx/pull/14499#issuecomment-2435359296

Data from yesterday:

Let's keep our report Cool and Purple for today. Thank you so much!

(Live Image) (Live Log)

@lupyuen It looks I made a mistake with some commit messages, that caused our branch to get referenced to a few issues in the apache repo. My apologies. I believe I have removed the commit message references, but if there is anything else I need to do to fix this, please let me know and I will get on it ASAP.

4 Days to Festivity: Yesterday we consumed 13 Full-Time GitHub Runners (half of the ASF Quota for GitHub Runners)...

Past 7 Days: We also used an average of 13 Full-Time GitHub Runners...

So we're on track to make ASF very happy on 30 Oct! Let's monitor today...

(Live Image) (Live Log)

Thank you @lupyuen for your amazing work!! Have a good calm weekend :-) :-)

3 Days to Tranquility: Yesterday was a quiet Saturday (no more Release Builds yay!). We consumed only 4 Full-Time GitHub Runners...

Let's hope today will be a peaceful Sunday...

(Live Image) (Live Log)

Something strange about Network Timeouts in our Docker Workflows: First Run fails while downloading something from GitHub:
Configuration/Tool: imxrt1050-evk/libcxxtest,CONFIG_ARM_TOOLCHAIN_GNU_EABI
curl: (28) Failed to connect to github.com port 443 after 134188 ms: Connection timed out
make[1]: *** [libcxx.defs:28: libcxx-17.0.6.src.tar.xz] Error 28

Second Run fails again, while downloading NimBLE from GitHub:
Configuration/Tool: nucleo-wb55rg/nimble,CONFIG_ARM_TOOLCHAIN_GNU_EABI
curl: (28) Failed to connect to github.com port [443](https://github.com/nuttxpr/nuttx/actions/runs/11535899222/job/32112716849#step:7:444) after 134619 ms: Connection timed out
make[2]: *** [Makefile:55: /github/workspace/sources/apps/wireless/bluetooth/nimble_context] Error 2

Third Run succeeds. Why do we keep seeing these errors: GitHub Actions with Docker, can't connect to GitHub itself?
Is something misconfigured in our Docker Image? But the exact same Docker Image runs fine on my own Build Farm. It doesn't show any errors.
Is GitHub Actions starting our Docker Container with the wrong MTU (Network Packet Size)? 🤔

https://github.com/actions/actions-runner-controller/issues/393
Docker MTU issues and solutions

2 Days to Transcendence: Yesterday we consumed 10 Full-Time GitHub Runners. We peaked briefly at 21 while compiling a few NuttX Apps.

Let's keep on monitoring thanks!

(Live Image) (Live Log)

Monitoring our CI Servers 24 x 7
This runs on my 4K TV (Xiaomi 65-inch) all day, all night:

When I'm out on Overnight Hikes: I check my phone at every water break:

I have GitHub Scripts that will run on Termux Android:

enable-macos-windows2.sh: Enable the macOS and Windows Builds
compute-github-runners2.sh: Compute the number of Full-Time GitHub Runners for the day

Lup's Operations Center =)

1 Day to Utopia: Yesterday was a busy Monday, we consumed 14 Full-Time GitHub Runners. That's 56% of the ASF Quota for Full-Time Runners...

We peaked briefly at 26 Full-Time Runners. Let's hang in there thanks! :-)

(Live Image) (Live Log)

2 days but we should be fine thanks to our Super Hero @lupyuen !! AVE =)

Thank you so much @cederom! :-)

Kudos Lup!
Best regards
Alin

Från: Lup Yuen Lee @.>
Skickat: den 29 oktober 2024 00:18
Till: apache/nuttx @.>
Kopia: Jerpelea, Alin @.>; Mention @.>
Ämne: Re: [apache/nuttx] [URGENT] Reducing our usage of GitHub Runners (Issue #14376)
Thank you so much @cederom! :-) — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned. Message ID: <apache/nuttx/issues/14376/2442851421@ github. com>
Thank you so much @cederomhttps://urldefense.com/v3/__https://github.com/cederom__;!!JmoZiZGBv3RvKRSx!6c8SScCihQbTxBjmvuht5R5wiFaJwwUNLjUHmSdyVVUDwdnGWnhBnqMjn8oEL0G2KsTpa6P1QLdgkP3tQ2JJCiyo2w$! :-)
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/apache/nuttx/issues/14376*issuecomment-2442851421__;Iw!!JmoZiZGBv3RvKRSx!6c8SScCihQbTxBjmvuht5R5wiFaJwwUNLjUHmSdyVVUDwdnGWnhBnqMjn8oEL0G2KsTpa6P1QLdgkP3tQ2IwVW-L_w$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AB32XCV6L4G5IE6QCIK4D5TZ53A53AVCNFSM6AAAAABQC44TO2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBSHA2TCNBSGE__;!!JmoZiZGBv3RvKRSx!6c8SScCihQbTxBjmvuht5R5wiFaJwwUNLjUHmSdyVVUDwdnGWnhBnqMjn8oEL0G2KsTpa6P1QLdgkP3tQ2IYhS2h5g$.
You are receiving this because you were mentioned.Message ID: @.***>

0 Days to Final Audit: ASF Infra Team will be checking on us one last time today! Yesterday was a super busy Tuesday, we consumed 15 Full-Time GitHub Runners (peaked briefly at 31)

Past 7 Days: We consumed 12 Full-Time Runners, which is half the ASF Quota of 25 Full-Time Runners yay!

FYI: Our "Monthly Bill" for GitHub Actions used to be $18K...

Right now our Monthly Bill is $14K. And still dropping!

Let's wait for the good news from ASF, thank you everyone! 🙏

(Live Image) (Live Log)

:pray: :pray: :pray:

GitHub Actions had some laggy issues just now: https://www.githubstatus.com/incidents/9yk1fbk0qjjc
So please ignore the over-inflated data in our report (because everything got lagged). Thanks!

(Live Image) (Live Log)

It's Oct 31 and our CI Servers are still running. We made it yay! 🎉
We got plenty to do:

We made lots of fixes to the CI Workflow. I'll document everything in an article.

Become more resilient and self-sufficient with Our Own Build Farm (away from GitHub)

Analyse our Build Logs with Our Own Tools (instead of GitHub)

Thank you everyone for making this happen! 🙏

BIG THANK YOU @lupyuen FOR YOUR HELP, TIME, AND PATIENCE!!
 Thank you everyone for helping out, we saved our CI Servers from shutdown! 🎉
This article explains everything we did in the (Semi-Chaotic) Two Weeks:
(1) Shut down the macOS and Windows Builds, revive them in a different form
(2) Merge Jobs are super costly, we moved them to the NuttX Mirror Repo
(3) We Halved the CI Checks for Complex PRs
(4) Simple PRs are already quite fast. (Sometimes 12 Mins!)
(5) Coding the Build Rules for our CI Workflow, monitoring our CI Servers 24 x 7
(6) We can’t run All CI Checks, but NuttX Devs can help ourselves!
Check out the article: https://lupyuen.codeberg.page/articles/ci3.html


Update seems to fail from v0.8.10 on Mac

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to 'settings'
Click on 'Check for beta releases'
Starts downloading
Fails with error shown on the screen

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Desktop (please complete the following information):

OS: MacOS 10.15.4
Browser: Beaker
Version: v0.8.10

Yeah really sorry about this -- we had to change the appid to the company from my name (pfrazee -> bluelinklabs) and that broke the auto update. You can update by downloading the dmg: https://github.com/beakerbrowser/beaker/releases/download/1.0.0-prerelease.1/beaker-browser-1.0.0-prerelease.1.dmg

No worries, just wanted to make sure you were aware


Pin boto3 version to <1.4.0.

Latest release of boto3 (a few days ago) breaks s3fs due to the
imports boto3.s3.transfer.{ReadTimeoutError, IncompleteReadError}
being gone.
See:
https://github.com/boto/boto3/commit/d02dc9b57ae28ccb2265dcf1e560afd7dbad8098

Thanks for the fix.  Do you have any insight on how s3fs should be changed in the future to support boto3>=1.4.0?

@mrocklin I haven't dig further as I stumble upon this bug while fixing another in dask :)
It seems they moved the retry handling to the TransferManager  class. Perhaps the retry logic in s3fs is no longer needed.
I think s3fs could opt to either:

Support 1.3.x and 1.4x by adding backward compatible code.
Require boto3>=1.4.0 in further releases.

I don't know what would be the best for the s3fs user base (or dask user base for that matter).

At first glance my recommendation would be to do the following
try:
    from boto.s3.transfer import S3_RETRYABLE_ERRORS
except ImportError:
    S3_RETRYABLE_ERRORS = {socket.timeout, # whatever reasonable errors we can find}

Either the except clause is entirely unnecessary (if as @rolando suggests may be the case) or we'll offer less protection for boto 1.4 and learn about that loss of protection as users complain about errors.
cc @martindurant in case he has thoughts.

Merging this for now.


PR for loader replacing DOM elements issue. Closes #75

Fixes Issue
Closes #75

Changes proposed

CSS of loader changed to add margin bottom in place of margin top
Logic of conditional rendering changed to show gallery/favourites tabs in DOM along with loader.
Tab switching logic changed as now i am passing click handler function and state variable to galleryTabs component.
start script in package.json changed as it was giving an error - error:0308010C:digital envelope routines::unsupported.

Check List (Check all the applicable boxes)

[ x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[x ] This PR does not contain plagiarized content.
[x ] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

Just push your new commit here

Can you redo all your commits, and create add all your changes into one commit? Then force push it here?
I think it would be good practice for you to learn as well. Let me know if you can't manage it.

Hi @furkanmutlu i don't know how to redo all my commits. Can i create new PR and Close this PR? If there is another way to do that then it would be great if you will help me out? Thanks.

Hi @furkanmutlu i don't know how to redo all my commits. Can i create new PR and Close this PR? If there is another way to do that then it would be great if you will help me out? Thanks.

Yes, you can soft reset.
Since you have 5 commit, RUN:
git reset --soft HEAD~5
This will undo 5 last commit from your branch and add them as changes.
Then commit those changes. and do a force push.
git push -f


Western Diary incorrect requirement

Please check if your issue is not a duplicate by searching existing issues
Describe the bug
Incorrect diary requirement for Western provinces elite.
To Reproduce
Steps to reproduce the behavior:

Go to 'Achievement Diary Tab'
Click on 'Western Provinces'
Scroll down to 'Elite section'
The task, 'Pickpocket an Elf (85 Thieving, Mourning's Ends Part II' is incorrect in the fact that you only need 85 Thieving and Access to Lletya, requiring the start of Mourning's Ends Part I.

Expected behavior
The task should state 'Pickpocket an Elf (85 Thieving, Started Mourning's Ends Part I'
Screenshots
Environment (please complete the following information):

OS: Windows 10 Home, 64 bit.
RuneLite version: [<IP_ADDRESS>]
Launcher version: [1.6.0]

Additional context
Add any other context about the problem here, e.g. logs. Your client logs can usually be found in
C:\Users\<your_user_name>\.runelite\logs on Windows and ~/.runelite/logs on Linux and macOS.

What requirement is this?

It's the Mournings End Part II completion requirement of the "Pickpocket an Elf." step; it should instead be a requirement to have started Mournings End Part I.

oh, I didn't see the extra info that had been added, my bad