question about implementing dynamic data sources

I'm trying to create dynamic data source to be able define resolvers similar to samsarahq/thunder:
type Friend struct {
  FirstName string
  LastName string
}

func (f *Friend) FullName() string {
  return fmt.Sprintf("%s %s", f.FirstName, f.LastName)
}

I need to pass parent value (f *Friend) to its resolvers, but I'm not sure how this can be implemented using TypeFieldConfiguration and datasources.
I really appreciate any hints or examples.

Hey, thanks for trying this library.
Does this help?
https://github.com/jensneuse/graphql-go-tools/blob/42eed16be18ed4f61d517abc1d4a8d19696215be/pkg/graphql/execution_engine_test.go#L164

thanks, I'm looking for a way to pass an struct instance (e.g. f *Friend) to datasource resolver (e.g. func (f *Friend) FullName() string) or func FullName(f *Friend) string))
resolver should be able to access to the object instance somehow, one way might be to recreate TypeFieldConfiguration with each request and pass the instance via config, I'm note sure how efficient that'd be though or is there a better way?

Please reopen or create an issue if you have any further questions.

I'm trying to add this library to golang-graphql-benchmark. I've created a simple http server but it perform very bad, am i doing this right?
package main

import (
	"encoding/json"
	"fmt"

	"github.com/gin-gonic/gin"
	"github.com/jensneuse/abstractlogger"
	"github.com/jensneuse/graphql-go-tools/pkg/execution"
	"github.com/jensneuse/graphql-go-tools/pkg/execution/datasource"
	"github.com/jensneuse/graphql-go-tools/pkg/http"
)

var schema = []byte(`
schema {
  query: Query
}
type Query {
  hello: String!
}
`)

func toJSON(any interface{}) []byte {
	data, _ := json.Marshal(any)
	return data
}

func ggtHandler() gin.HandlerFunc {
	plannerConfig := datasource.PlannerConfiguration{
		TypeFieldConfigurations: []datasource.TypeFieldConfiguration{
			{
				TypeName:  "Query",
				FieldName: "hello",
				Mapping: &datasource.MappingConfiguration{
					Disabled: true,
				},
				DataSource: datasource.SourceConfig{
					Name: "StaticDataSource",
					Config: toJSON(datasource.StaticDataSourceConfig{
						Data: "world",
					}),
				},
			},
		},
	}
	base, _ := datasource.NewBaseDataSourcePlanner(schema, plannerConfig, abstractlogger.NoopLogger)
	base.RegisterDataSourcePlannerFactory("StaticDataSource", datasource.StaticDataSourcePlannerFactoryFactory{})
	executionHandler := execution.NewHandler(base, nil)
	executionHandler.Handle([]byte("query {hello}"), nil)
	r := http.NewGraphqlHTTPHandlerFunc(executionHandler, abstractlogger.NoopLogger, nil)
	fmt.Println("ok")

	return func(c *gin.Context) {
		r.ServeHTTP(c.Writer, c.Request)
	}
}

func main() {

	r := gin.New()
	r.POST("/graphql", ggtHandler())

	fmt.Println("Now server is running on port 8080")
	fmt.Println("Test with POST      : curl -g --request POST 'http://localhost:8080/graphql?query={hello}'")
	r.Run() // listen and serve on <IP_ADDRESS>:8080
}

graphql-go-tools result:
❯ wrk -t12 -c400 -d5s --timeout 10s --script=golang/post.lua --latency http://localhost:8080/graphql
Running 5s test @ http://localhost:8080/graphql
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    69.30ms   95.08ms 848.21ms   86.50%
    Req/Sec     1.00k   278.66     2.77k    71.52%
  Latency Distribution
     50%   26.68ms
     75%  109.12ms
     90%  196.78ms
     99%  408.77ms
  59497 requests in 5.09s, 7.60MB read
Requests/sec:  11684.25
Transfer/sec:      1.49MB

gqlgen result:
❯ wrk -t12 -c400 -d5s --timeout 10s --script=golang/post.lua --latency http://localhost:8080/graphql
Running 5s test @ http://localhost:8080/graphql
  12 threads and 400 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     5.02ms    8.17ms 151.58ms   92.29%
    Req/Sec    10.34k     2.78k   36.27k    84.75%
  Latency Distribution
     50%    2.56ms
     75%    7.05ms
     90%   12.13ms
     99%   27.94ms
  631983 requests in 5.10s, 80.76MB read
Requests/sec: 123909.34
Transfer/sec:     15.83MB


Updating privacy documentation page title

Updating the title of HoloLens 2 privacy documentation page to avoid making the impression of it having regulatory implications (as per request from CELA PRA).

Moving to Hololens-pr repo.


Avoid submit the form if we have validation errors.

I tried this change and it does not work.  All form submits fail because eForm.$valid is undefined.
What is this change supposed to do?

@marthinal is this request still relevant?

@eugef Since the code doesn't work in the request, I propose it should be closed.


Some Problems with installing Sparse Transformer

Hello! Thanks to your excellent work. I'd like to know How Much memory need to be used when training.
My work station is in Ubuntu22.04 with CUDA11.7
I found such a problem below:

When I install sparse transformer, there is such a problem:

I couldn't find these 3 files in folders as well. Therefore, I noted the 3 rows.

But I cannot import sptr correctly.

It seems a problem about sptr installation.

Can you figure out which line causes the segment error?
I found the problem occured when
from util.data_util import collate_fn_limit, collation_fn_voxelmean, collation_fn_voxelmean_tta

Please uncomment these three .cu files. And compile again.

Please uncomment these three .cu files. And compile again.

When I uncommented the rows, there were loss of files.
/home/hhz/.conda/envs/spformer/compiler_compat/ld: cannot find /home/hhz/code/segmentation/SphereFormer/third_party/SparseTransformer/build/temp.linux-x86_64-cpython-37/src/sptr/attention/attention_cuda_kernel.o: 没有那个文件或目录 /home/hhz/.conda/envs/spformer/compiler_compat/ld: cannot find /home/hhz/code/segmentation/SphereFormer/third_party/SparseTransformer/build/temp.linux-x86_64-cpython-37/src/sptr/precompute/precompute_cuda_kernel.o: 没有那个文件或目录 /home/hhz/.conda/envs/spformer/compiler_compat/ld: cannot find /home/hhz/code/segmentation/SphereFormer/third_party/SparseTransformer/build/temp.linux-x86_64-cpython-37/src/sptr/rpe/relative_pos_encoding_cuda_kernel.o: 没有那个文件或目录 collect2: error: ld returned 1 exit status error: command '/usr/bin/g++' failed with exit code 1

Have you installed nvcc? Can you input nvcc -V in the terminal to see whether it is installed correctly?

Have you installed nvcc? Can you input nvcc -V in the terminal to see whether it is installed correctly?

Yes, I have installed nvcc correctly.
$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2021 NVIDIA Corporation Built on Thu_Nov_18_09:45:30_PST_2021 Cuda compilation tools, release 11.5, V11.5.119 Build cuda_11.5.r11.5/compiler.30672275_0

It is a little weird. Do you strictly follow the command in README, like you need to first enter the third_party/SparseTransformer, and then execute the python setup.py install ?

hello, thank you for this work,
i have a probleme with installation of Sparse Transformer,
I am working with virtual environment , i use cuda116, in venv, but in my machine cuda111 was installed, i got this error message:
The detected CUDA version (11.0) mismatches the version that was used to compile
PyTorch (11.6). Please make sure to use the same CUDA versions.

do you have an idea how to fixe it whene we use venv

Hi, Can you try to follow the solution here: https://github.com/dvlab-research/SparseTransformer/issues/2

