RedirectToAction with Non-English Characters in Parameters and Authentication Causes Error

By default Asp.Net Core encodes non-english characters in view.
Let's create a very simple controller:
public class HomeController : Controller
{
	public IActionResult Index(Parameters param)
	{
		return View(param);
	}

	public IActionResult ToIndex(Parameters param)
	{
		return RedirectToAction("Index", param);
	}

	public class Parameters
	{
		public String Name { get; set; }
	}
}

and a very simple View, which greets a user:
@model TestNonEngLetters.Controllers.HomeController.Parameters
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
    </head>
    <body>
        Hello, @Model.Name!
    </body>
</html>

If Name contains non-english characters (e.g. Jörn) it gets encoded:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
    </head>
    <body>
        Hello, Jörn!
    </body>
</html>

If we don't want this kind of encoding there is a way to turn it off. We need to add this line of code to Startup.cs:
services.Configure<WebEncoderOptions>(options => options.TextEncoderSettings = new TextEncoderSettings(UnicodeRanges.All));

Now our html becomes pretty good:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
    </head>
    <body>
        Hello, Jörn!
    </body>
</html>

Our Startup.cs looks like this:
public class Startup
{
	public void ConfigureServices(IServiceCollection services)
	{
		//services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme);

		services.AddMvc();
		services.Configure<WebEncoderOptions>(options => options.TextEncoderSettings = new TextEncoderSettings(UnicodeRanges.All));
	}

	public void Configure(IApplicationBuilder app, IHostingEnvironment env)
	{
		if (env.IsDevelopment())
		{
			app.UseDeveloperExceptionPage();
		}

		app.UseMvc(routes =>
		{
			routes.MapRoute(
				name: "default",
				template: "{controller=Home}/{action=Index}/{id?}");
		});
	}
}

Let's invoke our ToIndex action, that must redirect us back to Index:
public IActionResult ToIndex(Parameters param)
{
	return RedirectToAction("Index", param);
}

So we invoke page http://localhost:2616/Home/ToIndex?Name=Jörn and receive expected 302 response with location=/?Name=J%C3%B6rn http header.
Everything works just fine... until we add authentication to our project. See the commented line in Startup.cs?
//services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme);

Let's uncomment it and invoke our ToIndex action again.
And what we get?
InvalidOperationException: Invalid non-ASCII or control character in header: 0x00F6

    Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.FrameHeaders.ThrowInvalidHeaderCharacter(char ch)
    Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.FrameHeaders.ValidateHeaderCharacters(string headerCharacters)
    Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.FrameHeaders.ValidateHeaderCharacters(StringValues headerValues)
    Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.FrameResponseHeaders.SetValueFast(string key, StringValues value)
    Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.FrameHeaders.Microsoft.AspNetCore.Http.IHeaderDictionary.set_Item(string key, StringValues value)
    Microsoft.AspNetCore.Http.Internal.DefaultHttpResponse.Redirect(string location, bool permanent)
    Microsoft.AspNetCore.Mvc.Internal.RedirectToActionResultExecutor.Execute(ActionContext context, RedirectToActionResult result)
    Microsoft.AspNetCore.Mvc.RedirectToActionResult.ExecuteResult(ActionContext context)
    Microsoft.AspNetCore.Mvc.ActionResult.ExecuteResultAsync(ActionContext context)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+<InvokeResultAsync>d__19.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+<InvokeNextResultFilterAsync>d__24.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResultExecutedContext context)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(ref State next, ref Scope scope, ref object state, ref bool isCompleted)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+<InvokeNextResourceFilter>d__22.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(ref State next, ref Scope scope, ref object state, ref bool isCompleted)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+<InvokeFilterPipelineAsync>d__17.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker+<InvokeAsync>d__15.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    Microsoft.AspNetCore.Builder.RouterMiddleware+<Invoke>d__4.MoveNext()
    System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware+<Invoke>d__7.MoveNext()

it looks like now, when authentication module is in place, asp.net core is not able to set location header correctly.
So, maybe we have chosen the wrong way to deal with encoding of non-english characters or is it a bug in framework itself?

Thanks for contacting us, @busyscout. Can you please share a sample repro project with us to investigate?

@dougbu, can you please investigate this? Thanks

@busyscout within MVC, a UrlEncoder instance ensures invalid characters are not present in the generated URL. Because you're completely disabling the encoder, FrameHeaders.ValidateHeaderCharacters(...) fails. Recommend enabling only the specific Unicode ranges of particular interest, not using UnicodeRanges.All.
Please also see https://docs.microsoft.com/en-us/aspnet/core/security/cross-site-scripting#encoding-url-parameters which specifically mentions problems with including user data directly in a URL.

I want to disable encoding of non-english characters in generated html. Not in url. Because encoded symbols make my page 2 times bigger in kilobytes. And it seems to me, that there is no right way to do it. I think, it is an architectual issue in framework itself.
And if you look at the code I've provided - no url is created by hand, I use standard method RedirectToAction - and this method raises exception. And it works correctly until we add authentication module to mvc, that is strange. Seems to me there is some problem in auth module.


unknown attribute 'frozen' @frozen

While building swift api package on macos getting this error.
PS, I am using Xcode 10 | v0.3.1 | April 30, 2019 keychain binding. Let me know what I am missing.
Compile Swift Module 'TensorFlow' (36 sources) /Users/rajat/Documents/research/swift_tensorflow/swift_dl/swift_dl/Sources/TensorFlow/Core/DataTypes.swift:149:2: error: unknown attribute 'frozen' @frozen  ^ /Users/rajat/Documents/research/swift_tensorflow/swift_dl/swift_dl/Sources/TensorFlow/Core/ShapedArray.swift:428:2: error: unknown attribute 'frozen' @frozen  ^ /Users/rajat/Documents/research/swift_tensorflow/swift_dl/swift_dl/Sources/TensorFlow/Core/ShapedArray.swift:822:2: error: unknown attribute 'frozen' @frozen

@MeRajat, are you building with nightly?

That was quick. Thanks :)


feature request: add a cleaner skip test option

Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [x] feature request

Desired functionality.

currently there is a --skip-test option to avoid generating spec files and a --minimal option to disable all unnecessary features.
but there isn't a proper way to turn off test feature.
if I want to create a project just without test, I have to:
1. create a project with --minimal
2. add .editorconfig, tslint.json,
3. add tslint, codelyzer to devDependencies in package.json
4. delete inline style and inline template in angular-cli.json
5. git init

or
1. create a project with --skip-test
2. delete test related scripts from package.json
3. delete test related devDependencies from package.json
4. add many "spec": false to .angular-cli.json

both of them are complicated, all I want is just don't need test.
request to add a option to disable all test related features but keep other.

The options and abilities of the engine that generates files has recently been updated (see PR #7090) which will allow you to define your own structure/options.
Documentation for this will be coming with examples.


RFC #5 - New Migration Schema

Foreword
This RFC describes the new migration schema, which is needed to better support safe migrations. This will solve problems that currently exists with:

Rollbacks of actions within migrations
Continuation of aborted migrations (i.e. when the server was crashing while executing)
Zero Downtime compatible operations

Requirements
It is required to have any action, an action will describe as a single operation like renameColumn, within a migration directly linked with its reversion. An action may in some occassions be of a deterministric nature and directly revertable without further description of the rollback routine.
Backwards Compatibility
There is no need to keep compatible to any old migration schema, as migration schemas are excplicitly versioned by their _meta export. However, drivers may not be affected and should not have the need to change.
Effects on issues
This RFC will have effects on the following issues:

#410
#383

Referencing some recent commenters for opinions @BorntraegerMarc @GeeWee @westy92 @RemyJeancolas

A first suggestion might be something like this:
On completely deterministic components ending up as easy as this:
exports.migrate = db => {
   return db.createTable('table1', { imagineoptions: 'here' }); // this is it, we know the reverse of createTable which always is dropTable
}

On non deterministic components:
exports.migrate = db => {
   return db.dropTable('table1')
    .reverse(() => db.createTable('table1', { imagineoptions: 'here' })
    .then(() => db.someOtherAction());
}

Question here would be, are we explicitlly enforcing to provide a reverse. And currently it seems to me like this wouldn't be that readable, so probably the first naive, but not perferct attempt. May be it should look something more like this:
exports.migrate = db => {
   return db.atomic({
       up: db.dropTable('table1'),
       down: db.db.createTable('table1', { imagineoptions: 'here' })
     })
    .then(() => db.someOtherAction());
}

Also a chance to get rid of setup, including them as second parameter as options:
exports.migrate = (db, dbm) => {
  db.driverDoesStuff();
  console.log(dbm); // all that informational or additional stuff
}

To note the final version would be the official version 2 of the migrations schema.

Referencing driver devs as well @charyorde @yashin32 @etops

Oh forgot @toymachiner62

Since the code samples are using async, are you planning on bumping the required node version or using babel?  It would certainly help simplify the codebase.

@wtgtybhertgeghgtwtg Yes and no. I will never use babel, but I will definitely drop backwards support to the most outdated versions. Current plan is down to node 4.

Looking at the distribution of node versions though. People are currently only starting to move over the new LTS though. It is a bit to early to also drop node 4.

After reading this issue 3-4 times I came to the realization that I have no clue what it means 😄 as you described it, backwards compatibility isn't a problem: so on my side everything looks good

It is about getting thoughts on possible new schemas that migrations evolve into, like my first attempt over here https://github.com/db-migrate/node-db-migrate/issues/508#issuecomment-341128034 :)

Any thoughts on the interface for creating a rollback, then reverting it automatically upon error?
If the migration is operated by a CI I wouldn't want constant up and rollback migrations without history logged to the migration table.

@stevelacy Can you elaborate a bit more? What exactly you want to know? What do you specify as "creating rollback"?

If a migration hits an error it probably should attempt to automatically (if configured) rollback the failed changes, especially if it is controlled by a CI. The interface is the way a CI or human would manage the failed action.

This is actually the meaning of atomic operations and is already thought of:
https://github.com/db-migrate/node-db-migrate/issues/508#issuecomment-341128034

Together with the new migration schema, db-migrate will introduce also revertable strategies for some of the non revertible actions. Specifically this means interfaced actions. Custom sql will remain unpredictable.
Dropping Tables
db-migrate will use the information and optionally store the actions themself directly assigned with their targets. That means the createTable of table xyz and addIndex of table xyz can be directly reexecuted as a reversion of a drop table. runSql and other non interfaced methods will get a new parameter which will give the user the possibility to add the necessary information which tables his action will actually adjust. This parameter, while optional shall throw warnings if it is unset. It can be set to null to explicitly define no altered target, which will also stop throwing the warning.


Disable <Field type="" ... /> messing with values when custom input provided.

Are you submitting a bug report or a feature request?

Feature request
What is the current behavior?

Currently if we pass type="radio" input.value would be undefined, but checked = true/false. And thats ok, if component="input"
What is the expected behavior?
If component is set to custom, type shouldn't mess with the whole input.value workflow.
Sandbox Link

https://codesandbox.io/s/wBENp92X
As you can see, I've created one custom input on top of material-UI RadioButton. I didn't want the form to be coupled with the options rendering (since i've got a lot of forms like this across the app, and if anything changes I would need to change it everywhere across the app). So I've bumped into a problem, that if I set type="radio" (checkbox as well) the Field works like  returning checked instead of value that I'm setting with onChange.
What's your environment?

redux-form 6+
Other information

Redux-Form has it's API, and Material-UI has it's API, and just because they don't directly talk doesn't necessarily imply either of them are wrong... For your feature suggestion to be convincing I think it'd need to state why "messing with the flow" in this way is just wrong in general, not just for integrating two libraries, for which a documented adaptor is available.

@danielrob I don't imply that redux-form is wrong, it's great! it just took me a couple of hours to realise, that even when you pass your own component renderer to "component" property, redux-form tends to work with this component as it's still .
Btw, this has nothing to do with MaterialUI, in this case it's just copy-pasted example.

@ilyadoroshin ok so it seems like this is a documentation issue. A workaround might be using
<Field
  component={component}
  props={{
    type="radio"
  }}
/>

if you want to avoid the behaviour.

@danielrob I've managed to get rid of type="radio" in the end, and of course there's plenty of ways to workaround :) it's just logical to disable out-of-the-box behaviour if you're creating your own renderer, isn't it?
thanks anyways

@ilyadoroshin the issue you raise is right, but not right on the money ;). Even for custom components, type=radio is currently how you can ask Field to give you the right props to render a controlled radio button. It just happens in your case that those aren't the right props for material-ui which presumably manages it's own checked state.

@danielrob that's why it's not an issue but feature request :)
closing then


