Change npm install to npm ci

This PR change npm install to npm ci

npm install should be used to update or install new dependencies. This command ignores the package-lock.json file.

npm ci will honor the package-lock.json file and you get reliable builds.

Your pull request should…

[x] have a concise title
[ ] close an accompanying issue if one exists
[x] be against the correct branch (features can only go into develop)
[ ] include migration scripts and documentation, if appropriate
[ ] pass automated testing
[x] have a clean commit history
[x] have proper commit messages (title and body) for all commits
[ ] have appropriate tags applied

@karendolan  Here's the PR I promised you. Can you review it?


<EMAIL_ADDRESS>cause Error: Check the render method of Styled(Component)

Description
<EMAIL_ADDRESS>cause Error: Element type is invalid: expected a string ... Check the render method of Styled(Component)
CodeSandbox/Snack link
No response
Steps to reproduce
yarn install @gluestack-style/animation-plugin@latest
yarn start --web
Failed to start web app in chrome.
Error: Element type is invalid: expected a string ... Check the render method of Styled(Component) when using Image component
Roll back to 0.1.7, everything return to ok immediately.
gluestack-ui Version
<EMAIL_ADDRESS>Platform

[X] Expo
[ ] React Native CLI
[X] Next
[ ] Web
[ ] Android
[ ] iOS

Other Platform
No response
Additional Information
Failed to start web app in chrome.
version snapshot

Thanks for reporting. We will fix this on priority.

Hey @jasonz1360, Please can you please try with our new version of @gluestack-ui/themed and @gluestack-style/react.
Also we have deprecated @gluestack-style/animation-plugin. for more info please refer this following docs link:

https://gluestack.io/style/docs/plugins/animation-plugin.
https://gluestack.io/ui/docs/advanced/animations.


Access WeTTY terminal via native CLI

I am essentially searching for a way to do almost the inverse of what WeTTY delivers. I might not even know exactly what I am asking for because I assumed someone would have already established a method to achieve what I am trying to do.
WeTTY exposes a shell through a web interface. I wish to interface with that web interface through a native shell thereby emulating what would be an entirely native connection to the underlying SSH server.
Is anyone familiar with a utility that would be capable of such behavior?

Can you explain more what you mean?

WeTTY allows users to connect to a terminal that may otherwise be unexposed. For example, an organization may allow connections to go through port 80 or 443 but disallow SSH connections external to its network (typically done through port 22). Users would then interface with WeTTY-enabled shell sessions through their browser via the standard HTTP or HTTPS ports (if configured with conventional standards).
I wish to interface with the WeTTY-enabled terminal through a native CLI, similar to what would normally be possible if SSH were directly accessible in the first place.

At the moment, I managed to sort of find what I was looking for in the form of a WebSocket-capable network cat utility.

It seems that you are basically interested in connecting via SSH in networks where port 22 is blocked / ssh traffic is not allowed. You may be interested about exposing ssh server through https/http port (443/80 vs 22). If proxy checks whether packages sent to these ports are correct http, read about tunneling ssh over http.

You have the right idea, @d0ku; unfortunately, there are limitations in place which prevent me from being able to modify any network-related configurations on the machine running WeTTY.

@RA80533 it sounds like you'd like ssh over WebSocket client.
An interesting idea but I think outside the scope of this project.
Currently, Wetty is a js client to a WebSocket server to proxy to a remote machine so if you'd like to create a client reusing the sever feel free to open a pr but I think it may deserve its own project


MAISTRA-1029: Add the operator to relatedImages

Closing as it looks as if this will be handled automatically by the OLM mirroring


WIP - Implement v1beta3 conversions

This is just a tracking pull on the internal refractor for v1beta3 (part of #1519).
The commits in this pull can be ignored, only the referenced pull requests matter.

Using this file to create service failed
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/examples/walkthrough/v1beta3/service.yaml
Error
$ kubectl create -f service.yaml
F0416 08:13:26.130362   21503 create.go:83] Service "nginx-example" is invalid: spec.port: invalid value '0': must be greater than 0 and less than 65536
Also, where is labels nested in service?

Labels are under "metadata" in v1beta3, and the port change is because of https://github.com/GoogleCloudPlatform/kubernetes/pull/6182

@madhuri-rai07 please take a look at our v1beta3 conversion tips:
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/api.md#v1beta3-conversion-tips
The swagger UI may also be helpful:
http://kubernetes.io/third_party/swagger-ui/#!/v1beta3


What?

Matthew is back from the dead? With an index.php of a whopping 0 loc? Whaaaat?? Hello issue #1. (:

It's been a while since I had time to get back on the hub. I'm porting a cms I created way back when PHP OOP was still experimental.

Welcome back! Get on Meteor. It's server-side API is synchronous (which you are familiar with coming from PHP). ;)


Package name and scope

Now, since we cover other methods than Bayesian as well, why not advertise it a bit more broadly?
E.g. call it dfm or dfmr, both names are available. The latter would have the advantage that it is easy to search for your package on the internet.

Could do. I had focused on Bayesian estimation because:
(1) It is the hardest one to code up correctly
(2) It is typically the most powerful for forecasting applications due to the ability to include prior information
(3) There are other packages that do ML dynamic factor models using Watson and Engle's version of the EM algorithm (which vastly superior to numerical optimization of the likelihood function)... this is how we do it too for method = "ML". There are no packages that I'm aware of (or can find easily on google) that do Bayesian estimation of factor models using Durban and Koopman's disturbance smoother. While most of the methodology is laid out in their 2012 book they offer no suggestions on identification to ensure you're drawing from the same distribution at each MCMC iteration. They simply write:

Though Bayesian estimation by Gibbs sampling sounds straight forward it is not due to the fact that factors are not identified.

I had to work out a reliable methodology for that bit on my own.
(4) Some people (like me) think that a Bayesian approach to statistics is the "right" way to view the world... the frequentest idea of "true" parameters is not very satisfying.
BDFM is the jargon used in the literature for Bayesian dynamic factor models and is thus appealing as it means something on it's own. However, if you think a broader approach would be easier to sell that's probably a better way to go. Let me know what you think...

I agree on your point about about the B. I still prefer lower case, though. bdfm is easier to type than BDFM.

Yes, lower case is probably more in keeping with the standard for R packages anyhow... bdfm sounds good to me.

Yes, I think we should. Can I leave that to you or shall I make a start on it?

I did a PR #26 with renaming that passes the checks. Remaining steps on your side:

[ ] merge PR
[ ] rename GitHub repo
[ ] adjust the path in in your Git Client
[ ] point to new location in travis
[ ] point to new location in netlify

Not sure about updating travis to the new repository name. However, I don't thing repository names are case sensitive (since it's a url) so it shouldn't be an issue. If you have a better idea about this let me know.


v0.2.0

Lists of tasks needed :

[ ] Group commits by tag when generating from the beggining of time
[ ] Add a breaking changes section to our readme when the 0.2.0 is released
[ ] Add our own changelog once we generate next versions
[ ] Create our own .changelogrc file for our project
[X] Change log colors
[X] Clean readme
[X] Logo in changelogs

Updated README https://github.com/rafinskipg/git-changelog/blob/changelogrc/README.md

README looks much better. :-) :+1:

Hey @rafinskipg
Thanks for the tool it is great. I'm thinking of adding it to our build process. Unfortunately, we use JIRA and I didn't find a way to generate proper URL to the ticket. I would like to fork and add the feature. What do you think? Is it something that could find it's way in the main repo? I'm asking so I don't work too much for something that will never be used by the rest of the git-changelog community.
Thank you

Yeah @daddykotex  It would be great to have that feature, as the most used are github or Bitbucket + Jira
I'm closing this issue because version 1.0.0 has been released despite the fact that not all the features are implemented


Sharing scratch paper

A start to ticket #25

Brilliant! I love it. I will add interface for it soon.


Nested Launch Configurations

Would it be possible to have VS Code scan for any child .vscode folders or other files named launch.json and include those in the debug configuration available?  I have a git project where there are many sub-modules and I would like to have the debug configuration contained in each sub-module.
I am happy to contribute this myself if someone could point me in the right direction.
(I think looking for all files named launch.json would be easiest/cleanest)

There are some limitations in this approach - the user can not have an unrelated launch.json file anywhere as it will screw up the debug configurations.
If we were to do this we should do the same for tasks.json - as it also lives in the .vscode folder and it should have the same charateristics.
Both task service and the debug service use the configuration service here
https://github.com/Microsoft/vscode/blob/master/src/vs/platform/configuration/common/configurationService.ts#L104
How to change the configuration service such that it would look for launch.json or tasks.json anywhere I am not completelty sure.
Due to the reasons above I am against this feature.
@bpasero @dbaeumer opinions welcome

@isidorn How will this screw up the debug configurations? The clean way to implement this would be to also add a new variable like ${file-location} for use in the debug configurations. That way your configs are always relative to the location of the launch.json and not the workspace root.

Somewhat similar: I'd like to put my .vscode file under a different file name or nested in a different folder, as I can ignore that folder with a global git config and not to have deal with it getting committed a shared repository. Is there a pattern for handling this? see also https://stackoverflow.com/questions/42631728/user-specific-workspace-settings-in-vs-code

This feature request will not be considered in the next 6-12 months roadmap and as such will be closed to keep the number of issues we have to maintain actionable. Thanks for understanding and happy coding!

You might consider a label to convey that message as well. Where I work we use the term icebox.


Added methods to find exisiting operations

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 44.39%. Comparing base (ef49df2) to head (1808433).

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #283   +/-   ##
=========================================
  Coverage     44.39%   44.39%
  Complexity     1571     1571
=========================================
  Files           297      297
  Lines         11505    11505
  Branches       1124     1124
=========================================
  Hits           5108     5108
  Misses         5988     5988
  Partials        409      409

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


Remove unused filter chain

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Related to #27482 ?


Sand duper toggle doesn't work

Timings link

Expected behavior

Sand blocks spawn at the end when using duper
Observed/Actual behavior

Sand doesn't spawn
Steps/models to reproduce

(Make sand duper with PaperMC)
(With existing sand duper (not working))

Set sand.fix-duping to false
Go to strong hold where duper is.
Turn on machine for 5 mins
Turn off and go to the end
No sand block spawned

Purpur version

> version
[09:28:43 INFO]: Checking version, please wait...
[09:28:43 INFO]: This server is running Purpur version git-Purpur-1169 (MC: 1.16.5) (Implementing API version 1.16.5-R0.1-SNAPSHOT)
You are running the latest version
Previous version: git-Paper-"e04368045" (MC: 1.16.5)

Agreements
Please agree to the following.

[x] I am running the latest version of Purpur available from https://purpur.pl3x.net/downloads.
[x] I have searched for and ensured there isn't already an open issue regarding this.
[x] My version of Minecraft is supported by Purpur.

Other

