Close #80 - introduce systemd restart behavior

Hello, great contribution; would you update the PR with new variables to tune the restart behaviour?

Can do, but let me know your thoughts, Guido:

do you want to have a basic keycloak_service_restart_on_failure boolean flag (defaults to true) or
do you want to have all introduced settings configurable, that is 'StartLimitIntervalSec', 'StartLimitBurst', 'RestartSec' with sane defaults
or both, which would lead introduce 4 new (optional) variables

I'd eventually go with option 3, but it's up to you how much of it to include in this PR (whether it is only 1, or 2, or 3, thanks!)

As suggested, I went for 3., but the CI build is complaining on files I didn't change (thus I guess it has been doing so for a while already) - could you please check and let me know your thought? Thanks!

Don't mind the linting issues, ansible-lint has been updated with new rules and they eventually break the CI. I'll merge this now, and update the linter settings in another commit.
Thank you very much for the contribution


Asks about local variables in repositories on every startup

This leaves dirty worktree, interrupting next pull/merge.

Can you provide a user-init-file which causes this behavior? On starting straight.el from emacs -Q and running M-x straight-use-package RET cider RET, I do not see a warning about local variables.


Adding span visualization

Hi @hadrienj,
If you think it's helpful I've added a simple visualization to the span subsection at 2.4.
Thank you.

I like this visualization!


Fix datetime parsing error in notifications

Description
For an unknown reason, the updatedAt field in resolvedState and pinnedState is updated to a string instead of ISODate object. Due to this issue, the notification API raises an internal server error. This PR added a converter from string to instant. When there is a malformed string, it catches the exception and set the date to null so that the API does not fail.
Fixes #5194
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

Tested on local machine

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

@nayan-rafiq Can you help me understand how often will the custom Mongo converter kick in? Is it specific to certain fields of the object or certain flows? Basically, I'm trying to understand the performance impact of a global converter like this. Also, trying to improve my understanding of Mongo mappers.

@nayan-rafiq Can you help me understand how often will the custom Mongo converter kick in? Is it specific to certain fields of the object or certain flows? Basically, I'm trying to understand the performance impact of a global converter like this. Also, trying to improve my understanding of Mongo mappers.

@mohanarpit The custom converter will be called when a document has a field stored as String and we want to parse it as Instant data type of Java. Fortunately, this is unusual in our application because Instant data type are stored as Date type in mongo. In that cases, the builtin Date to Instant converter will be called to convert from mongo date to java Instant. For this particular problem, the dates are converted to string so this converter will be called for the corrupted documents only. We also have pagination in notifications API so it'll be called only if the corrupted document is present in the current page.
It would be better if we could implement a custom converter for the specific field in the document. I searched a lot but didn't find a way to do this. Another option is to write a custom converter for the specific domain class but that'll require more changes compared to this.
If in future we're able to find why the dates are changed, we should remove this converter. In the meantime this hack will solve the problem with minimum impact I guess.


[Meta] Single-day events

Spinning off from #72 and the meta channel in the server was the concept of single-day seasons.
The idea has been expressed before, and was actually something taken into consideration when re-designing the new seasonal event manager within the bot. At the least, I do remember testing to ensure that it could handle multiple seasons being active at the same time, and rough testing to make sure it correctly applied the most relevant active seasonal event as the event identity (avatar, announcement, username, etc).
Feel free to discuss the possible issues/benefits of the concept here, and to provide possible ideas and commands.
Events suggested so far:

Event
Date
Possible Names
Status

Earth Day
22 April
EarthBot
:heavy_check_mark:

Pi Day
14 March
3.14BotPiBot
:heavy_check_mark:

April Fools Day
1 April
FoolBot
:heavy_check_mark:

International Dog Day
26 August
GoodBoyBotDoggoBot
:heavy_check_mark:

I think Earth Day and Pi Day are both good ideas to start off with. Google does this kind of thing all throughout the year, and it's just plain fun. It also demonstrates that we're a happening place where things like the server icon can change at any time, and I think that helps draw people who aren't necessarily super active into our community. If the logo changes, it gives you a reason to click on it and find out what's going on.

Spinning off from #72 and the meta channel in the server was the concept of single-day seasons.
The idea has been expressed before, and was actually something taken into consideration when re-designing the new seasonal event manager within the bot. At the least, I do remember testing to ensure that it could handle multiple seasons being active at the same time, and rough testing to make sure it correctly applied the most relevant active seasonal event as the event identity (avatar, announcement, username, etc).
Feel free to discuss the possible issues/benefits of the concept here, and to provide possible ideas and commands.
Events suggested so far:
Event 	Date 	Possible Names 	Status
Earth Day 	22 April 	EarthBot 	✔
Pi Day 	14 March 	3.14Bot
PiBot 	✔
April Fools Day 	1 April 	FoolBot 	✔
International Dog Day 	26 August 	GoodBoyBot
DoggoBot 	✔

I like all these events but I think some of the names are a bit bland, I'm sure we could come up with something better than "FoolBot."
I'm also curious about what we would be doing for these events? Most people won't have enough time to make something for these events unless they were to span multiple days (which kind of defeats the purpose of a "single-day event.")
Are we just going for a purely cosmetic change or is there going to be active community involvement?

I like all these events but I think some of the names are a bit bland, I'm sure we could come up with something better than "FoolBot."

Make sure you provide actually recommendations as it's not too constructive otherwise. The names aren't final by any measure, just the events are considered accepted as a good idea. If you have better names, let us know.

Most people won't have enough time to make something for these events

Why would people be limited to making something on the day of the event? Anyone is capable of seeing what's upcoming and adding relevant features in time for it.
In future, please avoid quoting the entire message you're replying to. A quote is only really needed when you're addressing specific points. Your comment could have done without any quoted text at all.

In future, please avoid quoting the entire message you're replying to. A quote is only really needed when you're addressing specific points. Your comment could have done without any quoted text at all.
Didn't realize that was a problem.

Why would people be limited to making something on the day of the event? Anyone is capable of seeing what's upcoming and adding relevant features in time for it.
That's not really a response, I don't think most people will be looking ahead of time for events, maybe instead it should be extended to a week to let more people prepare and know about it.

I think most of these events will indeed be purely cosmetic - a server icon and a bot name - but like @scragly said, it's entirely possible to make an Earth Day feature (or whatever) at any point during the year and then have it be available the next time the event rolls around.

I'd also like to suggest a Eid Al-Fitr event - the end of Ramadan. This poses a challenge as this is a movable holiday, so we may need some sort of system for determining when a holiday will fall. I don't have a solution in mind but I'm open to suggestions. maybe FeastBot for the botname.

@heavysaturn
If the logo changes, it gives you a reason to click on it and find out what's going on.

This is actually what happened. I just saw strange different icon between blues from guilds Discord API, Discord Testers, and some other, I check the server and check announcement, and saw post what referenced to this issue. In our country we don't celebrate this event, so it was interested to see this idea.

I'd also like to suggest a Eid Al-Fitr event - the end of Ramadan.

I like the idea, however, I believe that since it's a religious event, we may need to include other events from other religions. Because of this, I'd like to suggest a Diwali as another single-day, moveable holiday. Maybe LampBot, CandleBot or something along those lines for a name.

I'd like to suggest Finnish indepence day. In Finland we celebrate it on the sixth of December and a possible name could be SuomiBot?

@Flxtcha Something similar is already being worked on. See #143.

ok, so do we want to have an independence-day, and a global-events where global events would include global holidays, including by not limited to pi day, Earth day, amongst others.
Considering some days have many of these events, whilst others have none, so long as we making this information readable, and understandable, it should be awesome to be had.

I'd also like to suggest a Eid Al-Fitr event - the end of Ramadan. This poses a challenge as this is a movable holiday, so we may need some sort of system for determining when a holiday will fall. I don't have a solution in mind but I'm open to suggestions. maybe FeastBot for the botname.

That would be cool. We can certainly have that. that sounds fun.

I'd also like to suggest a Eid Al-Fitr event - the end of Ramadan.

I like the idea, however, I believe that since it's a religious event, we may need to include other events from other religions. Because of this, I'd like to suggest a Diwali as another single-day, moveable holiday. Maybe LampBot, CandleBot or something along those lines for a name.

Xmas is also a religious events, but I would ramadan is more cultural than religious. which is the purpose of these events, to expose our members to different cultures and information about other countries around the globe. But if comes to religion, I do not see that being a problem either, since we have taken to lgbt within our events. So, why stop there?

Equinoxes and solstices? SolBot and EquiBot?

I believe Diwali should be changed from LampBot and CandleBot to LightBot. Diwalis is the festival of light and purity for us Hindus. We use Diya (Candles) to have a burning flame to present light. Not sure 'Lamp' and 'Candle' are fair/correct names to use.

With the impending overhaul of Seasonalbot's functionality to lose the season manager we'll be moving to a more hands-on, lower cadence implementation of events.


Fixed #24559 -- Made MigrationLoader.load_disk() catch more specific ModuleNotFoundError.

Avoids inspecting the exception message, which is not considered a
stable API and can change across Python versions.
ModuleNotFoundError was introduced in Python 3.6. It is a subclass of
ImportError that is raised when the imported module does not exist. It
is not raised for other errors that can occur during an import. This
exception instance has the property "name" which holds the name of
module that failed to import.
https://code.djangoproject.com/ticket/24559