use clang for coverage

Use Clang when generating coverage data. It is faster than GCC and
reports higher branch coverage.
Coverage reports are now generated with lcov rules and CI is updated
to use //tools:lcov_list.
Change-Id: I84311f28070a13520684349e8e4ebfb538a7d002

test coverage has decreased but I think that was due to a mistake in the target specifications

test coverage has decreased but I think that was due to a mistake in the target specifications

this commit now adds branch coverage data which did not exist before. codecov is now considering some lines partially covered when it used to consider them fully covered.

https://github.com/garymm/starflate/pull/121


Added new example to show removing the sample SMA runbooks with DSC

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

README.md, line 122 [r1] (raw file):
Can you add a description of new example here along with file name.

Comments from Reviewable

Updated. Thanks!

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

README.md, line 122 [r1] (raw file):
Done.

Comments from Reviewable


Hbase 28467 Fix Unit test

Change-Id: Ibb7b1ecb2d084ce190c15eed5b3bc42ca32ceffb

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 41s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ HBASE-28463 Compile Tests _

+1 :green_heart:
mvninstall
2m 52s
HBASE-28463 passed

+1 :green_heart:
compile
2m 43s
HBASE-28463 passed

+1 :green_heart:
checkstyle
0m 38s
HBASE-28463 passed

+1 :green_heart:
spotless
0m 44s
branch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
1m 33s
HBASE-28463 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 55s
the patch passed

+1 :green_heart:
compile
3m 11s
the patch passed

+1 :green_heart:
javac
3m 11s
the patch passed

+1 :green_heart:
checkstyle
0m 42s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
5m 28s
Patch does not cause any errors with Hadoop 3.3.6.

+1 :green_heart:
spotless
0m 49s
patch has no errors when running spotless:check.

+1 :green_heart:
spotbugs
1m 47s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 11s
The patch does not generate ASF License warnings.

32m  3s

Subsystem
Report/Notes

Docker
ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5941

Optional Tests
dupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile

uname
Linux e0aff088964e 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
HBASE-28463 / 3a701b933e

Default Java
Eclipse Adoptium-11.0.17+8

Max. process+thread count
81 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/console

versions
git=2.34.1 maven=3.8.6 spotbugs=4.7.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 41s
Docker mode activated.

-0 :warning:
yetus
0m  2s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ HBASE-28463 Compile Tests _

+1 :green_heart:
mvninstall
3m  0s
HBASE-28463 passed

+1 :green_heart:
compile
0m 49s
HBASE-28463 passed

+1 :green_heart:
shadedjars
5m 18s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 28s
HBASE-28463 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 47s
the patch passed

+1 :green_heart:
compile
0m 50s
the patch passed

+1 :green_heart:
javac
0m 50s
the patch passed

+1 :green_heart:
shadedjars
5m 15s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 26s
the patch passed

_ Other Tests _

-1 :x:
unit
262m 24s
hbase-server in the patch failed.

287m  0s

Subsystem
Report/Notes

Docker
ClientAPI=1.45 ServerAPI=1.45 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5941

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux c77aa8ce650e 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
HBASE-28463 / 3a701b933e

Default Java
Eclipse Adoptium-11.0.17+8

unit
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/testReport/

Max. process+thread count
4951 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 27s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ HBASE-28463 Compile Tests _

+1 :green_heart:
mvninstall
2m 43s
HBASE-28463 passed

+1 :green_heart:
compile
0m 40s
HBASE-28463 passed

+1 :green_heart:
shadedjars
5m 40s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 24s
HBASE-28463 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
2m 24s
the patch passed

+1 :green_heart:
compile
0m 38s
the patch passed

+1 :green_heart:
javac
0m 38s
the patch passed

+1 :green_heart:
shadedjars
5m 37s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 22s
the patch passed

_ Other Tests _

-1 :x:
unit
268m 40s
hbase-server in the patch failed.

292m 24s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/5941

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 50b37cdef6e3 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
HBASE-28463 / 3a701b933e

Default Java
Temurin-1.8.0_352-b08

unit
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/testReport/

Max. process+thread count
4780 (vs. ulimit of 30000)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-5941/1/console

versions
git=2.34.1 maven=3.8.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


Add meshery & slack logo to the readme

Description

There are logos in README.md that have very low contrast in light/dark mode.
i.e Meshery Logo (In Dark Mode and Light Mode) & Slack Logo in Light Mode
Expected Behavior

Changing the logos for dark/light mode with high contrast
Screenshots

Enviroment:

OS: Windows
Browser: Chrome
Version:
Device: Desktop

Contributor Guides and Handbook
The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

📚 See the Contributing to Meshery.io Website section of the readme.md and other contributing instructions, too.
🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

I would like to work on this issue. Can you please assign it to me?


can't find the train code of PAF

Hello! Firstly, I would like to express my gratitude for your excellent work. However, it seems that I haven't found the training code for PAF in the hub. Could you please upload it? Thank you very much.

Hello, the training code for the PAF dataset has been released.


Support multiple execution endpoints

Description
It could be a good feature to support multiple execution endpoints. In the future we could feature different strategies in interacting with them, but for initial feature just fallback in the order of endpoints provided could be enough.
So, the options flag should be able to accept several endpoint URIs, and when any endpoint query is happened, if first endpoint is failed, we use 2nd etc

It turns out that one BN couldn't interact with several ELs, it will lead to inconsistency. So this issue is not relevant and couldn't be solved.
Instead several (BN-EL) pairs could be used for VCs failover. It's implemented in #5926 and a lot of others mentioned as a fix for #5237


dex_utils: the xyk solver sometimes returns negative solutions

dex_utils::xyk::solve computes the individual pool invariants of the x*y=k curve, it sometimes returns negative solutions which are nonsensical in this context. Instead, of failing when we encounter negative solutions, we should bake in the solver that we expect positive solutions, fail early if we detect a system to be non-convergent, or proceed otherwise.

This can be sidestepped entirely during solving, which we will have to do as part of doing bounded liquidity for #4112


Insert new mail merge fields using sablon

Is there a way to let Sablon insert mail merge fields into the word template?
This would be helpful to build the template in the first place.
I imagine the following workflow:

Build context object in Ruby
Create the template with a merge field called something like allFields
Run Sablon once to have it generate new merge fields for the whole context and insert them in the position of allFields.

Hey @coezbek the word templates are finicky at times since docx files aren’t really designed in a friendly way to interact with outside of MS word itself.
That being said I’m not quite sure I understand. Are you meaning to insert the all the fields in the doc so that one could copy and paste them around?

Yes, I meant to insert all entries from the context as fields into an
intermediate template to then move them around to produce a final template.
On Thu, 30 Sep 2021, 17:04 Matthew Stadelman, @.***>
wrote:

Hey @coezbek https://github.com/coezbek the word templates are finicky
at times since docx files aren’t really designed in a friendly way to
interact with outside of MS word itself.
That being said I’m not quite sure I understand. Are you meaning to insert
the all the fields in the doc so that one could copy and paste them around?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/senny/sablon/issues/175#issuecomment-931406302, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AC4Q2TZPGVZRCMSZXQZ6JMLUER4AVANCNFSM5FBQUWPQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


onDelete passing incorrect props

To reproduce:
<DataEditor
  ...
  rowMarkers="both"
  onDelete={(sel)=>sel}

/>

Deleting cell [x,y] deletes [x-1,y] instead.

Fixed in 4.0.3