Migrated from Paper to Purpur because Paper doesn't allow sand duping. Existing duper was built on paper but also didn't work (obviously)

Related to #384
The sand duper you are talking about is actually fixed in a different way in Paper. We added a new option for end portal stuff
Set this option to false:
blocks.end_portal.safe-teleporting: false

We're gotten reports that this option also doesn't work, so get back to us if it works for you or not.

Turned off end_portal.safe-teleporting is the solution.
In short setting both end_portal.safe-teleporting and sand.fix-duping to false will bring back sand duping.
Thanks @BillyGalbreath for the support and a great Paper fork

blocks.end_portal.safe-teleporting: false
Means it's structured like
blocks:
  end_portal:
    safe-teleporting: true

Try just searching for safe-teleporting

thank you very much :D

This 100% Works

where can I change it tho?

I don't know why but in the last version 1.21.4 the blocks.end_portal.safe-teleporting and the sand.fix-duping are not available to make the change so I'm still trying to figure out how to make the sand duping available in my purpur server.

This 100% Works

How did you fixed it?

I forgot when, but that option has moved to paper at some point :)
https://docs.papermc.io/paper/misc/paper-bug-fixes#duplication-bugs


Allow customizing the appearance of enums

It would be neat if there was an interface you could implement on enums to make the enum parser use alternative names for suggestions and parsing.
Something like
public enum YourEnum implements ParseableEnum {
    FOO,
    BAR
    BAZ;

   @Override
   public @NonNull String parseableName() {
       return this.name().toLowercase( ) + "_suffix";
   }
}

+1, is this planned?


KeplerLightCurveFile does not return a warning about filtered cadences

By default, lightkurve.KeplerLightCurveFile has the attribute quality_bitmask default to "default", which is a very sane choice that removes cadences with particular flags.
However, it is easy to quickly open a file, e.g.,
lc = lk.KeplerLightCurveFile("ktwo206467205-c19_llc.fits")
and start work, without a user realizing that such cadences have been filtered, unless they dig into the documentation. This could lead to losing a bet with a co-worker about whether there are true gaps in the data or not, resulting in owing that co-worker a beverage.
Ideally, KeplerLightCurveFile and similar functions could return a warning message when the file is opened, such as:
In[1]: lc = lk.KeplerLightCurveFile("ktwo206467205-c19_llc.fits")
Out[1]: Warning: Using quality_bitmask = default. 1,283 cadences have been filtered.