@jdufresne Thanks :+1:


Move ssz code from nimbus-eth2 repo and adjust

Needs more work.
Mostly on the merkleization code, which is rather entangled with other nimbus-eth2 code. While it will work for nimbus-eth2 in the currently adjusted form, moving the merkleization test code is still a pain to fix.
And then there is the need for blst (due to the two sha256 options), which seems to also cause issues in building, sigh.

well, blst and that should not be in this repo - ssz doesn't talk about it - if we have a separate repo for ssz code it should implement the ssz spec and nothing else

https://github.com/ethereum/eth2.0-specs/blob/v1.0.0/ssz/simple-serialize.md is the whole spec and that's exactly what should be in here

Yeah, well, it is not that I actually want it there, I don't like it either. Just that Merkleization is very much mixed with some of that eth2 work, so turns out to be a nice rabbit hole.
I was going to a) not add Merkleization (for now..?), or b) try to separate it. @zah however mentioned that it is part of the specification (which I realized anyhow) so should stay with the general ssz code, and that blst could be added as dep. I'd rather see it go than stay, just not sure how convenient that is now.

Well, if we're moving things to a separate non-eth repo, it could at least be done properly, else this will continue to be a mess and a burden on all projects that use it.
This is by and large what one could expect, the ssz code is a hotspot for compiler bugs, and it has its fair share of hacks and special cases just for eth2 because it's tightly interwoven with caching and other aspects that are kind of not really SSZ (like the root trick, the way distinct types are shaved off etc).
Also, the way custom type support is is .. problematic -  to make it a generic general-purpose library, one would really need to rethink several parts - the current code is not sustainably written for other uses.
The spec is comparatively simple and small - the cost of reimplementing might be lower than trying to work around all the nim issues you'll hit when trying to extract it.
eth2 doesn't even need to use the rewritten version - notably, eth2 is not using nim-serialization / faststreams any more for reading, in many cases

The other issue is that once npln starts using SSZ, it will need to add it's own share of hacks and workarounds - these necessarily must not end up in eth2 because then npln needs to be a lot more careful about not touching the wrong levers, or we'll end up in a situation where the two projects mutually are slowing each other down.

This was actually the approach I started with. I just dropped in (duplicated) the bare minimum SSZ code that I needed for now in nim-eth in order to get a working npln wire protocol version to test with. I started like that also because I didn't know the SSZ code at all, and wanted to understand what was needed for now. Got this working in no time.
I understood however that the idea was to get all (generic) code to either nim-eth or nim-ssz-serialization (I don't really care which one, issues remain the same however). So I've been attempting that, in several ways, but yes, I'm hitting several issues and I've spend quite some time on this here with little progress.
I'm fine with going back to the original test I did, just wish this direction was clear form the start, as I was apparently missing some background/context.

the way I'd approach it would probably be just that: write a separate library, maybe copypasting some stuff, then when everything is working, see what common, low-level ground remains - this is a much less disruptive way than trying to solve all problems at once, and potentially ending up breaking eth2 in the process.

As I understand approach in this pr copy ssz serialization from nimbus-eth (stripping some of the domain types) which brings some baggage and hack. And in perfect world, we would write smaller szz serialization library which would get rid of that baggage and be a little better designed.
Just asking here as, for fluffy will need working ssz with merkelization support to support https://ethresear.ch/t/double-batched-merkle-log-accumulator/571, and I want to establish what is best way forward here.


Lost configuration after upgrade

Bug description
After successful upgrade from 2.17 to 2.18 I was asked to enter a new password. Now I'm facing a fresh installation without any config.
Expected behavior
All configuration is kept during upgrade progress.
Steps to reproduce the issue:
What I did:

everything works well.
updating all nodes:

docker service update --image portainer/portainer-ce:latest --force portainer_portainer
docker service update --image portainer/agent:latest --force portainer_agent

refresh login page
enter username and new password
all config was gone.

Technical details:

Portainer version: 2.18.2
Docker version (managed by Portainer): 23.0.5
Platform (windows/linux): debian
Command used to start Portainer (docker run -p 9443:9443 portainer/portainer): is up and running in swarm mode since months.
Browser: Chrome
Have you reviewed our technical documentation and knowledge base? Yes

Additional context
Do you have ideas of a possible reason and how to restore the existing coniguration?

@roboticsalign
Can you provide the following:
[1] When you say all configs are gone, you can not see any stacks, containers, users, etc?
[2] Attach logging from the Portainer Server for review
Thanks!

Thanks for your quick response, @tamarahenson!
ad 1) Exaclty, everything is gone. I logged into the bolt database and it was empty/contained only the basic data from a fresh installation.
ad 2) Unfortunally I don't have the logs from the upgrade progress.
I investigated my bahavior and the one of portainer during the upgrade with the following result:

I'm a dumb: After the new portainer version was launched I directly tried to log in and did not read the "welcome message". I immidiately entered my credentials as every time and was not surprised by the two password boxes.

Two of my three swarm-nodes had no relevant data in /var/lib/docker/volumes/portainer_portainer_data/_data, which means, that there were all expected files such as backups, but they were empty. On the third node, the backup of the database made during the upgrade was existing and consistent.

I was able to restore the backup, removed all old data, activated a persistend data share via bind mount with the backed up files and performed another upgrade sucessfully.

I was not able to reproduce the behavior, but I have two suggestions:

I would be great to have the opportiunity to (see and) restore old databases.

When there is a database with instance data already, there should be a more massive barrier replacing the old with a new one.

All the best,
roboticsalign

I just experienced the same problem. Upgraded packages in my system, rebootem, and almost everything from portainer is gone: no container and no stack. Images are still there.

@typeofweb did you search for a backup in /var/lib/docker/volumes/portainer_portainer_data/_data?


ci: removes npm cache custom action

closes #85

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Linux] LBRY takes control of all urls

Bug
Opening any URL causes LBRY to "eat" it and open
To Reproduce
Steps to reproduce the behavior:

Install LBRY using DEB
Open any URL
LBRY opens and not your web browser

Expected behavior
Opening URL should open web browser
System Configuration

LBRY Daemon version:0.99.0
LBRY App version: 0.51.2
LBRY Installation ID: yUoBwxU9QncUgW9D6TtN1NbBsyEKcScUAZL15nb6dBwKjzu48HbTngSVjKf26YWof
Operating system: Ubuntu 20.04 (with surface patches)

I filed an issue on this was told it isn't happening and they closed the issue.

Please see https://github.com/lbryio/lbry-desktop/issues/4729#issuecomment-774550333 if you had older versions installed. Newer versions don't do this anymore.

@tzarebczan Maybe you could use version numbers? What is new? What is old?

0.51.2 is the only version I have installed.

And that was your first time installing LBRY?

Correct.

The earliest I could have possibly installed it is last Thursday which I think is 11/18/21. I don't think there would be a major update in that time 😅

can you paste the lbry.desktop file, possibly located at /usr/share/applications/lbry.desktop ?

also, what method are you using to "open a URL"?

It looks like the fix from march got rebroken.
It'll be back for the next release.

Open an URL; I'm doing it from discord; I assume this means that any external app that opens a web browser opens in LBRY.

After opening LBRY desktop, I double-click filename.html and LBRY desktop will try (and fail) to open the file.
$ cat /usr/share/applications/lbry.desktop
[Desktop Entry]
Name=LBRY
Exec=/opt/LBRY/lbry %U
Terminal=false
Type=Application
Icon=lbry
StartupWMClass=LBRY
MimeType=x-scheme-handler/lbry;
Comment=A browser for the LBRY network, a digital marketplace controlled by its users.
Categories=AudioVideo;Video;

It looks like the fix from march got rebroken. It'll be back for the next release.

Why does it happen in the first place? Nothing should ever be opening with LBRY, it's not a web-browser, it's a portal.

The last fix is explained here https://github.com/lbryio/lbry-desktop/pull/5617

after removing it from ~/.config/mimeapps.list and restarting the app, current fix works.

@jessopb Is this fixed with a current PR some place?

I decided the best fix is to uninstall LBRY. Since the team here believes that a problem reported to the project's issues should just be fixed for the one person locally, I don't trust this project.
Issues are not for fixing a problem on my computer. They are for fixing problems in your software.

https://github.com/lbryio/lbry-desktop/pull/7291 this was the PR. We haven't been able to get the release out for it as we're waiting for the CSC.
I apologize if I was unclear and seemed to be saying it was your problem. By current fix, I meant this PR.


create ci/docker file

ci file
Pipeline
dockerfile for building deployment and testing images
CI, testing pipeline and testing images: https://github.com/Blvckleg/BingusBoingus/issues/10

resolved in #28


fix: add folder between temp directory and file

Changes discovered during workshop review

/do-e2e-tests

/do-e2e-tests


more outputs

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/14321/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14321/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14321/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/14321/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/14321/merge
https://gui.babylonjs.com/?snapshot=refs/pull/14321/merge
https://nme.babylonjs.com/?snapshot=refs/pull/14321/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/14321/merge#BCU1XR#0


add logical width height in box

Fix https://github.com/theKashey/stylelint-semantic-groups/issues/2#issuecomment-1280244882

👍

Released in v1.2.0


Suggestion: a UseStartup(args[]) overload like UseMiddleware