react-native-google-places-autocomplete not working on React native 0.61

Hi,
I have added react-native-google-places-autocomplete with yarn in my react-native cli project but it is not working. Here are the issues I am facing at the moment.

the places drop down is not showing up on IOS, however the input text field allows me to enter a place name but the predictions list does not appear

onPress handler is not triggered at all on both IOS and android

The Text Input coming from react-native-google-places-autocomplete does not allow me to enter anything on ANDROID. It is like disabled all the time ( although the focus is set to true)

Note: all google location apis are enabled , google maps api, places api and geocode api are enabled and a valid api key is given.
I tried all possible solutions available including the following:

setting zIndex: 1000 a high value to avoid it being hidden behind some other view

Tried creating new RN App and added only this component to keep the project clean

Regenerating the API and even using another api which works with previous versions of REACT NATIVE.

The logs don't show anything on both Xcode and Android Studio. Here is the code snippet:
                 <View style = {[{zIndex: 2, backgroundColor: 'white'}]}>
				<GooglePlacesAutocomplete
					ref = {ref => setSearchTextRef(ref)}
					placeholder='Search for gym'
					styles={{
						container: {backgroundColor: 'transparent'},
						textInputContainer: styles.viewStyle,
						textInput: styles.textInputStyle,
					}}
					keyboardShouldPersistTaps = {'handled'}
					listUnderlayColor = {'transparent'}
					textInputProps = {{
						onFocus: () => focusInput(),
						onBlur: () => blurInput(),
						onChangeText: (text) => onChange(text)
					}}
					minLength={1} // minimum length of text to search
					returnKeyType={'search'}
					listViewDisplayed={'auto'}   // true/false/undefined
					fetchDetails={true}
					renderDescription={row => row.description} // custom description render
					onPress={(data, details = null) => {
						let coordinates = details.geometry.location;
						sendCoordinates(coordinates, {data, details});
					}}
					getDefaultValue={() => ''}
					query={{
						key: googleAPIKey,
						language: 'en', // language of the results
						// types: '(cities)' // default: 'geocode'
					}}
					nearbyPlacesAPI='GooglePlacesSearch' // Which API to use: GoogleReverseGeocoding or GooglePlacesSearch
					GooglePlacesSearchQuery={{
						rankby: 'distance',
						types: 'gym'
					}}
					filterReverseGeocodingByTypes={['locality', 'administrative_area_level_3']}
					debounce={200}
				/>
			</View>

Thank you in advance

I'm observing the same issue but only in some scenes in my app - I'm not 100% sure that's the cause but I suspect it won't work because it's inside a modal component. It works fine somewhere else in the app though.
Any thoughts?

Actually just solved it by following the steps here

Im having this kind of problem to. unable to fetch search places

This package is no longer maintained and simply not working. I tried on IOS with expo. I didn't even get a list of results. I found a other package that is working like a charm:
https://www.npmjs.com/package/react-native-places-input

Hi guys.
I was having the same issue with this lib, and after try for some hours, i find a solution.
The problem was in the billing configuration on google APIs.
Try configure the project what you are using key for and active billings configurations, it solved my problem. try it and tell me if it works.
Obs. I'm sorry about the poor english, but I hope this can help you.

Any solution?

@ahmadali9289 using the code you provided, this works as expected for me.