Thank you so much for your response, now i  have this error,
virtual_env/venv_with_python3.8/lib/python3.8/site-packages/torch/utils/cpp_extension.py:820: UserWarning: There are no x86_64-linux-gnu-g++ version bounds defined for CUDA version 11.6
warnings.warn(f'There are no {compiler_name} version bounds defined for CUDA version {cuda_str_version}')
building 'sptr_cuda' extension
Traceback (most recent call last):
File "setup.py", line 12, in
setup(
File "virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/init.py", line 145, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.8/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.8/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/install.py", line 67, in run
self.do_egg_install()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/install.py", line 109, in do_egg_install
self.run_command('bdist_egg')
File "/usr/lib/python3.8/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/bdist_egg.py", line 172, in run
cmd = self.call_command('install_lib', warn_dir=0)
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/bdist_egg.py", line 158, in call_command
self.run_command(cmdname)
File "/usr/lib/python3.8/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/install_lib.py", line 23, in run
self.build()
File "/usr/lib/python3.8/distutils/command/install_lib.py", line 109, in build
self.run_command('build_ext')
File "/usr/lib/python3.8/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 84, in run
_build_ext.run(self)
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
_build_ext.build_ext.run(self)
File "/usr/lib/python3.8/distutils/command/build_ext.py", line 340, in run
self.build_extensions()
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 765, in build_extensions
build_ext.build_extensions(self)
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
_build_ext.build_ext.build_extensions(self)
File "/usr/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
self._build_extensions_serial()
File "/usr/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
self.build_extension(ext)
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 205, in build_extension
_build_ext.build_extension(self, ext)
File "/usr/lib/python3.8/distutils/command/build_ext.py", line 528, in build_extension
objects = self.compiler.compile(sources,
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 581, in unix_wrap_ninja_compile
cuda_post_cflags = unix_cuda_flags(cuda_post_cflags)
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 480, in unix_cuda_flags
cflags + _get_cuda_arch_flags(cflags))
File "/shared/home/sc43822/virtual_env/venv_with_python3.8/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 1694, in _get_cuda_arch_flags
arch_list[-1] += '+PTX'
IndexError: list index out of range

thank you so much it works @X-Lai

now i have this issue, do you have any idea why ?

Have you modified the original code? I think maybe the shape of pos or batch is incorrect. Can you confirm that?

hello, i modified just the number of GPUs,
batch:  torch.Size([683865])
pos: torch.Size([683865, 3])
size: tensor([0.3000, 0.3000, 0.3000], device='cuda:0')

it's ok,  the problem is solved, the issue   was about the version of torch-geometric, i used 0.5 instead if 1.7.
Thank you so much for your help


Workaround to fix Pyright/Pydantic missing parameters issue

Users of Pyright, or the Pylance extension in Visual Studio Code, may have noticed that when type checking is activated certain models in fastapi.openapi.models complain about missing parameters that are actually optional.
Most notably, the Schema object cannot be created programmatically without a type checking error as Pyright/Pylance believes that it is missing an required keyword argument, $ref, that cannot be legally provided in Python.

Arguments missing for parameters "$ref", ...

This is due to a known compatibility issue with a workaround that is documented here:
https://github.com/samuelcolvin/pydantic/issues/3753
This PR implements that workaround for the models in fastapi.openapi.models.

Resolved by https://github.com/tiangolo/fastapi/pull/4906


Numbering Headlines

I am missing the possibility to output number headlines in TOC or content of pdf. This is a default behavior within docbook or latex, rendering a pdf. Imo could be implemented based on a default option or on CSS stylesheet (http://webdesign.about.com/od/css2/a/aa032807.htm).

Sounds like a very cool and useful feature.
Obvious workaround is of course to do this in the python part of the code.


Create david.md

Notes for Reviewers
This PR fixes #
Signed commits

[ ] Yes, I signed my commits.

🚀 Preview for commit f2d9e3661d3ecf160a841048288cd524e776fcf1 at: https://6707d7a475854f3022cb49e5--meshery-docs-preview.netlify.app

@davidudale 🚀 😎


NoClassDefFoundError: org.codehaus.jackson.map.ObjectMapper

From https://github.com/delight-im/Android-DDP/issues/81:

Since v3.0.0 I'm getting another exception on pre-lollipop devices wich, I think, is related to this one :
java.lang.NoClassDefFoundError: org.codehaus.jackson.map.ObjectMapper at im.delight.android.ddp.Meteor.<clinit>(Meteor.java:49)
I think this NoClassDefFoundError is here because of others libraries I use... I'm trying to find which one/ones is/are conflicting with Android-DDP and Jackson.
I'm getting this error when using Android Facebook SDK library at the same time as Android DDP

-- @elloyg

Hi !
After some research I found that the problem was caused by a misconfiguration of mine implementing multiDex.
Thanks for your help ;)

@elloyg Great that it isn't a bug here in this library :) Thank you!


Pattern Matching

Pattern Matching
We need to write out a draft plan for how pattern matching will work in Ark.
Value matching
match 5 {
    5 -> println("yes");
}

I was thinking about a rust like syntax for pattern matching, which would double as a method of destructuring tuples and the like.
enum Thingy {
    Ayy,
    Lmao(s8, u32),
    ...
}
Lmao(_, that) = someInstance
match someInstance {
    Ayy -> ...
    Lmao(_, _) -> ...
}

Just some ideas...

make match an expression, this allows for stuff like x: str = match y { 1 -> "hi"; ... }, or my personal favourite is when it's used in a combination with predicates.
an underscore will match stuff that isn't covered in an "arm" of the match
multiple patterns with a pipe operator, e.g. 1 | 2 -> ...
ranges with an ellipse (inclusive, note we should handle exclusive and preferably without the bug prone .. vs ...) e.g. 'a' ... 'z'' -> ...
(basically Rust so far if you haven't figured it out) bindings, i.e. you can bind a value to a name like so foo @ 1 ... 5 -> /* do something with foo */
looks like killjacken has just done enumes...

@kiljacken :+1: on the underscore syntax to keep it consistent with the _ arm, I don't really get why Rust uses ...

How about using this syntax for exclusive ranges?
0 ..<5
That would be all values >= 0 but < 5
0 .. 5
Whereas the second would be all values >= 0 and <= 5
This is the syntax that Swift uses and I think it's nice.

or just 3 dots for inclusive and 2 dots for exclusive

@raoulvdberge That's the last thing I want, it's very error prone

@raoulvdberge @felixangell Yeah, the difference between 2 and three full stops may be misleading and hard to debug.

@kiljacken
Yes, this is perfect.
@felixangell

make match an expression, this allows for stuff like x: str = match y { 1 -> "hi"; ... }, or my personal favourite is when it's used in a combination with predicates.

Yes, definitely. We'll need a separate issue for that though.

an underscore will match stuff that isn't covered in an "arm" of the match

Yep

multiple patterns with a pipe operator, e.g. 1 | 2 -> ...

This conflicts with the bitwise or operator. Commas are probably better.

ranges with an ellipse (inclusive, note we should handle exclusive and preferably without the bug prone .. vs ...) e.g. 'a' ... 'z'' -> ...

Maybe 1..5 for exclusive, 1..=5 for inclusive.

Not too sure about exclusive or inclusive.
@ark-lang/owners
btw, I'd like to wrap up most of the RFC's, we can always change to something later, even though it's good to get everything ironed out. But if we don't close these RFC's, they'll probably be open for months...

:+1: On my enum matching (:P)
:+1: On SamTebbs' range proposal (inclusive by default, < on either/both side(s) of .. to make exclusive. )
:+1: On commas for matching multiples.
Anything i missed?

@kiljacken I think we all agree on most of these features except for inclusive and exclusive. So instead of voting, we should probably think of ideas for specifying exclusive and inclusive.

I stand by my suggestion of a slightly extended version of what Sam suggested.

Pattern
Meaning

a .. b
Both inclusive

a<.. b
a exclusive, b inclusive

a ..<b
a inclusive, b exclusive

a<..<b
Both exclusive

THIS HAS MOVED HERE!!!


Parameterized test method names are not visible in failure report

It seems that the parameterized test method names are missing from the report. Here's an example:
	@ParameterizedTest(name = "{0}")
	@ValueSource(
		strings = [
			"net.twisterrob.gradle.plugin.root", // :plugin:base
			"net.twisterrob.gradle.plugin.java", // :plugin:languages
			"net.twisterrob.gradle.plugin.java-library", // :plugin:languages
			// Kotlin: "net.twisterrob.gradle.plugin.kotlin", // :plugin:languages
			"net.twisterrob.gradle.plugin.vcs", // :plugin:versioning
			"net.twisterrob.gradle.plugin.quality", // :quality
			"net.twisterrob.gradle.plugin.pmd", // :pmd
			"net.twisterrob.gradle.plugin.checkstyle", // :checkstyle
			// Android: "net.twisterrob.gradle.plugin.gradle.test", // :test
		]
	)
	fun `android library project doesn't create tasks when using plugin`(pluginId: String) {

In the below screenshot you can see that it's in the net.twisterrob.gradle.PluginIntegrationTest class, and that the parameter was net.twisterrob.gradle.plugin.root, but you can't see the actual method name. In the real code I have multiple @ParameterizedTest methods, which have the same-ish parameter lists so distinguishing between them is important.

In the IDE it looks like this (clean hierarchy):

Actions link: https://github.com/TWiStErRob/net.twisterrob.gradle/pull/452/checks?check_run_id=12572964034
Here's the relevant artifacts that are used in publishing the report:
AGP 7.2.x on Gradle 7.3+ (7.2.2 on 7.3.3) Test Results HTML.zip
AGP 7.2.x on Gradle 7.3+ (7.2.2 on 7.3.3) Test Results XMLs.zip
It seems that the XML doesn't have this information, but the HTML does... 🤨.

Well, if it is not in the XML, I can't do anything about it. Maybe worth reporting to the project of the code that writes the XML.

Would you accept contribution for a binary parser?

A parser for which binary format?


Make sure operator precedence aligns with OpenFormula

Defined in this table: https://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os-part2.html#__RefHeading__1017940_715980110

b127be1..0c1f29f


Doesn't work

I've enabled the amazon.com permissions as documented but no effect on amazon.com at all. Nothing gets filtered out. My other addons are Ublock Origin, Bitwarden, Keepa, and ClearURLs.

So I literally JUST pushed v0.0.51 out to the addon store.  It'll probably be a short while before it actually shows up to download.  But it's targeting exactly this problem.
I found that three filter method I was using started to give a huge number of false positives as the list grew.
The new one doesn't do that, it will still take some tuning and updating.  Currently it'll struggle brands containing spaces and commas. But it's a better foundation to build the filter on going forward.
If v0.0.51 doesn't solve your problem please let me know.

I have 0.0.51 and the addon appears nonfunctional still. Searching for "wire crimper" floods the results with generic garbage like Qibaok, Sopoby, WGGE, Haisstronica, iCrimp, etc.

OK so I tried "wire crimper" as well.  It mostly worked, somehow Sopoby also got through, but everything else was good.
So few questions for everyone.

What OS/Browser version are you running
Are you on amazon.COM or another country?  The add-on currently will only work against amazon.com
When you click the icon at the top right, what's selected.  It's occurred to me the addon is not set to run by default.  I'll change that with the next release.
Similarly, in the popup, do you see a list version and brand count?
If all else fails, open the console (ctrl+shift+i -> click on Console), type "amazonbrandfilter" in the filter output.  Make sure all of the streams are enabled (Errors, Warnings, Logs, Debug).  refresh the page and then copy all of that and attach it here.  it will be a lot.  No sensitive data though.

Meanwhile it seems like I need to come up with a way to do a diagnostic bundle.

v0.0.51 still does not work for me. Searching the keyword furniture first three results are WLIVE, VTRIN, and CADUKE brands.

To answer your questions:

Firefox 120.0.1 on macOS 14.2 Macbook M2
Amazon.com in the US
By default, it is not enabled but as seen in the screenshot above, I've enabled the addon and confirmed the arrow on the Amazon logo turned green
See the screenshot for the brand version and count (4, 663)
No errors or warnings for amazonbrandfilter in the console

However, I noticed that the filtering randomly worked after I waited several seconds on Amazon.com while fiddling with the console. And the keyword furniture did not yield any results. But after the refresh it still showed Amazon Brands.

Can you attach the logs from the console (filtered down to amazonbrandlist)
What I'm hoping to see is if the filter is failing to run, or if the filter is getting false positives.
If you enable the Also Filter Brands in Sidebar option does that work?
I would try looking up something that has a lot of brands that are on the list, somehow "ski goggles" became my personal testing search.  The sidebar should bean easier barometer to check and see if its working.

Here is a screenshot of "ski goggles":

OH!  I just had a thought.
OK so first thing is in that screenshot it appears to be working.  Those are all real brands.  Though there is clearly something to be done about Wildhorn.
On your other searches where it doesn't work.  Do you get the grid search or the list style?  like this:

This was an issue I ran into early on and handled but after some re-structuring I could see it being broken.

I get the grid search results.

What do your wire crimper search results look like?
I have sopaby and another down in the someline down in the more results section.  but otherwise it looks good.

Could I get a similar screenshot to the ski goggles one?
Sorry I know this kind of troubleshooting is tedious but I really do want it to work for you.
I think I know how to fix the sopaby one though and I'll have that in the next version

See screenshots below:

Hrm.  I'm not really sure what the deal is.  So on the ski goggle screenshot it is clearly working.
The wire crimper one it appears to be working but just not well.  But more importantly not as well as it is on my machine.  This may be a matter of me just needing to finish out the filtering engine.  I had a thought and I am going to try and push out a new version tonight.
My thinking is ill have a debug mode where instead of hiding things, it will set background colors so that we can tell what the addon has decided to do.  I can't get that out in the next couple of hours but i'll try to get something out for testing tonight.

I have pushed out v0.0.60 (i kinda screwed up calling the last one 51)
This one will filter out the sopaby listing as an example.
I also have added the ugliest debug mode possible.
If enabled, rather than hiding, it will set the background of filtered items to red and unfiltered items to green.  In the unfiltered items it will add a span that shows what word it keyed off of to determine that that was a valid entry.  This should make tracking things down easier.

OK!  So I have pushed v0.0.70.
Should be a huge improvement in the filtering accuracy and speed.
There is currently an "issue" right now with some categories.  Some of them are now putting the brand up in its own div which is giving false negatives.  But its actually a good thing because it makes accurate filtering a whole lot easier.  But that is work for Tomorrow Chris
I'm optimistic and excited to hear if it solves your problem

v0.1.0 seems to be working well for me. Closing the issue. Thank you.


WIP:  toying with setuptools

according to
https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html
and
https://peps.python.org/pep-0621/
setup.cfg should be moved to pyproject.toml

About using requirements.txt for devops (whole prod environment) and minimal build requirements (requires) see https://stackoverflow.com/a/33685899
https://github.com/pypa/setuptools/issues/1951

move everything from setup.cfg to pyproject.toml (remove setup.cfg) next

requirements*txt* are substituted with the
project.dependencies and  project.optional-dependencies in pyproject.toml.
I.e. use [doc] or [dev] tags to install additional dependecies
pip install -e ./ensembl-genomio[doc]


Prevent showing webauthn error for every time visiting /user/settings/security

It's quite annoying that the webauthn error is popped up every time when visiting /user/settings/security.
After this fix, the error is only shown after the user clicks the register (add security key) button.

Maybe we should be hiding the register button if detect-webauthn is not detected.

Maybe we should be hiding the register button if detect-webauthn is not detected.

It would be a bigger change, we should find some where to show the error message.
This PR could work and I am open, if there is a better PR, feel free to use it to replace this one.

Codecov Report

Merging #18385 (7422a2b) into main (3349fd8) will increase coverage by 0.00%.
The diff coverage is 83.33%.

@@           Coverage Diff           @@
##             main   #18385   +/-   ##
=======================================
  Coverage   46.03%   46.04%
=======================================
  Files         840      840
  Lines       92856    92858    +2
=======================================
+ Hits        42746    42753    +7
+ Misses      43323    43317    -6
- Partials     6787     6788    +1

Impacted Files
Coverage Δ

routers/install/install.go
0.56% <0.00%> (ø)

modules/git/diff.go
80.64% <100.00%> (ø)

modules/git/repo.go
69.37% <100.00%> (+0.38%)
:arrow_up:

routers/web/repo/http.go
55.83% <100.00%> (ø)

services/gitdiff/gitdiff.go
73.59% <100.00%> (ø)

modules/queue/workerpool.go
57.99% <0.00%> (-0.63%)
:arrow_down:

models/repo/repo.go
67.44% <0.00%> (-0.59%)
:arrow_down:

modules/queue/queue_bytefifo.go
52.27% <0.00%> (+0.45%)
:arrow_up:

models/repo_list.go
77.21% <0.00%> (+0.59%)
:arrow_up:

modules/queue/queue_disk_channel.go
63.86% <0.00%> (+1.48%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4bfd749...7422a2b. Read the comment docs.


[twitch] subtitles (chat) fail to download

Please follow the guide below

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

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

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

Before submitting an issue make sure you have:

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

What is the purpose of your issue?

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

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

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-f', u'bestvideo+bestaudio/best', u'--download-archive', u'a.txt', u'--merge-output-format', u'mkv', u'-i', u'--all-subs', u'--embed-subs', u'--embed-thumbnail', u'--add-metadata', u'--write-annotations', u'--write-description', u'--write-info-json', u'--write-annotations', u'--write-thumbnail', u'--write-sub', u'-v', u'-o', u'%(uploader)s/%(title)s %(id)s.%(ext)s', u'--yes-playlist', u'https://www.twitch.tv/videos/329973004']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.12.09
[debug] Python version 2.7.12 (CPython) - Linux-3.14.0-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: ffmpeg 2.8.15-0ubuntu<IP_ADDRESS>, ffprobe 2.8.15-0ubuntu<IP_ADDRESS>, phantomjs 2.1.1
[debug] Proxy map: {}
[twitch:vod] 329973004: Downloading vod info JSON
[twitch:vod] 329973004: Downloading vod access token
[twitch:vod] 329973004: Downloading m3u8 information
[info] Writing video description to: Smallant1/SM64 1 Star PB 46_52 v329973004.description
[info] Writing video annotations to: Smallant1/SM64 1 Star PB 46_52 v329973004.annotations.xml
WARNING: There are no annotations to write.
[info] Writing video subtitles to: Smallant1/SM64 1 Star PB 46_52 v329973004.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: <urlopen error [Errno -5] No address associated with hostname> (caused by URLError(gaierror(-5, 'No address associated with hostname'),))
[info] Writing video description metadata as JSON to: Smallant1/SM64 1 Star PB 46_52 v329973004.info.json
[twitch:vod] v329973004: Downloading thumbnail ...
[twitch:vod] v329973004: Writing thumbnail to: Smallant1/SM64 1 Star PB 46_52 v329973004.jpg
[debug] Invoking downloader on u'https://vod.edgecast.hls.ttvnw.net/20fe21a260ca0cdd6e87_smallant1_31027988608_1007874719/chunked/highlight-329973004.m3u8'
[download] Smallant1/SM64 1 Star PB 46_52 v329973004.mp4 has already been downloaded
[download] 100% of 1.21GiB
[debug] ffmpeg command line: ffprobe -show_streams 'file:Smallant1/SM64 1 Star PB 46_52 v329973004.mp4'
[ffmpeg] Fixing malformed AAC bitstream in "Smallant1/SM64 1 Star PB 46_52 v329973004.mp4"
[debug] ffmpeg command line: ffmpeg -y -i 'file:Smallant1/SM64 1 Star PB 46_52 v329973004.mp4' -c copy -f mp4 '-bsf:a' aac_adtstoasc 'file:Smallant1/SM64 1 Star PB 46_52 v329973004.temp.mp4'
[ffmpeg] Adding metadata to 'Smallant1/SM64 1 Star PB 46_52 v329973004.mp4'
[debug] ffmpeg command line: ffmpeg -y -i 'file:Smallant1/SM64 1 Star PB 46_52 v329973004.mp4' -c copy -metadata 'comment=' -metadata 'description=' -metadata 'artist=Smallant1' -metadata 'title=SM64 1 Star PB 46:52' -metadata 'date=20181031' -metadata 'purl=https://www.twitch.tv/videos/329973004' 'file:Smallant1/SM64 1 Star PB 46_52 v329973004.temp.mp4'
[ffmpeg] Embedding subtitles in 'Smallant1/SM64 1 Star PB 46_52 v329973004.mp4'
ERROR: [Errno 2] No such file or directory: 'Smallant1/SM64 1 Star PB 46_52 v329973004.rechat.json'
Traceback (most recent call last):
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 804, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 858, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 1636, in process_video_result
    self.process_info(new_info)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 1983, in process_info
    self.post_process(filename, info_dict)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/YoutubeDL.py", line 2048, in post_process
    files_to_delete, info = pp.run(info)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 393, in run
    self.run_ffmpeg_multiple_files(input_files, temp_filename, opts)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 182, in run_ffmpeg_multiple_files
    os.stat(encodeFilename(path)).st_mtime for path in input_paths)
  File "/home/ealgase/.local/lib/python2.7/site-packages/youtube_dl/postprocessor/ffmpeg.py", line 182, in <genexpr>
    os.stat(encodeFilename(path)).st_mtime for path in input_paths)
OSError: [Errno 2] No such file or directory: 'Smallant1/SM64 1 Star PB 46_52 v329973004.rechat.json'
---

### Description of your *issue*, suggested solution and other information

Downloading of subtitles (the chat) for Twitch videos fails.

They're not subtitles. The extractor doesn't support chat. Same with youtube chat, and comments.

It previously extracted chat from the rechat endpoint (which has been removed).

I'm having this same issue.  Does anyone know of any fixes?
I think making the modifications in this PR might work - https://github.com/ytdl-org/youtube-dl/pull/15828 - but I haven't tried them yet

You can use https://github.com/PetterKraabol/Twitch-Chat-Downloader/

Is there a way to tie that into youtube-dl?

Not without scripting it yourself.

@remitamine Should this be closed after #15828? I'm not really sure or I'd do it myself.

rechat subtitles count as the text chat, I vote to close.

Come on mate, did you even read this issue, or just the title? This is
rechat JSON failing to parse and ffmpeg erroring out.
On 2020-05-22 12:58, Paul Henning wrote:

rechat subtitles count as the text chat, I vote to close.
--
You are receiving this because you commented.
Reply to this email directly, view it on GitHub [1], or unsubscribe
[2].
Links:
[1]
https://github.com/ytdl-org/youtube-dl/issues/18593#issuecomment-632888982
[2]
https://github.com/notifications/unsubscribe-auth/AAFRLUQOK4IMZXWF5YMZ2T3RS3KPLANCNFSM4GLRNBQA

Sorry, that was totally confusing! I opened a second bug with an almost
identical title, and thought you were voting to close ten seconds after
I opened it. I'm the bad reader here for sure! Thanks for your quick
response >< My apologies.


[#6748][sql] Fix is misleading in presto configuration

(If this PR fixes a github issue, please add Fixes #<xyz>.)
Fixes #6748
(or if this PR is one task of a github issue, please add Master Issue: #<xyz> to link to the master issue.)
Master Issue: #
Motivation
Explain here the context, and why you're making that change. What is the problem you're trying to solve.
Modifications
Describe the modifications you've done.
Verifying this change

[ ] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end deployment with large payloads (10MB)
Extended integration test for recovery after broker failure

Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API: (yes / no)
The schema: (yes / no / don't know)
The default values of configurations: (yes / no)
The wire protocol: (yes / no)
The rest endpoints: (yes / no)
The admin cli options: (yes / no)
Anything that affects deployment: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

@eaba yes. keep the old setting and add a new setting. If the new setting is set, use the new setting; otherwise, fall back to use the old setting.

@eaba Sorry for the late response, could you please help take a look at the CI problems? Looks related to this change. Thanks.
@sijie Please help review this PR again.

/pulsarbot run-failure-checks

@codelipenghui I don't think the failing tests has to do with this PR

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@eaba looks like the failure is related to this change, Would you please help check it?
https://github.com/apache/pulsar/pull/6757/checks?check_run_id=657446803
20:02:02.527 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@216] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): Executing...
20:02:03.740 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR: Query
20:02:03.740 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR: 20200508_200203_00007_z87n8
20:02:03.742 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR: failed:
20:02:03.742 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR: Failed to get schemas from pulsar: Connection refused
20:02:03.745 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR:
20:02:03.745 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@221] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): STDERR:
20:02:03.779 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@236] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): Done
20:02:03.789 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@254] INFO  org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): completed with 1
20:02:03.789 [tc-okhttp-stream-64606043:org.apache.pulsar.tests.integration.utils.DockerUtils$2@257] ERROR org.apache.pulsar.tests.integration.utils.DockerUtils - DOCKER.exec(TestBasicPresto-ydcsr-presto-worker:/bin/bash -c /pulsar/bin/pulsar sql --execute 'show schemas in pulsar;'): completed with non zero return code: 1
stdout:
stderr: Query 20200508_200203_00007_z87n8 failed: Failed to get schemas from pulsar: Connection refused