This would be very useful for instance when setting up a TestServer (TestHost namespace).
Here I often want to inject some changes into a normal startup class (which could be anything from a mock startup just for testing or your production one)

Why can't you just use ConfigureServices to add services?

Same reason use middleware has it, convenience.
I want to close over a primitive value for the action lambda that's the constructor argument of a startup filter that I add as a singleton. This would be aweful to do through DI, have to make an IOptions class etc etc, all to just get such a small thing working
Besides having that lambda outside startup would be the last resort

Same reason use middleware has it, convenience.

Not quite convenience. It was originally because of katana, there was no built in DI and no concept of named options so it was possible to have multiple pieces of middleware with different options, specifically authentication middleware needed this. We used to pass options directly to middleware but we've since standardized on using the DI system to do this via IOptions.

I want to close over a primitive value for the action lambda that's the constructor argument of a startup filter that I add as a singleton.

Then add a custom IStartup with a delegate to the container or don't pass a primitive value just create a type and inject that. I don't think this is common enough to justify adding this method.
Can you show an example of what you're actually trying to close over?

Closing this one.  @NinoFloris if you have more data and a scenario that you need to enable, please let us know.


Generate fld, fsd, fsw, flw tests report error

Hello,
when I use riscv-ctg to generate tests, there is a problem that fld,fsd,fsw,flw cannot generate tests. The specific error log is 'TEST_ STORE_ F 'and' TEST_ LOAD_F' Missing a parameter .
for example:
error：macro "TEST_STORE_F" pass 12 arguments, but takes just 11.
What additional parameters are required for this error, thanks!
And, when I try to generate RV64i_ B During the test, bclr,bclri,bext,binv,binvi,bset,bseti will report an error: xlenlim is not defined.
clz, clzw, cpop,cpopw....will report an error: object of type 'int' has no len()
Do you have any of these problems？Looking forward to answering, thanks！

can you run riscv_ctg --version and let me know what version you are using ? make sure you are on version 0.10.0.
Also please share the exact command with arguments that leads to the above errors.

The TEST_STORE_F macro in arch_test.h on the latest master has 12 arguments. The error might be that you are using an outdated arch_test.h while compiling or the arch_test.h in the generated directory is not recent. Copying of arch_test.h is skipped if a file already exists in the generation directory. Please try generating the tests in a clean directory.

Thanks. When I updated ctg to the latest version, I saw that arch test. h has been updated.  The problem of TEST_ STORT_ F has also been solved, But use the command：riscv_ctg  -v debug -d ./tests/ -r -cf ./sample_cgfs/dataset.cgf -cf ./sample_cgfs/rv64i_b.cgf -bi rv64i -p2 ，The above problems still exist.

bclr,bclri,bext,binv,binvi,bset,bseti will report an error: xlenlim is not defined.
clz, clzw, cpop,cpopw....will report an error: object of type 'int' has no len()
And，when I generate F/D tests, logs will appear: warning rs1_val_data not defined for xxx. Defaulting to [0]. But it does not affect test generation. Does this warning affect？thanks！


Fixes to cooldowns/banner times

Dont immediately merge it, im looking for more timing issues

lmk when


Tests for architecture

[ ] Pass value, rootSchema to getProps and getComponent
[ ] Resolve defaults, especially for Array components
[ ] Resolve schema based on current value


add duration test

That test fails. Is that normal? Looks like the duration input is ignored

Maybe I was not clear and I should have flagged it but that MR was to show a problem. It was not to be merged ,,,;-)

I see... I ran the same test against the C++ version or Ruckig and the test passes:
TEST_CASE("test_min_duration") {
    constexpr size_t DOFs {1};
    RuckigThrow<DOFs> otg {0.005};
    InputParameter<DOFs> input;

    input.current_position[0] = 0.0;
    input.current_velocity[0] = 0.0;
    input.current_acceleration[0] = 0.0;

    input.target_position[0] = 1.0;
    input.target_velocity[0] = 1.0;
    input.target_acceleration[0] = 1.0;

    input.max_velocity[0] = 1.0;
    input.max_acceleration[0] = 2.0;
    input.max_jerk[0] = 3.0;

    input.minimum_duration = std::nullopt;
    input.synchronization = Synchronization::None;

    Trajectory<1> traj;
    auto result = otg.calculate(input, traj);
    CHECK( result == Result::Working );

    Trajectory<1> traj_min_duration;
    input.minimum_duration = 5.0;

    result = otg.calculate(input, traj_min_duration);
    CHECK( result == Result::Working );

    CHECK( traj_min_duration.get_duration() > traj.get_duration() );
    CHECK( traj_min_duration.get_duration() > doctest::Approx(5.0) );
}

I will investigate this. The merge can stay there as such test should pass. I will let you know when there is a fix.
Thank you for pointing out the issue.


Missing building from source documentation

Our "building VAPOR from source" documentation seems to have vanished. There is a note here:
https://vapor.readthedocs.io/en/readthedocs/downloads.html#installationinstructions
that says "Building From Source  section below", but there is nothing about source installation in the document.
We need to augment our build instructions with the changes we've made to our cmake config to support OpenMP as described here:
https://docs.google.com/document/d/1nsaarW3jaZVAJFIHsERZ7MWMlms57LbErdcLgjtAkTo/edit?usp=sharing

@clyne @shaomeng - I believe that GCC/LLVM currently have native support for OpenMP, so these instructions are not longer needed.  The only thing that still needs mentioning is that we don't support Windows builds with OpenMP.  Anything I'm missing or wrong about on this?

@clyne @shaomeng - I believe that GCC/LLVM currently have native support for OpenMP,

I believe this statement is true, but the problem is that MacOS ships with a modified version of LLVM that doesn't support OpenMP. I'm not sure how this mismatch should be addressed.

the problem is that MacOS ships with a modified version of LLVM that doesn't support OpenMP

Ok, it sounds like this still needs to be documented with our MacPorts installation info then.

According to #2860 MacOS Clang13 includes OpenMP support, but I don't think Clang13 is widely available on Macs yet.

@sgpearse is this issue still relevant?

@NihanthCW No, it's not.  I'll close.


angular.copy Very poor performance (large objects)

Our application loads resources from API and renders them in a table. API request takes ~200ms, rendering table ~140ms but when you actually looking at the page it takes about 6s to display it.
I have drilled through the code and realized this was caused by using angular.copy . I need to keep track of the old data so I copied the whole object to backup object via angular.copy() function. The copying itself took over 2s (~2500ms).
I have searched for better ways, to copy objects and stumbled upon this code:
cloneObject: function(o){
            const gdcc = "__getDeepCircularCopy__";
            if (o !== Object(o)) {
                return o; // primitive value
            }

            var set = gdcc in o,
                cache = o[gdcc],
                result;
            if (set && typeof cache == "function") {
                return cache();
            }
            // else
            o[gdcc] = function() { return result; }; // overwrite
            if (o instanceof Array) {
                result = [];
                for (var i=0; i<o.length; i++) {
                    result[i] = this.cloneObject(o[i]);
                }
            } else {
                result = {};
                for (var prop in o)
                    if (prop != gdcc)
                        result[prop] = this.cloneObject(o[prop]);
                    else if (set)
                        result[prop] = this.cloneObject(cache);
            }
            if (set) {
                o[gdcc] = cache; // reset
            } else {
                delete o[gdcc]; // unset again
            }
            return result;
        },

This is my implementation of this: http://stackoverflow.com/a/10729242/820942
Replacing all angular.copy() in my code with this hugely improved the webapp overall. The same example above takes ~41ms instead of ~2s.
I should mention that the data I am mentioning is pretty large (renders into 10 000 cells table)
After very brief look on the angular.copy code I am aware of that there are some added angular goodies ($$hashkey) but still the difference in performance is just too big.

@Tomino2112 did you try to put this code and see if it passes all the existing tests? As you've noticed, angular.copy is more of an internal utility and we kind of regret exposing it as a public API... but now the damage is done... So if your version works better for your particular case - by all means use it!
It is kind of hard to say more without an isolated reproduction scenario which we could profile to actually see what is going on. We are missing this as well as other essential info (ex.: browser and its version used for tests).
In short: please provide an isolated reproduce scenario, otherwise it is not very actionable.

@Tomino2112, it may be interesting to see if your approach can be somehow used within angular for speed optimization, but in the meantime, it is never a good approach trying to display 10,000 cells on a page at once through a single request. It is a very poor approach from the architecture point of view.
@pkozlowski-opensource, I find his research credible enough to suggest that Angular's implementation for deep copy is to be reviewed, based on implementation by @Tomino2112. The performance difference seems to be huge.

Hi guys,
@pkozlowski-opensource When I have a minute I will create sample fiddle
@VitalyTomilov Yeah its not great to render that many cells, actually it is edge scenario, usually its around hundereds of cells - still not great though, but thats what you get when you try to render sheets of data online. I have some ideas for rendering on my list, just not enough time to play around with them at the moment.
I will prepare some code example so you cna see it in action (i mean the angular.copy)

