Make Outwatch FRP-backend agnostic

Different projects already use different FRP/Streaming/State management libraries like rxjs, Monix, Xstream, scala.rx or Diode to fit their needs.
I think it is time to make Outwatch FRP-backend agnostic to not force the user to use rxjs. It would be the first scala-js frontend library to do this (while at the same time extracting the dom-types: #62). If other libraries follow to adopt this flexibility, the eco-system of frontend-libraries becomes more compatible and lowers the barrier to develop better ones.
So how could we provide a solid interface which represents the data-capabilities every UI-Component needs?
My first Idea would be to define two separate type-classes for reading and writing data:
@typeclass trait Source[+T] {
     def subscribe(onNext: T => Unit):Unit
}

@typeclass trait Sink[-T] {
     def next(value: T): Unit
}

(I probably didn't think of every use-case yet, but you get the idea)
The question is if it is even possible to extract an interface which is flexible enough and is still enough to build all existing UI-Libraries upon.
For example: Outwatch internally already uses operators on Observables like map and combineLatest. What are other libraries using?
What do you think?
@raquo @mariusmuja @LukaJCB @cornerman
(If we think this is possible, we should also invite other frontend library developers to jump in and define a great and flexible interface.)

Yep, I'm using map / mapTo / filter / merge and maybe some others internally in Laminar. And unsubscribe of course.

So basically you're proposing to create implementations of such standardized Sink / Source traits in terms of end user's favorite FP library. Then Outwatch or other libraries will be able to use the standardized methods internally, and the end user will be able to use the full gamut of their FP library, right?
This could probably work. Selecting the right set and amount of methods for the standardized traits would be one of the hard parts.

Another concern is the small details in subscriptions semantics. For example, xstream.js, my library of choice for now, unsubscribes from streams asynchronously, i.e. the subscription will be gone only after setTimeout(..., 0). Other libraries could be doing it synchronously. That might or might not be a problem, I don't know.
Same goes for how different libraries handle various FRP glitches. Hard for me to say if that would be a problem.

Another approach is to define conversions from sinks/sources in library A to sinks/sources in library B, and keep using one library internally in Outwatch, doing the conversion at the edges, so that end users still work with their library of choice. This will be easier for developers and maintainers, but will have a runtime cost of all those conversions.
Cycle.js uses this approach I think. They used to have something similar to what you propose (project "Diversity"), and then changed it in the Cycle Unified project.

There's also a proposal for a standard EcmaScript Observable type which I believe many JS streaming libraries already support. It should be useful as a foundation, but if I understand correctly it doesn't include any methods like map / filter / etc.

I'll echo what @raquo mentioned above.
In addition to syntactic differences between different FRP libraries (some provide rich APIs, other more minimal APIs), there's also important semantic differences: some libraries use cold observables by default (that can be transformed into hot observables), some use only hot observables;  there's also differences between how (or if) they handle back-pressure, the threading model used,... Making a single interface to abstract over all these options is going to be hard.
I also think using a single FRP library internally and providing adapters at the edges is a better way of doing it. There is some conversion cost, but I think the cost of abstracting over the semantic differences between different FRP libraries is likely much higher.
In terms of what FRP library to use, my suggestion is Monix: it's a pure scala FRP library (more typesafe - more better :) ), with a rich API, very efficient, proper back-pressure support and version 3.0 brings deep integration with Cats (on which Outwatch already depends).
I've been using a Monix port of Outwatch for writing some internal tools at my workplace and it's been working great (I actually encountered some issues while using rxjs).

Does anyone know how big is Monix in practice, compressed? I mean filesize of monix parts in the JS bundle in fullOpt mode. It's kinda hard to gauge without having a codebase using it properly due to DCE in Scala.js. For comparison, Xstream.js is ~30KB minified, and a bit more is probably added by my Scala interface to it (the parts of it that convert between idiomatic scala and js datatypes, most of everything else should be optimized away in fullOpt mode).

I have to agree regarding having a proper Scala API. I had to write a rich interface for xstream to e.g. provide a tuple-based API in place of JS arrays. That was annoooying.

On the other hand, I think native Scala libraries are at a disadvantage in general regarding runtime performance. Native JS types should be quite a bit more efficient than JS representations of similar Scala structures. I've seen numbers like 2x performance difference mentioned for equivalent code, but no specific benchmarks handy, sorry.
On the other other hand, I haven't used FRP for DOM manipulation enough to know how much such a performance difference would matter. I feel like it doesn't matter all that much for 99% of events being fired. Exception being animation / scrolling / updating 100500 nodes at once, that kind of thing.

Regarding hot and cold observables – Xstream is the odd one here, using only hot observables, whereas most other libraries, while supporting hot (multicast), are cold by default and gravitate towards cold. XStream has a reason for working this way which I think is somewhat similar to our use case. The creator wrote about it quite a bit:
https://staltz.com/why-we-built-xstream.html
https://staltz.com/why-we-actually-built-xstream.html
https://staltz.com/cold-and-hot-callbacks.html

Regarding using a featureful vs skinny library consider this: do we want / expect most users to use the internal library we use? If so, it should be featureful for most end users to be happy with it.
On the other hand, if we want / expect most people to use their own preferred library with conversions to our internal library, I'd argue for using as-small-as-possible internal library that is efficient and has the smallest possible footprint, because in that scenario only our own internals care about what that library is, and anything in excess of our internal needs can be considered bloat.
Now, what's a good small library? I don't know, like I said it's hard to tell from a distance due to dead code elimination optimization in Scala.js. Monix might as well be tiny if all we use internally are map/filter/subscribe.

It's indeed hard to say what the size of Monix is in a fullOptS bundle because of DCE. Here's for example the size of the Outwatch test bundle:
With RxJS:
-rw-rw-r--   1 marius marius  313987 Nov 21 21:41 outwatch-test-opt-bundle.js.gz
-rw-rw-r--   1 marius marius 1593988 Nov 21 21:34 outwatch-test-opt-bundle.js
-rw-rw-r--   1 marius marius  837289 Nov 21 21:33 outwatch-test-opt.js

Monix port:
-rw-rw-r--   1 marius marius  240514 Nov 21 21:38 outwatch-test-opt-bundle.js.gz
-rw-rw-r--   1 marius marius 1077036 Nov 21 21:38 outwatch-test-opt-bundle.js
-rw-rw-r--   1 marius marius 1046342 Nov 21 21:37 outwatch-test-opt.js

In this case it ends up being smaller, but there's not much of the library used in the tests. For real-world applications the situation might be different.
Another reason I like using Monix is that I'm also using it on the server-side, so there's no mental switch when I go from server-side to font-end (and sharing code become easier).

Thank you for your input.
After experimenting, thinking and discussing a lot, I believe that there is a huge difference between event streaming and state management. Even though event streaming can model state to some extent with scan, it will never be as powerful for that purpose (Related: #92, https://github.com/monix/monix/issues/467). Let me explain:
If I only manage state in a graph with transformations, I think the only ones I need are map and combineLatest. When handling only state, operations like filter or fold do not make much sense, especially in diamond cases. I'm not sure about higher-order cases yet. I can use these assumptions to guarantee efficient and consistent updates by knowing the whole data flow graph.
In summary:
State Management

Synchronous
Every node always has a value
Knows the whole data flow graph
Efficient state updates (the minimum amount of calls to the transformation functions)
Consistent state updates (A node never contains a partial/inconsistent state)
Only map and combine operators

Event Streams

Asynchronous
Nodes usually don't need to store anything
Many operators to handler streams in time
No need to know the whole graph, since only (asynchronous) triggers are involved
No Data Consistency needed, since Events should be independent
Can handle simple state (without diamonds) by aggregating with scan / fold

The bridge between these two concepts are simple:
Event Stream -> aggregation operators like scan/fold -> State Management
State Management -> update trigger -> Event Stream
The current trend of forcefully unifying these two concepts brings up many limits and trade-offs in my opinion.
So far I think that UI-Components can be rendered by only using state. User interactions emit events.
(Please let me know if you have counter-examples)
Therefore the type-class for Source only needs map and combine. What do you think?
@raquo For what exactly are you using filter in laminar?
This insight lead me to fork scala.rx and make it a small, powerful state-management library: https://github.com/fdietze/duality

@fdietze For Outwatch, Snabbdom provides lifecycle events (update / destroy / remove, etc.). Laminar doesn't use virtual DOM so I had to implement those myself, not only to provide this functionality to end users, but also to properly unsubscribe the listeners when the nodes get unmounted/discarded.
Each Laminar node exposes a stream of mount/unmount events ($mountEvent), which is derived from a filtered version of the node's $parentChangeEvent – a stream of events that get fired when the node's maybeParent is either about to change, or has just changed. The basic idea being if any of the node's ancestors changed from something mounted to something unmounted (or vice versa), we should fire a mount event.
PS this is in next branch, not master yet.

@fdietze For Outwatch, Snabbdom provides lifecycle events (update / destroy / remove, etc.). Laminar doesn't use virtual DOM so I had to implement those myself, not only to provide this functionality to end users, but also to properly unsubscribe the listeners when the nodes get unmounted/discarded.
Each Laminar node exposes a stream of mount/unmount events ($mountEvent), which is derived from a filtered version of the node's $parentChangeEvent – a stream of events that get fired when the node's maybeParent is either about to change, or has just changed. The basic idea being if any of the node's ancestors changed from something mounted to something unmounted (or vice versa), we should fire a mount event.
PS this is in next branch, not master yet.

@fdietze In your state management description, what does "Knows the whole data flow graph" mean, and what's the importance of it?

@raquo When a node knows its predecessors and its successors, changes can be propagated in a controlled way. This is mostly important for the diamond-case (combineLatest). With Monix/RxJS the node triggers twice. With scala.rx (which stores the graph information), the node is updated only once, after all predecessors calculated their values. There is a description with example in the scala.rx readme.
Did this answer your question?

@fdietze Yep, thanks! I understand the diamond glitch, I wasn't sure how scala-rx avoided it. Makes sense.

While I think about it, Outwatch triggers multiple times on diamond glitches:
https://github.com/OutWatch/outwatch/blob/master/src/main/scala/outwatch/dom/helpers/DomUtils.scala#L29
This could even lead to visible glitches.

There are streaming libraries that reason about the whole graph, for example Akka-Streams: https://doc.akka.io/docs/akka/2.5.4/scala/stream/stream-graphs.html
If having to reason about the whole graph is better or not is debatable, the Monix author argues it's not better:  https://monix.io/docs/2x/reactive/observable-comparisons.html#akka-streams
Personally, I also think it's better to not have to reason about the whole graph, it makes decomposing large applications into mixable components easier.
Regarding the diamond issue mentioned above, I find that it can be avoided by using a redux-like approach for modeling the components' state. For example:
import monix.execution.Scheduler.Implicits.global, monix.reactive._, subjects._

val a = PublishSubject[Int]
val c = PublishSubject[Int]

trait Action
case class A(value: Int) extends Action
case class C(value: Int) extends Action

val actions = Observable.merge(a.map(A), c.map(C))

val init = ((0,(0,0)))

val d = actions.scan(init) {
  case (s, A(v)) => s.copy(_1 = v, _2 = s._2.copy(_1 = v))
  case (s, C(v)) => s.copy(_2 = s._2.copy(_2 = v))
}
  .startWith(Seq(init))

val b = d.map(_._2)

d.foreach(println)

a.onNext(1)

There are streaming libraries that reason about the whole graph, for example Akka-Streams: doc.akka.io/docs/akka/2.5.4/scala/stream/stream-graphs.html

If having to reason about the whole graph is better or not is debatable, the Monix author argues it's not better: monix.io/docs/2x/reactive/observable-comparisons.html#akka-streams

Personally, I also think not having to reason about the whole graph makes decomposing large applications into mixable components easier.

It's the library which reasons about the graph, not the developer. The data-flow construction and (de)composability is the same for both cases. Knowing the graph just means that each node knows its predecessors and successors. Observables only know their successors, which prevents them to avoid glitches in the diamond case.
As you mentioned, the diamond case can be avoided by only having a data flow tree, and doing the whole transformation in one single node (Redux/Elm Architecture). Using diamond flows or Redux/Elm is personal preference and depends on the complexity of the application. But this preference is not important for my argument, that diamond cases need to be handled.
The central data node with multiple components attached by definition already produces a diamond case in outwatch, since it uses combineLatest internally. Here is a simple example of a non-intuitive, but visible FRP-Glitch:
val heights = Observable
      .interval(100)
      .zip(Observable.of(0.9, 0.1).repeat(500))
      .map(_._2)

    div(
      div(
        stl("height") <-- heights.map(x => (x * 100) + "px"),
        stl("background-color") := "blue"
      ),
      div(
        stl("height") <-- heights.map(x => ((1-x) * 100) + "px"),
        stl("background-color") := "red"
      )
    )

When running this example, the height of the outer div first jumps to 20px or 180px and then stays at 100px.
Of course this can be avoided by wrapping the whole component in an observable. But if you think this further, it is impractical for whole applications. (If the wrapping is only done where necessary, the developer really has to reason about the data flow graph.)
Even having or preventing these visual glitches is personal preference and depends on the application. This is why I think we should make Outwatch FRP backend-agnostic to let the developer make the best decision for his/her use-case.
The Monix port (which I find great btw!) is a good example for a personal preference of FRP libraries. I prefer something that prevents glitches instead. Using both should be possible.

@mhooo, @cornerman, @LukaJCB and me discussed and started to work on this here:
https://github.com/OutWatch/outwatch/compare/master...fdietze:typeclass


[Event Request] codeunit 7002 "Price Calculation - V16" implements "Price Calculation" - OnAfterIsDegradedLine

We would like to add a new event OnAfterIsDegradedLine in the following procedure:
local procedure IsDegradedLine(PriceListLine: Record "Price List Line"; BestPriceListLine: Record "Price List Line") Result: Boolean
begin
    Result :=
        IsBlankedValue(PriceListLine."Currency Code", BestPriceListLine."Currency Code") or
        IsBlankedValue(PriceListLine."Variant Code", BestPriceListLine."Variant Code");

    OnAfterIsDegradedLine(PriceListLine, BestPriceListLine, Result); //A101F0000.Event
end;

local procedure IsBlankedValue(LineValue: Text; BestLineValue: Text): Boolean
begin
    exit((BestLineValue <> '') and (LineValue = ''));
end;

Event Signature:
[IntegrationEvent(true, false)]
local procedure OnAfterIsDegradedLine(PriceListLine: Record "Price List Line"; BestPriceListLine: Record "Price List Line"; var Result: Boolean)
begin
    //A101F0000.Event
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Posts - create new thread - prompt to add tag if no tags present

If no tags are present and the user is posting in "#all" then prompt asking them if they would like to select or enter a community to post in.

n ack - not implemented yet

We decided not to implement this and keep thing the way they are AFAIK... we just need to encourage a tagging culture and it looks like its working


Create Testimonial 15 blue #1872 . Solved

closes #1872
Updated

I have renamed kindly check.

So there should be 2 files with different names right?

I have updated kindly check it.

updated.


fix return label for check 4.7

Check 4.7 seems to always be labeled as INFO even when it fails.

Please sign your commits following these rules:
https://github.com/moby/moby/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "optimistic-4.7" git@github.com:blackthorne/docker-bench-security.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

Thanks for the PR, but "4.7 Ensure update instructions are not use alone in the Dockerfile" is not scored test so the output is supposed to be info, just as 4.9.


feat(docs): Fix docs workflow

When checking back out to gh-pages after building the docs, we need to ensure it doesn't clean the repo as it will drop all the docs generated.
Adds a step to the docs workflow to create an index file in the root of the docs folder to redirect to the latest version docs.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (7e45313) to head (156e304).

Additional details and impacted files
@@             Coverage Diff             @@
##             develop       #13   +/-   ##
===========================================
  Coverage     100.00%   100.00%
  Complexity        13        13
===========================================
  Files              2         2
  Lines             37        37
===========================================
  Hits              37        37

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


fix RUSTFLAGS not prepending whitespace in coverage.rs

This led to any custom RUSTFLAGS not working unless it was RUSTFLAGS=" xxx" instead of RUSTFLAGS="xxx"

Haha yeah makes sense :upside_down_face:


Received unexpected trace event (:gc_minor_start & :gc_minor_end)

Elixir 1.13.3
Phoenix v1.6.6
{:flame_on, "~> 0.3.0"}

(Output filename: flame_on_output_delete_me/1646851436679673-eflambe-output.bggg) I can't find this file

This has been resolved in the underlying library that we rely on, but a new version of that hasn't been cut since it was merged. I will push a new version of Flame On once they cut a new version.

This has been resolved in the underlying library that we rely on, but a new version of that hasn't been cut since it was merged. I will push a new version of Flame On once they cut a new version.

Hi I also have the same error. May I know if you have any advise on a workaround in the meantime like the necessary code changes if that is restricted to only the library? Many thanks.

@gaslit are you having issues beyond the warnings in the logs? Is the flamegraph rendering? If not, is that output file present in your project? This ticket is in regards to :gc_minor_start and :gc_minor_end warnings which are red herrings and can be ignored. The :return_to messages I have also seen during normal runs. The :unlink one is new to me.

I have edited my post.
No other issues

Flamegraph does not render.

Output file does not exist: Output filename: flame_on_output_delete_me/1647524175532330-eflambe-output.bggg but i thought it is deleted after creation

Many thanks

I can confirm this, I get many " Received unexpected trace event" both in my M1 dev and in Heroku. Also, the flamegraph doesn't render in many occasions.

Thank you everyone for your reports on the issue of flamegraphs not rendering. This ticket is being used to track the :gc_* warnings in the logs, and #9 is tracking the issue of flamegraphs not rendering (they are unrelated), so if you are having issues with flamegraphs not rendering, subscribe to #9 for updates (and check out #11 which should either resolve these issues directly or give us the tools to be able to diagnose them)


Remove Messages class and its usages

Resolves #22.

Redo the removal of Message class and its usages/ references

Hi @kevinputera, my rationale for removing the test cases is because I feel we can implement it ourselves later when we have finished most of our codes, so for now I just removed test cases which involved Messages in it to avoid confusion. But thanks for your feedback! I will make the necessary changes accordingly.


fix: Remove type DID

https://input-output.atlassian.net/browse/ATL-7741

coverage: 48.621% (+0.1%) from 48.504%
when pulling f2039bf63c53d697e16fc03cb3004a0863c8ba9d on ATL-7741
into dc50537f0861f1214101fde6adfdc2e1888384e8 on main.


kernel configs: tune cpu/rcu/workqueue/task stall/hang timeouts

Current timeout for "no output" bug is 3 minutes. We set most of stall/hang timeouts to 2 minutes so that they fire before the "no output" timeout. However:

it seems that a stall detector can fail to fire in 3 minutes. Consider that there is a stall checking thread that wakes every 2 minutes and checks if there is a cpu/task stalled for 2+ minutes. It first runs just before the stall happens, next time it runs during the stall but the stall does not last for 2+ minutes yet, next time does not happen because "no output" is detected.
This is based on speculation. We need to double check if this happens, and if yes, tune timeouts.

If we have several stall checkers armed for 2 minutes, it's not deterministic which one will fire first. So in one run we can get an rcu stall, and in another workqueue stall. As the result we will have 2 different bugs. I think we should establish some kind of priority over the checkers and give them different timeouts (e.g. 1 minute for cpu stall, 2 minutes for rcu stall, 3 minutes for workqueue stall, etc), so that a cpu stall is always detected as cpu stall. Need to be careful so that it actually works the way we want and fit into "no output" timeout.

"task hung" detector does have this problem (see kernel/hung_task.c).
It wakes every TIMEOUT jiffies and checks were not scheduled since last check. So int the worst case it can detect hung only after 2*TIMEOUT jiffies.

Some additional details in this thread:
https://groups.google.com/d/msg/syzkaller-bugs/02D3QDgf0xU/5VCIhU2DBAAJ

Need to figure out what is "BUG: soft lockup", what's the timeout and how it is related to other bug types? Can a cpu stall be detected as both rcu stall and soft lockup?

Another point that come up here:
https://groups.google.com/d/msg/syzkaller-bugs/JwoXRjOYNnY/pIZWcXAoBQAJ
Some "task hung" reports can be not hangs, but instead just too slow execution so that a mutex cannot be taken for 2+ minutes. We either need to reduce load (reduce procs?) and/or increase task hung timeout.

Mailed "kernel/hung_task.c: allow to set period separately from timeout" patch to allow controlling task hung checking period:
https://groups.google.com/forum/#!topic/syzkaller/_noP1eMwYjQ

FTR, here is another example that was usually detected as rcu stall:
"BUG: soft lockup in __process_echoes"
https://syzkaller.appspot.com/bug?id=394dbeed8fefb909a5911101a36fff740bd0f5dc
And here is more analysis from Tetsuo:
https://groups.google.com/d/msg/syzkaller-bugs/IH78QI7hKqM/xQVtQwdcBgAJ


Don't use npm log level

The default log level of npm is warn.
Hence no log messages of prebuild are shown when it is used inside a npm-script.

@juliangruber Merge if you agree :)

5.1.1

@lgeiger Please add yourself to package.json :) (if you like of course)

Sure 👍 🎉


Update offline-plugin to the latest

CLA Signed

We're actually not using it for a while now, and it was fully removed with https://github.com/angular/angular-cli/pull/4143.

Sure. If you'll start using it again and 'll need some help then let me know :-)