textInputProps = {{
    onFocus: () => focusInput(),
	onBlur: () => blurInput(),
	onChangeText: (text) => onChange(text)
}}```

You didn't indicate what these functions do, this could be the problem.
Another likely cause is that your component is wrapped within a ScrollView.

I can't reproduce this, so i'm going to close this. If you encounter this, and this is still a problem for you, please open a new issue (please follow the issue template).

i'm facing the same problem, but only happens with IOS. I cant click in none of listview items(except if i click randomly several times over they)

Am not sure if anybody else had/have this issue.. I too got this error on searching I saw onFail is available.  onFail={error => console.log('error' + error)} this will give you error. If suppose the error is something like This IP, site or mobile application is not authorized to use this API key. Request received from IP address $someipaddress, with empty referer. Then do create a SERVER KEY instead of normal api key. Creating a server key is same like creating api key. Under the heading Application Restrictions select IP addresses instead of none. thus you are good. This was my trouble. Hope no one else will be stuck around this. Also make sure billing is enabled for your project.

Hope this helps someone

I'm not getting any list. any solution?

same issue here got stuck on this for more than 5 hours.

same issue here got stuck on this for more than 5 hours.

Hi , did you find any fix?

Same issue, I've yet to find an google address autocomplete component that actually works.

can't see the autocomplete of google places someone knows why? I wrapped the component with a view and add the style of height: "100%" and it's not the problem...

If I can still help someone, here is what I did to fix the not showing list issue :
container: {        flex: 0,   },
Applied to styles of

I'm observing the same issue but only in some scenes in my app - I'm not 100% sure that's the cause but I suspect it won't work because it's inside a modal component. It works fine somewhere else in the app though.
Any thoughts?

You were right. I faced the same issue with a modal. I removed it and used a view with position "absolute"

Hello everyone,
I had the same problem. My code format was this:
After all the solutions i tried nothing was working. Even though I had everything completed even the billing configuration on the google APIs, the the places drop down just wasn't showing.
So at start I reinstalled GooglePlacesAutocomplete with "yarn add react-native-google-places-autocomplete", if you have npm do the "npm i react-native-google-places-autocomplete".
Then I added these two imports again from the start:
import { GooglePlacesAutocomplete } from "react-native-google-places-autocomplete";
import { GOOGLE_MAPS_APIKEY } from "@env";
Then  I  rewrote GooglePlacesAutocomplete & GOOGLE_MAPS_APIKEY in my code:
<GooglePlacesAutocomplete
placeholder="Where From?"
styles={{
container: {
flex: 0,
},
textInput: {
fontSize: 18,
},
}}
query={{
key: GOOGLE_MAPS_APIKEY,
language: "en",
}}
nearbyPlacesAPI="GooglePlacesSearch"
debounce={200}
/>
so they define the "new imports" and do the command "yarn install" on my project file even though it was already up to date.
Lastly, I restart my project with clean cache using the command "expo r -c".
Magically, it worked!
Hope, that helps someone in the future!

If I can still help someone, here is what I did to fix the not showing list issue :
container: { flex: 0, },
Applied to styles of <GooglePlacesAutocomplet />

This worked for me. For people who thought this could be related to enable billing, first check something like this to see if the api is returning data:
renderRow={(rowData) => {                 const title = rowData.structured_formatting.main_text;                 const address = rowData.structured_formatting.secondary_text;                 console.log('title & address:', title, address);                 return (                     <View>                         <Text style={{ fontSize: 14 }}>{title}</Text>                         <Text style={{ fontSize: 14 }}>{address}</Text>                     </View>                 );             }}

this worked for me :
<GooglePlacesAutocomplete
placeholder="Search"
minLength={2} // minimum length of text to search
fetchDetails={true}
onPress={(data, details = null) => {
// 'details' is provided when fetchDetails = true
console.log(data);
console.log(details);
}}
query={{
// available options: https://developers.google.com/places/web-service/autocomplete
key: apiKey,
language: 'en', // language of the results
}}
styles={{
description: {
fontWeight: 'bold',
},
predefinedPlacesDescription: {
color: '#1faadb',
},
listView: {
color: 'black', //To see where exactly the list is
zIndex: 1000, //To popover the component outwards
position: 'absolute',
top: 45
},
}}
currentLocation={true} // Will add a 'Current location' button at the top of the predefined places list
currentLocationLabel="Current location"
nearbyPlacesAPI="GooglePlacesSearch" // Which API to use: GoogleReverseGeocoding or GooglePlacesSearch
GoogleReverseGeocodingQuery={
{
// available options for GoogleReverseGeocoding API : https://developers.google.com/maps/documentation/geocoding/intro
}
}
GooglePlacesDetailsQuery={{
// available options for GooglePlacesDetails API : https://developers.google.com/places/web-service/details
fields: 'formatted_address',
}}
filterReverseGeocodingByTypes={[
'locality',
'administrative_area_level_3',
]} // filter the reverse geocoding results by types - ['locality', 'administrative_area_level_3'] if you want to display only cities
/>


[Bug] CameraView not avaiable in UWP MauiCompat, even though the code is here

Description
When I create a new MAUI project, and add the latest Xamarin.CommunityToolkit.MauiCompat NuGet package, and then try to use a CameraView, the project refuses to compile on Windows, saying that it's "not avaiable", which must be the mistake, because I can see the code right here: https://github.com/xamarin/XamarinCommunityToolkit/blob/main/src/CommunityToolkit/Xamarin.CommunityToolkit/Views/CameraView/UWP/CameraViewRenderer.uwp.cs
Steps to Reproduce

Create new MAUI project
Install-Package Xamarin.CommunityToolkit.MauiCompat -Version 2.0.1-preview1007
try to reference CameraViewRenderer somewhere in code, then compile on Windows

Expected Behavior
Project compiles and CameraView works
Actual Behavior
VS complains
Basic Information

Version with issue: latest version Xamarin.CommunityToolkit.MauiCompat 2.0.1-preview1007
Last known good version: never, older versions are broken too
IDE: latest version VS 2022 and MAUI Preview 14
Platform Target Frameworks:

iOS:  net6.0-ios;net6.0-maccatalyst
Android: net6.0-android
UWP:  net6.0-windows10.0.19041

Nuget Packages:
Affected Devices:

Workaround
Reproduction imagery

@StonedHackerman can you confirm that you're targeting an UWP app? Because .NET MAUI doesn't support UWP but WinUI3

Yes, I am targeting an UWP app

@StonedHackerman not sure if we still have an issue with the Windows target, but in your scenario, it shouldn't work, since .NET MAUI doesn't support UWP applications.
So I'll close this issue. If you change your project to be a WinUI3 project and still see the error comment here and we'll reopen this issue or you can create a new issue with more info and a sample project (:

sorry, I'm actually confused, I thought UWP and WinUI3 mean the same thing in this context, and I always read that MAUI supports Android, IOS and Windows, and when you create the project, under the Platforms directory, there is a Windows subdirectory, so I meant whatever "Windows" means in this context. Sorry for my ignorance 😅.
I just created an empty MAUI app, switched target framework to net6.0-windows10.0.19041 and clicked run.
I attached a sample app here, as well as detailed screenshots of what I did.

Sample.zip

@pictos MauiCompat doesn't support UWP apps, so we do not migrate and build the project. I think this won't be fixed

@VladislavAntonyuk I know, but he's using WinUI. He should got confused by names

that is why it doesn't work. We didn't migrate XCT UWP to XCT MauiCompat WinUI, because WinUI doesn't have the all features which are available for the UWP.

Oh I see now! Good to know, well closing this again.


Support for multiple hover targets under the cursor

In Swift, a type can also be used as as an initializer (constructor) and the hover for Xcode returns both the type documentation and the documentation for the initializer.
let _ = URL(string: "http://example.com")
         ^
       request hover from cursor here

How these appear in Xcode are shown below.
Type hover doc

Initializer hover doc

Would it make sense for LSP to also support an array of Hover items as a response to the Hover request?
Also in the screenshots I shared, once the hover is presented, it's possible to switch between declarations shown at the top, so the top part acts somewhat like a "table of contents" of sorts for the resolved declarations. If multiple hover items are to be supported, it would be useful to have a field in Hover response for the resolved declaration, possibly of type MarkedString or MarkupContent.

This would be useful for HLS. We have multiple different pieces of information that we provide in hovers, and at the moment we just concatenate them all together with some headers. It's not terrible, but a more structured approach would be nice.

I personally would like to see a more "streaming" approach to hovers.
In vscode, you can registerHoverProvider and do it multiple times for a language for multiple contributions, and all are invoked in parallel and merged based on response time.
For the LSP, the best way to implement this would be to support a server -> client hover Refresh similar to inlay Refresh https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_inlineValue_refresh so servers can report updates to hover requests, the client then issues a new hover, gets the more detailed hover via a new hover request (after a longer running evaluation like getting a variable value or help docs for instance), and refreshes the client.
An additional property to the hover response as a progress token (in addition to the standard progress for the initial hover) could allow the client to surface the progress of the additional hover evaluation fetch until the refresh is ready to be prompted.
All of this would of course need an additional clientCapability to enable.


[Julia] move topn definition into body of @threads

Julia is worried that topn might be mutated and so deoptimizes. The Julia people should really figure this out because there is literally only one assignment to topn, but whatever, moving the definition into the body of the loop speeds things up.
I also removed trailing whitespace.

Julia is worried that topn might be mutated and so deoptimizes. The Julia people should really figure this out because there is literally only one assignment to topn, but whatever, moving the definition into the body of the loop speeds things up.

This small (well - not so small given the deoptimization effect) thing speeds things up by about 20% (8ms -> a little over 6ms on my machine).

Is this the same https://discourse.julialang.org/t/using-an-assignment-outside-of-threaded-for-loop-degraded-performance-by-a-huge-amount/105552 but much worse?


It doesn't work on Django 3.0 by the library from django.utils import six

I had to install six separately and change the import statement accordingly. Whilst the data is displaying I still haven't managed to get the editor buttons working ("add", "edit", "delete"). Any further advice on this?

Confirming the issue here
To provide some more context for this issue, the vendor library six was removed in Django:
https://docs.djangoproject.com/en/3.0/releases/3.0/#removed-private-python-2-compatibility-apis
This package needs to be patched to either depend on six, or have the compatibility removed.
Haven't checked out the buttons issue yet.

Thank you for your interest! I am sorry I have delayed this update. I have published version 0.3.3 with support of Django 3.0.


Generate TypeScript declarations using new JS IR backend

Kotlin 1.4.0 supports generating TypeScript (TS) declarations with the new JS IR backend. This would be nice, so we don't have to maintain the currently manually-written ones.
However, to create TS declarations the @JsExport needs to be applied to classes. This currently fails for classes with companion objects: https://github.com/Kotlin/kotlinx.serialization/issues/980#issuecomment-685874328
And, there are limitations we need to look into: e.g., Long cannot be exported (yet?).

I now upgraded to Kotlin 1.5.10 (can't upgrade to 1.5.20 yet due to a multimodule regression bug). I tried enabling the IR backend for JS and got: java.lang.IllegalStateException: Symbol with IrTypeParameterSymbolImpl is unbound
This might potentially be fixed in 1.5.20, but we'll have to wait to find out.

Upgrading to Kotlin 1.5.30 now seems blocked by a compiler error for the JVM target: "Backend Internal error: Exception during IR lowering" of StudyProtocolSnapshot.
This should be fixed in the next release, after which we can attempt another switch to the JS IR backend: https://github.com/Kotlin/kotlinx.serialization/issues/1584

Upgrading to Kotlin 1.6.0 still seems to result in a kotlinx.serialization compiler plugin error for the JVM target: "Backend Internal error: Exception during IR lowering".
While a bug with the same exception message is fixed in 1.6.0, the same error now seems to happen for a different reasons: https://github.com/Kotlin/kotlinx.serialization/issues/1770
Additionally, type inference fails after upgrading to 1.6.0: https://youtrack.jetbrains.com/issue/KT-49838 This is less of a blocker since the types can simply be specified manually as a workaround.

1.6.10 fixed the previously reported issues. But, seemingly exporting enum classes isn't supported yet. This seems to be slated for 1.6.20.

Can't generate TS declarations yet for enums and interfaces. The following types therefore don't have TS declarations yet on the JS IR branch.
common:

enums:

Trilean,
RecurrenceRule (contains Frequency),
DataTimeType,
Sex
Granularity
WebTask (contains UrlVariable)
TaskControl (contains Control)

interfaces:

Data
InputElement<TData>
DeviceRegistrationBuilder
SamplingConfiguration and SamplingConfigurationBuilder
TaskDescriptor
AccountIdentity

The generated JS sources on IR by default no longer have separate JS files per module. This is causing some problems to consume this multi-project library in JS. However, seemingly there is an option to enable per module JS files on the IR backend: https://youtrack.jetbrains.com/issue/KT-44319
We need to investigate what is best.

Can't generate TS declarations for classes which contain suspend functions. I therefore currently removed @file:JsExport for all request objects, since they contain invokeOn overrides. Or, is there a way to only export the type/constructor?

Compilation error occurred when using @file:JsExport on infrastructure/Serialization.kt, which contains the default configured JSON.
But, now it compiles and we have separate JS files per module! The question remains, though. How do we deal with the things that can't be JsExport'ed? Can we somehow still write accessors for them manually as we did for LEGACY?

Had to remove JsExport from the following classes since since the generated TS declaration caused problems:

EnumObjectMap
Measure
ParticipantAttribute

They contained private constructors, yet other generated classes were specified as extends, which apparently is not allowed in TypeScript. This is thus a likely bug with generated classes we need to report (or see whether it is reported already) to JetBrains.

Fixed in https://github.com/cph-cachet/carp.core-kotlin/pull/442


Refining Vision Processing & Incorporating Topics

We've been trying to find the best way to use the image topics the realsense-ros launch files publish. The image\color\raw.. topic would be useful to be able to grab from for a simple current frame the camera sees or for a live feed. The problem arises with the Ros limitations of only being able to have one node per script. Since the moveManipulator node is always active for any robot motion, creating another node for the image topic subscriber isn't possible in the same script.

Possible solutions:
-Use subprocess.call on an image topic subscriber to overwrite a local image file to load from whenever needed.
-Reorganize script/ros structure to do all work with topics apart from script with the moveManipulator node. Output final movement information to a text file/.npy that the movement script loads and executes.

Progress is continuing on this as the project is being refactored.
Ref Commits: f2f36098dc6742bb0f1427c7b61899a890de1ac0 0bfd416fd4b338b08700f4a6a87d7b642d236ab9
This issue to be resolved by upcoming refactor PR.

Issue resolved by understanding ROS node structure. Every publisher has it's own node (circle finder publisher example)  and the master TTT script has its own node.


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-k8s-24-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 1346

Questions ?
Please refer to the Backport tool documentation


Malformed extension.meta.xml throws fatal error

On the latest version of integration  I am getting errors like

The extension.meta.xml file for the members extension is not valid XML:
Missing default namespace definition.

whenever I try to edit a page or display the list of extensions. This should not happen as I am now unable to do anything: Even uninstalling and removing the offending extension is impossible.
I think those errors should be logged silently as it's just metadata after all.

Do you have the latest from the Members repo?
While I agree, when about() is removed, these files have to valid, so I don't mind throwing the exception now.
That said, we should catch it and make sure the backend still works!

I didn't have the latest version, otherwise I wouldn't have noticed. :-)

It is up to extension developers to ensure there extensions work correctly.
While it's taking the high road, I'm not keen on hand holding. @nickdunn has done a great job with the Schema Specification so there's no real excuse :) The error you experienced was from before the Schema was defined, so those early adopters will need to ensure their files are up to date.

You're right, a malformed about() would also throw an error. And as the developers are required to actually use an installation of Symphony to develop their extensions, they would come across these errors too.


Colored Coins

Hi, great job so far, everything is looking great.
Could you possibly include an extra class option for colored coins, so like .cc-c-BTC or even something like .ccc-BTC currently I've just manually added colors for a few of the coins but it would be nice if there was an extra style sheet I could drop in that has it already done.
Also could you use
.cc {

}

when you setup the font family so it does not conflict with anything.

Hey, sorry it took so long, but I finally released 1.2.1 with colored icons (all of them). Thanks!


add support for node engine 18 for @squoosh/lib

Is your feature request related to a problem? Please describe.
Problem when l need to use --ignore-engines flag for using @squoosh/lib with nodejs 18
Describe the solution you'd like
add support nodejs 18 to:
https://github.com/GoogleChromeLabs/squoosh/blob/dev/libsquoosh/package.json#L22-L24
Does other service/app have this feature?
Add any service you know/use that has this feature (We want to know for research)
https://github.com/bcheidemann/squoosh-webpack-plugin
Additional context
Add any other context or screenshots about the feature request here.

This change may be need too: https://github.com/emscripten-core/emscripten/pull/16917

Can somebody confirm if this mean that when a package is published relying on squoosh it will crash the package on the client if they don't have node 14 or 16? I was about to use squoosh in a published gltf converter.

Any updates on this? Is there a workaround for now? Thank you in advance.

Please let us know if a PR would be accepted for this issue. Thanks! 🙏

Upvote this

I filed https://github.com/GoogleChromeLabs/squoosh/issues/1265 but I suspect my issue is actually related to using Node 18

bump

Are we just thinking of updating the engine rules? No changes needed from squoosh itself?

Found the issue - https://github.com/GoogleChromeLabs/squoosh/issues/1033.

I am getting this error too.
TypeError: Failed to parse URL from<EMAIL_ADDRESS>
Node.js 18

work around, run node --no-experimental-fetch ./script.js

Hello @GoogleChromeLabs team!
cc @surma @jakearchibald 😸
Any new about NodeJS 18 support? This is a serious issue.
I was surprised that the latest version of Squoosh was published more than a year ago..

The v16 is now in "maintenance" mode and will be dropped 2023.
See https://github.com/nodejs/release#release-schedule.

work around for node >= 18, run node --no-experimental-fetch ./script.js

can you shate your ./scripts.js ? or a sample code ?
thanks

@limenote simply run node with the --no-experimental-fetch flag, and don't rely on the native fetch implementation.

but is squoosh to be supported?

running --no-experimental-fetch worked for me

Unfortunately, due to a few people leaving the team, and staffing issues resulting from the current economic climate (ugh), the CLI and libsquoosh packages are no longer actively maintained. I know that sucks, but there simply isn't the time & people to work on this. If anyone from the community wants to fork it, you have my blessing. The squoosh.app web app will continue to be supported and improved.

@jakearchibald
Does the squoosh.app web app support rest endpoints or some way of using it programmatically?

@jakearchibald Can you or someone else suggest some good alternatives to @squooh/lib?

@websours if you need similar functionality in a library format for Node.js, I would consider Sharp, which is based on libvips. There appears to be some effort underway to bring libvips to WASM for web browsers as well. Since Node.js 18 is the subject of the thread here, I've confirmed that Sharp is working fine in that environment.

thanks

@jakearchibald sad, but that's so reflective of the reality of open source projects right now, see project like Atom inside Github team...
Anyway, thanks a lot for letting us know! 🙏 😉

@JacobWeisenburger

@jakearchibald Does the squoosh.app web app support rest endpoints or some way of using it programmatically?

It doesn't. It's entirely client side. Part of the privacy benefits is the image doesn't leave your device.

Sounds good. thanks.

I'm using yarn to build my Next.js application using the command yarn build and getting this error. How could I run --no-experimental-fetch  with yarn?

I'm using yarn to build my Next.js application using the command yarn build and getting this error. How could I run --no-experimental-fetch  with yarn?

"build": "NODE_OPTIONS=--openssl-legacy-provider NODE_OPTIONS=--no-experimental-fetch next build"
its work for me


Support yarn

This resolves #195 by supporting following scenario:
$ NPM_CHECK_INSTALLER=yarn npm-check

Also if yarn's lockfile has been found it will be used as default package manager 🎉

Those build failures are due to node@4 lacking es6 support...

@dylang any chance this could be reviewed and merged? For some reason, yarn upgrade-interactive isn't as reliable to me as your package 🤷♂

@dylang This would be great

Merged with #397

By the way, by using NPM_CHECK_INSTALLER=yarn npm-check, yarn tries to install via yarn install which doesn't work anymore:
? Choose which packages to update<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>babel-plugin-styled-compo
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>gatsby-plugi
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>gatsby-plugin-styled-compon
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
$ yarn install --save<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>--color=always
Command failed: yarn install --save<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>--color=always
warning ../../package.json: No license field
error `install` has been replaced with `add` to add new dependencies. Run "yarn add<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>instead.

For more detail, add `--debug` to the command


Mimemagic not up to date

The mimemagic is not up to date, causing issues with the lab. It doesn't even install bundle. What I did to resolve it for myself was type bundle update mimemagic but I'm pretty sure I just got lucky.

Thank you for spotting this issue and providing feedback.
We have updated the materials and believe the issue to have been resolved.
Thanks for contributing to the Flatiron School curriculum. 💙


Decrease APK Size

With ADT 14, somehow the build size has ballooned out of control.  Need a way to reduce this back to normal...

Found the root of the problem - apparently my PNGs are being resized during builds now.  Not sure what's going on with ADT 14+, but I just posted a thread on the ADT group: http://groups.google.com/group/adt-dev/browse_thread/thread/4081fd057eeb1c4

I don't think this will ever be resolved, and I'm going to switch to JPGs anyways (see #46).


customize lineup

closes #230
prerequisites:

[ ] branch is up-to-date with the branch to be merged with, i.e. develop
[ ] build is successful
[ ] code is cleaned up and formatted
[ ] tested with Firefox 52, Firefox 57+, Chrome 64+, MS Edge 16+

Summary

* How much effort would it be to introduce a `mode: 'header' | 'sidePanel'` for the toolbar actions itself? Such that I can hide actions in the header, but show it in the sidepanel? The use case would be to allow advanced actions fro the side panel, without cluttering the actual ranking with them.

the shortcut | mode also support providing a function which has as an additional argument whether it is for the header or the side panel. I didn't add it as a static option cause there is no basic use case where there should be a difference in the header and side panel

* Could you add a **unit-test**/demo where a custom toolbar is created and added to the `StringColumn` to show this new feature nicely?

see demo/customColumn.html

so what is missing such that this PR can be merged?

Everything looks good to me, if the prerequisites are met we are ready to merge in my opinion.

Thanks for improving the demo. It worked for me. However, after updating this branch with the latest dialog PR, the (custom) group by dialog does not work anymore and throws the following error:
GroupDialog.ts:28 Uncaught TypeError: Cannot read property 'elems' of undefined
    at GroupDialog.build (GroupDialog.ts:28)
    at GroupDialog.open (ADialog.ts:104)
    at Object../src/ui/toolbar.ts.ui.mode [as onClick] (toolbar.ts:199)
    at HTMLElement.i.onclick (header.ts:173)

It looks to me that the custom append function must return an IToolbarDialogAddonHandler, but it does not.
https://github.com/lineupjs/lineupjs/blob/8a2607b069da078584ee7092e3f3cf6cbc627fe3/demo/custom_column.html#L78-L87
@sgratzl Can you please fix this?

done


The starter sets the font-family of code and pre to a CSS var that may not be generated

This:
pre, code {
    font-family: var(--font-mono);
}

is here. But if css-variables is configured to false CSS vars aren't generated.

Thanks for pointing this out!

Fixed in version 1.5.4
https://github.com/ThinkUniform/uniformcss/releases/tag/1.5.4


Support for N5 drag and drop

Hi, I gather that ome-zarr is able to handle N5 files (via https://zarr.readthedocs.io/en/stable/api/n5.html). Some of our workflows are currently using a mix of N5 and ome-zarr (e.g. from MoBIE projects in Fiji), with a view to using only ome-zarr in the future. If drag-and-drop of N5 into the napari plugin would be possible it'd help with not having to write custom scripts or convert large files. I don't envisage needing to write N5, only read.
Cheers,
Martin

There's some discussion about this here: https://forum.image.sc/t/opening-n5-in-napari/96565/14. I would guess loading N5 is out of scope for this plugin, napari-ome-zarr.

I think zarr supports n5? So maybe it's just a question of adding the extension to the manifest? I dunno and I don't have any N5 files to test.


Init a seccomp project

This is an experimental crate. I'll implement a seccomp crate step-by-step.
When it is mature, I'll move it under the crate/ and use it instead of libseccomp.
ref: https://github.com/containers/youki/issues/2724

Codecov Report

Merging #2729 (0c9ad90) into main (ed2c08d) will not change coverage.
Report is 13 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2729   +/-   ##
=======================================
  Coverage   65.21%   65.21%
=======================================
  Files         133      133
  Lines       16981    16981
=======================================
  Hits        11074    11074
  Misses       5907     5907

I'll try to take a look at this later today :+1:

@utam0k Should I go ahead and merge this?

@utam0k Should I go ahead and merge this?

Thanks for your review. I'll fix them on this PR

@YJDoc2 Do you want to take another look?

@YJDoc2 Thanks for your quick review 😍


Force opening of non-valid XML files

Hi,
first of all let me say thanks for your great code. I am currently using it to read certain VTK files without requiring the complete VTK install. The problem is that in certain cases the vtk file is not valid XML as it will contain a node that contains binary data. E.g.
<node attribute="1">
  Some binary garbage here
</node>

pugixml rightfully rejects reading this file. However, I was wondering whether there is a way to force reading of this file. If not, is such a feature planned?
Thanks in advance,
Arno

Unfortunately, this seems to be impossible.
Right now pugixml internally relies on the parse buffer being null-terminated. If the source buffer is not, the last character is replaced with \0. This is important for parsing efficiency since it significantly simplifies end-of-stream checks.
However, imagine that this was not the case and pugixml treated 0 as just another character value.
There could be a valid VTK file with a structure like this:
<VTKFile type="..." version="version" byte_order="byte-order" ...>

_\0\0\0\xf\0\0\0\xe

E.g. an AppendedData section with two binary chunks with  as the contents of the first chunk and  as the contents of the second one.
If you look at this file as if it were XML (disregarding the null bytes), VTKFile node would have two AppendedData children; if you know the encoding of the AppendedData binary content you'd know to parse the contents separately and have just one AppendedData child.
In other words, it's impossible to parse internal non-XML contents without knowing the encoding format if you want to preserve the outer structure.

Yeah my feeling was that this will not work for exactly this reason. I have an idea for a workaround though, so I'm gonna hack that together. Thanks.


clang++: error: linker command failed with exit code 1 (use -v to see invocation)

I am trying to implement TurboModules in android. I keep getting error in the screenshot. Here is my repo https://github.com/PritishSawant/reactnativeandroidturbomodules/tree/android-turbomodules-v3

The error message is sadly incomplete. Could you share your whole terminal session as a text format?

Not sure what's going on for you, but the failure is:

libcallinvoker.a: no archive symbol table (run ranlib)

The suggestion I have is:

Try to create a reproducer
Open a "New Architecture" issue on React Native with the error message + link to reproducer https://github.com/facebook/react-native/issues/new/choose

I'm closing this as this is not the right place to report build issues for New Architecture

@cortinico  Check this for a reproducer  https://github.com/PritishSawant/reactnativeandroidturbomodules/tree/android-turbomodules-v3

@cortinico  Check this https://github.com/facebook/react-native/issues/34041


REST API (gzip-ed or compressed request body not supported)

OrientDB Version: 3.x.x
Java Version: ANY
OS: ANY
Expected behavior
sending JSON documents to DB when body compressed
Actual behavior
{
"errors": [
{
"reason": 400,
"code": 400,
"content": "Lexical error at line 1, column 1.  Encountered: "\u001f" (31), after : ""\u000d\u000a\u0009DB name=""\u000d\u000a\u0009Error Code="1""
}
]
}
Steps to reproduce
POST /command//sql HTTP/1.1
Host: :
Accept-Encoding: gzip, deflate
Connection: keep-alive
X-Requested-With: XMLHttpRequest
Accept-Language: en-US,en
Content-Length:
tried everything like:
Content-Encoding: gzip
Content-Type: application/x-gzip
Content-Transfer-Encoding: gzip
Content-Accept: gzip
Cookie: OSESSIONID=
Body (just gzip it):
{"command": "SELECT * FROM mytable WHERE myid='0001'"}

strange

lack of documentation on the subject.
Accept-Encoding: gzip
do the work


jsdoc initial commit

granule documentation per issue #4

Meh, we don't need jsdoc generation. Closing.


workflow: Add build on push to main

Add new workflow to build and push main and latest image on push to main branch
Fixes: #164

I'll admit that I didn't fully understand how the image name and tag should be set up in the docker/build-push-action@v3 action, so it would be great if someone who knows what they are doing e.g. @bpradipt - could have a particular look at that? Thanks!

/test

/test


Vulnerability roundup 103: bento4-1.6.0-637: 1 advisory [5.5]

search, files

[ ] CVE-2020-23912 CVSSv3=5.5 (nixos-21.05)

Scanned versions: nixos-21.05: 0b8b127125e.
Cc @makefu

See also: #124609

looks like there is .378 now, i will prepare a PR


action_invoke_no_more_than is obsolete

This was added to fix a certain problem that CSCS had some years ago, it has been superceded by sliding semaphore which is a better way of throttling tasks/actions.
It also fails tests regularly and impededs progress.

The feature implemented by action_invoke_no_more_than completely relies on registering special callback-functions with our action invocation mechanism. Removing this example does not solve any issues as it is currently broken not because of the functionality it demonstrates. The root cause for this example to be broken lies in some optimizations applied recently (see #3017).

The test has been fixed with #3044. I don't think we should remove it.

I did not want to remove the test - I wanted to remove the entire invoke_no_more_than feature. It was added for a specific problem, did not really help and has never been used since. Maintaining it just requires effort and I though it would be beneficial to prune it away.

My mistake. I'm impartial here. What do others think?

Let's turn it into an example demonstrating what can be done using the action hooks.

Hello,
If no one is working on this issue, can I take this up? Also, a bit more explanation would be helpful.
Thanks in advance!

@shailesh210 please feel free to take this on. In essence, the functionality that is currently built into the core libraries (see https://github.com/STEllAR-GROUP/hpx/blob/master/hpx/runtime/actions/action_invoke_no_more_than.hpp) should be removed from the core library and re-introduced as a freestanding example.


Integration test rubies

This PR runs the integration tests against multiple Ruby versions just to make sure everything is compatible.
Ruby versions need to be specified as strings so that they're parsed correctly. This is an issue with GitHub Actions: https://github.com/actions/runner/issues/849
It also adds Rails 7.0 to the test suite. Rails 5.2 isn't compatible with Ruby 3+ so it's excluded and can be dropped soon since it will be EOL.
This also now caches bundle install to speed up the CI for future runs. This required moving the flags to environment variables instead. https://github.com/ruby/setup-ruby#caching-bundle-install-automatically
I didn't know if it made sense to run the linter and smoke tests against multiple Ruby versions, so I left those out. Let me know if we should do that too.

Nice.
I think adding TruffleRuby/JRuby would be better.

Nice. I think adding TruffleRuby/JRuby would be better.

@jitingcn I didn’t follow the status of truffleruby recently but seems they still have some "trouble" with rails apps, so the question is, do you think truffleruby is adopted in the rails apps these days?
If the answer is yes, I will suggest starting by adding the truffleruby config in the meilisearch-ruby repo first :)
Ref: https://github.com/oracle/truffleruby#current-status

bors try

Looks like a few more tweaks, but it's almost working. 👍

bors try

@excid3 could you please add this to bors.toml:
status = [
  'integration-tests (Rails 5.2 with Ruby 2.6)',
  'integration-tests (Rails 5.2 with Ruby 2.7)',
  'integration-tests (Rails 6.1 with Ruby 3.1)',
  'integration-tests (Rails 6.1 with Ruby 2.6)',
  'integration-tests (Rails 6.1 with Ruby 3.0)',
  'integration-tests (Rails 6.1 with Ruby 2.7)',
  'integration-tests (Rails 7 with Ruby 2.7)',
  'integration-tests (Rails 7 with Ruby 3.0)',
  'integration-tests (Rails 7 with Ruby 3.1)',
  'linter-check',
  'smoke-test'
]
# 1 hour timeout
timeout-sec = 3600

Because now we need bors watching these new actions :)

Added!

bors try

bors merge

bors merge


Update Quickstart Guide

To make the command easier to copy and paste, the $ symbol was removed.
Removed duplicate table of contents

Can you look over the entire repo and make sure this is consistent everywhere? The rule should be:

If there is no output from the command shown, any leading $ or # should be removed so the command can be copied
If the command is followed by output, a leading $  should be added to differentiate the command from the output

@mdemoret-nv removed leading $ at all the places as per the instruction.

Are we good to merge this then?

@bsuryadevara @mdemoret-nv Are we good to merge this then?

There are no other locations with leading $, so merging should be okay.

rerun tests

/rerun tests

@gpucibot merge


Add ability to set query's fetch_size

As described here https://datastax.github.io/python-driver/query_paging.html#controlling-the-page-size
"By default, Session.default_fetch_size controls how many rows will be fetched per page. This can be overridden per-query by setting fetch_size on a Statement. By default, each page will contain at most 5000 rows."
Would be good to write:
Model.objects.fetch_size(100)

This should set query limit to None and add fetch_size kwarg to SimpleStatement.

cqlengine is being merged into the DataStax native Python driver.  I'm going to hold off on any new non-emergency issues, since it'll just make the merge more complicated.


Added MongoDB parser, scenario and collection

This adds a parser, scenario and collection for MongoDB.
Thanks  @AlteredCoder for help in #518.

thanks for your contribution, merging :)


Content attribute in ::before pseudoclass breaks all other styling

Environment

npx envinfo --system --binaries --npmPackages styled-components,babel-plugin-styled-components --markdown
System:

OS: macOS 13.5
CPU: (8) arm64 Apple M2
Memory: 48.55 MB / 16.00 GB
Shell: 5.9 - /bin/zsh

Binaries:

Node: 20.6.1 - /opt/homebrew/bin/node
Yarn: 1.22.19 - /opt/homebrew/bin/yarn
npm: 9.8.1 - /opt/homebrew/bin/npm

npmPackages:

styled-components: ^6.0.8 => 6.0.8

Reproduction
https://codesandbox.io/s/styled-components-base-gc367
Steps to reproduce
This requires using styled-components 6+; in styled-components 5 and lower there are no issues.
To reproduce, create any styled default component (in our instance styled.p) with the following style, as an example:
&::before{     font-family: "Icons";     font-weight: 900;     content: '\f059';     color:#6f6d6d;     margin-right:7px;   }
Expected Behavior
In the element's ::before, a small question icon is rendered.
Actual Behavior
A broken ::before is applied to the element, so that every element that is rendered once the styling from the aforementioned component is rendered on the page.
You can see in this codesandbox how this is happening - The child styles are not getting applied, and if you inspect the element of the paragraph, you can see a broken style is being applied to the ::before pseudoclass.
.kgJGLA::before {     content: "00";}.bSwhtp{color:blue;}; }

I can confirm. seems to happen on ::after as well.

I can reproduce the same issue also with version styled-components: ^6.0.7

@brunouber @xNiallC I found the solution:
The issue is with the escaping of the backslash of the unicode CSS content value. The backslash needs to be escaped:
This is the updated code-sandbox..


[bug,neovim] Inconsistent auto completion behaviour

I am using NeoVim,

nvim-cmp to get completions from the LSP
(nvim-lspconfig)[https://github.com/neovim/nvim-lspconfig] for starting LSP servers
helm-ls.nvim

Steps to reproduce
To reproduce - create two files with following content:

values.yaml

foo:
  bar: qwerty

templates/test.yaml

test_new:
test_existing: {{ .Values.foo.bar }}

Bug description
Open templates/test.yaml, and try to add a value to test_new key,
Triggering autocompletion after .Values. or triggering autocompletion after .Values.f provides expected values.

But if one tries to edit test_existing: {{ .Values.foo.bar }} and trigger autocompletion after .Values. or .Values.f -
incorrect values are returned

I am not sure it's not a NeoVim/NeoVim plugins bug, so forgive me if I opened it in the wrong GitHub project.

As the test in https://github.com/mrjosh/helm-ls/pull/119 shows this seems to bee a problem of helm-ls.
I just never thought about the case where there is no space after the cursor.


Fix CLI parsing of C++ enum values

C++ enums exposed to Python via pybind11 are not subclasses of enum.Enum causing them to not be parsed properly by the CLI.
Hot-patching this into 23.01
fixes #675

/merge


update sentinel-5p to use stactools package

Description
Updates the sentinel-5p collection to use the stactools-sentinel5p package.
Notes:

The s5p:spatial_resolution is corrected. It was being "rounded", e.g., [3000, 5000] instead of (the now corrected) [3500, 5500].
The CO product now correctly uses a straight constellation field in Item properties rather than being included in a prefixed s5p:constellation field.

Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?

Ingested Items into PC Test.
Compared the PC Test Items against existing Items pulled from the production API.

Checklist:
Please delete options that are not relevant.

[x] I have performed a self-review
[ ] Changelog has been updated
[ ] Documentation has been updated
[ ] Unit tests pass locally (./scripts/test)
[x] Code is linted and styled (./scripts/format)

Thanks!


Configured debug type 'extensionHost' is not supported

Probably easy to solve.. but I dont know how.

VSCode Version:
1.4.0 from git
OS Version:
Centos7

Steps to Reproduce:

build from source, run scripts/code.sh
f5 on vscode-mock-debug sample project

32305:0729/121248:INFO:CONSOLE(80)] "Configured debug type 'extensionHost' is not supported.: Error: Configured debug type 'extensionHost' is not supported.
at file:////home/pc/Desktop/vscode/out/vs/workbench/parts/debug/electron-browser/debugService.js:442:81
at CompletePromise_then [as then] (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1566:49)
at file:////home/pc/Desktop/vscode/out/vs/workbench/parts/debug/electron-browser/debugService.js:428:18
at Promise_ctor.CompletePromise_then [as then] (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1566:49)
at file:////home/pc/Desktop/vscode/out/vs/workbench/parts/debug/electron-browser/debugService.js:426:18
at Object.notifySuccess [as _notify] (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1170:59)
at Object.state_success_notify.enter (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:852:30)
at _Base.Class.define._run (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1068:29)
at _Base.Class.define._completed (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1036:18)
at Promise_ctor.CompletePromise_then [as then] (file:////home/pc/Desktop/vscode/out/vs/base/common/winjs.base.raw.js:1566:49)", source: file:////home/pc/Desktop/vscode/out/vs/workbench/services/message/browser/messageService.js (80)

@Meai1 please see https://github.com/Microsoft/vscode/issues/9559


Create globally accessable logger

We write log messages at several points in the application. These are essential some times, other times they confuse the understanding or readability of the code.
It would be useful to introduce a Logger singleton class that combines this functionality and provides it in a unified way. This would allow us to control or even disable logging later on.
It would be nice if Logger had the following functionality:

getLogger() -> instance
log(tag, message)
blacklist/whitelist of tags that do not get logged
enable/disable

Though this would be really nice, it seems that we have to focus on more important issues until the final milestone.


Why BS dont implement style <input type="number">?

Prerequisites

[X] I have searched for duplicate or closed feature requests
[X] I have read the contributing guidelines

Proposal
Some <input> form elements will be styled, only type="number" is missing.
Motivation and context
The default style is ugly:

Thanks for reporting this issue @Bizarrus
What would you like to change in the number inputs? The arrows come from the default browser rendering, and if they are using the correct color-scheme value, they should match the light/dark mode rather well:

Radioboxes, Checkboxes and other already styled for Bootstrap (see https://getbootstrap.com/docs/5.3/forms/checks-radios/#checks), iwould like to see a separate procedure for number boxes as a core feature of Bootstrap, like these:
<input class="input-number" type="number" value="">

With style-behaviors like:

or

Bootstrap doesn't style the <input type="number"> by default because styling numerical inputs can vary greatly depending on the platform and browser. Customizing these inputs could potentially interfere with native functionality or cause inconsistencies across different devices and browsers. As a result, Bootstrap tends to focus on more standardized elements and leaves these types of inputs unstyled to maintain their default behavior. However, you can still apply your own custom styling to these inputs using CSS if needed.
from chatGpt


Colormatic Incompatibility

Describe the Bug
Incompatible mod set!
net.fabricmc.loader.impl.FormattedException: Mod resolution encountered an incompatible mod set!
A potential solution has been determined:
- Replace mod 'Create' (create) mc1.18.2_v0.4.1+631 with any version that is compatible with:
- colormatic 3.1.1+mc.1.18.2
Unmet dependency listing:
- Mod 'Create' (create) mc1.18.2_v0.4.1+631 is incompatible with version 3.1.1 or earlier of mod 'Colormatic' (colormatic), but a matching version is present: 3.1.1+mc.1.18.2!
at net.fabricmc.loader.impl.FabricLoaderImpl.load(FabricLoaderImpl.java:190)
at net.fabricmc.loader.impl.launch.knot.Knot.init(Knot.java:148)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:68)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Reproduction Steps
Install Colormatic
Install Create
Launch game
Expected Result
Launched
Screenshots and Videos
No response
Crash Report or Log
No response
Operating System
Windows 11
Mod Version
0.4.1
Minecraft Version
1.18.2
Other Mods
https://modrinth.com/mod/colormatic
Version 3.1.1
Additional Context
No response

yes, colormatic is broken. We can't fix it. I believe the issue was fixed in the 1.19 update.

yes, colormatic is broken. We can't fix it. I believe the issue was fixed in the 1.19 update.

I removed colormatic, and not a big deal I guess, world still same.

Colormatic commit with the fix occurred before the 1.19 port, here's an artifact for any grumpy 1.18.2 modpack devs
colormatic-3.1.2-snapshot+mc.1.18.2.jar.zip


Allow multiple instances

fixes #36

Thank you! But will it be possible to get e.g entity 1-32 from Node 10 and get entity 33-64 from Node 11 at the same CMI? It seems, the integration only supports up to 32a/32d entities.
I tried to add another instance with the same IP of the CMI, but this doesn't work.

Currently, you would have to set up a second instance of the server and utilize the 32 slots per server/node. In the future, however, it will be possible to solve this with a single server instance.

Thank you! But I can't setup a second instance with the same IP:Port as the automatically recognised CMI.:

Maybe I misunderstand something? Or is it only possible with two CMIs?

At the moment it is only possible with two C.M.I.s. But I am currently working on a solution to make it work with only one.


Support for unpack

Since this tool is to pack a repo (codebase) into a prompt, after asking ChatGPT or other LLM AI to review, the LLM should edit the repomix-output.txt, and repomix should support unpack to apply LLM edited changes in the repo.

Hi, @tombelieber!
Thanks for the suggestion!
I personally use Claude and get artifacts as individual files, so I can just copy and paste.
However, I'm curious how you are using it. Are you getting all the output in one single output? If you're using a JSON output or something similar, then unpacking would probably be easy, but otherwise, the format would be difficult to define, so it might be hard.


Optional command argument parsing

Argument types with options that influence how they're parsed.

[ ] Users

by mention
by name#discrim
by id
by just name?
Options:

Is in server? (reject without running command process if not)
Is fuzzy? (enables the "just name" matching and takes nearest match, maybe?)

Resolve to: User instance (Member instance?)

[ ] Channels

by mention
by exact name
by id
Options:

Is visible to caller? (should probably be default)
Is text/voice/announcement/etc? (default to accepting any channel) (or maybe do this with separate types for text channels/voice channels?)

Resolve to: Channel object

[ ] Roles

by mention
by name (exact)
by id
Options:

User can edit? (reject if the user isn't higher than that role, or if the user doesn't have "manage roles" permission)
Mentionable? (meh)

Resolve to: Role object

[ ] Dates & Times

Probably use moment as a peerdep to parse time strings; without moment, do basic 2d 3h 15m parsing for times
absolute dates/times should also take time deltas from the current time and resolve to the corresponding date
Resolve to: Date objects or moment instances

[ ] Number

as you expect
maybe a separate type for integers? idk
options:

min/max

resolves to: a number duh (bigint for very large numbers?)

[ ] Text

Text with no line breaks or anything else fancy
Handle quoting as expected; try not to let the user do stupid shit by mistake
Interesting idea: If there's another argument after text, let the text expand until the next argument is met (make text the "default" argument type that fills in everything else as a single argument
Resolves to a string

[ ] LongText

Text that can have line breaks and stuff
Dunno how this should be formatted

[ ] Word

Like text but with no spaces or quoting or whatever

[ ] Colors? Other stuff?

Also how do I make this extensible so others can define their own argument types?

This is an example of how I could imagine using it.
export default new Command(`warn`, async (message, args, context) => {
  const [userArg, reasonArg] = args;
  const user = context.client.arguments.parseUser(userArg)
  const reasonArg = context.client.arguments.parseLongText(reasonArg)

This would also allow anyone to create their own arguments in the arguments directory.

Looking for some input on the user-facing interface for this. Some things I've considered so far:

Manually parsing arguments from args in the command process
export default new Command('ban', (msg, args) => {
  const [member, reason] = parseArgs(args, /* some specifier of what the expected arguments are */);
  // use member and reason, above call throws if args aren't matched or something?
}, {
  permissions: ['manageMembers']
});

This is probably the least invasive way of doing things. However, it's also not particularly clean, and involves a fair amount of boilerplate - especially when considering how to handle the "arguments aren't fulfilled" case. It's probably more intuitive for consumers if the process not run at all if the arguments aren't provided correctly, and having to handle that case explicitly is probably not great. Typing this method would probably be the easiest of the three ideas I've explored.

Introducing a utility that generates a process wrapped in argument checks
const process = processWithArgs(/* expected argument stuff */, (msg, [member, reason], context) => {
  // do stuff with member and reason
});

export default new Command('ban', process, {permissions: ['manageMembers']});

This would help with some of the issues above. By wrapping the user's command process in another function that takes charge of argument handling, the "arguments aren't fulfilled" case can be handled by the wrapping logic. A message can be sent to the user automatically, though this behavior could be overridden by a second argument to the function if the consumer wanted a custom message or more complex handling. However, it feels like a really clunky way of doing things and isn't particularly clean. The separation of arguments from other requirements is a bit weird. Maybe the wrapper could handle both, but then that would mean we have one permission system built into the Command class, and another one built into a process wrapper... I don't like the thought of that.

Reworking the Command interface entirely with a builder design
export default new Command('ban')
  .requirePermission('manageMembers')
  .argument('member', ...)
  .argument('reason', ...)
  .process((msg, [member, reason], context) => {
    // do stuff with member and reason
  });

I've never been a huge fan of the builder design pattern, but it has some advantages here. Argument definitions have a much clearer structure to them than with the other two patterns, since there's no need for a wrapping array to preserve order. However, it's very hard to get nice typings for the command process this way. I mocked it out a bit and it would rely on a lot of internal hacks on generics that I'm not really super keen on working with. Custom argument types would be impossible to do nicely in TS without .argument being typed as (...args: any[]) => ... (or otherwise expecting custom type providers to include ambient overload declarations for their own types).

I've thrown together a TS playground that demonstrates the basic way I want to implement this, corresponding with option 1 above and also inspired by the way Akairo handles it. This actually works out really nicely in Typescript - it's not perfect, but definitely gets the job done and allows for very nice type inference both when defining custom arg types and when consuming the parsed arguments.

Consumer code examples
Consumer code in JS will look something like this:
const {Command, parseArgs} = require('yuuko');

module.exports = new Command('ping', async (msg, args) => {
  const [user, text] = await parseArgs(args, [
    {
      type: 'user',
      inGuild: true,
    },
    {
      type: 'string',
    },
  ]);

<EMAIL_ADDRESS>you've been pinged! ${text}`);
});

