"Rediu", "Bețești", "Poloboc" and "Socea" are listed in the drop-down menu

Description:
"Rediu", "Bețești", "Poloboc" and "Socea" are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Rediu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Rediu, NEAMȚ (Rediu)" and "Comuna Rediu, NEAMȚ".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Bețești" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bețești, NEAMȚ (Rediu)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Poloboc" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Poloboc, NEAMȚ (Rediu)".

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Type "Socea" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Socea, NEAMȚ (Rediu)".


Update standard events

Hey all,
Hope you're well
Thanks for software
Scraped from https://developer.mozilla.org/en-US/docs/Web/Events > "Standard events" section
Let me know if you have any issues - happy to help
Hope this is clear/useful
Thanks (in advance)

Fixes https://github.com/Microsoft/TSJS-lib-generator/issues/333

The file is generated from the scripts in src and not hand authored.

Hey @mhegazy,
Thanks for reply
Apologies, I must admit I wasn't 100% sure this was the correct PR - can you provide any guidance so I can get the intellisense updated?
Specifically I'm looking for "transitionend" and related JS event properties
Hope to hear back
Yours faithfully

You can take a look at https://github.com/Microsoft/TSJS-lib-generator/pull/460 and https://github.com/Microsoft/TSJS-lib-generator/pull/415 for a reference.

@mhegazy hmm, unless there's more documentation or someone to pair with I think this PR is beyond the scope of my JS/TS knowledge

You may want to:

Search MDN for event interfaces e.g. AnimationEvent
MDN points to the proper spec
Add them in inputfiles/idlSources.json
Run npm run fetch && npm run build && npm run baseline-accept && npm test
If test succeeds, open a PR

That's the recommended automatic addition way. We still have manual way, I would say you check this part https://github.com/Microsoft/TSJS-lib-generator/pull/438/files#diff-33c56fff5ba0262bfabf1ca82cfab269 for that. (Remember that automatic way is preferred.)


Create Radio Packets from JSON Schemas

Summary
Created a set of JSON files to define the types and names of the different fields in each packet.
Also created a JSON schema to validate these JSON files. If the jsonschema python extension is installed, this can be ran with
jsonschema -i <path to file> <path to schema>.
Test Plan
So far, only tested locally with vanilla python and not on the PyCubed. Json schemas have been validated, however.
Future Work

I'm not super happy with the inheritance interface and the way we instantiate class variables, so this could be reworked.
Maybe adding a github checker to validate json schema, either with a simple script or just finding someone elses implementation (I looked a little, none seemed super mature but I didn't look that hard).
This needs much better error checking in general, this will probably be in a separate PR though.

Ignore the janky commit history lol


Create a new pull request by comparing

Pull Request Test Coverage Report for Build 573691647

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

Totals

Change from base Build 571156034:
0.0%

Covered Lines:
1904

Relevant Lines:
1967

💛  - Coveralls


VSCode on Linux breaks help on other applications...

Type: Bug
I installed VSCode because I joined a FIRST team; I use Linux for all my personal computing needs, and VSCode has a Linux version, so I put it in.  Now help for Beyond Compare loads VSCode, not help.  Because M$ seems to install inappropriately global URL handlers for every freaking little thing, I suspect it's done the same on Linux - installed a global URL handler that conflicts with other applications' URL use.  Don't really know, just know VSCode utterly destroyed all help functionally in a completely unrelated application.  That is squarely a M$ bug.


FSDP with full state dict

What does this PR do?

Co-authored-by: @SeanNaren  and @shuyingsunshine21
Integrates FSDP, #6152
Discussed with @SeanNaren ,  for V1, we only support usage where user will configure the wrap strategy in configure_sharded_model. And we currently do not support sharded checkpointing.
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

disabled auto merge in case you want to address some of the comments before merge but IMO this is unblocked and rdy to go. thx


Command Status (Checks and troubleshooting)

Bitáctora ongoing checks:

[ ] Testing, overall

[x] Does it work?
[x] Testing against coding protocols
[x] Interaction with users
[ ] Whether it is ready to be externally available.
[ ] Trying to get it to integrate it with a code editor.

[ ] R Dashboard to: input file and output file?

[x] functionality
[x] Buggyness
[x] documentation
[ ] Future: (plug in — Visual Studio Code)

Suggestions:
Detect:

using in the syntax, instead of file()
default summary preview.


CASSANDRA-18504: Added support for type VECTOR<type, dimension>

@dcapwell Is this ready for review or are you still actively working on it?

@mike-tr-adamson

Is this ready for review or are you still actively working on it?

yes, its ready for review... I make tweaks over time as I think about it, but that's mostly to add more tests; the core patch is stable

I'd like to put some questions here that are outside of the review and are mainly related to the scope of the ticket and what we are expecting to support at the end.
The tickets states that we are producing a fixed-length, frozen array with non-null values. Are we expecting these values to be primitive types? What I mean by this is could we expect something like INSERT INTO t (pk, vec) VALUES (0, [1.0, sum(1.0, 2.0), 3.0])? Meaning do we want to support function calls in the creation of the array?
If we disallow this (which would be my preference) we could simplify our type support greatly by removing the need for non-terminal support.
@dcapwell WDYT?

Are we expecting these values to be primitive types

Nope, this limitation was removed in the dev mailing list.  The requirement is support for any type, including stuff like map and text.  My stance is that the complexity for the type isn't more complex to have such a case, as a ShortType is variable length (don't know history on why... its fixed length but the type says its not...), so is IntegerType... so by allowing fixed and variable length types, we make sure that all primitive types work, and users can choose to use this type in other, non ML, use cases.

INSERT INTO t (pk, vec) VALUES (0, [1.0, sum(1.0, 2.0), 3.0])

I never remember how functions work in CQL... in most DBs I expect sum(1, 2) to be converted to 3 at binding time, but I think we defer these until execution time...  ignoring this detail, conceptually yes, we should allow such behavior as long as the grammar allows (grammar doesn't allow functions in all places).  If the grammar supports, I can work on a test to make sure this is handled.
I actually created a CQL fuzz tester for Accord, but been debating if I should add to tree or not (there is overlap with what Harry does... which is why I question)... That fuzz tester builds a AST of what is allowed in CQL for each type, so would be a perfect way to make sure this behavior works... I tend to prefer generic/property tests rather than single type tests... which is why this patch is so large <_<...

If we disallow this (which would be my preference) we could simplify our type support greatly by removing the need for non-terminal support.

My personal stance is that CQL is way too much special casing, so as a user I have a hard time knowing what to expect (I hate frozen vs multi-cell... they define their own semantics, so you have to know implementation details of the db...)... if the grammar allows functions in the value, then VectorType must allow as well...
Thanks @mike-tr-adamson for the review, ill make a few changes and let you know when I push

What I mean by this is could we expect something like INSERT INTO t (pk, vec) VALUES (0, [1.0, sum(1.0, 2.0), 3.0])? Meaning do we want to support function calls in the creation of the array?

I created tests for this, this works just fine.  I can't use sum as that is an aggregate function, so switched to 1 + 2

@mike-tr-adamson @Maxwell-Guo replied to or fixed all feedback

Where will this leave the ability to expose a similarity_cosine(a, b) function to CQL?  I believe there are some difficulties around type inference.

Where will this leave the ability to expose a similarity_cosine(a, b) function to CQL? I believe there are some difficulties around type inference.

@jbellis can you expand on that?  What I see in org.apache.cassandra.cql3.functions.NativeFunctions#add(org.apache.cassandra.cql3.functions.FunctionFactory) that we can use a Factory, so we can see the arguments given to us.
private static boolean isFloatVector(AbstractType<?> type)
    {
        type = type.unwrap();
        return type instanceof VectorType && ((VectorType<?>) type).getElementsType() == FloatType.instance;
    }

...
functions.add(new FunctionFactory("similarity_cosine", FunctionParameter.anyMap())
        {
            @Nullable
            @Override
            protected NativeFunction doGetOrCreateFunction(List<AbstractType<?>> argTypes, AbstractType<?> receiverType)
            {
                if (!(isFloatVector(receiverType) && argTypes.stream().allMatch(CollectionFcts::isFloatVector)))
                    return null;
                if (!argTypes.stream().allMatch(t -> t.equals(receiverType)))
                    return null;
                VectorType<Float> type = (VectorType<Float>) receiverType;
                return makeSimilarityCosine(type);
            }
        });
...

so this should match if-and-only-if args and receiver are float vectors of the same size

@mike-tr-adamson replied to or fixed all feedback; can you look again?

Here's what I get on my branch w/ the old syntax:
org.apache.cassandra.exceptions.InvalidRequestException: Cannot infer type of argument ? in call to function system.cosine_similarity(float vector, float vector): use type casts to disambiguate

	at org.apache.cassandra.cql3.functions.FunctionFactory.getOrCreateFunction(FunctionFactory.java:101)
	at org.apache.cassandra.cql3.functions.FunctionResolver.lambda$collectCandidates$1(FunctionResolver.java:144)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
	at java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1621)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
	at org.apache.cassandra.cql3.functions.FunctionResolver.collectCandidates(FunctionResolver.java:146)
	at org.apache.cassandra.cql3.functions.FunctionResolver.get(FunctionResolver.java:96)
	at org.apache.cassandra.cql3.functions.FunctionResolver.get(FunctionResolver.java:72)
	at org.apache.cassandra.cql3.selection.Selectable$WithFunction$Raw.prepare(Selectable.java:415)
	at org.apache.cassandra.cql3.selection.RawSelector.prepare(RawSelector.java:53)
	at org.apache.cassandra.cql3.selection.RawSelector.lambda$toSelectables$0(RawSelector.java:48)
	at com.google.common.collect.Lists$TransformingRandomAccessList.get(Lists.java:603)
	at org.apache.cassandra.cql3.selection.SelectorFactories.<init>(SelectorFactories.java:99)
	at org.apache.cassandra.cql3.selection.SelectorFactories.createFactoriesAndCollectColumnDefinitions(SelectorFactories.java:85)
	at org.apache.cassandra.cql3.selection.Selection.fromSelectors(Selection.java:188)
	at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepareSelection(SelectStatement.java:1212)
	at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:1142)
	at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:1124)
	at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:1096)
	at org.apache.cassandra.cql3.QueryProcessor.parseAndPrepare(QueryProcessor.java:435)
	at org.apache.cassandra.cql3.QueryProcessor.prepareInternal(QueryProcessor.java:413)
	at org.apache.cassandra.cql3.QueryProcessor.executeInternal(QueryProcessor.java:446)
	at org.apache.cassandra.cql3.CQLTester.executeFormattedQuery(CQLTester.java:1364)
	at org.apache.cassandra.index.sai.SAITester.execute(SAITester.java:600)
	at org.apache.cassandra.index.sai.cql.VectorTypeTest.similarityFunctionTest(VectorTypeTest.java:224)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)

