Conflicting timeout properties docs for Proxy Reference?

I'm confused by references to upstream timeout configuration between Proxy Reference and Admin API Service Object. Are these two sets of configs applying to different configurations, or the same?
In https://docs.konghq.com/2.0.x/proxy/#3-proxying--upstream-timeouts:
upstream_connect_timeout: defines in milliseconds the timeout for establishing a connection to your upstream service. Defaults to 60000.
upstream_send_timeout: defines in milliseconds a timeout between two successive write operations for transmitting a request to your upstream service. Defaults to 60000.
upstream_read_timeout: defines in milliseconds a timeout between two successive read operations for receiving a request from your upstream service. Defaults to 60000.

In https://docs.konghq.com/2.0.x/admin-api/#service-object/:
connect_timeout optional The timeout in milliseconds for establishing a connection to the upstream server. Defaults to 60000.
write_timeout optional The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. Defaults to 60000.
read_timeout optional The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. Defaults to 60000.

Is it possible that the docs are just outdated? Googling I've found references for these upstream_* properties in pre-2.0 Kong versions.

@dlouzan You're correct, the docs are out of date!
The Admin API doc is correct and the Proxy Reference is wrong. The attributes are called connect_timeout, write_timeout and read_timeout.


Typed transitions

(Opening for the sake of discussion... the two last commits are probably salvageable but the first one is up to debate :grimacing:).

:round_pushpin: Make transitions visible at the type-level.
Not sure I want to commit that as this is venturing more and more in
the lands of dependent-types... therefore adding complexity to the
code for actually here little gain apart from a more descriptive
module API.
What motivated this change initially was an attempt at simplifying the
underlying test-code where we do know exactly what transition we want
to do. Thus, getting back an opaque 'SomeOnChainHeadState' forces some
needless unwrapping via reify state. It ain't much, as we are really
just talking about one case/pattern-match but still... that was the
initial motivation. With this new approach, we can remove that extra
pattern match on call-sites by using transition directly, with some
type annotation as for the transition we expect and tada! Yet.. the
definitions are a bit more complex now as I added a new type-class and
some glue to make things work :/

:round_pushpin: write another property on commit transition.
can only apply/observe the same commit once.

:round_pushpin: dry a bit the StateSpec: define forAllCommit.

I have to say, I exalt where this is taking the test code! I went through re-expressing the same properties as the ones we have in the Direct.TxSpec module (except the '< max tx size' ones) but using the higher-level state API instead and... I like it. I think the properties gives even more coverage actually since I am able to combine generators in quite arbitrary ways  AND, more importantly, they don't feel at all like we are re-stating the implementation in a slightly different and applied way.
I'd make a case for actually deprecating (a.k.a removing) the tests in TxSpec in favor of this new form, which gives us the same (if not more?) coverage.


Cleanup

Fixed various formatting issues to comply with Flake8, removed unused imports

A clean up is no good if things can just get messy again. Enforcing your style choices through tests will help keep things neat, as well as guide new contributors on how to style their code.

I've rebased this on master


buffering for flush?

Question: does Trill buffer the stream for batch flushing?
Trill's flush policy specifies when to flush batched output events through the entire query from the ingress site. For non-partitioned streams, the default policy is "FlushOnPunctuation" that when punctuation is ingressed or generated, a flush will also be propagated through the query.
Moreover, the default onCompleted policy is "EndOfStream" that moves the “current time” to infinity before completing and causes all of the tuples that may be within the system to be pushed through the query plan.
Therefore, given a stream of integers as "1,2,3,4,...,N", suppose Trill's query plan applies an identical mapping to the integers -- ".Select(x=>x)", by default, all integers will be all batched together and flushed when the stream terminates.
To me, it looks like Trill buffers all the input integers at someplace and releases the buffered data when the stream terminates (onCompleted method is called). So when N is large, exp., one billion, the execution of the program shall leverage a huge amount of memory.
However, in experiments, after I profiled the program, I found Trill actually used very small memories. Therefore, I want to ask what is the magic of Trill, and how can Trill "flush" the data batch without buffering all the data.
Code for the experiment is attached below:
public class TrillSimple
{
    public static void Run()
    {
        // disable Trill's columnar optimization
        Config.ForceRowBasedExecution = true;
        // initialize an input stream (Rx.NET observable) that produces
        //     a stream of "long" values, "0,1,2,...,N"
        IObservable<long> rxStream = new InputStream(1000000000);
        // initialize a consumer that consumes the results by updating the last value it receives
        IObserver<StreamEvent<long>> rxConsumer = new LastSaver<StreamEvent<long>>();

        // ingress the rx stream into Trill
        //     + add timestamp by CreateInterval: {start: 0, end 1, val 0}, {start: 1, end 2, val 1}, ...
        //     + flush the data batch arrival for the arrival of each element
        IObservableIngressStreamable<long> ingressStream =
            rxStream.Select(x => StreamEvent.CreateInterval(x, x + 1, x))
                .ToStreamable(DisorderPolicy.Drop(),
                              FlushPolicy.FlushOnPunctuation,
                              OnCompletedPolicy.EndOfStream);

        // A type representing the empty struct, similar to Unit in other libraries and languages.
        //     Here, Empty is the grouping key type for the streaming data
        IStreamable<Empty,long> trillFilteredStream =
            ingressStream.Select(evt => evt);

        // egress Trill's output into rx
        IObservable<StreamEvent<long>> outputStream =
            trillFilteredStream.ToStreamEventObservable();

        // execution of the query
        outputStream.Subscribe(rxConsumer);
    }
}

public class InputStream : IObservable<long>
{
    private readonly long N;
    public InputStream(long N) {
        this.N = N;
    }

    public IDisposable Subscribe(IObserver<long> observer)
    {
        for (long i = 0; i < this.N; i++) {
            // Console.WriteLine("Input Sends: "+i);
            observer.OnNext(i);
        }
        observer.OnCompleted();
        // since no more input will be sent, the subscription shall be empty
        return Disposable.Empty;
    }
}

Each Trill operator (including ingress) can buffer up to Config.DataBatchSize (configurable, default 80,000) events. When FlushPolicy is not specified or set to None, Trill operators can buffer these events until this batch is full, at which point it will egress that batch to the next operator(s). Of course, operators will only buffer the state necessary, so e.g., if you are aggregating the sum of events over some window, that aggregate state will only be the sum, not all the events contributing to that sum.
FlushPolicy.FlushOnBatchBoundary will buffer events at ingress until that batch fills up, but then flushes that batch throughout the entire query, even if downstream operators decrease the number of events such that the downstream operator buffers are not full.
FlushPolicy.FlushOnPunctuation/FlushOnLowWatermark will flush all buffers in response to the punctuation/low watermark (either explicitly ingressed into Trill or generated by Trill)

Each Trill operator (including ingress) can buffer up to Config.DataBatchSize (configurable, default 80,000) events. When FlushPolicy is not specified or set to None, Trill operators can buffer these events until this batch is full, at which point it will egress that batch to the next operator(s). Of course, operators will only buffer the state necessary, so e.g., if you are aggregating the sum of events over some window, that aggregate state will only be the sum, not all the events contributing to that sum.
FlushPolicy.FlushOnBatchBoundary will buffer events at ingress until that batch fills up, but then flushes that batch throughout the entire query, even if downstream operators decrease the number of events such that the downstream operator buffers are not full.
FlushPolicy.FlushOnPunctuation/FlushOnLowWatermark will flush all buffers in response to the punctuation/low watermark (either explicitly ingressed into Trill or generated by Trill)

Thanks for the reply. After setting Config.DataBatchSize to a large number, I observed the explosion of memory utilization. Thanks again.


Fix the lambda_utils-publish task

What is this PR trying to achieve?
Ensure we can publish the lambda_utils package to PyPi
Who is this change for?
Folk who want to make use of our shared lambda_utils package
Have the following been considered/are they needed?

[ ] Deployed new versions

Worth noting we won't be sure this works in Travis until it's merged.


Footprint: Get rid of underscore

We still use underscore in a few places. This should be relatively easy to fix.

Implemented on master (v1.0.0).


Small improvement to readme

Preview: https://github.com/HappyFacade/auth.js/blob/patch-1/README.md

Could you explain the changes @HappyFacade ?

closing due to inactivity


Update scio-core, scio-test to 0.14.5

About this PR
📦 Updates

com.spotify:scio-core
com.spotify:scio-test

from 0.10.4 to 0.14.5
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.spotify" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.spotify" }
}]

labels: library-update, early-semver-major, semver-spec-minor, version-scheme:early-semver, commit-count:1

Superseded by #317.


Remove libp2p backend

The functional tests passed after switching to mock backend, but the peer manager peerdb tests need to be made generic and some additional tweaks are required.


DB Session leak in jobs.py?