Consumer TS code will be similar, but will require a generic on the parseArgs call that explicitly lists all the argument types in order to allow for type inference of the output. (I don't think TS supports variadic generics, so the generic does need to be a type tuple like this.)
import {Command, UserArgument, StringArgument, parseArgs} from 'yuuko';

export default new Command('ping', async (msg, args) => {
  const [user, text] = await parseArgs<[
    UserArgument,
    StringArgument,
  ]>(args, [
    {
      type: 'user',
      inGuild: true,
    },
    {
      type: 'string',
    },
  ]);

<EMAIL_ADDRESS>you've been pinged! ${text}`);
});

Custom argument type code samples
Registering a custom argument type to be recognized by parseArgs is pretty easy:
import {registerArgumentType} from 'yuuko';

// Define options for this argument type
type IntegerArgument = ArgType<{
  type: 'integer',
  /** The radix, or base, to use when parsing the number. Defaults to 10. */
  radix?: number,
  /** Enables parsing of hexadecimal numbers prefixed with "0x", overriding the set radix. */
  allowExplicitHex?: boolean,
}, number>;

// Register an argument resolver to tell Yuuko how to parse this type
registerArgumentType<IntegerArgument>('integer', (args, {radix, allowExplicitHex = false}) => {
  let result;
  let thing = args.shift()!;
  if (allowExplicitHex) {
    let match = thing.match(/^0x([0-9a-f]+)$/i);
    if (match) {
      result = parseInt(match[1], 16);
    }
  }
  if (result == null || isNaN(result)) {
    result = parseInt(thing, radix);
  }
  return result;
});

Playground link
So I guess at this point all that's really left to do is start implementing this in Yuuko itself, and start writing the default argument types for basic stuff like I outlined in the OP.


Function Annotation in Diffs

resolves #1
Also resolves a newly found bug: TypeScript function start lines were not taking decorators into account, and were off whenever they were present :)
fixed ofc