test running is
    @Test
    public void similarityFunctionTest() throws Throwable
    {
        createTable("CREATE TABLE %s (pk int, str_val text, val float vector[3], PRIMARY KEY(pk))");

        execute("INSERT INTO %s (pk, str_val, val) VALUES (0, 'A', ?)", Lists.newArrayList(1.0, 2.0 ,3.0));
        execute("INSERT INTO %s (pk, str_val, val) VALUES (1, 'B', ?)", Lists.newArrayList(2.0 ,3.0, 4.0));

        UntypedResultSet result = execute("SELECT pk, val, cosine_similarity(val, ?) FROM %s", Lists.newArrayList(2.5, 3.5, 4.5));
        assertThat(result).hasSize(2);
        System.out.println(makeRowStrings(result));
    }

full code in the branch at https://github.com/jbellis/cassandra/tree/vector-functions

@jbellis it works just fine for me...
@Test
    public void selectFloatVectorFunctions()
    {
        createTable(KEYSPACE, "CREATE TABLE %s (pk int primary key, value vector<float, 2>)");

        execute("INSERT INTO %s (pk, value) VALUES (0, ?)", vector(1f, 2f));
        assertRows(execute("SELECT similarity_cosine(value, value) FROM %s WHERe pk=0"), row(vector(1f, 2f)));
    }

public class VectorFcts
{
    private static boolean isFloatVector(AbstractType<?> type)
    {
        type = type.unwrap();
        return type instanceof VectorType && ((VectorType<?>) type).getElementsType() == FloatType.instance;
    }

    public static void addFunctionsTo(NativeFunctions functions)
    {
        functions.add(new FunctionFactory("similarity_cosine", FunctionParameter.anyType(true), FunctionParameter.anyType(true))
        {
            @Nullable
            @Override
            protected NativeFunction doGetOrCreateFunction(List<AbstractType<?>> argTypes, AbstractType<?> receiverType)
            {
                if (argTypes.size() != 2)
                    return null;
                AbstractType<?> outputType = receiverType == null ? argTypes.get(0) : receiverType;
                if (!(isFloatVector(outputType) && argTypes.stream().allMatch(VectorFcts::isFloatVector)))
                    return null;
                if (!argTypes.stream().allMatch(t -> t.equals(outputType)))
                    return null;
                VectorType<Float> type = (VectorType<Float>) outputType;
                return makeSimilarityCosine(name.name, type);
            }
        });
    }

    private static NativeFunction makeSimilarityCosine(String name, VectorType<Float> type)
    {
        return new NativeScalarFunction(name, type, type, type)
        {
            @Override
            public ByteBuffer execute(ProtocolVersion protocolVersion, List<ByteBuffer> parameters) throws InvalidRequestException
            {
                return parameters.get(0);
            }
        };
    }
}

Thanks!

... this fails the same way mine did when you try to compare to a bind variable
    @Test
    public void selectFloatVectorFunctions()
    {
        createTable(KEYSPACE, "CREATE TABLE %s (pk int primary key, value vector<float, 2>)");

        execute("INSERT INTO %s (pk, value) VALUES (0, ?)", vector(1f, 2f));
        execute("SELECT similarity_cosine(value, ?) FROM %s WHERe pk=0", vector(1f, 2f));
    }

org.apache.cassandra.exceptions.InvalidRequestException: Cannot infer type of argument ? in call to function system.similarity_cosine(any, any): use type casts to disambiguate

commit on top of your branch at https://github.com/jbellis/cassandra/tree/dc-vector

@dcapwell We having been playing with this code on our vector graph implementation and have just found that any saved SSTables with VectorType in them fail to load at startup because VectorType is missing a public static <T> VectorType<T> getInstance(TypeParser parser) implementation. Adding this requires support adding to TypeParser to pull the abstract type and dimensions from the string representation of the type.

Do we need to add a new test that can cover the request from client to server with vector type request?
But in my mind it may be not easy  as we may need to have a client driver which support vector type~~~

There is a java driver and python driver branch supporting vector type

@dcapwell We having been playing with this code on our vector graph implementation and have just found that any saved SSTables with VectorType in them fail to load at startup because VectorType is missing a public static <T> VectorType<T> getInstance(TypeParser parser) implementation. Adding this requires support adding to TypeParser to pull the abstract type and dimensions from the string representation of the type.

Ah great reply, I'll try to figure out why the tests do not detect this (is this due to them being Memtable only?); will also add such a check to the type test so we detect this for all types!

... this fails the same way mine did when you try to compare to a bind variable
    @Test
    public void selectFloatVectorFunctions()
    {
        createTable(KEYSPACE, "CREATE TABLE %s (pk int primary key, value vector<float, 2>)");

        execute("INSERT INTO %s (pk, value) VALUES (0, ?)", vector(1f, 2f));
        execute("SELECT similarity_cosine(value, ?) FROM %s WHERe pk=0", vector(1f, 2f));
    }

org.apache.cassandra.exceptions.InvalidRequestException: Cannot infer type of argument ? in call to function system.similarity_cosine(any, any): use type casts to disambiguate

commit on top of your branch at https://github.com/jbellis/cassandra/tree/dc-vector

I think that's also the behavior for all functions that have multiple type signatures... we don't know which one due to bind type not being known... so the error I think is correct, you need (vector<float, 2>) ?. A float vector of size 2 is different than the float vector of size 4 from a type point of view, so we need that information in order to resolve functions...

Yes, memtable tests will not uncover this and just flushing will not either, you need to try to reopen the sstable which only (?) happens when you restart the server; we found this w/ manual testing

Looked at a debugger and it is something we can make better, just need to update org.apache.cassandra.cql3.functions.FunctionParameter#inferType for our arg type (we currently use FunctionParameter.anyType(true))
We get null when doing arg.getCompatibleTypeIfKnown(keyspace) as we have no clue what it could be... but we do have access to the other args + receiver type...  so for vectors we could just assume that any of the 2 other variables we have access to are defined... if non are defined we fail with this type cast...
I am not including this VectorFct class in this PR as I don't define any functions... but it doesn't seem bad to get assertRows(execute("SELECT similarity_cosine(value, ?) FROM %s WHERe pk=0", vector(1f, 2f)), row(vector(1f, 2f))); working

Yes, memtable tests will not uncover this and just flushing will not either, you need to try to reopen the sstable which only (?) happens when you restart the server; we found this w/ manual testing

I updated the test to flush to at least hit SSTables, and see in the logs compaction is failing
ERROR [CompactionExecutor:1] 2023-06-01 13:24:10,454 JVMStabilityInspector.java:70 - Exception in thread Thread[CompactionExecutor:1,5,CompactionExecutor]
org.apache.cassandra.exceptions.ConfigurationException: Invalid comparator class org.apache.cassandra.db.marshal.VectorType: must define a public static instance field or a public static method getInstance(TypeParser).

Still trying to see if I can get the test to fail

@dcapwell We having been playing with this code on our vector graph implementation and have just found that any saved SSTables with VectorType in them fail to load at startup because VectorType is missing a public static <T> VectorType<T> getInstance(TypeParser parser) implementation. Adding this requires support adding to TypeParser to pull the abstract type and dimensions from the string representation of the type.

@mike-tr-adamson this has been fixed and improved tests to detect this class of error; both AbstractTypeTest and RandomSchemaTest detect this case now...

I added a test, but only when the user provides a ByteBuffer for all values... which is what the current test already does... aka I have the client avoid serializing.... this is more testing that nothing weird is happening as the type is seen as a custom type to the driver

@JeremiahDJordan took a look at the java code and was wondering, are you planning to add non-fixed type support later or any validation that the vector provided by the user matches the type?  Looking at https://github.com/datastax/java-driver/compare/4.x...cep-vsearch#diff-c5840185344d92ac3e841b76b2edcfedfa0b3a34b8f03921acb14f130273c825R59-R81 it assumes the element is fixed length (which may not be true) and doesn't look to verify that the client gave the right element size?

@dcapwell such questions are why @absurdfarce was asking about serialization format on the JIRA
Yes the current implementation only works for fixed width types.

It seems RandomSchemaTest and AbstractTypeTest are flaky: https://app.circleci.com/pipelines/github/adelapena/cassandra/2941/workflows/d3c4d62d-5c29-4445-ad75-ff25d4b40654/jobs/49099/tests

It seems RandomSchemaTest and AbstractTypeTest are flaky: https://app.circleci.com/pipelines/github/adelapena/cassandra/2941/workflows/d3c4d62d-5c29-4445-ad75-ff25d4b40654/jobs/49099/tests

Yeah, I have been trying to fix this... The issue I keep facing is that fixing to match CreateTable and CreateType semantics breaks other tests... And our parser doesn't respect these rules, so taking a valid type, then converting to a CQL type literal, then getting back the type... returns an invalid type!  I pushed a fix last night for that and this breaks UDT tests and SSTableHeaderFixTest... so its kinda been a game of whack-a-mole -_-

Yeah, my fear was true... the following query now breaks "SELECT [k, v1] FROM %s"; before we knew it was a ListType, but now we don't!
I changed it so we default to list... so to get a vector you need SELECT (vector<int, 2>) [k, v1]...  I also changed this assumption for the get exact apis as well... as we don't have a target to guess from...

Caused by: org.apache.cassandra.exceptions.InvalidRequestException: Key may not be empty

I really hate our different rules for different columns 😢 ... its an easy fix, just had to add the following
if (i < partitionColumns)
    types[i] = types[i].withoutEmptyData();

java.lang.IllegalArgumentException: Invalid component representation: V@