It appears that there may be a database session leak within the jobs module. I'm running a 100 node airflow cluster and am running out of database connections on my Postgresql server which has max_connections set at 1000. When I query the connections I see the following:
select count(*),state from pg_stat_activity group by state
count state
2	active
75	idle
495	idle in transaction
Looking into the "idle in transaction" connections it appears that they are all running this type of query:
"SELECT job.id AS job_id, job.dag_id AS job_dag_id, job.state AS job_state, job.job_type AS job_job_type, job.start_date AS job_start_date, job.end_date AS job_end_date, job.latest_heartbeat AS job_latest_heartbeat, job.executor_class AS job_executor_class, job.hostname AS job_hostname, job.unixname AS job_unixname
FROM job
WHERE job.id = 64157
LIMIT 1"
If I search through the jobs.py module there appear to be many spots that might result in this kind of query getting generated and not all of them close the session after querying. Could this be the source of the leak?

Based upon further research it looks like there are two main sources of connection leaks. One is in the heartbeat method of the jobs module. That one is responsible for the huge number of idle in transaction connections. Calling settings.engine.dispose() in the heartbeat method seems to keep the number of these idle in transaction connections from growing unboundedly although 1000 active task instances still keeps about 300 DB connections busy at all times with the heartbeat.
The other main source of leaks is in the TaskInstance class. Once I've dealt with the leak in jobs.py the number of "idle" connections begins to grown unboundedly until all connections run out and tasks start getting bounced. I've tried disposing the engine in a few key methods of that class but the session handling there is less straightforward and I haven't been able to figure it out yet.

100 nodes! nice to hear that. Ok well I've done some research on this before. SqlAlchemy pools connection, so even when adequately closing the connections in the code, sqla does some magic that you may or may not want.
Here's how it's configured in the Airflow code:
https://github.com/airbnb/airflow/blob/master/airflow/settings.py#L58
More about sqla session pooling:
http://docs.sqlalchemy.org/en/latest/core/pooling.html
It's probably safe to assume that it's nice for the web server and scheduler to have small connection pools, but that the individual airflow run commands should have none. Each heartbeat should pop a new connection and close it. I'm also ok with making those settings configurable.

I agree about pooling on server vs. worker. Since workers scale out they should be extremely aggressive about letting go of DB connections. It looks like closing the session is not enough to close out the connections you actually need to dispose of the engine. I think I was able to pinpoint the culprit that was responsible for eating up connections ad infinitum. It was actually the TaskInstance class that was generating idle unclosed connections. Once I patched it, things got relatively under control. I will PR these changes some time this week.
The heartbeat code still generates 1 idle_in_transaction connection per worker pretty much constantly. I was surprised to see this as I had switched the heartbeat to 60 seconds and dispose of the connections aggressively. I haven't had time to sort this out yet. It would be good to get this sorted as I want to be able to scale to about 6000 cores.
One thing that I noticed was that the session handling inside the airflow code isn't super consistent. Sometimes there is a centrally managed session and sometimes spurious sessions are created within methods. In general Sqlalchemy encourages session handling to be done centrally in a wrapper: http://docs.sqlalchemy.org/en/latest/orm/session_basics.html#session-frequently-asked-questions
rather than in individual methods.

+1.
In general, db connections should be pooled for all usage. Some databases, e.g. Oracle, cannot handle constant db connection turnover - it results in fragmentation on the db side.

The more I think about this the more it seems that the necessity for workers to communicate with the database for heartbeats, is a scalability constraint. If you maintain a connection pool on each worker then you potentially need thousands of db connections just to maintain heartbeat. Why not have workers stick their updates into a queue that the server reads from? Why not have kill messages delivered via queue based events as well? None of these operations require transactionality that it would be worth to pay the scalability cost for.

The airflow worker is a thin wrapper around the celery worker command and doesn't do much more than running the airflow run commands it receives from the queue. airflow run commands are executed as subprocesses and are the ones getting the connection count up.
From my perspective, the short term solution is to alter the sqlalchemy behavior when running airflow run to not maintain a pool. At every heartbeat (every minute, but configuraable), a connection would be created and destroyed.
Another longer term solution would be to go through a REST api call. I would prefer that over the message queue idea since only in the case of the CeleryExecutor we have the assumption that there is a message queue to be used.

removed the bug tag as this is more of a scalability issue than a bug

Alright, I gave it a shot as I know this issue will hit Airbnb soon (we had this issue in the past, but we extended our mileage with cranking up the number of sessions in MySql and reducing the pool sizes)
https://github.com/airbnb/airflow/pull/1021
@llevar please confirm that this reduces the number of sessions on your DB significantly
@r39132 @aoen

Thanks for working on this Maxime. I'm currently running a massive job which will likely only finish by the end of the week. I should be able to test then.

@llevar any feedback? Closing the issue here in favor of a Jira issue if this issue persists.


[hotfix][ci] Fix license check error, due to commons-codec version diff