Hold up don't merge. I think I found a bug.
I think that might be nice as an option. It seems to really blow up a lot of the java diffs.

Hold up don't merge. I think I found a bug.
I think that might be nice as an option. It seems to really blow up a lot of the java diffs.

The size thing shouldn't really be a problem though since we're essentially just pulling them out of git dynamically right?

Hold up don't merge. I think I found a bug.
I think that might be nice as an option. It seems to really blow up a lot of the java diffs.

The size thing shouldn't really be a problem though since we're essentially just pulling them out of git dynamically right?

Yeah it's easily doable. Maybe we can make an issue for this

EOF. Great. This is why we can't have nice things.

I'm actually not sure how the ever worked. I want to merge this but I need to look a bit more. When a file is split up trailing whitespace is removed, but the Python parser puts the end of a node as right before the beginning of the next node, which in the case of the final function in a file is the EOF.
So if a file ends with a newline you'll always end up with an out of bounds exception. I stepped through and everything was right and predictable with the latest changes. I have no idea how this was being obfuscated on develop, but I think this is enough for tonight.


Added AEM 6.3 support for conditional hiding in edit dialogs

hiding dialog fields based on condition does not work in AEM 6.3.
This Pull Request fixes the issue

Coverage remained the same at 40.7% when pulling ad0e615cb318d31395f1d3f33b5f99d2d3b44134 on RolandDahlemPV:patch-1 into 7b3f7e4a2ec685f8013e63e3ff7735522ef0552b on Adobe-Consulting-Services:master.