The property "fromString(getString(bb)) != bb; %s" failed...  I was able to create a simple unit test for this case/data
        DynamicCompositeType type = DynamicCompositeType.getInstance(ImmutableMap.of((byte) 'V', BytesType.instance));

        String cqlLiteral = "0x8056000000";
        ByteBuffer bb = type.asCQL3Type().fromCQLLiteral(cqlLiteral);
        type.validate(bb);

        String str = type.getString(bb);
        ByteBuffer read = type.fromString(str);
        Assertions.assertThat(read).isEqualTo(bb);

Looks like size=0; which is valid for some types... fixed fromString to allow empty values and to delegate to the type to validate its valid

For flaky test RandomSchemaTest
seed=1686651894317L
Caused by: java.lang.AssertionError: Invalid value for row 0 column 6 (o of type 'org.apache.cassandra.db.marshal.DynamicCompositeType(r=>org.apache.cassandra.db.marshal.InetAddressType,N=>org.apache.cassandra.db.marshal.TimeType)'), expected <0x804e000800004a571799e37c00807200101488cd7435e195b091c85e26ecb2103600> (34 bytes) but got <0x000000030000003c00000001000000340000000300000010ecae961ff66edfec02f9079a38cebfb5000000040ede6ff2000000103a22603a0c8f2b57fe37a15028a39f120000006c000000030000003400000003000000109767762f06a54e754eab0b6b9429b29000000004dbd742b800000010a77459a2afb1ad22b562c378d51dbcf70000001c000000030000000428da1844000000045bcfe66400000004eb95981f0000000c0000000100000004a7ac7f7f0000001c000000010000001400000002000000044e9fcbfb00000004bc409874> (212 bytes) (using protocol version 5/v5)

I need to look into what happened here... InetAddress worst case is 16bytes (ipv6) and TimeType is 8 bytes... so 34 bytes makes sense... 212 does not!  This has to have the type names in the encoding for some reason for this to make any sense to me... but even then... org.apache.cassandra.db.marshal.InetAddressType = 47 chars, org.apache.cassandra.db.marshal.TimeType = 40 chars... so 43 + 47 + 40 + 2 * 2 ~= 140 bytes... but we have 212!
Caused by: org.apache.cassandra.exceptions.InvalidRequestException: Key length of 68003 is longer than maximum of 65535

yay random generation... this is clustering size check, with the following clustering key..
"fu74dgMGHmnxwvi9a6m2zRGeFinFcSUZKleN6gKhFsRe5OQFD3" double,
"W7X8WGc4HkJUyZVrg7Q" frozen<map<vector<frozen<map<text, text>>, 3>, frozen<map<boolean, frozen<tuple<'LexicalUUIDType', double, smallint>>>>>>

my guess is this is the map and not the double ^_^.  Changed max depth to be 1 (was 2), so map can still have a vector, but the vector no longer allows a map and requires a primitive... this should lower the size without 100% remove testing nested support....

@mike-tr-adamson I think this patch is fully ready, would love to get your feedback or approval
thanks!

This is looking really nice. However, it seems the randomized tests are still hitting some failures:

https://app.circleci.com/pipelines/github/adelapena/cassandra/2960/workflows/839693b4-0153-4eb4-ae5f-8baceff60081/jobs/51184/tests
https://app.circleci.com/pipelines/github/adelapena/cassandra/2960/workflows/839693b4-0153-4eb4-ae5f-8baceff60081/jobs/51173/tests
https://app.circleci.com/pipelines/github/adelapena/cassandra/2960/workflows/e331c243-8a3b-457a-981c-0e3d907d0476/jobs/51162/tests
https://app.circleci.com/pipelines/github/adelapena/cassandra/2960/workflows/e331c243-8a3b-457a-981c-0e3d907d0476/jobs/51156/tests

We probably should add entries on NEWS.txt about the new data type and the deprecated/removed sstable header fix.

just pushed changes to fix all test failures I have seen...


Click on object not working on virtual machine

Hi!
Script goal: click on the "sign up" button on the LinkedIn homepage.
Workflow:

Take a snapshot of the web element (sign up)
Use locateCenterOnScreen to get the x, y coordinates of the web element.
Use the click function to click on the web element.

Code:
`
import pyautogui
x, y = pautogui.locateCenterOnScreen('snapshot.png', confidence=0.8)
pyautogui.click(x, y)
`
Problem:
Issue 1: confidence parameter in locateCenterOnScreen function is required to be <=0.90, if 1 is chosen the script will not detect any element on the screen.
Issue 2: the pyautogui.click(x, y) function clicks on the wrong location. So I have to add and offset to click on the right place, e.g,  pyautogui.click(x+400, y+150)
Additional notes:

The script can run locally without any problems.
The pyautogui.locateCenterOnScreen function can run without confidence parameter locally without any issues.
The script fails on the virtual machine
I'm not using Mac, not using retina display, I'm using Windows 10 for both local and virtual machines.
The virtual machine has only one screen, if I use pyautogui.click(1, 1) it will correctly click on the left upper corner of the VM screen.

Can you please help me?

Ever get this to work? Trying to do similar thing. Please advise if you are able, thank you.


Global scope is always assumed to be "window"

ModelHelper.createGlobalJavaType always assumes that window is the correct name to use:
  public static Type createGlobalJavaType(String packagePrefix, String globalScopeClassName) {
    Type type = new Type(NAMESPACE);
    type.setName(globalScopeClassName);
    type.setPackageName(packagePrefix);
    type.setNativeNamespace(GLOBAL_NAMESPACE);
    type.addAnnotation(
        builder()
            .type(JS_TYPE)
            .isNativeAttribute(true)
            .namespaceAttribute("")
            .nameAttribute("window")
            .build());
    return type;
  }

However, this is only correct in a case like DomGlobal, which only makes sense in a normal window context. For classes like Global, this should instead be something like self, so that it works both in windows and in workers (as well as other non-browser JS contexts).
My proposal would be to change this to invoke nameAttribute("self"), since that seems as though it should be valid in window and worker contexts alike (see [1], [2]), but perhaps there is a better, more flexible solution?
[1] https://developer.mozilla.org/en-US/docs/Web/API/Window/self
[2] https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/self
In the mean time, objects in Global can't be used. Workarounds for others who find this:

For Symbol, make your own jstype to represent it, with a static function instead of a constructor to create it
For JSON, make your own JSONType with static methods instead of instance methods
For NaN/Infinity/undefined and other global methods, use your own static @JsProperty-annotated fields.

In all of these cases, JsPackage.GLOBAL should be used as the namespace to avoid needing to reference window.

goog.global is the replacement.
self unfortunately doesn't work in node.js environments. We added goog.global to GWT earlier so we could update the code generation. (https://github.com/gwtproject/gwt/blob/4825d47eee7505346de372a159db55b18b006a2a).

the link seems to be broken.

https://github.com/gwtproject/gwt/commit/4825d47eee7505346de372a159db55b18b006a2a

I would love to see a java constant added for this name such as JsType.GLOBAL with a little comment to indicate what it does. Although then we have both JsType.GLOBAL and JsType.GLOBAL. Maybe we should use the unfortunate naming convention adopted by TC39 ala JsType.GLOBAL_THIS. See https://github.com/tc39/proposal-global and https://github.com/tc39/proposal-global/blob/master/NAMING.md


Add ST_IsSimple

Is this PR related to a proposed Issue?
no
What changes were proposed in this PR?
I added ST_IsSimple
How was this patch tested?
yes, I added tests
Did this PR include necessary documentation updates?
yes, I updated

@avshRepo Thank you!


modify bert-BertModel and add examples

PR types

PR changes

Description

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Make Read-SQLTableData AzStaticWebapp\MsEdge compatible.

Since .Net compiles to WebAssembly now, it should be feasible to create a WebAssembly package for 'Read-SQLTableData' so one could import and run it directly in the browser so someday there could be a PowerShell client supported for AzStaticWebapp too.
Python example: Getting started with PyScript — PyScript documentation
CodePen demo : Pyscript fetching CSV data| Works (codepen.io)
Submitting as discussed with @Matteo-T.

WHAT IN THE WORLD? I wanna do this with my PowerShell 🤔


[Version 8] Handle Shadow DOM subtrees when checking for active element

Summary
This PR adds further support for Shadow DOM and custom elements, following work in #397. Note: it depends on changes in #455, so that should merge first.
Without these changes, our trapTabKey function doesn't understand when the user's focus is in a shadow subtree, so the user could escape the modal when we don't want them to.
Why?
document.activeElement is not aware of any shadow roots in the document. We have to check for shadow roots on the active element, then get the active element within that root. See getDeepActiveElement().

Aaaand I made a mistake. Merging #455 caused the branch to be deleted. Could you reopen this? Sorryyyy…


Maintenance: Fix DynamoDBLocal 2.0.0 update for v2

Summary
DynamoDBLocal, used in powertools-examples-idempotency, should be upgraded from 1.22.0 to 2.0.0. Dependabot tried to do this as part of #1255, but this appears to break in java 8.
As we are removing Java 8 examples in v2 in #1466, we should take this update, roll it into the branch, and make sure that everything works.
Why is this needed?
Basic maintenance - tracking dependencies.
Which area does this relate to?
Other
Solution
No response
Acknowledgment

[X] This request meets Powertools for AWS Lambda (Java) Tenets
[ ] Should this be considered in other Powertools for AWS Lambda (Java) languages? i.e. Python, TypeScript

I can take a look at this :-)

Sweet thanks @jdoherty !

DynamoDBLocal v2 is not compatible with java 8 anymore, we cannot upgrade

@jeromevdl maybe time for that conversation again eh.


Add support for time coordinates

This is needed to be able to store time domain items.

Model after C++ chrono:

Clock: epoch + tick rate
Time point: duration of time since epoch
Duration: span of time, number of ticks

Support various clocks:

Geological time
Wall clock time
...

Support various tick periods:

million years
microseconds
...

Initial support is in. We're not doing clock epochs yet, but we can handle time in various resolutions.


error is in the wrong location for an undefined constant after edits above it

To reproduce, copy this into a file in Atom:
// a comment

getName(PanelId id) {
  const panelNames = const <PanelId, String>{
    PanelId.note: "Notes",
    PanelId.tokens: "Tokens",
    PanelId.syntaxTree: "Syntax Trees",
    PanelId.javascript: "JavaScript",
    PanelId.output: "Output",
  };
  return panelNames[id];
}