Thanks for opening this issue @JeffLCoughlin. I understand this concern. I feel uneasy about discarding data without warning the user.
Some background: we discussed the trade-off between being "explicit" and "noisy" on a few occasions.  I believe we ended up choosing not to be verbose because the default bitmask is designed to strictly only reject cadences which 99% of users should never have to worry about.  The definition of the default bitmask is shown here:
https://github.com/KeplerGO/lightkurve/blob/a6169d4e125ee0039ff7074277de290f3d96139d/lightkurve/utils.py#L125-L127
Of course this default mask makes less sense for C19 (and perhaps C0) due to the large number of coarse point cadences in those Campaigns (I'm guessing).  I wonder if the solution is to print a warning message if the default bitmask rejects more than 5% of the cadences, so that at least users of C19 will see a warning message about the silly number of cadences being discarded.  Could that be a good solution / trade-off? Happy to discuss and revise our strategy here!
As an aside, Lightkurve does print a message about the masking if the user raises the verbosity, but that is an obscure feature.  Example:

Yea perhaps I hit more of an edge case working on C19 data. I like that middle-ground of 5% or some such number --- that might be the right tradeoff. Maybe even 1% just to play it safe for folks, but would have to look at often that comes up.

A PR to add the warning has been opened at #495.

#495 has been merged -- closing this issue!


Configure Eslint & Prettier

We should have an Eslint setup that also covers Prettier on commit.
We should be able to use @react-native-community/eslint-config.

I believe this can be closed with #19


[ggj] Replace anonymous classes with lambdas in generated code

My idea was to have a general AST transformer that is independent of other components, which traverses an input AST and transforms an AnonymousClassExpr AST to LambdaExpr when it deems possible for conversion. However, I realized this approach is infeasible for many reasons.
For example, scoping rules are different between the anonymous classes and lambdas, so in order to make it work this way, you need full semantics analysis.

For example, in lambda expressions, this and super are lexically scoped, meaning they are relative to the enclosing class, but in an anonymous class, they are relative to the anonymous class itself. Similarly, local variables declared in lambda expressions will conflict with variables declared in the enclosing class, but in anonymous classes, they are allowed to shadow variables in the enclosing class.

So I think it should generate LambdaExpr instead of AnonymousClassExpr at the first place.

This has since been fixed in #815, and some anonymous classes cannot be lambda-ized due to multiple nested methods. Hence AnonymousClassExpr is still relevant in the generated client libraries.
Closing since this is specific to #815, please feel free to open a new issue for any lambda / anonymous class issues you'd like to address.


extensions/filters/listener/http_inspector coverage

Hello,
The Envoy project has recently started collecting per-extension coverage. You have been tagged with this issue as you are a co-owner of an extension, extensions/filters/listener/http_inspector, which is below the 96.6 percent coverage mark.
Could you please take a look at coverage results (https://storage.googleapis.com/envoy-postsubmit/master/coverage/index.html) and add more tests when you get a chance? Once this is done you should be able to remove your extension from the exempt extensions in test/per_file_coverage.sh
Thanks!
cc @yxue

/assign @yxue


[ko] Fix typo in apiserver-aggregation.md

Signed-off-by: Guangwen Feng<EMAIL_ADDRESS>

/lgtm

Thanks!
/approve


Replace black arrow (▶) with ►

          Not sure its related, but I would love to have the arrows like asciiflow.

This ►  instead of ▶
It makes the vertical lines misaligned
You can notice it in the example on the README.md page and below.
Example :
Current :
                 ─       │           ├───────○──┤/  547 │
                GND      │           │       │  │ ▶     │
                         │           │      ╭┴╮   │     │

With suggested arrow :
                 ─       │           ├───────○──┤/  547 │
                GND      │           │       │  │ ►     │
                         │           │      ╭┴╮   │     │

I like the idea that we can keep it as vanilla as possible without having to use fonts like jetbrains mono (even if its a cool font), but can use fonts like monospace or courier.
Originally posted by @klausdk in https://github.com/tuanchauict/MonoSketch/issues/586#issuecomment-2144619182

Answer: https://github.com/tuanchauict/MonoSketch/issues/586#issuecomment-2151069590

@klausdk I create a new issue for your request.
This is being addressed with #604

On alpha now


WIP - gRPC Plugin framework

Which problem is this PR solving?

Issue #422 POC

Short description of the changes

Plugin based storage backend

Great start. My main comment is about avoiding duplicating the trace model.

@chvck I have been a bit busy lately but I still plan on finishing this. I might need some help with the proto generation in order to use gogoproto and remove the mapping code

@yurishkuro
I am trying to add support for configuration and I may need advice.
I am doing the following to read from the viper context:
const pluginArgsPrefix = "grpc-storage-plugin.arg."

func (opt *Options) InitFromViper(v *viper.Viper) {
	opt.Configuration.PluginBinary = v.GetString(pluginBinary)

	for _, f := range v.AllKeys() {
		if strings.HasPrefix(f, pluginArgsPrefix) {
			opt.Configuration.PluginArgs = append(opt.Configuration.PluginArgs, v.GetString(f))
		}
	}
}

However I am confused as what to add in the AddFlags method since the flags are dynamic. Should I do nothing? Not sure how to document this.
My goal is for people to use the args like this:
grpc-storage-plugin.arg.plugin-specific-arg=1
and have plugin-specific-arg=1 passed to their plugin.
Not sure if this conversation should be moved to an issue either.
Thanks

@yurishkuro
Makes sense ! I just committed the implementation.
I think it's time to benchmark and write tests against the new code. I'm not familiar with code benchmarking, any method you would suggest? Is there existing code somewhere ?
Thanks

This is where #1221 might come in. If you can figure out crossdock, try adding an integration test. It is definitely tricky so I'll see if I have some free time to help. Benchmarking can be as simple as measuring the latency in requests and perhaps throughput. Not sure how formal the process needs to be.

Well, crossdock is more for correctness integration testing, we never used it for performance.
For benchmarking storage I don't think the integration tests are important. We just need a data generator pushing data into SpanWriter interface, one running in-process, another running via grpc-plugin.

We have a trace generator in the internal repo that I used to stress test the agents back in the days. Let me see if I can move it to oss.

I know it's not top quality data but I re-used the createTrace method from the integration tests and called it in a loop. I compared memory vs grpc-memory-plugin and it's about the same numbers.
Keep me posted regarding that trace generator

trace generator also creates fairly simple traces, it's purpose is to generate load of on agents or collectors.
https://github.com/jaegertracing/jaeger/pull/1245

I did not, what I did is probably meaningless. I will manage to checkout the tracegen and run proper tests

I ran the tracegen tool and those are the results:
2018-12-12T15:25:45.913-0500    INFO    tracegen/main.go:55     Initialized global tracer
2018-12-12T15:26:15.917-0500    INFO    tracegen/worker.go:93   Worker 3 generated 519026 traces        {"worker": 3}
2018-12-12T15:26:15.917-0500    INFO    tracegen/worker.go:93   Worker 0 generated 516428 traces        {"worker": 0}
2018-12-12T15:26:15.917-0500    INFO    tracegen/worker.go:93   Worker 1 generated 515793 traces        {"worker": 1}
2018-12-12T15:26:15.917-0500    INFO    tracegen/worker.go:93   Worker 2 generated 517417 traces        {"worker": 2}
2018-12-12T15:26:15.917-0500    INFO    tracegen/main.go:59     Waiting 1.5sec for metrics to flush
olivierboucher in ~/go/src/github.com/jaegertracing/jaeger on plugin-framework *> (production:default)
$ tracegen --duration 30s --workers 4
2018-12-12T15:27:18.570-0500    INFO    tracegen/main.go:55     Initialized global tracer
2018-12-12T15:27:48.572-0500    INFO    tracegen/worker.go:93   Worker 1 generated 729523 traces        {"worker": 1}
2018-12-12T15:27:48.572-0500    INFO    tracegen/worker.go:93   Worker 2 generated 732114 traces        {"worker": 2}
2018-12-12T15:27:48.572-0500    INFO    tracegen/worker.go:93   Worker 0 generated 732004 traces        {"worker": 0}
2018-12-12T15:27:48.572-0500    INFO    tracegen/worker.go:93   Worker 3 generated 730584 traces        {"worker": 3}
2018-12-12T15:27:48.572-0500    INFO    tracegen/main.go:59     Waiting 1.5sec for metrics to flush

First is using the grpc plugin, second is using memory. It looks like it has a huge performance impact but I think that was expected. Is this tolerable ?

@yurishkuro
You're correct I did ran tracegen against the 2 backends.
Can you help me by telling me which metrics are meaningful?
I still have all the prometheus metrics stored locally.

These are the metrics that should be coming out of any storage
https://github.com/jaegertracing/jaeger/blob/50429cb55aee9280e39621a0b5aae3c2afe5d190/storage/spanstore/metrics/write_metrics.go#L24-L30
Try looking for something like these:
jaeger_collector_save_latency_bucket{host="hostname",le="0.005"} 518383
jaeger_collector_save_latency_bucket{host="hostname",le="0.01"} 518424
jaeger_collector_save_latency_bucket{host="hostname",le="0.025"} 518536
jaeger_collector_save_latency_bucket{host="hostname",le="0.05"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="0.1"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="0.25"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="0.5"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="1"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="2.5"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="5"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="10"} 518563
jaeger_collector_save_latency_bucket{host="hostname",le="+Inf"} 518563
jaeger_collector_save_latency_sum{host="hostname"} 26.363240858001458
jaeger_collector_save_latency_count{host="hostname"} 518563

I have limited testing capabilities on my MBP (16GB ram fills up quickly)
Here is a graph, my prometheus instance scrape rate is tuned to 2s for this test:

First I ran grpc, then memory. From my understanding there only seem to be a ~1ms difference which leaves me perplex

I just realized that even though I split the tracegen into a library function separate from main, it still only works by generating traces via jaeger-client, it cannot generate spans in the domain model. It's probably not the best one to use here.
Really, the only benchmark we could have is generating somewhat realistic span and writing it to two SpanWriters:

generator -> SpanWriter (InMemory or maybe even noop storage)
generator -> SpanWriter (grpc Plugin) -> child process (same storage as in first item)

This way we just measure the CPU/memory overhead per span saved (can be done with Go benchmark, testing.B). We know there will be overhead, the benchmark will tell us how bad it is.

Not sure I want to commit the actual code, but here's how it went:
$ go test -bench=.
goos: darwin
goarch: amd64
pkg: github.com/jaegertracing/jaeger/cmd/noop-grpc-plugin
BenchmarkNoopSpanWriter-8<PHONE_NUMBER>               0.28 ns/op
BenchmarkGRPCNoopSpanWriter-8              20000             99580 ns/op
PASS
ok      github.com/jaegertracing/jaeger/cmd/noop-grpc-plugin    2.909s

The test can be found here:
https://gist.github.com/olivierboucher/eeb0e4618b1d744dc7510fd3b80f1a0d
Could you help me define what a "realistic" span is? Right now the test uses empty spans

by "realistic span" I mean something that comes from real apps, like the hotrod, including all the string and timing fields, a span reference, couple of tags and logs.
So your result, if I am reading it correctly, shows ~100 microseconds overhead. The actual save requests to e.g. Cassandra have millisecond latency.

So that's good right? I will modify the spans to see how it impacts the timing because of the extra serialization. Do you want me to commit everything once it's done?

@yurishkuro
I have an issue with the tests since I add to move TraceID to model.proto.
These 2 methods defined in ids.go are now longer present and are defined by protobuf:
// MarshalTo converts trace ID into a binary representation. Called by protobuf serialization.
func (t *TraceID) MarshalTo(data []byte) (n int, err error) {
	var b [16]byte
	binary.BigEndian.PutUint64(b[:8], uint64(t.High))
	binary.BigEndian.PutUint64(b[8:], uint64(t.Low))
	return marshalBytes(data, b[:])
}

// Unmarshal inflates this trace ID from binary representation. Called by protobuf serialization.
func (t *TraceID) Unmarshal(data []byte) error {
	if len(data) < 16 {
		return fmt.Errorf("buffer is too short")
	}
	t.High = binary.BigEndian.Uint64(data[:8])
	t.Low = binary.BigEndian.Uint64(data[8:])
	return nil
}

It breaks all the fixtures used by tests.

I think I understand what to do in order to make it work. I'll define trace ids as bytes just like it is done in model.proto and add the gogo annotations. Not sure how this will translate for other languages but let's focus on go for now

I believe the Protobuf compiles for any language (despite gogo-specific annotations), as long as the gogoproto Protobuf files are available for inclusion.

I fixed the issue by reverting changes to TraceID but I had to move DependencyLink to model.proto in order for the plugin interface to implement dependencystore.Reader. It does not break anything as far as test goes. Is there any problem with that?

I fixed the issue by reverting changes to TraceID but I had to move DependencyLink to model.proto in order for the plugin interface to implement dependencystore.Reader. It does not break anything as far as test goes. Is there any problem with that?

That should be fine, although we may want to do that as a separate PR. Also, there seem to be any changes in the generated file, something is off, most likely a different version of the generator.

That should be fine, although we may want to do that as a separate PR. Also, there seem to be any changes in the generated file, something is off, most likely a different version of the generator.

What versions of protoc/protoc-gen-go should I run locally? Maybe this is off, I'm running 3.6.1.
So if we want to do this in 2 separate PR I would have to do the DependencyLink one first because this one depends on it.

Yes, we can do proto change as a separate (first) PR.
I don't think the version of protoc matters much, it's the version of gogo that's important. The Makefile has a target proto-install that installs the gogo generators from the /vendor directory.

this seems to be a blocking issue #1258

I fixed this issue adding the prune settings in Gopkg.toml. I will make a PR for those changes

I'm not sure if this is the right place for this but it might be worth consideration. I've had a quick look at implementing a plugin using this and it seems nice, I have an issue trying to create a plugin from outside of jaeger due to vendoring though. In my own package if I do
	plugin.Serve(&plugin.ServeConfig{ 		HandshakeConfig: plugin.HandshakeConfig{ 			MagicCookieKey:   "STORAGE_PLUGIN", 			MagicCookieValue: "jaeger", 		}, 		VersionedPlugins: map[int]plugin.PluginSet{ 			1: map[string]plugin.Plugin{ 				shared.StoragePluginIdentifier: &shared.StorageGRPCPlugin{ 					Impl: &store, 				}, 			}, 		}, 		GRPCServer: plugin.DefaultGRPCServer, 	})
then I see
cannot use shared.StorageGRPCPlugin literal (type *shared.StorageGRPCPlugin) as type "github.com/hashicorp/go-plugin".Plugin in map value: 	*shared.StorageGRPCPlugin does not implement "github.com/hashicorp/go-plugin".Plugin (wrong type for Client method) 		have Client(*"github.com/jaegertracing/jaeger/vendor/github.com/hashicorp/go-plugin".MuxBroker, *rpc.Client) (interface {}, error) 		want Client(*"github.com/hashicorp/go-plugin".MuxBroker, *rpc.Client) (interface {}, error)
I could be doing this wrong/jumping the gun but I thought that it was worth bringing it up just in case.

@chvck this often happens if your code is pulling jaegertracing/jaeger from GOPATH instead of a flat vendor dir inside your repo.

@chvck could you kindly open an issue with your description? We would investigate it independently of this PR :)

@yurishkuro am I correct in thinking that a rough plan here would be:

Split the proto storage service into something that more closely matches current implementations.
Split out the proto changes and made a new PR from those.
Update the Go plugin to address comments in this PR.

Sound about right? Also, what would be the best way for me to go about doing this? I think that I'm going to have to fork and create new PRs even for just updating the Go plugin part.
@annanay25 I'd be happy to create an issue but does it make sense outside of this PR? I think that it's specific to the span data volume returned over the grpc service implemented in the PR.

@chvck yes, although I'm not sure about the difference between 1 and 2.

What's the state of this PR?

What's the state of this PR?

It seems to be stale now. I've just created https://github.com/jaegertracing/jaeger/pull/1461 which builds on top of the work in this PR.

superseded by #1461


Undesired trailing slash added to upstream_uri

Summary
A trailing slash is automatically added to the path of the upstream_uri while it's not defined in the service path. As the path known on the destination does not contain any trailing slash, we get a 404.
Is there a way to prevent the trailing slash to be automatically added?
Kong Ingress controller version
0.9.0
Kong version
2.0.2
Kubernetes version
Client Version: version.Info{Major:"1", Minor:"16+", GitVersion:"v1.16.6-beta.0", GitCommit:"e7f962ba86f4ce7033828210ca3556393c377bcc", GitTreeState:"clean", BuildDate:"2020-01-15T08:26:26Z", GoVersion:"go1.13.5", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.7", GitCommit:"5737fe2e0b8e92698351a853b0d07f9c39b96736", GitTreeState:"clean", BuildDate:"2020-06-24T19:54:11Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"}

Environment
AKS + Installation via Helm
What happened
A trailing slash is automatically added to the path of the upstream_uri while it's not defined in the service path. As the path known on the destination does not contain any trailing slash, we get a 404.
Is there a way to prevent the trailing slash to be automatically added?
Expected behavior
No trailing slash is added to the upstream_uri
Steps To Reproduce

Install a pod exposing an endpoint at a specific path without trailing slash, by example '/foo'.
Create a service and ingress. The ingress path is different from the endpoint path, by example '/kung'
Create a kongIngress such that the strip_path property of the route section is set is true and with the path property of the proxy set to '/foo'.
Link the the kongIngress with the service and the ingress

Additional details & logs
Here is the output of the file-log plugin:
{
   ...
   "service" : {
      ...
      "path" : "/foo",
      ...
   },
   "response" : {
      ...
      "status" : 404,
      "headers" : {
         ...
      }
   },
   "upstream_uri" : "/foo/",
   ...
}

In another environment where we are still using kong 1.4.2 and the kong-ingress-controller 0.7.0 we do not have the problem. Here is the output of the file-log plugin in that other environment:
{
   "service" : {
      ...
      "path" : "/foo",
      ...
   },
   ...
   "upstream_uri" : "/foo",
   ...
}

@vrobinho Could you share the Ingress/Service YAMLs you have, along with the corresponding Kong route+service you see after via the admin API?
We're perhaps not on quite the same Kong/controller versions, but with a strip-path: true Ingress and a path: /anything annotation on the Service I get the following:
{"id":"461c7c41-bec0-403b-981c-686dbdc73f6b","path_handling":"v0","paths":["/space"],"destinations":null,"headers":null,"protocols":["http","https"],"created_at":1600299352,"snis":null,"service":"helmgress.strippy.80","name":"helmgress.strippy.00","strip_path":true,"preserve_host":true,"regex_priority":0,"updated_at":1600299352,"sources":null,"methods":null,"https_redirect_status_code":426,"hosts":["strippy.example"],"tags":["managed-by-ingress-controller"]}

{"host":"strippy.helmgress.80.svc","id":"33351895-9753-45da-8a16-c87bb514e375","protocol":"http","read_timeout":60000,"tls_verify_depth":null,"port":80,"updated_at":1600299352,"ca_certificates":null,"created_at":1600299352,"connect_timeout":60000,"write_timeout":60000,"name":"helmgress.strippy.80","retries":5,"path":"/anything","tls_verify":null,"tags":["managed-by-ingress-controller"],"client_certificate":null}

With a port forward to my test proxy that yields:
$ curl -sv "strippy.example:8440/space" --resolve strippy.example:8440:<IP_ADDRESS>
* Added strippy.example:8440:<IP_ADDRESS> to DNS cache
* Hostname strippy.example was found in DNS cache
*   Trying <IP_ADDRESS>:8440...
* Connected to strippy.example (<IP_ADDRESS>) port 8440 (#0)
> GET /space HTTP/1.1
> Host: strippy.example:8440
> User-Agent: curl/7.72.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Content-Type: application/json
< Content-Length: 456
< Connection: keep-alive
< Server: gunicorn/19.9.0
< Date: Wed, 16 Sep 2020 23:52:06 GMT
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Credentials: true
< X-Kong-Upstream-Latency: 135
< X-Kong-Proxy-Latency: 4
< Via: kong/<IP_ADDRESS>-internal-preview-enterprise-edition
<
{
  "args": {},
  "data": "",
  "files": {},
  "form": {},
  "headers": {
    "Accept": "*/*",
    "Connection": "keep-alive",
    "Host": "strippy.example:8440",
    "Snakeman": "2d457b0f-6dc8-43dd-b050-006987458a1a#1",
    "User-Agent": "curl/7.72.0",
    "X-Forwarded-Host": "strippy.example",
    "X-Forwarded-Prefix": "/space"
  },
  "json": null,
  "method": "GET",
  "origin": "<IP_ADDRESS>",
  "url": "http://strippy.example/anything"
}

Slightly different as it's httpbin output rather than logging plugin output, but in practice the upstream path reported by the logging plugin and "url": "http://strippy.example/anything" reported back by httpbin should be equivalent, and it does lack the trailing slash for me.
Would advise checking with Kong proxy 2.1.x and controller 0.10.0 in your environment, though I'm not sure if that would change anything from your initial observation. The 2.1.x Kong proxy routing may differ from 2.0.x--I don't think it should, but it's possible (there were definitely some 1.x to 2.x Kong proxy changes in that area). In any case, we'll want to target the latest versions now available for ongoing work. Not entirely sure what all trailing slash handling changes may have appeared since 0.7 and 1.4, but we'll want to work on top of the current behavior.


FailSafe.h

exit status 1
FailSafe.h: No such file or directory
??

https://github.com/gmag11/FailSafeMode


MVC Core application hosted on IIS gives Cryptographic Exception

Hi,
We are getting CryptographicException with inner exception UnauthorizedAccessException with an IIS hosted mvc core 1.1 web app. If we just serve the application with dotnet application.dll. It runs fine without the error.
The full stack trace is attached

The Program.cs file

Startup file

Please help

What user are you running the AppPool as? Are you running with Load User Profile as false?

user with AppPool is ApplicationPoolIdentity. I changed it to LocalSystem and it works. Will be trying the second option as well. The application used to work as it was, nothing changed but it started giving this error suddenly.

Thanks for contacting us. The behavior you're observing is because of the permissions of the user your application pool uses.
@Tratcher, do we have any guidance in docs about how to configure IIS in these scenarios?
/cc @blowdart

@shirhatti @natemcmaster

Weird, permissions don't just change on their on.
You'd need to ACL the directory so the application pool ID has Modify access and ensure you turn inheritance of those permissions on.

@baffourt, did the provided suggestions solve your issue?


ANP CSS_Update routing-methods.md_RE Session Affinity

Editing statement from "The cookie-based session affinity feature is useful when you want to keep a user session on the same origin. " to "The cookie-based session affinity feature is useful when you want to keep a user session on the same origin, such as scenarios where clients authenticate to the origin."

@duongau
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


ERROR: configuration: Start Listening was not completed in timely manner

Please check Services, Known Bug / Issues and Troubleshooting over here first: https://github.com/fuatakgun/eufy_security/blob/master/README.md
Describe the bug
2022-11-28 18:11:30.445  INFO  Eufy Security server listening on host <IP_ADDRESS>, port 3000
2022-11-28 18:11:30.739  ERROR Response data is missing
{
code: 0,
msg: 'Succeed.',
data: undefined
}
To Reproduce
Steps to reproduce the behavior:

install
start
See error

Expected behavior
Screenshots

**Hardware Information about Home Assistant
**Hardware Information about Cameras

Doorbell
Live Streaming Protocol: RTSP

I'm having the exact same problem, was just looking for a solution myself. My log shows something different though.
2022-11-28 18:36:59.355  INFO  Eufy Security server listening on host <IP_ADDRESS>, port 3000  2022-11-28 18:37:15.607  INFO  Client disconnected with ip: <IP_ADDRESS> port: 44336 code: 1000 reason: Normal Closure  2022-11-28 18:37:54.761  INFO  Client disconnected with ip: <IP_ADDRESS> port: 39170 code: 1000 reason: Normal Closure

My errors matched that of @ankaboutobruni .
See #525. Might need to put an arbitrary name in TRUSTED_DEVICE_NAME
Fixed it for me immediately.

Here the same issue

Same issue here. Started after the latest Homeassistant Core Update
2022-11-28 22:31:26.784  INFO  Client disconnected with ip: <IP_ADDRESS> port: 44068 code: 1000 reason: Normal Closure
2022-11-28 22:32:47.010  ERROR Response data is missing
{
code: 0,
msg: 'Succeed.',
data: undefined
}

My errors matched that of @ankaboutobruni .
See #525. Might need to put an arbitrary name in TRUSTED_DEVICE_NAME
Fixed it for me immediately.

This was also the fix for me. Thank you!

My errors matched that of @ankaboutobruni .
See #525. Might need to put an arbitrary name in TRUSTED_DEVICE_NAME
Fixed it for me immediately.

Worked here too! Maybe a good idea to add to the documentation of the add-on?
@fuatakgun tagging you as I think you are the maintainer right?

@ankaboutobruni can you make this if you have availability? You can raise a PR and i can merge it

@ankaboutobruni can you make this if you have availability? You can raise a PR and i can merge it

did it, you can check and tell me if need to change anything !
Thanks for your work 👍


[send-and-read-emails] Double webhook events when connecting an account

Description

Refactored App.js, so it doesn't call handleTokenExchange() more than once

Moved updating of URL with userId to its own useEffect hook

Removed duplicate setUserId invocation

License
I confirm that this contribution is made under the terms of the MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Awesome! These changes need to be done for all other use cases as well, if you can create tickets for those. Also because they line numbers are changing here. We need tickets to adjust dashboard code snippets so that the line references still match after pulling in this new code with npm run generate.


Unsure bright sky tiles that fell through the cracks

We somehow lost track of several bright tiles marked unsure.  Most of these are due to bright skies and large sky residuals, though a few other reasons are noted.  We need to mark these as bad and reprocess them.  Affected tiles:

20662, 20220915/142569
20698, 20221207/156880 (there's also a later exposure that is not problematic and should be kept)
23014, 20221008/146763 (very slow?)
23329, 20220914/142436
23954, 20221106/152201, 152202, 152203 (bad guiding + missing cryostats leads to 4 missing petals)
24883, 20220914/142438
26167, 20220914/142437
@marcelo-alvarez , @akremin , would either of you be able to rerun these?  Thanks!

Can we try to clean these up?  Thanks!

I did the work for this last week, but NERSC has been completely unusable. It took 3+ hours to delete ~10 directories and submit ~40 jobs... something that should have taken a few minutes.
Needless to say many of the jobs timed out and I'd rather only do a cleanup sweep once since it requires some special care. I'm waiting for stability, which I had hoped would come after both computers were down for maintenance, but today doesn't appear to be any better.

Ugh, I didn't realize NERSC had been so bad lately, thanks.

I was treating these as a subset of some other cleanup work. It turns out that none of the tiles here had other non-flagged exposures on the nights in question, so the cleanup is actually done (the failing jobs were for other tiles unrelated to this issue).
I have flagged the above exposures as bad, removed the files from daily, rerun one set of tile redshifts from a later night for a flagged tile, and rerun the tsnr afterburner and nightqa for all the impacted nights.
Back to you @schlafly

I've cleared QA on these; closing.


Indexed geometry split in individual triangles when exporting as gltf

When I am exporting a very simple mesh with 32 triangles which are connected through indexed vertices in blender, it gets exported as 96 individual vertices in the resulting gltf.
using Blender 3.1.2

Vertices get split up so that they have unique attributes (normal, UV, etc.). Flat shading, sharp edges, UV seams, etc will cause this. See this question or this question. This is how glTF  works and can't be fixed.
Vertices also get split up if they are in tris with different materials, see this.

Hello,
This is the correct behavior, as normals are exported by default, and glTF stores normals by vertex.
You have an option to not export normals, to avoid splitting vertex/normals.

Ah, same answer at same time with scurest :)
Closing this ticket, as there is no bug here

But when I export it as ply it is fine

Hello, This is the correct behavior, as normals are exported by default, and glTF stores normals by vertex. You have an option to not export normals, to avoid splitting vertex/normals.

removing the normals worked


remove lint:terminal script across our packages

The list of npm scripts should be standardized and one of the scripts that is not in every package is lint:terminal. This PR removes it across our packages.

Please update the PR description with the motivation for this change so that anyone passing by has a clearer understanding of why we do what we do :)

Also, there are merge conflicts

@ramya-rao-a fixed!


cocoa pods podspec update for latest releases missing

Hey, is there any updates planned for cocoa pods?
latest is 6.15.3:
https://github.com/CocoaPods/Specs/blob/master/Specs/a/f/1/PromiseKit/6.15.3/PromiseKit.podspec.json
thx
Stefan

Fixed.


darwin refactor: attempt at stacked PR

This is an attempt at using GitHub’s limited stacked PR support to update all the follow up PRs to target staging from the darwin-sdk-refactor branch once https://github.com/NixOS/nixpkgs/pull/346043 is merged.
@emilazy

(It didn’t work. Oh well.)


New question mode

From Mike:
This would be a right way of having questions in a discussion board that individual participants and their comments into but don’t see any other participants comments until the teacher opens them up

This is the idea that a message board can be set up by the teacher to only allow students to see their own comments during the assignment time - then when the teacher decides they opens this up students so they can see others comments and give feedback or rate/score/mark others comments.
the students can in turn select to only see their comments or see all comments.
Likewise the discussion/question posts can be sorted by posting date of original comment or response date.


Run exec-if on custom module signal

It seems that when waybar is sent the configured signal, the custom module exec is run. If I understand correctly, I think exec-if should be called instead.
For example, my custom pacman module
"custom/pacman": {
        "format": "  {}",
        "interval": 86400,
        "exec": "checkupdates | wc -l",
        "exec-if": "checkupdates",
        "on-click": "termite --hold -e 'sudo pacman -Syu' ; pkill -SIGRTMIN+8 waybar",
        "signal": 8
}

only shows up if checkupdates returns any packages (otherwise checkupdates exits non-zero).
The way the signal is handled now, after performing the pacman upgrade (on-click) the module will sit there with a ‘0’ until it is due again, 24 hours in the worst case.

Hmm I got it wrong, sorry. Looking at custom.cpp, it shoud actually check exec-if after receiving an update signal, so in my case, it should hide the module after performing a pacman upgrade; but it doesn’t. Anyway, there’s a workaround for this specific use case:
"exec": "checkupdates | wc -l | grep -vx 0" will exit non-zero if there’s 0 packages and hide the module.

Are you able to debug this?
Check around this line why the return code is 0
https://github.com/Alexays/Waybar/blob/10b152ac3e28c59c2ec818c5b34351f620420e44/src/modules/custom.cpp#L29

I’m not sure how I woud go about debugging this. The return code should definitely be non-zero (2 actually), as is confirmed by the fact that restarting waybar immediately after the module is refreshed will properly hide the module. I also tried
"exec-if": "[ $(checkupdates | wc -l) -gt 0 ]" with the same result: after receiving the signal, the module is shown with the output   0. So somehow the hide() function does not work properly after the delayWorker thread is woken up.

Should be fixed with 3b16946c25cf3088b29336720b7afa0551e7598f
Can you test on master?


Go Back from Onboarding

This fixes the redirect that was happening after triggering onboarding and then bailing. I'm going to leave this open for now, because I'm not sure why it was changed.
Fixes #818

The case was if a user visits a protected route as their entry point to the site. This case is now handled by checking the amount of routes visited prior to hitting the protected route, and redirecting to "/" if necessary.


feat: progress messages

Current dependencies on/for this PR:

2023-06-22-wait-for-runtime

PR #20   👈

This comment was auto-generated by Graphite.


Hidden features in SwiGLUFFNFused

Hi, I'm curious as to why the number of hidden features is modified as such in the fused swiglu ffn here: https://github.com/facebookresearch/dinov2/blob/c3c2683a13cde94d4d99f523cf4170384b00c34c/dinov2/layers/swiglu_ffn.py#L57
when trying to make ViT-B (mlp ratio 4) this results in:
(mlp): SwiGLUFFNFused(
    (w12): Linear(in_features=768, out_features=4096, bias=True)
    (w3): Linear(in_features=2048, out_features=768, bias=True)
)

which seems like an mlp ratio of 2.67
whereas the pytorch swiglu ffn class gives the expected mlp ratio of 4:
(mlp): SwiGLUFFN(
    (w12): Linear(in_features=768, out_features=6144, bias=True)
    (w3): Linear(in_features=3072, out_features=768, bias=True)
)

realizing now that modifying feature size in fused swiglu might be to achieve the same amount of params as a standard ViT with non-swiglu ffn. i.e.:
swiglu mlp ffn params  = 768 * 4096 + 2048 * 768 = 4,718,592
regular mlp ffn params = 768 * 3072 + 3072 * 768 = 4,718,592

Thanks Adam


How long does it take to enable Anonymous one drive? Its been spinning for 10 minutes

I am enabling it per the article, but it keeps spinning. Can someone add a note to the article on how long it usually takes to enable on an existing tenant?

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

ID: 40a570bb-2567-565c-e9ff-bf1ccbf38d0e
Version Independent ID: 3d342dea-9dd3-008c-20c6-902452302e95
Content: Manage sharing in OneDrive and SharePoint
Content Source: OneDrive/manage-sharing.md
Service: one-drive
GitHub Login: @kaarins
Microsoft Alias: kaarins

Anonymous External sharing needs to be enabled in SPO Admin and then in One Drive, otherwise it spins forever. If disabled in SPO Admin, it is disabled in One Drive.

@eschrader Thank you for this feedback
I agree these two details need to be in the article.
I was able to get this into the backlog for the SharePoint team. The team will get this prioritized into a sprint plan. Thank you for reporting and making the docs better. Much appreciated.
I made a note to request the team to update this when the work is complete.

Hi @eschrader , thank you for your feedback.
I think there is a line in the article about this:
"The external sharing setting for SharePoint can be more permissive than what you allow in OneDrive, but not less permissive. If you turn off external sharing for SharePoint in your organization, you can't turn it on for OneDrive."
Are you agree?


more generic repeat annotation retrieval

My current best and quickest solution for retrieval of repeat annotations is to make the RepeatMasker download link configurable via the config.yaml. However, this has several restrictions:

It only works for the species and genome builds available on the Repeatmasker website, either through the species tree view or the species list view.
It easily gets out of sync with the Ensembl reference species, build and release. These are also specified in the config.yaml file, right before the link spec. But who reads through those things in detail...

However, the download links for RepeatMasker do not seem systematic, with species names sometimes abbreviated (mm for mus musculus, hg for homo sapiens) and sometimes not (for example bosTau) and with only certain species available for certain releases of RepeatMasker and DFAM. So a somewhat systematic download rule with only meta-information provided in the config.yaml (and partly drawin on the Ensembl reference definitions) will not work.
An alternative would be to have a little RepeatMasker workflow with rules that:

Download a specified version (for example 3.7) of the necessary DFAM transposable element specification (for example the Dfam_curatedonly.h5.gz.
Run RepeatMasker on the workflow's Ensembl reference genome using this DFAM resource and generates the species.fa.out.gz files.

However, this seems like slightly excessive downloads and work, especially if one does not want to restrict the annotation to the curated set (the full dfam.h5.gz of version 3.7 is almost 90 GB) and would probably warrant something like a snakemake meta-wrapper. So I'll leave this as possible future work, if this workflow really gets applied more often and on non-standard species.

The current "best solution" is in:
https://github.com/snakemake-workflows/cyrcular-calling/pull/8/commits/4c441639cb50cd12f1fcf99354e126c0045c094c


Error in riva ASR

I'm trying to run the llamaspeak (https://www.jetson-ai-lab.com/tutorial_llamaspeak.html) example with the following:
python3 nano_llm/agents/web_chat.py  \
    --api=mlc \
    --model=princeton-nlp/Sheared-LLaMA-2.7B-ShareGPT \
    --asr=riva \
    --tts=piper

Everything seems to be working, but I get this odd error as soon as the server starts:
19:24:58 | INFO | mounting webserver path /tmp/uploads to /uploads
19:24:58 | INFO | starting webserver @ https://<IP_ADDRESS>:8050
19:24:58 | SUCCESS | WebChat - system ready
Exception in thread  * Serving Flask app 'nano_llm.web.server'
 * Debug mode: on
Thread-5:
Traceback (most recent call last):
  File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "/app/nano_llm/plugins/audio/riva_asr.py", line 81, in run
    self.generate(self.audio_queue)
  File "/app/nano_llm/plugins/audio/riva_asr.py", line 97, in generate
    for response in responses:
  File "/usr/local/lib/python3.10/dist-packages/riva/client/asr.py", line 338, in streaming_response_generator
    for response in self.stub.StreamingRecognize(generator, metadata=self.auth.get_auth_metadata()):
  File "/usr/local/lib/python3.10/dist-packages/grpc/_channel.py", line 543, in __next__
    return self._next()
  File "/usr/local/lib/python3.10/dist-packages/grpc/_channel.py", line 952, in _next
    raise self
grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
        status = StatusCode.UNAVAILABLE
        details = "failed to connect to all addresses; last error: UNKNOWN: ipv4:<IP_ADDRESS>:50051: Failed to connect to remote host: Connection refused"
        debug_error_string = "UNKNOWN:Error received from peer  {created_time:"2024-05-24T19:24:58.586234123+00:00", grpc_status:14, grpc_message:"failed to connect to all addresses; last error: UNKNOWN: ipv4:<IP_ADDRESS>:50051: Failed to connect to remote host: Connection refused"}"
>
19:24:58 | INFO | WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on all addresses (<IP_ADDRESS>)
 * Running on https://<IP_ADDRESS>:8050
 * Running on https://<IP_ADDRESS>:8050
19:24:58 | INFO | Press CTRL+C to quit
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET / HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/bootstrap.css HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/chat.css HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/jquery-3.6.3.min.js HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/bootstrap.bundle.min.js HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/websocket.js HTTP/1.1" 200 -
19:25:21 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:21] "GET /static/audio.js HTTP/1.1" 200 -
19:25:22 | INFO | connection open
19:25:22 | INFO | new websocket connection from ('<IP_ADDRESS>', 50374)
19:25:22 | INFO | listening on websocket connection from ('<IP_ADDRESS>', 50374)
19:25:22 | INFO | <IP_ADDRESS> - - [24/May/2024 19:25:22] "GET /static/audioWorkers.js HTTP/1.1" 200 -
19:25:33 | INFO | websocket connection with ('<IP_ADDRESS>', 50374) was closed

Actually I see now Riva 2.15.1 is out from a couple days ago...will have to try upgrading

@dusty-nv Good to know, thanks! It probably would have helped if I fully RTFM'd :) Please let me know if you get Riva working on the Orin Nano, as I'd love to have the full pipeline running there.


finished altCheckout rows

Preview of what it looks like

Looks great! This is kinda weird but on a slightly lower-contrast color setting on my display, it shows the white and gray colors to be the same color. It's very specific so i doubt this would be a problem w the pantry computers, but maybe it would be good to check?

oh weird haha i will check!


Share Issues from NetNewsWire v Browser

Can't find anything in here about this issue - so thought I would ask ...
If I share an article to Drafts (or anywhere else for that matter), from NetNewswire, something like this appears in my draft
https://web3isgoinggreat.com/single/2022-02-25-0
If I first open the item in the browser … the full info, created in Markdown appears in my draft, like this.
Nelson Mandela’s paintings from prison to be sold as NFTs – Web3 Is Going Just Great
Is there a way that I can get the full Markdown direct from the feed rather than needing to go to the browser first?

I haven't used Drafts before. Is it converting the HTML into Markdown for you or something?

Are you trying to do this on iOS or macOS?

I haven't used Drafts before. Is it converting the HTML into Markdown for you or something?

Drafts is just a txt notes app .. say like apple notes
When I share a NetNewsWire article to drafts directly it simply posts the link of that site
Ie just the ‘url’
That same share to a browser opens up that URL … then when I share that link to drafts it sends a markdown link like for example
human readable description
Does that help?

Are you trying to do this on iOS or macOS?

It happens in iOS and MacOS

I haven't used Drafts before. Is it converting the HTML into Markdown for you or something?

Drafts is just a txt notes app .. say like apple notes
When I share a NetNewsWire article to drafts directly it simply posts the link of that site
Ie just the ‘url’
That same share to a browser opens up that URL … then when I share that link to drafts it sends a markdown link like for example
human readable description
Does that help?

Just realized the git is automatically translating the markdown .. which reads
// human readable description

We currently are only sharing the URL of the article. If you want a markdown version of the article, I would recommend you try to use Shortcuts to create a Share Shortcut that generates the HTML and imports it into Drafts (assuming Drafts supports Shortcuts).

thankyou


Prepare for node -> node2 transition

Since the legacy node debug protocol is on its way out, we need to continue preparing a seamless transition to the inspector debug protocol.
Status:

node --debug will print a deprecation message, probably in some 7.x release - https://github.com/nodejs/node/pull/10970
In Node 8, sending a SIGUSR1 signal to a node process will switch it into debug mode using the inspector debug protocol - https://github.com/nodejs/node/issues/8464
The legacy protocol is completely removed in V8 5.8 - https://github.com/nodejs/node/issues/9789
It's not clear whether Node 8, released in probably April, will have V8 5.7 or 5.8. Seems likely that it will be 5.7 but we should be ready regardless - https://github.com/nodejs/node/issues/10117

Possible February plan:

Option 1:

Wrap node and node2 in a single debug adapter. It checks the node version to be launched or attached to, and delegates to the proper debug adapter, using node2 when possible.
It also registers 'node_legacy' to force the legacy debug adapter

Option 2:

Change 'node' to detect the node version and warn the user to change the type to node2 if it's after 8
Then at some point in the future, rename node2 to node

It would be good to have a seamless experience like in option 1 - a user doesn't care which debug protocol they use. That should be our job, if possible. There are some issues to deal with though.

When runtimeExecutable is specified, we will have to leave it up to the user. We can't always figure out its node version. It might be a script or something that isn't node. It might be electron, which ships a version of node 6.5 that doesn't include --inspect. We can probably figure out what this failure looks like, and give a helpful warning.
When attaching, we should be able to figure out which protocol it's using. One easy difference is that under the inspector protocol, we can make an http request to http://localhost:port.

Other things to do:

Remove the 'experimental' tag on node2
Implement attaching to a running process using node2 - https://github.com/Microsoft/vscode-node-debug2/issues/15
Localize node2 (strings already go through a dummy localize function, just need to actually hook it up to nls and get translations) - https://github.com/Microsoft/vscode-node-debug2/issues/83

FYI @weinand @joshgav

Wrapping both adapters into one "smart adapter" has the problem that all feature negotiation between the frontend and the debug adapter (DA) happens before the adapter knows what Node.js version is being used. It's difficult for the combined DA to return the correct capabilities if it doesn't know whether it will turn into 'node' or 'node2' when it eventually attaches to Node.js.
For this reason I propose that we fold both adapters into a single extension in a "semi-smart way":

we only have a single debug type node (and consequently only a single type of launch configuration attributes). So the user never has the choice between two different debug types or debug environments. This applies to snippets and variables as well: there is only a single version of them.

the node-debug extension contains the two DAs and we use the new 1.9.0 adapterExecutableCommand feature to determine dynamically what adapter gets launched. The strategy to determine which adapter to use works like this:

if the launch config specifies a new attribute (name TBD but may be protocol and values CDP and legacy) we use the corresponding debug adapter.
if nothing is specified we determine the version of the currently installed Node.js  and use the CDP-DA for version >= 6.5 (or whatever).

This approach is 'semi-smart' because we are determining the DA early and not when doing the 'attach'. That means our approach might fail in situations where we debug Node.js remotely and the local node version does not match the remote version. On the other hand this approach does not require a forwarding DA with delayed handling of feature negotiation and is most likely more robust.

Since this transitions is non-trivial and involves many details, I suggest that we do not rush this through in a single milestone but plan for a staged, two milestone approach.
I propose the following steps:

Since the approach is based on the assumption that we can use launch configurations for both DAs interchangeably (because there will be only a single JSON schema), we should verify this and fix issues as far as possible. If some attribute differences remain (and are not resolvable), we will make this information available in the hover-help information for the attribute.

we enhance both adapters to have good error reporting for the case that the DA is used against a wrong node version (because the user will have to change his launch configuration in this case).

we add the node2-DA to the node-debug extension either by:

moving the source from the vscode-node-cdp-debug repo into the vscode-node-debug repo
keeping both repos but enhancing the package build step in vscode-node-debug to copy the node2-DA resources into the vsix package (my preferred solution).

we write the code in the extension.ts that determines what adapter to use. If we have confidence that users will not experience issues if they are automatically upgraded to the node2-DA, we can enable this code. Otherwise we can continue to use 'node' by default let the user decide when to upgrade via the protocol attribute.

/cc @isidorn @egamma @kieferrm

It just occurred to me, that we could use the approach from above even if we keep both debug extensions, but just remove (comment out) the "debuggers" contribution from 'node-debug2'.
With this 'node2' will not appear anywhere in the UI but the code that determines what adapter to launch can still access the adapter in the node2 extension.

That's a good idea. I don't think there will be a problem with the launch configs being compatible. You made me think of another problem with having one debugger type for the two adapters, which is that static differences like the callstack context menu contribution will appear for both, but do nothing for 'node', unless we add a way to hide it.
I think adapterExecutableCommand doesn't get the launch config right now, so we can change that and use it like you said. But I don't think attach mode is a problem because we can detect whether the remote end is using the new protocol by making an http request to the address and port.
Maybe an intermediate step for February could be to deprecate "type": "node2" telling people to use protocol, and implement protocol with the values legacy, v8-inspector, or auto, and we only do the autodetect logic if people opt-in to it. Then we have plenty of time to shake out any issues before springing this on everyone's 'node' launch configs.

Or we could do the autodetect logic in startSessionCommand instead of adaterExecutableCommand, and it could set the type to 'node' or 'node2', which would then invoke the proper debug adapter.

@roblourens

One easy difference is that under the inspector protocol, we can make an http request to http://localhost:port.

You might also query http://localhost:9229/json/version, which returns a JSON object with Browser and Protocol-Version properties (see https://github.com/nodejs/node/blob/81d15594d7cd08be1990ad6341a3491a34e20d63/src/inspector_socket_server.cc#L114-L119).
Output on my system:
{
  "Browser": "node.js/v7.4.0",
  "Protocol-Version": "1.1"
}

@roblourens I've added support for a 'protocol' attribute. If 'protocol == auto' I'm probing for the node version by running node --version and use node2for versions >= 6.5.
To simplify alignment of required attributes, I've made the cwd attribute optional and I'm supplying a value in the startSessionCommand. I've removed the cwdfrom all snippets and initial configurations.

@roblourens probably the most valuable addition to the version probing would be for the case 'request' === 'attach': in this case you know the port and can do the approach @joshgav mentioned above.
This would have solved the problem I was running into when using the "Attach to Extension Host"  launch config of VS Code. It was using 'node2' which didn't worked because the EH uses the Electron node which does not support the '--inspect' option.

Agree, I'll work on that

Done. I changed the minimum version for node2 to 6.9 because it crashed a lot on windows before that, and there was some flakiness on other platforms too.
I didn't do anything different with the 'runtimeExecutable' case because checking the version of node on the path is probably the best thing to do most of the time. Maybe we should log a message when the node version is inferred though. I'll open an issue for it.

@roblourens great, thanks!
I noticed that you do the checkAttach() even if the user has set config.protocol to legacy or v8-inspector. Is the plan that you want to report an error if the user's choice is in conflict with the result of your probing? If not then I suggest to do the checkAttach() only in the auto case.

I actually only do it if !config.protocol. But I need to also do it when protocol is auto...

Indeed, so your checkAttach() is just the alternative for attach in the default/auto case of the switch.

The attach probing is tricky...
If I start node v6.5 with this:
node --inspect --debug-brk server.js

attach will not work because the probing code sees a version < 6.9 and decides that 'v8-inspector' is not supported. But the 'legacy' DA doesn't work either, because debugging was not enabled for the legacy protocol (due to the '--inspect' flag). So there is no fallback at all.
I think we'll have to use the 'v8-inspector' whenever the 9229 port returns a valid json (independent from the version).
But if nothing is returned from that port, we can assume that either node does not support the new protocol at all, or it was not started with the '--inspect' flag. But attaching with 'legacy' and the same port (9229) would not work either because node is most likely to listen on 5858 instead. But changing the port number automagically doesn't sound right.
Maybe we should use a port '5858' as an indication for 'legacy' and '9229' for 'v8-inspector'. And only for all other values we would do the probing.

Oh yeah, that's a good point - for attach we need to support any node version with the v8-inspector protocol. That's not a problem.
I've seen people use 5858 for debugging with node2, so I don't want to make any assumptions based on the port number. It seems seems fine as-is to check whatever port they specify for a v8-inspector server.

I just pushed a change to rename "v8-inspector" to "inspector", to ensure it's a runtime-independent name.

I've created these two items: https://github.com/Microsoft/vscode-node-debug2/issues/87 and https://github.com/Microsoft/vscode-node-debug2/issues/88

Also filed https://github.com/Microsoft/vscode-node-debug/issues/130 on myself to continue investigating.

Everything planned for this milestone has been done.


UNION across multiple aggregates fails with SQL Error [XX000]: ERROR: Cannot cast value x to type y

CrateDB version
5.2.2
CrateDB setup information
No response
Problem description
When union multiple selections (i.e. > 2) the query fails as there seems to be a mixup between the attributes that should be combined
logical plan:
GroupHashAggregate[dt, value, l, a]
  └ Union[a, l, value, dt]
    ├ GroupHashAggregate[dt, value, l, a]
    │  └ Union[l, dt, value, a]
    │    ├ Eval[l, cast(ts AS date) AS dt, avg(v) AS value, a]
    │    │  └ GroupHashAggregate[cast(ts AS date) AS dt, l, a | avg(v)]
    │    │    └ Rename[l, ts, a, v] AS doc.tu01v
    │    │      └ Collect[doc.tu01 | [o['l'] AS l, cast(o['ts'] AS timestamp without time zone) AS ts, o['a'] AS a, o['v'] AS v] | (o['t'] = 't')]
    │    └ Eval[l, cast(ts AS date) AS dt, avg(v) AS value, a]
    │      └ GroupHashAggregate[cast(ts AS date) AS dt, l, a | avg(v)]
    │        └ Rename[l, ts, a, v] AS doc.tu01v
    │          └ Collect[doc.tu01 | [o['l'] AS l, cast(o['ts'] AS timestamp without time zone) AS ts, o['a'] AS a, o['v'] AS v] | (o['t'] = 't2')]
    └ Eval[a, l, avg(v) AS value, cast(ts AS date) AS dt]
      └ GroupHashAggregate[cast(ts AS date) AS dt, l, a | avg(v)]
        └ Rename[l, ts, a, v] AS doc.tu01v
          └ Collect[doc.tu01 | [o['l'] AS l, cast(o['ts'] AS timestamp without time zone) AS ts, o['a'] AS a, o['v'] AS v] | (o['t'] = 't3')]

Steps to Reproduce
create table tu01 (
	"o" OBJECT(STRICT) AS (
		a text,
	 	l text,
	 	ts BIGINT,
	 	t text,
	 	v integer
	 )
)

insert into tu01 (o) values ({a='a',l='l',ts=now()::bigint,t='t',v=5});
insert into tu01 (o) values ({a='a',l='l',ts=now()::bigint,t='t2',v=5});
insert into tu01 (o) values ({a='a',l='l',ts=now()::bigint,t='t3',v=5});

create or replace view tu01v as
select o['l'] as l, o['ts']::timestamp ts,  o['a'] as a,  o['v'] as v, o['t'] as t
from tu01;

select
	ts::date dt,
	avg(v) as value,
	l,
	a
from tu01v
where t='t'
group by 1,3,4
union
select
	ts::date dt,
	avg(v) as value,
	l,
	a
from tu01v
where t='t2'
group by 1,3,4
union
select
	ts::date dt,
	avg(v) as value,
	l,
	a
from tu01v
where t='t3'
group by 1,3,4

Actual Result
SQL Error [XX000]: ERROR: Cannot cast value `l` to type `date`

Expected Result
union of the 3 selects

Thx for reporting this issue! The fix will be included in the next hotfix release.


minScale bound not work correctly when zoom out with ctrl

When setting minScale for TransformWrapper and trying to zoom out using ctrl button + mouse wheel unexpected behaviour happen (zoom out more than set value and go back to minScale).
Steps to reproduce the behaviour:

Implement Transform Wrapper with minScale value set
Try to zoom out using ctrl + mouse

Expected behaviour
elements are not zoom out more than set minScale value as it works e.g while using cmd + wheel
https://github.com/BetterTyped/react-zoom-pan-pinch/assets/27008721/e7ab8eb4-f698-4884-a7c4-10ed46fe8ed5

Hi @AnnaLysiuk ,
I'm facing this issue as well on my project. I solved the problem by disabling the zoomAnimation
<TransformWrapper
  zoomAnimation={{ disabled: true }}
  minScale={0.1}
  limitToBounds={false}
  // ...other props
/>

Hi,
Thanks for a tip. Indeed it is fixing the issue. What are the consequences
of disabling the animation, what animation would not work? I do not see any
changes in my app performance but still not sure if I see it all.
Best regards,
pon., 22 sty 2024 o 15:52 Azhar Ali Fauzi @.***>
napisał(a):

Hi @AnnaLysiuk https://github.com/AnnaLysiuk ,
I'm facing this issue as well on my project. I solved the problem by
disabling the zoomAnimation
<TransformWrapper
zoomAnimation={{ disabled: true }}
minScale={0.1}
limitToBounds={false}
// ...other props/>
—
Reply to this email directly, view it on GitHub
https://github.com/BetterTyped/react-zoom-pan-pinch/issues/438#issuecomment-1904169005,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGOB5UKVI3WQC3DN3PJDZR3YPZ4KRAVCNFSM6AAAAAA7V2W4ZCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBUGE3DSMBQGU
.
You are receiving this because you were mentioned.Message ID:
@.***>


初步实现Enemy类

Nice Job

Thank you for you meticulous work, they are absolutely stunning
You don't have to create the pull request this fast, as you could make several checks and file management before you upload them
I'll keep an eye on your work through your github fork repo

Note :
⚒ 请不要把IDEA的缓存和配置文件上传，以及不需要上传之前，其他的python class文件放在NormalMode目录下即可


"FastChat not installed" issue on /v1/chat/completion call in nvcr.io/nvidia/pytorch:22.12-py3 container.

An interesting one.
I can run python -m vllm.entrypoints.openai.api_server --model facebook/opt-125m without issue, and /completion calls work fine.
However, when I make a /chat/completion call, I receive the following:
INFO:     ::1:38566 - "POST /v1/chat/completions HTTP/1.1" 500 Internal Server Error ERROR:    Exception in ASGI application Traceback (most recent call last):   File "/usr/local/lib/python3.8/dist-packages/uvicorn/protocols/http/h11_impl.py", line 408, in run_asgi     result = await app(  # type: ignore[func-returns-value]   File "/usr/local/lib/python3.8/dist-packages/uvicorn/middleware/proxy_headers.py", line 84, in __call__     return await self.app(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/fastapi/applications.py", line 289, in __call__     await super().__call__(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/applications.py", line 122, in __call__     await self.middleware_stack(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/middleware/errors.py", line 184, in __call__     raise exc   File "/usr/local/lib/python3.8/dist-packages/starlette/middleware/errors.py", line 162, in __call__     await self.app(scope, receive, _send)   File "/usr/local/lib/python3.8/dist-packages/starlette/middleware/cors.py", line 83, in __call__     await self.app(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/middleware/exceptions.py", line 79, in __call__     raise exc   File "/usr/local/lib/python3.8/dist-packages/starlette/middleware/exceptions.py", line 68, in __call__     await self.app(scope, receive, sender)   File "/usr/local/lib/python3.8/dist-packages/fastapi/middleware/asyncexitstack.py", line 20, in __call__     raise e   File "/usr/local/lib/python3.8/dist-packages/fastapi/middleware/asyncexitstack.py", line 17, in __call__     await self.app(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/routing.py", line 718, in __call__     await route.handle(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/routing.py", line 276, in handle     await self.app(scope, receive, send)   File "/usr/local/lib/python3.8/dist-packages/starlette/routing.py", line 66, in app     response = await func(request)   File "/usr/local/lib/python3.8/dist-packages/fastapi/routing.py", line 273, in app     raw_response = await run_endpoint_function(   File "/usr/local/lib/python3.8/dist-packages/fastapi/routing.py", line 190, in run_endpoint_function     return await dependant.call(**values)   File "/root/vllm/vllm/entrypoints/openai/api_server.py", line 203, in create_chat_completion     prompt = await get_gen_prompt(request)   File "/root/vllm/vllm/entrypoints/openai/api_server.py", line 73, in get_gen_prompt     raise ModuleNotFoundError( ModuleNotFoundError: fastchat is not installed. Please install fastchat to use the chat completion and conversation APIs: '$ pip install fschat'
pip show fschat returns:
Name: fschat Version: 0.2.24 Summary: An open platform for training, serving, and evaluating large language model based chatbots. Home-page: Author: Author-email: License: Location: /usr/local/lib/python3.8/dist-packages Requires: fastapi, httpx, markdown2, nh3, numpy, prompt-toolkit, pydantic, requests, rich, shortuuid, tiktoken, uvicorn Required-by:
transformers version is also 4.32.0.

Try downgrading fastchat:
pip install fschat==0.2.23
However, this may raise another issue. I am getting tokenizer error..

Sadly, no dice. I receive the same error following a downgrade of fschat.
To confirm the downgrade:
root@localhost:~/vllm# pip show fschat
Name: fschat
Version: 0.2.23
Summary: An open platform for training, serving, and evaluating large language model based chatbots.
Home-page:
Author:
Author-email:
License:
Location: /usr/local/lib/python3.8/dist-packages
Requires: accelerate, einops, fastapi, gradio, httpx, markdown2, nh3, numpy, peft, prompt-toolkit, pydantic, requests, rich, sentencepiece, shortuuid, tiktoken, tokenizers, torch, transformers, uvicorn, wandb
Required-by:

Pip uninstall transformer-engine
Solve my problem

transformer-engine is not installed. Should it be?

Update: this issue was resolved following a clean install of the Ubuntu 22.04 image from docker hub.
It did end up requiring fschat==0.2.23. Any higher threw the same error.
Here is what I run to get start the container and get it to a state where it can run on multiple GPUs. Working fine for everything but the /v1/chat/completion call:
podman run --interactive --tty --network=host --name test_llm --shm-size 10.24g --device nvidia.com/gpu=all ubuntu
apt-get update
apt-get install wget nano python3 python3-pip git
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
dpkg -i cuda-keyring_1.1-1_all.deb
apt-get update
apt-get install cuda-11-8
pip3 install vllm
pip3 uninstall torch
pip3 install pandas ray fschat
pip3 install fschat==0.2.23
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

Then running the API server commands with tensor-parallel-size 4 appears to work nicely.

I ran into this issue (regular python install), I just tried to pip install accelerate and it solved it

The error is getting raised from here https://github.com/vllm-project/vllm/blob/main/vllm/entrypoints/openai/api_server.py#L74
        raise ModuleNotFoundError(
            "fastchat is not installed. Please install fastchat to use "
            "the chat completion and conversation APIs: `$ pip install fschat`"
        )

Which comes from
    import fastchat
    from fastchat.conversation import Conversation, SeparatorStyle
    from fastchat.model.model_adapter import get_conversation_template
    _fastchat_available = True
except ImportError:
    _fastchat_available = False

So I recommend trying to import these lines in your python shell and fixing things from there. In my case the imports went through accelerate and errored on import transformer_engine_extensions as tex. Uninstalling transformer-engine as suggested above solved the issue for me (I am using fschat==0.2.23 and accelerate==0.23.0).

I ran into this issue (regular python install), I just tried to pip install accelerate and it solved it

I met the same issue and this solution works perfectly for me

I ran into this issue (regular python install), I just tried to pip install accelerate and it solved it

That helped! Thank you :)


SB Pipe Add buildspec.yml

Closed by my PR https://github.com/aws-samples/simple-file-manager-for-amazon-efs/pull/137


Add Windows XP Compatible Pdfium.DLL support inside same project

Hello,
It would be fine to have the support for pdfium.dll libraries x64/x86 for both modern Windows and XP in the same PdfiumViewer assembly, I mean, in the NativeMethods.cs class, add some code to load the correct version of the 4 DLL according the architecture (x64/x86) and operating system version. So you put the two extra DLL in a WindowsXPFolder/x86 and WindowsXPFolder/x64, and the other two in x86 and x64 like now. In the method private static bool TryLoadNativeLibrary(string path) you intercept the XP OS and add the extra WindowsXPFolder folder to the final path.
What do you think ?

The problem is that the Windows XP version isn't really supported. It's build from an old source version which has known issues. The reason there is a non-XP compatible version at all is because it seems that the current build system doesn't support Windows XP at all.
However, I may be wrong. One problem is that I'm not really a hero at building Pdfium, and building Pdfium is far from trivial. If someone could have a look at the build script and write instructions on how to build a Windows XP compatible version from this, that would be terrific and I would love to get a Windows XP compatible DLL back in.

Ok, didn't know that XP DLLs were older version. In this case, I agree, it's better to not support XP at all.
Thanks

I've taken another stab at building Pdfium and took a different approach. In the new-native-dll's branch, there are new x86 and x64 versions of the Pdfium DLL's.
These work without issues on Windows 10. Is it possible for you to check whether these work on Windows XP?

There we go. Someone else helped me out with a Window XP installation and after a few changes, we now have updated Windows XP compatible DLL's. See https://github.com/pvginkel/PdfiumViewer/tree/master/Libraries/Pdfium for more information.
To use these, just replace the default ones in your project.

Thank you! I've tested it on Windows XP x86 and Windows 10 x64 and I can confirm that it works fine.


Exposing tidy3d source bandwidth through gplugins

Feature request
tidy3d allows for a broadband Gaussian pulse source, set as described here:
https://docs.flexcompute.com/projects/tidy3d/en/latest/faq.html#what-source-bandwidth-should-i-use-for-my-simulation
and built as shown in their code:
https://github.com/flexcompute/tidy3d/blob/f60bf47f84264bc622e548fa41dfc344fb85ceaf/tidy3d/plugins/smatrix/smatrix.py#L231C4-L231C4
While gplugins/tidy3d write_sparameters have a 'bandwidth' parameter, it seems to me is only used to establish the frequency limits of S-parameter calculation, but the source time / frequency width is not set by gplugins.
Wanted solution
If I am not mistaken above, is it sensitive to expose the fwidth parameter through gplugins?

the plugin used the tidy3d componentmodeler for sparameter calculation, which automatically sets the source bandwidth as per the code that you linked. if you need more flexibility, you can use the tidy3d component‘s get_simulation method directly, which gives you a plain tidy3d simulation object that you can modify as needed.
what exactly is the functionality that you are missing?

Thanks both for your kind replies. I am a bit puzzled with some results related to bandwidth and pulse duration for a simple straight waveguide discussed in #268 . I thought having the source bandwidth not automatically set could help understand what's going on. I will post my other findings (or mistakes) there in.

Hi Pascual,
i think we expose all tidy3d.Simulation args in the plugin
https://gdsfactory.github.io/gplugins/_autosummary/gplugins.tidy3d.write_sparameters.html#gplugins.tidy3d.write_sparameters
@yaugenst @tylerflex @heitzmann @momchil-flex

Hi Joaquín,
I've gone through the list of exposed parameters, I also had a look at the very detailed examples you give in:
https://gdsfactory.github.io/gplugins/notebooks/tidy3d_00_tidy3d.html?highlight=componentmodeler
I still wonder how one can specify a CW source to tidy3D through gplugins resorting to ContinuousWave function. Apparently that is possible in tidy3D but I can't find more documentation than:
https://docs.flexcompute.com/projects/tidy3d/en/v1.5.0/_autosummary/tidy3d.ModeSource.html?highlight=continuouswave
What do you think?
Best.

To chime in, it's highly unlikely that you actually need a CW source, unless you're doing nonlinear photonics and really need to control the total power in the simulation (make sure it's at a single frequency). I think in tidy3d we only enabled ContinuousWave source only when we introduced nonlinear materials. Using a CW source also means that the in-built normalization will not work since the fields do not decay by the end of the simulation, and manual normalization will be needed.
Typically sources in FDTD can be pretty broadband, and the source bandwidth should have no noticeable effect on the results, as long as the entire spectrum of interest is covered by the source. If the fields decay by the end of the simulation, the frequency-domain fields recorded via the Fourier trasnfrom of the time-domain ones are actually mathematically equivalent to an actual frequency-domain solve (or a CW source with proper normalization).

Hi Pascual,
I think there is some confusion here. What the gplugins tidy3d plugin does is it provides a base class (called the Tidy3DComponent defined here) that knows how to assemble a tidy3d structure from a gdsfactory component and layerstack. This class also exposes two methods, get_simulation()  (defined here) and get_component_modeler() (defined here), where the get_simulation() method assembles individual tidy3d simulations from a particular geometry and returns a regular tidy3d simulation object and get_component_modeler() assembles a regular tidy3d component modeler from such a simulation object. The sources and monitors are added by the component modeler automatically as defined by the ports. What our plugin does is essentially provide all the geometrical information about the layerstack, the component, and the ports to those two functions.
However, at each step of this process, you can pass arbitrary keyword arguments, which are passed directly to the corresponding tidy3d functions, so there is no loss of generality there.
The write_sparameters() function is just a convenience wrapper around those aforementioned methods, which gathers those steps into a single function with some optional plotting, caching, and sparameter extraction sprinkled in, but it's not really necessary. You can directly call the Tidy3DComponent's get_component_modeler() method to get a normal tidy3d component modeler, which works exactly as described in the tidy3d documentation here.
With the write_sparameters() function you indeed lose out on some flexibility, so if you need more control over your simulations, then I would advise to use the get_simulation() or get_component_modeler() methods directly.
Sorry that this is not very well documented, we are working on it!

To chime in, it's highly unlikely that you actually need a CW source, unless you're doing nonlinear photonics and really need to control the total power in the simulation (make sure it's at a single frequency). I think in tidy3d we only enabled ContinuousWave source only when we introduced nonlinear materials. Using a CW source also means that the in-built normalization will not work since the fields do not decay by the end of the simulation, and manual normalization will be needed.
Typically sources in FDTD can be pretty broadband, and the source bandwidth should have no noticeable effect on the results, as long as the entire spectrum of interest is covered by the source. If the fields decay by the end of the simulation, the frequency-domain fields recorded via the Fourier trasnfrom of the time-domain ones are actually mathematically equivalent to an actual frequency-domain solve (or a CW source with proper normalization).

Thanks for the advice.

Hi Pascual,
I think there is some confusion here. What the gplugins tidy3d plugin does is it provides a base class (called the Tidy3DComponent defined here) that knows how to assemble a tidy3d structure from a gdsfactory component and layerstack. This class also exposes two methods, get_simulation() (defined here) and get_component_modeler() (defined here), where the get_simulation() method assembles individual tidy3d simulations from a particular geometry and returns a regular tidy3d simulation object and get_component_modeler() assembles a regular tidy3d component modeler from such a simulation object. The sources and monitors are added by the component modeler automatically as defined by the ports. What our plugin does is essentially provide all the geometrical information about the layerstack, the component, and the ports to those two functions. However, at each step of this process, you can pass arbitrary keyword arguments, which are passed directly to the corresponding tidy3d functions, so there is no loss of generality there.
The write_sparameters() function is just a convenience wrapper around those aforementioned methods, which gathers those steps into a single function with some optional plotting, caching, and sparameter extraction sprinkled in, but it's not really necessary. You can directly call the Tidy3DComponent's get_component_modeler() method to get a normal tidy3d component modeler, which works exactly as described in the tidy3d documentation here.
With the write_sparameters() function you indeed lose out on some flexibility, so if you need more control over your simulations, then I would advise to use the get_simulation() or get_component_modeler() methods directly. Sorry that this is not very well documented, we are working on it!

Many tnanks for the detailed overview, that certainly helps much!


OAuth2::ConnectionError, Failed to open TCP connection to oauth2.googleapis.com:443 (execution expired)

I'm not sure if I ran into an edge case but what I'm currently doing is running rodauth-rails and rodauth-omniauth in app.lvh.me:3000 (on the app subdomain)
However, when I try to login via Google Oauth, it freezes at the login page, and the server logs shows this.
Started POST "/auth/google" for <IP_ADDRESS> at 2024-10-02 00:44:34 +0800
D, [2024-10-02T00:44:34.575655 #44869] DEBUG -- omniauth: (google) Setup endpoint detected, running now.
D, [2024-10-02T00:44:34.575712 #44869] DEBUG -- omniauth: (google) Request phase initiated.
Started GET "/auth/google/callback?state=xxx&code=4%2xxx-xxx&scope=email+profile+openid+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&authuser=0&prompt=consent" for <IP_ADDRESS> at 2024-10-02 00:44:39 +0800
D, [2024-10-02T00:44:39.057402 #44869] DEBUG -- omniauth: (google) Setup endpoint detected, running now.
D, [2024-10-02T00:44:39.057472 #44869] DEBUG -- omniauth: (google) Callback phase initiated

I'm wondering if this is because of the subdomain? If so, is there any way around this? How do I debug this otherwise?
Extra notes
Also, it is a little odd that I can't seem to do a ctrl + c to terminate the server. It simply freezes there and takes a while to terminate.

Do you know if the callback request ever leaves OmniAuth and reaches Rodauth? If you enable only the omniauth_base feature, does it still freeze up?
Honestly, I don't know what's up with the freezing, you could try using rbspy to see where the ruby process got stuck.

Do you know if the callback request ever leaves OmniAuth and reaches Rodauth? If you enable only the omniauth_base feature, does it still freeze up?
Honestly, I don't know what's up with the freezing, you could try using rbspy to see where the ruby process got stuck.

Switched to omniauth_base and it doesn't freeze up, but the following callbacks would have to be commented out"
omniauth_identity_insert_hash do
      super().merge({
        info: omniauth_info.to_json,
        credentials: omniauth_credentials.to_json,
        extra: omniauth_extra.to_json
      })
    end

    after_omniauth_create_account do
      Profile.create!(
        account_id:,
        first_name: omniauth_info["first_name"],
        last_name: omniauth_info["last_name"]
      )
    end

@janko Figured it out! It's really strange but the issue is most likely my home wi-fi. Google Oauth doesn't seem to have any issues once I switch to mobile.


[WIP] Add Kubernetes Hardening Guide

Addresses issue https://github.com/kubernetes/sig-security/issues/30 in k/sig-security repository.
This is a draft for the Kubernetes Hardening Guide from the collaborative document. There are still lots of areas that need to be fleshed out before this PR is ready for review.

/sig security

@cailynse, how can we help you move this work forward?

Hey @sftim ! I've been a bit swamped but have lots of time over the holidays to work away on it. @raesene and I have a meeting booked for this week to talk about repurposing some of the material from his blog to make it a bit easier.

Hello @cailynse , checking in. Is there anything we can do to help here?

Hi @divya-mohan0209  - sorry, been swamped with a few other things. I'll work. on breaking this down more clearly this week so it's easier for folks to contribute.


Can't seem to link Wireless Terminal to my storage

MC: 1.19.2
Forge: 43.2.3
Mod: 1.3.10
I actually recall this being an issue in 1.18 as well - the upgraded versions would work, but the basic Wireless Terminal won't connect, regardless of whether I right click or shift right click. I'm not sure if it's a mod conflict or just something I'm doing wrong. Here's my latest.log  -
latest.log

The basic wireless terminal can't bind to a block, it only extends your reach while looking at a terminal, use the advanced variant.
Duplicate of #160


[Testing] Guides on testing user onboarding

Guides on user onboarding [1] should be tested.
[1] https://is.docs.wso2.com/en/latest/guides/identity-lifecycles/onboard-overview/

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!