Purpose of this pull request
I find all the ci of the latest PR is failed, due to the license check failed.
This is due to the THIRD-PARTY.txt.tmp is diff with LICENSE
The current license.py cannot deal with below case, and will just discard below case.
(Apache License, Version 2.0) (The Apache Software License, Version 2.0) Apache Commons Codec (commons-codec:commons-codec:1.10 - http://commons.apache.org/proper/commons-codec/)

This PR is just wanted to make the ci passed.
Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in you PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/incubator-seatunnel/tree/dev/docs

@CalvinKirs @asdf2014 PTAL.

This is due to the THIRD-PARTY.txt.tmp is diff with LICENSE

This is not the root cause, which is the sortArtifactByName option of maven plugin should be disabled. Because when it has been enabled, the content of THIRD-PARTY.txt seems not right, and it has been solved by https://github.com/apache/incubator-seatunnel/pull/1387

As you can see from above image, the log is missing the commons-pool:commons-pool:1.6, it caused by the maven plugin with the sortArtifactByName option is enabled. And it has been solved by https://github.com/apache/incubator-seatunnel/pull/1387 .
By the way, because this change cannot fix the root cause, so it won't add the commons-pool:commons-pool:1.6 license back, which is not the right way.

this pr doesn't add it back

the https://github.com/apache/incubator-seatunnel/pull/1387 pr dose add it back

Last, I wouldn't recommend add too many map instance in script, since it is equal to add licenseMerge option of maven plugin, which is more ease to use.
Anyway, thanks for your idea.

As you can see from above image, the log was missing the commons-pool:commons-pool:1.6, it caused by the maven plugin with the sortArtifactByName option was enabled. And it has been solved by https://github.com/apache/incubator-seatunnel/pull/1387 .
By the way, because this change cannot fix the root cause, so it won't add the commons-pool:commons-pool:1.6 license back, which is not the right way I think.

this pr doesn't add it back:

the https://github.com/apache/incubator-seatunnel/pull/1387 pr dose add it back:

Besides, I wouldn't recommend add too many map instances in script, since it is equal to add licenseMerge option of maven plugin, which is more ease to use.
Anyway, thanks for your idea :smile:

As you can see from above image, the log was missing the commons-pool:commons-pool:1.6, it caused by the maven plugin with the sortArtifactByName option was enabled. And it has been solved by https://github.com/apache/incubator-seatunnel/pull/1387 .
By the way, because this change cannot fix the root cause, so it won't add the commons-pool:commons-pool:1.6 license back, which is not the right way I think.

this pr doesn't add it back:

the https://github.com/apache/incubator-seatunnel/pull/1387 pr dose add it back:

Besides, I wouldn't recommend add too many map instances in script, since it is equal to add licenseMerge option of maven plugin by https://github.com/apache/incubator-seatunnel/pull/1408 , which is more ease to use.
Anyway, thanks for your idea :smile:

As you can see from above image, the log was missing the commons-pool:commons-pool:1.6, it caused by the maven plugin with the sortArtifactByName option was enabled. And it has been solved by https://github.com/apache/incubator-seatunnel/pull/1387 .
By the way, because this change cannot fix the root cause, so it won't add the commons-pool:commons-pool:1.6 license back, which is not the right way I think.

this pr doesn't add it back:

the https://github.com/apache/incubator-seatunnel/pull/1387 pr dose add it back:

Besides, I wouldn't recommend add too many map instances in script, since it is equal to add licenseMerge option of maven plugin by https://github.com/apache/incubator-seatunnel/pull/1408 , which is more ease to use.
Anyway, thanks for your idea :smile:

@asdf2014 Ok, it would be great if #1387 already fix this. I will close this PR.


"points" prop shows up in HTML

System:

OS: Windows 10
CPU: x64 Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
Memory: 16.46 GB / 31.82 GB

Binaries:
(Retrieving binaries did not work in my terminal, sorry - I'll have to figure that out)
Reproduction

Steps to reproduce
Add a prop named "points" to any component with any value.
Expected Behavior
The prop should not show up in the HTML.
Actual Behavior
The prop can be seen on the HTML element by using DevTools. Seems to only happen when the property "points" is used (not "point" or "pointy" or anything else).
I recognize it's not a huge deal, plus I might be overlooking something simple, but I thought I should pass it along just in case.

Yeah this is by design. I actually just looked at the docs and the behavior isn't explicitly mentioned, so I'll need to add that.
Basically, we assume all-lowercase props are actual HTML attributes and pass them through. If you want to avoid this and not have the prop go through to the DOM node in the case of a simple component like styled.div, you'll want to make the prop camelCase.
The reason why we have this distinction is we currently have no way of knowing what props are specifically used for styling vs functionality vs HTML attributes, so we have to make some assumptions. In v5 we will likely change our strategy on props and sidestep this issue.


stdout threadsafe?

Are io streams threadsafe on Linux? I'm getting a weird issue with println if I use it in two threads, swapping between one and then the other in a asynchronous app.
I'm wondering if I need to make sure all output goes through the same thread.
Not asking you to make the library thread-safe, just checking if it is.
Thanks!

No, streams are not thread-safe. You'll have to use synchronized statements (or some other mechanism) to avoid interleaving output. It'll also probably crash if the stream is buffered.
I think it's bad practice to write output on multiple threads, but I understand that it is sometimes unavoidable. It's kind of like updating a GUI from multiple threads. Usually there is one thread dedicated to displaying the GUI and all other threads are just worker threads.
I've pondered adding a locking mechanism to streams, but haven't come up with a pleasant way of doing it yet. Any suggestions would be appreciated!

Isn't that usually done by locking the file descriptor?

@MartinNowak I'm not sure what the common practice is. File descriptor locking has some quirks, so I expect that it isn't normally used to order reads/writes within a single process.
FYI, I've since abandoned D for Rust, so this project isn't maintained anymore.


[5.7] Reload the package if Package.swift changes

Cherry-pick https://github.com/apple/sourcekit-lsp/pull/471 to release/5.7

When Package.swift changes, reload the package to get new build settings.
rdar://88064286 [SR-15633]
rdar://91230538 [SR-15679]

@swift-ci Please test


Add checkstyle and javaformat plugins

Points of Interest

I DID run ./gradlew format on commit 2
I did NOT fix all of the checkstyles as there are MANY MANY. I DID set them to ignoreFailures = true but the report still goes out when we build so as to not fall into the "out of sight, out of mind" trap.

TODO

[ ] The checkstyle config files were lifted from Spring Pulsar which in turn lifted from Spring Boot and minimized a bit. They have worked well for Spring Pulsar but we can take a scan through them and make sure we all agree w/ them.

COMMITTER REQUESTS
I have manicured the commits into the 2 divisible units that I think make sense to have in the repo for history

add the plugins
apply the format plugin
Please and thank you.

Merged as https://github.com/spring-cloud/spring-functions-catalog/commit/836708f0f258e87694e53e008eb99399f7e773af


Wrong Disqus link (point to localhost)

After facebook window pops out its shows source as localhost instead of the correct domain.

This article solves the problems for me.
https://joejoomla.com/sound-off/167-what-to-do-when-your-disqus-comments-link-to-the-wrong-url.html

And also I found it's better to disable Disqus in development because it will upload the local URL to cover your real link.

And also I found it's better to disable Disqus in development because it will upload the local URL to cover your real link.

A solution is to manually set baseURL in development:
hugo server -D --baseURL=https://your.site

Still getting the same results with, hugo server -D --baseURL=https://mysite. I'll try the other approach, disable Disqus in development, and seen if it works.

It works! And I was wrong. Using only "hugo server -D --baseURL=https://mysite", solved the problem.

@thxred Great! One drawback of this method is that all links‘ host within the site will change from localhost to baseURL during the development. This means that when the summary card is clicked, it will not jump to localhost, sometimes you need to type the post URL manually,
Although this is a flaw, I think it is acceptable.
I will close and still pin this issue to remind people who encounter such problems. Thx!


Motivation Event Trigger Extensions

There are plenty more actions that happen within the IDE that can trigger motivation events.
Some of those can include (but not limited to):

[ ] Build/Compilation Failure (and a follow up on the first success after a failure(s))

[ ] Program exiting with a non-zero zero code.

[ ] VCS Events (push/commit/etc.)

[ ] Long duration without interacting with the IDE (eg, thinking hard about a problem)

I really like the idea of if the IDE has been out of focus or idle for a period of time, that the plugin should pop-up an alert with a patiently waiting anime girl. Such as (but not limited to)

For "Build/Compilation Failure (and a follow up on the first success after a failure(s))", maybe we could use com.intellij.openapi.compiler.CompilerTopics but they suggest to use com.intellij.task.ProjectTaskListener instead.
package zd.zero.waifu.motivator.plugin.listeners;

import com.intellij.task.ProjectTaskListener;
import com.intellij.task.ProjectTaskManager;
import org.jetbrains.annotations.NotNull;

public class WaifuCompilationListener implements ProjectTaskListener {

    @Override
    public void finished( @NotNull ProjectTaskManager.Result result ) {
        if ( result.hasErrors() ) System.out.println( "Build Failed!" );
        else System.out.println( "Yay!" );
    }

}

and the plugin.xml
  <projectListeners>
    ...
    <listener class="zd.zero.waifu.motivator.plugin.listeners.WaifuCompilationListener"
              topic="com.intellij.task.ProjectTaskListener"/>
  </projectListeners>

This works for both Gradle and Maven build tools.


Create asset details object

This PR contains:

Asset Details object
Physical Server relationship with Asset Details

depends on #14275

Overall this looks good.  The PR this depends on is failing tests.  Once we can resolve that, we can move on this one.


Logtrail does not show data for object property field

Hi my logs looks like:
{
...
    "nginx.error.message": "*135733 client closed connection while waiting for request",
    "nginx.error.pid": 30016,
    "nginx.error.tid": 30016,
    "nginx.error.level": "info",
...
}

I want to display "nginx.error.message", so my Logtrail configuration is:
      "fields" : {
        "mapping" : {
            "timestamp" : "@timestamp",
            "display_timestamp" : "@timestamp",
            "hostname" : "hostname",
            "message": "nginx.error.message"
        },
        "message_format": "[{{{tag}}}] {{{nginx.error.message}}} {{{message}}}"
      },

But nor nginx.error.message and message shows up in Logtrail in Kibana. Only tag is visible.
ElasticSearch version: 6.0.0

@piotrkochan Did you try mapping other fields like nginx.error.level in message_format. You can remove {{{message}}} from message_format mapping. Can you paste the complete JSON document from ES ( with _source field)?

Sure, here it is:
{
  "_index": "nginx-2017.12.14",
  "_type": "fluentd",
  "_id": "XOxWVGABNjFnsxSKi8fS",
  "_score": 1,
  "_source": {
    "nginx.error.message": "*136039 client closed connection while waiting for request",
    "nginx.error.pid": 30021,
    "nginx.error.tid": 30021,
    "nginx.error.level": "info",
    "nginx.error.client": "..someipthere...",
    "nginx.error.server": "...someipthere....",
    "hostname": "my-server",
    "@timestamp": "2017-12-14T10:23:50.000000000+01:00",
    "tag": "nginx.error.test"
  },
  "fields": {
    "@timestamp": [
      "2017-12-14T09:23:50.000Z"
    ]
  }
}

"message_format": "{{{nginx.error.level}}} {{{nginx.error.pid}}}" does not work as well

Looks like these are not nested properties but keys with dots. Can you try this message_format?
"message_format": "[{{{tag}}}] {{{[nginx.error.message]}}}"
Notice I have enclosed the field within [] (Segment literal notation). Logtrail uses handlebar to format the template.

It worked, thanks. Does nested_objects option makes any difference in current Logtrail version?

Nope nested_objects config has been removed in latest version of Logtrail.

One more question. Now my error message is a link. It is possible to make it not clickable?

Looks like logtrail is treating it as link. Will fix it next release

I think I figured it out, instead of {{{[nginx.error.message]}}} I've used {{[nginx.error.message]}} and it looks good now.

Ah. Yes you can do it 👍
On Thu, Dec 14, 2017 at 17:48 Piotr Kochan<EMAIL_ADDRESS>wrote:

I think I figured it out, instead of {{{[nginx.error.message]}}} I've
used {{[nginx.error.message]}} and it looks good now.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/sivasamyk/logtrail/issues/216#issuecomment-351695333,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABZXejBznbMgqgb461YhFlYzl9B6OyU-ks5tARH-gaJpZM4RBv1B
.


Allow Bicep to refer YAML as modules

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
There a many services that support providing YAML versions to create resources. I would like to be able to reference these as a modules so we can collaborate with other teams.
For example ACI group supports YAML (there are others like Azure Container Apps )
https://docs.microsoft.com/en-us/azure/container-instances/container-instances-log-analytics#deploy-with-yaml
Describe the solution you'd like
A clear and concise description of what you want to happen.

YAML is already known by our dev so they can add a new container or update a tag easily. In addition we could just generate YAML files with similar tools already used for AKS pods deployments. One a new deployment is done I don't think everybody on the team should have to learn bicep to do simple things.
az cli already supports these YAML files so I am assuming they have a way to convert these to ARM json (probably in python ).

We've discussed implementing a function called includeYamlContent('mystuff.yaml') which would take any yaml content and turn it into a bicep native objects.

Yes please. This would be great for, for example, dapr components.

We've discussed implementing a function called includeYamlContent('mystuff.yaml') which would take any yaml content and turn it into a bicep native objects.

Yes please. This would be great for, for example, dapr components. Is there a tracking issue for this?

This was implemented in #10415

@jeskew Okay, so this issue can be closed?

I think so. There's still no way to use a yaml module, but you can read in a yaml file as structured data using the loadYamlContent function. @masters3d does that cover what you wanted from this feature?


Can't have more than 1 class for generics messages

🐞 Bug Report
Required Information

?
!

Operating system
Ubuntu 22

PHP Telegram Bot version
0.81.0

PHP version
8.2.9

MySQL version
mariadb 11

Update Method
Webhook

Self-signed certificate
no

Summary
This bug is very bad bug actually i want have more than 1 class for generic message .
Current behaviour
This is necessary that the class name is GenericmessageCommand and the $name is genericmessasge to execute generic commands this is my code
class ManagechannelsCommand extends SystemCommand
{
    protected $private_only = true;
    protected $name = 'managechannels';

    /**
     * @inheritDoc
     */
    public function execute(): ServerResponse
    {
        if ($this->getMessage()->getText(true) != '.....') {
            return Request::emptyResponse();
        }
        ......
        return $this->replyToUser('.......');
    }
}

Expected behaviour
I expecte if we dont have usage then the class maybe is one of genericmessage command classes then its just executed with any type of message

Hello
Do you still need help with this issue?


oauth with ~/.config/hub not working

I created an oauth token (github web settings) - however hub pull-request still asks for my credentials.
is it related to the fact that my remote origin configured with ssh (not https)?

Had the same problem. Changing remote to git protocol solved it.

@glukki:
It seems to fix it sometimes, but not always.

@adibPlaybuzz Make sure that you're on the latest version of hub, and that your ~/.config/hub looks like this:
github.com:
- user: mislav
  oauth_token: PASTE_YOUR_TOKEN_HERE
  protocol: https

You should not be asked for authentication past that point.
Also note that hub authentication is completely separate from git authentication (which can be done either over SSH or HTTPS). Even though authentication for git cloning/pushing is already set up on your machine, you still need to complete hub authentication additionally.

@mislav I'm using hub version 2.2.9 (from home-brew), and my ~/.config/hub looks like that.

complete hub authentication additionally.

What is "hub authentication".  Are you referring to authenticating with GitHub for issues and such and with Git for push/pull etc?

@spott Then hub authentication should be all configured for you and ready to go.
Are you connecting to GitHub Enterprise instance by any chance? What are the exact errors that you're getting?

This helped me resolve my issue with the config file. Suggest we close this as the bug appears to be user error.

@adibPlaybuzz Make sure that you're on the latest version of hub, and that your ~/.config/hub looks like this:
github.com:
- user: mislav
  oauth_token: PASTE_YOUR_TOKEN_HERE
  protocol: https

You should not be asked for authentication past that point.
Also note that hub authentication is completely separate from git authentication (which can be done either over SSH or HTTPS). Even though authentication for git cloning/pushing is already set up on your machine, you still need to complete hub authentication additionally.

Thanks.
When I follow this ~/.config/hub
 github.com:
 - user: mislav
   oauth_token: PASTE_YOUR_TOKEN_HERE
   protocol: https

It works. Please do not miss the -.
PS: I use the GitHub enterprise(github.org.com)

I did not find an example of ~/.config/hub at docs and was forced to googling about how to properly use oauth token with hub. Maybe add so info about it to the docs?


Resize image before saving to file

Currently resizing is done on already saved PNG images. This is wasteful as we waste time encoding and decoding PNG images as an intermediate step. Ideally we should resize images right after they are created while they are still in memory.
Requirements:

#7
Convert ImageBuffer<Rgb<u8>, MmapMut> to DynamicImage so we can run resize.

Or we could build a resize function directly into codevis::render


Correction to "recommend m" button needed

From Shahab:
In CUFSM GUI, the “recommend m” button in the Boundary Condition Selection is not working, but it can be fixed easily:
In signature_ss.m, we need to change line 25 to the following:
[icurve,ishapes]=stripmain(prop,node,elem,hlengths,isprings,iconstraints,iGBTcon,iBC,im_all,10);

Done! Thanks Damir.


Add space after jobId in line 1011

One space is needed before Job Transitioned from in line 1011. The log output has no space between jobId and Job Transitioned from.

@iSultan Thanks for reporting this. Even though the fix is minor, please created a JIRA at https://issues.apache.org/jira/browse/MAPREDUCE

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
41
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1071
trunk passed

+1
compile
33
trunk passed

+1
checkstyle
22
trunk passed

+1
mvnsite
34
trunk passed

+1
shadedclient
692
branch has no errors when building and testing our client artifacts.

+1
javadoc
22
trunk passed

0
spotbugs
57
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
56
trunk passed

_ Patch Compile Tests _

+1
mvninstall
33
the patch passed

+1
compile
29
the patch passed

+1
javac
29
the patch passed

+1
checkstyle
18
the patch passed

+1
mvnsite
33
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
738
patch has no errors when building and testing our client artifacts.

+1
javadoc
18
the patch passed

+1
findbugs
60
the patch passed

_ Other Tests _

+1
unit
585
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
27
The patch does not generate ASF License warnings.

3577

Subsystem
Report/Notes

Docker
Client=18.09.8 Server=18.09.8 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux fbbcf4382896 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 7f1b76c

Default Java
1.8.0_212

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/1/testReport/

Max. process+thread count
581 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/1/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
39
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1027
trunk passed

+1
compile
32
trunk passed

+1
checkstyle
24
trunk passed

+1
mvnsite
35
trunk passed

+1
shadedclient
705
branch has no errors when building and testing our client artifacts.

+1
javadoc
23
trunk passed

0
spotbugs
61
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
59
trunk passed

_ Patch Compile Tests _

+1
mvninstall
30
the patch passed

+1
compile
28
the patch passed

+1
javac
28
the patch passed

+1
checkstyle
20
the patch passed

+1
mvnsite
33
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
720
patch has no errors when building and testing our client artifacts.

+1
javadoc
22
the patch passed

+1
findbugs
64
the patch passed

_ Other Tests _

+1
unit
613
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
26
The patch does not generate ASF License warnings.

3572

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 0d89495d9e49 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 62efb63

Default Java
1.8.0_212

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/2/testReport/

Max. process+thread count
577 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/2/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
39
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1073
trunk passed

+1
compile
34
trunk passed

+1
checkstyle
21
trunk passed

+1
mvnsite
36
trunk passed

+1
shadedclient
722
branch has no errors when building and testing our client artifacts.

+1
javadoc
23
trunk passed

0
spotbugs
60
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
57
trunk passed

_ Patch Compile Tests _

+1
mvninstall
31
the patch passed

+1
compile
30
the patch passed

+1
javac
30
the patch passed

+1
checkstyle
18
the patch passed

+1
mvnsite
34
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
765
patch has no errors when building and testing our client artifacts.

+1
javadoc
19
the patch passed

+1
findbugs
69
the patch passed

_ Other Tests _

+1
unit
599
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
29
The patch does not generate ASF License warnings.

3670

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux e09a3a51562e 4.4.0-157-generic #185-Ubuntu SMP Tue Jul 23 09:17:01 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / e872ceb

Default Java
1.8.0_212

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/3/testReport/

Max. process+thread count
600 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/3/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
111
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1408
trunk passed

+1
compile
37
trunk passed

+1
checkstyle
27
trunk passed

+1
mvnsite
35
trunk passed

+1
shadedclient
925
branch has no errors when building and testing our client artifacts.

+1
javadoc
31
trunk passed

0
spotbugs
68
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
67
trunk passed

_ Patch Compile Tests _

+1
mvninstall
40
the patch passed

+1
compile
30
the patch passed

+1
javac
30
the patch passed

+1
checkstyle
24
the patch passed

+1
mvnsite
33
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
923
patch has no errors when building and testing our client artifacts.

+1
javadoc
21
the patch passed

+1
findbugs
61
the patch passed

_ Other Tests _

-1
unit
615
hadoop-mapreduce-client-app in the patch failed.

+1
asflicense
29
The patch does not generate ASF License warnings.

4513

Reason
Tests

Failed junit tests
hadoop.mapreduce.v2.app.TestStagingCleanup

hadoop.mapreduce.v2.app.rm.TestRMContainerAllocator

hadoop.mapreduce.v2.app.TestFetchFailure

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/4/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 045ae553b194 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 00b5a27

Default Java
1.8.0_222

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/4/artifact/out/patch-unit-hadoop-mapreduce-project_hadoop-mapreduce-client_hadoop-mapreduce-client-app.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/4/testReport/

Max. process+thread count
585 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/4/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
74
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1133
trunk passed

+1
compile
29
trunk passed

+1
checkstyle
20
trunk passed

+1
mvnsite
31
trunk passed

+1
shadedclient
707
branch has no errors when building and testing our client artifacts.

+1
javadoc
22
trunk passed

0
spotbugs
51
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
49
trunk passed

_ Patch Compile Tests _

+1
mvninstall
29
the patch passed

+1
compile
22
the patch passed

+1
javac
22
the patch passed

+1
checkstyle
17
the patch passed

+1
mvnsite
25
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
731
patch has no errors when building and testing our client artifacts.

+1
javadoc
18
the patch passed

+1
findbugs
53
the patch passed

_ Other Tests _

+1
unit
580
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
26
The patch does not generate ASF License warnings.

3642

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/5/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux dd19c62363e7 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 8943e13

Default Java
1.8.0_222

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/5/testReport/

Max. process+thread count
593 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/5/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
42
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1041
trunk passed

+1
compile
27
trunk passed

+1
checkstyle
19
trunk passed

+1
mvnsite
30
trunk passed

+1
shadedclient
670
branch has no errors when building and testing our client artifacts.

+1
javadoc
18
trunk passed

0
spotbugs
49
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
48
trunk passed

_ Patch Compile Tests _

+1
mvninstall
27
the patch passed

+1
compile
21
the patch passed

+1
javac
21
the patch passed

+1
checkstyle
16
the patch passed

+1
mvnsite
24
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
687
patch has no errors when building and testing our client artifacts.

+1
javadoc
18
the patch passed

+1
findbugs
56
the patch passed

_ Other Tests _

+1
unit
581
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
24
The patch does not generate ASF License warnings.

3421

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/6/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 1dc2288e40fb 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 4cb22cd

Default Java
1.8.0_222

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/6/testReport/

Max. process+thread count
581 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/6/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
39
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1060
trunk passed

+1
compile
26
trunk passed

+1
checkstyle
21
trunk passed

+1
mvnsite
29
trunk passed

+1
shadedclient
685
branch has no errors when building and testing our client artifacts.

+1
javadoc
21
trunk passed

0
spotbugs
52
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
49
trunk passed

_ Patch Compile Tests _

+1
mvninstall
28
the patch passed

+1
compile
23
the patch passed

+1
javac
23
the patch passed

+1
checkstyle
16
the patch passed

+1
mvnsite
24
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
748
patch has no errors when building and testing our client artifacts.

+1
javadoc
20
the patch passed

+1
findbugs
62
the patch passed

_ Other Tests _

+1
unit
592
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
26
The patch does not generate ASF License warnings.

3550

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/7/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 9c0c191017c3 4.4.0-157-generic #185-Ubuntu SMP Tue Jul 23 09:17:01 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 28fb4b5

Default Java
1.8.0_212

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/7/testReport/

Max. process+thread count
577 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/7/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
38
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1110
trunk passed

+1
compile
31
trunk passed

+1
checkstyle
26
trunk passed

+1
mvnsite
35
trunk passed

+1
shadedclient
769
branch has no errors when building and testing our client artifacts.

+1
javadoc
26
trunk passed

0
spotbugs
57
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
54
trunk passed

_ Patch Compile Tests _

+1
mvninstall
32
the patch passed

+1
compile
28
the patch passed

+1
javac
28
the patch passed

+1
checkstyle
21
the patch passed

+1
mvnsite
28
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
810
patch has no errors when building and testing our client artifacts.

+1
javadoc
21
the patch passed

+1
findbugs
61
the patch passed

_ Other Tests _

+1
unit
615
hadoop-mapreduce-client-app in the patch passed.

+1
asflicense
31
The patch does not generate ASF License warnings.

3814

Subsystem
Report/Notes

Docker
Client=19.03.1 Server=19.03.1 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-60/8/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/60

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 6fbb6cc5180f 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 3329257

Default Java
1.8.0_222

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/8/testReport/

Max. process+thread count
580 (vs. ulimit of 5500)

modules
C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-60/8/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.


[FLINK-12066] [State Backends] Remove StateSerializerProvider field in keyed state backends

What is the purpose of the change
This PR removes the {{StateSerializerProvider}} field in rocksdb and heap keyed backends, as per discussed and planed in previous review of FLINK-10043
Brief change log

Removed {{StateSerializerProvider}} field from keyed backends
Introduced a new {{HeapInternalKeyContext}} which allows restore to happen before backend construction in heap backend builder.

Verifying this change
This change is already covered by existing tests, such as:

All tests under org.apache.flink.runtime.state package
All tests under org.apache.flink.runtime.state.heap package

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable)

The current PR also includes fix for FLINK-12066 (blocker) and will do a rebase after that goes in.

Checked travis build and confirmed the failure is irrelative to change here. Also verified the local travis build could pass.

FLINK-12066 has been merged. Can you do a rebase @carp84?

Rebase complete. Thanks for the reminder @tzulitai

@flinkbot approve description
@flinkbot approve consensus

Rebased after FLINK-12121 is in, checked and confirmed all previous review comments are resolved. Thanks.

+1 to merge once Travis is green!

Checking the travis log and the error (as shown below) is irrelative to change here, will rebase on latest master and force push to trigger another check.

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
[FAIL] Test script contains errors.

Thanks, merging ..

Thanks for review and help merge! @tzulitai


Bump remark-cli from 5.0.0 to 8.0.0

https://github.com/arcticicestudio/styleguide-markdown/blob/880c5fbfec22ae2e4ad71699f497e2c8105189b5/package.json#L40
Hi, hate to go Dependabot on you 🤖 but this package's dependency tree contains a low risk dependency issue. Upgrading it to 8.0.0 on my side works perfectly fine, but gives a slightly annoying warning about this Remark preset's peer dependency
I am opening a PR to fix this for you 🙆♂

Please see https://github.com/arcticicestudio/styleguide-markdown/pull/9#issuecomment-724256185


Add summary section to the kube-hunter report component

Currently the kube-hunter report does not display the summary section as is the case for other report types

I would like to help :)