Add support for anonymous functions + get rid of 'by-name' matching on method's parameters

Solves #25

Thanks!


Cannot specify responseTransformer when request options include headers

Description
Due to this commit and this line, typescript raises an error when trying to specify responseTransformer along with headers.
ExampleService.getExample({
  headers: {'Accept-Language': 'en'},
  async responseTransformer(data) {
  //    ^^^^^^^^^^^^^^^^^^^ this gets marked as an error
    return data.example
  }
})

The typescript error is:
Object literal may only specify known properties, and responseTransformer does not exist in type

OmitKeys<OptionsBase<true>, 'headers' | 'responseTransformer'> & GetExampleData & Pick<OptionsBase<true>, 'body'>

My question is: Why is responseTransformer omitted from the OptionsBase type?
Reproducible example or configuration
No response
OpenAPI specification (optional)
No response
System information (optional)
No response

I've no idea, sorry. Let me remove it.


Update documentation to fit release 19.11

the documentation does not really cover 19.11

python 2.7 and 3.5 are longer supported
no examples for the new rotation and samplesplitter functionality

also, mention that acoular_demo.py may not be running out-of-the-box (see #107)
By Gert Herold on 2019-11-13T15:33:53 (imported from GitLab)

Outdated
By Gert Herold on 2020-04-09T12:03:29 (imported from GitLab)

closed
By Gert Herold on 2020-04-09T12:03:30 (imported from GitLab)


1.0 release does not have c++ included

The 1.0 release does not have c++ included, but the code exists in the master. Is the master a stable version that we can use directly?

Hi Jachim,
The testing on the C++ API in master is mostly limited to unit/functional testing using the mock driver library. You can use it but please be aware that it has not gone thorough the same level of system/integration testing as releases do. If you do use it, we encourage you to file any issues that you may encounter while doing so.

Thanks very much!


chore: move packaging & isolate service implementations

This PR
Background
This is an attempt to move services and wiring logic to their end usage.
For example,  having runtime package in the core module did not provide any advantage. This package was only used by flagd and contained the logic that binds configurations to service implementations.
Similarly, flagd-proxy exposed sync service, and having that inside the core module seemed out of place.
What's changed
I have moved runtime package to flagd & specific service implementations (flag evaluation and sync service) to their end usage.
Why ?
I considered this to be a pre-requisite for https://github.com/open-feature/flagd/issues/1230. If I attempted to add another sync implementation to the current core module, it would have made the whole packaging confusing (ex:- we have two sync proto implementations, which do not serve the same purpose. One for flagd-proxy and the other for flagd).
After this refactoring, I could add the flagd's sync service, where it serve buf connect and I can locate that within flagd.
Besides, we still have a core module with all the sharables.
Consider the current packaging in the below diagram,

nore - core sync is for flag data sync listeners such as files, K8s ...

Thank you for the reviews @toddbaert @odubajDT @thisthat , I will merge this now :)