I think the main thing slowing angular.copy is the use of a stack (arrays) to track the already copied objects.  The snippet proposed above modifies the objects being copied which might be faster but will have a lot of issues if you want a general purpose copy method (it won't work at all on immutable objects, what if it crashes in the middle leaving a bunch of objects with modifications, etc.).
#11215 helps a bit mainly by reducing the size of the stack (today sub object/arrays are pushed twice!).
However I have found that replacing the stack with an ES6 Map improves performance significantly. I'm not sure if it's worth shimming Map just for the copy method though. Would Map be useful anywhere else?

I wonder if a shimmed Map would have the same performance benefits as the "native" Map.
Isn't the private HashMap sort of a shim for Map ? Would it help ?

HashMap modifies the key object so that won't work for this case. A shimmed Map has to use the 2-array/indexOf method so it wouldn't have any performance benefits.

That's what I thought :)

Maybe it is a bit sinister having just one Copy version for both simple data and immutable objects, so if one wants a simpler, high-performance copy without any advanced provisions, it is not available.
If this is the case, the best approach is to provide two separate Copy implementations either through 2 separate functions or through an extra parameter for Copy.

Using something like this:
destination = JSON.parse(JSON.stringify(source));
I copied 10,000 key/value pairs of an object in ~5 milliseconds on my
machine. I know this leaves out a lot of the functionality found in
angular.copy, but perhaps there is some good way of merging this approach
in?
On Mon, Mar 2, 2015 at 10:30 AM, Vitaly Tomilov<EMAIL_ADDRESS>wrote:

Maybe it is a bit sinister having just one Copy version for both simple
data and immutable objects, so if one wants a simpler, high-performance
copy without any advanced provisions, it is not available.
If this is the case, the best approach is to provide two separate Copy
implementations either through 2 separate functions or through an extra
parameter for Copy.
—
Reply to this email directly or view it on GitHub
https://github.com/angular/angular.js/issues/11099#issuecomment-76771332
.

JSON.parse(JSON.stringify(source)) is often a good method if you know it can handle your data (no circles, no functions, no objects other then string/number/plain-object/null). A standard copy method could never make those assumptions though, and detecting such a thing would require traversing the entire source object which would kill any performance gain. Generally utility methods like this don't belong in angular anyway...

That's a good point, I didn't realize that code doesn't copy over functions or object methods :/

@gkalpak @jbedard How about using Map in newer browsers and falling back to a shim in old browsers (by my count Internet Explorer 9-10, Safari/iOS 6-7 and Android Browser)

@realityking that's what I was proposing, I'm just not sure if creating that shim is worth one use case...

Considering how copy() is used in deep watchers and sometimes in AST.prototype.primary(), it might be worth the trouble.
Two things I would take into account:

How much is the code overhead (in terms of loc).
How much is the performance benefit in "newer" browsers.

When I tried it out (on top of #11215) I think it was ~50 LOC and made all modern browsers ~5x faster with my random over complicated test data.  I could open a PR if people think this is worth it?

:+1: for using Map where supported

@jbedard what about with not so complex data?

As the complexity goes down (less objects) using Map has less benefits and is slower with simple data.  For example I found copy({a:"b", c: {d: "e"}}) was about 30% slower using Map.
However in those simple data cases it is normally isTypedArray(destination) consuming the most time, not new Map or Map.get/set. So that 30% can easily be made up for with other changes such as https://github.com/jbedard/angular.js/commit/8a2503bdb5786dd31ebf503903406d7cbb686d5a which makes that simple copy 50% faster...

I don't have time for it right now, but if no one else does it by tomorrow
I can run some tests with varying sizes of each data-type being passed into
copy, both using Map and not using Map. Then we can pinpoint the number of
bytes in the median(s) of the valley(s) in the performance curve and
implement a check where the performance benefits of map outweigh the cons
(as @jbedard pointed out) and then copy can decide whether or not to use it.
What if we did something like this:

var byteThreshold
= /*
Some number of bytes where objects
 of this size or greater are benefited
 by using map, and objects less than
 this byte size take a performance hit
 due to isTypedArray(destination).
 */;

if (sizeOf(source) >
byteThreshold) {
// use map
} else {
// don't use map
}

And figure out where that threshold would be exactly? Or would it even be
worth it to check? Perhaps the performance tradeoffs are negligible? I
don't really know because I haven't run the tests or looked at the data,
but maybe jbedard@8a2503b
https://github.com/jbedard/angular.js/commit/8a2503bdb5786dd31ebf503903406d7cbb686d5a
already
knows where that would be?
On Tue, Mar 10, 2015 at 3:08 AM Jason Bedard<EMAIL_ADDRESS>wrote:

As the complexity goes down (less objects) using Map has less benefits
and is slower with simple data. For example I found copy({a:"b", c: {d:
"e"}}) was about 30% slower using Map.
However in those simple data cases it is normally
isTypedArray(destination) consuming the most time, not new Map or
Map.get/set. So that 30% can easily be made up for with other changes
such as jbedard@8a2503b
https://github.com/jbedard/angular.js/commit/8a2503bdb5786dd31ebf503903406d7cbb686d5a
which makes that simple copy 50% faster...
—
Reply to this email directly or view it on GitHub
https://github.com/angular/angular.js/issues/11099#issuecomment-78025472
.

I don't have time for it right now, but if no one else does it by tomorrow
I can run some tests with varying sizes of each data-type being passed into
copy, both using Map and not using Map. Then we can pinpoint the number of
bytes in the median(s) of the valley(s) in the performance curve and
implement a check where the performance benefits of map outweigh the cons
(as @jbedard pointed out) and then copy can decide whether or not to use it.
What if we did something like this:

var byteThreshold
= /*
Some number of bytes where objects
 of this size or greater are benefited
 by using map, and objects less than
 this byte size take a performance hit
 due to isTypedArray(destination).
 */;

if (sizeOf(source) >
byteThreshold) {
// use map
} else {
// don't use map
}

And figure out where that threshold would be exactly? Or would it even be
worth it to check? Perhaps the performance tradeoffs are negligible? I
don't really know because I haven't run the tests or looked at the data,
but maybe jbedard@8a2503b already knows where that would be?

sorry, that code highlighter did not work out lol...
	var byteThreshold = /* Some number of bytes where objects
			of this size or greater are benefited
			by using map, and objects less than
			this byte size take a performance hit
			due to isTypedArray(destination).
			*/;

	if (sizeOf(source) > byteThreshold) {
		// use map
	} else {
		// don't use map
	}

It is not worth having 2 implementations...

Had an issue: when I try to copy a large object, it copies in ~300ms, but sometimes it can copy for 18-20s. jbedard's method JSON.parse(JSON.stringify(source)) worked good for me.

33c67ce785cf8be7f0c294b3942ca4a337c5759d has improved this a bit more often making copy 1.5-3x faster.

I have tried MANY solutions from all over the internet, but in the end I end-up writing specific function for copying my object. After all the tests and benchmark, the result is, if you have large arrays/objects, its better to write your own copy function specifically for that object with for loops because they are insanely fast compare to whatever other solutions. I still use angular's clone function, but only for small objects

@jbedard Sorry for the naive question, but 33c67ce has a commit date June 9 and doesn't seem included in Angular 1.4.7, could you help me to understand version numbers?
Thanks

It was just put into master a few days ago so it will be in the next 1.5 release.

@jbedard Ok thanks for the info. We will try 1.5 then, I'm very curious about the performance difference. I hope there won't be too many breaking changes in 1.5

I think angular should move these helper functions eg. isNumber(), forEach(), copy, isEqual() into angular-util package, so that the core package size can be even smaller, and we might be able to use lodash instead.

@stanleyxu2005, (as stated before) Angular never intended to provide a replacement for general purpose utility libraries. It's helper function (copy(), forEach(), isXyz() etc) where implemented for internal use (so they are focused on supporting/performing well only for the imtermally needed usecases - they might work well for other usecases, but it's not their purpose).
At that point, it seems like a good idea to expose the utility functions to the developers (since they were implemented anyway), so they didn't have to import a whole different library for simple usecases. This actually turned out to be a bad idea - among other things, it's much more difficult to make breaking changes to them to better support the evolving needs of the framework.
There's not much we can do now, because removing them break too many apps. The functions are also used internally, so removing them from the core is not an option (that's their purpose in the first place). So, they'll continue to exist, but users should keep in mind that they might not be the best option for their usecase.

I just replaced angular.copy with JSON.parse(JSON.stringify()) on a 18meg tree structure. The speed difference was huge...

One more case study....
let as = [...] // array of ~4000 objects

console.time('angular')
angular.copy(as)
console.timeEnd('angular')
// => 71048.443ms

console.time('lodash')
_.cloneDeep(as)
console.timeEnd('lodash')
// => 521.026ms

Please deprecate the public angular.copy API, and add a note on the docs page!

The team should be aware that source of angular.copy has too much nested functions, that's part of why it's so slow.

@e-cloud, is there any evidence that inlining the functions would improve performance?

Nope, what i mean is every time you call angular.copy will create nested functions, which cost more memory and time. Of source, in small scale it doesn't matter.

@gkalpak Improve performance of frequently use functions is a common sense. I feel it is a bit confused of using angular functions. If those functions are intended to be used internally, better rename foo to internal.foo or _foo. If we don't have much knowledge of angular's history, we never know these functions are not for public usage.

@stanleyxu2005 JSON.parse(JSON.stringify(obj)) is very limited and does not work for the internal uses of angular.copy.

every time you call angular.copy will create nested functions, which cost more memory and time.

@e-cloud, the question is whether the cost is neglible compared to other operations involved or not. If there is evidence that we can noticeably improve the performance of angular.copy (without sacrifizing functionality), we would be more than happy to do it.