I would like to help :)

Great! Ping me if you need any help.


Question about "Convert a training-time RepViT into the inference-time structure" with replace_batchnorm.

@jameslahm Hi,
Thanks for your great work !!
The model outputs obtained using replace_batchnorm are inconsistent, which is puzzling, as to how to get the correct results:
    model = create_model(model_name, num_classes=1000)
    y = model(inputs)
    print(y)
    utils.replace_batchnorm(model)
    y = model(inputs)
    print(y)

result:
tensor([[ 0.0716, -0.1728, -0.6425,  ..., -0.1067, -1.0730, -0.2081],
[-0.0716,  0.1728,  0.6425,  ...,  0.1067,  1.0730,  0.2081]])
tensor([[-0.0643, -0.4197,  0.1459,  ..., -0.0541, -0.1685,  0.1784],
[-0.0643, -0.4197,  0.1459,  ..., -0.0541, -0.1685,  0.1784]])

Do the modules in the model have a correct implementation of the fuse function? Please note that the BatchNormalization in the module without fuse function will be simply replaced with nn.Identity.

Thank you for the reply, the code used here is cloned from your repo without any changes.

I just modified speed_gpu.py as follows:
from argparse import ArgumentParser

parser = ArgumentParser()

parser.add_argument('--model', default='repvit_m0_9', type=str)
parser.add_argument('--resolution', default=224, type=int)
parser.add_argument('--batch-size', default=2, type=int)