Since PanelId is undefined, the following error appears underneath "PanelId" on lines 5 through 9:
'const' variables must be constant value
Now, add blank lines between the comment and the getName() function. For each line you add, the location of the error moves to the left by one character.
(Editing the comment has no effect. However, edits to whitespace within getName() do have an effect.)
Found via a stress test.

@scheglov Is the incremental resolver used in this case?

@bwilkerson Yes. I can reproduce the problem.

https://codereview.chromium.org/1667023002

https://github.com/dart-lang/sdk/commit/098d67330bdafb29f30f85e4c5fc906c75bdef24


Please support a 10_ARM64 OS parameter

It's already hard getting people to port their code to ARM64, and I hit an issue that makes it incrementally harder.
I was rebuilding some open source code in VS to ARM64, and the only issue I hit was that they had a post-build step to run inf2cat that formatted the OS parameter as "10_$(DDKPlatform)". On X64 platforms this resolved to 10_X64, which inf2cat supports, but on ARM64 it generated an error that took me an hour to hunt down because 10_ARM64 is not supported by inf2cat. Once I figured it out, the fix was simply to change the param to "10_VB_$(DDKPlatform)", but we should try to eliminate bits of friction like this by adding support for a 10_ARM64 os param to inf2cat.

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

ID: 0afbc04b-349a-57ed-eeb0-3d2cd28e359c
Version Independent ID: de61f684-31d7-2de5-d66c-a3319f5198d9
Content: Inf2Cat - Windows drivers
Content Source: windows-driver-docs-pr/devtest/inf2cat.md
Product: windows-hardware
Technology: devtest
GitHub Login: @DOMARS
Microsoft Alias: domars

@andyraf - Thanks for sharing what you are hitting with the use of Inf2Cat. I know many of the sample driver VS projects have In2Cat as a post build event, so this would seem like a common thing to run into. I followed up offline in email on some ideas on how to provide this input to the dev team. Thanks again for passing on what you are seeing with the ARM64 driver dev workflow.


[Widget] Computation device bug

instead of cpu/gpu, it is showing [object Object]
you can try at: https://huggingface.co/google/gemma-7b
cc: @SBrandeis  @Wauplin @xenova

is this a change from the backend @OlivierDehaene @Narsil?