@e-cloud I tested your idea and it really makes no difference. It's only 3 closures per copy call. If it were 3 per object (and sub object) it would probably make a difference but that's not the case.

@jbedard , Do you try it in scale?

Of source, in small scale it doesn't matter.

I've mention before, if only few calls.

In my use case, I did not saw any a difference in angular.copy vs JSON.parse(JSON.stringfy(dataobject));
Rather _.map(dataobject, _.clone) was super fast.
angular.copy(dataobject)
2500ms
JSON.parse(JSON.stringfy(dataobject))
2500ms
_.map(dataobject, _.clone)
115ms


Work items disappear after unlinking (#1708)

Fix the SQL filter query by making sure only undeleted
links are taken into account when the parentexists filter
is activated.
Also, reduce the number of subselects.
Also, refactor the search/search_repository_blackbox_test.go
by using sub tests.
Also, make sure that tests in TestSearchParentExists include
the userSpaceID in the search expression.
Fixes #1708
Signed-off-by: Xavier Coulon<EMAIL_ADDRESS>

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-1

Codecov Report

Merging #1709 into master will increase coverage by 0.12%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #1709      +/-   ##
==========================================
+ Coverage   56.53%   56.66%   +0.12%
==========================================
  Files         126      126
  Lines       14549    14548       -1
==========================================
+ Hits         8225     8243      +18
+ Misses       5684     5666      -18
+ Partials      640      639       -1

Impacted Files
Coverage Δ

workitem/link/type.go
92.3% <ø> (ø)
:arrow_up:

search/search_repository.go
75.19% <100%> (-0.05%)
:arrow_down:

remoteworkitem/scheduler.go
63.26% <0%> (+16.32%)
:arrow_up:

remoteworkitem/github.go
100% <0%> (+21.62%)
:arrow_up:

models/transaction.go
63.63% <0%> (+27.27%)
:arrow_up:

Continue to review full report at Codecov.

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

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-3

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-4

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-6

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-7

[test]

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-8

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-9

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-10

@xcoulon snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1709-11


Create a Community Survey/questionaire to improve on the Platform

Questionnaire:

[Identity] How well do you feel represented via #ASKlead? (improvement ideas?)
[Tech] How easy is the technical usage/functionality for you? (improvement ideas?)
[Sustainability] How do you think the content can be maintained? (What do you need to make it easy?)

→ Mobile/Responsiveness question?

First Draft is ready @romeoplat

I love the interface, anyway yes thanks a lot @timmwille the questions are as direct and proper as we suggested that great! Nice work there Bigman

I love the interface, anyway yes thanks a lot @timmwille the questions are as direct and proper as we suggested that great! Nice work there Bigman

I love the interface, anyway yes thanks a lot @timmwille the questions are as direct and proper as we suggested that great! Nice work there Bigman

Ok, then feel free to send the questionaire Link I send you via PM around :+1:


Signature failure when verification is executed.

What happened:
Verification failed with outdated OCM CLI.
Error:
failed verifying signature of github.com/acme/podinfo:v1.0.0: github.com/acme/podinfo:v1.0.0: signature "RSASSA-PKCS1-V1_5" is invalid: signature verification failed, crypto/rsa: verification error

What you expected to happen:
Backwards compatibility with old signing versions.
How to reproduce it (as minimally and precisely as possible):
Use an older version, for example<PHONE_NUMBER>b76944f91974ff918b4b08b3a6f9ce.
Sign your component with:
# Generate key
ocm create rsakeypair

# Sign
ocm sign component --signature alice --private-key rsa.priv --public-key rsa.pub ./component-archive

Switch to newer version like e39625d6e919d33267da4778a1842670ce2bbf77.
Then run verification with
ocm verify component -s alice -k rsa.pub --repo ghcr.io/skarlso github.com/acme/podinfo

The above error occurs.
Anything else we need to know:
Environment:

@mandelsoft hi! :)
So I think we figured out what happened, please confirm this.
So reading this line: https://github.com/open-component-model/ocm/pull/241/files#diff-e20820bdb6023e8ec7a7875c5d9e2574d30dd16d8c1b4f2d8ed0b8cf1f3700e9L37
Source was removed from the digest calculation. This means that the digest generated by the old version now mismatches the digest generated by the new version. This caused an error because of the digest mismatch that we had in the ocm-controller.
This error above I think comes from the fact that I used ocm verify which verified all of the versions in my component. And some of them had different keys being used.

confirmed.


Data in application/x-www-form-urlencoded format from github isn't handled

Currently only JSON data is accepted from github, supporting application/x-www-form-urlencoded  might be subject of the further refactoring/extending.

Hm?
In which context? Hook? Auth?
We may add the right header. Also the builtin server is bad at handling
json data or other mime types.
On May 8, 2015 6:40 PM, "Anatol Belski"<EMAIL_ADDRESS>wrote:

Currently only JSON data is accepted from github, supporting
application/x-www-form-urlencoded might be subject of the further
refactoring/extending.
—
Reply to this email directly or view it on GitHub
https://github.com/FriendsOfPHP/pickleweb/issues/38.

Still talking about the hooks, as after figuring out the cause of #37 i was just trying to misconfigure as much as i could. But this could be done abstracting the data parsing into some layer according to their type. So I wanted just to note it could/should be done somewhen :)

Does it work once configured correctly?
This is the main thing, every thing else can wait.
We can a short sanity check in the github controller and bailout with a
message saying that this event is not supported. But that's all we need for
now.
On May 8, 2015 6:55 PM, "Anatol Belski"<EMAIL_ADDRESS>wrote:

Still talking about the hooks, as after figuring out the cause of #37
https://github.com/FriendsOfPHP/pickleweb/issues/37 i was just trying
to misconfigure as much as i could. But this could be done abstracting the
data parsing into some layer according to their type. So I wanted just to
note it could/should be done somewhen :)
—
Reply to this email directly or view it on GitHub
https://github.com/FriendsOfPHP/pickleweb/issues/38#issuecomment-100209458
.

Yep, when application/json selected and it works. When documented, it's should be fine at the current stage.

Woohoo :)
On May 8, 2015 7:11 PM, "Anatol Belski"<EMAIL_ADDRESS>wrote:

Yep, when application/json selected and it works. When documented, it's
should be fine at the current stage.
—
Reply to this email directly or view it on GitHub
https://github.com/FriendsOfPHP/pickleweb/issues/38#issuecomment-100213128
.

@anatol
Can you be more precised in the wiki? Create/delete tag, and release
Also I have to fix the API key and link part, it is easier now, one click
and you get it from the extension page.
On May 8, 2015 7:18 PM, "Pierre Joye"<EMAIL_ADDRESS>wrote:

Woohoo :)
On May 8, 2015 7:11 PM, "Anatol Belski"<EMAIL_ADDRESS>wrote:

Yep, when application/json selected and it works. When documented, it's
should be fine at the current stage.
—
Reply to this email directly or view it on GitHub
https://github.com/FriendsOfPHP/pickleweb/issues/38#issuecomment-100213128
.

But that's exactly what stands there on the hook settings page, against the checkbox:
Create
Branch, or tag created.
Exactly one word against checkbox, so hard to mix up.
Branch is bailed out by pickleweb, just tested and it works.

Yes, but the word "tag" is missing in the wiki :)
On May 8, 2015 7:35 PM, "Anatol Belski"<EMAIL_ADDRESS>wrote:

But that's exactly what stands there on the hook settings page, against
the checkbox:
Create
Branch, or tag created.
Exactly one word against checkbox, so hard to mix up.
Branch is bailed out by pickleweb, just tested and it works.
—
Reply to this email directly or view it on GitHub
https://github.com/FriendsOfPHP/pickleweb/issues/38#issuecomment-100219179
.


add the negative connections

I am not sure about these so please review carefully @rcoreilly

Logically, there is no connection between positive and negative USs. VsMatrix and OFCus are all organized around positive USs. Therefore, it only makes sense to have full projections from Neg to these layers. Can you give that a try?
Also, don't forget to run boa TestStdCPUnData1 with SaveStandard = true to update test results after updating something like this, to pass the tests.

Made the changes. Take a look again please.


Port server to async

Task
In #3, the miniserve library was refactored to use Rust's async feature. Unfortunately this broke the build, because the new API is not backwards-compatible. Once you merge #3, your task is to port the server crate so it has the same functionality as before, but such that it works with the new miniserve API.
Background
Remember — try solving the problem before reading the background. What compilers errors do you get? Do they give any helpful advice? How far can you get before you get stuck? Don't forget to pull the merged PR before you begin.
Futures
A future is a computation that eventually returns a value. Rust represents futures as types that implement the std::future::Future trait. The Future trait has an associated type Output which indicates the kind of value returned by the future. For example, if a function returns impl Future<Output = i32>, then that means "this function returns a future which eventually outputs an i32." If you need a refresher on impl Trait syntax, check out the Rust book chapter on traits.
async keyword
The easiest way to make a future is to use the async keyword. The async keyword can annotate a function:
async fn returns_a_future() -> i32 {
  0
}

Or it can annotate block:
fn returns_a_future() -> impl Future<Output = i32> {
  async { 0 }
}

These two pieces of code do the same thing.
Future bounds
The Future trait commonly occurs as a trait bound in library functions that take futures as input, or return futures as outputs. For example:
fn i_want_a_future<F: Future>(_f: F) {}
fn i_want_an_async_fn<A: Future, B: Fn() -> A>(_f: B) {}

