Add alert to notify about duplicate sample/metric ingestion

Description
This PR does the following,

Merge duplicate reporter into throughput reporter
Add alert about duplicate sample/metric ingestion
Add an e2e test to verify metrics related to duplicates are populated
Rename gauge metrics which ends with total to make linter happy [1]

[1] https://github.com/grafana/dashboard-linter/blob/44d415fb6bdc4d8e6585e514c448174d4de1ff02/lint/rule_target_counter_agg.go#L30
Signed-off-by: Arunprasad Rajkumar<EMAIL_ADDRESS>Fixes #1687
Merge requirements
Please take into account the following non-code changes that you may need to make with your PR:

[X] CHANGELOG entry for user-facing changes
[ ] Updated the relevant documentation

@arajkumar what's the status of this?

@arajkumar what's the status of this?

Thanks for the nudge @paulfantom. I will resume this and address @Harkishen-Singh's concerns.

@paulfantom @Harkishen-Singh PTAL.


Failed to Load Plugin

Hi
Error is found here: "https://pastebin.com/XZzwa8FH"
I use Paper 1.14.4 and all files got all Permissions they need.
Thanks,
Nexo

@dfsek you have to move this to the Terra repo because I can't.
Also @Nexobeast:
the issue is you're trying to load a pack which contains blocks that don't exist in 1.14 lol

"the issue is you're trying to load a pack which contains blocks that don't exist in 1.14 lol"
Excatly, but the Legacy-Version is for 1.13.1-1.15.2, and dont work on 1.14.4

We don't support the legacy versions. If you want it to work with legacy, you'll have to modify the pack.
I don't even think the legacy pack works tbh


Usage Analytics

As zitadel maintainer I want to have some solid figures what zitadel versions are being used.
Acceptance criteria

[ ] A usage report is uploaded containing relevant informations
[ ] Usage reports can be disabled

What data we would like to collect:
Disabled Profile

NONE

Minimal Profile

Version
Instance Ids

Extended Profile

Domain Name
Amount of Users
Amount of Orgs
Amount of Projects

Debug Profile

Failed projections
Crash logs
Additional?

As discussed @hifabienne


Active node is not marked

It should be easy to spot which is the active node. The active node is the one that will be edited when you press tab.

Fixed!


posts on home has no link on from

@home = @current_user.home
@home.first.from.link is null
not only the first ... all of them are empty.

Is that included in the data from the graph API? I thought the data provided for users was very minimal.

@mmangino,
i looked in the graph api and ir returns only the Name and the ID in the From object. But we use the same object, so we should  document it  or we should change the object ? Or we should do nothing ??

I don't plan on documenting the graph API in mogli. If somebody wants to know what data they get from each call, they should look at the graph documentation.
Mike
On Oct 17, 2011, at 10:11 AM, Rafael da Silva Almeida wrote:

@mmangino,
i looked in the graph api and ir returns only the Name and the ID in the From object. But we use the same object, so we should  document it  or we should change the object ? Or we should do nothing ??
--
Reply to this email directly or view it on GitHub:
https://github.com/mmangino/mogli/issues/87#issuecomment-2429186

--
Mike Mangino
http://www.elevatedrails.com