if __name__ == "__main__":
    args = parser.parse_args()
    model_name = args.model
    batch_size = args.batch_size
    resolution = args.resolution
    torch.cuda.empty_cache()
    inputs = torch.randn(batch_size, 3, resolution,
                            resolution)
    model = create_model(model_name, num_classes=1000)
    y = model(inputs)
    print(y)
    utils.replace_batchnorm(model)
    y = model(inputs)
    print(y)
    # model.to(device)
    # model.eval()
    # throughput(model_name, model, device, batch_size, resolution=resolution)

It's working! Thanks!

When using "repalce_batchnorm", the result of converting to onnx format is inconsistent @Topdu @jameslahm

I also found some inconsistency after replace_batchnorm
x = torch.randn(4, 3, 224, 224, requires_grad=False).cuda()
model = timm.create_model("repvit_m2_3.dist_450e_in1k",
                          pretrained=True, num_classes=0).cuda()
model.eval()
output = model(x)

replace_batchnorm(model)
model.eval()
output_fused = model(x)

print(output)
print(output_fused)

gives

tensor([[ 0.7834,  0.1387, -1.7876,  ...,  0.3591,  2.0152, -2.6656],
[ 0.8065,  0.1328, -1.8703,  ...,  0.3418,  2.0391, -2.6092],
[ 0.8388,  0.1825, -1.8846,  ...,  0.3555,  2.0984, -2.6080],
[ 0.8539,  0.1291, -1.8841,  ...,  0.3301,  2.0132, -2.5867]],
device='cuda:0')
tensor([[ 0.7828,  0.1394, -1.7882,  ...,  0.3586,  2.0155, -2.6663],
[ 0.8061,  0.1330, -1.8712,  ...,  0.3412,  2.0409, -2.6105],
[ 0.8384,  0.1824, -1.8850,  ...,  0.3548,  2.0999, -2.6089],
[ 0.8536,  0.1293, -1.8849,  ...,  0.3293,  2.0152, -2.5878]],
device='cuda:0')