How does the pulsar.properties get injected?
How about this?:
public void startPrestoWorker() {
        if (null == prestoWorkerContainer) {
            prestoWorkerContainer = new PrestoWorkerContainer(clusterName, PrestoWorkerContainer.NAME)
                    .withNetwork(network)
                    .withNetworkAliases(PrestoWorkerContainer.NAME)
                    .withEnv("clusterName", clusterName)
                    .withEnv("zkServers", ZKContainer.NAME)
                    .withEnv("zookeeperServers", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.zookeeper-uri", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.broker-service-url", "http://pulsar-broker-0:8080");
        }
        log.info("Starting Presto Worker");
        prestoWorkerContainer.start();
    }

right, this should work.

How does the pulsar.properties get injected?
How about this?:
public void startPrestoWorker() {
        if (null == prestoWorkerContainer) {
            prestoWorkerContainer = new PrestoWorkerContainer(clusterName, PrestoWorkerContainer.NAME)
                    .withNetwork(network)
                    .withNetworkAliases(PrestoWorkerContainer.NAME)
                    .withEnv("clusterName", clusterName)
                    .withEnv("zkServers", ZKContainer.NAME)
                    .withEnv("zookeeperServers", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.zookeeper-uri", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.broker-service-url", "http://pulsar-broker-0:8080");
        }
        log.info("Starting Presto Worker");
        prestoWorkerContainer.start();
    }