Ok ok ... thx for the attention.
[]`s
Rafael Almeida
www.rafaelalmeida.net
7265-3019
Antes de imprimir esse e-mail, eu pensei no seu carro gigante parado na
garagem do seu trabalho... se voc pode ter um carro desse tamanho para
andar sozinho, eu posso imprimir o que me der na telha.
On Mon, Oct 17, 2011 at 12:16 PM, Mike Mangino <
<EMAIL_ADDRESS>
I don't plan on documenting the graph API in mogli. If somebody wants to
know what data they get from each call, they should look at the graph
documentation.
Mike
On Oct 17, 2011, at 10:11 AM, Rafael da Silva Almeida wrote:

@mmangino,
i looked in the graph api and ir returns only the Name and the ID in the
From object. But we use the same object, so we should  document it  or we
should change the object ? Or we should do nothing ??
--
Reply to this email directly or view it on GitHub:
https://github.com/mmangino/mogli/issues/87#issuecomment-2429186

--
Mike Mangino
http://www.elevatedrails.com
--
Reply to this email directly or view it on GitHub:
https://github.com/mmangino/mogli/issues/87#issuecomment-2429230


Lightline support not working

I saw your commit to add lightline support in https://github.com/npxbr/gruvbox.nvim/commit/877451aff3f125ded1cb6c3b080d358bb5cfe112
However, when I start vim, it tells me
lightline.vim: Could not load colorscheme gruvbox
I did a plugin update and verified in the folder that /lua/gruvbox/plugins/lightline.vim exists, and it's there.
Do I have to enable it somehow?

hey @dahmc can you share your current config please?

This is my current lightline settings:
let g:lightline = {
			\ 'colorscheme': 'gruvbox',
			\ 'active': {
			\   'left': [ [ 'mode', 'paste' ],
			\             [ 'gitbranch', 'readonly', 'filename', 'modified' ] ]
			\ },
			\ 'component_function': {
			\   'gitbranch': 'FugitiveHead'
			\ },
			\ }

cool i will debug it here on my side. thanks

hey @dahmc can you pull latest and try again. We still have a loading issue showing an error msg due to the way lightline loads the script, but i could see that the highlights are working fine. LMK if you have more issues and if we can close this

@ellisonleao works great. Thanks for the fix!
I don't see any error message btw :)


Would like the ability to stop the gradle daemon from flutter tool

I regularly see gradle consuming nearly 700+ MB of RAM on my Linux system.  I consider that to be a lot, especially when it's sitting there doing nothing.
The path to my gradle binary is convoluted (e.g. ~/.gradle/wrapper/dists/gradle-4.4-all/9br9xq1tocpiv8o6njlyu5op1/gradle-4.4/bin/gradle) and changes with gradle versions, so manually invoking gradle --stop is non-trivial.
Additionally, the flutter tool tries to abstract away build processes for Android (and iOS) apps, so many users might not even know what gradle is or why it's running.  Since flutter run started the gradle daemon, it'd be nice if the flutter tool also provided some mechanism to stop it.
I mentioned this in chat a few months ago. @dnfield considered disabling the gradle daemon unless the user opts in.  I suggested making flutter stop (possibly with a command-line option) stop the gradle daemon, but @Hixie didn't like that since it's not really what stop is meant for. He suggested adding a command-line option to flutter clean to do it.
Some other ideas:

Automatically stop gradle if flutter run hasn't been used in some time. (But this would require some other daemon.  Ideally gradle would provide the ability to do this itself.)
Automatically stop gradle when there's no longer a connected device. (But even if there is a way to be notified of this, this probably also would need some other process.)

What if you just have gradle (any version that knows gradle stop) available on your path?  Does it need to be the same version as used for the wrapper?

That's actually exactly what I had been doing, but recently I noticed that gradle --stop always told me that there were no running gradle daemons.  Eventually I figured out that it was because flutter run was spawning a different version of gradle. =(

Presumably if you flutter run an Android application we should terminate the corresponding Gradle daemon when the run completes?

Actually, I think that daemon might be shared by different processes ... erm

Another problem is that when I upgrade Flutter, if it uses a new version of gradle, I can end up with multiple gradle instances running. =(

Do we have a sense of how much time the gradle daemon actually saves us on subsequent rebuilds?  Would it be better to just disable it by default, and maybe have a flag to allow the user to use it if they want?

@blasten - in your work with Gradle lately, have you noticed a nice way we could start/stop this?
I suspect that now that we build plugins as AARs, we'd want to potentially start the daemon and stop it after the run.
Alternatively, we could guard it by a feature flag - but I'm not sure when opting in would make sense (it could make multiple builds faster but you'd have no idea how/when to safely kill it).

@dnfield while we are waiting for the gradlew process, we could install a ProcessSignal.sigterm handler and kill daemon using .../android/gradlew --stop. This seems to work as long as we use the same gradlew script.

where would you install the signal handler?

The tool itself. My thinking is that killing the tool should result in stopping the daemon.

I'm not sure how that would impact the IDE plugins, and I'm not sure what would happen if you had multiple instances of the tool running all trying to use the same gradle daemon...

flutter run/attach might be a special case since we release the lock early.
Side note: gradlew --status gives you the list of processes:
$ ./gradlew --status
   PID STATUS   INFO
 63298 IDLE     4.10.2
 65382 BUSY     4.10.2
 65350 IDLE     4.10.2

kill the daemon if 65382 started by the current instance of the tool and the remaining processes are IDLE.

What's the status on this?
Is there a way to opt out in v1.12 ?

@rajveermalviya we don't yet provide a way to do this.  But you can configure gradle by adding this line:
org.gradle.daemon=false

To your android/gradle.properties file.

Also, I haven't tried this, but running gradlew --stop in the android directory might work too.

Thanks, @dnfield
For those working with team and not wanting to add it to source control,
this also works in global config ~/.gradle/gradle.properties on linux
org.gradle.daemon=false

Yes, just be aware that that will disable the daemon system wide on your computer - which will likely be a big slow down if you're building regular Android projects via Android Studio for example.

Does it impact flutter builds too? I see no difference in my build time (just some memory savings).
Gradle daemon seems to be irrelevant for flutter anyway as flutter already has Hot-Reload and Hot-Restart feature independent to gradle daemon. Gradle daemon seems to be of advantage only for native android apps as it doesn't have Hot-Reload functionality and requires rebuild every time.
However it will impact add-to-app flutter.

It doesn't impact hot restart/hot reload, but it does impact subsequent full APK/AAB builds for Flutter.

in our case, we would like to disable the daemon in some case.

CI builds use the daemon
developers locally use the daemon
release builds should not use the daemon
the release builds are created in a separate environment on the CI server. Since the daemon takes quite some memory and release builds are sparse, we'd like the release build to cleanup the daemon. Ideally we would be able to pass the gradle property org.gradle.daemon=false to the flutter build tool. Is that possible?

https://github.com/flutter/flutter/pull/68409 will add the ability to specify not to start a daemon (for run or builds). That does not provide a way to stop an existing daemon, but should allow avoiding if it isn't necessary

That will do indeed, thanks!


Instruct fury to discard classInfo in the serialised data during deserialisation

Feature Request
Scenario is specific to fury data migration.
We have serialised data in the db which is serialised without registering few classes, now we want to register the classes. This means, in the process we can encounter below two new scenarios :

Data serialised by fury instance with class registration --> deserialised by fury instance without class registration -- THIS DOES NOT WORK

Data serialised by fury instance without class registration --> deserialised by fury instance with class registration

Just wondering, is there a way to instruct Fury to disregard the classInfo in the serialised data during the deserialisation process?
Is your feature request related to a problem? Please describe
As the serialised data contains classInfo, during serialisation fury seems to be expecting the class with same package structure or corresponding classes in registered with same classId to be deserialised. Making it difficult to refactor the data object in the migration.
Describe the solution you'd like
Feature or flag that instructs the fury deserialiser instance not to consider the classInfo in the serialised data. Or any other solutions to get rid of class registration would be very helpful.
Describe alternatives you've considered
No response
Additional context
Code snippet to reproduce the issue locally.
import io.fury.Fury;
import io.fury.ThreadLocalFury;
import io.fury.ThreadSafeFury;
import io.fury.config.CompatibleMode;
import io.fury.config.Language;

public class FuryProblem {

    public static void main(String... args) {
        Wrapper wrapper = new Wrapper();
        ComposedObject composedObject = new ComposedObject();
        composedObject.setEnabled(true);
        wrapper.setComposedObject(composedObject);
        byte[] srcBytes = furyWithRegistration.serializeJavaObject(wrapper);
        Wrapper resultWrapper = furyWithoutRegistration.deserializeJavaObject(srcBytes, Wrapper.class);
        assert composedObject.getEnabled() == resultWrapper.getComposedObject().getEnabled();
    }

    public static ThreadSafeFury furyWithRegistration =
            new ThreadLocalFury(
                    classLoader -> {
                        Fury f =
                                Fury.builder()
                                        .withLanguage(Language.JAVA)
                                        .withClassLoader(classLoader)
                                        .registerGuavaTypes(false)
                                        .withCompatibleMode(CompatibleMode.COMPATIBLE)
                                        .requireClassRegistration(false)
                                        .build();

                        f.register(Wrapper.class);
                        f.register(ComposedObject.class);
                        return f;
                    });

    public static ThreadSafeFury furyWithoutRegistration =
            new ThreadLocalFury(
                    classLoader -> Fury.builder()
                            .withLanguage(Language.JAVA)
                            .withClassLoader(classLoader)
                            .registerGuavaTypes(false)
                            .withCompatibleMode(CompatibleMode.COMPATIBLE)
                            .requireClassRegistration(false)
                            .build());

    static class Wrapper {
        ComposedObject composedObject;

        public ComposedObject getComposedObject() {
            return composedObject;
        }

        public void setComposedObject(ComposedObject composedObject) {
            this.composedObject = composedObject;
        }
    }
    static class ComposedObject {
        Boolean enabled;

        public void setEnabled(Boolean enabled) {
            this.enabled = enabled;
        }

        public Boolean getEnabled() {
            return enabled;
        }
    }

}

Hi @Nikhil-n17 , why do you want to register some classes? Is that for security consideration? Or you want to skip write classname for smaller serialized data?
It's hard to ignore class id in the serialized data. You must use registration all the time, or just don't use it. The registered classes must have same order and same class id.
One of the solution I think of is that you use multiple Fury instance with different configuration. And you write a different magic number for every Fury instance. And use the coresponding Fury for deserialization.
Here is an example:
Fury fury1 = Fury.builder().withName("fury1").build();
MemoryBuffer buffer = xxx;
buffer.write_int32(magicNumber1);
fury1.serialize(buffer, new SomeObject());

Fury fury2 = Fury.builder().withName("fury2").build();
MemoryBuffer buffer2 = xxx;
buffer2.write_int32(magicNumber1);
fury2.serialize(buffer2, new SomeObject());

int magicNumber = buffer.read_int32();
if (magicNumber == magicNumber1) {
  fury1.deserialize(buffer)
} else if (magicNumber == magicNumber2) {
  fury2.deserialize(buffer)
}

Previously in the legacy app, we had single fury instance to serialise and deserialis. Database only contains the serialised by this instance. With the existing app being migrated to new system ( System B ) in which we have DTO refactoring, we have done some refactorings to DTO ( renaming and reusing the possible DTOs).
Example
System A  - Legacy app - Database already contains data written by this app.
public class DTOStructSystemB {
    String stringField;
    int intField;
    CustomDTOR1 customDTOR1;
    CustomDTOR2 customDTOR2;
}

public class CustomDTOR1 {
    String name;
    String age;
}

public class CustomDTOR2 {
    String name;
    String age;
}

/* Both CustomDTOR2 and CustomDTOR1 were registered in fury instance */

System B - Migrating to this new System B - won't be using the DTOs or fury instance old app used.
public class DTOStructSystemB {
    String stringField;
    int intField;
    CustomDTOinNewSystem customDTOinNewSystem;
    CustomDTOinNewSystem customDTOinNewSystem;
}

public class CustomDTOinNewSystem {
    String name;
    String age;
}

We are looking for a way to create fury instance in System B in such that, both class are correctly deserialised to CustomDTOinNewSystem, we are forced to have another DTO of same structure just to be able to deserialise the data written from legacy app.


Preserve line breaks for textarea formatted text

We're going to allow newline formatting for textbox_large content submitted to us and displayed back to users.
In this pull request, we're allowing newlines in:

textbox_large areas of individual brief pages
(brief summary, workplace description, etc.)
clarification questions and answers for briefs
textbox_large areas of individual G8/G9 service pages
(includes most of the follow-up questions)

Where we can, we're checking if the question type is textbox_large before applying the filter. But on the brief questions and answers, for example, we don't have a question object to inspect -- only a list of strings. We know they're all textbox large questions anyway, so there we just use the filter without checking.
We are not adding this to search results because search result rankings are a competitive space and we don't want there to be an incentive to create very large service summaries and/or brief descriptions.
example
This example is a lot like the one in the briefs app, but here we also have a search result page.
with this json
  {"summary": "As Engagement Lead, you will:\r\n\r\n* Lead on DAS engagement  and
    DAS stakeholder engagement requirements with stakeholders and as part of the
    multidisciplinary delivery team.\r\n\r\n* Create briefing and communications
    materials for inter-team and cross-government engagement\r\n\r\n* Represent needs
    of stakeholders and communications activity in the DAS senior management team"
  }

ie, Engagement Lead

before & after

search results are not formatted

Lots of people will just type in the bullet point character to make things that look like lists.  From what I've seen, many more people do that than use asteriskxes.
The problem then would be that we could automatically put bullet points for people but then we would possibly end up with
<li>• We are the leading hyper cloud provider</li>
which would render onscreen as
• • We are the leading hyper cloud provider.
So the easy thing to do is not try to format anyone's text as HTML at all -- not try to guess their intention and fit it into semantic elements -- but just make it look more like whatever they wrote into the textarea.


Chapter 10 - memory (structs)

From Discord chat (3-March-24)
So right now for Ch 10 we're looking at:

integer arrays only
Typed syntax int[] var
Create syntax is RHS only int[size]; array starts pre-zeroed (no un-init security holes)
Arrays can be null
Null check in if promotes to a not-null type: if( ary ) ary[...]
Arrays can be declared as never null: int[] var
Arrays can be declared as maybe-null: int[]? var // Syntax TBD
Parser declares error to use a maybe-null array; requires e.g. a null check to promote
A print, arrays (and any expr) can be printed

SoN changes needed:

Memory Start value
Memory edges; memory Phis
Loads and Stores
Allocation, no free (GC)
If-check promotes (CastNode)
Range-check code (just used existing nodes)
User-written panic/exit.  Semantically like a "return -1;" except error reports in the end.
PrintNode

From The Simple Graph IR paper:
2.5 Compound Values: Memory and I/O
We treat memory like any other value, and call it
the STORE. The START node and a PROJECTION-STORE
node produce the initial STORE. LOAD nodes
take in a STORE and an address and produce a new
value. STORE nodes take in a STORE, an address, and
a value and produce a new STORE. PHI nodes merge
the STORE like other values.

From Discord 6-March
Memory is treated like a value , like an integer or float.  Its a big value (32-bit memory is 4G) and will be broken up into smaller parts as we add aliasing.  Start produces an empty memory mem, sorta like the existing arg.  Loads use it, just like e.g. an Add or a Phi uses a normal value.  Phis merge it, just exactly like merging int.  Stores consume AND produce it.  Generally there's exactly 1 chain of stores (and Phis) through out the program; memory is serialized via Stores.
Normal peepholes rules apply (although the actual peeps are different).  We can do Load-after-Store removal, Store-after-Store removal, cloning Loads thru Phis like we do Adds now, GVN on Loads.  GVN is used on Stores but generally does nothing; the memory input on the Stores typically vary (not always).  Here's a GVN Load example:
  int x = ary[arg]; // Load at index arg from current memory
  int y = ary[arg]; // Same memory, same index arg, so GVN

becomes int xy = ary[arg];
Here's a Store example:
if( rand ) { ary[arg] = 7; }
else { ary[arg] = 7; }

Same base array, same index arg, same value 7.  So GVN the stores.
ary[arg]=7; if( rand ) {} else {}

Stores produce a new memory state; its like you took an int value and OR'd in some bits: its a NEW VALUE.
Here using mem suggestively but using integers:
int old_mem = rand();
int new_mem = old_mem | 0x7; // Set some bits

Again using Stores and [MEM] as the Type of memory:
  [MEM] old_mem = Start.mem; // Initial memory
  [MEM] new_mem = Store(old_mem,address,value);

WHen we add aliasing Stores, produce a new alias slice of memory, instead of All-Of-Memory.
Why is memory lumped together?  Because aliasing is one of the hardest things in a compiler.  Using the equivalence class aliasing style loses some precision, in exchange for ENOURMOUS simplicity.  Back in the 80's and 90's Java's level of "free aliasing analysis" that comes with strong types was shown to give around 95% of the best gains you'll get from the best possible alias analysis.
You asked how addresses are handled; mostly just like integers.  They'll be typed as Pointers with an alias, but otherwise are very similar.  The easy general rule we should start with is:

Across different aliases, the memory is unrelated.
We start with exactly 2 alias, the alias for integer array bodies, and the alias for array length.
Within an alias class, different offsets are known unrelated.  This works well with Structs and fixed offsets.  Generally array bodys don't have fixed offsets, so you'll again get aliasing.
All Loads & Stores are generated from the Parser split along alias#s (again, only these 2 so almost no effect).
After that, Loads & Stores use their address & offset to bypass each other, in an attempt to get maximal freedom for other optimizations.
Again, general rule is: 2 base addresses are assumed to alias, unless you can immediately (locally) tell otherwise.  We can just start with a "cant tell" and add peeps to gradually widen the graph.
Again, general rule is: 2 equal addresses, but with unknown offsets (IntBottom) are assumed to alias.  Only if the offsets are constants can you tell, and then bypass.

A new int[size] produces a new Pointer value (obvious).
It ALSO produces a pre-zeroed state of memory for the array - except we can just assume that this memory is pre-existing from the Start.mem, and the new just gave us a handle to it.  So no need to do memory updates on a new
2 arrays of the same base type yes alias - so 2 int arrays alias.
All array length fields alias with each other, no array length field aliases with any array body.
We can improve aliasing locally for known new allocations, which start out never aliasing.  As soon as pointers escape... they can alias.  So for starters here I'm gonna say "yes two new allocations alias"
In practice this is rarely a problem, unless you're hoping to do HPC-style Fortran computing.
This model works great for any strongly typed language.
But "array bodies" are not "strongly typed" between elements.  Basically array address math just blends all possible array elements together.

Relevant discussion on CCC https://youtu.be/VS8WMiZ_4i8


filter nodes - Filtering select should use the actual node name - not the DOM-rendered name

In the "Filter Nodes" filtering search, top of the left nav, I've found a behaviour I'd describe as a bug in that:
Say you have a sub module called, "My Module Foo". The "Foo" will wrap, visually, in the sidebar nav:
My Module
Foo

But, if you go to search for the specific module in the filtering select and type, "My Module Foo" nothing is found! To find it you have to leave the space out between where it wraps.
Instead, searching by, "My ModuleFoo" finds the item. I think this is bad and therefore filing a bug on the UI.
node-red: ~1.0.3
On Win10, Chrome: 78.0.3904.108 (Official Build) (64-bit) (cohort: Stable)

Thanks for reporting. I suspect the filter code is using the formatted text rather than the raw text - so the newline is tripping it up.
For future issues, please use the template we provide as it makes it easier to capture all the necessarily information.

@knolleary It is. Furthermore, today I tried to filter using the search term "3.0" and got the following, so I inspected it and see this, which has no 3.0 in it whatsoever:

Anyway, I want to contribute. I want to make the search regex-able, and I don't want it to consider the added br tags - which really makes no sense to me because CSS can control wrapping behaviour and there is no need for these br tags.
How do I contribute? I'd love to! I'll read into it. Can somebody assign this task to me? I really dig NodeRED, especially for IoT stuff made painfully easy. I am a full stack guy and would love to give back. Sound good?

@neillindberg
Hi.
This seems to be occurring because the text is acquired in the following part.
<EMAIL_ADDRESS>    function filterChange(val) {
        var re = new RegExp(val.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'),'i');
        $("#red-ui-palette-container .red-ui-palette-node").each(function(i,el) {
            var currentLabel = $(el).find(".red-ui-palette-label").text();  // ← the part
            var type = $(el).attr("data-palette-type");
            if (val === "" || re.test(type) || re.test(currentLabel)) {
                $(this).show();
            } else {
                $(this).hide();
            }
        });

Example
Demo for subflow in subflow is recognized as Demo forsubflow insubflow .

@okhiroyuki from the discussion, @neillindberg had asked how to contribute to the project. You've jumped in and provided a fix ignoring his request to fix it himself.
So whilst I appreciate your enthusiasm to help fix issues, please do not do that when someone else has already said they would like to do it.

@knolleary @neillindberg
I have done something very rude.
Once the Pull Request is closed.

I'm happy to have reported and had such a turn around from the community. No worries y'all. Thanks.
I looked at the PR and it is closed. Did it get approved and merged? I don't see that action. Did it just get tombstoned?
I've very little insight into the NodeRED GUI, so thank you. I'll likely run into more. Like, you know the instances count on the subflow info panel? Wouldn't it be cool to click-to a usage?

You had offered to do it, and the other guy jumped in. Once it was pointed out - he apologised and withdrew his pull request. We want to encourage more people to contribute and leaping in ahead of them won't encourage anybody...
Anyway net is the code was not merged - so please feel free to go ahead and create your own fix - or indeed approve his as long as it is tested and works.

I can see the valid change and this experience demonstrated how one would contribute. I still plan to do that. Right now I need to focus on fixing a broken app (I'm newish to NodeRED, but not NodeJS) using my explorer project to diff flow files...
https://github.com/neillindberg/node-red-explorer
I'll get involved on forum. Thank you all!

So... would you like @okhiroyuki to re-open his pull-request ?

Yes, please. I reviewed it. Just a selector issue. Perhaps a test to
confirm that bar is effectively ignored?
On Mon, Dec 23, 2019, 9:20 AM Dave Conway-Jones<EMAIL_ADDRESS>wrote:

So... would you like @okhiroyuki https://github.com/okhiroyuki to
re-open his pull-request ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/node-red/node-red/issues/2409?email_source=notifications&email_token=AAIEKLRRWP6MSJPWOM2Q5NLQ2DJKDA5CNFSM4J2XCKS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHRKQVQ#issuecomment-568502358,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIEKLVODIQOB3I6WBRC2ZTQ2DJKDANCNFSM4J2XCKSQ
.


Neural Coder modular design

Type of Change
Enable Neural Coder modular design
Description
Enable Neural Coder modular design
Third-party libraries, like optimum-intel, will add a "launcher" in their repo calling neural_coder's Launcher class, and add API design string in corresponding location as a .py file. The usage will be python -m optimum.intel.launcher main.py instead of the original python -m neural_coder main.py.
Expected Behavior & Potential Risk
Enable Neural Coder modular design
How has this PR been tested?
Locally
Dependency Change?
No

/Azurepipeline run


Can I open another TCP server as a thread to contact with some TCP Clients?

I want to transport the Httprequest  to the TCP clients which are connecting the TCP server, the TCP clients get Httpresponse and send back to the proxy, then the proxy send back.
Can i succeed?

@robitxj - can you give any more info on this issue?


Clean up Docker reference handling

This pulls in mtrmac/image:docker-references and updates for the API change, to demonstrate things working.
Do not merge as is, I will re-vendor from the master branch after merging the other PR.

Updated to pull from master and squashed, please ACK so that we keep the two projects in sync.

ack, feel free to merge as soon as CI is green :)


Update mongodb version to 3.1.6. Implement updateOne and updateMany

I updated MongoDB version to 3.1.6.
Added updateOne and updateMany. Added these same to tests as well.
The code is formatted with standardjs. To omit the white space changes use ?w=1 at the end of the comparison url.

Implemented in master


Support for stripe.js v3 paymentRequest method

Hey thanks for making angular-stripe.  Was wondering if you have any plans for supporting the new Stripe Elements release: https://stripe.com/docs/stripe-js/reference#element-types?
This new method 'stripe.paymentRequest' from v3 of their js is what needs to be included.

I'll second this, v3 support would be great for this library.

Hey I have a bit of a backlog of open source stuff at the moment. Wasn't planning on adding this but I'd be happy to help w/ pull requests.

are there any plans for doing this :)?

This would involve changing the URL for Stripe.js and adding the method to https://github.com/bendrucker/stripe-errback. Can't make any promise as to when/if I'll do this myself but I will happily devote time to PRs.


bomFormat

Hi, looking at https://github.com/CycloneDX/specification/blob/1.4/schema/bom-1.4.proto, I don't see bomFormat.
https://cyclonedx.org/docs/1.4/json/#bomFormat - described here as "Required."
Should an enum be defined in the proto message Bom for this?
When converting a sample payload into a proto type the conversion complains about the bomFormat in the JSON message.
{
  "bomFormat": "CycloneDX",
  "specVersion": "1.4",
  "serialNumber": "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79",
  "version": 1,
  "components": [
    {
      "type": "library",
      "name": "acme-library",
      "version": "1.0.0"
    }
  ]
}

bomFormat is specific to the JSON serialization. It does not exist in XML as XML supports namespaces which tells the consumer of the document what it is.
IMO, I would simply drop bomFormat when converting from JSON to protobuf. Again, you shouldn't have this issue when converting from XML to protobuf.
@coderpatros @DarthHater thoughts?

Yeah, this is unique to the JSON format. I'm not sure there would be benefit in adding it to the protobuf format.


Force-enable C89 on MSVC, OS X, Linux?

Docs appear to be missing allocator::c::Malloc on MSVC and OS X:
https://docs.rs/ialloc/0.0.0-2023-05-06/x86_64-pc-windows-msvc/ialloc/allocator/index.html
https://docs.rs/ialloc/0.0.0-2023-05-06/x86_64-apple-darwin/ialloc/allocator/index.html
Presumably cc isn't finding an appropriate C or C++ compiler in the docs environment?
Interestingly the C++ allocators are available on i686 but not x86_64 linux.

ab02016886813f798193e0b28e8830e7260f657d


Spec Should Support Path Input

Modernize the interface to accept str or Path.

This does not seem to be valid anymore, since Spec is not using paths of any type. This may have been moved over to the underlying FileStore store implementation, which is using Path, so it may be already complete.


Normalize env var trailing /

Pull Request Test Coverage Report for Build 819

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 80.464%

Totals

Change from base Build 816:
0.0%

Covered Lines:
2341

Relevant Lines:
2728

💛  - Coveralls

:tada: This PR is included in version 1.13.0 :tada:
Your semantic-release bot :package::rocket:


GetRouteDirections documentation/javascript problem

If you read the following documentation:
https://docs.microsoft.com/en-us/javascript/api/azure-maps-rest/models.routegetroutedirectionsoptionalparams?view=azure-iot-typescript-latest#constantspeedconsumptioninkwhperhundredkm
It states that this property type is number
This is correct, it does expect a number in the JS library. However, the documentation has this sensible value: 50,8.2:130,21.3
If you try to use this sensible value in JS (as a string), the JS library complains that it should be a number. However, if you change it to a number, you will receive a 400 error. I caught the REST request, changed the parameter to have the sensible value and I received a 200 OK with route response.
So in short:

There is a bug in the javascript! It only accepts numbers, but with the number, the REST call doesn't work.

Hello @tomkuijsten Thanks for reaching out, will review your question and get back to you as soon as possible

@dsk-2015 , @walsehgal can you please involve the content author to address this doc-bug?
Thanks for reporting this @tomkuijsten !

@tomkuijsten, thanks for pointing it out. Our Engineering team is looking into it and we will inform you once its resolved.

@tomkuijsten, sorry for reaching back so late. The issue has been resolved.
@sergaz-msft, #please-close

Was it a doc fix or a js lib fix?


Make epubs.

Describe your suggested feature
The feature where you can import epubs is so good, but there was an option where you can make epubs from the downloaded chapters from the app please add it back.
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with a source, I should be opening an issue in the sources repository.
[X] I have updated the app to version 2.0.0.
[X] I will fill out all of the requested information in this form.

Duplicate of  #1309


Adds template alias support

This should do the trick! The formatting fixes do complicate things a bit, though.


fixed Please adjust default table-striped color when dark mode is active  Fixes

Fixes #39029
Description

The comment suggests that there was a problem related to readability in the Dark mode of a table. In Dark mode, the background might have been too dark, making it difficult for users to distinguish the table text from the background. This lack of contrast can lead to an uncomfortable user experience and hinder accessibility.
so, I have added the table-dark to tables.

By incorporating the table-dark class, developers aim to enhance the user experience, especially when the application is being used in Dark mode. This change promotes accessibility and ensures that users can easily read and interact with the table's content, regardless of the chosen color scheme.
Before:

After:-

Hey,
Thanks a lot for your contribution. I think your solution, might introduce an issue for the doc in light mode. And it doesn't resolve the issue you mentionned since people still want to use standard tables.
Closing it for #39033. Feel free to debate if you think I've seen it wrong.


user API key support for projects

Today, a user's API does not allow access to projects the user belongs to.  Adding support to address this.
Fix project tests.

Start with cookie-auth.

This is now on master. Both of them.

Tested with build from master jun/09
Github user test1 belongs to github group - g1.
Add g1 as member to Default environment.
Create env1.
Create env2 and add g1 as member.
Create API keys for a github user account - test1.
Using this apikey , able to use /v1/projects// to view and create resources for the project for both env2 and Default environment.
There is 1 issue where proper error code is not returned when attempting unauthorized access to projects which is tracked in #1127 -Attempting to access resources from a project that user does not have access to should result in API failing with "Unauthorized" error code.


Improve surfaced errors to the console when API requests fail or workload is improperly configured

Is your feature request related to a problem? Please describe
This error commonly occurs when an API request fails or when the workload is improperly configured. This error message is poorly configured and does not provide necessary details to debug. Users have to add logging statements in order to figure out what happened.
2024-12-18 19:56:27,458 -not-actor-/PID:20048 osbenchmark.benchmark ERROR Cannot run subcommand [execute-test].
Traceback (most recent call last):
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/benchmark.py", line 1024, in dispatch_sub_command
    execute_test(cfg, args.kill_running_processes)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/benchmark.py", line 746, in execute_test
    with_actor_system(test_execution_orchestrator.run, cfg)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/benchmark.py", line 773, in with_actor_system
    runnable(cfg)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/test_execution_orchestrator.py", line 381, in run
    raise e
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/test_execution_orchestrator.py", line 378, in run
    pipeline(cfg)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/test_execution_orchestrator.py", line 69, in __call__
    self.target(cfg)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/test_execution_orchestrator.py", line 314, in benchmark_only
    return execute_test(cfg, external=True)
  File "/workplace/mikeovi/opensearch-benchmark/osbenchmark/test_execution_orchestrator.py", line 273, in execute_test
    raise exceptions.BenchmarkError(result.message, result.cause)
osbenchmark.exceptions.BenchmarkError: Error in load generator [0]

Describe the solution you'd like
Add better error handling so that the error gets displayed to the user.
Describe alternatives you've considered
No response
Additional context
No response

Similar to issue #447 but that one is specifically for errors related to Jinja2 formatting


Misnamed parameter "include_significant" on method Task.get_param_names

The classmethod Task.get_param_names has either a really confusingly misnamed parameter include_significant, or the implementation has a bug.
Example:
>>> class T(Task):
...     significant = Parameter(significant=True)
...     insignificant = Parameter(significant=False)
...
>>> T.get_param_names()
['significant']
>>> T.get_param_names(include_significant=True)
['significant', 'insignificant']

So, I'd suggest to rename the parameter to include_insignificant (insignificant), or to change the implementation that on default it only returns the insignificant parameters, which would be weird though.

@MartinHeimsoth-V
I was wondering the same thing.
Regarding your suggestions,

So, I'd suggest to rename the parameter to include_insignificant (insignificant), or to change the implementation that on default it only returns the insignificant parameters, which would be weird though.

The former suggestion sounds better. I see the include_significant is just a typo and expected behavior is to return only significant parameters on default.
The later suggestion of changing default behavior is a major change that can cause some problems in existing codes.
@daveFNbuck
I saw you were involved in the latest revision of this method. Do you have any idea on the expected behavior?
I made a related pull-request (https://github.com/spotify/luigi/pull/3168) before seeing this issue.
This request is accidently equivalent to the former suggestion of renaming include_significant.


fix: setup proxy variables in the start

Summary by CodeRabbit

Chores

Improved proxy settings, IP retrieval with timeout, and curl request timeouts in the deployment process.
Enhanced Redis compatibility checks and installation steps.

/build-deploy-preview skip-tests=true

/build-deploy-preview skip-tests=true


ivc accumulate + decider verify fails when using the MockCircuits full circuits

If this is a real issue it needs to be solved for the RollupIVC to work


Localization

With our increasing base of English speaking users, there is the need to implement localized string resources to provide feedback messages with extensible languages (PT-BR, EN, RU, etc.)
For this, we should follow the i18n pattern according to the following examples:
const message = localize('sayHello.text', 'Hello')
https://github.com/Microsoft/vscode-extension-samples/blob/master/i18n-sample/src/extension.ts#L14
https://github.com/Microsoft/vscode-extension-samples/blob/master/i18n-sample/i18n/jpn/package.i18n.json
All fixed message strings should be changed to call the localize function.

I suggest to use RESX microsoft format for i18n, with this format my team can colaborate with translations.

Available @ https://github.com/killerall/advpl-vscode/pull/182


Support .glb animation

Currently: minted .glb files with animation do not play back automatically.
Same .glb animation plays in https://sandbox.babylonjs.com/ and https://gltf-viewer.donmccurdy.com/
Test .glb: https://www.dropbox.com/sh/onypljfmtpgvbyi/AABxu6uJFBUBcbQ8Wiru5ACYa?dl=0
Questions:
What is the default behaviour? Do animations autoloop unless stated otherwise.
How is animation playback defined within the xrpk?
How is animation playback behaviour managed by artists?
Provide standard animation use-cases? Play/Stop on click etc
To me it makes sense that .glbs with animation would auto-play and loop all animation within the file. This would be satisfying for beginners and a lot of life can be given to the world through simple loop animations. Unlikely there is a general use-case in which animation would be present within the .glb but the user would not like it to play.
Possibly related: https://github.com/webaverse/app/issues/210

What is the default behaviour? Do animations autoloop unless stated otherwise.
They should yes, we should implement it that way.
How is animation playback defined within the xrpk?
We'll add an autoplay that makes it configurable.
How is animation playback behaviour managed by artists?
Via XRPK, though we should provide tooling for managing this.
Provide standard animation use-cases? Play/Stop on click etc
That seems a separate UI issue but this should be doable from within the world in "edit mode".

What is the default behaviour? Do animations autoloop unless stated otherwise.
They should yes, we should implement it that way.
How is animation playback defined within the xrpk?
We'll add an autoplay that makes it configurable.
How is animation playback behaviour managed by artists?
Via XRPK, though we should provide tooling for managing this.
Provide standard animation use-cases? Play/Stop on click etc
That seems a separate UI issue but this should be doable from within the world in "edit mode".

Related:
Support .glb bone animation:
Test file: https://www.dropbox.com/sh/hty7gnvct9utsmv/AABXt_oNvfey6VRaWZd7U910a?dl=0

Related:
Support .glb bone animation:
Test file: https://www.dropbox.com/sh/hty7gnvct9utsmv/AABXt_oNvfey6VRaWZd7U910a?dl=0


Where do we go from here?

Now that esri-loader exposes a promise-based API is this library still needed?
The problem is I'm so far out of the Angular game that I'm no longer qualified to even answer that question much less do anything about it. Whereas I can say w/ certainty that ember-esri-loader is definitely needed to get esri-loader in Ember.js apps.
Never mind trying keep this library up to date w/ all the churn in Angular, it hasn't even been updated for recent esri-loader releases. So it will still default to JSAPI 4.3, which is two minor versions behind the latest JSAPI.
Does anyone know of some special sauce that this library adds to make esri-loader easier to use in an Angular app? The NgModule? Is that needed?
If not, what I'd like to see is a couple of the projects that use this library (https://www.npmjs.com/package/angular-esri-components and/or developers.arcgis.com?) try to use the latest esri-loader directly instead. Hopefully we should be able to distill a pattern (npm i esri-loader, a sample service or component snippet, etc), that is simple enough to document it in the README of this library, and then we can deprecate it. There might be a couple of issues around types since I haven't yet configured package.json w/ "types" (nor "module" etc), and generally don't know how a TS lib should be publishing them, but I'm willing to make changes in esri-loader needed to accommodate it's direct use in Angular apps.
On the other hand, if this library is still needed, then I'll need someone else to take ownership of it. If that someone is from Esri, then they should start a PR to make the changes needed to transfer to the Esri org (I can help w/ that).
cc/ @andygup @patrickarlt @noahmulfinger @TheKeithStewart

@tomwayson I did a little experimenting, and using the latest esri-loader seems to work perfectly fine in Angular:
import { loadModules } from "esri-loader";

...

loadModules(['esri/map']).then(([Map]) => {
    ...
});

So on the developers website we can easily switch over to directly using esri-loader.

@tomwayson @noahmulfinger I also ran some quick tests on Angular 4.4 with no issues. I'll also test with Angular 5 and Ionic, but I don't expect any problems.

Confirmed - basic functionality works on Angular 5.0.1 [standalone] and Ionic 3.18

A few ideas for moving forward.

We could officially say this repo is in maintenance mode and provide a link to this repo's replacement, which I propose would be an Angular CLI example
And on that note: move esri-angular-cli-example over on github.com/esri and update it.
I'll update ionic2-esri-map to use esri-loader
Need to update various documentation references and re-point them appropriately, including the JS API Using Frameworks page

I can help drive a portion of this.
Thoughts?
cc/ @tomwayson  @patrickarlt @noahmulfinger @TheKeithStewart @jwasilgeo

Thanks for following up @andygup and @noahmulfinger!
One thing you may want to check if you haven't already is if it works in IE. I don't know if Angular polyfills window.Promise, but if it doesn't, then I'd expect that it would not work w/o setting esriLoader.utils.Promise or adding a Promise polyfill.
Also, I met w/ @patrickarlt this week and he gave me some insight on how to publish the types as part of https://github.com/Esri/esri-loader/issues/50. I'll let you know when I've done that so you can test if you get the correct types in your apps.
W/ those two things, I think we will have established that this library is no longer needed.

One thing you may want to check if you haven't already is if it works in IE.

Ah, very good point. Might be worth checking Edge, as well.
@noahmulfinger any chance you have access to a Windows box with Angular installed?

@andygup thanks for taking a first pass at a plan and offering to help. Here's my feedback:

We could officially say this repo is in maintenance mode and provide a link to this repo's replacement

Yes, I want to do that as soon as we figure out what course of action to take below.

I propose would be an Angular CLI example.

I have mixed feelings about that. On the one hand, it's nice to have a running app that shows it  working. On the other hand I feel like it's hard to point people to just the changes that are needed to get it working in their app, and that some people even clone the app as a starting point.
Instead I was going to suggest a gist, like this one, until I learned that you don't get notifications on gists!?!!??!!
So it seems like a better solution than a gist would be to basically make this repo like that gist - not a functioning library, just the files you'd need to drop into an angular-cli app.

And on that note: move esri-angular-cli-example over on github.com/esri and update it.

The thing is, I don't even think that uses angular-esri-loader directly anymore. I had been thinking of turning esri-angular-cli-example over to @TheKeithStewart since that's basically now the test app for angular-esri-components.
Maybe we PR angular-esri-components so that it uses esri-loader, then we update esri-angular-cli-example to include some code that uses esri-loader directly, then the README of that repo takes on the role of the above gist - very clearly identifying the steps needed to get esri-loader and/or angular-esri-components working in your own angular-cli app. Then we transfer it to the esri org.

I'll update ionic2-esri-map to use esri-loader

👍

Need to update various documentation references and re-point them appropriately, including the JS API Using Frameworks page

I will do that once we've shuffled all the libraries to their final destination.

This is all awesome!  Thanks everyone for doing the work and sharing your research findings along the way.

@tomwayson @andygup Regarding IE functionality: Angular lists mandatory polyfills which include ES6 promises https://angular.io/guide/browser-support#mandatory-polyfills.
Additionally, as a quick test I created a basic Angular CLI app that uses esri-loader in my Windows 8.1 VM with IE11. I didn't see any issues.

OK, what I've done so far:

[x] wipe out the README and point to esri-loader (#37)
[x] publish so that the README appears on NPM
[x] deprecate this package on npm
[x] updated the above gist to point to esri-loader
[x] removed remaining references to this library from esri-loader and esri-angular-cli-example READMEs
[x] PR to update JSAPI resources page

I think that just leaves @andygup to update ionic2-esri-map to use esri-loader at his leasure
I'm going to close this issue and archive this repository. Thanks everyone for chipping in on this library. See y'all over on esri-loader.


CS3629-DIQ: sub page updates

Add description for new newsletter
Add styling back in for newsletter form buttons

https://southcomm.atlassian.net/browse/CS-3629
Before:

After:

@Alixers505 the PR build is currently failing.


How you can use withAuth

How to use properly withAuth for authorize Home feature?

Hi @MadalinNitu , welcome to my project.
Sorry about withAuth feature. This is an old feature, and I have not complete this. But I have already public a new Auth to support build an admin side.
You can check the new release at here

Hi .. thank you very much for your work here.
I manage to use the hoc function for authorization for a new feature with the following procedures ...
`import { verifyToken } from '@/store/actions/auth';
import { selectCurrentUser } from '@/store/slices/authSlice';
import React, { useEffect } from 'react';
import { useDispatch, useSelector } from 'react-redux';
const Empty = () => ;
const withAuth: CallableFunction = (AuthComponent: React.FC) => {
const AuthenHOC: React.FC = () => {
const dispatch = useDispatch();
const currentUser = useSelector(selectCurrentUser);
useEffect(() => {
  dispatch(verifyToken());
}, [dispatch]);

return currentUser ? <AuthComponent /> : <Empty />;

};
return AuthenHOC;
};
export default withAuth;
`
and in a test feature class I export the following
`import React from 'react';
import withAuth from '@/components/hoc/withAuth'
const Test: React.FC = () => {
return (

Test

);
};
export default withAuth(Test);
`
and enforce the login only for a feature page not for all.
Maybe you have to move the Auth.ts in another directory for been more accessible?
thanks a lot :+1:

Yeah, You are correct about using this feature!
withAuth is a feature that I used inside nextjs project to authorize by each page. But for this project, I want to use another approach by using Wrapper Component to support the admin side.
Thanks a lot, I will improve the code later.

Thanks,
I want to add a console feature like aws or gcp platform. In that way we can split de asmin users from clients users and let permissions for different features.


gooseBit plugin/module system design

There's a number of use cases where users of gooseBit may need to extend the updater application with custom functionality that for various reasons should be maintained separately from the upstream gooseBit project, ideally we want it to be possible to extend gooseBit without having to fork and modify the base project codebase.
For example we want to be able to implement a configuration management extension for provisioning of device keys as a gooseBit plugin/module.
In terms of how plugin configuration would look I'm thinking something like this via the yaml settings file may make sense:
plugins:
  upstreamdata.cfd.provisioner:
    configkey1: configval1
    configkey2: configval2
    configkey3:
      subkey1: subval1
      subkey2: subval2

The idea would be that we have a python class/package with the import name upstream.cfd.provisioner that extends some sort of base module class from gooseBit which would be passed the decoded plugin child yaml configuration structure(a multilevel dictionary in the above example) when the module __init__ method is called during plugin load after dynamically importing the upstream.cfd.provisioner python module class.
The module class implementation from the plugin project would then be expected to provide implementations for the various hook methods/variables that gooseBit would call in various places such as when the device sends config vars or when device poll various endpoints.
The module system would also likely need a way for plugins to define their own database models/tables which may need to reference the existing gooseBit models so would likely need orm/migration hooks for integrating that as well. Likely we want these plugin defined database models/tables to have some sort of namespacing pattern that ensures they won't conflict with other plugins or the base gooseBit project models/tables.
Some potentially relevant info:
https://github.com/team23/fastapi-module-loader
https://github.com/Renumics/spotlight/blob/main/renumics/spotlight/plugin_loader.py
https://fastapi.tiangolo.com/tutorial/dependencies/#fastapi-plug-ins
https://fastapi.tiangolo.com/features/#unlimited-plug-ins
https://packaging.python.org/en/latest/guides/creating-and-discovering-plugins/

The module system would also likely need a way for plugins to define their own database models/tables which may need to reference the existing gooseBit models so would likely need orm/migration hooks for integrating that as well. Likely we want these plugin defined database models/tables to have some sort of namespacing pattern that ensures they won't conflict with other plugins or the base gooseBit project models/tables.

This can be accomplished by loading plugins before initializing the DB, and appending all plugin modules to the tortoise configuration, here -
https://github.com/UpstreamDataInc/goosebit/blob/714ad04b9090fe1585a95cbc43f055c04591aebd/goosebit/db.py#L6-L13

I imagine you could have a configuration that looks something like this:

I'm thinking the models should be defined by a plugin class property or something, not something that's passed by the config file.

This can be accomplished by loading plugins before initializing the DB, and appending all plugin modules to the tortoise configuration, here -

Yeah, I think maybe just iterate all plugin classes and check each for a models property or something and append from that.

 But besides the technical challenges mentioned above I think it also needs careful modeling of the extension points. This could be tricky to get right upfront. Maybe better to regularly implement the feature and then see if it could be extracted as a plug-in?

This could be tricky to get right upfront.

Yeah, figured I would make open an issue to figure out an initial design. At least initially having a stable plugin API probably isn't super important so we can hopefully iterate on the API design a bit before stabilizing it.

Maybe better to regularly implement the feature and then see if it could be extracted as a plug-in?

Technically we have already implemented the cfd provisioner system as part of the original internal project gooseBit is based off of. At a minimum I think a plugin like the cfd provisioner will need a way to add its own database models/tables that reference base gooseBit tables and a way to add additional pages to the webui. It will also need a way to add request handling hooks to the various DDI API endpoints that can conditionally override default logic such as for overriding the update file being served and receiving config vars.

I have created a very simple PR for now that should demonstrate what I believe is the best way to do this, following https://setuptools.pypa.io/en/latest/userguide/entry_point.html
I for some reason cannot get this to work, and have tried moving around directories to not be stacked for the example plugin, and also renaming the goosebit.plugins module to make sure the naming doesn't overlap.  Not sure if anyone else has ideas on this side of things?

I have created a very simple PR for now that should demonstrate what I believe is the best way to do this, following https://setuptools.pypa.io/en/latest/userguide/entry_point.html

Hmm, I'm not sure this is the best approach, at least not by itself, it's unclear how we would say have a plugin that exposes its own configuration options and such here in a way that would tie in nicely.

After a lot more though, I think the "plugin class" style of doing this is a bad idea.  The problem is that doing it as a class would mean that every time we want to add a new "pluggable" feature, we have to add another item into that class, which will end up being very bloated.
I believe the best way to do this is still allowing the plugin to inject functionality directly into routes or other parts of goosebit (which is what the class would have to do anyway), but we remove a layer of indirection.
I'm going to aim to start working on an injection system for the update selection (as that's one of the harder ones IMO, and one that we will need internally) some time this week.  We can review it then, but broadly I think adding a class just adds unneeded complexity, and if we ever decided we wanted to transition to that, we should start with allowing plugins to inject first then transition to having the injection route through the class.


Cfscript.tmLanguage issue

The following line causes an error when loading a CFM/CFC with cfscript in it and subsequently stops the plugin from working afterwards.
Line 50:                     <string>#tag-stuff</string>

Removing the hash does the trick

Thanks for this. The CFScript.tmLanguage file should not be in this package yet (there is a lot of work that is needed for that file before it will work as expected). The original Coldfusion.tmLanguage file delegated the CFScript highlighting to javascript's source highlighting so I'll set it back to that for the meanwhile.

Cool. Nice plugin btw :)


Transparent Huge Pages (THP) Not Disabled on RHEL

Looks like THPs aren't disabled as part of the config on RHEL (probably the other similar flavors as well).
4996:M 12 Nov 19:55:37.514 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

just totally saw the redis::administration class.  sorry.


Responsive

How to use this lib with responsive?

I had to switch to Alice Carousel because of this issue.

same problem here


[DCMAW-8265] Create 4/5XX alarms for /async/token endpoint

DCMAW-8265
What changed

Creates high and low threshold 4/5XX alarms for /async/token endpoint. These will ensure that we, and live support, are notified for persistent issues with this endpoint.

All four alarms are currently set to notify the warnings channel, with the high threshold alarms to be promoted to alerts on a future ticket.

Adds DeployAlarms condition, which disables alarms in dev unless the parameter DeployAlarmsInDev is overridden to be true. This will reduce the cost and channel noise of managing all alarms for all custom dev stacks unless alarms are being tested specifically.
Updates deploy script to allow easy override of the aforementioned parameter for testing.
Refactors existing runbook infra tests to reduce repetition, making them easier to extend for future alarms, and ensure that all critical alarms are caught by the test.
Introduces infra tests to ensure all warning alarms notify the appropriate slack channel.

Evidence
The evidence provided here indicates that each alarm notifies slack correctly. To properly evidence that each alarm is configured with the correct conditions, please inspect the template.yaml, or view the alarms in the Cloudwatch console.
Low Threshold 4XX

High Threshold 4XX

Low Threshold 5XX

High Threshold 5XX

Documentation
I have created runbooks for our warning and critical alarms. I've populated the former with developer-facing instructions for investigation. The detail on (and location of) the latter is pending future cross-pod conversations about critical alarm runbooks, but I've added some placeholder information anyway.

Happy with this PR and the level of testing, good work. Reviewing the runbooks now. Happy for this to be merged whilst the runbooks are still in draft.


Codacy mentions 556 issues for the BOF software

@hjtappe suggested we use the service of codacy, which is free for Open Source projects.
You can see the dashboard here: https://app.codacy.com/gh/ICCM-EU/BOF/dashboard
We could keep the issues in mind.
I don't want to make a push for fixing the issues right now.
But if there are volunteers, go for it!

Neat!  It looks like Codacy relies pretty heavily on PHPMD (https://phpmd.org), which has some questionable defaults, like marking every use of "else" as a problem.

My impression is that the red markings make most sense, such as unreachable code, unused variables etc.. The yellow markers can partly not be understood on my side, like the discouraged used of setcookie. I think some checks can be deactivated if we can identify the check which annoys us, especially removing the *.sql files from checking and keeping only HTML, JS and PHP files.
The blue "else" messages are more a hint than a warning to suggest reviewing code complexity, I think. They do not need fixing.
From another project, my experience is that fixing the red warnings makes most sense and is what is highlighted during a merge, but even they can be ignored, but give the reviewer an indiction to check if it is acceptable.
Apart from unused variables (and "print e->message" debug messages which could reach the end-user and spoil the HTML), I did not see a bothering message in this project yet.

I have updated the settings a bit (removing e.g. the "else" warning and the discouraged functions warning) and put the SQL files into a analysis blacklist so they do not generate syntax errors any more. Lets see what the next merge / commit shows as remaining errors.

It looks like code coverage reports generally improve the "grade" for each file and the project over-all.
See also pull request #121 for some more discussion items.

ups sorry, now I already merged #121. but I guess you can continue your work on that branch, and create a new pull request. Please mark pull requests with WIP in the title, or mark the PR as draft, so I know immediately if it is not ready for merging yet!

I see, we now have an organisation: https://app.codacy.com/gh/organizations/ICCM-EU/settings/people
@franc6, I have added you to the organization on Github, and after you accept the invitation, I hope you will be member of the organisation in Codacy as well, or we can add you there.

@franc6 I have set ignoreFiles to /sql - which ignores all SQL files therein.
https://app.codacy.com/gh/ICCM-EU/BOF/settings/ignoreFiles
Please also update the checks enabled in https://app.codacy.com/gh/ICCM-EU/BOF/patterns/list to a useful minimum. I have the gut feeling that we should disable at least some of them, especially in the area of code compatibility or coding style (e.g. the "Mixed double and single quotes." rule) which we don't require towards older or newer versions of PHP or for readability and consistency.

@tpokorra I'd forgotten about the draft setting. :(  I'll try to remember in the future.  For now, though, since nothing has been merged since, reverting would be trivial.  I also have access to the organization through both Github & Codacy.
@hjtappe Thanks for the info, I have access to it now, too, so I can see what's there more easily.  I noticed that both ESLint and JSHint are enabled, which seems a bit redundant to me.  Should we just disable all of the style options?  I usually prefer "pick something and use it consistently," but I'm flexible. :) For the most part, I've tried to follow whatever style I see in a given file, e.g. gulpfile.js uses semicolons at the ends of statements, while cypress/integration/*.js do not.


Implement Elementary OS

I was wondering how easy it would be to implement Elementary OS in crouton. Any thoughts, I would be happy to help.

I found http://jeanlouisnguyen.blogspot.com/2014/01/guide-how-to-install-elementary-os-on.html and i was wondering if all you need to implement this would be to put some of the commands into .sh files and add elementary to the list of targets or something. This is based off of xfce which this already supports.

@Alfriadox,
'jeanlouisnguyen's site is very popular and definitely one way of installing Elementary on a Chromebook.
Another way, that I just recently did, is to use MyDearWatson. It has all the commands and scripts bundled together very nicely, like you were alluding to above. If you're interested in this approach, there's a discussion of it at Crouton Central.
-DennisL

Thank you.

@DennisLfromGA What would be the differences between installing via MyDearWatson vs the #1725 open enhancement request of having elementary and elementary-desktop as crouton targets?


Update datastore API to v1beta2

<EMAIL_ADDRESS>on 28 Sep 2013 at 3:48:
The new version of the cloud datastore API is what's currently documented at
https://developers.google.com/datastore/docs/apis/v1beta2/, and returns
significantly different response formats from v1beta1 (specifically on the
entity properties).

Additionally, the current version of the API doesn't handle said properties
correctly (they are always blank). I've attached an updated version of the
generated code that correctly handles the responses from v1beta1. See the
Entity, EntityProperty, and Value structs for changed areas.

Thanks,
Alex

<EMAIL_ADDRESS>on 28 Sep 2013 at 4:02:
As a note, I've only tested these changes with RunQuery, though I believe it
should also work for Lookup (will test that tomorrow and update)

Successfully auto-migrated from code.google.com:
https://code.google.com/p/google-api-go-client/issues/detail?id=42

Datastore was updated to v1beta2.  Map types were implemented by https://github.com/google/google-api-go-client/commit/32152f31bc53fc7d650857fa2bc7c94b850fdc6a
Closing.


GDSC Chapters Endpoints Implemented | Fetch API Added for Chapters Fetch | Issue #212

fix #212
I have implemented an endpoint for the GDSC Chapters to fetch the data of all chapters.

@rishicds sir, please remove level 3 and add level 2 to this PR.


Search action hardcoded sort direction

hi,
Is there any specific reason that this is hardcoded to "asc"?
https://github.com/SoftwareBrothers/adminjs/blob/8793d1d8b7db17427cd4340acc7ec973686c7b61/src/backend/actions/search/search-action.ts#L43
The sortby respects the options, but the direction does not, and it seems deliberate :)
This impacts dropdown values of a relation entity in a create new scenario, which more than often need to be sorted
If I add the copy pasted search handler:
                    actions: {
                        search: {
                            handler: async (request, response, data) => {
                                const { currentAdmin, resource } = data;

                                const queryString = request.params && request.params.query;
                                const decorated = resource.decorate();
                                const titlePropertyName = decorated.titleProperty().name();

                                const filters = queryString ? { [titlePropertyName]: queryString } : {};
                                const filter = new Filter(filters, resource);

                                const sortBy = decorated.options?.sort?.sortBy || titlePropertyName;
                                const records = await resource.find(filter, {
                                    limit: 50,
                                    sort: {
                                        sortBy,
                                        direction: 'desc',
                                    },
                                });

                                return {
                                    records: records.map(record => record.toJSON(currentAdmin)),
                                }
                            },
                        }
                    },

It works as expected, but it seems much better to simply respect the option setting

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

I'll try to fix this tomorrow along with https://github.com/SoftwareBrothers/adminjs/issues/840


Remove unwanted comma

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Closed and Reopened this PR in an attempt to attempt to break out of the Travis build pending status.

@RandellDawson is it okay to merge this PR?

@amandeepmittal Can you take a look at the one last suggestion I had above?

Congrats @NaveenDA  on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 📝


ie11 testing on CircleCI (or "remote" PowerShell) hangs on start-up

What is your Test Scenario?

We have tests running successfully with CircleCI and testcafe with chrome.
We would like to run tests in CircleCI for ie11.
When we run this, it hangs trying to bring up the tests, then times out after 6 minutes 45 seconds.
Running locally in PowerShell works fine.
I was able to reproduce this issue locally by setting up PowerShell on my laptop to support remote PowerShell connections, following this [ https://www.howtogeek.com/117192/how-to-run-powershell-commands-on-remote-computers/ ] article.  I then "remoted" in to the same laptop, and ran the same command.  It brought up an npm black DOS window with no text,

then brought up ie11, with Test Cafe,

then went to just a white background.

If I click in the corner, I get a menu

I can even right-click and select Inspect Element

It hangs for 6 minutes 45 seconds, then shows a time-out error.  See below.
What is the Current behavior?

...\node_modules\.bin\testcafe -e ie --hostname <IP_ADDRESS> --port 1234,5678 packages/e2e/src/smokeTest/index.js --dev
 Running tests in:
 - IE 11.0.0 / Windows 10.0.0

 Smoke Test
ERROR The IE 11.0.0 / Windows 10.0.0 browser disconnected. This problem may appear when a browser hangs or is closed, or due to network issues.

Type "testcafe -h" for help.
yarn : error Command failed with exit code 1.
    + CategoryInfo          : NotSpecified: (error Command failed with exit code 1.:String) [], RemoteExcepti
   on
    + FullyQualifiedErrorId : NativeCommandError

info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
{ Error: Command failed: C:\windows\system32\cmd.exe /q /s /c "yarn testcafe -e ie --hostname <IP_ADDRESS>
--port 1234,5678 packages/e2e/src/smokeTest/index.js --dev"
    at makeError (C:\Users\...\...\...\node_modules\start-server-and-test\node_modules\execa\index.js:174:9)
    at Promise.all.then.arr (C:\Users\...\...\...\node_modules\start-server-and-test\node_modules\execa\index.js:278:16)
    at process._tickCallback (internal/process/next_tick.js:68:7)
  code: 1,
  stdout: null,
  stderr: null,
  failed: true,
  signal: null,
  cmd:
   'C:\\windows\\system32\\cmd.exe /q /s /c "yarn testcafe -e ie --hostname <IP_ADDRESS> --port 1234,5678
packages/e2e/src/smokeTest/index.js --dev"',
  timedOut: false,
  killed: false }
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

What is the Expected behavior?

When I run the same basic smoke test ("does the page come up?"), I see the ie11 GUI just fine as tests are executing, and in the console get the following in 52 seconds:
testcafe -e ie --hostname <IP_ADDRESS> --port 1234,5678 packages/e2e/src/smokeTest/index.js --dev
 Running tests in:
 - Internet Explorer 11.0 / Windows 10

 Smoke Test
 √ navigation header appears

 1 passed (24s)
Done in 52.18s.

What is your web application and your TestCafe test code?

Just a very simple test to verify the web page came up.

Steps to Reproduce:

Set up a simple test that works when run from ie11 in PowerShell.
Set up PowerShell to support remote PowerShell connections, following this [ https://www.howtogeek.com/117192/how-to-run-powershell-commands-on-remote-computers/ ] 3. "remote" in to the same laptop (I used the hostname instead of localhost, though they are the same), and run the test.
See that it hangs for 5 minutes, and errors out with a timeout.  Also note the odd ie11 and npm windows. (See screenshots)

Your Environment details:

testcafe version:   v1.8.3-rc.1
node.js version:      v10.16.3
command-line arguments: testcafe -e ie --hostname <IP_ADDRESS> --port 1234,5678 packages/e2e/src/smokeTest/index.js --dev
browser name and version: ie11
platform and version:  Windows 10
other: PowerShell

I was able to reproduce the issue in the following way:

Run powershell as admin.
Execute the Enter-PSSession -ComputerName <COMPUTERNAME> command.
Change the directory to your test project and execute the testcafe ie <path> command.

We didn't get reports about similar issues with powershell remote sessions. However, I confirm that it works in Chrome and FF but not in IE.
We need time to research this issue in detail. Thank you for your input.

Thanks for reproducing this @AlexKamaev ! CircleCi's free trial includes access to the Windows build server. You can reproduce it pretty easily in there I'd assume: https://circleci.com/pricing/


Hindi text? freezes on adding ignore text filter

Describe the bug
Software freezes on adding specific ignore text on a specific website
Version
0.45.16
To Reproduce
Steps to reproduce the behavior:

Add URL 'http://gtu.ac.in/Recruitment.aspx' using Playwright Chromium.
Add following Ignore text in filters.

/.*\bvisit.*\b.*/i
/.*\bhits.*\b.*/i
/.*\bpageviews.*\b.*/i
/.*\btemperature.*\b.*/i
/.*\bhumidity.*\b.*/i
/.*\bआगंतुक.*\b.*/i
/.*\bकॉपीराइट.*\b.*/i
/.*\bकुल विज़िट.*\b.*/i
/^\s*(\d+\s*)+$/
/Downloads:\ \d+/
Originaltext
Diese Übersetzung bewerten
Mit deinem Feedback können wir Google Übersetzer weiter verbessern
Original text
Rate this translation
Your feedback will be used to help improve Google Translate
원본 텍스트
번역 평가
보내주신 의견은 Google 번역을 개선하는 데 사용됩니다
原文
この翻訳を評価してください
いただいたフィードバックは Google 翻訳の改善に役立てさせ

Can't use share button because everything freezes as soon as above filter is added.
Expected behavior
All of the software should not freeze. If there some issue with ignore text or with the URL/website, it should not impact complete software.
Additional context
Note that above filter was added as global filter to thousands of watches but this issue is only with this one URL. It took us a while to zero down to this one URL.

the problem is this regex specifically /^\s*(\d+\s*)+$/
can you explain what this is for?

Yes, it's quadratic time.  If the string being searched has N characters, first it fails to find "x" in all N of 'em, then `.*` advances by one and it fails to find "x" in the trailing N-1 characters, then again in the trailing N-2, and so on.  N + N-1 + N-2 + ... + 1 is quadratic in N.

That's how this kind of regexp engine works.  And it's mild, as such things go:  you can also create poor regexps that take time _exponential_ in N that fail to match certain strings.

It's unlikely this will change without replacing Python's regexp implementation entirely.  For why, see Jeffrey Friedl's book "Mastering Regular Expressions" (published by O'Reilly).


Bad NuGet packaging for NLog dependency (v2.4.3)

Hello,
The NuGet NLog dependency is wrong in release 2.4.3, Nlog instead of NLog
Extract of ArduinoUploader.nuspec:
<dependency id="Nlog" version="4.0.0" />
Can you repackaging the NuGet package , please ?

Sure, I'll repackage, but I'm unsure what tangible effect this has (e.g. is nuget package matching not case-insensitive by default)?

A new package (ArduinoUploader 2.4.4 has been uploaded (it might take a couple of minutes before it gets indexed).
Thanks again for your interest in this library.

It's good with the version 2.4.4 , thank you !


logseq: make dugite use the git in nixpkgs

Description of changes
Make logseq use the git in nixpkgs so that it will benefit from security patches and so on in git. Also, there will be no more dynamic linking problems like #167967.
Remove the git binary delivered with logseq, since it's not necessary anymore.
Thanks @qbit for the inspiration!
This has been test on my own machine and both git (auto)commit and git push seems working very well.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

This will close #167967

Result of nixpkgs-review pr 177704 run on x86_64-linux 1

1 package built:

logseq


Update exercice2_swiss_doppler.ipynb

Sorry for this PR, I just realized there was a small inaccuracy in how I described the data for notebook 2. It's just a sentence that changes...

@wolfidan Is this good to go?

Yes


Improve DB handling in preview

To avoid things potentially breaking when previewing PRs and branches, it would be good to include a prefix in the tables.
Currently Prisma is used for the DB ORM, however Prisma doesn't really support using different DB prefixes for different environments, due to how it handles migrations.
As such, the ORM should be switched to Drizzle ASAP and this prefixing setup, before any features that require the database are implemented

Drizzle's API isn't as cushy nor as type-safe, but I understand wanting to avoid a bunch of environment code to get around its limitations in split deployments

AFAIK Drizzle has a pretty typesafe API, but I haven't looked too much into it yet, I just know it has this particular feature and that it has been recommended to me, I'm open to other suggestions though.
Also I'm sure we can work around type difficulties more easily than working around Prisma's migration system, since we can always wrap things in server actions and/or tRPC


Collaboration Policy

Each year we have issues with students copying code on programming assignments from each other. I really don't enjoy policing this - I'm not sure if it's worth the time/effort. We may consider having two levels of difficulty (perhaps a steeper curve) for students who want to collaborate, and a less stringent grading criteria for students who work alone. Students would decide if they want to work alone or in groups, and indicate this in their submissions.

I personally feel that classifying it into two levels of difficulty would not serve the purpose as students might indicate that their work is individual but work in groups, ending up in plagiarism eventually.
Please let me know what you think.

Sure that makes sense. The challenge is this: Each year, unfortunately, we have students plagarize. Last year we had 3 students copy ~50+ lines of code. The previous year we had ~10 students copy code.
Dealing with plagiarism is time consuming. I'm required to meet with each student individually and file extensive paperwork.
I guess the question I would like to get your input on is this:
How valuable for students do you think it is to have the "no shared code" policy on programming challenges?
Do students learn more because we're requiring them to write all their own code? If we think the answer is definitively yes - then it might be worth keeping this policy.
@RohanBhosale4229 and @telidevaravind - what do you think?

Professor, I personally think that no shared code policy helps students, it compels them to think individually and come up with a solution. To go around with the paperwork, I think if we find someone copying others' assignments, we can give that person a 0 in that assignment and fix a meeting/ email him/her with a warning for the first time. And we convey a message to students that we have plagiarism policy, doing this makes students think that we have plagiarism and also solves the purpose.
Please let me know what you think?

Even I feel that "no shared code" policy should be retained for the benefit of the larger number of students.
I feel that students learn a lot from the assignments and they give out their own best work only if the policy is retained.

Alright, let's continue the "no shared code on programming challenge" policy.


Reset frame state before xrWaitTime and validate display period

This works around issue #173. It may be that clearing frame state before xrWaitTime is enough, but in case we still get weird numbers, I'm checking for any display period more then 0.5 seconds and clearing it if we receive that. The value retrieved amounted to something like 16570 hours :)
Seeing this is Quest over airlink the best guess I have is that there is some sort of hickup and we're not getting correct data.

CherrySodaPop mentioned in the original issue that this indeed solves their issue.


Improve UX of local/kcp/start.sh

Allow KCP_DIR to be a relative path
Checkout and build kcp if KCP_DIR is specified but empty

Signed-off-by: Romain Arnaud<EMAIL_ADDRESS>Example of a command solved by this PR: rm -rf ./work; KCP_DIR=./work/kcp ./start.sh

/retest


[PKG-1549] onnxmltools 1.11.2

Changelog: https://github.com/onnx/onnxmltools/releases
License: https://github.com/onnx/onnxmltools/blob/v1.11.2/LICENSE
Requirements:

https://github.com/onnx/onnxmltools/blob/v1.11.2/requirements.txt
https://github.com/onnx/onnxmltools/blob/v1.11.2/setup.py

Actions:

Update source/url because the source code isn't available on PyPi, see https://pypi.org/project/onnxmltools/1.11.2/#files
Add flag --no-build-isolation to script

conda.CondaMultiError: ("Connection broken: ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None)", ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))
I'll reopen the PR


Feature: loading sign for globe

##Title
(feat): Loading sign on globe
##Issue
#140
Additional Info
I have created a component called loadingSpinner in case there is a need for a loading sign in the future. There is a useState that checks whether the globe is rendered. If not, the loading sign is visible. When the globe is rendered, the sign will disappear.
The loading sign is animated.
Screenshots

Hey @GeorgiosDrivas ,
Instead of a loading spinner, can you please add a static image until the globe loads?

@Arindam200
Of course I will add a static image. Would you like to choose a specific one and send it to me?
So we don't go back and forth until we find the right one.

Thanks, @GeorgiosDrivas  , Can you just take a static image of the current Globe?
I don't have an image currently!

@Arindam200 I have made some changes. I tried to place the static image as close to the position of the globe as possible in order to make it seem prettier. I kept the component I created ini case it needs to be placed somewhere else, but changed it's name to describe it's purpose better.

Hey @GeorgiosDrivas ,
We have fixed the Theme Issue.
Can you please fix the Globe accordingly?

@Arindam200, hello!
I saw the changes you made to the theme, they are very beautiful.
I have adjusted the static image for the loading sign.

@Arindam200 Hello,
Many days have passed since I made the changes based on the new theme. Is everything ok and ready to merge or do I need to make any additional changes?

Hey @GeorgiosDrivas !
Sorry for the late reply. Can you please remove the background of the circle?
And also there is a shift of the globe when it;s getting looaded. Most porbably the image is not aligned.
Can you please fix these?


What to do : Into the Sunset on May 1st: Bintray, JCenter, GoCenter, and ChartCenter

UPDATE: To better support the community in this migration, JFrog has extended the JCenter new package versions submission deadline through March 31st, 2021.
To clarify, the JCenter repository will keep serving packages for 12 months until February 1st 2022. Only the JCenter REST API and UI will be sunsetted on May 1st, 2021.

This doesn't concern CircleImageView as it is hosted on Maven Central.


Add CONTRIBUTING.md and update CHANGELOG.md

Summary
Check out tendermint-rs CONTRIBUTING.md and implement it in this repo.

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged
[ ] Contributor assigned/self-assigned

Done in #190


multiUpdate() should guarantee atomicity

Description
I'm using the JS scripting engine to execute multiUpdate() with the expectation that if any of the update operations fails, the whole transaction will fail.
What happens instead is that a part of the update succeeds and another part fails, leaving the user in an intermediate state.
For example: call multiUpdate() with a wallet update (-10 coins) and a storage object update (create new object). If the user wallet has < 10 coins, multiUpdate() throws exception, but the storage object is created.
Steps to Reproduce
function InitModule(ctx, nk, logger, initializer) {
    const newUser = nk.authenticateCustom(nk.uuidv4());
    const userId = newUser.userId;
    const walletUpdates = [
        { userId: userId, changeset: { "coins": -10 }
    ];
    const storageUpdates = [
        { userId: userId, collection: "test", key: "test", value: { testValue: 1 } }
    ];

    nk.multiUpdate(null, walletUpdates, storageUpdates);
}

Expected Result

multiUpdate() throws exception
user's wallet is empty
there is no storage object with collection = "test", key = "test" and userId = userId

Actual Result

multiUpdate() throws exception
user's wallet is empty
this storage object exists (with userId being the new user's id):{
   "userId": "...",
   "collection": "test",
   "key": "test",
   "value": {
     "testValue": 1
   },
   "permissionRead": 1,
   "permissionWrite": 1
}

Context
Run on the server only (not using a client for this test).
Using the JS scripting engine.
Your Environment

Nakama: 3.9.0

Interestingly, if multiUpdate() is used the other way around (a wallet update that succeeds and a storage update that fails), then the whole transaction fails and nothing is updated (the user wallet is unchanged)

@gpiumatti Thanks for reporting! I've merged a fix in eb5270fdd5a8ab79f0bed86d51d38a2b6d689a45. This will be part of the next release. 👍
Please re-open this issue if you see further unexpected behaviour after upgrading to the next release.


Csv import wrong character encoding

I'm trying to import csv file which contains german characters.
But those characters not displayed properly.
How can I set the character encoding somehow?

Are you CSV file UTF-8?


Improve the text at the top of the home page

Received the latest home page text from the product team.

nkn


Enhanced parameter resolution for RESTAPIConfig  and REST API source

Feature description
Hi!
Currently, in DLT, you can define and resolve parameters dynamically like this:
"endpoint": {
    "path": "issues/{issue_number}/comments",
    "params": {
        "issue_number": {
            "type": "resolve",
            "resource": "issues",
            "field": "number",
        }
    },
},

While this works for some use cases, it's limited in flexibility. Specifically, it does not support dynamic or more generic scenarios, such as resolving parameters for headers or request bodies.

I'd consider using dlt, but it's lacking a feature I need.
Use case
I need to run data extraction from an API that requires dynamic headers, following these steps:
Authenticate using a login endpoint to retrieve a base token.

Retrieve a list of items using the base token.
For each item in the list:

Fetch a token specific to that item.
Make further requests where the item-specific token is included in the headers.

Example Workflow:

POST /authentication -> Returns a base token
GET /items -> Uses the base token, returns a list of items
For each item:

POST /items/{item_id}/token -> Returns an item-specific token
GET /items/{item_id}/data -> Uses the item-specific token in headers

While this may reflect poor API design, it is a real-world scenario that requires more flexible parameter resolution capabilities.
Proposed solution
EG for dynamic headers:
"endpoint": {
    "path": "issues/comments",
    "headers": {"token": "{token}"}
    "params": {
        "token": {
            "type": "resolve",
            "resource": "authenticate",
            "field": "token",
        }
    },
},
# or even with static parameters
"endpoint": {
    "path": "issues/comments",
    "headers": {"token": "{token}", "static_param":  region}
    "params": {
        "token": {
            "type": "resolve",
            "resource": "authenticate",
            "field": "token",
        }
    },
},

Related issues
This feature could also hypothetically be extended to support dynamic bodies in the future. While this isn't a current issue for me, it may benefit other use cases where request bodies need to include dynamically resolved fields.

Thanks for the detailed feature request, @ArneDePeuter, and for laying out the use case so clearly! This is a really interesting suggestion. We'll review this further and evaluate how it might be incorporated into rest_api source.

Hi @burnash, the PR referenced satisfies the feature. Hope its useful!


feat(material/stepper): allow focus origin to be optional input in focus method

WHAT: For Angular Material components that have a focus() method, allow for the origin param to be optional and remove the default origin value.
WHY: For cases where the focus() method is called and the origin is already defined, we don’t want to override the origin using focusVia to always be some default value. In many cases, we want to leave the origin unchanged, but if there are cases that need the origin to be updated, allow for this with an optional origin param.

Linter throwing error stating my commit message is longer than 120 char, but it is not?

Yeah that lint check doesn't work very well, it's looking at the last 8 commits, not just the one in this PR. It can be safely ignored


added keras advanced feature engineering with preprocessing layer labs

Sub task of #194

Thank you @BenoitDherin @sanjanalreddy.
I reflected those reviews and merged.


Updated bower.json to comply with the specifications

I am using Webjars for a project. cal-heatmap is unfortunately not available yet as Webjar but it is possible to create them automatically from a Bower package. However, for it to work, the bower.json file describing the component must carefully follow the specifications for this file. In particular, it is sensitive to the license field, which is misspelled in the project right now. Updating that and the authors entry as this pull request suggests should fix the issues with Webjars and other tools that might rely on Bower.

Thanks for the PR.
Can you rebase wit the latest master ? The repo url was changed in the meantime

Done, you can merge if it's okay.

Merged, thanks


Language server expression type support

Purpose
When a user modifies or adds a PowerFx expression in our system, we want to show them a preview of the return type of the expression they are authoring. This is important for us to communicate type errors between multiple components that each leverage their own PowerFx expressions.
The language server already supports type checking an expression on load and on change, but only errors (diagnostics) and suggestions are currently communicated through the LSP.
Solution
I've added a new custom protocol event, $/publishExpressionType, which returns type information for an expression provided to the Language Server in the onLoad and onChange handling. This event serializes the check result's FormulaType for the client to display the type and shape of the expression result. The serialized shape is:
// Primitive types only have type name
{ "$type": "Number" }
// Aggregate types have type name and nested structures
{ "$type": "Record", "MyBooleanKey": { "$type": "Boolean" }, "MyNumberKey": { "$type": "Number" }}
{ "$type": "Table", "Value": { "$type": "Number" }}

This feature is enabled with a &getExpressionType=true param in the document URI, so it should have no effect on existing implementations.
I've created a demo integration with the PowerFx demo app (diff here) that adds expression types to the interface. Ideally this would be integrated with the PowerFxFormulaEditor directly using lspConfig, but that doesn't appear to be open sourced.

We could probably also follow a similar pattern when we want to provide "Watch/Eval" functionality to help evaluate intermediate expressions.