Add GAPIC docs to docs site

This change adds the generated GAPIC clients to the Google Cloud PHP docs site. It takes advantage of GoogleCloudPlatform/gcloud-common#213, so we'll need to rebuild the docs site before this is merged.

Add all generated clients to the table of contents.
Add simple landing pages (README.md) in empty folders.
Modify doc generator to recognize external types specified in docs/external-classes.json and transform references into external links.

For an example, see https://jdpedrie.github.io/gcloud-php/#/docs/master/servicebuilder.

Cool stuff! A few notes:

We should see if we can get the clients regenerated to include params and returns in the doc blocks so that methods such as LoggingServiceV2Client::formatLogName are more descriptive. /cc @michaelbausor
There are a handful of types which seem like they need to be added to the external classes map. For example, sslCreds in LoggingServiceV2Client::__construct and resource in LoggingServiceV2Client::writeLogEntries.

Filed an issue to update those docs: https://github.com/googleapis/toolkit/issues/1089

@michaelbausor do you know of any reference documentation for Grpc\ChannelCredentials which I could link to? grpc.io has API documentation for the PHP library only, not for classes created by the extension.

Not that I'm aware of. It is coming from here: https://github.com/grpc/grpc/blob/master/src/php/ext/grpc/call_credentials.h#L49

Docs for classes like Grpc\ChannelCredentials would be incredibly helpful. That seems like something we should push for.
@jdpedrie Besides the aforementioned, it looks like there are other types that are not being linked out to. serviceFilter and timeRange found in ErrorStatsServiceClient::listEvents are examples of others.  Scrolling through the docs I'm seeing them rather frequently. Can we do a review to make sure they're all getting hit?

@michaelbausor one more thing...
https://github.com/GoogleCloudPlatform/google-cloud-php/blob/master/src/Monitoring/V3/MetricServiceClient.php
Lots of links in this file that will not work on the docs site.
For instance:
[filter](/monitoring/api/v3/filters

Looks like they all just need to be prefixed with https://cloud.google.com.

@dwsupplee updated the rest of the refs to external classes I could find (save ChannelCredentials) and regenerated the docs site on my fork.

👊