the difference is in about 1e-3, which is higher than usual accepted margin of error (1e-5 to 1e-7)


M1/M2 Macs

Hi, could you please update to add a check for Mac Metal Performance Shader?
device = "mps" if torch.backends.mps.is_available() else "cpu"

Duplicate of #61


created search-category-large.html

Solving issue #355
PrintScreen of the new component created using Tailwind Playgrounds:

Good job @DarioCostaAlves
Congrats 🎉, your PR got merged. To be eligible for the swags from ClueLess. Follow this steps.

Star this repository. ⭐
SignIn / SignUp in [ClueLess Website](https://www.clueless.tech/) .
Go to profile section from the top right hand corner.

Comment your profile URL under this comment tagging the person who merged your PR.

That’s it. Follow the leaderboard !
And don’t forget to share your achievement with your friends.


bug(sqlsmith): generator needs to consider expression precedence

Describe the bug
https://github.com/risingwavelabs/risingwave/pull/7665#issuecomment-1413859805

LGTM, it is failing because of an issue on sqlsmith side I think.
select 'a' = lower('jRvXgnxBXI') NOT IN (true, false, false, true, false, false, false, true, true);

The following query is generated by sqlsmith, but it is invalid.

To Reproduce
No response
Expected behavior
No response
Additional context
No response

IIUC, the problem may be deeper and more widespread.
Is it possible that sqlsmith generate an AST like Plus(1, Plus(1, 2))?
Given input 1 + 2 + 3, the parser will build Plus(Plus(1, 2), 3), which unparses back to 1 + 2 + 3.
Given input 1 + (2 + 3), the parser will build Plus(1. Nested(Plus(2, 3))), which unparses back to 1 + (2 + 3).
Th parser itself would never build Plus(1, Plus(2, 3)), which cannot unparse and parse to the same AST.
Maybe related to #7635.
One idea is that parsed AST should not be aware of parentheses (i.e. remove Expr::Nested, also related https://github.com/risingwavelabs/risingwave/pull/6717#discussion_r1040441511), but I have not checked why it was introduced in upstream initially.

IIUC, the problem may be deeper and more widespread.
Is it possible that sqlsmith generate an AST like Plus(1, Plus(1, 2))?
Given input 1 + 2 + 3, the parser will build Plus(Plus(1, 2), 3), which unparses back to 1 + 2 + 3. Given input 1 + (2 + 3), the parser will build Plus(1. Nested(Plus(2, 3))), which unparses back to 1 + (2 + 3).
Th parser itself would never build Plus(1, Plus(2, 3)), which cannot unparse and parse to the same AST.
Maybe related to #7635.
One idea is that parsed AST should not be aware of parentheses (i.e. remove Expr::Nested, also related #6717 (comment)), but I have not checked why it was introduced in upstream initially.

Makes sense. We currently evade this problem in sqlsmith because of https://github.com/risingwavelabs/risingwave/issues/7635.
infix binop gets unparsed with parenthesis, hence we are able to parse and unparse (Plus(1, Plus(1,2)) back to same expression.
After https://github.com/risingwavelabs/risingwave/pull/7636, this "feature" will be fixed.
Additionally in 7636 we will also parenthesize infix and postfix expressions. Sqlsmith will then avoid generating invalid forms as described.

Basically 2 different approaches:

Plus(1, Plus(1, 2)) is an invalid AST. fmt/unparse should not add extra parentheses. sqlsmith should avoid generating the invalid AST, possibly via wrapping with Expr::Nested aggressively.
Remove Expr::Nested. fmt/unparse need to wrap subexpr with parentheses aggressively. Plus(1, Plus(1, 2)) is valid and canonical AST of 1 + (2 + 3) and sqlsmith can just generate this AST.

The upstream sqlparser is following the former approach, so does the recent PR #7636. But we used the latter parentheses approach when introducing sqlsmith (#3305). This may be how the bug arose and there may be no problem as long as we stick to one approach consistently rather than mixing them.

it mainly affects sqlsmith (and not much else?)

Another motivation to make parentheses insignificant in AST (i.e. remove Expr::Nested) is https://github.com/risingwavelabs/risingwave/pull/6717#discussion_r1040441511 . But as mentioned above, the latter approach diverges from upstream significantly and likely requires refactoring of existing code. There may also be ways to support op ALL(subquery) regardless of number of parentheses following the first approach. We can defer it until then. For now, it is true that this only affects sqlsmith and I agree fixing it on sqlsmith side.


[Request] Online working demo

We would like to see online web demo before integrate it.
Thanks.

@cosecantt
Thank you for your interest in SendBird SDK.
We have 2 online sample.
widget sample: https://sample.sendbird.com/widget/
live chat sample : https://sample.sendbird.com/livechat/
For more information, please contact<EMAIL_ADDRESS>Thank you.


Unhandled Exception: PlatformException(no_permissions, flutter_blue plugin requires location permissions for scanning, null)

Getting an error on start
E/BpSurfaceComposerClient(21920): Failed to transact (-1)
E/BpSurfaceComposerClient(21920): Failed to transact (-1)
E/flutter (21920): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(no_permissions, flutter_blue plugin requires location permissions for scanning, null)
E/flutter (21920): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:564:7)
E/flutter (21920): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:302:33)
E/flutter (21920): <asynchronous suspension>
E/flutter (21920): #2      FlutterBlue.scan (file:///C:/src/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_blue-0.5.0/lib/src/flutter_blue.dart:87:20)
E/flutter (21920): <asynchronous suspension>
E/flutter (21920): #3      ConnectToCarState._startAnimation (package:presentation_app/ui/connect_to_car.dart:47:10)
E/flutter (21920): #4      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:513:14)
E/flutter (21920): #5      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:568:30)
E/flutter (21920): #6      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:120:24)
E/flutter (21920): #7      TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:242:9)
E/flutter (21920): #8      TapGestureRecognizer.handlePrimaryPointer (package:flutter/src/gestures/tap.dart:175:7)
E/flutter (21920): #9      PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:369:9)
E/flutter (21920): #10     PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:73:12)
E/flutter (21920): #11     PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:101:11)
E/flutter (21920): #12     _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:214:19)
E/flutter (21920): #13     _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:192:22)
E/flutter (21920): #14     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:149:7)
E/flutter (21920): #15     _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:101:7)
E/flutter (21920): #16     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:85:7)
E/flutter (21920): #17     _rootRunUnary (dart:async/zone.dart:1136:13)
E/flutter (21920): #18     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter (21920): #19     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter (21920): #20     _invoke1 (dart:ui/hooks.dart:223:10)
E/flutter (21920): #21     _dispatchPointerDataPacket (dart:ui/hooks.dart:144:5)
E/flutter (21920):

ways to reproduse
class ConnectToCar extends StatefulWidget {
  @override
  ConnectToCarState createState() => new ConnectToCarState();
}

class ConnectToCarState extends State<ConnectToCar> with SingleTickerProviderStateMixin {

  var scanSubscription;
  StreamSubscription _scanSubscription;

  FlutterBlue flutterBlue = FlutterBlue.instance;

  Map<DeviceIdentifier, ScanResult> scanResults = new Map();

  bool isScanning = false;

  AnimationController _controller;

  @override
  void initState() {
    super.initState();
    _controller = new AnimationController(
      vsync: this,
    );
    //_startAnimation();
  }

  @override
  void dispose() {
    _controller.dispose();
    scanSubscription.cancel();
    super.dispose();
  }

  void _startAnimation() {

    _scanSubscription = flutterBlue
        .scan(
      timeout: const Duration(seconds: 5),
      /*withServices: [
          new Guid('0000180F-0000-1000-8000-00805F9B34FB')
        ]*/
    )
        .listen((scanResult) {

//      print('localName: ${scanResult.advertisementData.localName}');
//      print(
//          'manufacturerData: ${scanResult.advertisementData.manufacturerData}');
//      print('serviceData: ${scanResult.advertisementData.serviceData}');
//      print("device type: ${scanResult.device.type.toString()}");
//      print("device type: ${scanResult.device.id.id}");

      setState(() {
        scanResults[scanResult.device.id] = scanResult;
      });

    }, onDone: _stopScan);

    setState(() {
      isScanning = true;
    });

    _controller.stop();
    _controller.reset();
    _controller.repeat(
      period: Duration(seconds: 1),
    );
  }

  _stopScan() {
    _scanSubscription?.cancel();
    _scanSubscription = null;
    setState(() {
      isScanning = false;
    });
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: Column(
        children: <Widget>[
          pageTitle(),
          vehicle(),

          Expanded(
            child: ListView.builder(
                itemBuilder: (BuildContext context,int index) {
                  return
                    ListTile(
                    title: Text('Data: $scanResults'),
                  );
                }
            ),
          ),
        ],
      ),

      floatingActionButton: new FloatingActionButton(
        onPressed: _startAnimation,
        child: new Icon(Icons.play_arrow),
      ),
    );
  }

@kushtra24 the message is clear, you need to fetch permissions (location) first, before you can scan for nearby devices.

@kushtra24 the message is clear, you need to fetch permissions (location) first, before you can scan for nearby devices.
It doesn't ask for permissions even if I add to the manifest


Proposal: fastapi-users based authentication backend

Hi,
I really like your repo and I wanted to use it in my new project. I was using fastapi-users to handle most of my auth-related stuff, but I couldn't find an integration between it and your project, so I tried writing my own AuthenticationBackend using fastapi-users tools.
I wanted to check with you if this backend is something you wanted to include in your repo. My suggestion would be to offer it as a variant (I mean one of those optional dependencies like sqladmin[fastapi-users]). If you are interested, I can write up the tests and finish it up, if not, no hard feelings!
Thank you!

This feature is needed, there is one discussion related to this waiting for answer (https://github.com/aminalaee/sqladmin/discussions/159#discussioncomment-3077027) and one on fastapi-users repo (https://github.com/fastapi-users/fastapi-users/discussions/1218).
I tried to use your commited code, but it seem that it doesn't work for me and i struggle to understand why :
Fastapi-users definitions :
...
bearer_transport = BearerTransport(tokenUrl="auth/jwt/login")

def get_jwt_strategy() -> JWTStrategy:
    return JWTStrategy(secret=SECRET, lifetime_seconds=3600)

auth_backend = AuthenticationBackend(
    name="jwt",
    transport=bearer_transport,
    get_strategy=get_jwt_strategy,
)

async def get_async_session() -> AsyncGenerator[AsyncSession, None]:
    async with async_session_maker() as session:
        yield session

async def get_user_db(session: Annotated[async_sessionmaker, Depends(get_async_session)]):
    yield SQLAlchemyUserDatabase(session, users.User, users.OAuthAccount)

async def get_user_manager(user_db=Depends(get_user_db)):
    yield UserManager(user_db)

fastapi_users_instance = FastAPIUsers[users.User, uuid.UUID](
    get_user_manager,
    [auth_backend],
)```

SQLadmin initialization :
```python
admin = Admin(
    app,
    engine,
    authentication_backend=FastapiUsersAuthenticationBackend(
        secret_key=SECRET,
        # fast-users callables
        get_user_manager=get_user_manager,
        get_strategy=get_jwt_strategy)
)

Error :
app-backend-1  |   File "/usr/local/lib/python3.11/site-packages/sqladmin/application.py", line 604, in login
app-backend-1  |     ok = await self.authentication_backend.login(request)
app-backend-1  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-backend-1  |   File "/app/authentication_fastapi_users.py", line 114, in login
app-backend-1  |     user = await self.get_user_manager().authenticate(credentials)
app-backend-1  |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-backend-1  | AttributeError: 'async_generator' object has no attribute 'authenticate'

I tried to understand the issue, but after some hours i didn't do any progress.
TLDR: It would be a must have since fastapi-users is pretty popular and a pain in the ass to implement along with sqladmin.

@dionysio @ix-56h I'm sorry I'm not sure how to contribute to this PR on github, but I edited the authentication_fastapi_users.py file to this to make it work:
import contextlib
from typing import Optional

from fastapi_users.authentication import (
    AuthenticationBackend,
    Transport, Strategy
)
from fastapi import HTTPException, status
from fastapi.security import APIKeyCookie, OAuth2PasswordRequestForm
from fastapi_users.manager import UserManagerDependency
from fastapi_users.router import ErrorCode
from fastapi_users.types import DependencyCallable
from fastapi_users.authentication import Authenticator
from fastapi_users import models
from starlette.requests import Request
from starlette.responses import RedirectResponse
import sqladmin.authentication

from rich import print

class SessionTransport(Transport):
    """
    Modified version of CookieTransport which simply reads cookies and returns tokens instead of full Responses
    """
    scheme: APIKeyCookie

    def __init__(self, name: str = 'fastapiusersauth'):
        super().__init__()
        self.scheme = APIKeyCookie(name=name, auto_error=False)

    async def get_login_response(self, token: str) -> str:
        return token

    async def get_logout_response(self):
        pass

    @staticmethod
    def get_openapi_login_responses_success():
        return {}

    @staticmethod
    def get_openapi_logout_responses_success():
        return {}

class FastapiUsersAuthenticationBackend(sqladmin.authentication.AuthenticationBackend):
    """
        Usage:

        from sqladmin import Admin
        from sqladmin.authentication_fastapi_users import FastapiUsersAuthenticationBackend
        admin = sqladmin.Admin(
            app,  # fastapi app/router
            engine,  # sqla engine
            authentication_backend=FastapiUsersAuthenticationBackend(secret_key='<SUPER SECRET KEY HERE>',
                                                                     # fast-users callables
                                                                     get_user_manager=get_user_manager,
                                                                     get_strategy=get_redis_strategy)
        )
    """
    def __init__(self, secret_key: str,
                 get_user_manager: UserManagerDependency[models.UP, models.ID],
                 get_strategy: DependencyCallable[Strategy[models.UP, models.ID]],
                 get_user_db,
                 get_session,
                 requires_verification: bool = False,
                 name: str = 'admin'):
        super().__init__(secret_key)
        self.get_user_manager = get_user_manager
        self.get_strategy = get_strategy
        self.backend = AuthenticationBackend(
            name=name,
            transport=SessionTransport(),
            get_strategy=get_strategy,
        )
        self.requires_verification = requires_verification

        self.get_session=get_session
        self.get_user_db = get_user_db

        self.get_async_session_context = contextlib.asynccontextmanager(self.get_session)
        self.get_user_db_context = contextlib.asynccontextmanager(self.get_user_db)
        self.get_user_manager_context = contextlib.asynccontextmanager(self.get_user_manager)

    def _redirect_to_login(self, request: Request):
        return RedirectResponse(request.url_for("admin:login"), status_code=302)

    def _validate_user(self, user):
        # code adjusted from fastapi_users.router.auth.login
        if user is None or not user.is_active:
            print(f'not active:{user}')
            raise HTTPException(
                status_code=status.HTTP_400_BAD_REQUEST,
                detail=ErrorCode.LOGIN_BAD_CREDENTIALS,
            )
        if self.requires_verification and not user.is_verified:
            print(f'not verified:{user}')
            raise HTTPException(
                status_code=status.HTTP_400_BAD_REQUEST,
                detail=ErrorCode.LOGIN_USER_NOT_VERIFIED,
            )
        if not user.is_superuser:
            print(f'not super:{user}')
            raise HTTPException(
                status_code=status.HTTP_400_BAD_REQUEST,
                detail='LOGIN_USER_NOT_SUPERUSER',
            )

    async def authenticate(self, request: Request) -> Optional[RedirectResponse]:
        token = request.session.get("token")
        if not token:
            return False

        async with self.get_async_session_context() as session:
            async with self.get_user_db_context(session) as user_db:
                async with self.get_user_manager_context(user_db) as user_manager:
                    kwargs = {
                        'user_manager': user_manager,
                        f'strategy_{self.backend.name}': self.get_strategy(),
                        self.backend.name: token
                    }
                    authenticator = Authenticator([self.backend], user_manager)
                    user = await authenticator.current_user(optional=True)(**kwargs)
                    print(f'authenticate:user {user}')
                    print(f'authenticate:token {token}')
        try:
            self._validate_user(user)
            return True
        except HTTPException:
            return self._redirect_to_login(request)

    async def login(self, request: Request) -> bool:
        form = await request.form()
        credentials = OAuth2PasswordRequestForm(scope='', username=form.get("username"), password=form.get("password"))

        async with self.get_async_session_context() as session:
            async with self.get_user_db_context(session) as user_db:
                async with self.get_user_manager_context(user_db) as user_manager:
                    user = await user_manager.authenticate(credentials)
                    print(f'login:user {user}')

        self._validate_user(user)

        token = await self.backend.login(self.get_strategy(), user)
        print(f'login:token {token}')
        request.session["token"] = token
        return True

    async def logout(self, request: Request) -> bool:
        request.session.clear()
        return True

It looks wonky, but it's working over here.
I basically followed a solution from here: https://github.com/fastapi-users/fastapi-users/discussions/808
and here: https://fastapi-users.github.io/fastapi-users/12.1/cookbook/create-user-programmatically/

@regisin this is great. You can create a new PR and if possible add some tests for it.

thanks for the updates @regisin! Sorry I went away working on something else and this code was shelved for me.

I'm not sure I'm smart enough to do that! Do I contribute with a new PR? Or is it possible to add to this one?
Also, do I need to add fastapi-users to pyproject.toml somewhere?

@regisin I can help you. I think its better to start a new PR.
And for the fastapi-users, you need to add it here: https://github.com/aminalaee/sqladmin/blob/0abdef0970693d9ce5bfbdcd4e138c54cda45f44/pyproject.toml#L62
and add some tests in tests/integration
you can also check: https://github.com/aminalaee/sqladmin/blob/main/CONTRIBUTING.md#get-started

I will start a new PR for this.

@aminalaee Has there been a new PR for this? I can't find it

No, I haven’t had a chance to work on it. Feel free to submit a PR if you can make it work.


Use grid view for all Discover screens

I'm on the fence about this, but the more I use it, the more I think for consistency, all of Discover should use the grid view. The main timeline view can be for the Timeline tab only.

Checked in an experiment for this, using the navigation bar.

I think this implementation works. Closing.


Update build to use the new dotnet-5-preview.4 sdk

PR Summary
A new version of dotnet-5-preview.4 sdk was available, so we need to update to use the new sdk.
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[x] N/A or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[x] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and enumerated concerns in the summary. This may include:

Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode (which runs in a different PS Host).
Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.
Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).
Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

@PoshChan please retry macos

@adityapatwardhan, successfully started retry of PowerShell-CI-macOS


PKUNLP link expired

Hi authors,
Thank you very much for the greater work.
I just discovered that the link you provided to PKUNLP has experied. Therefore, can you provide a new link for it?
Thank you

Hi authors,
Thank you very much for the greater work.
I just discovered that the link you provided to PKUNLP has experied. Therefore, can you provide a new link for it?
Thank you

Hi, I am also looking for the pkunlp segment tool. Have you found it yet？if yes，can you provide a new link for it or send it to me by email？Thank you very much！！！

@liangjinggui I had a previously saved one and uploaded it to Google Drive. https://drive.google.com/file/d/17OKIqbS74_GATm65Yg-JowqXZsVk84-W/view?usp=sharing

@liangjinggui I had a previously saved one and uploaded it to Google Drive. https://drive.google.com/file/d/17OKIqbS74_GATm65Yg-JowqXZsVk84-W/view?usp=sharing

Thank you very much!


Titles no longer show up in outline

Using 5.2.2 with a document with multiple requests, the request titles no longer show up in the outline view (outline view is empty).
### Foo
GET https://foo.com

### Bar
GET https://bar.com

@asherber I am not sure what is meant. The display in the Outline View still looks correct to me.

Interesting -- this was not working for me yesterday, but it is today, with the same files!


fix: Delete domain response

Including missing properties object and deleted to RemoveDomainsResponseSuccess

https://resend.com/docs/api-reference/domains/delete-domain

@pedroimpulcetto Can you run format?

@pedroimpulcetto Can you run format?

sorry for that
just ran @bukinoshita


Fixed SIGSEGV when running helm create with -p and no values.yaml file

If there no values.yaml file in the starter the schart.Values is always nil.

On one hand, fixing segmentation faults are great. On the other hand, values.yaml files are mandatory as part of the chart package format so I'm not sure we should be handling starter charts with no values.yaml files. @aleerizw is there a particular reason why this starter chart does not contain a values file, or can we change this to error out instead?

In the case of my specific starter, i don't want to have a default values.yaml file because helm merges the default values.yaml file and any other files passed via the -f option.
Also, it's not really clear from the docs that the values.yaml file is required:
https://github.com/kubernetes/helm/blob/16b043b8d50580962e84c208ced3bfb32862bf1b/docs/charts.md#values-files

A chart may include a default values.yaml file.


Use prisma transactions for write queries to correctly automatically rollback in error situations

See: https://prisma-client-py.readthedocs.io/en/stable/reference/transactions/#usage

This is a good one, giving some context for dev working on this :
Creation of a collection is 3 step process :
1. Create a postgres row in table : "collections"
2. Create a vector document in vector db, defaults : "qdrant"
3. Then Associate the collection created with associated data sources.

Say if  step 2 was failing, which was the case as I didnt looked that profiles --profile ollama and --profile --dev was needed, same collection cant be made 2nd time; as postgres already knows that this collection exists.


Implement Inventory set operations

SpongeAPI | SpongeCommon

@Mumfrey is gridInventory.query(InventoryRow.class) supposed to just return itself?
How would you get the Rows then?


Using --prefix during install overrides CMAKE_INSTALL_PREFIX

I was exploring a project setup where we might build both a native application and a shared object library, the latter of which both the native binary and Python code can use (e.g., with ctypes or cffi).  One problem was that the native binary couldn't find the library at runtime since the library installation path is not on LD_LIBRARY_PATH (or DYLD_LIBRARY_PATH on macos).  I wasn't able to figure out how to configure the rpath properly for the installed binary since the actual install location was different than what I could derive from CMAKE_INSTALL_PREFIX, though admittedly my experience with this is limited.
My suspicion is that using --prefix with cmake makes this impossible.  Is there a reason to not set -DCMAKE_INSTALL_PREFIX=/full/path/prefix with the initial cmake build command instead?  Also note that CMake 3.21 introduced the --install-prefix option.
Cheers.

I'm not sure I understand the issue. The path passed using the --prefix flag is the path of a temporary build folder that is deleted after the package has been built, and is different from the eventual installation path, so it is of no use for setting the rpath of the binaries.
You probably want to use a relative rpath, using the $ORIGIN token (see e.g. man ld). Then the path shouldn't depend on the installation prefix.

I'm not sure we're referring to the same "prefix".  I'm referring to the --prefix flag that is passed to the cmake --install command here, not the prefix key used here, which I think you might be referring to.
I did briefly look at using $ORIGIN but couldn't make it work. As I said I was only experimenting / exploring options, and I don't have a lot of experience with rpath.  I was also testing on macos, which may behave differently.
Even ignoring the rpath problems, I think the core concern is that the user's CMakeLists.txt file(s) can't determine the installation prefix b/c it's overridden by using --prefix with cmake --install.
Thanks.

I'm not sure we're referring to the same "prefix". I'm referring to the --prefix flag that is passed to the cmake --install command here, not the prefix key used here, which I think you might be referring to.

I'm also referring to the --prefix flag of the cmake --install invocation.

I think the core concern is that the user's CMakeLists.txt file(s) can't determine the installation prefix b/c it's overridden by using --prefix with cmake --install.

What I was trying to say is that you cannot rely on the installation prefix to be meaningful, so you shouldn't determine it inside of the CMakeLists.txt file.
For example, when running py-build-cmake in verbose mode, you'll see cmake --install commands like this:
[['cmake',
  '--install',
  '/tmp/build-via-sdist-kq29t8de/package-1.0.0/.py-build-cmake_cache/cp39-cp39-linux_x86_64',
  '--prefix',
  '/tmp/tmpkc6i6xs8/staging',
  '--config',
  'RelWithDebInfo',
  '--component',
  'python']]

Passing the prefix using -DCMAKE_INSTALL_PREFIX wouldn't change the fact that '/tmp/tmpkc6i6xs8/staging' is not a meaningful path to keep track of in your CMakeLists.txt file, and it should definitely not be hard-coded in the resulting binaries. As soon as the py-build-cmake build is complete, the /tmp/tmpkc6i6xs8/ folder is destroyed.

I see, I was thinking in terms of a source build/install, I overlooked the staging needed for creating a portable binary wheel.  Thanks for clarifying, I'll close the issue.