This has to do with connection to either pulsar broker or pulsar sql

How does the pulsar.properties get injected?
How about this?:
public void startPrestoWorker() {
        if (null == prestoWorkerContainer) {
            prestoWorkerContainer = new PrestoWorkerContainer(clusterName, PrestoWorkerContainer.NAME)
                    .withNetwork(network)
                    .withNetworkAliases(PrestoWorkerContainer.NAME)
                    .withEnv("clusterName", clusterName)
                    .withEnv("zkServers", ZKContainer.NAME)
                    .withEnv("zookeeperServers", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.zookeeper-uri", ZKContainer.NAME + ":" + ZKContainer.ZK_PORT)
                    .withEnv("pulsar.broker-service-url", "http://pulsar-broker-0:8080");
        }
        log.info("Starting Presto Worker");
        prestoWorkerContainer.start();
    }

This has to do with connection to either pulsar broker or pulsar sql

@eaba right, this should work.

And this is a enhancement than a bugfix, would like to remove it from 2.5.2, if it is really needed, we could add it back.

move to 2.7.0 first.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

@eaba Could you please help resolve the conflicts?

Since it's fixed in https://github.com/apache/pulsar/pull/8549, I assume we can close this PR.


Investigate showcase infrastructure revamp

Have you read the Contributing Guidelines on issues?

[X] I have read the Contributing Guidelines on issues.

Description
The current showcase UI is great, and we don't plan to change it! However, the infra behind it is quite constrained and doesn't scale well. The current workflow is like:

Users click on the "Please add your site" button on the showcase page, which takes them to edit the users.tsx file in the GitHub UI.
They first read the code comment to understand the instructions. Then they need to scroll through this and insert their site in the right place (usually alphabetic order). The users.tsx file, at the time of writing, is 1991 lines long!
When they write their site's data, they could make syntax mistakes, they could format the file inconsistently, they may not know what to write in each field and have to use other entries as reference.
After they're done editing the file, they fork, commit, PR. After that, they drag & drop the screenshot to the existing PR.
Maintainers step in, check out the branch, and optimize the image for them (only 5% of the showcase submissions properly optimized the image beforehand, and it's just economically more sensible for me to checkout every branch and double-check). Also have to change the PR title to docs: add X to showcase and add the "tag: documentation" label.

The problems in this workflow are apparent.

Users without knowledge of git/GitHub often struggle with all the operations and can mess up their branches. They often unnecessarily get intimidated by the CLA bot as well.
Maintainers need to manually apply changes to PRs because GitHub actions aren't really smart enough to get triggered only after the user has submitted an image (which is usually not the first commit).
Images are not collocated with each site, and maintenance of that users.tsx is a huge problem over time. It took me longer than expected for #6862 because I need to blame each line and correspond the username with GitHub handles.
We need to prettier-ignore the array, otherwise CI would fail 50% of the time.

So how do we solve this? Two things:

We need to split users.tsx into smaller, modular data files, and collocate each data entry with its image.
We need to use a web form to submit showcase data.

The first one is relatively simple: build a plugin. The second one is slightly harder, because we need to automate everything with GitHub REST APIs, including fork, create branch, commit, PR. If we want to optimize the image on-the-fly, we probably need a serverless service as well.
However, there's an ultimate solution™: get a server, including a DB! Submitting the form will directly insert the site into the DB, and the website can fetch data from the DB. This means:

We no longer track things on GitHub. No more confusions of branches and PRs.
Cleaner changelogs, commit history, and contributor graph. 25% of our contributors are showcase submissions—that's a lot of noise...
Easier data manipulation: we can query the DB in whichever way we want, allowing for richer navigation without bloating the JS bundle.

With 213 showcase entries, we should start planing for how to make it scale. This proposal is just some random ideas—more ideas welcome 👍
Self-service

[X] I'd be willing to address this documentation request myself.

Agree we should do something to reduce maintenance of showcase, pollution of repo with PRs, and reduce friction to send new sites to our showcase
@zpao we can easily add some backend processing through Netlify serverless functions.
Was wondering if Meta is already using any SaaS DB service (Supabase, Planetscale, Fauna, Atlas...) and that we could eventually use to create apps supporting Docusaurus?

Data in docusaurus is definitely an issue. We have a similar problem on our opensource website - https://opensource.fb.com/projects is backed by a 20k line JSON file which gets some transforms applied at build time, along with images. We use SVGs as much as possible, so the other problem of optimizing isn't too terrible (always room for compressing SVGs too), but also make use of IdealImage to do the processing/resizing at build time. Hell, for your case you could stop having users submit the images entirely and have a build step (or just arbitrary script) which visits the site and takes a screenshot. Remove as much burden from the submitter side as possible.
For serverless/DBs, we don't currently make sure of anything there. And honestly, I think that's actually thinking a bit too narrow. I'd be more inclined to answer this question: How do we make Docusaurus work with headless CMSs? Showcase is a great example out side the typical blog post case for this. It would show how to support arbitrary dynamic data/content from an outside source.
It doesn't quite handle the "just submit a form" case, but honestly that's just asking for abuse. You'll end up with a review process and needing to correct data anyway. But you do probably need something like this anyway if your going to do a CMS - that couldn't be open to everybody so you do need some way to ingest data.

Hell, for your case you could stop having users submit the images entirely and have a build step (or just arbitrary script) which visits the site and takes a screenshot.

Yes that's possible to do that.
We already have new.docusaurus.io using some basic Netlify serverless functions, we could create a new domain with serverless functions to handle that image processing.
The only problem is that we probably don't want to take thousands of time-consuming screenshots anytime a visitor browses the showcase page
We could store/cache screenshots somewhere. But maybe using CDNs + HTTP caching headers can do the trick here
That's also an opportunity to automatically detect doc sites that are not using Docusaurus anymore (we could look for <div id="__docusaurus">). There's probably value in triggering the update of all screenshots in multiple sizes through a local CLI util or CI.

For serverless/DBs, we don't currently make sure of anything there. And honestly, I think that's actually thinking a bit too narrow. I'd be more inclined to answer this question: How do we make Docusaurus work with headless CMSs? Showcase is a great example out side the typical blog post case for this. It would show how to support arbitrary dynamic data/content from an outside source.

For me, a CMS is already somehow a serverless DB: an external system where you can add and retrieve data
Users are already using Docuaurus with CMSes: they just fetch md docs in /docs as a pre-build step and things work.
Showcase is a different use-case as it's not using a pre-built Docusaurus plugin, be we have the infra to create our own custom showcase plugin and fetch JSON data from a CMS (ie the same data that is currently stored in users.tsx in GitHub)
https://docusaurus.io/docs/api/plugin-methods/lifecycle-apis#createData
export default function showcasePlugin(context, options) {
  return {
    name: 'docusaurus-website-showcase-plugin',

    async loadContent() {
       const users = fetchShowcaseUsersFromCMS();
       return {users};
    },

    async contentLoaded({content, actions}) {
      const usersJsonPath = await actions.createData(
        'users.json',
        JSON.stringify(content.users),
      );
      actions.addRoute({
        path: '/showcase',
        component<EMAIL_ADDRESS>        modules: {
          users: usersJsonPath,
        },
      });
    },
  };
}

This doesn't handle local IdealImage etc, but if images are just generated on the fly in serverless functions, this is not really a problem anymore.

It doesn't quite handle the "just submit a form" case, but honestly that's just asking for abuse. You'll end up with a review process and needing to correct data anyway. But you do probably need something like this anyway if your going to do a CMS - that couldn't be open to everybody so you do need some way to ingest data.

As we have to review/fix submissions anyway, we can just create an issue/discussion and users will just post a comment on GitHub asking us to add their site. Typeform, Airtable or any no-code tool.
We mostly want site owners to confirm they want their site added to the showcase.
Asking site owners to fill a form appropriately, adding the right tags, and resizing images only adds friction, and fewer sites get added.

Now, where do we store the reviewed site data?
IMHO a CMS is a bit overkill if only we interact with this data. We could as well use Airtable or a simple GitHub issue table as a CMS:
| Site name  | Site url | Site repo | Tags |
| ------------- | ------------- |
| Docusaurus  | docusaurus.io  | https://github.com/facebook/docusaurus | open-source,design
There are even a few data that could be inferred from the live site URL.

We could also add a site config option so that site owners can provide (and update) most of that data themselves?
{
  showcase: {
    name: "Docusaurus",
    description: "desc",
    repo: "https://github.com/facebook/docusaurus",
    tags: ["opensource", "design"]
  }
}

(but we'd still need to ensure this data is correct 🤷♂ )

This looks to me the lowest hanging fruit:

Use serverless fn for images
Ask users to grant permission to add their site to the showcase using a simple GitHub issue
We add/update sites ourselves in batch (like every week), using a data format (users.json instead of users.tsx)
Eventually, move users.json to a CMS / Airtable / GitHub / External system later

Any opinion?

I have a question. How many sites do we actually want added to the showcase? Do we actually want 500 sites in the showcase where most of them have basically no customization besides a landing page?

I have a question. How many sites do we actually want added to the showcase? Do we actually want 500 sites in the showcase where most of them have basically no customization besides a landing page?

I think it's fine to have a lot of sites there, and site owners are happy to have their sites added, but definitively some sites are not so useful to showcase.
1: Should we be more strict about sites added to the showcase?
2: Or should we filter simpler sites by default in the UI?
I don't really know what's best 😅 but I like option 2 best
Having more sites is good for social proof, but the showcase should remain a useful tool for both marketing and users looking for inspiration/code that stand out from the base Docusaurus template

What about having the current "showcase-style" showcase for showcase-worthy sites, and move the less designed ones to a more compact list view?

Any plans to build a showcase plugin? I'd love to build off the showcase UI.
I found this plugin docusaurus-plugin-showcase by @andremartinssw but it seems to be only partially developed, and I can't figure out how to use it.

@certainlyNotHeisenberg
"partially developed" is (sadly) accurate, as I only made it for internal use at SignalWire, with hardcoded tags for our particular use case and everything. I want to make it more extensible at some point, though.
I suggest copying the plugin code to your docusaurus install, and loading it from a local folder instead of installing from npm, as in its current state it will never work.

Note: Bluesky copied our showcase code: https://docs.bsky.app/showcase


Introspection does not "auto" resolve ambiguous relations

Introspecting chinook DB yields a datamodel with this error:

This should be turned into a specs issue that will change the "Introspection" spec where a solution will be found and then later introduced via a PR.

This should be tracked in the new introspection already.


A single character is not supported？

Can't analyse layout. Make sure 'osd.traineddata' available in 'tessdata'.
Empty page!!
Empty page!!

Could you provide your code and any tesseract output, if exists, so we could investigate this issue deeply?

Have you seen the tessedit_pageseg_mode (kG8ParamTesseditPagesegMode) parameter?
https://github.com/gali8/Tesseract-OCR-iOS/blob/master/TesseractOCR/G8TesseractParameters.m
http://www.sk-spell.sk.cx/tesseract-ocr-parameters-in-302-version

I use the demo project，Not output. Or set some parameters?

I meant console output of tesseract.

Hi,
I get the same error (Can't analyse layout. Make sure 'osd.traineddata' available in 'tessdata'.) when i try to set PageSegmentationMode to PageSegmentationModeAuto, any help?

@Jan-M-B which language are you trying to use? Can you post your code?

I have same error. My code
    G8RecognitionOperation *operation = [[G8RecognitionOperation alloc] initWithLanguage:@"nep"];
    operation.tesseract.engineMode = G8OCREngineModeTesseractOnly;
    operation.tesseract.pageSegmentationMode = G8PageSegmentationModeAuto;

    operation.delegate = (id)self;
    operation.tesseract.image = bwImage;
    [operationQueue addOperation:operation];

    operation.recognitionCompleteBlock = ^(G8Tesseract *tesseract) {
        // Fetch the recognized text
        NSString *recognizedText = tesseract.recognizedText;

     };

Can help me.


compatibility problem with ipywidgets 5.1.5 ?

this works under classic ipython4.2:
%matplotlib inline
# Pandas interactive
import pandas as pd
import numpy as np
import seaborn as sns

# create a df with random datas
np.random.seed(24)
df = pd.DataFrame({'A': np.linspace(1, 10, 10)})
df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4), columns=list('BCDE'))],
               axis=1)