chore: update organisms list for 2024-09-20 (#89)

Hi @hunterckx do you know why we are seeing only the 692 and not the 702 assemblies on the organism list? Thanks!

@NoopDog I believe it's because there are 10 assemblies that have no matches in the genomes spreadsheet

Thanks can you add the IDs of the extra tracks ( the ones that are missing in the sheet) to this ticket? @hunterckx

@NoopDog Alright, I've added a comment to #89 with the IDs


Feit 6" Smart Wi-Fi LED Ultra-Thin Canless Downlight - BK7231N - Firmware dump attached (OpenBeken Flasher read from UART)

Edit: I'm blind. I missed the profile-building section... Too much information = overwhelmed and miss things.
I think I got it from here, will update if I make progress.
Feit_Canless_6in_RGBCW.zip
Brand: Feit Electric
Model Number: LEDR6XT_RGBW_CA_AG
Description: Feit Electric 6" Smart Wi-Fi LED Ultra-Thin Canless Downlight
Type: RGBCW, direct PWM
Purchased at Menard's. Link to product page.
Module: BK7231N
Module type: CBU (marked on board)
PWM Channels:
R = 26
G = 24
B = 6
C = 8
W = 7

Good evening. I am not familiar with submitting GitHub issues, so please let me know if I am missing anything in this submission. I'm adding everything I feel is relevant.
I have a dozen of these lights that I'd like to flash OpenBeken to, and will be submitting documentation on the teardown of the first unit I performed. The teardown requires cutting rivets, so I would love to be able to flash OTA with Tuya-Cloudcutter.
I dumped the firmware from the first unit using the OpenBeken flash app via UART, then dumped it a second time at a second bitrate and hashed the two files. They hashed the same, so I know I got a clean dump. I was having some issues with my RX/TX pins...
Please see the attached firmware zip.
OpenBeken flashed cleanly and the light came up immediately.
What else is needed to build a profile? I can crack a second, unmodified light and hit the UART again.
Additionally, if there's a submission template I missed on what information is needed, please point me at it.

New device added as Feit LEDR6XT-RGBW-CA-AG 6-Inch Canless Downlight

@Cossid that was an incredibly prompt response. Wow!
Sadly, that did not seem to work for me.
What am I missing?

Disregard. I rebooted everything and it's good now.

Also make sure to update your git repo, there was a bug a couple days ago that caused you have to have a really quick device reset or it would prematurely fail.


Feature/282 create person() calls service to create account

new service createAccount() as part of the communication microservice
createPerson() calls the createAccount microservice
setTestSettings() easy setup for all new tests
default antelope private/public key cetralized

A few things should be done as a follow up:

Staging and Demo blockchains to be bootstrapped using a new private key X
Staging and Demo microservice needs private key X passed as env variable CREATE_ACCOUNT_PRIVATE_KEY
Tonomy Contracts needs private key X passed to the Github deploy actions
/Tonomy-ID-SDK/src/sdk/controllers/app.ts::create() needs to not use defaultAntelopePrivateKey And should instead the user should sign the transaction
/Tonomy-ID-SDK/src/sdk/services/blockchain/eosio/eosio.ts::getDefaultAntelopePrivateKey() Has three lines commented out which would fail the function if isProduction() is false. This should be implemented as a protection. However until point 4. above is fixed this cannot be done.
Clients (Tonomy ID, need to update their settings to include accountsServiceUrl and environment when calling setSettings() in the SDK. This is not important till point 5. Above is done.

:tada: This PR is included in version 0.15.0-development.2 :tada:
The release is available on:

npm package (@development dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 0.15.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Improper support for wildcards in routing keys

It seems Lapin currently doesn't support wildcards in routing keys correctly.
Environment

Elixir 1.5.3
Lapin 0.3.1

Steps to reproduce bug
Given this configuration
config :lapin, :connections, [
  [
    uri: "amqp://mq",
    module: MessagePublisher,
    channels: [
      [
        role: :producer,
        exchange: "events",
        exchange_type: :topic,
        queue: "lapin_test",
        queue_durable: true,
        publisher_persistent: true,
        routing_key: "*"
      ]
    ]
  ]
]

And publisher:
defmodule MessagePublisher do
  use Lapin.Connection
end

Sending a message like this
MessagePublisher.publish("events", "foo", %{bar: :baz} |> Poison.encode!)

results in an error message:
{:error, "Error publishing message: no channel for exchange 'events' with routing key 'foo'"}
Result expected
Message publishing should have occurred without any problem as the routing key set when publishing message should have matched the wildcard used in the binding.

This is fixed in 0.3.2, allowing publishers on topic exchanges to publish regardless of the routing key. Thanks @bdusauso for the report and testing.


Add Rangeen

Not sure whether this fits or not
I have one for Colors and Customizations which uses Material Colors algorithm
https://navnote.github.io/rangeen/
https://github.com/navnote/rangeen

Done ✅
https://github.com/birobirobiro/awesome-shadcn-ui/commit/fc9abd8d27545fe1f1189c66cdad4861e33844ff


Validators SBAT have synthetic verification load

[ ] Extend the tracer tool to be able to receive SMS via Twilio
[ ] Generate verification requests for those numbers
[ ] Track overall number of SMS received
[ ] Figure out which validators should have sent texts and track per-validator receive rates

Probably depends on #982

So starting to think about this (for the stakeoff)
Ideally, we have a public way of determining the statistics in something like Blockscout. https://github.com/celo-org/celo-monorepo/issues/1702 tracks that. It would be nice because

People have to trust us less
We'll have to build something eventually for Mainnet

However, since we'll only count CLabs-requested attestations (otherwise one could game the game), we could also just keep track of it as CLabs.
I don't think there is much synergy with our existing tracer tool/load-test besides the fact that it would be beneficial to be able to run this regularly. We probably don't want to load-test this, as it can cost quite a good amount of money to do so, but doing a few a day to ensure the network being up might be a good idea.
Otherwise, this is probably easiest to build into celotool as a command, very similarly to the

celotool account verify-automatic
grabs the mnemonic from the ENV, generates the relevant private key
uses one of the existing numbers (or maybe just request a random new one from twilio)?
requests an additional attestation
polls twilio for incoming text messages (since we can't easily/dont want to register a webhook)
complete the attestation

For operational purposes, we'll want to use our existing logging/alerting mechanism to

let us know when verification seems to be broken
maybe even let the validator know

Plan:

use mostly the design of the load-test #1806
amend it by reading some configuration from an in memory store to allow for graceful termination.
adds json structured logging


Fix indent after line with literal dict

There seems to be an issue with indentation when the previous line contains a literal dict with #{ } delimiters:
call prop_type_add('indent_after_literal_dict', #{ foo: 'bar' })
    call prop_type_delete('indent_after_literal_dict')

The attached patch fixes the issue. The "line continuation" regex ignores a tailing #.*, but if the next character after the # is a {, that shouldn't be considered a comment. This actually means that # alone won't be matched there, but oddly enough, indentation seems to work fine in that case for me.

Thanks, let me include it now


 OpenPauseComponent cleanup

Description
Task: OpenPauseComponent cleanup.
Feature: Team 6 Code Optimisation, Clean Up and Testing
Clean up and complete testing of OpenKeyBinds.java involves OpenPauseComponent.java which has heavy involvement with Team 9. Changes to file and development of testing files will be done collaboratively.
Documentation

Key Bind Implementation

Member

IsaacGraham (@IsaacGraham128)
Yingzheng Cai (@Rey-666)

Hi @Rey-666, I've cleaned up the playerGuide opening code and fixed that bug where the screens would darken each time a new player guide screen was opened!

Hi @Rey-666, I've cleaned up the playerGuide opening code and fixed that bug where the screens would darken each time a new player guide screen was opened!

Cheers! Great work, thanx for helping out!


Add frontend Nginx to publisher links

E2E tests are failing for publisher and it looks like we need to provide a Frontend Nginx in order for frontend.dev.gov.uk to be reachable by publisher in the test suite.

This seems pretty whacky. Why is publisher talking directly to frontend and not via router? what's changed?

@kevindew the change is at https://github.com/alphagov/publisher/pull/1552.


[BUG] Difficulty spike with Iron Difficulty

Describe the bug
This is not really a technical bug (so I removed the previous fluff) but a design problem; I found that the difficulty ramp-up from Casual to Iron was too big.
To Reproduce
Previously I played and won Galactic War on Casual: I don't camp much and a 1 vs 1 game against a Casual AI takes me around ~20 minutes. That said, they never posted more then a minor challenge to so started a second Galactic War on Iron... and I run into a brick wall.
Once I make it to one of the faction leaders, I'm suddenly in a 2 vs 1, where the AI expends in all directions, and I can't economically keep up: Or they win the space race and I die by death from above, or I keep control over the skies but I slowly and steadily loose ground control.
Actions
I feel that a more gradual development might be necessary. I understand that I'm just a casual player and that most PA players will laugh at an Iron AI, but I do hope that early on, players can get some more slack.
GW Details

Version: 5.32.0

Difficulty: Iron

Size: Medium

AI: Queller

Options: Faction scaling, System scaling

Bot commander

Complete Air
Complete Orbital
Artillery
Complete Energy
Titan Tech

ok just saying queller ai is prob why u have so much issue. Difficulty for GW only influence the tech ai gets and what econ rate they have, but not their actual performance. The ai used for the enemy for queller ai is queller uber, meaning the ai will play very well even if they have econ penalty in iron, especially considering u are a new player. This is why I suggest u to use penchant ai or titan ai.
Would be rlly nice if the enemy's skill level can be customized tho rather than only being able to tweak their econ rate.

You're using the Queller AI, which is described as " greater challenge at the cost of performance". You should use TITANS or Penchant if you are finding things too hard.


App high memory consumption

Reported by @janwillies on Slack after testing :latest. He used to set a 128MB limit with which the app used to work just fine, now he claims it's consuming 2.5 GB (VM I presume ,the profile below shows 1.25 GB).
I think the environment hasn't increased in size (@janwilles, can you confirm and give details on the number of probes?).
Profile: pb.gz

This will be the 1k report cache in smarterMerger.
We can (a) make this a command line switch, service probably wants it to be bigger and/or (b) remove entries from the cache when they are older than the reporting window.

We could also limit the cache size based on memory consumed instead of report cardinality. Although it may be hard to estimate the size of the reports.

We could also limit the cache size based on memory consumed instead of report cardinality.

How?

How?

Rough estimation from the entry/node count sum from all topologies? It's still not accurate but it gets us closer than simply a report count.
Note that I also wrote:

Although it may be hard to estimate the size of the reports.

We could also adjust the size to the incoming report rate so that Apps with a small amount of probes don't consume a lot of memory unnecessarily.

So by my calculations, with 1 host reporting every 3 seconds, there will be 5 reports involved in every merge.  So ~10 intermediate, cached nodes.  Every 3 seconds, 5 of these will be invalidated, so it will take 600s for the 1000 node cache up.
I added a timeout on the cache and reduce it to 200 entries, and after 10mins my scope app was using...

103.8MB

Maybe we can adjust the cache size based on the number of connected probes?
On May 6, 2016 5:53 PM, "Tom Wilkie"<EMAIL_ADDRESS>wrote:

103.8MB
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/weaveworks/scope/issues/1441#issuecomment-217496697


Adding a Random dialog Node to the Dialogic graphical mode

Description of the concept
I would like to propose you to integrate in the graphical mode of Dialogic a "random dialog node".
The idea is to allow a character to display a random dialogue among several possibilities. This is to avoid repetition and linearity of dialogs when an NPC has to do a dialogue loop (exemple: the welcom dialog of a vendor in a market place). These small variations of text that have no impact on the main story make the dialogues more alive.
How it would work ?

Printscreen of the Random dialog interface

Random dialogs would be available as a node in the Timeline section.
The user can add the node in the Timeline with drag and drop (like others nodes like Text Event, question etc.)
The user can set the number of possibilities and wich character speak.
By adding the number of possibilities, the text events are automatically created as well as the end node.
The user can change the order of the Text events with drag and drop
The user can set the probability to display each Text events with a priority order (In the example above, the second answer is twice as likely to be displayed as the others.)

I hope you like the idea, I think it would be really useful especially in visual novels when there are dialogue loops to make the characters more alive.
Unfortunately my knowledge of GDScript is not yet advanced enough to implement this new node within Dialogic.

Seems like a good idea!
Maybe the easiest way to implement this would be to add a random value to the Set value event, and then make several if after.
As a workaround until such a feature is implemented, what you can do is emit a signal, then catch this signal in your game to set the value of a Dialogic variable to a random value. This will emulate a Set random value graphical node.
You can then create several if events in the graphical editor to display different dialogs depending on the value.

I like the idea. I would call the event Chance and make it work with "options" for the branches, not sure it would get implemented soon, but thanks for the mockup and explanation since it seems like an awesome feature to add to Dialogic! 👍🏻

@NerdChickenGames in the latest update I added @Jowan-Spooner new feature of setting a random value. It is not exactly as you made it here since you will need to be checking with "if events" but you can achieve better results now than you could before. Please let me know if this works for you, and if it does we can close this issue 🙃

As @NerdChickenGames said he doesn't have much time right now, I would close this for now. If there is a need for more, this can be reopened.


Old Java 7

It appears that the current versions of java 7 are not able to work with idrac6. It may be necessary to specify a verison of java7 in the dockerfile that is known to work. I have gotten mine working with 7_80, and apperently 7_79 also works.

Interesting, will take a look. Thanks for the tip!

Confirmed.

@deef0000dragon1 @z3dm4n Do you already have trouble building the image? The current Java version in the image is 1.7.0_95, there is no other version available in the OpenJDK repo for Ubuntu 16.04. 18.04 only has 1.8.0 and upward, which won't work anyway.
I just built the image locally and the latest version available worked with no issues.

Hi Dominik,
image works smoothly, but connection to the remote console fails after some seconds. At first the connection is successful. After connecting via WebUI or VNC, the connection fails with "Login failed with access denied error." Hence I suspected, that @deef0000dragon1 experienced a similar issue as I did.
As there is no PPA archive where we could get prehistoric OpenJDK packages from, I am not sure how to address this, if this is caused by newer versions of this package.

@z3dm4n Interesting, I couldn't reproduce that issue yet. Using domistyle/idrac6:latest and building the image fresh both work just fine for a longer period.
Does the same thing happen when you run the Java console on another machine?

I'll re-check this issue on another server once I have time for this.

To specify the "not able to work with idrac6" bit, I was able to get the container started, and was easily able to get into the container. Unfortunately, The only thing that I would be greeted by once I was in was a pair of java notification boxes. One saying connecting, and the other saying  connection failed.
This was the same issue that I was encountering with a local version of java. Downgrading to 7_80 allowed me to access the console.
It might be possible to get the required jre it from https://snapshot.debian.org/package/openjdk-7/
specifically here ? but I wouldnt know for sure.

I ran into the same issue trying to connect to an iDRAC 6 session: the connection fails with "Login failed with access denied error."

@deefdragon I know this is an old post for you but can you say how you downgraded your java in the container?  I have the same issue.  The newer java versions do not work with my iDRAC6 fully updated.  I have a windows batch file to load this using the 7_80 version but would love to use this container instead.

@ptmorris1 @ipv6freely @deefdragon @z3dm4n does this solve your issue https://github.com/DomiStyle/docker-idrac6/pull/47 ?

I have deprecated my idrac6 system & upgraded unfortunately, so I can not confirm functionality.

I have deprecated my idrac6 system & upgraded unfortunately, so I can not confirm functionality.

No worries, thanks.

@ssmoss I know that this issue is quite old, but I think the problem is related to this.
My iDRAC cert recently expired, so now the IPMI KVM and the docker container stopped working.
Using JRE 6u45 on Windows it seems to work fine using the script from the ipmi-starter repo.
Is there maybe a way we could get the SSL expired error fixed (maybe with another version of Java)?

I have been using the Amazon Corretto Java, version 1.8.0 along with OpenWeb Start version 1.6.0 and I haven't had any issues. Are you using that?

@second2falcon I have been using the Amazon Corretto Java, version 1.8.0 along with OpenWeb Start version 1.6.0 and I haven't had any issues. Are you using that?

@ssmoss do you mean on the machine where I am using ipmi-starter or on the docker-idrac6 host?

I am running a Linux Virtual machine. Inside that virtual machine I am using Amazon Corretto Java and OpenWeb Start to connect.
In the end it was easier than trying to mess around with the docker container.


Fix forgotten argument in README

This change fixes the following error when trying the example:
Traceback (most recent call last):
  File ".../src/app.py", line 5, in <module>
    connexionApp = connexion.App(specification_dir='./swagger/')
TypeError: __init__() missing 1 required positional argument: 'import_name'

Coverage remained the same at 100.0% when pulling 05dfd2a1922c3009103cc5bf1a55c5275f641f79 on dereckson:patch-1 into 965254d7ca2b3823cb00644ff078cff7905e7140 on zalando:master.

:+1:

Thanks for the Pull Request.


fix: AU-1315, AU-1340, AU-1341, AU-1343: Liikunta toiminta- ja tilankäyttö fixes and translations

What was done

AU-1315: General translations
AU-1340: New applicant type
AU-1341: Remove extra text
AU-1343: Bold text

How to install

Make sure your instance is up and running on correct branch.

git checkout feature/AU-1315-toimintatilankaytto
make fresh

Run make drush-cr

How to test

[ ] Check that this feature works
[ ] Check that code follows our standards

@suvikankare - the tickets linked here are probably wrong? 1315 is correct, but 1340, 1341, 1343 don't look like they are correct ones?


run CI itself with race detection.

Not sure how much of a performance hit this will have, have you tried it on a staging CI instance?

Nope!  Will do.  My theory is "not much" since the runner itself doesn't do much lifting aside from driving around qemu.

LGTM

Note: Confirmed no discernible impact on test durations, so can just leave this on forever..  Data races detected in the runner can't be easily separated from data races in the tests afaik since the logs are combined, but changing that doesn't seem important at the moment (and it can be discerned from the actual stack content).
This will quietly go into effect the next time we reboot CI.


Add ogp.me metadata

Related to the social sharing side of #32 having http://ogp.me/ metadata makes the appearances of our pages on social networks worth seeing--otherwise they just guess from the content...which can be...error prone.
There's likely WordPress plugins for this, but it's really just a handful of <meta> tags you can easily crib form the ogp.me site.
Cheers!

Maybe we can use this?
https://wordpress.org/plugins/add-meta-tags/


ADAPT-3204 | @mattanglin | noindex page option

Ready for Review
Summary
Adds functionality to prevent configured pages from being indexed and removes them from sitemap on build
https://stanfordits.atlassian.net/browse/ADAPT-3204
Criticality

1

Review Tasks

Check out this branch
Setup env with Storyblok key for  DEV - OOD Giving
Run local build against storyblok dev
Serve local build locally and visit http://localhost:9000/no-index-page/
Verify that noindex meta tag present and canonical link missing from page source
Visit http://localhost:9000/sitemap/sitemap-0.xml
Verify the no-index-page not present in sitemap
Verify that pages intended to be indexed have canonical url and appear in sitemap

The following Storyblok content types will need to be updated in prod for the noindexfield

oodCampaignPage
oodInteriorPage
oodLandingPage
oodStory
oodSUpportPage
storyOverview
(Anywhere an SEO field appears)

One last change to the Algolia GQL query to prevent indexing of the noindex items.

Cool. I can add that here. It was scoped out as another ticket, but it makes sense to tag it in with these changes.

@sherakama Algolia query updated to omit noindex entities


Easier install instructions & better DX for new RPs

generate new key automatically when running new one-line command to install RP
hive check command to check GPU in docker is working & lint the env file

@mactus13 needs to be review


Do not read possibly remote file with lookup.

I an not sure if I should accept that patch in the meantime, I probably should :p

I understand this is temporary, but it's a fix for current usage


ts-for-gir and gi.ts

I'd like to understand what is the difference between this project and https://gitlab.gnome.org/ewlsh/gi.ts/-/tree/master/?
Are these two separate projects that tackle the same problem?

@marcinjahn yes it is so. When I started this project, gi.ts was not working, so I couldn't test it, otherwise I would have contributed there. Instead I contributed to this project which was originally initiated by @sammydre and I took over with time. I think now we can try different things in both projects and in the end maybe implement the best practices and maybe merge the projects again.
Currently this project has a few features that I need for my projects, so I don't want to give it up.

Hi :wave: I started gi.ts in 2019 when from what I gathered at the time this project had gone inactive. At that point the type definitions produced by this project did not accurately reflect GJS and weren't usable in my projects (e.g. typechecking gnome-shell and GJS itself) and I wanted to try rebuilding aspects of the type generation from the ground-up. Since then, @JumpLink has done a great work with this project while I have also made incremental updates to gi.ts. As @JumpLink points out, each project has its strengths and weaknesses when it comes to fully supporting GJS' APIs and features.
At this point, I hope we can find a way to unify the projects so the community benefits and we can work together on improvements going forward. I'll ping you on Matrix @JumpLink :smiley_cat:

Work in progress on https://github.com/gjsify/ts-for-gir/pull/144


Feature Request: Highlighted Text Statististics

Add the ability to to get word and character count statistics on a highlighted block of text either by hovering over the block or via a custom button in the floating widget.
Similar feature found in Marked 2:

+1


Dropping InstanceAccelerationStructureDescriptor causes a segfault in autoreleasepool

autoreleasepool(|| { let _ = metal::InstanceAccelerationStructureDescriptor::descriptor(); });

crashes with a segfault.
Repro.zip

I believe this was fixed with #320, could you retry using master?

I worked around it locally by manually sending retain before it goes out of scope. So that merged PR should definitely fix it.


Pinned metric temporarily not displayed on mouse leave

Introduced by #2296 (currently only on dev).

Closed by #2398


How would you write this query?

Hi Joshua and all,
How would you bind to a query with a statement that has a LIKE in it?
const stmt = db.prepare( ' SELECT * FROM books WHERE text LIKE "%searchTerm%" ');
stmt.run({ searchTerm: 'hello world' });

Currently it treats the searchTerm in the query as a stringLiteral and does not interpolate the bind parameter.
If I remove the quotes " and percent signs % it works, but then it doesn't really do much good searching...
Thanks in advance for any help.
Jordan

Move the handling of "%" into your application logic and then you can bind as usual. You need to handle the search input anyway if it comes from users (e.g. escape "%" itself if someone wants to literally search for "25%"). Or maybe you want to dynamically decide if it should be left or right sensitive and remove one of the % depending on a checkbox or whatever.
const stmt = db.prepare('SELECT * FROM books WHERE text LIKE :searchQuery');
let searchTerm = 'hello world' ;
stmt.run({ searchQuery: `%${searchTerm}%` });


Support disable logging console

Enhancement summary
Support  deactivating console logging on logging settings
Which component of AVD is impacted
eos_cli_config_gen
Use case example
Need to apply the following commands to a switch:
no logging console
However the logging datamodel does not support this. I am using eos_cli for now, but requesting support for this feature
Describe the solution you would like
Data model update, to look like the following (relevant change on the console settings):
logging:
  console:
    enable: <true, false | default --> true>
    level:  < severity_level >
  monitor: < severity_level >
  buffered:
    size: < messages_nb (minimum of 10) >
    level: < severity_level >
  trap: < severity_level >
  synchronous:
    level: < severity_level | default --> critical >
  format:
    timestamp: < high-resolution | traditional >
    hostname: < fqdn | ipv4 >
    sequence_numbers: < true | false >
  source_interface: < source_interface_name >
  vrfs:
    < vrf_name >:
      source_interface: < source_interface_name >
      hosts:
        < syslog_server_1 >:
          protocol: < tcp | udp (default udp) >
          ports:
            - < custom_port_1 >
            - < custom_port_2 >
        < syslog_server_2 >:
          ports:
            - < custom_port_1 >
  policy:
    match:
      match_lists:
        < match_list >:
          action: < discard >

Describe alternatives you have considered
using eos_cli
Additional context
No response
Contributing Guide

[X] I agree to follow this project's Code of Conduct

I think it would make more sense to introduce sth. like:
logging:
  console:
    level:  < severity_level >
<snip>
  "disable" | "no_logging":
    - < string >

under "disable" or "no_logging" we could list: "console", "monitor" or whatever else we want to disable?

Seems a bit less intuitive than having an enable: book K:V pair under the specific key (console or monitor). There's other places in the same Datamodel where the "level" key is used, so it would look more consistent to keep it like that.
Furthermore, the "enable": true|false is used extensively as well in other parts of the config, that is why I was proposing it with that format. That's just my opinion.

I agree to what you're saying. The "problem" with what your suggestion is, that it would break currently running installations (at least for console, monitor and trap) because they are not dictionaries today.
We could extend the current datamodel to something like:
logging:
  no_logging_console: < true | false >
  console: < severity_level >

  no_logging_monitor: < true | false >
  monitor: < severity_level >

  buffered:
    enable: < true | false >
    size: < messages_nb (minimum of 10) >
    level: < severity_level >

  no_logging_trap: < true | false >
  trap: < severity_level >

  synchronous:
    enable: < true | false >
    level: < severity_level | default --> critical >

But this would result in a mix.
Of course we could add a "no_logging_xxx" for all of them.. this way it would be harmonized.
Or create a list for disabling like I've initially suggested.
=========
Remodeling, like you suggest, will most likely be part of a new major release.
Ohter opinions & ideas?

I agree, good point. The way you're suggesting looks good

Alternative could be to look at the value of level, and if it is none then we disable with no logging xxx

Alternative could be to look at the value of level, and if it is disabled then we disable with no logging xxx (Edited to avoid the "none" word)

Is logging none a valid eos input? If that's the case, probably not ideal to masquerade it to sth different as there might be a case where someone wants logging none explicitly declared?

Valid input under the level key are the syslog severity levels. "none" is not part of them and "disabled" also isn't.
In order to avoid collision with the "None" keyword we should use "disabled" as Claus explained


can't scroll w/ Firefox

Bug exists on page
on any page, for testing purpose this can be used https://www.azurecitadel.com/ai/
Describe the bug
the scrollbar is not visible, nor can the page be scrolled with arrow keys or mouse wheel
To Reproduce
Steps to reproduce the behavior:

Go to page above with firefox (linux or windows)
try to scroll
See error

Expected behavior
the page should be scrollable as such properly visible on firefox

Hi folks! Firefox engineer here.  We investigated this in https://bugzilla.mozilla.org/show_bug.cgi?id=1776598 and determined it to be a case where the site is accidentally depending on a historical WebKit quirks-mode-only behavior.  Chrome/Safari actually agree with Firefox on the clipped/broken rendering, if I force the page to render in standards mode (by adding a <!DOCTYPE html> which is best-practice these days).
The fix should be pretty simple -- you've got a <main> element on each page whose height you're constraining with style="height:-webkit-fill-available".  If you change that main element to height: 100% or height: 100vh, it doesn't seem to change the behavior in Chrome/Safari (good) and it fixes the issue in Firefox, by using a more standards-compliant way to fill the viewport there.

As mentioned by @dholbert above, the fix is very easy. Get rid of the inline CSS in the three container elements, and change it to height: 100%;. I see absolutely no reason for the fill-available rule there, much less for use of non-standard or poorly supported rules. And quite honestly on a page like that with the content it has I do not see any reason to use overflow: hidden on the body element. It is a text heavy site, not an immersive SPA. I'm trying not to get into the discussion of "works best in Chrome" but hopefully the message came through. Use the standards. Keep it simple.

Seems there was some theme related issue reported earlier, but do not know which theme the Citadel uses.

The documentation is still not working correctly in Firefox , pls note there is no scroll-bar in right to view the content

Apologies for taking so long - that was an easy fix. Thanks @dholbert for the detail.

Also took your advice @ojt as a separate commit in case any unexpected issues crop up.
Thanks again to everyone who took the time to comment!


Refresh PowerToys Run instance without restarting PowerToys

Reason for the feature
I normally pull up the Windows Terminal using PowerToys run. On one of those occasions, I updated an environmental variable prior and found out that the instance of Windows Terminal launched still referred to the old value for environmental variable. I tested by opening Windows Terminal directly (without PowerToys Run) and my environmental variable was actually updated.
All the new instanctes of the Windows Terminal continued to refer to the old environmental variable until I locked my PC and logged in again.
📝 Provide a description of the new feature
PowerToys run should provide a means of refreshing its instance maybe through a context action when clicking the settings icon on tha taskbar, or whatevr way iis deemed best,
If you'd like to see this feature implemented, add a 👍 reaction to this post.

It isn't build into windows to detect these changes, so the following options are available

restart PowerToys
restart pt run button somewhere
Scan every N time interval to reload changes
Do some [registry watching] (https://www.codeproject.com/Questions/90085/Monitor-changes-to-an-environment-variable).

I think the use case is not met so much for the average user.

True though, only power users would need this functionality. The second option was really my best bet. A restart button would be great.

interesting bug.  can you quickly explain how you're updating the var(s)?  want to be sure i can repro

@amsmart lets have some solid repro steps here so we can simulate this so it won't happen again

@crutkas I believe I updated my environmental variables through Settings --> System -->About --> Advanced System Settings --> Environmental Variables. Nevertheless, I'm quite sure the means of updating the env doesn't matter. All roads lead to the bug. Everything opened with PowerToys after it is first opened uses the environmental variables from the point when it got opened.


frozen_inference_graph.pb Tflite Conversion pls help

I have been trying to convert the frozen graph to .tflite for over 2 weeks to deploy on android studio, till i have found that this frozen graph input is name: image_tensor, type: uint8[?,?,?,3] that's it i need help regarding this conversion, i need output file name and also deploy it on android studio. I will be much thankful for your help.

Hey have you managed to convert to tflite? any update?

No
On Thu, Oct 1, 2020, 7:01 AM Mahamat Nour Ali Mai<EMAIL_ADDRESS>wrote:

Hey have you managed to convert to tflite? any update?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10/issues/524#issuecomment-701743513,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARDDTGP23FLQ5XXVSZNQRC3SIPPHJANCNFSM4RV2WCCQ
.

Do you have the solution for it?
On Thu, Oct 1, 2020, 9:34 AM Ameer Hamza<EMAIL_ADDRESS>wrote:

No
On Thu, Oct 1, 2020, 7:01 AM Mahamat Nour Ali Mai <
<EMAIL_ADDRESS>wrote:

Hey have you managed to convert to tflite? any update?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10/issues/524#issuecomment-701743513,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARDDTGP23FLQ5XXVSZNQRC3SIPPHJANCNFSM4RV2WCCQ
.

Not yet.

@mahamatnoumai  @AmeerHamzaDev  Go this link https://gist.github.com/apivovarov/eff80275d0f72e4582c105921919b852
Hope this helps not sure. Please Update if you could do the conversion.

@ash97-ai  Thanks for sharing


Version file in https://ftp.ebi.ac.uk/pub/databases/chebi/Flat_file_tab_delimited/

Hi, it would be great to have a version file [here ](Version file in https://ftp.ebi.ac.uk/pub/databases/chebi/Flat_file_tab_delimited/).
e.g. VERSION that only contains the current unique version string for the data.
with the current version of the files. To make it easy to check for updates.
Or is this info provided somewhere else?

Hi @sorenwacker
All previous ChEBI releases are stored in the archives folder (https://ftp.ebi.ac.uk/pub/databases/chebi/archive/)

So, to find out what the current version is, I have to look into the archive to see what versions are there? Or is the current release always also present in the archive? So that I can simply use the archive?

The current release is 218 and its also present in the archives folder. At the beginning of each month we also put a tweet out on ChEBI's twitter account to notify users that a new release is available. The ontology files (chebi.obo) also contains the version number. The data that is available to download from ChEBI's website (https://www.ebi.ac.uk/chebi/downloadsForward.do) belongs to the current release.

Ok, so I know now how to get the version number. I still think, it would be good practice to add the version into the folder, but that is up to you, or course. Thank you!


boards: particle_xenon: Add support Xenon

Codecov Report

Merging #11587 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #11587   +/-   ##
=======================================
  Coverage   48.22%   48.22%
=======================================
  Files         279      279
  Lines       43285    43285
  Branches    10357    10357
=======================================
  Hits        20875    20875
  Misses      18270    18270
  Partials     4140     4140

Continue to review full report at Codecov.

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

For consistency with other boards based on Nordic hardware, shouldn't it be named something like nrf52840_xenon?

@pabigot I kind of disagree, if you look at the reel board it's named reel_board, also there are 2 other boards we can add namely the argon and boron .

Most other boards like the ble400, sparkfun, and adafruit that use Nordic hardware but are not from Nordic follow the convention; reel_board and 96b_nitrogen are exceptions for nrf52, and there are a couple more for nrf51.  The question is what's the standard (if there is one), and whether a new board does (or should) conform to it.  Nothing rules out nrf52840_argon, though I do think nrf52840_particle_argon is getting a bit long.

@ekarlso @pabigot I have no real preference here. We have tended to use nrf*_ for Nordic Development Kits but there is no real standard behind it.
Maybe @anangl or @ioannisg have a preference?

@dbkinder can you take another look?
@ekarlso can you fix the compliance issues?

@ekarlso will you be able to get back to this soon?  There's also PR #11996 pending.

For gitlint the commit message requires a body, not just a subject line and signoff.
For identity/emails: you misspelled your name in your git user.email config setting, causing a mismatch.
Author: Endre Karlson<EMAIL_ADDRESS>Date:   Wed Nov 21 22:19:01 2018 +0100

    boards: particle_xenon: Add support Xenon

    Signed-off-by: Endre Karlson<EMAIL_ADDRESS>
For license some subset (possibly all) of board.cmake, particle_xenon.yaml, and particle_xenon_defconfig need copyright/SPDX headers.
For checkpatch: particle_xenon.dts has spaces where it should have tabs.
git format-patch -1 --stdout | ${ZEPHYR_BASE}/scripts/checkpatch.pl -

@pabigot but which file is missing license ? I can't see which based upon what other boards have

All three files I listed are missing a copyright and license block.  Note that this check was made more strict after most of the other boards were merged, so that it's missing for them is not relevant: it's needed now.

@pabigot & @dbkinder can you review again

@ekarlso @locomuco I think it would make sense for there to be a common dts include file for the functional assignment to pins exposed on the Feather header for xenon, argon, and boron.  By eyeball the only difference is that xenon adds a UART2 which is used internally for connection to a coprocessor on the other two.
It might be easier to get both boards in separately then make them consistent, though, adding base boron at the same time.

Going ahead and closing this since we now have 1 PR for all Particle boards.


Include sample responses for user and role management through admin services for all operations

Please include sample responses for all the operations with sample values in [1] . This is very useful for developers who will be using this in an application to continue the work flow
[1] https://docs.wso2.com/display/IS540/Managing+Users+and+Roles+with+APIs#ManagingUsersandRoleswithAPIs-getUserList()

Thank you for your contribution!
We are closing this issue since it has not been prioritized for a long time. Chances are that it has already been solved in more recent versions. If not, we will be re-evaluating this when it becomes a priority.


API Import with published state doesn't work

APIM-CLI version
1.14.4
API-Management version
<IP_ADDRESS>40228
Bug description

New API Import with state published doesn't work. It imports the API and virtualize it but later deletes it followed by error message:
2024-08-22 09:47:05,695 [APIImportApp] ERROR: The status change from: 'published' to 'published' is not possible!
| Cannot update API-Proxy status.
| Unable to send HTTP-Request.
com.axway.apim.lib.error.AppException: The status change from: 'published' to 'published' is not possible!

API Import to publish a previously unpublished API is also behaving the same way.

Attaching file with debug logs.
UnpublishedToPublishedAPIImport.txt
NewPublsihedAPIImport.txt
Steps to reproduce
No response
Relevant log output
No response

Hi @HaritaMittal,
When we create a front end API on API manger via REST API / UI, it tries to download the backend certificates based on  open api server section,  If server is not reachable, it gets timed out and throwing the exception.  We can use any one of the following options.

we need to give a valid  URL in open api spec
use  api cli param -overrideSpecBasePath true ( it will override the server section based on api-config.json backend base path)
increase apim cli client timeout using param -timeout 60000.


[Storage] HTTP_PROXY no longer supported

Looks like we lost the support in commit 5823d3ce57 when getDefaultProxySettings was removed.

Maybe we should try loading from environment in the constructor of ProxyPolicy if the passed in setting is undefined?

Yes, if no proxy settings were provided, then we should run getDefaultProxySettings and pass then same to proxyPolicy()
My question would be if this can be moved inside proxyPolicy()
cc @daviwil

My thinking is if this is handled in azure.core then all libraries get it for free.

What @ramya-rao-a suggests is definitely the behavior for the new PipelineOptions support in core-http so it seems like the corresponding logic was missed when Brian changed the Storage library to have a lookalike implementation.
I agree with @ramya-rao-a, perhaps we can move the || getDefaultProxySettings() logic into ProxyPolicy so that it's handled centrally and consistently?

I guess the one reason not to do this is because there's currently no other way in PipelineOptions to explicitly say that you don't want to use the proxyPolicy.  Right now we use undefined to indicate that proxyPolicy shouldn't be added to the pipeline.  getDefaultProxySettings() may return undefined if no proxy environment variables are found, thus no proxyPolicy gets added.  Do we care about this?

When undefined gets passed to the proxyPolicy() it should essentially behave like a no-op policy.
The only downside is that everyone will now have the proxy policy, it will be no-op unless user provides the proxy settings or if getDefaultProxySettings() returns undefined.
Am ok with that

sounds good.  I will make the fix in storage libs

The fix should be in core-http.
The expectation out of proxyPolicy() should be as follows

If any proxy settings are passed, respect them
Else if getDefaultProxySettings() returns settings, respect them
Else do nothing. The policy acts as a no-op policy


HDFS-17080. fix ec connection leak

Description of PR
This PR fixes EC connection leak if got exception when constructing reader.
How was this patch tested?
Cluster: Presto
Data: EC
Query: select col from table(EC data) limit 10
Presto is a long time running process to deal with query.
In this case, when it gets 10 records, it will interrupt other threads.
Other threads may be in constructing reader or getting next record.
If getting next record is interrupted, it will be caught and Presto will close it.
But if constructing reader is interrupted, Presto cannot close it because reader in Presto has not been created.
So we can observe whether EC connection is closed when doing EC limit query.
Use netstat command.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
20m 54s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+0 :ok:
detsecrets
0m  1s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

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

_ trunk Compile Tests _

+0 :ok:
mvndep
15m 48s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
36m 14s

trunk passed

+1 :green_heart:
compile
18m 43s

trunk passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
compile
16m 48s

trunk passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
checkstyle
4m 40s

trunk passed

+1 :green_heart:
mvnsite
2m  4s

trunk passed

+1 :green_heart:
javadoc
1m 38s

trunk passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javadoc
1m 28s

trunk passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
spotbugs
4m 28s

trunk passed

+1 :green_heart:
shadedclient
38m 47s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 30s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 20s

the patch passed

+1 :green_heart:
compile
17m 38s

the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javac
17m 38s

the patch passed

+1 :green_heart:
compile
16m 53s

the patch passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
javac
16m 53s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
4m 34s

the patch passed

+1 :green_heart:
mvnsite
2m  3s

the patch passed

+1 :green_heart:
javadoc
1m 33s

the patch passed with JDK Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1

+1 :green_heart:
javadoc
1m 30s

the patch passed with JDK Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

+1 :green_heart:
spotbugs
4m 44s

the patch passed

+1 :green_heart:
shadedclient
40m 42s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
2m 40s

hadoop-hdfs-client in the patch passed.

+1 :green_heart:
unit
7m 43s

hadoop-mapreduce-client-core in the patch passed.

+1 :green_heart:
asflicense
0m 59s

The patch does not generate ASF License warnings.

271m 46s

Subsystem
Report/Notes

Docker
ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5807/1/artifact/out/Dockerfile

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

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell detsecrets

uname
Linux 0387f556cff5 4.15.0-212-generic #223-Ubuntu SMP Tue May 23 13:09:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / e73f432f56ca8c209cff0a7f3077522b5e76e0d7

Default Java
Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.19+7-post-Ubuntu-0ubuntu120.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_362-8u372-ga~us1-0ubuntu1~20.04-b09

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5807/1/testReport/

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

modules
C: hadoop-hdfs-project/hadoop-hdfs-client hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core U: .

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-5807/1/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

I didn't quite understand how the problem occurred. closeCurrentBlockReaders() will be called whether blockSeekTo() or DFSInputStream#close() is called. Would you mind adding a UT to reproduce this problem?

@harris233 Thanks for your contributions. Would you mind to file new JIRA (https://issues.apache.org/jira/projects/HDFS) first, and link this PR? Please let me know if any issues you meet.

OK, I will do it later.

I didn't quite understand how the problem occurred. closeCurrentBlockReaders() will be called whether blockSeekTo() or DFSInputStream#close() is called. Would you mind adding a UT to reproduce this problem?

In normal case, it's right. closeCurrentBlockReaders() will be called whether blockSeekTo() or DFSInputStream#close() is called.
But if got Interrupt Exception, it has no chance to close it when constructing reader(Presto or other application).
I find ec block readers will not be closed if got Interrupt Exception and only throw exception.
I guess it may want application(presto) to close it.
However, reader is not constructed in application(presto) and cannot close it.
Exception Stack:

@harris233 Thanks for your contributions. Would you mind to file new JIRA (https://issues.apache.org/jira/projects/HDFS) first, and link this PR? Please let me know if any issues you meet.

OK, I will do it later.

I try to apply a new jira acount, but unfortunately they refused my request because they have run out of JIRA IDs. @Hexiaoqiao

Opened HDFS-17080 to track this PR

@jojochuang Thanks WeiChiu for your help.
@harris233 Would you mind to re-apply, and attach this PR link to the application form? I will try to trace and approve.

Opened HDFS-17080 to track this PR

Thanks

@jojochuang Thanks WeiChiu for your help. @harris233 Would you mind to re-apply, and attach this PR link to the application form? I will try to trace and approve.

OK, I have applied it again and attached this PR. @Hexiaoqiao

Approved. Please following the guide of email from ASF. Thanks.

Approved. Please following the guide of email from ASF. Thanks.

Thanks, I have successfully applied


Design and implement SPO versioning / epoch

Files on SPO can be restored by tenant admin and user.
This results in "undo" of ops.
Whenever that happens, we need to communicate that change to all interested clients such that they do not try to catch up / submit any ops.
Scenarios:

Active client connected to PUSH
Offline client that will try to connect / catch up in the future.
Same as above, but client that fetches ops from storage before it succeeded to connect to PUSH (not possible today, but protocol should take that into account).

Likely key pieces of implementation:

Storage (PUSH & SPO) track "version" or epoch for a file. It starts with some predictable number (0 or 1) and is incremented every time file is overwritten through external means.
Whenever clients retrieve ops from storage, or attempt to connect to PUSH, there has to be a handshake between client and server regarding expected version by client and current version on the server. In case of mismatch, client has to disconnect and issue critical error on container.
PUSH has to kick all clients whenever file is overwritten through external means. It may or may not communicate reason - it's not that important
Client has to retrieve "starting" version when loading file. This naturally happens due to # 2 when there are no snapshots (staring from socket). For loading from snapshot case, it would be ideal to store that information in snapshot itself, as it also helps for future scenarios where storage does not store ops (and thus the only way for runtime to retrieve ops is by storing them as part of snapshot). But, this design required SPO to go through every snapshot in file and bump version in snapshot, which is likely not ideal. Not sure what's best design in here.
We need to come up with proper mechanism to raise "file was overwritten" error to hosing environment / app, such that it can show proper error dialog / reload page (as needed). Currently, this is handled through raising errors through "error" handler on container with statusCode property as a pivot to differentiate various interesting cases. We might use or not use that mechanism.

Across all decisions, we need to understand separation of concerns between driver & runtime.

@vladsud and @jatgarg I think we will want to complete #3478 before this work, as i think we need to have a way so shutdown the session cleanly. I'm not sure what else in on your plate right now Jatin, but if you have bandwidth you could pick up  #3478

Right now, I am engrossed in driver work of having a sharing link in the POST call for teams scenario which needs to be finished by upcoming week and then this epoch needs to go in before mid October. I will be able to take a decision early next week depending upon the current work that I am doing. Maybe I will accommodate this.

I'm not sure I see the connection. epoch failures are not different from any other critical errors that we already have (and deal) in the system. In all critical error cases we do not want to automatically reload page, we want to let user save any state (through copy/paste) and only then reload (if needed).
Context reload has quick different semantics - we have to ensure that user state is not lost, and I believe we do want automatic reload.  If we can't achieve them, then yes, we may want to give up on seamlessness of scenario and move to similar manual refresh mode. But I'd not tie that decision (and implementation) to epoch, given it just a corner case of more general critical failure path.

I think I can take up the work. But as @vladsud  pointed out and I was of the same opinion, that epoch mismatch error should be handled by manually reloading or copy/paste scenario just like other critical errors. So I can take this up after implementation of epoch for which I have a PR out.

@jatgarg is there anything left to do here?

The last I remember - PR is still active, I've left some comments that needs to be addressed. Correct me if I'm wrong.

Can we link the PR to the issue then?

https://github.com/microsoft/FluidFramework/pull/3785

The last I remember - PR is still active, I've left some comments that needs to be addressed. Correct me if I'm wrong.

@vladsud Took the PR suggestions. You can take a look at it now.

Closing with the PR: https://github.com/microsoft/FluidFramework/pull/3785


[rename] Documentation does not describe the "--commit" option

This is a very important option since on default, the "rename" command won't write anything and commit option is required to effectively rename files.
It must be fixed.

Fixed in 0.5.2


Setting a cookie in Next.js in a server action causes a Hydrate warning and wagmi stays in "reconnecting"

Describe the bug
When a server action sets a cookie with cookies().set("myCookie", "value") and wagmi is setup using a cookie store, then after the action has been performed, a warning is thrown and wagmi is stuck in reconnecting status:
Warning: Cannot update a component (`Page`) while rendering a different component (`Hydrate`). To locate the bad setState() call inside `Hydrate`, follow the stack trace as described in https://reactjs.org/link/setstate-in-render
    at Hydrate (webpack-internal:///(app-pages-browser)/./node_modules/wagmi/dist/esm/hydrate.js:12:13)
    at WagmiProvider (webpack-internal:///(app-pages-browser)/./node_modules/wagmi/dist/esm/context.js:13:13)
    at Providers (webpack-internal:///(app-pages-browser)/./app/providers.tsx:39:11)
    at body
    at html

The only way to get wagmi to reconnect is to refresh the page.
I have created a repo with minimum setup to reproduce.
Link to Minimal Reproducible Example
https://github.com/smauret/wagmi-next-bug-repro
Steps To Reproduce

Setup wagmi with a cookie store
Trigger a server action that sets a cookie
See warning in browser console + wagmi account status stays "reconnecting"

Wagmi Version
2.5.7
Viem Version
2.7.3
TypeScript Version
5.3.3
Check existing issues

[X] I checked there isn't already an issue for the bug I encountered.

Anything else?
There are a couple of similar issues, and they might all be related, but this issue specifically uses the wagmi cookie store and setting cookies.
The cookie setup is slightly different than in the docs because I use rainbowkit (explanation here) and I don't believe that is an issue.

Fixed


optimistic updates demo is error

this is the demo on the official website, after verification, i found that bound mutate should be used for mutate here
// current
import useSWR, { useSWRConfig } from 'swr'

function Profile () {
  const { mutate } = useSWRConfig()
  const { data } = useSWR('/api/user', fetcher)

  return (

My name is {data.name}.

      <button onClick={async () => {
        const newName = data.name.toUpperCase()
        const user = { ...data, name: newName }
        const options = { optimisticData: user, rollbackOnError: true }

        mutate(updateFn(user), options);
      }}>Uppercase my name!</button>

  )
}

// the modified
import useSWR from 'swr'

function Profile () {
  const { data, mutate } = useSWR('/api/user', fetcher)

  return (

My name is {data.name}.

      <button onClick={async () => {
        const newName = data.name.toUpperCase()
        const user = { ...data, name: newName }
        const options = { optimisticData: user, rollbackOnError: true }

        mutate(updateFn(user), options);
      }}>Uppercase my name!</button>

  )
}

You're missing the '/api/user as 1st argument for the current version you posted above

You're missing the '/api/user as 1st argument for the current version you posted above

I read it wrong, only the chinese documents have problems, I resubmitted the PR


Document routing conflicts with various IIS features

Routes with dots generally have issues with static file handling
Routes with "unsafe" characters get rejected by IIS

Let's do this as part of https://github.com/aspnet/Docs/issues/61