fn main() {
  let fut = async { println!("Hello world"); };
  i_want_a_future(fut);

  async fn fut_fn() { println!("Hello world"); }
  i_want_an_async_fn(fut_fn);
}

If you get a compiler error that says Foo is not a future, that means that Foo needs to implement the Future trait.
await keyword
The easiest way to get the value out of a future is to use the await keyword. For example, you could await the output of returns_a_future like this:
async fn print_zero() {
  let zero = returns_a_future().await;
  println!("{zero}");
}

The await keyword can only be used in async functions or blocks. It basically means: "wait until this future has completed, and then get its value."
Async in main
Rust does not allow the main function to be async. The reason has to do with how Rust futures are implemented, which we will discuss later. For now, the key thing to know is that async functions need to be executed in a runtime. An async runtime is code that runs futures and checks them for completion. Unlike most languages with async (e.g., NodeJS, C#, Go, etc.), Rust does not have a default async runtime. You have to provide one yourself.
Providing an async runtime
For this tutorial, we will be using Tokio, a popular and featureful async runtime (but the core concepts will translate to other runtimes). miniserve is already using Tokio. To use it within server, add it as a dependency using the full feature, e.g.,
cargo add tokio --features full -p server

The simplest way to setup the Tokio runtime is to annotate the main function like this:
#[tokio::main]
async fn main() {
 // ...
}

How does #[tokio::main] work?
The macro isn't too complicated — try seeing what it expands to by running cargo expand. Basically, it moves the body of the main function into an async block, and then defines a new (non-async) main which passes that async block to a newly-created Tokio runtime.

Fixed in #3


When type provider is used in library project it looks for tableSchema in referencing project

Repro steps

Cleate F# app and .NET standard project
Declare provider instance in .NET standard project
Add table schema to .NET standard project and use in provider instance
Use provider instance from app

Expected behavior
Table schema is used from .NET standard project
Actual behavior
Schema not found exception
Known workarounds
Reference schema file as link in app project
Related information

Windows 10 Pro x64 1809
2.0.1
.NET Core 2.2, .NET Standard 2.0

Error	FS3033	The type provider 'ProviderImplementation.AzureTypeProvider' reported an error: Unable to parse table schema file (System.Exception: Could not locate schema file. Searched: ["Tables.json"; "src\Manager\Tables.json"] )


Clarify implicit casts of enum for Issue 958

We added a reference to the implicit cast section in the enum operations section.
We re-asserted that the implicit casts from enum to its underlying types is always safe and allowed, with extra examples.
Fixes #958

We agreed to take this at the December '21 LDWG, modulo two small fixes.

@jnfoster I restricted the implicit casts of enums in bit slicing to only the indexes with the recent commit. Ready for final review and merging. Thanks!


[ACR] Default Disable the Pull Request Trigger for Task

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[ ] I adhere to the Command Guidelines.

//cc @northtyphoon @sajayantony @juliusl @shahzzzam

@zikalino could you please take a look? Thank you.

@yugangw-msft can you please review? We are trying to release this ASAP.


Feature/ospike

This code sorts spikes on the sending node, and then uses the globally sorted spikes on the receiving end to search for node-relevant spikes using C++11 standard binary searches.
Performance characteristics have been reported in the slack channel.

I've got a branch that unifies this with the original backend, plus a new O(connections/node) backend:
https://github.com/apeyser/nestmc-proto/tree/feature/nspike

Okay, the PR is redone to have four backends:

linear_spike_queue_policy: the original communicator, walk spikes and search connections
linear_communication_queue_policy: the inverse of the original, walk connections and search spikes
global_search_queue_policy: search for blocks of connections, and search for spikes associated with all
domain_search_queue_policy: as the previous, but instead of using the binary search for spikes, keep the domains for the source of each connection, and search inside that domain block

I've tested them for 50 cells, 10 synapses, 5 compartments, dt = 0.025, tfinal = 50.0, with 1, 2 and 3 dry run ranks.
Backends are set at cmake time with -DNMC_USE_QUEUE=connection/spike/global/domain

Reminder to myself - the README needs to be updated with the new options.

@bcumming : Any reason for me to keep this alive, since this has been merged into #326 ?

Yes, I think that there is value in keeping it around until we have benchmarked and tested the different spike list walking algorithms that you have implemented in this PR.

We kept this PR around as a crib-sheet for communicator refactoring. Now the communicator implementation has moved on, so it is time to close this.


add option for https of web console

use https on web console with login to protect and use externally

Good day!  Good suggestion, however the best place to control access to Machinaris is via an authenticated web proxy such as Nginx using SSL.  Since each user will have their own preferred proxy and authentication, it's best that Machinaris not force a particular solution on users.  Please the linked Wiki pages for details.


Update Readme

Update yaml file with new daemonset definition introduce by kubernetes 1.9

/cc @andyxning  /cc @Random-Liu

@andyxning what do you think about latest proposal on commit a84a937 ? (If it's works on 1.8 we can say kubernetes version <1.8? )

what do you think about latest proposal on commit a84a937 ? (If it's works on 1.8 we can say kubernetes version <1.8? )

@jsenon < 1.9 seems fine to me as DaemonSet is bumped to apps/v1 only after v1.9.0-alpha.2.

/lgtm
Ping @Random-Liu

@jsenon Sorry for not having auth to merge this. Actually i have prepared a PR to add @Random-Liu @dchen1107 and i to the OWNERS file at the root the node-problem-detector repo in https://github.com/kubernetes/node-problem-detector/pull/166. /cc @Random-Liu

@jsenon Sorry for the late and the patience.
/approve

No pb @andyxning


from edge to adj matrix

Create method to transform an edgelist to an Adj Matrix

Added a basic function for this issue


Can you please support CommonJS version?

Can you please support CommonJS version?

@NicolasKim My time estimation was a bit off, sorry about that. With the changes from #44 you can use CJS from version 3.1.0.


NPX command to run docker locally failed

I was unable to run the docker locally with the documented instructions. The stand alone docker never built

@hrshelar Hi, I will look into this. Can you share the error message that you ran into when running the docker-build & docker-run commands? Is your local machine Windows or Mac? I believe you have run npx yarn az-login before running these commands. If not, please can you try and let us know if you still see the error.

@karthick-rn Unfortunately I deleted the VM I attempted this on. I'll likely attempt this again and paste the errors here. I did make sure to do the az-login and switch environments thing

@karthick-rn Unfortunately I deleted the VM I attempted this on. I'll likely attempt this again and paste the errors here. I did make sure to do the az-login and switch environments thing

ok, please share the command & the error when you get a chance to re-attempt this. Thanks for confirming you ran the az-login, we can rule that out.


cucumber-expressions: Prefer Java type hint over parameter type

Summary
When there is a conflict between the type hint from the regular expression
and the method prefer the the parameter type associated with the regular
expression. This ensures we will use the internal/user registered parameter
transformer rather then the default.
Unless the parameter type indicates it is the stronger type hint.
Details
Reasoning:

Pure cucumber expression users will not notice this in either scenario.
Pure regular expression users will benefit because
BuiltInParameterTransformer can now seamlessly transform any captured
values. (For all built in types useRegexpMatchAsStrongTypeHint is
explicitly set to false.)
Regular expression users that define a default transformer have little
need to define parameter types. The default transformer should be
sufficiently powerful to meet their needs and will often allow users to
add custom creation methods e.g. Jacksons @JsonFactory.
Users who mix regular and cucumber expressions may run into conflicts
when a registered cucumber expression and unregistered happens to
collide. However this was the situation before this flag was added.
Regular expression users who define custom parameter types do so with
the expectation that the parameter will be matched. Subverting this
expectation when the method signature does not match may result in a
parameter transformer that is unable to convert to the desired type.
Leaving the user puzzled as to why his transform was ignored.

Motivation and Context
Fixes: https://github.com/cucumber/cucumber/issues/658
Types of changes

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

Checklist:

[X] The change has been ported to Java.
[x] The change has been ported to Go.
[X] I've added tests for my code.

Tip @mpkorstanje - rather than creating a PR prefixed with WIP: , you can mark the PR as a Draft. See https://github.blog/2019-02-14-introducing-draft-pull-requests/

Cool. That's new. Thanks.

Implemented Go too.

I'll merge this by the next of next week unless there are any more comments. Then we can bundle it up for the next release of cucumber expressions.


Document "on-middle-click" option

Similar to on-click and on-right-click, I'd like an on-middle-click option. This is one of the few features I'm missing from polybar, as I used it with the mpd module: left click for previous track, middle click for play/pause, right click for next track.

ha, I was just about to put in this ticket myself earlier today.
While spelunking the code to see how to add it, I found that the option already exists: on-click-middle.  It's just not documented.  See https://github.com/Alexays/Waybar/blob/master/src/AModule.cpp#L11

Oh yeah, if someone wants to update wiki and doc to add the missing clicks?

I made appropriate edits to the wiki and updated the custom module man page in PR #517

Done in #517 by @fuzxi


fix bug when running image-to-text example

change back value to 0 when do the padding. Before the fix, when we run python3 run_pipeline.py  --model_name_or_path llava-hf/llava-1.5-7b-hf --use_hpu_graphs  --bf16 --use_kv_cache, it will return wrong output:
result = [[{'generated_text': 'USER:  \nWhat is shown in this image? ASSISTANT: The\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\n'}] ], this PR fix it.

change back value to 0 when do the padding. Before the fix, when we run python3 run_pipeline.py --model_name_or_path llava-hf/llava-1.5-7b-hf --use_hpu_graphs --bf16 --use_kv_cache, it will return wrong output: result = [[{'generated_text': 'USER: \nWhat is shown in this image? ASSISTANT: The\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\n'}] ], this PR fix it.

Can you also paste the output after the fix?

@jiminha let me know if you are able to review further.

Fix incorporated into https://github.com/huggingface/optimum-habana/pull/1366, please review there

change back value to 0 when do the padding. Before the fix, when we run python3 run_pipeline.py --model_name_or_path llava-hf/llava-1.5-7b-hf --use_hpu_graphs --bf16 --use_kv_cache, it will return wrong output: result = [[{'generated_text': 'USER: \nWhat is shown in this image? ASSISTANT: The\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\nЪ\n'}] ], this PR fix it.

Can you also paste the output after the fix?

after the fix , the output is:
result = [[{'generated_text': 'USER:  \nWhat is shown in this image? ASSISTANT: The image shows a pier extending out over a body of water, with a mountain in the background. The pier is made of wood and appears to be a popular spot for people to gather and enjoy the view.'}]]

@jiminha let me know if you are able to review further. @zongwave can you review this as it changes back the code you had added for input embeddings

In this context, it intend to pad the "attention_mask," so it should indeed be set to 0.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Can Kong Authenticate browser apps

I'm running a docker registry, which is a perfect case of a service to put behind kong.  I can use plugins to get all kinds of auth options,without doing the docker-specific weirdo setup. Great!
But, i'm also running a registry ui, which is a UI application, not a REST service.  In this case, I want to prompt the user interactively for login ( using LDAP or another interactive OAuth provider).
Question: will this work?  It appears that Kong is designed for APIs, but can it be used to front browser apps as well, and provide metrics/auth for those too?

@dcowden are you talking about session handling? Currently all plugin handles requests in stateless pattern except we do cache data in memory to save calls Kong Database. But I don't think it would be difficult to create plugin which cache session and run relevant logic.


fix: #1226 update icon on "nothing to display yet" page

Changing the icon from IconCapitol to Carbon's search-locale in dashboard page.

The icon seems too small for me, other than that looks good

Thanks. The icon is rendering like the screenshot below on my machine. Is yours different than that?

The icon seems too small for me, other than that looks good

Thanks. The icon is rendering like the screenshot below on my machine. Is yours different than that?

on google chrome is ok but in firefox is displayed like this:


AuthorizedHandler Blocked wrong request!

Balance of debt, high availability on the firewall  by  F5，which likes nginx.
so vip is<IP_ADDRESS> ,real ip is <IP_ADDRESS> or <IP_ADDRESS>
server's log shows that
client.getRemoteAddress().toString();  = <IP_ADDRESS>
but channel.remoteAddress() =<IP_ADDRESS>
so ,how can i fix it,
or if
config.setAllowCustomRequests(true);
By allowing custom requests the piece of code displaying the warning was bypassed in Authorizehandler and  switch out the wrongUrlHandler ?

now ,I find websocket's heartbeat is not receive.

可以参见：websocket cannot work with F5 Networks #1347（https://github.com/socketio/socket.io/issues/1347）

@AndyMeng2017 from the issue you reference, it looks like websocket CAN indeed work with F5 devices, if they are properly configured to do so:

Fixed, It works after the OPS team has modified the configuration of the F5
They even discussed about F5 versions, since the solution could be different based on that.

So it looks like this incident regarding netty-socketio could be closed, right?


compare() of Mock.call_args[_list] fails because these call() objects are two-tuples

Comparisons of Mock.call_args and Mock.call_args_list like these:
compare(mock.call_args, expected=call())
compare(mock.call_args_list, expected=[call()])

...fail with:
ValueError: need more than 2 values to unpack

...because (per the mock documentation)

A call object is either a tuple of (positional args, keyword args) or (name, positional args, keyword args) depending on how it was constructed. When you construct them yourself this isn’t particularly interesting, but the call objects that are in the Mock.call_args, Mock.call_args_list and Mock.mock_calls attributes can be introspected to get at the individual arguments they contain.
The call objects in Mock.call_args and Mock.call_args_list are two-tuples of (positional args, keyword args) whereas the call objects in Mock.mock_calls, along with ones you construct yourself, are three-tuples of (name, positional args, keyword args).

...but compare_call assumes they are always three-tuples:
https://github.com/Simplistix/testfixtures/blob/aa22b5eb84addc9a90f6023c34377339e9c7f54c/testfixtures/comparison.py#L366-L370
NB: This codepath is short-circuited if the call objects compare equal with ==, so this issue only arises in the event that they are not equal.

Here's a quick demonstration of the problem:
https://github.com/BATS/testfixtures/blob/4e6d3ee40acc9154b193cbfadda1e6b2857a0509/testfixtures/tests/test_mock.py#L44-L51
(Though I suspect this isn't where you want the test for this.)

See the commits in PR #131 for a couple of suggested variants on how to fix this.

PS: Who thought it was a good idea for mock.call objects to be tuple-like, with variable length! @voidspace :-p

Don't be too quick to judge, I remember when @voidspace introduced mock.call and though the approach was a very graceful way of maintaining backwards compatibility.
compare(mock.call_args, expected=call(...)) would be better as mock.assert_called_with(...).
That said, I do think this is worth fixing.

No judgement at all. That was just a tongue-in-cheek excuse to namedrop Michael into the conversation; I know that evolution of public APIs is an extremely difficult task!
Agree that mock.assert_called_with(...) is more appropriate if you only care about the last call. In practice we generally always compare(mock.call_args_list, expected=[call(...), ...] to capture all calls (in particular, any extra calls that you weren't expecting).

I'd suggest compare(mock.mock_calls, expected=[call(...), ...] as a more paranoid approach.
Also doesn't tickle the bug in this issue ;-)


Folderdiff Filter

The Syntax provided for the Filter is not working as expected.(.cs;!objd;!obj;!bin), please provide the proper syntax to filter the particular extension from only selected folder

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

ID: 91277ad3-c7f1-2970-586d-a7268874c413
Version Independent ID: 421be179-93fe-6c53-0807-f0cbc5405c39
Content: Folder comparison filters
Content Source: docs/tfvc/folder-comparison-filters.md
Service: unspecified
GitHub Login: @douge
Microsoft Alias: sdanie

@anandpeculiar2017 It looks like there are some formatting issues in that article that happened when we migrated from visualstudio.com over to docs.microsoft.com - the filter that you list in your example should be: *.cs;!objd\;!obj\;!bin\ - it looks like the * character and some of the \ characters were being treated as markdown syntax by our doc build system. I've created a work item to get this fix up and sweep the remainder of these docs to make sure there aren't other instances, I think it is mostly limited to command related documents but I'm going to check then all out. This doc should be fixed by today.

@anandpeculiar2017 I just merged in the fix for this (and similar issues on the folderdiff command page) and they should be live later today or tomorrow. Thanks again for letting us know about this issue.

The problem is, it is not excluding only the C# files but it is excluding all the files in objd, obj, or bin folders. but as per the description it should exclude only C# files from the Objd, Obj, or bin.


update terraform to 0.12

TODO:

[ ] convert the tf files with terraform 0.12upgrade
[ ] test it, should work fully.

This is outdated.


chore: added missing override annotation

Description
tiny pr for adding the missing override annotation.
Fixes #Issue Number
or
Fixes Issue URL

[!WARNING]
If no issue exists, please create an issue first, and check with the maintainers if the issue is valid.

Automation
/ok-to-test tags=""
:mag: Cypress test results

[!CAUTION]
If you modify the content in this section, you are likely to disrupt the CI result for your PR.

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[ ] No

this doesn't require any ci to run as only one annotation has been added.


SKIPPING OPTIONAL DEPENDENCY

Versions
<!--
Angular CLI: 1.5.5
Node: 6.11.0
OS: win32 x64
Angular: 5.0.5
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cdk: 5.0.0
@angular/cli: 1.5.5
@angular/material: 5.0.0
@angular-devkit/build-optimizer: 0.0.34
@angular-devkit/core: 0.0.22
@angular-devkit/schematics: 0.0.38
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.5
@schematics/angular: 0.1.8
typescript: 2.4.2
webpack: 3.8.1
-->

npm install --save jquery
and i get this message
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS><1.7 but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS><1.7 but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS><1.7 but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS><1.7 but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

<EMAIL_ADDRESS>updated 1 package in 175.013s

im trying update my npm with 'npm install npm -g'  command and nothing happen
still get that message
any suggestion ??

On Windows, fsevents is optional and will not be installed by NPM. This is perfectly normal and should not affect the CLI. Everything should work normally.
Please note that we don't depend directly on fsevents, but webpack-dev-server does.


Ability to dynamically create tests like phpunit data providers

Enhancement description
Tests should be able to be generated dynamically, like this:
/**
     * @return iterable<string, Rule>
     */
    public function test_domain_independence(): iterable
    {
        foreach(self::DOMAINS as $domain) {
            yield $domain => PHPat::rule()
                ->classes(Selector::inNamespace($domain))
                ->canOnlyDependOn()
                ->classes(Selector::inNamespace($domain));
        }
    }

Suggested approach or solution
The TestParser class must be able to handle iterable return types.

Released with https://github.com/carlosas/phpat/releases/tag/0.10.17
Thanks a lot for the contribution! :rocket:


Hello-React-Frontend: Frontend setup

In this milestone I Implemented the following

Create a new React app called 'hello-react-front-end'
Initialize your project with Git.
Create the App component with react-router.
Create the Greeting component that will display a greeting. Set it up as a route in your App component.
Create a store, an action and a reducer that will connect to you API endpont to get the random greeting.
Display the random greeting in your Greeting component.
In the README file for the Rails API, add a link to your React app.
Also, in the README file for the React app, add a link to your Rails API.
When submitting for a review - use a link to the pull request in your Rails API.
In the repo for the frontend part - include a PR with changes.

Thanks for the review and the approval @AmaduKamara 👍


docs: update docs information for pyspark, correlation matrix and json structure

Codecov Report
Patch and project coverage have no change.

Comparison is base (863bd08) 89.91% compared to head (afe0ace) 89.91%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #1354   +/-   ##
========================================
  Coverage    89.91%   89.91%
========================================
  Files          191      191
  Lines         6110     6110
========================================
  Hits          5494     5494
  Misses         616      616

Flag
Coverage Δ

py3.8-ubuntu-22.04-pandas
89.91% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

در تاریخ شنبه ۳ ژوئن ۲۰۲۳، ۶:۵۹ Codecov Comments Bot <
@.***> نوشت:

Codecov
https://app.codecov.io/gh/ydataai/ydata-profiling/pull/1354?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
Report
Patch and project coverage have no change.
Comparison is base (863bd08)
https://app.codecov.io/gh/ydataai/ydata-profiling/commit/863bd08aedf5d33f2615a0baaf5176481345739d?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
89.91% compared to head (afe0ace)
https://app.codecov.io/gh/ydataai/ydata-profiling/pull/1354?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
89.91%.
❗ Your organization is not using the GitHub App Integration. As a result
you may experience degraded service beginning May 15th. Please install
the Github App Integration https://github.com/apps/codecov for your
organization. Read more
https://about.codecov.io/blog/codecov-is-updating-its-github-integration/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
.
Additional details and impacted files
@@           Coverage Diff            @@##           develop    #1354   +/-   ##
Coverage    89.91%   89.91%
Files          191      191
Lines         6110     6110
Hits          5494     5494
Misses         616      616
Flag Coverage Δ
py3.8-ubuntu-22.04-pandas 89.91% <ø> (ø)
Flags with carried forward coverage won't be shown. Click here
https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#carryforward-flags-in-the-pull-request-comment
to find out more.
☔ View full report in Codecov by Sentry
https://app.codecov.io/gh/ydataai/ydata-profiling/pull/1354?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
.
📢 Do you have feedback about the report comment? Let us know in this
issue
https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None
.
—
Reply to this email directly, view it on GitHub
https://github.com/ydataai/ydata-profiling/pull/1354#issuecomment-1574606089,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AZUKPUR7YQF6HQWVXALOIKLXJKVRLANCNFSM6AAAAAAYY75PBY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Fullscreen.js (Deutsch+Turkish) Translation

Includes some corrections for Deutsch, thanks to  @SIMULATAN.

Sorry for creating problem, with added languages extension doesnt inject to spicetify.

It's working fine on my end, what error are you facing?
Also, this is temporary I am currently in the middle of rewriting the entire extension using spicetify-creator which will allow for code splitting into different files so each language will have a separate file, for eg, en-US.json, de-DE.json etc.,
I'll also make a Crowdin project to make contributions to translations easier.

I can't see buttons related to FullScreen also keyboard shortcuts doesnt work.
I am on

Replace the file from there with the file from this repo, then run spicetify -e update.
Also try via marketplace?

Marketplace didn't solved either. I think something mismatches somepoint, because i'm on older version. Gotta try newer versions on freetime. Thanks.

Re-installing everything solved, thanks for help.


[Feature] lake table tablets support multiple replicas

Signed-off-by: Kevin Xiaohua Cai<EMAIL_ADDRESS>What type of PR is this：

[ ] BugFix
[X] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[ ] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

[FE PR Coverage Check]
:disappointed: fail : 4 / 6 (66.67%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/lake/LakeTable.java
0
1
00.00%
[176]

:large_blue_circle:
com/starrocks/alter/LakeTableAlterJobV2Builder.java
2
3
66.67%
[102]

:large_blue_circle:
com/starrocks/server/LocalMetastore.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/lake/StarOSAgent.java
1
1
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 5 / 6 (83.33%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/lake/LakeTable.java
0
1
00.00%
[176]

:large_blue_circle:
com/starrocks/alter/LakeTableAlterJobV2Builder.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/server/LocalMetastore.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/lake/StarOSAgent.java
1
1
100.00%
[]

run starrocks_admit_test

run starrocks_fe_unittest

code rebased.

[FE PR Coverage Check]
:heart_eyes: pass : 5 / 6 (83.33%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/lake/LakeTable.java
0
1
00.00%
[176]

:large_blue_circle:
com/starrocks/alter/LakeTableAlterJobV2Builder.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/server/LocalMetastore.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/lake/StarOSAgent.java
1
1
100.00%
[]

run starrocks_admit_test


Captured TIE missing

It wasn't appearing in the mod lists for the rebel TIE. Added the 'ship' tag.

Thanks!


HI!  with esp8266  in linux mint and windows to have this issues, any recomendation ? tks!

home/ricardo/Arduino/libraries/esp_arduino_sqlite3_lib-master/src/sdfat_fns.cpp:51:5: error: 'File' was not declared in this scope; did you mean 'SdFile'?
51 |     File file = sdFats[sd_idx]->open(name + 5, imode);

Hi, have you installed the dependent SDFat library? https://github.com/siara-cc/esp_arduino_sqlite3_lib#dependencies--pre-requisites

I ran into the same problem with the latest SdFat version (2.2.2) but was able to successfully compile with version 2.0.1.
All SdFat versions after 2.0.1 do not work with this library


Can't access data variables in a forEach loop

Version
2.6.11
Reproduction link
https://jsfiddle.net/ndz8xraq/1/
Steps to reproduce
Make a data field as follows
data() {
    return {
        names: [ ]
    }
}

Here's a method with what kind of logic I am trying to implement.
method() {
    getProfiles: function() {
        profiles = queryData
        profiles.forEach(profile => {
            this.names.push(profile.name)
        });
    }
} ,
created() {
    this.getProfiles()
}

What is expected?
What is expected is that for each profile in the profiles list queries from a database, the profiles name should be pushed to the array of names.
What is actually happening?
However, when writing this code, you would get names is not defined, even though it is defined in data(). 'this.names` value would not change and be set to or pushed to by the forEach loop.

To sum up, I cannot find a way to set variables outside of the forEach loop to a value inside the forEach loop. I even tried using local variables and setting the names variable to the local var, but to no avail. On a side note, I basically do the query and have a '.then()' in which I use the forEach in. I would appreciate any help I can get. Please let me know and have a good day!

You're reproduction is full of errors
https://jsfiddle.net/y7u4gt5a/

Hi, thanks for your interest but Github issues are for bug reports and feature requests only. You can ask questions on the forum, the Discord server, gitter or StackOverflow.


feat: Add Barcodes struct for representing barcodes on a pass

Title
Add Barcodes Struct for Representing Pass Barcodes with Validation and JSON Support
Type of Change

[x] New feature

Description
This pull request introduces the Barcodes struct to represent barcodes on a pass. The struct includes an optional alt_text field to display human-readable text alongside the barcode. Input validation ensures that alt_text is either nil or a valid string. Additionally, a custom JSON encoder has been implemented to handle the struct's serialization.
Test cases have been added to verify the correct functionality of the struct, including creating instances with and without alt_text, ensuring correct JSON encoding, and validating the input type for alt_text.
Testing
The following tests have been added:

Validation of alt_text as an optional string.
Proper JSON encoding of the struct, ensuring empty fields are excluded.
Input edge cases, such as invalid types for alt_text, raise appropriate errors.

Impact
This change introduces a new struct without affecting existing functionality. The primary impact is the added capability to handle barcode data in the system, which may require integration with other parts of the codebase where barcodes are relevant.
Additional Information
This change follows the modular design philosophy of the project, isolating barcode handling into a dedicated struct with clear validation and serialization rules.

closes: #56


#1820 Workbench icon reordered for extended connections

Description
Workbench icon reordered for extended connections.
Related Issue : #1820

How Has This Been Tested?

create workbench with extended connection
check icon

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code follows the code style of this project. it will be added soon
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document. it will be added soon
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Additional Context

run build
deploy to 2

@eltriny

The icon has not changed in the workbench.

No third icon applied

@ufoscw 작업된게 잘못 올라갔네요. 다시 커밋했습니다.

run build
deploy to 2

@metatron-app/design
이미지 검수 요청드립니다.


IndexMap not supported with serde_seq

Would you accept a PR that adds serde_seq_set or similar to support IndexSet?
(could just use the same serialization as IndexMap<T, ()> behind the scenes to make this seamless)

Sets are already serialized as a plain sequence.

Closing, but feel free to reopen if I misunderstood you...