df.iloc[0, 2] = np.nan

# interactive
from ipywidgets import widgets
@widgets.interact
def f(h_neg=(0, 359, 1), h_pos=(0, 359), s=(0., 99.9), l=(0., 99.9)):
    return (df
             .style
             .background_gradient(
                cmap=sns.palettes.diverging_palette(
                     h_neg=h_neg, h_pos=h_pos, s=s, l=l, as_cmap=True)
             ).highlight_null()

under jupyterlab (and chrome) I get a :

Yes, @interact doesn't work right now - we're actively working on a fix. Also, you'll need the master dev branch of widgets installed to have widgets working (what will be widgets 6.x) -- we should note that in the readme and the initial startup page.

[ ] Release pre-release version of ipywidgets 6.x
[ ] Make this pre-release a requirement of jupyterlab (maybe an optional prereq? That way people can still experiment with jupyterlab without messing up their ipywidgets installation if they just don't use ipywidgets)
[ ] Note in the readme and initial about page that ipywidgets 6.x+ is needed for widgets to work.

@stonebig we are actively working on the 6.x branch which should work with both jupyterlab and the current notebook eventually.

Subsumed in the working items in #23. Thanks for the report!


[DO NOT MERGE] CI test

What this PR does / why we need it:
This pr is testing CI infrastructure. It's not going to be merged eventually.
Release note:

Closed since infra works as expected.

/retest
Let's double check

All right, looks good, close it.
/close


Is Lasso-Python licensed as proprietary?

Hello,
NexusIQ (OSS scanning tool) is flagging Lasso-python as having a Proprietary License clause. I noticed also that on Pypi, it also has it listed as "Other/Proprietary License".

However, when I view the license text provided with lasso-python, here in this repo, , it appears to be a BSD 3-Clause, not listed as proprietary.
So, is Lasso-Python proprietary, or is NexusIQ and Pypi incorrect?
Thank you very much for your time.

It's free and will stay free forever. Looks more like an artifact from the migration we did a while ago.

Thank you! I think this should be enough proof for NexusIQ's support team.
For any other readers who also use NexusIQ, I'm putting in a ticket with them about this :)

Update:
Sonatype/NexusIQ is not going to fix this on their end despite the proof here in this thread. Not until the pypi page gets updated to show it doesn't have proprietary in it. It seems its their process to rely on pypi as the source of truth exclusively.
"Best option would be to request the package developer to update this License Classifier to correct license, as pypi uses this classifier to correctly identify the license associated with the component."
Honestly, this has caused too much time waste on my end already so I'm just going to waive the license false positive in NexusIQ.  @codie3611 If you would like, I can open another issue for this if you believe this would be valuable/worth your time to fix. Just let me know.
Thank you again.

I just wonder how to fix it as it is explicitly specified as BSD-3.

From what the Sonatype support folks told me, you have to fix it by changing the License Classifier in the PKG-INFO file that comes with the tar bundle when downloaded from pypi.

From googling a bit, I get the impression that file gets created when you create a pypi package? I'm not sure though.

Hmmm weird as the repo does not contain the classifier anymore.


Server-side redirect in asyncConnect?

I use redux-connect to request data from a wp rest api. I have URLs like this: /blog/page/2, when I fetch the posts and display the result.
Now an example: if the user is typing manually /blog/page/6 when I have only 4 pages, I want to redirect on /blog. Client-side, it's easy, I can use browserHistory.replace('/blog') from React-router. But what about server-side?
Thanks in advance for the help 👍

in both client & server side you should use dispatch actions & react-router connected to redux

On Sep 9, 2016, at 11:52 PM, Maxime Vasse<EMAIL_ADDRESS>wrote:
I use redux-connect to request data from a wp rest api. I have URLs like this: /blog/page/2, when I fetch the posts and display the result.
Now an example: if the user is typing manually /blog/page/6 when I have only 4 pages, I want to redirect on /blog. Client-side, it's easy, I can use browserHistory.replace('/blog') from React-router. But what about server-side?
Thanks in advance for the help 👍
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/makeomatic/redux-connect/issues/70, or mute the thread https://github.com/notifications/unsubscribe-auth/ABol0RYqRHGsGW8huHEuIBrmw-BTw3M_ks5qoccpgaJpZM4J5c9p.

That's what I tried first, but my @asyncConnect function does not seem to get the dispatch prop 😕
Do you know where I can find some example for this kind of things?

it get store, and store has getState and dispatch in it

Thank you so much 🎉  !

@AVVS can we do this without connecting redux to react-router? Like with @withRouter
I am trying to redirect on not found on the promise result.


Can you share the implementation of how to calculate multi adds.

I have the same problem, I can't calculate the amount of calculation in the paper


Luckperms affecting respawn after death.

Description
Running luckperms on my 1.20.1 forge cobblemon server. Everything works great till a player dies and respawns almost like the server can't find there data file. To fix it I have to delete that players data file. But if they die again, I need to delete it again. If I remove luckperms from the server everything is fine even after respawning. I have no idea what's going on with it. Here's a file of the exact moment of death and respawn from the console.
New_Text_Document.txt
Reproduction Steps
Unknown, to create this I fear you might need a full server download.

Server Details
Forge 1.20.1
LuckPerms Version
5.4.102 and 5.4.88
Logs and Configs
No response
Extra Details
No response

Hey did you find a fix for this issuse?

I believe im having this issue too. couldnt figure out which mod it is but saw some reference to luckperms in the log similar to what OP posted.

im using 5.4.108, also forge for 1.20.1

I was able to replicate the issue and isolate it to the following mod:

When looking at the logs, player data is modified in a way that causes something to break when combined with luckperms.

See comment in #4002, the capability missing error should be fixed by b18717e.


Support multiple recipients in XMPP

Extended XMPP notifier to support mulitiple recipients in config.

Great commits @smeinecke , thanks!


[Tooltip] Wrong tooltip position while scrolling when the element position is fixed on the right

Bug, feature request, or proposal:
Bug
What is the expected behavior?
Should auto align the tooltip near element.
What is the current behavior?
Tooltip position is going down when there is a scroll on the page.
What are the steps to reproduce?
https://stackblitz.com/edit/angular-phje6f
What is the use-case or motivation for changing an existing behavior?
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Latest versions. Any browser.
Is there anything else we should know?

This is the same issue as https://github.com/angular/material2/issues/11365. Closing as a duplicate.


Update Jobs Docs

This is a...

[ x] Feature Request
[ ] Bug Report

Study this Concept topic: Jobs - Run to Completion. Much of the content is not conceptual; it is task-like. Move the task-like content into one or more new Task topics. Before you create a new Task topic, verify that the content does not already appear in an existing Task topic. For the original topic and any new Task topics, use the appropriate template: Concept or Task. Edit the topics to comply with our style guide. In Task topics, if possible, create exercises that readers can actually do as they read through the steps.

/remove-lifecycle rotten
/lifecycle frozen
/reopen

/priority important-longterm

Also see issue #19819

I'm going to say that #19819 has done this, and if more tidying is needed then that merits a new, specific issue.

/close


rename see logs to view logs and change position

Description

Renamed See logs to View logs.
Moved the vulnerabilities log links to beneath the visualization.
Changed icon to the PF help icon.
Type of change

[ ] Feature
[x] Bugfix
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Screen shots / Gifs for design review

How to test or reproduce?

Browser conformance:

[x] Chrome
[ ] Firefox
[ ] Safari
[ ] Edge

/lgtm

/retest

/lgtm

/lgtm


PostgreSQL manual deployment and init_db.go

I think we should remove the KAR-13 reference from the commit and create a GH issue instead to link it to this PR.
I already updated the title of the PR to remove the KAR-13 part

I think the test fail because the new go dependencies need to be added to the go.mod

I think we should remove the KAR-13 reference from the commit and create a GH issue instead to link it to this PR.
I already updated the title of the PR to remove the KAR-13 part

Since you have all of the yaml files for deploying the DB, I think it might be worth while to spend the time add them to the helm chart

@skoved I will move the deployment when I finished with the helm version. You're right that we should have all the deployments in the same place. Thanks!


Fix NPE in Nil.createFile(true)

The following program could be used to reproduce the exception:
import ceylon.file {
    parsePath,
    Nil
}
shared void run() {
    assert (is Nil r = parsePath("foo").resource);
    r.createFile { includingParentDirectories = true; };
}

createFile(true) would attempt to create the parent directories even if the path had no parent directories, resulting in a NullPointerException somewhere in java.nio.Files.

Found while working on ceylon/ceylon.formatter#114.

No test because there currently don’t seem to be any ceylon.file tests at all :/

Thanks!

There’s more coming… :D

Hah!
On Mon, Sep 14, 2015 at 11:45 PM, Lucas Werkmeister <
<EMAIL_ADDRESS>wrote:

There’s more coming… :D
—
Reply to this email directly or view it on GitHub
https://github.com/ceylon/ceylon-sdk/pull/418#issuecomment-140214469.

--
Gavin King
<EMAIL_ADDRESS>http://profiles.google.com/gavin.king
http://ceylon-lang.org
http://hibernate.org
http://seamframework.org

Question:
print(parsePath("foo").parent);

prints foo, even though foo is obviously not the root path. Do you think that’s correct?

(The “more coming” is also more parents of relative paths, btw.)

Um well, no, I don't suppose that is right.

Alright, see #419.


chore(master): release 2.0.0

:robot: I have created a release beep boop
2.0.0 (2023-02-18)
⚠ BREAKING CHANGES

update Flex component

Features

update Flex component (05ccfbd)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/pvduc-dev/plana-ui/releases/tag/v2.0.0 :sunflower:


Update configs

Made changes to reflect v0.9, fixed some spelling errors and an issue with staring servers in docker.  The changes include:

removing client-name & user for clients. v0.9 can determine user from token and client-name can be pre-set when creating limited client token
added acme-email to set Let's Encrypt registration email
updated the link for the prebuild image to include OS and ARC
[bug] Added USER env to server compose file. Without it boringproxy fails to start
added cert-dir volume to server compose file
changed working directory of services to boringproxy home folder

LGTM, thanks @WGrobler!


Developmentseed stream

Polished up version of #7

Thanks @drewbo !

Np, cleanup looks nice @tmcw; can we also drop stream-concat from the dependencies?


Not playing AVI correctly

Describe the bug
1 Playing video in attached zip skips frames.
2 On other films, a picture from the film is shown on the icon.
viagmail_20240226_223023.zip
To Reproduce
Steps to reproduce the behavior:

Have film in Downloads folder so it is listed in the program.
Click on the icon to play it.

Expected behavior
Film to play normally, as it does in VLC.
Additional context
Film is from old D-Link surveillance camera DCS-5020L, so problem can of course be that the video encoding is broken.
Film shows a rat lurking under an outdoor wooden floor.

I observed the same issue with my old AVI files when i switched from ijk to mpv, the new video engine used by Aves. It was overall a better engine, despite the regression on these AVI files.
For now, the only workaround i can offer is to disable hardware acceleration when playing them. It works for my AVI files, at least.

I tried and disabling hardware acceleration solved my problem.
Thanks for the explanation!


New version: JetBrains.GoLand.EarlyAccess version 221.4994.43

Auto-updated by vedantmgoyal2009/winget-pkgs-automation in workflow run 409
Microsoft Reviewers: Open in CodeFlow

/azp run


Minor complements

Update of serializers to have display + tags + custom_fileds on each object, reuse SerializedPKRelatedField form netbox core
Adding filter on view (prefixlistrule, routingpolicyrule, communitylistrule) as it works though API but is not visible, exemple:

but through api:

Main goal was to use the filterset which permits to list all rules for a given object id
after modification:

3.added unit tests on Communitylist

closes #183


Lint reports on using color map-key as function parameter

// _vars.scss
$colors: (
  blue: #0000ff,
  red: #ff0000
);

// _functions.scss
@function color($name) {
  @return map-get($colors, $name);
}

// main.scss
.myElement {
  color: color(red);
}

Scss-lint now reports an error on main.scss because ColorKeyword: Color 'red' should be written in hexadecimal form as '#ff0000'. I might be missing something, but I don't think this is desirable behaviour.

Thanks for the report @bartveneman. However, I think this is a duplicate of #175.

You're absolutely right. Sorry about that.

No worries! Thanks for the report!


CFR Due Date Sync Issue from AXIS

Describe the bug in current situation
When there is an update on RFD on AXIS - Means reducing the RFD Due Date or adding a new RFD with new due date, or removing existing RFD and creating a new RFD on AXIS , is not bring correct CFR due date to FOI FLOW while Syncing or Alert to Sync is not working
Link bug to the User Story
Impact of this bug
CFR Due date on the FOI FLOW will not match with AXIS
Chance of Occurring (high/medium/low/very low)
Leaving to @m-prodan , @KaraBeach
Pre Conditions: which Env, any pre-requesites or assumptions to execute steps?
Create or find a FOI Request on AXIS which is ready for RFD/CFR and Sync it with FOI FLOW.
Steps to Reproduce
Steps to reproduce the behavior:

Go to AXIS search with REQUEST ID, Go to RFD section

Add a RFD and add new due date which is greater
OR reduce the due date
OR Remove the existing RFD and add new one with other due date

Refresh FOI FLOW Request
Either - there will be not SYNC alert or WRONG CFR due date than expected from AXIS. - depends on the pre-condition mentioned on step 1
See error

Actual/ observed behaviour/ results
Expected behaviour
A clear and concise description of what you expected to happen. Use the gherking language.
Screenshots/ Visual Reference/ Source
If applicable, add screenshots to help explain your problem. You an use screengrab.
On FOI FLOW , its showing JUNE 02, 2022, but on AXIS its MAY 24, 2022 for the same FOI request. This is because June 02nd one got removed from AXIS and added new one with May 24 due date -

See the AXIS CFR due date

This is not likely to happen as per @m-prodan


Prevent javascript input

In order to display the formatted content, I'm using something like this
{{ obj.field|safe }}
Is there any way to ensure that the user can only add html in the editor? Is there any validation available in the server side?
I want to prevent users adding malicious code.

use: https://pypi.python.org/pypi/django-bleach
https://docs.djangoproject.com/en/dev/ref/templates/builtins/#striptags
I also believe that safe does not do what you think does
https://docs.djangoproject.com/en/dev/ref/templates/builtins/#safe

to prevent a user to insert javascript code in the ckeditor field, you probably have to create your validation rules using:  http://docs.ckeditor.com/#!/guide/dev_acf

Hello @luzfcb
I'm not sure if I get what you meant, but |striptags and did not output what I expected. It just removes html tags.
Instead, by using |safe I've got the proper visual output.
django-bleach seems to make the proper sanitization in the server side, in order to avoid even storing js content.
I'll check it out. Thanks!


How to create a Kafka test Container

Could we create a Kafka container like this
with TestContainer(image="confluentinc/cp-kafka:5.4.3") as container:     ip = container.get_container_host_ip()
but I don't know how to implement a method like https://www.testcontainers.org/modules/kafka/
kafka.getBootstrapServers()

Kafka container from confluent needs some more configurations before it can be started. I am working on a PR for kafka container. Meanwhile you can look at sample implementation at https://github.com/SrinivasanTarget/python_flask_app/blob/main/test/kafka.py

Kafka container from confluent needs some more configurations before it can be started. I am working on a PR for kafka container. Meanwhile you can look at sample implementation at https://github.com/SrinivasanTarget/python_flask_app/blob/main/test/kafka.py

@wuqunfei you can create kafka container using DockerCompose with specific port, here is the example: https://github.com/manojhans/python_testcontainers_kafka


Possibility to have custom claims

Possibility to setup custom claims.

Thanks for both PRs! And sorry for the delayed answer (as per usual 😄 ). Although I'm considering implementing a solution that doesn't rely on another configuration option. I'm trying to move away from having a lot of code in the initializer as you can probably see in the v2 PR.
I've started refactoring master in a way that will make this easier and should implement a solution for custom claims at the same time. I'll create a PR for this so you can review it before I merge if you have time!
Thanks a lot for your awesome contributions! Even when I don't merge it, it's always really helpful 👍


Docs: Fixed incorrect links in development section

No review needed.

Coverage remained the same at 31.511% when pulling a15213cea7f334435adae79db8c1e089851a5660 on andy/docs-fix-release-link into ff6d38d20ff22b228514bea77ae8e5f97612ce77 on master.


Host went to disconnected state in a Kubernetes setup

Rancher versions:
rancher/server:v1.6.7-rc1
rancher/agent:rancher/agent:v1.2.5
kubernetes (if applicable):1.7.2-rancher7
**Docker version: (docker version,docker info preferred)**1.12.6
**Operating system and kernel: (cat /etc/os-release, uname -r preferred)**Ubuntu
**Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)**DO
**Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)**Single node
**Environment Template: (Cattle/Kubernetes/Swarm/Mesos)**Kubernetes
Steps to Reproduce:

Create a 3 node Kubernetes setup
Add two hosts
Infra containers and user pods came up correctly on these hosts

After a few minutes, on one of the hosts, docker daemon stopped running and host went to disconnected state
root@soumya167kubetest5:~# service docker status
● docker.service
   Loaded: loaded (/etc/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mon 2017-08-07 18:14:02 UTC; 6min ago
  Process: 1322 ExecStart=/usr/bin/dockerd -H tcp://<IP_ADDRESS>:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/doc
 Main PID: 1322 (code=exited, status=1/FAILURE)

Aug 07 18:14:01 soumya167kubetest5 systemd[1]: Started docker.service.
Aug 07 18:14:01 soumya167kubetest5 dockerd[1322]: time="2017-08-07T18:14:01.461331411Z" level=info msg="libcontainerd: new containerd process, pid: 1431"
Aug 07 18:14:02 soumya167kubetest5 dockerd[1322]: time="2017-08-07T18:14:02.752771515Z" level=fatal msg="Error starting daemon: layer does not exist"
Aug 07 18:14:02 soumya167kubetest5 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Aug 07 18:14:02 soumya167kubetest5 systemd[1]: docker.service: Unit entered failed state.
Aug 07 18:14:02 soumya167kubetest5 systemd[1]: docker.service: Failed with result 'exit-code'.

This is not related to the other agent disconnect bugs (#9388 #8522) we are seeing.


[Fix] Starting engine script

Fix the starting engine script. Avoid OS variable LMCACHE_CONFIG_FILE conflict.
Add comparison group for multi-turn experiment.

engine 0: LMCache (save decode = False)
engine 1: LMCache (save decode = True)


Language selection

I downloaded the 0.3 appimage version, it defaults to spanish on my computer. I m running Manjaro 18.04 KDE and I use a Icelandic keyboard (if that has anything to do with this error). I cant find how to switch language.

Hi! your language would be english right? what is your locale code? en_US, en_EN? I'll look at this this days.

This is the language locale settings that show up when I type the locale command in cli. I use english language in the OS, Icelandic keyboard.
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=is_IS.UTF-8
LC_TIME=is_IS.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=is_IS.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=is_IS.UTF-8
LC_NAME=is_IS.UTF-8
LC_ADDRESS=is_IS.UTF-8
LC_TELEPHONE=is_IS.UTF-8
LC_MEASUREMENT=is_IS.UTF-8
LC_IDENTIFICATION=is_IS.UTF-8
LC_ALL=

ok, give me a few days and i'll look into it. I'm really busy right now!

Take your time, no rush on this from me.

I'm not much of a programmer but I imagine the program performs a check to select the language, and from your question I guess it selects based on the locale code. So I thought can it be solved with a check that would be like, if locale = spanish then select spanish else select english. Dunno if that would work and it may be a ugly hack, but since I brought this up I thought I should mention it.


Build custom nodeos-userfs

I'm having problems trying to build a custom nodeos-userfs

What problems are you having?


Builds for QtCreator 4.13

https://www.qt.io/blog/qt-creator-4.13-released

Done for archlinux. Get at https://github.com/pozemka/cheatsh-qtcreator/releases/download/1.1.0/cheatsh-1.1.0-qt-creator-4.13.x-ARCHLINUX-x64.tar.gz or at release page

Done for windows

Done


Update kubevirt_rest_client_request_latency_seconds to count list cal…

What this PR does
Currently, when a list call is made using field-selector or label-selector those calls are inaccurately counted as get calls. This MR will solve this issue.
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer

Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note

 Update kubevirt_rest_client_request_latency_seconds to count list calls if made using query params

cc @alaypatel07

/cc @machadovilaca

thanks for the PR @Sreeja1725, we would need to validate this change (removing the usage of the latency adapter for requestLatency) does not have unexpected consequences. I wonder if you couldn't adapt https://github.com/kubevirt/kubevirt/blob/721315084f2928b0b715e5490baf8ca2582225af/pkg/monitoring/metrics/common/client/latency_adapter.go#L33 instead, since you have access to the URL there too

thanks for the PR @Sreeja1725, we would need to validate this change (removing the usage of the latency adapter for requestLatency) does not have unexpected consequences. I wonder if you couldn't adapt
https://github.com/kubevirt/kubevirt/blob/721315084f2928b0b715e5490baf8ca2582225af/pkg/monitoring/metrics/common/client/latency_adapter.go#L33
instead, since you have access to the URL there too

Thanks for your response @machadovilaca , I have updated as per your comment. PTAL

@xpivarc from the observability side this looks good to me
can you validate the reasoning beyond this PR is correct from the API point of view?

I wonder if the fix is needed here as well: https://github.com/kubevirt/kubevirt/blob/main/pkg/monitoring/metrics/common/client/rt_wrapper.go#L90

@Sreeja1725 @machadovilaca sorry I am not following the codepath, can you help me understand where the Observe function defined here: https://github.com/kubevirt/kubevirt/blob/cea302723cb0207aaa0da7200ed9f15b342e368d/pkg/monitoring/metrics/common/client/latency_adapter.go#L33-L32 is called by the code that is executing a request?

I wonder if the fix is needed here as well: https://github.com/kubevirt/kubevirt/blob/main/pkg/monitoring/metrics/common/client/rt_wrapper.go#L90

that code is for requestResult metric, initially @Sreeja1725 added changes to RoundTrip to add the latency metric there
but maybe it makes sense to change the verb in all of them for consistency yes

@Sreeja1725 @machadovilaca sorry I am not following the codepath, can you help me understand where the Observe function defined here: https://github.com/kubevirt/kubevirt/blob/cea302723cb0207aaa0da7200ed9f15b342e368d/pkg/monitoring/metrics/common/client/latency_adapter.go#L33-L32 is called by the code that is executing a request?

these are registered in the k8s client code, and are executed as a callback from there

I wonder if the fix is needed here as well: https://github.com/kubevirt/kubevirt/blob/main/pkg/monitoring/metrics/common/client/rt_wrapper.go#L90

This is correctly determining the verb fot setting it to 'LIST' during a list call, so there is no need to update it. For example, when the path ends with the resource type  (e.g., /api/v1/pods?limit=100, path is /api/v1/pods), the request is a list call. But yes, the 'WATCH' verb has been updated to ensure it is correctly determined when the path contains '/watch/' or has the query paramter 'watch=true'

This is correctly determining the verb fot setting it to 'LIST' during a list call, so there is no need to update it. For example, when the path ends with the resource type (e.g., /api/v1/pods?limit=100, path is /api/v1/pods), the request is a list call. But yes, the 'WATCH' verb has been updated to ensure it is correctly determined when the path contains '/watch/' or has the query paramter 'watch=true'

@Sreeja1725 thanks for verifying, can you please add a unit test for this if there isnt one already?

/ok-to-test

/retest

@machadovilaca can you please do a second round of reviews on this PR?

/approve

@xpivarc Can you PTAL

/cc @0xFelix

@0xFelix Updated as per your comments, PTAL


Login view on logout still has password saved

Just letting y'all know that this is a known issue! Working on fixing this, the password should be cleared after fix

Fixed in #125


view db: delete the key if the value is set to nil

Signed-off-by: Angelo De Caro<EMAIL_ADDRESS>

LGTM


Not able to add com.google.firebase:testlab-instr-lib:02 in android manifest

I followed the instructions here but there is error :

It's because of a typo in the documentation.
androidTestCompile `com.google.firebase:testlab-instr-lib:02`

should be
androidTestCompile `com.google.firebase:testlab-instr-lib:0.2`


Fix a race in ASE.

Shared buffer allocation and address translation share a lock. Buffer
allocation held the lock too long, making a deadlock possible if the
pipe between the two processes is full.

Exposed in DCP regression suite streaming_dma test.

Coverage remained the same at 78.767% when pulling 563a5bb1522e9399702aca87e40fac66c35ce8ad on mcadler/ase_buffer_race into e80d4040a6cc8129cfe9101c4d13f21ff973e0a3 on master.


GH-1785 isolation levels

GitHub issue resolved: #1785
Briefly describe the changes proposed in this PR:

switched over from using the interface IsolationLevel to using the class IsolationLevels
code completion for IsolationLevels now works in Intelij

I propose to use IsolationLevels directly instead of using the interface. This means that ctrl-space code completion works as expected in Intellij.
This is backwards compatible for everyone who uses RDF4J as-is, but not backwards compatible for those who extend RDF4J. Those who extend the code with their own isolation levels will need to now extend IsolationLevels instead of implementing the IsolationLevel interface.

@jeenbroekstra also propose to fix the tests with maven dep cycles by extracting them into a separate module. This is a lot less work them trying to mock stuff.

I propose to use IsolationLevels directly instead of using the interface. This means that ctrl-space code completion works as expected in Intellij.

I'm not sure I understand what you mean with this, to be honest. What exact problem are you solving here? If I type Isola<Ctrl-space> in IntelliJ, it currently offers me both IsolationLevel and IsolationLevels. So how does this change help?

This is backwards compatible for everyone who uses RDF4J as-is, but not backwards compatible for those who extend RDF4J. Those who extend the code with their own isolation levels will need to now extend IsolationLevels instead of implementing the IsolationLevel interface.

The problem with that is that IsolationLevels is an enum. It can't be extended. This is why we have the separation between the generic interface and the pre-provided isolation level types.

Is there a way to involve those parties here on github?

We have to assume that we will not able to reach all third parties that do this. But before we do that I would like a bit more discussion about the pros and cons of this change, to be honest. I'm not yet sure I understand what problem this solves.

Try typing “SNAP” + ctrl+space

Try typing “SNAP” + ctrl+space

Right. I understand the convenience of that. I don't think the current solution is quite right though. We can't give up a design feature like extensibility of supported levels for the sake of code completion convenience.

It’s really a pity that enum classes can’t be extended.

It's kind of by design: the whole point of an enum is that you have a closed (fully enumerated) set :)

I wonder if we instead can use some generics instead.

An alternative approach would be that we get rid of the IsolationLevels enum, and instead declare the "standard" isolation levels as static constants on the IsolationLevel interface, using an inner class, e.g. something like this:
      public interface IsolationLevel {

	boolean isCompatibleWith(IsolationLevel otherLevel);
	IRI getURI();

	IsolationLevel NONE = new StandardIsolationLevel();

	IsolationLevel READ_UNCOMMITTED = new StandardIsolationLevel(NONE);

	class StandardIsolationLevel implements IsolationLevel {

		StandardIsolationLevel(IsolationLevel... compatibleLevels) {
                     ....
		}

		@Override public boolean isCompatibleWith(IsolationLevel otherLevel) {
		 ....
		}

		@Override public IRI getURI() {
			...
		}
	}
}

@jeenbroekstra seeing as how I've got quite a few open PRs I think this one could be closed and if still want to implement the alternate approach where we get rid of the enum, rather than the interface than that would be great. If not then maybe I'll look at it some other time, but no need to keep a PR open in the mean time.


PageView weird behavior when changing device orientation

Steps to Reproduce

Run flutter create bug.
Update the main.dart files as follows:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Pageview Orientation Bug',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: HomePage(),
    );
  }
}