Documentation links to wrong name on PyPI

https://pypi.org/project/pyperf/#history shows that a different project replaced this one in Dec 2018 of last year. The documentation for pyperf still points to this link and the pip installation instructions install the other project. (I found this out after installing it by accident.)
Has this project been abandoned? Deleted from PyPI? Is this a security issue?

Never mind. I see you very recently changed the name of the project to "pyperf"; however the project is still on PyPI at https://pypi.org/project/perf/.
This was very confusing, since even the README was changed to point to pyperf. Leaving this open until the documentation can be fixed.

I just renamed my "perf" project to "pyperf" to avoid confusion with the Linux perf program which has a Python binding using "perf" name as well: commit https://github.com/vstinner/pyperf/commit/60eb936a87e287c578e85ab33b8b9a91d609ba53
I checked that pyperf.readthedocs.io was available, but I only noticed that http://pypi.org/project/pyperf/ is already used after I pushed my change :-(
I contacted http://pypi.org/project/pyperf/ author ( http://brucespang.com/ ) to see if he would be to give me this name on PyPI.
If I don't get any answer from him, it seems like I will have to pick a different name. The safe option is simply to revert my big rename commit, and rename again the GitHub project (if possible!).

Personally I don't think there would be too much confusion from keeping the name perf. Distributions are shipping it as "python-perf", and it's already a well-known name attested elsewhere, for instance in this output when using timeit:
% pypy3 -mtimeit
WARNING: timeit is a very unreliable tool. use perf or something else for real measurements
pypy3 -m pip install perf
pypy3 -m perf timeit
------------------------------------------------------------