class HomePage extends StatefulWidget {
  @override
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> {
  int _page = 0;
  PageController _controller = PageController();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: PageView(
        controller: _controller,
        physics: NeverScrollableScrollPhysics(),
        children: [Page1(), Page2(), Page3(), Page4()],
      ),
      bottomNavigationBar: BottomNavigationBar(
        type: BottomNavigationBarType.fixed,
        currentIndex: _page,
        onTap: (page) {
          setState(() {
            _page = page;
          });
          _controller.jumpToPage(page);
        },
        items: [
          BottomNavigationBarItem(
            icon: Icon(Icons.library_books),
            title: Text(
              'Page 1',
            ),
          ),
          BottomNavigationBarItem(
            icon: Icon(Icons.event_note),
            title: Text(
              'Page 2',
            ),
          ),
          BottomNavigationBarItem(
            icon: Icon(Icons.pie_chart),
            title: Text(
              'Page 3',
            ),
          ),
          BottomNavigationBarItem(
            icon: Icon(Icons.more_horiz),
            title: Text(
              'Page 4',
            ),
          ),
        ],
      ),
    );
  }
}

class Page1 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Page 1"),
      ),
    );
  }
}

class Page2 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Page 2"),
      ),
    );
  }
}

class Page3 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Page 3"),
      ),
    );
  }
}