I just renamed my "perf" project to "pyperf" to avoid confusion with the Linux perf program which has a Python binding using "perf" name as well

Thankyou!
This has been causing conflicts on my system :)
Was about to file an issue but it was already fixed: please don't revert!

Thankyou!
This has been causing conflicts on my system :)
Was about to file an issue but it was already fixed: please don't revert!

It's not done yet, I don't know http://pypi.org/project/pyperf/ yet

I agree that it would be much better to find another name than "perf", which is already taken by
https://perf.wiki.kernel.org
pyperf would be perfect.
https://github.com/brucespang/pyperf does not seem to be a big project (only 2 commits).
@brucespang would you mind to "give" http://pypi.org/project/pyperf/ to @vstinner ? It would be the simplest solution.

The project is now officially renamed to pyperf (since its version 1.6.1). I even removed http://pypi.org/project/perf to force users to change their habbits, but the name was taken again in less than 2 hours! http://pypi.org/project/perf is now a different project.


Channel info leave channel

This ticket is to allow a user to leave the channel from the channel info screen.

Completed by #211.


Fix an incorrect WARNING output in docker run/create

This fix tries to fix an incorrect WARNING output in docker run/create, notice the %s and additional line linux:
ubuntu@ubuntu:~/docker$ docker run -d --cpu-percent 80 busybox top
WARNING: %s does not support CPU percent. Percent discarded.
WARNING: linux
e963d1108e455e7f8f57626ca1305b5f1999e46025d2865b9a21fc8abc51a546

The reason was that in daemon/daemon_unix.go, the warning string
was not combined with fmt.Sprintf before appended to the output.
This fix fixes this issue.
This fix has been manually tested and verified:
ubuntu@ubuntu:~/docker$ docker run -d --cpu-percent 80 busybox top
WARNING: linux does not support CPU percent. Percent discarded.
fcf53f79d389235bae846d3d40804834659ac025edbc0d075ed91841a8e4c740

Signed-off-by: Yong Tang<EMAIL_ADDRESS>

LGTM (IANAM)

LGTM


Workspace - Unsupported browser notification appears on the Xero setup page

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

issue found when validating #41415
Version Number: 1.4.70-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause internal
Slack conversation:
Action Performed:

Log in with a new expensifail account
Create a workspace
Enable "Accounting" on the WS settings page
Navigate to "Accounting"
Tap on the "Set up" button next to Xero

Expected Result:
The browser should be switched to a supported one or if it's not possible, the notification shouldn't appear for users.
Actual Result:
Unsupported browser notification appears on the Xero setup page.
Workaround:
unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/38435837/39942580-3d51-48f4-a9f8-37c0dc22cda6

View all open jobs on GitHub

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

We think that this bug might be related to #wave-collect - Release 1

Trying to recreate on iOS, my Android phone is at home. Added my test domain to the xero beta

Hmm, not an issue on iOS:

Confirmed: https://expensify.slack.com/archives/C01SKUP7QR0/p1714742239560959?thread_ts=1714741936.915729&cid=C01SKUP7QR0

I'm going OOO so unsassigning cc @twisterdotcom

@gijoe0295 ’s  proposal looks good.
🎀 👀 🎀 C+ reviewed

@gijoe0295's proposal LGTM.

@gijoe0295 Any updates on when the PR would be ready?

Hello, I'm back! Thanks @lakchote for assigning a new C+.

Payment Summary:

@mananjadhav paid $250 through NewDot Manual Requests (C+)
@gijoe0295 paid $250 [here](https://www.upwork.com/nx/wm/workroom/37203933/] (Contributor)

Waiting on you @mananjadhav for the checklist.

There is no offending PR for this one. We're using WebView and we added this as a follow up. Additionally we don't need a regression test for this one.
@twisterdotcom Payout for me will be after the whole Xero as a flat fee.


Atom Build and Install creates ~/.atom - Windows 10

Prerequisites

[x] Can you reproduce the problem in safe mode?
[x] Are you running the latest version of Atom?
[x] Did you check the debugging guide?
[x] Did you check the FAQs on Discuss?
[x] Are you reporting to the correct repository?
[x] Did you perform a cursory search to see if your bug or enhancement is already reported?

For more information on how to write a good bug report or enhancement request, see the CONTRIBUTING guide.
Description
After running the script/build process with specified install and build directories, atom still creates the ~/.atom directory. I recommend this to be addressed, because it inhibits the portability of the application.
It would be expected that the ~/.atom directory may be created when running the application, but not when installing, because it is necessary to change $ATOM_HOME environment variable to create portability, and in a portable environment, we cannot assume that the ~/.atom has been created on first run.
Steps to Reproduce
Atom is not installed, and your computer is in the state of never having Atom installed.

Using Regshot take a snapshot of the files of the drives and the registry
Run Atom's "script/build" --install-dir ../atom-install --build-dir ../atom-build
Regshot after build and install to notice that the ~/.atom directory has been created.

Expected behavior:
The only directories created are the build and install directories.
Actual behavior: [What actually happened]
The %USERPROFILE%\.atom / ~\.atom folder is created with:

~/.atom/.apm
~/.atom/compile-cache
~/.atom/.node-gyp
~/.atom/packages

Versions
master@f1cf66
ATOM
Atom    : 1.8.0-dev-f1cf66b
Electron: 0.36.8
Chrome  : 47.0.2526.110
Node    : 5.1.1

APM
apm  1.9.2
npm  2.13.3
node 0.10.40
python 2.7.11
git 2.8.0.windows.1
visual studio 2015

OS
Windows 10 - Version 1511

How does creating the ~/.atom folder during a build affect running it as a portable application?
Do you have a scenario where you want to build and update your portable copy?  Or are you imagining that people would want an entire script\build'able version that is portable?

I want to have a fully scriptable portable install process, because I plan on building an educational editing environment as a series of packages on top of Atom. It would simplify the process of keeping each editor separated and we would not need to worry about whether the person installing Atom may already have had it installed or not.
In my situation, I view Atom very similarly to Electron, because you can build anything you want on top of Atom, and when it comes to that portability, I think it should strive to be "as portable as Electron is" (I understand this is a silly way to look at it) This way someone can have an entire Atom environment configured perfectly for TypeScript, but not have those plugins and keybindings interfere with a second installation dedicated to basic text editing.

In my opinion the build script should not install atom at all. Would that also work for you?

@damieng Would we be able to add a way to add build only in the cli script? Something like a --build-only flag, or separating the build and install tasks are initial thoughts.
This might have the side-effect of speeding up CI tests (even if only on the developers machine).

I'm tempted to just remove the install step entirely - it actually installs the atom.exe into c:\program files\Atom right now which is a holdover from days before it went into %appdata%.

Script\build now no longer installs by default.
If you specify build should install then it will create the ~/.atom folder as part of the installation process (setting up the shell integration etc) is performed by Atom itself.


Move backports to appropriate places

Move backports from recipes-oss to directories as used by their HEAD version:

[x] python3-uinput #117
[x] cmocka — removed
[ ] cpputest
[ ] nlohmann-json

Both remaining packages are backports available with Scarthgap, so they are dropped in the near future anyway.


Show progress of endpoint action

When we're connected/disconnecting/deleting an endpoint show a progress icon in the endpoint's 'status' section.
We should also show the same spinner when we're updating all cnsis.. store.select(cnsisStatusSelector).map((cnsis => cnsis.loading))

This issue was moved to cloudfoundry-incubator/stratos#1510


Doesn't IE not support arrow functions =>

Just stating this incase it does not, good tutorial.

Correct. Arrow functions are part of ES2015 (a.k.a. ES6) and unsupported by IE.

I mentioned because of the IE support icon on your readme.

I can write you a simple => arrow to function script.

@raymondpittman  PR is welcome, thanks.


extension has blinking configs

We have n issue with UserIds in the config. First it is empty. Then it gets some content. Then the content disappears. Then we have content again and then it disappears again.
In our logic we have all config after loading and then it does not change.
Please have a look in attached video
https://github.com/prebid/professor-prebid/assets/53989171/0db31631-8572-405a-9ed8-c54b89cf93d0

HI @Andrii-Pavlenko ,
could you please provide a url of the page where you experience this issue?

Hi @florianerl,
you can try it on this page. You should also be use VPN to the USA to reproduce it, if you are not located overe there.

Hi @Andrii-Pavlenko ,
big sorry for the long radio silence!
Could you please let me know if version 0.2.73 fixes your issue?


[Unity] Skip shape checking on transformed params

cc @masahi @sunggg

seems we can't simply skip the weights. we need to check whether weights are dynamic, and only skip checking weights with static shape as for dynamic shapes we need to update shape heap


fix(ingest): set DataProcessInstance created ts to start time

In the dataJob runs tab (which shows dataProcessInstances), the "Time" column displays the dataProcessInstanceProperties.created timestamp. This change makes the emitter actually show the start times when provided.
Slack ref: https://datahubspace.slack.com/archives/CUMUWQU66/p1669108847712609?thread_ts=1669020230.808929&cid=CUMUWQU66
Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

Our tests ignore the timestamps so they remain unchanged. At some point we will need to add proper tests for this stuff though


Support custom encoding handler

The default encoding is utf-8 which always failed on most of Japanese website which using JIS.

Looks good, will pull this down and test a bit.

Will you send me an example of how you would use this? I can't figure out what your options.decoder would look like; it seems like its not any of the options available from the Node.js Buffer api.
Please forgive my ignorance of Japanese encoding.

Leaving this here for reference, it is a similar discussion from the request module:
https://github.com/request/request/issues/1080#issuecomment-56172161

Ended up merging this in pieces.
v2.3: options.decode() to handle custom encodings
v2.4: Typescript definitions index.d.ts
https://github.com/LevelNewsOrg/url-metadata/blob/master/CHANGELOG.md
Published to npm:
https://www.npmjs.com/package/url-metadata
Thank-you!


Stale warnings remain in VS Code for Pulse

See the blue squiggly, left over from a warning raised previously

I believe this has been fixed in the VS code extension.


a couple refinements for verticaltab

larger hit areas to show better focus state
hover states

more contrast between

animate active state for fun
organize components into separate files
add a gitprime story

@sweeting i made some changes to your design to give more contrast between the active/focus/inactive states

Looks good. I made these changes in Figma library too.


Language support for push messages and emails

Description:
User language to be saved and sent to cloud
Default language:
Operating system language (used as browser default)
Store language:
If profile has language different from browser language, then use profile language
Change profile language only if user manually changes it from settings
Store language setting to cloud automatically only if it doesn't exist yet
User stories:
User uses OS with language Finnish, browser uses default language Finnish.
He signs first time into Ruuvi Station Web - his profile doesn't have any language preference saved. Language is selected as Finnish and stored to cloud, because there was no previous setting stored.
Then user changes profile language in settings to French.
We will store language setting French to cloud.
Second user story:
Language German has been already stored to cloud previously (through other Ruuvi Station).
When user signs to Ruuvi Station Web and profile exists - Web profile will choose German.
We will send alert push messages and alert emails in language stored in cloud.

To test: open station in 2 browsers and another with different language.

Case 1:
<EMAIL_ADDRESS>user signed in on chrome mobile with OS/browser language Finnish
PROFILE_LANGUAGE_CODE="en"
Case 2:
<EMAIL_ADDRESS>user signed in on chrome mobile with OS/browser language German
No language code found in profile

Will run the tests with new profiles just in case and will ask Otso about results.

<EMAIL_ADDRESS>Android Chrome broser, OS language and browser language set to DE
First login, profile language code EN
So I consider this is not working correctly

@markoaamunkajo are you sure it was the first login for that account from devstation? Tried to reproduce with chrome on android but it works just fine on my phone.

@io53 we used devstation.ruuvi.com/staging for testing with Otso.
Is this the correct server to use?

Yes, should work in both environments


Issues with old script due to Numpy conversion?

https://gist.githubusercontent.com/zrksyd/d9f9cc72a29ec0cbf979e1a0de128476/raw/8f289c09b95e628f54b351ce127e024d33493f19/PS2VertexColor.py
I have this old script that allows me to edit the red lights' colors on Pokemon Stadium 2 (stage/poke_stadium2/normal/model/stc_ring_set/model.numshb). When I open the result in SSBH Editor and view the colorSet1, the colors haven't seemed to change. Printing the colors in the console, I see that it is now using Numpy types and not sure if that is messing with things. In the ZIP I included, the vanilla file is labelled as orig-model.numshb and the output from my script is model.numshb.
stc_ring_set.zip

It should work the same as before if you install the version of ssbh_data_py that you used when writing the script.

It might becasue I'm using your prerelease version taht's not done yet.. Maybe I should wait for you to push a release.

You can always create a virtual environment with a supported Python version and install in it using pip.

Nvm, i figured it out, also make sure to check out my PR for your pyprc fork.


Don't warn about missing '~'

This manually filters out ~ from the list of things to warn about. It truly makes no sense to warn on this since ~ has nothing it could link to - it is magical.
This fixes #532.

This is what we want! Thanks Alec!


Verbosity levels

Is your feature request related to a problem? Please describe.
I'm always frustrated when there is a lot of output from patching and substituting scripts.
The logger starts with DEBUG by default. This provides a lot of output.
Describe the solution you'd like
It would be of most use, if by default the logger would print only INFO messages.
Also it would be great to have -q, --quiet for absolute quiet except for errors and -v, --verbose for INFO and DEBUG messages.

A related but slightly different problem: when I use prune_binaries.py in my android build, it always prints out a full list of files it cannot find, which is unformatted and extremely long. I just had a look at the code and it is logged at ERROR level so that list will always be printed. It is probably better to only log number of files not found at ERROR level and leave the whole list to DEBUG level.

@wchen342 Yeah, these are the kinds of design choices in logging levels that I'm looking for. Would you be able to submit a PR for this change?
I'm not too experienced in creating effective logging (i.e. high signal-to-noise ratio). At some point, we should find/develop some rough guidelines for logging levels so we can update all tools the same way.

With #831, all that's left is to add a flag to change the log level. Perhaps we should add some function to _common.py to add common flags and callbacks in all utilities?

For now it seems the only common flags will be the log level ones? It may still worth the abstraction for future use though. I can add a function say add_common_flags(parser) to _common.py and call it in other scripts. Does this sound good?

@wchen342 Yep, that sounds good to me. Also yes, the log level ones should be the only common flags right now, but I don't think it will be the only flag that we will add. Perhaps we may want to add a log file path flag in the future, or even something not logging-related.

This is fixed with #832. We should create new issues for any other tool that can have better logging.


ferium: 4.3.4 -> 4.4.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/gorilla-devs/ferium/releases.
meta.description for ferium is: Fast and multi-source CLI program for managing Minecraft mods and modpacks from Modrinth, CurseForge, and GitHub Releases
meta.homepage for ferium is: https://github.com/gorilla-devs/ferium
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.4.0 with grep in /nix/store/fnf00mi6vwkhjpim9iai36ifbcmi9ibv-ferium-4.4.0
found 4.4.0 in filename of file in /nix/store/fnf00mi6vwkhjpim9iai36ifbcmi9ibv-ferium-4.4.0

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
ferium

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/fnf00mi6vwkhjpim9iai36ifbcmi9ibv-ferium-4.4.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A ferium https://github.com/r-ryantm/nixpkgs/archive/8f511d49a692d2e8cd950aac20b0c71b6bc65ac2.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/fnf00mi6vwkhjpim9iai36ifbcmi9ibv-ferium-4.4.0
ls -la /nix/store/fnf00mi6vwkhjpim9iai36ifbcmi9ibv-ferium-4.4.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

ferium

Maintainer pings
cc @leo60228 @imsofi for testing.

Result of nixpkgs-review pr 224386 run on aarch64-darwin 1

1 package built:

ferium


Can we add an API_URL attribute to the OpenAIAuth structure(BP/CPP)?

Because I have some LLM servers that are compatible with OpenAI's API, so I want to change it to the URL of my own server here.
Thanks!

Hi, I added API interface for C++ https://github.com/life-exe/UnrealOpenAIPlugin/blob/master/Source/OpenAI/Public/API/API.h
Example of usage: https://github.com/life-exe/UnrealOpenAIPlugin/blob/878d7822d95be1b99fbdfb4d88c6baee3473c5a9/Source/OpenAI/Private/Sample/APIOverview.cpp#L478
For blueprints it will be more complected. Need to think how to do it better.

OK，Thanks.
I'm looking forward to it in BluePrint.

Hi!
I've added URLOverride parameter to all blupeprint nodes. You can specify your own endpoint or leave it empty).
Release is here. Marketplace update will come later.


Large packets (2GB) don't get sent

Bug Report
It takes Tonic approximately ~25 seconds to prepare a packet when it's 2GB in size, but ultimately it doesn't get received by the localhost server and the client just sits idle. Gave up after 5 minutes of waiting.

Minimal repro attached
tonic-repro.zip

@seanmonstar you may be interested

This will just be a collection of various worst-case scenarios again:

Reading big data chunks with some read_to_end() API will require those to be resized/reallocated each time until they had been read completely. On each resize you need to copy all already received data into the new segment. Assuming you ask for 1MB extra on each resize you need 2000 allocations, with 2000 * 1 GB byte copies on average.
Besides that some problems with tokios AsyncRead trait might lead to calling excessive extra initialization of target arrays with 0s on every read. Which could mean at some time you will write up to 2GB of 0s for every read() call.

Fixes:

Generally: Don't use gRPC for transferring big data chunks. Use streaming.
Implementation wise: Things which read bigger chunks of data should resize them upfront to the target size and don't do dynamic resizing.

Surely though; they should still arrive properly?

Yep, I just checked with logs turned on, the chunk is rejected for a wrong reason (woops). I'll file an issue on the h2 repo.

@seanmonstar this issue https://github.com/hyperium/h2/issues/471?

Sounds about right. Tonic doesn't do any sort of checking for that and delegates to h2.


updateChildrenASync cannot be resolved

Android Studio App Development
I was developing my app when I (following google firebase guide) wrote the updateChildrenAsync method which I think is great for my purpose. The thing is that when I wrote it down in my code, Android Studio tell me that it cannot resolve the method and not me, not anyone knows why.
I have reopened Android, I checked the versions of the dependencies and everything.
I have been looking all over the internet and I came here empty handed because I found nothing.
I hope you can help me with this one.
I have all of this in my code:

build.gradle (from the app)

    implementation 'com.google.firebase:firebase-auth:16.1.0'
    implementation 'com.google.firebase:firebase-database:16.0.5'
    implementation 'com.google.firebase:firebase-storage:16.0.5'
    implementation 'com.google.firebase:firebase-core:16.0.5'
    implementation 'com.google.android.gms:play-services-auth:16.0.1'

My Java class

import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
[...]
    private FirebaseDatabase database;
    private DatabaseReference ref;
[...]
public ClassExample(){
        database = FirebaseDatabase.getInstance();
        ref = database.getReference("real");
}
[...]

protected void addNew(String idUser, String idOtherUser){
        Map<String,Boolean> realtionshipsToAdd = new HashMap<>();
        String proPath = "pro/"+idOtherUser;
        String notPath ="not/"+idUser;
        realtionshipsToAdd.put(proPath, Boolean.TRUE);
        realtionshipsToAdd.put(notPath, Boolean.TRUE);

        Task result = ref.updateChildrenAsync(relationshipsToAdd);
        [...]
}

The Structure of the database would be something like this:

{
  "real":{
       "pro":{
            "id1": {
                "id2": true
                "id3": true
            }
        },
        "not":{
            "id3": {
               "id1":true
            }
        }
   }
}

@eleallegue that method does not exist in the Android SDK, maybe you are following a bad or old guide?
However the existing updateChildren method is async:
https://firebase.google.com/docs/reference/android/com/google/firebase/database/DatabaseReference.html#updateChildren(java.util.Map<java.lang.String, java.lang.Object>)
So just change your updateChildrenAsync call to updateChildren and you'll be done.


Describe example yaml files in docs

What type of PR is this? documentation
This PR adds notes to the user documentation describing how to get the yaml files used in examples.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 31.654%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
3142

Relevant Lines:
9926

💛  - Coveralls


Two Clique Problem in graphs c++

Is your feature request related to a problem? Please describe.
Answer:  "A Clique is a subgraph of graph such that all vertices in subgraph are completely connected with each other. Given a Graph, find if it can be divided into two Cliques."
Describe the solution you'd like
Find complement of graph and return true if graph is bipartite else false
Do you want to work on it
C++
Please assign it to me

Please assign it to me , I want to work on this issue.

I would like to contribute to the above problem in java as I am a participant of GSSOC'21. Kindly assign this to me.


add basic trace about search request and result

@geirst please review
@vekterli was this what you needed?

Great! Infinitely better than the information void that was there previously 🥳


First-year seminars

Adds a first-year seminar indicator (fysem) to the courses table as well as the materialized views. Note that we do not have this status for courses before Spring 2014 (coded as NULL).

rerunning on server now - we'll need to add fysem to the static files generation too


[Header] is mis-named; actually a Heading

There's a very explicit distinction in web standards and practice between a header, and a heading. You guys seem to have called Heading a Header.
This is a pretty weird issue for me since I'm building a site using a custom semantic theme, and I have to explicitly not import the Semantic Header, and make a custom element called Header that's an actual header.
W3C terminology for reference:
https://www.w3.org/wiki/HTML/Elements/h1,_h2,_h3,_h4,_h5,_and_h6

These elements represent headings for their sections.

https://www.w3.org/wiki/HTML/Elements/header

The <header> element represents a group of introductory or navigational aids.

It would be nice if there was a real Header in semantic as well BTW.

We started discussing about this for the official community fork Fomantic-UI
https://github.com/fomantic/Fomantic-UI/discussions/2407


Minutes from 2021-01-20

I suggest we use squasn and merge not to have a ton of commits each week just for the minutes

I suggest we use squasn and merge not to have a ton of commits each week just for the minutes


Users SBAT to see only things affecting cUSD balance in the wallet activity feed

Expected Behavior
Only things affecting cUSD balance should appear in the Wallet activity feed.
Current Behavior
With the changes made for the new wallet home, received cGLD transfers now look the same as cUSD transfers.
Here for instance both the cUSD and cGLD transfers from the faucet look the same

Duplicate of #899


Problem: race condition in SFTP tests

Describe the bug
A recent CI run raised the following error:
=== Failed
=== FAIL: internal/sftp TestDelete/Errors_when_there_are_insufficient_permissions (0.12s)
    testing.go:1465: race detected during execution of test

=== FAIL: internal/sftp TestDelete (0.07s)

DONE 268 tests, 2 failures in 111.862s
make[1]: *** [Makefile:68: test] Error 1
make: *** [Makefile:76: test-ci] Error 2
Error: Process completed with exit code 2.

Which I could reproduce locally:
=== Failed
=== FAIL: internal/sftp TestDelete/Deletes_a_file (0.05s)
    testing.go:1465: race detected during execution of test
SFTP client exited session.
    --- FAIL: TestDelete/Deletes_a_file (0.05s)

=== FAIL: internal/sftp TestDelete/Errors_when_file_doesn't_exist (0.06s)
SFTP client exited session.
SFTP client exited session.
==================
WARNING: DATA RACE
Write at 0x00c000414200 by goroutine 108:
  github.com/artefactual-sdps/enduro/internal/sftp_test.TestDelete.func1()
      /home/radda/artefactual/enduro-sfa/internal/sftp/goclient_test.go:395 +0x3e4
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1595 +0x238
  testing.(*T).Run.func1()
      /usr/local/go/src/testing/testing.go:1648 +0x44

Previous write at 0x00c000414200 by goroutine 110:
  github.com/artefactual-sdps/enduro/internal/sftp_test.TestDelete.func1()
      /home/radda/artefactual/enduro-sfa/internal/sftp/goclient_test.go:395 +0x3e4
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1595 +0x238
  testing.(*T).Run.func1()
      /usr/local/go/src/testing/testing.go:1648 +0x44

Goroutine 108 (running) created at:
  testing.(*T).Run()
      /usr/local/go/src/testing/testing.go:1648 +0x82a
  github.com/artefactual-sdps/enduro/internal/sftp_test.TestDelete()
      /home/radda/artefactual/enduro-sfa/internal/sftp/goclient_test.go:373 +0x6b1
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1595 +0x238
  testing.(*T).Run.func1()
      /usr/local/go/src/testing/testing.go:1648 +0x44

Goroutine 110 (finished) created at:
  testing.(*T).Run()
      /usr/local/go/src/testing/testing.go:1648 +0x82a
  github.com/artefactual-sdps/enduro/internal/sftp_test.TestDelete()
      /home/radda/artefactual/enduro-sfa/internal/sftp/goclient_test.go:373 +0x6b1
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1595 +0x238
  testing.(*T).Run.func1()
      /usr/local/go/src/testing/testing.go:1648 +0x44
==================
    testing.go:1465: race detected during execution of test
    --- FAIL: TestDelete/Errors_when_file_doesn't_exist (0.06s)

=== FAIL: internal/sftp TestDelete (0.01s)

To Reproduce
It may take a few attempts:
make test GOTEST_FLAGS="-race -count=1 -run=^TestDelete"

Expected behavior
No race detected.

I've submitted a pull request with a fix. I felt clueless after reading the race reportwhen after reading the race report because the call stack isn't telling us that the issue is in startSFTPServer (goclient_test.go). Maybe this is a limitation in the reports when the issue is in test code as opposed to the application code, no idea!


{Service Connector} Refactor for Azure CLI forward compatibility

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
The precondition is to put your code inside this repository and upgrade the version in the pull request but do not modify src/index.json.

Service Connector


Import cbor2 not cbor

https://github.com/crossbario/autobahn-python/blob/e883eee48a5d796e22e86a43b5f4e43e419f6d9c/autobahn/wamp/message.py#L39
Finish process started in #926 and #722. Probably related to #1125 as well.

won't fix: cbor2 is a lot slower on pypy compared to cbor

Ohhh, hmm. That's lazy grep'ing on my part: you have to turn on AUTOBAHN_USE_CBOR2 to get cbor2 to be used? I was confused by "there's both cbor and cbor2 imports" ...

the line linked above isn't even releated to WAMP-cbor, but WAMP-flatbuffers, because with WAMP-flatbuffers, the WAMP message is flatbuffers, but the app payload (that is transported in a uint8[] at the FB level) must be somehow serialized - and that is currently fixed at cbor
yes, AB can use both cbor and cbor2 for WAMP-cbor, and the latter can be activated using AUTOBAHN_USE_CBOR2

rgd performance of cbor vs cbor2 (for WAMP-cbor): https://crossbario.com/docs/benchmarks/serialization/index.html


Save single file having multiple tables in an image

During inference, if a image has more than one table it return two images one table at a time. How can we save a single image having multiple tables in it?

Yeah @Atul997, if you can find anything, it would help me a lot. We are working on the same sample... 👍
Also, would help if you can solve issue with sample 4.
Many thanks. Jai Sri Ram. 😊 🙏

Where is sample?

You can find processed and clean samples here.  You are welcome, Jai Sri Ram 🙏

url shows 404 error.

please try again, link is 100% working for me, Jai Sri Ram 🙏

You can find processed and clean samples here. You are welcome, Jai Sri Ram 🙏

Not able to find the link :/
and pls don't use this collaborative platform to post religious remarks

okay, thank you for the constructive criticism, i will introspect, Jai Sri Ram  🙏.

Please block this user.he is posting vulnerable things into the platform.

sorry @Atul997 @pHequals7 , only wanted to help, Jai Sri Ram 🙏


Tutorials: updating the version to the Tribuo JAR files in the respective cells

Description
Updating the version to the Tribuo JAR files in the Java-based tutorials to bring them in sync with the recently released 4.0.2 version
Also fixed JavaDoc links in the Regression Tutorial.
Motivation
Raised as a fix on the back of #92

If you look at https://github.com/oracle/tribuo/commit/79b707eea0ddc5673cdd0e2d863b2c60b4f2d5d4 on the v4.0.X-release-branch you'll see the tutorials have the appropriate versions there.

If you look at 79b707e on the v4.0.X-release-branch you'll see the tutorials have the appropriate versions there.

Oh I see, when is due to release?
I also found the links to the JavaDocs were different (broken) - is there some auto-check to check in the tutorials and rest of the repo -- during some nightly CI/CD build process?

Feel free to close the PR if this is redundant

As I said in the other thread, I plan to fix all the versions in the tutorials in main to use 4.1.0-SNAPSHOT jars to reflect the version in main. If you want to do that with this PR that's ok, otherwise I'll do it a little later today.

If you look at 79b707e on the v4.0.X-release-branch you'll see the tutorials have the appropriate versions there.

Oh I see, when is due to release?

4.1 doesn't have a fixed release date yet, we're leaving it a bit to see what things the community are interested in to make sure we catch any other features that people are after. There are already improvements in the tree packages, and an implementation of K-Means++. We'll also land something about rescaling regressions to make sure the models build correctly as this is a specific issue with LibSVM, and a multi-label linear SGD model. There are other fit and finish things around the RowProcessor that we're looking at, along with updating the backends to the latest/upcoming versions (e.g. ONNX Runtime 1.6, TF Java 0.2.0, XGBoost 1.3).

I also found the links to the JavaDocs were different (broken) - is there some auto-check to check in the tutorials and rest of the repo -- during some nightly CI/CD build process?

The javadoc link is an oversight on my part, we changed the javadoc URL during the initial deployment of the website vs the internal mirror we had and I forgot to update it in the tutorial.

Kmeans++ sounds interesting.
I have applied the discussed changes across the notebooks. 4.1.0-SNAPSHOT all across now.

Kmeans++ sounds interesting.

It's already integrated in main - https://github.com/oracle/tribuo/blob/183008bde8530ec540d4b644b278f903d4e11874/Clustering/KMeans/src/main/java/org/tribuo/clustering/kmeans/KMeansTrainer.java#L324

Thanks!


How can I target the Picker text alignment on Android?

Hi. I'd like to justifyContent: 'flex-end' for the text inside a picker but it seems to have no affect on Android.
I'm trying to move 3 hours and Yes right justified next to the dropdown.
Thanks for any help!

@GollyJer Take a look at NativeBase-KitchenSink for examples
https://github.com/GeekyAnts/NativeBase-KitchenSink/blob/master/src/screens/list/list-icon.js

@stokesbga I shared source code of similar use case
I am sorry if you cant do this either

The use case is to put the picker in <Right></Right>? That didnt work for me

@stokesbga Yeah, the answer here wasn't helpful but we figured it out on our own.
Here's the component code from the screenshot above.
<View style={rowContainer}>
  <Text style={rowLabelText}>Timeline Interval</Text>
  <Picker
    style={internalPickerContainer}
    mode="dropdown"
    iosHeader="Select Interval"
    selectedValue={timeInterval}
    onValueChange={setTimeInterval}
    //
    itemStyle={pickerIosListItemContainer}
    itemTextStyle={pickerIosListItemText}
  >
    <Picker.Item label="1 hour" value={1} />
    <Picker.Item label="2 hours" value={2} />
    <Picker.Item label="3 hours" value={3} />
  </Picker>
</View>

To start, the row with the title and the picker needs to be space-between justified to push the title to the left and the picker to the right.
  rowContainer: {
    height: 64,
    flexDirection: 'row',
    justifyContent: 'space-between',
    alignItems: 'center',
    paddingLeft: 16,
  },

Then, to "align" the text to the right you actually have to resize the picker on Android.
  internalPickerContainer: {
    flex: Platform.OS === 'ios' ? 1 : null, // for Android, not visible otherwise.
    width: Platform.OS === 'ios' ? undefined : 120,
  },

And for completion... here's the remaining css.
  pickerIosListItemContainer: {
    flex: 1,
    height: 60,
    justifyContent: 'space-between',
    alignItems: 'center',
  },
  pickerIosListItemText: {
    fontSize: 16,
  },

Hopefully that helps.

As per my comment here https://github.com/GeekyAnts/NativeBase/issues/1716#issuecomment-375538617
Here is the code snippet
         <ListItem icon>
            <Left>
              <Button style={{ backgroundColor: "#4CDA64" }}>
                <Icon name="arrow-dropdown" />
              </Button>
            </Left>
            <Body>
              <Text>Pick SIM</Text>
            </Body>
            <Right>
              <Picker
                note
                iosHeader="Select Your Sim"
                iosIcon={<Icon name="ios-arrow-down-outline" />}
                mode="dropdown"
                selectedValue={this.state.selected1}
                onValueChange={this.onValueChange.bind(this)}
              >
                <Item label="TATA" value="key0" />
                <Item label="AIRTEL" value="key1" />
              </Picker>
            </Right>
          </ListItem>

Here is the screenshot for this

@stokesbga i hope your query is addressed appropriately

The use case is to put the picker in

Setting width works, but then the issue is that you may only activate the picker if you click on the right of the row, not anywhere else on the row, which is quite unintuitive for the user experience.


Thanks

the one and only remote app for Adguard Home on Android.
there could be a little more settings but works great and easy to connect at first time.

@ApolloGods Thank you for your feedback! This is the first version of the app, when I have more time, I will of course add more features and settings. That's exactly the problem I had: there was no app for Android. That's why I developed this app. Feel free to turn on the notifications for new releases.


Delete folder on job end and change paths to dvc directories

changed the way dvc directories are handeled within the datasources-storage volume
the git-repositories for upload are now save in 'git-repositories/{repo name}/complete
the path to the dvc directory of a given datasources is 'datasources-storage/datasources-in-use/{dsName}
and within this directory there will be a folder named 'complete' where the full version of the datasource the user chose to use is and all the snapshots he is using are under files labeled by the snapshot name.

This change is

/deploy

/deploy

#1777


[feature]: Include ParentFee when doing a CPFP using  bumpFee RPC

Currently when we try to bump the fee of a transaction via CPFP lnd's sweeper engine it is not accounting for the parent unconfirmed transaction:
https://github.com/lightningnetwork/lnd/blob/master/lnrpc/walletrpc/walletkit_server.go#L926
I was trying to give it a shot while implementing the kweight feature (#7454) but I am not quite sure how I can fetch the inputs of the transaction here:
utxo, err := w.cfg.Wallet.FetchInputInfo(op)
	if err != nil {
		return nil, err
	}

So we have the full transaction saved in the utxo.PrevTx, but to get the fee, I need to basically do Outputs - Inputs, but I do not know  how to fetch the Prevout Amounts being in the walletkit_server ? Any ideas how to do that ?

This feature would be useful in high-fee-scenarios, and a user would not have to do all this Effective FeeCalculation but just supply the feerate for the bumpfee, and the right effective fee would be calculated.

Ohh I see it says hard, aaargh nice challenge.

Not only should we take the parent into account when sweeping but also when opening channels with zeroconf funds.

I think this problem is pretty easy to solve for the bitcoind backend, before using a zeroconf output, query the mempool for its size via the rpc : bitcoin-cli getmempoolentry there all the important size caluclation is done.

Would love to see this. A lot of Zeus users struggle with calculating the effective fee rate on their own

Hello @ziggie1984 is this issue still active, I can see you made changes to the bumpfee function

Hello @ziggie1984 is this issue still active, I can see you made changes to the bumpfee function

Nevermind, I can see that it is for a different issue

I think this will be fixed by the new sweeper?

Seems like parents are being accounting for now, at least when bumping via cli

I think this will be fixed by the new sweeper?
Assuming it is aware of the entire input package.

Seems like parents are being accounting for now, at least when bumping via cli

I think you talk about the bumpclosefee rpc, which takes the parent commitment fee into account but for the normal lncli wallet bumpfee we still do not take the parent feerate into account when doing a CPFP. @kaloudis Or which RPC cmd did you try ?

I think this will be fixed by the new sweeper?

So I looked at the final version of https://github.com/lightningnetwork/lnd/pull/8514, it I don't think this is covered. For the CPFP case we still don't ask our backend to provide us with the detailed ancestor size.

For the CPFP case we still don't ask our backend to provide us with the detailed ancestor size.

Correct, we don't try to walk the transaction graph to get the fee of that unconfirmed component.

I think this is no longer relevant given the new behavior of our sweeper - when you do CPFP, a wallet utxo is grabbed and a sweeping request will be made. Then, inside the sweeper, the fee bumper will make an initial broadcast which guarantees the first attempt will succeed (or fail if the budget cannot cover the fees).
On the other hand, you can specify the max fees via Budget field, which gives you more control over the fees to be paid.

actually what @ziggie1984 is suggesting is, when creating the fee bumping tx, we should make sure the new tx always pays a higher fee, otherwise this new tx has no utility, which is not covered by the sweeper series.


Optimize automation lecture

Timings in WT2021/22 were:

13 mins for automation intro ... I had the feeling we could go faster over this part and not explain every item. Some interaction in this part might also be nice.
7 mins demo Docker image

I am not sure if students understood where this image was used in the end

46 mins GH actions including 20 mins demo

I liked "manual coding" part of the demo

19 mins GL runners slides and mainly demo
12 mins GL CI/CD slides and a bit of demo

So, in sum timing was pretty good.

closed by #172


Code outdated?

Hi @htammen,
I wanted to try your n-odata-server, but I guess LoopBack evolved into a version not compatible with yours. First, the link "Look here for details on installing and creating a loopback application" in Prerequisites is dead. Second, installation of LoopBack via "npm install -g strongloop" throws lots of warnings about deprecated components, and also lots of errors.
So I installed via "npm install -g @loopback/cli", and successfully created the LoopBack 4 ToDo Application (app, model, datasource, repository and controller), which works fine.
But as I understand out of your description, there should be a directory server with the files component-config.json and middleware.json, which should be enhanced with some coding, after installing the n-odata-server. But this directory does not exist.
Could you please revise your project.
Thanks,
chilkm

Updated readme with no longer mainained message

It works with LoopBack 3.


Added Micro800 option

I've added a checkbox for the Micro800 option.  I have noticed that the option is somewhat sticky in that after it has been enabled it seems to stay on regardless of any subsequent change to the option.  Since I set it to start as false, simply closing the application and restarting obviously "unsticks" the setting.

I'm thinking to unstick, when the micro800 selection changes, we need to close the connection to the PLC. Next read/write, it will reconnect with the updated state of the checkbox


[BUG] vmap over function returning constant value has incorrect output shape

Describe the bug
The output shape of a vmapped function that returns a constant value is incorrect. A vmapped function that returns a constant value (i.e., the value does not depend on its arguments) should return an array with the same size at out_axes as the arguments specified in in_axes. I've included an example below.
To Reproduce
import mlx.core as mx

@mx.vmap
def f1(x):
    return mx.array(1.0)

@mx.vmap
def f2(x):
    return x*0 + mx.array(1.0)

print(f1(mx.array([1, 2, 3])))  # array(1, dtype=float32)
print(f2(mx.array([1, 2, 3])))  # array([1, 1, 1], dtype=float32)

Expected behavior
The size of the output axis from a vmapped function should always equal the size of the arguments specified in in_axes. If the vectorized-over arguments have size 3 then the output shape of the function should also be 3 (at out_axes).
This ensures that functions returning constant values behave consistently, even when they do not depend on their inputs.
Desktop (please complete the following information):

OS Version: [e.g. MacOS 15.0.1]
Version [e.g. 0.19.0]

Additional context
Functions that return constant values are useful for maintaining a consistent interface, even if the output doesn't depend on the input. For example, in beamforming, different windowing functions (e.g., Hamming or rectangular) are applied to sensor data. While the rectangular window returns the same constant value (1) across all positions, it should still produce an output with the same shape as the input when used with vmap, ensuring compatibility with other windowing functions.

Thanks @barronalex and @awni ☺


feat: Distance and Similarity FAQ

#34  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tazarov and the rest of your teammates on  Graphite


[flutter_releases] Flutter stable 3.7.1 Framework Cherrypicks

Flutter stable 3.7.1 Framework
Scheduled Cherrypicks

Christopher's framework cp failed on customer tests as expected. Other than that the other cps were passing post submit after deflakes.
I left a question in release eng retro on why the framework cp need rebase and but engine cps are good to be merged in batches.

rebased and rerun presub checks to repass, merging now


Added rocksdb with transactions using Yiyuanliu branch of rust-rocksdb.

TODO:

Fix the lifetimes for the raw prefix search
Change the API and Database trait to support self referencing transactions
Use native rocksdb column families instead of prefixing (e.g. collecting signature shares for a given token and deleting the column later)
Perhaps create inherited traits for basic database -> transactional database -> transactional + column family database
Crate generic trait for expected "transaction" behaviors and functionality
Get rid of sled_impl and replace all references
Remove Batch.rs
Improve UT and add coverage for all expected trait functionality
Note: transactions are soon to be merged into rust-rocksdb we are simply waiting on a couple changes for the next rocksdb you can track the issue here https://github.com/rust-rocksdb/rust-rocksdb/pull/565/files#. Obviously we will want to change to master as soon as possible.

I think most of these TODOs should be addressed in separate PRs.
For lifetimes, feel free to add 98eae77d2b99ec1afa22c8fd6006a81b41bc7656 to the PR

On wasm side, I suggest making rocksdb optional dependency, and enabling it in minimint, ln-gateway and mint-client-cli

Okay the build should be fixed although with the inclusion of C code GitHub wont be able to compile and test without clang tools (I'm not sure how that works). As for the TODO's I think I'll limit this PR to adding the remaining tests for the existing database trait and making rocksdb an optional dependency and enabling it in those files Maan2003 mentioned. The other changes such as the migration to transactions and the other TODO's will have separate PR's.

notes for CI:

run cargo fmt
install clang in nix
make rocksdb optional dependency, so it is not used on wasm

feel free to include 9ebfa353051a5e5904a58f9e94fc2888507d954f for wasm fixes

You can try a nix flake update

Awesome that the tests finally run, you can probably clean up the git history a bit and squash some commits, then this should be ready for review!

What's the status here?

I have rebased and squashed some commits in https://github.com/Maan2003/minimint/commits/db-rebase


--sub-lang failed to download subtitles with dash in it.

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2019.04.07. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2019.04.07

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones
[x] Checked that provided video/audio/playlist URLs (if any) are alive and playable in a browser

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
youtube-dl -v --sub-lang pt-BR --write-auto-sub --skip-download https://www.youtube.com/watch\?v\=lmWh9jV_1ac
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'--sub-lang', u'pt-BR', u'--write-auto-sub', u'--skip-download', u'https://www.youtube.com/watch?v=lmWh9jV_1ac']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.04.07
[debug] Python version 2.7.15 (CPython) - Darwin-18.5.0-x86_64-i386-64bit
[debug] exe versions: ffmpeg 4.1.2, ffprobe 4.1.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] lmWh9jV_1ac: Downloading webpage
[youtube] lmWh9jV_1ac: Downloading video info webpage
[youtube] lmWh9jV_1ac: Looking for automatic captions
WARNING: pt-BR subtitles not available for lmWh9jV_1ac
[debug] Default format spec: bestvideo+bestaudio/best
...
<end of log>

Description of your issue, suggested solution and other information
Explanation of your issue in arbitrary form goes here. Please make sure the description is worded well enough to be understood. Provide as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.
After listing the available subtitles, we can only download the ones without the dash in the middle such as en, es. Failed in downloading zh-CN, pt-BR or similar ones. Command report WARNING: zh-CN subtitles not available .
 youtube-dl --all-subs --skip-download https://www.youtube.com/watch\?v\=lmWh9jV_1ac  can correctly download all the subtitiles.
# list available subtitles
youtube-dl --list-subs https://www.youtube.com/watch?v=lmWh9jV_1ac
Available subtitles for lmWh9jV_1ac:
Language formats
vi       vtt, ttml, srv3, srv2, srv1
ru       vtt, ttml, srv3, srv2, srv1
fr       vtt, ttml, srv3, srv2, srv1
en       vtt, ttml, srv3, srv2, srv1
pt       vtt, ttml, srv3, srv2, srv1
fa       vtt, ttml, srv3, srv2, srv1
pt-PT    vtt, ttml, srv3, srv2, srv1
zh-TW    vtt, ttml, srv3, srv2, srv1
ko       vtt, ttml, srv3, srv2, srv1
it       vtt, ttml, srv3, srv2, srv1
iw       vtt, ttml, srv3, srv2, srv1
zh-CN    vtt, ttml, srv3, srv2, srv1
ar       vtt, ttml, srv3, srv2, srv1
pt-BR    vtt, ttml, srv3, srv2, srv1
es       vtt, ttml, srv3, srv2, srv1
th       vtt, ttml, srv3, srv2, srv1
sr       vtt, ttml, srv3, srv2, srv1
es-ES    vtt, ttml, srv3, srv2, srv1
ja       vtt, ttml, srv3, srv2, srv1
pl       vtt, ttml, srv3, srv2, srv1

# success

youtube-dl --sub-lang en --write-auto-sub --skip-download  https://www.youtube.com/watch?v=lmWh9jV_1ac
[youtube] lmWh9jV_1ac: Downloading webpage
[youtube] lmWh9jV_1ac: Downloading video info webpage
[youtube] lmWh9jV_1ac: Looking for automatic captions
[info] Writing video subtitles to: How do tornadoes form - James Spann-lmWh9jV_1ac.en.vtt

# success

youtube-dl --sub-lang es --write-auto-sub --skip-download  https://www.youtube.com/watch?v=lmWh9jV_1ac
[youtube] lmWh9jV_1ac: Downloading webpage
[youtube] lmWh9jV_1ac: Downloading video info webpage
[youtube] lmWh9jV_1ac: Looking for automatic captions
[info] Writing video subtitles to: How do tornadoes form - James Spann-lmWh9jV_1ac.es.vtt

# failed

youtube-dl --sub-lang zh-CN --write-auto-sub --skip-download  https://www.youtube.com/watch?v=lmWh9jV_1ac
[youtube] lmWh9jV_1ac: Downloading webpage
[youtube] lmWh9jV_1ac: Downloading video info webpage
[youtube] lmWh9jV_1ac: Looking for automatic captions
WARNING: zh-CN subtitles not available for lmWh9jV_1ac

# failed

youtube-dl --sub-lang pr-BR --write-auto-sub --skip-download  https://www.youtube.com/watch?v=lmWh9jV_1ac
[youtube] lmWh9jV_1ac: Downloading webpage
[youtube] lmWh9jV_1ac: Downloading video info webpage
[youtube] lmWh9jV_1ac: Looking for automatic captions
WARNING: pr-BR subtitles not available for lmWh9jV_1ac

Should use --write-sub, not --write-auto-sub
youtube-dl --write-sub --sub-lang zh-CN --skip-download https://www.youtube.com/watch\?v\=lmWh9jV_1ac

works fine


Fix duplicate Pods when TaskRun or Pod labels are changed

Fixes #3656
The TaskRun reconciler may be given a TaskRun that does not have a previous status update containing the name of the pod it created.  The TaskRun reconciler deals with this by listing pods associated with the TaskRun.  It uses the TaskRun's labels, which were propagated to the pod, to find the pod.  If the user changes the TaskRun's labels, the Task's labels which are propagated to the TaskRun, or the pod's labels, while the TaskRun is running, it may cause the code to not find the existing pod and as a result it may create a duplicate.

Changes
Change the TaskRun reconciler to only use the Tekton-controlled label tekton.dev/taskRun when calling LIST to find the pod.
/kind bug
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[ ] Includes tests (if functionality changed/added)
[ ] Includes docs (if user facing)
[ ] Commit messages follow commit message best practices
[ ] Release notes block has been filled in or deleted (only if no user facing changes)

See the contribution guide for more details.
Double check this list of stuff that's easy to miss:

If you are adding a new binary/image to the cmd dir, please update
the release Task to build and release this image.

Reviewer Notes
If API changes are included, additive changes must be approved by at least two OWNERS and backwards incompatible changes must be approved by more than 50% of the OWNERS, and they must first be added in a backwards compatible way.
Release Notes
Fix duplicate Pods when TaskRun or Pod labels are changed

/lgtm

/lgtm


Add a 'reading' partial

reading has no template partial.
  "reading": [
    {
      "title": "",
      "flavor": "",
      "url": "",
      "author": ""
    }
  ]

Yes, following the spirit of the StackOverflow "reading" section which, AFAIK, was the first major site to highlight "reading" as potentially important to employers. Still an edge case, but it should be supported for every FRESH theme.

The way I look at it. I'm going to post the long form of the resume on my personal website. So every section specified on resume.json will be shown there.
Then the copies that I give to prospective employers will use a copy that contains a relevant subset. I think reading is a very good subject to include.
Who knows. If this matches StackOverflowCareers close enough, they may consider allowing it as an import format in the future.

Preliminary version added to 0.14.0 (forthcoming).


[CHORE]: Improve RAG retention via history context

What would you like to see?
When we send a chat like What is AnythingLLM the system will find relevant context, if any and append it under the system prompt.
{SYSTEM}
<context>
<context>
# No history
<user prompt>

However, on follow up request, where we may not get a vector search result due to ambiguity like tell me some features
We will get a flow like
{SYSTEM}
# NO CONTEXT!
<reply from prompt 1 from LLM>
<user prompt>

This puts 100% of the response result on the <reply from prompt 1 from LLM> response where we could leverage the previous citations in the history to help offload the responsibility and scope of the answering.

This would be a good enhancement. Instead of having to rely on condensed pieces of second hand information, allowing it to access the same full source citations found earlier would reduce the tendency to hallucinate or guess from general knowledge.
Now the implementation questions are:

When will you add previous chunks? Only when no chunks where found at all or will you also backfill chunks when the # retrieved is below the max # set.
How many messages back to look for previous chunks? (only most recent message with chunks VS as far back as needed to fill till max # is reached)

When will you add previous chunks? Only when no chunks where found at all or will you also backfill chunks when the # retrieved is below the max # set.

Backfill when window is not full at all times, even when empty for the prompt itself since there is no semantic way to determine if it should or should not be appended. If its irrelevant the model should emit response tokens to simply not include references to citations that wont help generate the answer. If we omit appending if the inital query is empty we are pretty much back where we started!

How many messages back to look for previous chunks? (only most recent message with chunks VS as far back as needed to fill till max # is reached)

As far back as needed to backfill with unqiue sources. However the chat history itself only goes back so many messages, so its not like each request will loop up a 1,000 chat long session. By default the appended LLM history is 20 message pairs

Agree on both.


User list page memory usage

http://ojs.io/admin/user
2015/04/15 07:06:35 [error] 753#0: *61826 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 512 bytes) in /var/www/ojs/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php on line 129" while reading response header from upstream, client: <IP_ADDRESS>, server: ojs.io, request: "GET /admin/user/ HTTP/1.1", upstream: "fastcgi://<IP_ADDRESS>:9000", host: "ojs.io", referrer: "http://ojs.io/admin/dashboard"

I will fix it, need pagination.
--
Emre YILMAZ
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
On 15 April 2015 Wednesday at 10:42, Hüseyin Mert wrote:

http://ojs.io/admin/user
2015/04/15 07:06:35 [error] 753#0: *61826 FastCGI sent in stderr: "PHP message: PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 512 bytes) in /var/www/ojs/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php on line 129" while reading response header from upstream, client: <IP_ADDRESS>, server: ojs.io, request: "GET /admin/user/ HTTP/1.1", upstream: "fastcgi://<IP_ADDRESS>:9000", host: "ojs.io", referrer: "http://ojs.io/admin/dashboard"
—
Reply to this email directly or view it on GitHub (https://github.com/okulbilisim/ojs/issues/462).


legacy_server_login: Do better error handling.

Show better error messages and validate zulip_org_id in JS before sending it to the server and give an appropriate error message.

Merged, thanks @amanagr!


WalletConnect 100% CPU usage and increased device temperature due to the checkPairingState being run each second

Describe the bug
Hello WC team!
We experience a huge CPU usage and highly increase device temperatures while using your SDK.
We use WalletConnect Swift Web3Modal, but according to the logs the issue is in the main WC Swift V2 library.
From what I've found you setup a timer in PairingStateProvider which updates each second and inside it Decodes the sessions from the storage.
SDK Version

Client: Swift
Version: 1.13.0

To Reproduce
Steps to reproduce the behavior:

Initialize WC SDK
Open Xcode App profiler and check CPU usage

Expected behavior
No high CPU usage.

If it is essential to check session each second, at least cache them in-memory to avoid long running operations.
Moreover, some of these operations are happening on the main thread, which also affects an app performance

Screenshots
Attaching the place where the issues is located

Device (please complete the following information):

Device: iphone 15 pro max
OS: ios 17.4
Browser - (native app)

thanks for reporting this, I will investigate.

Hello guys! Do you have any news/updates? Thanks!

Hey, yes, we expire pairings earlier now and there should not be as many objects in the storage anymore.
Please upgrade to the latest version

Hey, yes, we expire pairings earlier now and there should not be as many objects in the storage anymore. Please upgrade to the latest version

Hey! Ok, thank you!

thanks for confirming, closing the issue then


Unify writing service JSON to secure file for gcloud

Context:
https://github.com/apache/airflow/pull/5612#discussion_r305337792

https://github.com/PolideaInternal/airflow/pull/250
https://github.com/PolideaInternal/airflow/pull/251


chore(crux-ui): changed try and catch

regarding issue #270

Please sign your commits then the PR can be merged 🚀

Will do asap

@oriapp you need any help with signing your commits?

@polaroi8d No, I'll push the verify changes in a few minutes

https://github.com/dyrector-io/dyrectorio/pull/281


irc github hooks for #pothos

It would be nice to see pull requests and issue events show up in the support chat: https://github.com/pothosware/pothos/wiki/Support#irc-chat-on-freenodenet

testing something, please ignore

test message

test

Sorry about all of the noise. The pothos.slack is now setup with github support and configured to receive event messages from github projects to the #general channel. And a new bot named pothosbot acts as a bridge between slack and #pothos on IRC freenode. Users can also communicate between slack and IRC this way.
If the bot gets too chatty or the github messages could be configured better, please let us know!


Noslow

eating a gapple or blocking with a sword while using noslow stops sprint in air

what noslow mode are you using

it happens on all modes

it happens on all modes

We will add keepsprint to rebase, as of right now it is just a remap to make the code more readable.


Dependencies with C bindings being rebuilt every time

Hi, I'm running into rebuilds for some of my dependencies, but not all of them.
Specifically, it seems like the cargoArtifacts are missing the dependencies with C bindings. In this case surrealdb with  thespeedb feature enabled (a C++ project).
I summarized the logs a little to show the problem more concisely:
[...]
   Compiling dotenvy v0.15.7
   Compiling surrealdb v1.5.4
   Compiling my_crate v0.1.0 (/build/source)
    Finished `release` profile [optimized] target(s) in 9m 51s
buildPhase completed in 18 minutes 9 seconds
[...]
Running phase: installPhase
no previous artifacts found, compressing and installing full archive of target to /nix/store/5yqm4ziffm4idxgcm8cgy0i3vgxw0j96-my_crate-deps-0.1.0/target.tar.zst
[...]
decompressing cargo artifacts from /nix/store/5yqm4ziffm4idxgcm8cgy0i3vgxw0j96-my_crate-deps-0.1.0/target.tar.zst to target
[...]
++ command cargo build --release --message-format json-render-diagnostics --locked
   Compiling bindgen v0.65.1
   Compiling libspeedb-sys v0.0.4+2.7.0
   Compiling speedb v0.0.4
   Compiling surrealdb-core v1.5.1
   Compiling surrealdb-core v2.0.0-1.5.4
   Compiling surrealdb v1.5.4
   Compiling my_crate v0.1.0 (/build/source)
    Finished `release` profile [optimized] target(s) in 11m 54s

As you can see, there are 6 crates other than my-crate being built on the second step, but they were present on the first build, so they are being built twice.
This wouldn't be such an issue in most cases, but these dependencies are about 80~% of the compile time of my crate, so caching them is essential for CI in my case.
I tried looking around the docs to see if there was an option for this but I couldn't find anything.
Thank you for your time and for crane. Loving the project so far.

Use cargo -vvv (or something like it) to figure out the reason for the rebuild.

Hi @bonofiglio thanks for the report! I see bindgen showing up in the build log so you might be hitting this situation: https://github.com/ipetkov/crane/blob/7ce92819802bc583b7e82ebc08013a530f22209f/docs/faq/rebuilds-bindgen.md
If that's not the culprit I would double check whether the same buildInputs and nativeBuildInputs are being used across the derivation producing cargoArtifacts (e.g. craneLib.buildDepsOnly) and the derivation that is consuming it. I know that sometimes adding different inputs causes certain environment variables/paths to be updated, and a number of crate build scripts configure themselves to be re-run if those variables change.
I'm afraid I can't suggest anything beyond that without a flake which reproduces the problem!

Thank you for your both your answers @ipetkov and @dpc. The issue was exactly the one linked by @ipetkov.
That is a very hard one to debug 😅


GitLab Source Support

Support GitLab
https://docs.gitlab.com/ee/api/repository_files.html
PR on the way

Great thanks!
On Wed, Feb 12 2020 at 12:48 AM, centrifugellc <<EMAIL_ADDRESS>> wrote:

Support GitLab
https://docs.gitlab.com/ee/api/repository_files.html
PR on the way
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub (
https://github.com/simplesteph/kafka-security-manager/issues/72?email_source=notifications&email_token=AE7CW2N6525L626FPTM63MLRCNBNLA5CNFSM4KTPBBQKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IMYVPNQ
) , or unsubscribe (
https://github.com/notifications/unsubscribe-auth/AE7CW2ICYCCPD57RBP3F5QDRCNBNLANCNFSM4KTPBBQA
).

closed by #73


DAF 5 - No Credential related Message were being saved during Self singed Claim

Hi Team,
I was using the below code for signing and saving the claims and it was storing data in Credential table but not in Message table
    async signVc(claimType: string, claimValue: string) {
        let credentialSubject: object = {}
        credentialSubject[claimType] = claimValue
        credentialSubject['id'] = this.userIdentity?.did

        const vcJwt: Daf.Credential = await agent.handleAction({
            type: W3cActionTypes.signCredentialJwt,
            save: true,
            data: {
                '@context': ['https://www.w3.org/2018/credentials/v1'],
                type: ['VerifiableCredential'],
                issuer: this.userIdentity?.did,
                credentialSubject: credentialSubject
            }
        } as ActionSignW3cVc)

Then I need to write further code as mentioned below to store data for self sign claims in table

        const sdrMessage: Daf.Message = await agent.handleMessage({
            raw: vcJwt.raw,
            save: true, // default = true
          })

Now I am not sure if there is a Bug in agent.handleAction Or it is a must to use agent.handleMessage to save data in Message table?

That is the expected behaviour.
Credential !== Message
You don't have to query Message table to get the list of credentials. Just query Credentials table.

@simonas-notcat Yes I agree Credential !== Message
But Message does have a type called w3c.vc, sdr or other as well so that mean the table should record all the actions happening in the application and When we try to query Message table then we don't find the records of Self Signed Claims creation as they dont get inserted until we use the below additional logic
  const sdrMessage: Daf.Message = await agent.handleMessage({
            raw: vcJwt.raw,
            save: true, // default = true
          })

``

![Screenshot 2020-06-10 at 09 59 06](https://user-images.githubusercontent.com/44597990/84242412-1abafb00-ab01-11ea-9578-39cf46e8b8dd.png)

`

So Do you think, everything should be added to message table as well as a Log else we need to query each tables separately to fetch the history .. What do u suggest