class Page4 extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Page 4"),
      ),
    );
  }
}

Step to produce bug:

Tap Page 3 or Page 4 button

Change device orientation to landscape, then change it back to potrait

GIF example explaining this bug:

Expected results: Changing device orientation work as expected without causing Page 3 and Page 4 disappear from PageView*
Actual results: Changing device orientation cause Page 3 and Page 4 to disappear from PageView view (unless we change our PageView view by tapping the BottomNavigationBar button)
flutter doctor -v result:
[✓] Flutter (Channel beta, 1.19.0-4.3.pre, on Linux, locale en_US.UTF-8)
    • Flutter version 1.19.0-4.3.pre at /home/v4vendetta/flutter
    • Framework revision 8fe7655ed2 (8 days ago), 2020-07-01 14:31:18 -0700
    • Engine revision 9a28c3bcf4
    • Dart version 2.9.0 (build 2.9.0-14.1.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /home/v4vendetta/Android/Sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /home/v4vendetta/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Android Studio (version 3.6)
    • Android Studio at /home/v4vendetta/android-studio
    • Flutter plugin version 46.0.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[!] Android Studio
    • Android Studio at /opt/android-studio
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] Connected device (1 available)
    • Redmi Note 7 • dd14c9d • android-arm64 • Android 9 (API 28)

Reproduced with current beta 1.19.0-4.3.pre and master 1.20.0-3.0.pre.192.
But not with stable 1.17.5.
Used Android 9 device and iOS 13.5 simulator.

This regressed with https://github.com/flutter/flutter/commit/98bc1766273fcdcf02f22f0bb193266b8c50145d (specifically the correctForNewDimensions logic)
@Hixie

I just found another way to demonstrate what I think is the same issue. If you take the simple Flutter documentation Codelab for TabBarView and run it in a CodePen.
Find a ready made one here: https://codepen.io/rydmike/pen/pogOwdm
The code is from the documentation, I just added a tab to it to see if it made any difference if I increased the tabs from 3 to 4, it did not. I also made the icons on the TabBarViews larger so the issue is easier to see.
Now go to the last tab in the tab bar view and slowly enlarge the browser window (right side or a right corner drag should do it), if you do it slowly enough you can see how the bike slides out to the left!
This only happens when you are on the last tab in the TabBarView and it only happens when the canvas grows, not when it shrinks. The exact same issue can be demonstrated with PageView as well, also there with the default controller when you are at the last index, the last pages slides out when you enlarge the canvas.

The issue can be demonstrated on Web, Desktop and I think the orientation change from portrait  landscape as discussed above triggers the same issue. The issue is also present on all channels from stable to master.
Talented guy on the bike btw, biking backwards is a neat trick! :grin:

Closing this as a duplicate of #60288, feel free to comment with your case there.

@markusaksli-nc The later addition is actually more of an exact duplicate of this case https://github.com/flutter/flutter/issues/60374, which is still also open, which is also just another manifestation of  https://github.com/flutter/flutter/issues/60288, and as the last one is the oldest and original report I suppose only that one should remain open, however it only talks about the orientation change, so maybe good to have one issue open that also mentions the resize issue.
Whatever way works for best, but I think they are all the same issue.

#60288 has Hixie assigned to it and has the P2 label. What is most important is that all relevant cases get mentioned there. I would personally retitle it to encompass all of these issues but I'll refrain from changing team member issues too lightheartedly. They might still want to keep the window resizing issue separate. I'm sure Hixie will react as he sees fit.

@markusaksli-nc Agreed and I suspect solving the orientation issue might solve the resize issue too. The reported resize issues are referenced in https://github.com/flutter/flutter/issues/60288 now, so yes I'm sure @Hixie will notice and address both cases if applicable, they "have to" be related... 😀

The fix (https://github.com/flutter/flutter/pull/63146) that solved this issue has been reverted since it was failing some tests.
This issue report is however a duplicate of the older report https://github.com/flutter/flutter/issues/60288, so I recommend we keep this report closed and track future progress only via https://github.com/flutter/flutter/issues/60288 that has been reopened.


fix error for "npm run update-schema" when schema.json was empty

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at<EMAIL_ADDRESS>Thanks!

Is it not desirable to have an exception thrown when schema.json is empty? Under what circumstances would you want an empty object instead of a plugin?

Closing this one due to inactivity. Feel free to comment if you think this should be reopened.


[srt] New port 1.5.0

Describe the pull request

What does your PR fix?
Add SRT port

Which triplets are supported/not supported?

Yes

Thanks for your PR. There are some suggestions about format in portfile.cmake.
Under normal circumstances we would not accept new libraries with such short names, is it possible to use libsrt instead of srt?