spring-cloud-bindings download returning 404 when running spring buildpack

I have been getting a 404 this morning when attempting to build my docker container using the Spring Boot Build Pack with the information below.  I had a build running last night that successfully resolved the jar, so my guess something must have happened last night to the repo.  Please let me know if more information is required to hunt this down, Thanks!
     [creator]     Paketo Spring Boot Buildpack 5.13.0
    [creator]       https://github.com/paketo-buildpacks/spring-boot
    [creator]       Build Configuration:
    [creator]         $BP_SPRING_CLOUD_BINDINGS_DISABLED   false  whether to contribute Spring Boot cloud bindings support
    [creator]       Launch Configuration:
    [creator]         $BPL_SPRING_CLOUD_BINDINGS_DISABLED  false  whether to auto-configure Spring Boot environment properties from bindings
    [creator]         $BPL_SPRING_CLOUD_BINDINGS_ENABLED   true   Deprecated - whether to auto-configure Spring Boot environment properties from bindings
    [creator]       Creating slices from layers index
    [creator]         dependencies (63.9 MB)
    [creator]         spring-boot-loader (281.8 KB)
    [creator]         snapshot-dependencies (0.0 B)
    [creator]         application (217.2 KB)
    [creator]       Launch Helper: Contributing to layer
    [creator]         Creating /layers/paketo-buildpacks_spring-boot/helper/exec.d/spring-cloud-bindings
    [creator]       Spring Cloud Bindings 1.10.0: Contributing to layer
    [creator]         Downloading from https://repo.spring.io/release/org/springframework/cloud/spring-cloud-bindings/1.10.0/spring-cloud-bindings-1.10.0.jar
    [creator]     unable to invoke layer creator
    [creator]     unable to contribute spring-cloud-bindings layer
    [creator]     unable to get dependency spring-cloud-bindings
    [creator]     unable to download https://repo.spring.io/release/org/springframework/cloud/spring-cloud-bindings/1.10.0/spring-cloud-bindings-1.10.0.jar
    [creator]     could not download https://repo.spring.io/release/org/springframework/cloud/spring-cloud-bindings/1.10.0/spring-cloud-bindings-1.10.0.jar: 404
    [creator]     ERROR: failed to build: exit status 1

Expected Behavior
Spring cloud binding should not return a 404
Current Behavior
It appears that the buildpack cant find the bindings jar
Steps to Reproduce

Run ./gradlew bootBuildImage on a spring boot project
Observe failure when trying to resolve the spring-cloud-bindings jar

me too

Same problems, it seems to be 2 hours old bugs; Last successfully build was 2 hours ago

Please standby. I'm seeing reports of a problem with Artifactory/repo.spring.io. I will update this thread when I have more info.

有什么临时解决办法吗？

The other option is to use a dependency mapping.

How exactly does one do that when using ./gradlew bootBuildImage?

It works for me when I test it:
Paketo Spring Boot Buildpack 5.11.0
  https://github.com/paketo-buildpacks/spring-boot
  Build Configuration:
    $BP_SPRING_CLOUD_BINDINGS_DISABLED   true   whether to contribute Spring Boot cloud bindings support
  Launch Configuration:
    $BPL_SPRING_CLOUD_BINDINGS_DISABLED  false  whether to auto-configure Spring Boot environment properties from bindings
    $BPL_SPRING_CLOUD_BINDINGS_ENABLED   true   Deprecated - whether to auto-configure Spring Boot environment properties from bindings
  Creating slices from layers index
    dependencies
    spring-boot-loader
    snapshot-dependencies
    application
  Web Application Type: Contributing to layer
    Reactive web application detected
    Writing env.launch/BPL_JVM_THREAD_COUNT.default
  4 application slices
  Image labels:
    org.opencontainers.image.title
    org.opencontainers.image.version
    org.springframework.boot.version

Do you see $BP_SPRING_CLOUD_BINDINGS_DISABLED   true in the Build Configuration section from your build logs? This should represent the value that it's reading. My guess is that it's not reading as true in your case. If that's not it, include your build logs and I can take a look.

Update on the problem. JFrog was doing a cert rotation and incorrectly redirected traffic to the wrong place. They are aware of the issue & we are awaiting a fix. Hopefully, it won't be long now. Thanks for everyone's patience.

this BP_SPRING_CLOUD_BINDINGS_DISABLED=true did not work

This addition to build.gradle worked for me:
tasks.named("bootBuildImage") {
	environment = ["BP_SPRING_CLOUD_BINDINGS_DISABLED" : "true"]
}

Ah, yes. Thanks @candrews. I should have been more specific. It needs to be set in the build environment, not locally. My fault.

@dmikusa-pivotal Will there be a post mortem?
Not asking to be a bad guy. Just curious to understand the background for what occurred for our own post mortem.

@dmikusa-pivotal Will there be a post mortem?

I'll share whatever info I have. The service behind repo.spring.io is a managed service from JFrog, so I only know what they share with us about the incident.

Looks like the issue has been resolved (for all who subscribed)

Also see https://github.com/spring-cloud/spring-cloud-bindings/issues/71 for getting spring-cloud-bindings to maven central rather than repo.spring.io for production usage

Yes, it should be resolved now, just got an update from the vendor & it's working for me.
@TomBeckett This is what I can share, and all I know honestly.
The Spring Infra team put in a request to renew the certificate on our instance, which includes a redeploy. This should be a non-event, however, while doing this the vendor did something which caused traffic to repo.spring.io to go to repo.pivotal.io. This had happened before & we explicitly put notes in the service request to the vendor to try to prevent this from happening, but despite reminding the vendor it still happened.
We've had an open issue to publish Spring Cloud Bindings to Maven Central, but given what has happened today, we'll bump up the priority on that. When done, we won't need to worry about this going forward.

The issue is back. I am getting 404 for the below link.
https://repo.spring.io/release/org/springframework/cloud/spring-cloud-bindings/1.10.0/spring-cloud-bindings-1.10.0.jar
Any permanent solution for this?

I got the same error.

Well temporarily, I disabled the 2 properties mentioned by @dmikusa-pivotal. Since I'm using maven, here's what I did.
<build>         <plugins>             <plugin>                 <groupId>org.springframework.boot</groupId>                 <artifactId>spring-boot-maven-plugin</artifactId>                 <configuration>                     <image>                         <env>                             <BP_SPRING_CLOUD_BINDINGS_DISABLED>true</BP_SPRING_CLOUD_BINDINGS_DISABLED>                             <BPL_SPRING_CLOUD_BINDINGS_DISABLED>true</BPL_SPRING_CLOUD_BINDINGS_DISABLED>                         </env>                         <name>${project.artifactId}:${project.version}</name>                     </image>                     <pullPolicy>IF_NOT_PRESENT</pullPolicy>                 </configuration>             </plugin>         </plugins>     </build>
Source

@kshkrao3's solution works for spring-boot 2.7.1 and maven builds.

Now working fine..

Hi, I am trying to disable spring cloud binding package as mentioned in above comments but still during build process, it is attempting to fetch the spring-cloud-bindings-1.8.1.jar file. My Spring boot version is 2.7.1 and  Spring boot maven plugin 2.7.1. Any help would be really appreciated.

org.springframework.boot
spring-boot-maven-plugin

<BP_SPRING_CLOUD_BINDINGS_DISABLED>true</BP_SPRING_CLOUD_BINDINGS_DISABLED>
<BPL_SPRING_CLOUD_BINDINGS_DISABLED>true</BPL_SPRING_CLOUD_BINDINGS_DISABLED>

ajdev/${project.artifactId}:${project.version}

IF_NOT_PRESENT

still error...

still error...


Make non-fullscreen apps possible

What I'm Looking For
I'm interested in drawing controls over the current terminal, instead of switching away to a completely different screen.
What I've Tried
I've tried just about everything I can think of, but I always end up with a terminal full of blue. I'm on Windows 10, .NET 4.7.1.

Creating a new Toplevel with a frame of 100x1 and using that with Application.Run
I thought maybe the Init() call was goofing me up, so I tried subclassing Toplevel and setting those values myself, then using that subclass with Application.Run<T> to use the Func<Toplevel> overload of Application.Init
A variety of Window or Toplevel instances that set the bounds smaller than the terminal extents

I didn't see anything in the docs or any Google results or any Stack Overflow tags. Am I just missing it? Or is this not supported? (If not, I can fill out an enhancement issue :grin:)
Thanks!

I had not considered that scenario, so some work will be required.
This would only work on Windows where it is possible to control part of the screen without touching the rest, on terminals, we do not really know what the screen contains when we draw, nor can we "save" the contents that we draw on.
So possible, but you will have to figure it out :-)

Thx for the reply. I had worried we'd need Win32 APIs and couldn't rely on VT sequences. Oh well. XD

Update: I have discovered that it is possible to read the contents of the terminal on some terminals.   What terminal are you interested in?
If this were to work, we could create a "screenshot" view that would be initialized with data before the application starts to run.   Perhaps an Application.Init (screenshot: true), and then we could surface an Application.StartupView that contains the original view that happens to be the top-level where you add elements.   So it is technically going to repaint, but it will look like the original text.
This should work with some xterm-derivatives, not sure if this will work with other terminals like the ones used in VSCode, the Windows terminal and the Linux console.

On Windows, I used to run ConEmu exclusively until Windows Terminal came out. On Mac I run zsh under iTerm2. I'm not much of a Linux user.
This is a neat idea, and I'd love it if it were a cross-plat solution that everyone could get in on, but I'm not holding my breath. :sunglasses: Thanks for looking into it.

FWIW, I really want this to be an option for out-consolegridview. See the use case of using OCGV for displaying history. In that use-case it would be ideal if OCGV didn't take over the whole screen.
https://github.com/PowerShell/GraphicalTools/issues/96

Related to OCGV but would probably need to be implemented downstream, is if it took up half the view, and which half depended on where the current cursor position was. As long as gui.cs allowed a setting to choose "top half" or "lower half" then its probably possible.

Related to OCGV but would probably need to be implemented downstream, is if it took up half the view, and which half depended on where the current cursor position was. As long as gui.cs allowed a setting to choose "top half" or "lower half" then its probably possible.

Related to OCGV but would probably need to be implemented downstream, is if it took up half the view, and which half depended on where the current cursor position was. As long as gui.cs allowed a setting to choose "top half" or "lower half" then its probably possible.

Neat idea. So ocgv -PopupRight would cause only the right part of the screen, starting at the prompt cursor location to be occluded by ocgv? ocgv -PopupBelow would cause only space below the prompt cursor to be occluded? Etc.?

Related to OCGV but would probably need to be implemented downstream, is if it took up half the view, and which half depended on where the current cursor position was. As long as gui.cs allowed a setting to choose "top half" or "lower half" then its probably possible.

Neat idea. So ocgv -PopupRight would cause only the right part of the screen, starting at the prompt cursor location to be occluded by ocgv? ocgv -PopupBelow would cause only space below the prompt cursor to be occluded? Etc.?

@tig I would expect it to be more intelligent than that. ocgv would either only take over the top half or bottom half of the screen depending on if your prompt was at the top of the screen (e.g. new window) vs bottom (youv'e been doing stuff a while). Basically the goal would be to not overlay over your existing command so you can maintain visual context of what you're working on.

@tig I would expect it to be more intelligent than that. ocgv would either only take over the top half or bottom half of the screen depending on if your prompt was at the top of the screen (e.g. new window) vs bottom (youv'e been doing stuff a while). Basically the goal would be to not overlay over your existing command so you can maintain visual context of what you're working on.

This is a neat idea, and I'd love it if it were a cross-plat solution that everyone could get in on, but I'm not holding my breath. 😎

I think the changes I did in the NetDriver, starting using virtual sequences may be the best solution for cross-platform, but it need to be worked better yet.

This is a neat idea, and I'd love it if it were a cross-plat solution that everyone could get in on, but I'm not holding my breath. 😎

I think the changes I did in the NetDriver, starting using virtual sequences may be the best solution for cross-platform, but it need to be worked better yet.

Neat idea. So ocgv -PopupRight would cause only the right part of the screen, starting at the prompt cursor location to be occluded by ocgv? ocgv -PopupBelow would cause only space below the prompt cursor to be occluded? Etc.?

The recent changes I did in the ListView and TextView already manipulate the scrolling top/bottom and left/right. The ScrollBarView I had included is only for position indicator and notify fthe host for changes positions, but the scrolling redraw is up to host.

Neat idea. So ocgv -PopupRight would cause only the right part of the screen, starting at the prompt cursor location to be occluded by ocgv? ocgv -PopupBelow would cause only space below the prompt cursor to be occluded? Etc.?

The recent changes I did in the ListView and TextView already manipulate the scrolling top/bottom and left/right. The ScrollBarView I had included is only for position indicator and notify fthe host for changes positions, but the scrolling redraw is up to host.

What we could do is ensure that the Toplevel only takes over a part of the screen, and that it does not go beyond it - at least this should be possible on Windows.    To complete the story, we could retrieve the contents of the screen and store them while we run and restore them on exit.
This gave me the idea: instead of making the code work with a subset of the screen, we could have a "PreviousScreenshotView" that is a view that gets loaded with the original contents - this would allow for example to have views that can change size, windows popup and other things, without having to worry about not touching something in particular.
On shut down, this view could repaint the original contents.
This on Windows should be pretty easy.
For Unix, I never thought this could be possible, but then I remembered that in xterm and newer terminals there is a way of retrieving the contents of the terminal.   This is what various test-suites use to validate that terminals use.
While this would be limited to xterm-like terminals, I think Windows + xterm should cover pretty much anything out there.    The only Unix challenge would be to precisely map the previous screen attributes to ncurses attributes, but that is a minor problem.

What we could do is ensure that the Toplevel only takes over a part of the screen, and that it does not go beyond it - at least this should be possible on Windows.    To complete the story, we could retrieve the contents of the screen and store them while we run and restore them on exit.
This gave me the idea: instead of making the code work with a subset of the screen, we could have a "PreviousScreenshotView" that is a view that gets loaded with the original contents - this would allow for example to have views that can change size, windows popup and other things, without having to worry about not touching something in particular.
On shut down, this view could repaint the original contents.
This on Windows should be pretty easy.
For Unix, I never thought this could be possible, but then I remembered that in xterm and newer terminals there is a way of retrieving the contents of the terminal.   This is what various test-suites use to validate that terminals use.
While this would be limited to xterm-like terminals, I think Windows + xterm should cover pretty much anything out there.    The only Unix challenge would be to precisely map the previous screen attributes to ncurses attributes, but that is a minor problem.

// I've changed the title of this Issue to make it a feature request.

My PR #1331, with Mdi Container could be a solution for this. Setting Toplevel.IsMdiContainer as true we can create many Windows and Toplevels and navigate throught them.

I would love using a terminal roughly like that ...
$ cat log.log
A
B
C
D
E
$ dotnet run app-with-gui.cs
==================================================================
| What is your favourite color: _Purple__________                |
| What is your favourite pet:   _Dog_____________                |
| [Save] [Cancel]                                                |
==================================================================
$ wc Program.cs
234134

I tried Specte.Console as an alternative but that library is not supporting multi-widget re-rendering and is more focused on outputting information. I want to use one of the two libraries to built a console UI for a work item library.

I'll add my vote to this feature request. My primary use case would be a PowerShell session running in Windows Terminal.

After thinking about this for a few years, I think that the solution is simple.
We do need a "View" that is "OriginalView", and this can be used as the background view, upon which you would run everything else.   The OriginalView would be initialized on Windows using the Console API to retrieve the contents of the screen, and on Unix/Xterms/network connections you can use the escape sequences to read the screen contents (DECRQCRA sequence).
It might not be fast, so I recommend that this is an opt-in feature.
The reason that it might not be fast is because DECRQCRA is used to checksum the screen, it is not really an API to read the contents, so you need to scan the columns/rows one at a time to capture the contents.
https://vt100.net/docs/vt510-rm/DECRQCRA.html
DECRQCRA

I'd like to understand more about this approach. Why store the screen history? Is the goal to have the 'background' view render that content?
An alternative approach could be just to restrict the area being written to, which might simplify implementation.
We should identify use cases to better understand the requirements and complexity:

A static 'blocking' rectangular windowed app.
A draggable windowed app that renders underlying screen history (but is still blocking, meaning the user cannot continue using the terminal normally, i.e., task switching).
The ability to continue normal terminal use while a rectangular window renders a Terminal.Gui app.

These seem to be in order of increasing difficulty. I think the screen history bit is required for the second use case, and the third sounds quite challenging, if not impossible.
Are there other libraries that have this kind of feature we can investigate for ideas?

Some terminals disable that escape sequence for security reasons.
But if you are running code, there is very little you can do to stop the app from doing whatever they want, like they could just an external screenshot app for example.

Relevant. Mintty is leading the charge in many ways. See status line.
https://github.com/mintty/mintty/blob/master/wiki/CtrlSeqs.md

A view that displays the contents of the buffer is a good idea. However, this content does not differentiate between newlines whether it is a word wrap or whether it is actually a line break, because it does not store '\n' or '\r\n'. Therefore, when resizing the console, the formatting will be corrupted and it will never be possible to reformat correctly.

Some terminals disable that escape sequence for security reasons.
But if you are running code, there is very little you can do to stop the app from doing whatever they want, like they could just an external screenshot app for example.

Very very rarely, as even things like less, man, etc depend on it for their default operation (though they do support just dumping to the active terminal as well).

Correct. I thought that's what you were referring to. The alternate screen buffer switching is how pretty much every app that preserved the terminal state works. Standard part of the C stdlib.

It is not, because the feature request here is to draw something that appears to leave the original buffer untouched.
When you switch to the other screen, you do not have any of the old contents, so we would not get the desired effect.
To get the desired effect, we need to somehow get the contents of the screen, so we can render at will and draw at will there.
You could draw on top of the existing UI, but in a destructive way (so dragging, or showing/hiding) would permanently destroy the contents.

I tried something that get the contents but I'm struggling with non-bmp glyphs, color and resizing issues. But I'll try find any some workarounds to overcome them.

Oh oh oh.
Meaning overlay of the current environment, not switching and restoring. 🤦♂
Ok, I'm on the same page now.

Yeah grabbing the screen contents without already being the owner of the TTY is a no-no for clearly obvious reasons.
We'd need to basically host a terminal, effectively becoming a whole shell to do it cleanly I think. Feels out of scope, especially for v2.
That said, if a user wants that kind of behavior, they can host their own terminal in their terminal.gui app.

While there is such a tool (XtermSharp - a full terminal emulator, and one that had support for an earlier version of Terminal.Gui) that does not let us "read" the existing content - it would only work if we started a new session there.
That said, the feature could be added to Windows without any of the downsides.

None of you commented on my statusline idea above. Did you see it?

I did not quite understand how that would work.
That merely sets aside a region to not be changed (in rows), but my reading of the intent is to be able to layer an arbitrary set of views, and move those, while preserving the illusion of the background.

Perhaps we can tackle these possibilities seperately?
An isolated screen region that is fixed and runs a Terminal.Gui app is probably the easier of the two and still of value in many of these 'non fullscreen' use cases?

I think my comment resurrected this thread so I feel obligated to chime in. First off, I am not a developer. I have been using this to build things in a PowerShell session. You can think of me as a power user. The technical details you've been throwing around are way above my pay grade.
What I would love to have, is the ability to create a smaller TUI that doesn't take over the entire console. I'd like to be able to create a small entry form that is displayed over the contents of the current screen.  Like a popup. In a perfect world, it would be nice to specify a position in the terminal for the TUI. I wouldn't expect the user to have to reposition the TUI which sounds complicated to have to redraw the underlying terminal.
Where this gets (more) complicated is that I would need to support this in Windows, Linux and MacOS which means I have no idea what terminal might be running PowerShell.
To give you an idea, I can create this:

But it takes over the entire console.
If the consensus is that this is not practical, I'm OK. I figure it never hurts to ask the question.

This is precisely why I suggested StatusLine. It does not allow arbitrary popups but DOES address the intent of the OP.

An option that allow arbitrary popups where moving it will always showing the original contents is a better solution. As @migueldeicaza said using a View that holds the original content and refreshed when the popup moves is the better approach to achieve this. I tried with the TextView which allow wrap and custom rune cell color and it almost work. The problem was colors that isn't respecting the original content, some glyphs not rendered well and on console resizing it isn't possible distinguish between new lines and word wrap. I only started this on WindowsDriver but at least is something.

An option that allow arbitrary popups where moving it will always showing the original contents is a better solution.

I think it is worth trying both because as you say, its a tough task to 'deal with any arbitrary content that might be in console on load' in a cross platform way and also handling environmental factors such as SSH, PuTTy etc.
Running in fixed isolated area should be way easier and more robust.
It can even have the same API interface so application end user can switch between the two depending on runtime environment? e.g. with UserSettings

It can even have the same API interface so application end user can switch between the two depending on runtime environment? e.g. with UserSettings

On Unix systems it's possible to switch between apps by pressing Ctrl-Z and typing fg to return to the previous app.

I have a feeling this issue might be out of scope for a project like this. the whole point of terminal.gui is to make TUIs no? especially if theres already a well working solution for non TUI console apps https://github.com/spectreconsole/spectre.console it feels like trying to do both in one app makes less sense and also makes it insanely difficult to develop from that point on. Please call me out if im missing something tho

I guess it depends on your definition of TUI.
My opinion is TUI means Terminal User Interface, which literally means "any user interface that runs in a terminal."

Clipping screen out area should be relatively easy after #3837
The I/O layer just needs to 'lie' to the rest of the world about the size of the terminal.


Step 1: ERROR 1045 (28000): Access denied for user 'users_service'@'localhost'

I did git clone.
I did git checkout step1.
I did ./start.sh.
The following was displayed.
Starting DB...
2cc0806676b0b73021429f7c57b6186f2437bc9203048729208d95b9efa7705c
Waiting for DB to start up...
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Got error: Access denied for user 'users_service'@'localhost' (using password: YES)
Setting up initial data...
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'users_service'@'localhost' (using password: YES)

Hey, to fix this I added a
sleep 5
Between each docker command.
Unfortunately I don't know why this works. It seems that it runs each docker command before the previous command has completely setup.

I did the above and not only am I getting an access denied error, I'm also getting the following
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Here is what my start.sh file looks like
`#!/bin/sh
Run the MySQLl container with the database 'test'
Along with a services user, 'admin', that can access it
echo 'Starting DB...'
docker run --name db -d
-e MYSQL_ROOT_PASSWORD=123
-e MYSQL_DATABASE=users -e MYSQL_USER=users_service -e MYSQL_PASSWORD=123
-p 3306:3306
mysql:latest
wait 10 seconds
sleep 5
Wait for database service to start
echo 'Waiting for database to start'
docker exec db mysqladmin --silent --wait=30 -uusers_service -p123 ping || exit 1
sleep 5
Run setup script
echo 'Loading initial data...'
docker exec -i db mysql -uusers_service -p123 test < setup.sql
`

I did the above and not only am I getting an access denied error, I'm also getting the following
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Here is what my start.sh file looks like
`#!/bin/sh
Run the MySQLl container with the database 'test'
Along with a services user, 'admin', that can access it
echo 'Starting DB...'
docker run --name db -d
-e MYSQL_ROOT_PASSWORD=123
-e MYSQL_DATABASE=users -e MYSQL_USER=users_service -e MYSQL_PASSWORD=123
-p 3306:3306
mysql:latest
wait 10 seconds
sleep 5
Wait for database service to start
echo 'Waiting for database to start'
docker exec db mysqladmin --silent --wait=30 -uusers_service -p123 ping || exit 1
sleep 5
Run setup script
echo 'Loading initial data...'
docker exec -i db mysql -uusers_service -p123 test < setup.sql
`

Thank you !

Has anyone figured this out?


[Feature][plugin-spark-sink-clickhouse] always select replica that "replica_num = 1" when insert data into table,even it is down

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
导入数据到clickhouse内多副本表时，总会选择副本编号为1的副本节点，即使节点挂掉而其他副本还可用，是否可以修改为随机选择
以下为修改建议：
val sql =
  s"SELECT cluster,shard_num,shard_weight,groupArray(1)(host_address)[1] " +
  s"AS host_address from (SELECT  cluster, shard_num, shard_weight, host_address " +
  s"FROM system.clusters WHERE cluster = '$cluster' ORDER BY rand()) GROUP BY cluster,shard_num,shard_weight"

SeaTunnel Version
1.5.5
SeaTunnel Config
no

Running Command
bin/start-waterdrop.sh --master yarn --deploy-mode cluster --config config/hive_to_clickhouse.conf

Error Exception
连接节点失败

Flink or Spark Version
2.4.7
Java or Scala Version
1.8
Screenshots

Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

导入数据到clickhouse内多副本表时，总会选择副本编号为1的副本节点，即使节点挂掉而其他副本还可用，是否可以修改为随机选择

Nice idea! you can try to improve it by yourself.

i want to fix this bug, can assign to me ?


Reason of using text_encoder1's layer11 hidden_states

Is there any reasoning behind choosing layer 11's hidden_states for text_encoder1 in the current implementation?
Other implementations, such as those in diffusers, and SimpleTuner, opt for the penultimate layer instead. So, is there any advantages/considerations that led to the use of layer 11's instead of the penultimate layer or maybe even the last layer?

Ahh, I forgot which text encoder is which. I got the text encoders flipped, in my mind, I thought that text_encoder1 is the text encoder from open_clip and text_encoder2 is from OpenAI. That makes much more sense, thank you!


make error with libtorch 1.1.0 cuda_10,(Ubuntu 7.4.0-1ubuntu1~16.04~ppa1) 7.4.0

In file included from /home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp:2:0:
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/../../../include/rcnn/layers/conv2d.h:12:68: error: expected class-name before ‘{’ token
struct _NewEmptyTensorOpBackward : public torch::autograd::Function{
^
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/../../../include/rcnn/layers/conv2d.h:14:34: error: ‘torch::autograd::variable_list rcnn::layers::_NewEmptyTensorOpBackward::apply(torch::autograd::variable_list&&)’ marked ‘override’, but does not override
torch::autograd::variable_list apply(torch::autograd::variable_list&& grads) override;
^~~~~
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp: In member function ‘torch::autograd::variable_list rcnn::layers::_NewEmptyTensorOpBackward::apply(torch::autograd::variable_list&&)’:
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp:16:9: error: ‘should_compute_output’ was not declared in this scope
if (should_compute_output(0)) {
^~~~~~~~~~~~~~~~~~~~~
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp: In function ‘at::Tensor rcnn::layers::_NewEmptyTensorOp(at::Tensor, c10::IntArrayRef)’:
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp:55:113: error: ‘deleteFunction’ is not a member of ‘torch::autograd’
auto grad_fn = std::shared_ptr<_NewEmptyTensorOpBackward>(new _NewEmptyTensorOpBackward(), torch::autograd::deleteFunction);
^~~~~~~~~~~~~~
/home2/maskrcnn_benchmark.cpp/source/rcnn/layers/conv2d.cpp:55:113: note: suggested alternative: ‘TraceableFunction’
auto grad_fn = std::shared_ptr<_NewEmptyTensorOpBackward>(new _NewEmptyTensorOpBackward(), torch::autograd::deleteFunction);
^~~~~~~~~~~~~~
TraceableFunction
source/rcnn/layers/CMakeFiles/layers.dir/build.make:75: recipe for target 'source/rcnn/layers/CMakeFiles/layers.dir/conv2d.cpp.o' failed
make[2]: *** [source/rcnn/layers/CMakeFiles/layers.dir/conv2d.cpp.o] Error 1
CMakeFiles/Makefile2:342: recipe for target 'source/rcnn/layers/CMakeFiles/layers.dir/all' failed
make[1]: *** [source/rcnn/layers/CMakeFiles/layers.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

your make cannot find Function struct, should_compute_output method in function struct.
Those must be in libtorch/include/torch/csrc/autograd/function.h.
Could you check it?

It has should_compute_output method, but it seems that it is not in Function struct.
Please check the attached function.h
Thanks!
Jack
#pragma once
#include <torch/csrc/autograd/edge.h>
#include <torch/csrc/autograd/grad_mode.h>
#include <torch/csrc/autograd/anomaly_mode.h>
#include <torch/csrc/autograd/profiler.h>
#include <torch/csrc/autograd/saved_variable.h>
#include <torch/csrc/autograd/input_metadata.h>
#include <torch/csrc/autograd/variable.h>
#include <torch/csrc/utils/python_stub.h>
#include <torch/csrc/utils/variadic.h>
#include <ATen/ATen.h>
#include <c10/util/Exception.h>
#include
#include
#include <initializer_list>
#include
#include
#include
#include
namespace torch { namespace autograd {
struct Edge;
struct FunctionPostHook;
struct FunctionPreHook;
using tensor_list = std::vectorat::Tensor;
using variable_list = std::vector;
using edge_list = std::vector;
using saved_variable_list = std::vector;
using IndexRange = std::pair<size_t, size_t>;
// Custom deleter to prevent stack overflows.
TORCH_API void deleteNode(Node* function);
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
///                               Node
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// A Node is an abstract class that represents an operation taking zero
/// or more input Variables and producing zero or more output Variables. All
/// functions in PyTorch's autograd machinery derive from this class and
/// override its apply method. Instances of such subclasses will then be
/// invokeable via the call operator.
///
///                    Nodes in the Autograd Graph
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// When viewing the autograd system as a graph, Nodes are the vertices or
/// nodes, connected to each other via (directed) Edges, which themselves are
/// represented via (Node, input_nr) pairs. Variables are the outputs to
/// and inputs of Nodes, and travel between these edges during execution
/// of the graph. When two or more Edges (from different sources) point at the
/// same input to a Node, the values produced along all of these edges are
/// implicitly summed prior to being forwarded to the target Node.
///
///                              Hierarchy
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// Subclasses usually represent differentiable functions as well as their
/// gradient operators. Note, however, that due to the very general definition
/// of a Node taking zero or more inputs and producing zero or more
/// outputs, uses of Nodes are flexible and extend beyond purely
/// mathematical operations. For example, the AccumulateGrad function is a
/// sink: it takes one input, but produces no outputs, instead accumulating
/// the input as a side effect. At the other extreme, the GraphRoot function
/// receives no inputs from other functions, but produces multiple outputs.
///
///                              Interface
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// The most important method on Node is the call operator, which takes in
/// a list of variables and produces a list of variables. The precise size of
/// these lists can be determined with num_inputs() and num_outputs().
/// Nodes are stitched together via their next_edge interface, which let
/// you manipulate the set of outgoing edges of a Node. You can add an
/// edge with add_next_edge(), retrieve an edge with next_edge(index) and
/// iterate over them via the next_edges() method. Other methods exist for
/// integration with the JIT and other parts of PyTorch. Every Node has a
/// sequence number that increases monotonically in the order of Node
/// construction. It can be retrieved via the sequence_nr() method. Note that
/// this sequence number is thread local. This means that when Nodes
/// A, B and C are created consecutively in the same thread, their
/// sequence numbers will be ordered A < B < C. If, however, A and B
/// are created in one thread and C is created in a new thread, there are no
/// guarantees w.r.t. the ordering of C relative to A or B.
///~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
struct TORCH_API Node : std::enable_shared_from_this {
public:
/// Construct a new Node with the given next_edges. sequence_nr is
/// a (currently THE) hint to prioritization in the backward() pass, with
/// higher sequence numbers prioritized before lower sequence numbers.
explicit Node(
uint64_t sequence_nr,
edge_list&& next_edges = edge_list())
: sequence_nr_(sequence_nr),
next_edges_(std::move(next_edges)) {
if (AnomalyMode::is_enabled()) {
metadata()->store_stack();
}
}
explicit Node(edge_list&& next_edges = edge_list())
: Node(get_next_sequence_nr()++, std::move(next_edges)) {}
/// Nodes are neither copyable nor moveable.
Node(const Node& other) = delete;
Node(Node&& other) = delete;
Node& operator=(const Node& other) = delete;
Node& operator=(Node&& other) = delete;
virtual ~Node() = default;
/// Evaluates the function on the given inputs and returns the result of the
/// function call.
variable_list operator()(variable_list&& inputs) {
RECORD_FUNCTION(
this, std::vectorc10::IValue(inputs.begin(), inputs.end()));
return apply(std::move(inputs));

}
// Graph Connectivity API
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Inputs. NOTE: inputs of the grad_fn correspond to Tensor outputs of the
// forward function.
// Marker for expected undefined input
struct undefined_input {};
/// Adds the type and shape metadata for a new input. Returns the index of
/// of the new input.
uint32_t add_input_metadata(
const at::DeprecatedTypeProperties& type
, at::IntArrayRef shape
, at::Device device) noexcept {
uint32_t input_nr = input_metadata_.size();
input_metadata_.emplace_back(type, shape, device);
return input_nr;
}
uint32_t add_input_metadata(const at::Tensor& t) noexcept {
uint32_t input_nr = input_metadata_.size();
input_metadata_.emplace_back(t);
return input_nr;
}
/// Adds a placeholder for an input that will not be used.
uint32_t add_input_metadata(undefined_input u) noexcept {
uint32_t input_nr = input_metadata_.size();
input_metadata_.emplace_back();
return input_nr;
}
uint32_t num_inputs() const noexcept {
return input_metadata_.size();
}
const InputMetadata& input_metadata(size_t index) const {
return input_metadata_[index];
}
void clear_input_metadata() {
input_metadata_.clear();
}
// Outputs ("Next Edges")
const Edge& next_edge(size_t index) const noexcept {
return next_edges_[index];
}
void set_next_edge(size_t index, Edge edge) {
next_edges_[index] = std::move(edge);
}
void add_next_edge(Edge edge) {
next_edges_.push_back(std::move(edge));
}
void set_next_edges(edge_list&& next_edges) {
next_edges_ = std::move(next_edges);
}
const edge_list& next_edges() const noexcept {
return next_edges_;
}
edge_list& next_edges() noexcept {
return next_edges_;
}
uint32_t num_outputs() const noexcept {
return next_edges_.size();
}
// Miscellaneous Methods
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// The sequence number of this Node.
uint64_t sequence_nr() const noexcept {
return sequence_nr_;
}
/// Returns the name of the dynamic type of the function, for debugging.
virtual std::string name() const;
/// Returns true if the particular output edge is active, and that particular
/// output of this function should be computed.
bool should_compute_output(size_t output_edge_index) const {
TORCH_CHECK(output_edge_index < num_outputs(), "Index out of range");
return next_edges_[output_edge_index].is_valid();
}
/// Returns true if any of the output edges in any of the ranges are active.
bool should_compute_output(std::initializer_list idxs) const {
return std::any_of(idxs.begin(), idxs.end(), [this](IndexRange range) {
for (auto i = range.first; i < range.second; i++) {
if (should_compute_output(i))
return true;
}
return false;
});
}
/// Returns the PyObject stored for this Node (for Python
/// interaction).
PyObject* pyobj() const noexcept {
return pyobj_;
}
/// Sets the PyObject stored for this Node (for Python interaction).
void set_pyobj(PyObject* pyobj) noexcept {
pyobj_ = pyobj;
}
/// Returns the anomaly metadata stored for this Node.
/// If none exist, creates a new empty one.
AnomalyMetadata* metadata() noexcept;
// Hook API
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uintptr_t add_post_hook(std::unique_ptr&& post_hook) {
post_hooks_.push_back(std::move(post_hook));
// Use the raw pointer as the unique key to identify this hook. This key
// can then be used in del_post_hook(key) to remove this hook.
return reinterpret_caststd::uintptr_t(post_hooks_.back().get());
}
const std::vector<std::unique_ptr>& post_hooks() const
noexcept {
return post_hooks_;
}
// delete a post hook matching the key
bool del_post_hook(const uintptr_t& key) {
for (auto it = post_hooks_.begin(); it != post_hooks_.end(); ++it) {
if (key == reinterpret_caststd::uintptr_t(it->get())) {
post_hooks_.erase(it);
return true;
}
}
return false;
}
std::vector<std::unique_ptr>& post_hooks() noexcept {
return post_hooks_;
}
void add_pre_hook(std::unique_ptr&& pre_hook) {
pre_hooks_.push_back(std::move(pre_hook));
}
const std::vector<std::unique_ptr>& pre_hooks() const
noexcept {
return pre_hooks_;
}
std::vector<std::unique_ptr>& pre_hooks() noexcept {
return pre_hooks_;
}
// Customization Points for Subclasses
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/// Releases saved variables if the operation won't be reused.
virtual void release_variables() {}
/// Called before an apply if release_variables() is going to be called.
/// Allows larger ops like InterpreterAutogradFunction to incrementally
/// release variables as they run.
virtual void will_release_variables() {}
/// Returns true if this function is traceable. An op is traceable if all
/// operations happening within apply() are performed on autograd
/// Variables (i.e. apply mostly instantiates and applies other functions).
virtual bool is_traceable() {
return false;
}
/// A Node is said to pass state transparently to backward, if the
/// state consists only of (Saved)Variables and only non-variable objects
/// that parameterize the operation in some way that defines the graph
/// structure AND the backward function is traceable. In particular,
/// parametrization MUST NOT depend on the data of any Variable.
/// TODO: it might be possible to handle cases where backward is
/// non-traceable but state passing could be considered transparent. This
/// will probably depend on saved_variable_list being mutable.
/// NOTE: this value matters only if is_traceable() returns false.
virtual bool passes_state_transparently() {
return false;
}
static uint64_t peek_at_next_sequence_nr();
protected:
static uint64_t& get_next_sequence_nr();
/// Performs the Node's actual operation.
virtual variable_list apply(variable_list&& inputs) = 0;
/// Calls apply(), but instruments it with tracing machinery.
variable_list traced_apply(variable_list inputs);
// Since Nodes are neither copyable nor moveable, we can have const
// fields.
const uint64_t sequence_nr_;
edge_list next_edges_;
PyObject* pyobj_ = nullptr; // weak reference
std::unique_ptr anomaly_metadata_ = nullptr;
std::vector<std::unique_ptr> pre_hooks_;
std::vector<std::unique_ptr> post_hooks_;
at::SmallVector<InputMetadata, 2> input_metadata_;
};
/// See Node::is_traceable() for definition.
struct TraceableFunction : public Node {
using Node::Node;
bool is_traceable() final {
return true;
}
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//                       Associated Free Nodes
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
namespace detail {
// Implementation of collect_next_edges (see below).
struct MakeNextFunctionList : IterArgs {
edge_list next_edges;
using IterArgs::operator();
void operator()(const Variable& variable) {
if (variable.defined()) {
next_edges.push_back(variable.gradient_edge());
} else {
next_edges.emplace_back();
}
}
};
} // namespace detail
/// Create an Edge between the given variable and the function, which is
/// assumed to be the gradient function of this variable (i.e. the function
/// through which this variable is backpropagated during the backward pass).
/// This sets the grad_fn property of the variable. This function assumes
/// that the Variable is a new input to the gradient function and its
/// input_nr thus equal to function->num_inputs(). Additionally, it
/// increments the Node's number of inputs by one. Approximately
/// equivalent to variable.set_gradient_edge(function, /// function->add_input_metadata(variable.dispatch_type(), variable.sizes())).
/// If you don't want the Node's num_inputs to be incremented, use
/// set_gradient_edge directly.
inline void create_gradient_edge(
Variable& variable,
std::shared_ptr function) {
// Copy before move.
const auto input_nr = function->add_input_metadata(variable);
variable.set_gradient_edge({std::move(function), input_nr});
}
/// Return true if any of the variables in the list require a gradient.
inline bool any_variable_requires_grad(const variable_list& variables) {
return std::any_of(
variables.begin(), variables.end(), [](const Variable& variable) {
return variable.defined() && variable.requires_grad();
});
}
/// Return the next edges of all the given variables, or tuples of variables.
template <typename... Variables>
edge_list collect_next_edges(Variables&&... variables) {
if (!GradMode::is_enabled())
return {};
detail::MakeNextFunctionList make;
make.apply(std::forward(variables)...);
return std::move(make.next_edges);
}
}} // namespace torch::autograd

I tried, but i couldn't reproduce your error sorry.

Could you tell me the exact version of gcc ,cuda, ubuntu, and libtorch?
I want to follow your system configuration.
Thanks a lot!

perhaps, did you compile opencv and yaml-cpp with
-DCMAKE_CXX_FLAGS=-D_GLIBCXX_USE_CXX11_ABI=0
this options?

Thanks!  I did as yours constructions (-DCMAKE_CXX_FLAGS=-D_GLIBCXX_USE_CXX11_ABI=0), since it is important.
I will have a try again.

It is ok with libtorch 1.1 stable, but failed to make with libtorch nightly build.
Thanks a lot!
@lsrock1

@newforrestgump001 Oh, thank you for your helpful information! i will fix it!

@lsrock1 what is the schedule for training, do you have any plan, thank you a lot!

@newforrestgump001 I will optimize the cpp code and test training. I have a problem in gpu and time resource so, i takes time.

I got it, thank you for quick response!


Default rules for F#

Create a set of default rules for F# with similar coverage to C#.
Also add F# to officially supported list on the wiki

Might be worth looking at the approach that Scott Waschlin took with his sonarqube plugin implementation - its based on a set of c# rules as I understand it?

Thanks. I'll give that a look too. I think I will be able to modify most of our existing C# rules to cover F#.


Fixes #1: Create PowerShell installer script for Windows

It turns out that the existing .sh shell script is also a completely valid PowerShell script. This revision makes a copy of the script but with the .ps1 extension for Windows users.

👍 !


Make consensus tests work without UnsafeUnbounded

Right now the tests fail when this is not used, which means that they assume we can look ahead as far as we want.

@nfrisby What do you think is left to do before we can close this ticket?

PR #2066 will make this fundamentally possible. But what should be done for
eg HasHardForkHistory ByronBlock, which currently uses
neverForksHardForkSummary, which uses EraUnbounded?
On Mon, Jun 15, 2020 at 12:27 AM Thomas Winant<EMAIL_ADDRESS>wrote:

@nfrisby https://github.com/nfrisby What do you think is left to do
before we can close this ticket?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/input-output-hk/ouroboros-network/issues/2029#issuecomment-643953685,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIOBU7JGTABL53EPXSKA3DRWXEMJANCNFSM4MVMPK3Q
.

That's fine, that instance is only relevant when using Byron as a standalone ledger. This remark in the long comment for hardForkSummary is relevant:

Critically, the HFC implements 'hardForkSummary' directly and does not call 'hardForkSummary' in the underlying ledgers.


libshortfin CI and Releases

Bringing up libshortfin CI and releases
Overall Description
libshortfin is a C++ project providing serving oriented APIs atop the IREE runtime. It aims to supercede prior pure-Python systems that used IREE via its low-level synchronous API. From the get-go, libshortfin is:

Multi-device
Parallel (designed to scale in a single process)
Exposing a high level Python API that directly mirrors the C++ API
Async (integrating with both Python asyncio and C++ coroutines)

Internally, it consists of three primary components:

libshortfin C++ library (built as both a static and a dynamic library)
_shortfin native Python module
shortfin pure Python module (re-exports from the native module and adds
higher level Python-only features)

Note that we are transitioning to using the containing repository (currently called sharktank) as a monorepo for a variety of related model development and serving projects. As such, plan for some organization to the way that venvs/dev setup is done across the repo (and CI, etc).
Dependencies
Native deps
libshortfin currently depends purely on the IREE runtime C APIs. In the future, it will also expose an interface to the
IREE compiler C API via a delay loaded stub, allowing the compiler to be dynamically loaded (same as some other integrations). The compiler will remain an optional dep and pure-inference or deployed systems can leave it off so long as whatever is built on libshortfin does not need it (i.e. if pipelines are pre-compiled).
libshortfin currently has the following additional native dependencies:

spdlog
fmt (dependency of spdlog and used internally)
xtensor
gtest (if testing is enabled)

Python deps
shortfin does not have any Python deps for minimal functionality, but it is expected that a number of deps will be useful for various applications of it, and it may provide features based on these deps in an optional fashion that people can use if helpful/available:

pytest (for testing)
numpy
torch
uvicorn (or other ASGI web server)
iree-turbine (for torch compilation)

Transitive deps on iree-compiler and iree-runtime

onnx (for onnx compilation)
etc

Variants
The native _shortfin.lib Python package is provided, similar to iree.runtime, by redirecting at runtime to a concrete native library module based on env flags, allowing the selection of multiple packages runtimes such as "default", "tracy", "assert", etc. As with the iree.runtime, we expect that our normal wheels will bundle the default and tracy versions so that users can always use an instrumented build.
Dependent Projects
It is intended that both C++ and pure/native Python extensions will be built atop libshortfin, providing application level support for various models, etc.
Moving towards release
There are several steps towards a robust release of the project.
Initial Packaging and CI
Initial Build Work
See the current README for developer quality instructions. This just uses find_package for both IREE and other dependencies. A setup.py is added that works for development, but it needs to be completed to build a hermetic/production build.
This will necessitate supporting CMake options to enable bundled/pinned deps vs relying on find_package. The trickiest of these is IREE itself, and for that we should support two modes:

Bring your own source (SHORTFIN_IREE_SOURCE_DIR set, for example) which will do a add_subdirectory on IREE and include it directly in the build.
FetchContent a pinned IREE release in bundled mode and build off of that.

These bundling modes can be developed/tested in pure cmake in isolation. Once functional, setup.py can be extended to invoke CMake itself. See IREE runtime/setup.py for inspiration. The result should be that pip install libshortfin/ works on any reasonably modern Linux and Windows system with no further fuss.
There are a few things that should be done at this point:

[x] Set a soname on libshortfin.so or shortfin-{soname}.dll and let it   be configured (needed for coexistence and dependent extension linking).
[x] Enable LTO build options for IREE, spdlog, and xtensor.
[x] Set compiler/linker flags to include a linker script that enables symbol versioning.
[x] Tweak hidden visibility and API re-export settings for deps (they should already be right for libshortfin and are tested).
[ ] Set up libshortfin CMake install/exports
[ ] Bundle development headers and CMake exports with the build Python wheels so that applications can be auto configured without fiddling with native deps.

Initial CI work
CI should be brought up to:

Build Python packages.
Run native unit tests via CTest (running on CPU is fine for these).
Run pytest integration tests on combinations of machines with specific hardware.
Push built binaries to the GH releases page using some form of pre-release versioning.

Note that the project is self contained enough that it should build just fine on free linux and windows runners.
Versioning and Releasing
Releasing libshortfin properly will necessitate working out the versioning and releasing policies for some of its related deps (IREE, iree-turbine, sharktank, etc). This may be the end of the road for the nightly builds of those, and we may want to take this chance to come up with a real versioning policy and apply it uniformly to all of the projects. It would be great to have normal pre-releases and regular releases in stable places where everything can be installed by adding one index-url (vs the current state where everything is somewhere bespoke with all kinds of -f flags).
We also get requests for conda packages from some in the community, and this would be a good time to enable those.

For the package builds, do we want to use manylinux?
Dockerfile choices:

nod-ai: https://github.com/nod-ai/base-docker-images/pkgs/container/manylinux_x86_64

source: https://github.com/nod-ai/base-docker-images/blob/main/dockerfiles/manylinux_x86_64.Dockerfile)

iree-org: https://github.com/iree-org/base-docker-images/pkgs/container/manylinux_x86_64

source: https://github.com/iree-org/base-docker-images/blob/main/dockerfiles/manylinux_x86_64.Dockerfile)

upstream pypa: https://quay.io/repository/pypa/manylinux_2_28_x86_64

source: https://github.com/pypa/manylinux

You always want to build python packages that will be run on any other os with a many Linux image. It's typically easier to just do that from the get go. I almost always use one that has been forked locally and extended with needed packages.

Can we yank the old shortfin releases (https://pypi.org/project/shortfin/#history) ? That only has version 0.1.dev3, for Python 3 (including pre-3.12).
If I try running python -m pip install shortfin -f https://github.com/ScottTodd/SHARK-Platform/releases/expanded_assets/dev-wheels from Python 3.10, that gets the stale package, since the new packages are only for Python 3.12 and 3.13.

Can we yank the old shortfin releases (https://pypi.org/project/shortfin/#history) ? That only has version 0.1.dev3, for Python 3 (including pre-3.12).
If I try running python -m pip install shortfin -f https://github.com/ScottTodd/SHARK-Platform/releases/expanded_assets/dev-wheels from Python 3.10, that gets the stale package, since the new packages are only for Python 3.12 and 3.13.

Bah, https://peps.python.org/pep-0440/#handling-of-pre-releases

Pre-releases of any kind, including developmental releases, are implicitly excluded from all version specifiers, unless they are already present on the system, explicitly requested by the user, or if the only available version that satisfies the version specifier is a pre-release.

That old 0.1.dev3 pre-release package for https://pypi.org/project/shortfin/ (and similarly for https://pypi.org/project/sharktank/) is making testing new packaging tricky:

The old shortfin package is for any Python version, not just 3.12+
The old shortfin package depends on sharktank, iree-runtime, etc.
The sharktank package depends on shark-turbine, which still needs to be migrated to iree-turbine

Brain dump before vacation (could merge these into a single tasklist in the original issue comment):

Nightly releases of shortfin for Python 3.12, 3.13, and 3.13t are being published to https://github.com/nod-ai/SHARK-Platform/releases/tag/dev-wheels by https://github.com/nod-ai/SHARK-Platform/actions/workflows/build_packages.yml.
Nightly releases of shortfin can be installed usingpython -m pip install shortfin -f https://github.com/nod-ai/SHARK-Platform/releases/expanded_assets/dev-wheels

Instructions for building releases locally are at https://github.com/nod-ai/SHARK-Platform/tree/main/shortfin#package-python-release-builds
https://github.com/nod-ai/SHARK-Platform/pull/244 is in review
The example at shortfin/examples/python/mobilenet_server works on my machine as of https://github.com/nod-ai/SHARK-Platform/commit/8e074b45362737787e5ad1d467f0286976490e4f . We'll want more examples and tests for those examples as these packages mature.
shortfin API docs are hosted at https://shortfin.readthedocs.io/en/latest/ (manage that from https://readthedocs.org/projects/shortfin/, Marius and I are maintainers). We should check that the docs are useful enough to build examples with... I found them a bit lacking while fixing the mobilenet server code.

TODO:

[ ] Build and publish releases of sharktank to the same location.

That should be simpler since sharktank is a pure Python package (no C/C++/CMake), but will likely need a few patches to sharktank/setup.py, as well as .github/workflows/build_packages.yml

[ ] Settle on a versioning scheme and roll that out across each setup.py file and the various projects in scope (iree-compiler, iree-runtime, iree-turbine, sharktank, shortfin, etc.)
[ ] Ensure that all projects in scope work across our supported Python versions and operating systems. For IREE, I have https://github.com/iree-org/iree/issues/18652 in progress
[ ] Add CI workflows that test the built packages (new smoketests, existing unit tests, nightly full model tests/workflows)
[ ] Rebase the shortfin build process from manylinux2014 to manylinux_2_28
[ ] Build for other platforms/architectures (macOS, Windows, arm64, etc.)
[ ] Publish releases to pypi, possibly using --pre for prerelease versions. Put less emphasis on installing from source or nightly builds
[ ] Refactor requirements.txt files and README.md files across https://github.com/nod-ai/SHARK-Platform , focusing on what each individual project needs for development and what the aggregate "platform" needs to be used

The main chunk of work here is now done. We could keep this open for some of the smaller items (expanded CI coverage, upgrading to manylinux_2_28, making the CMake build more compatible with downstream projects, etc.)... or we could close this as fixed now.

I think this has still some information / requests we either want to transfer to new issues or we keep this open.

shortfin builds are working on Windows again, so we can start thinking about publishing Windows packages too.
From the repo root, this works for me on Windows:
python -m pip wheel --disable-pip-version-check --no-deps -v -w %CD%/shortfin/wheelhouse %CD%/shortfin

ls shortfin\wheelhouse\
# shortfin-3.1.0.dev0-cp311-cp311-win_amd64.whl

Should be able to add a build_windows_package.sh (or .ps1) next to https://github.com/nod-ai/shark-ai/blob/main/shortfin/build_tools/build_linux_package.sh and hook that up to a workflow pretty easily - no manylinux or Docker needed. Can also reference the script that IREE has been using: https://github.com/iree-org/iree/blob/main/build_tools/python_deploy/build_windows_packages.ps1.


[WIP] streaming multipack for pretraining dataset

This pull request introduces support for multipacking in streaming pretraining datasets.
Due to the immense size of these datasets, traditional methods of loading them entirely into memory are not feasible.
The proposed solution aims to enhance efficiency and scalability.
need guide for making config.
this multipack does not use BatchSamplerDataCollatorForSeq2Seq, only use DataCollatorForSeq2Seq due to huggingface dataset map function.

Here's a patch file I used to test a c4 pretraiing dataset with tinnyllama. multigpu doesn't work currently w this since I think it needs a proper data collator to pad the samples to the same sequence length
patch0.patch

Would this streaming feature work with S3, GCS, Azure Blob Storage?

This PR is ready for review and should resolve #1026. @mhenrichsen

Confirmed working on single gpu. Currently fails on multi gpu.


[TC-IDM-1.2]DUT fails to responds has UNSUPPORTED_ACCESS, When TH sends invoke message to DUT that it should not have the privilege for the cluster.

Problem
As per Test-Plan, test step 4 says "Setup the TH,  to send invoke request message from TH to DUT such that it should not have the privilege for the cluster" DUT should responds with UNSUPPORTED_ACCESS to TH ,but currently DUT responds has Run command failure: ../../src/app/ReadClient.cpp:595: CHIP Error 0x00000032: Timeout.

expected behavior:-UNSUPPORTED_ACCESS(0x7e)

actual behavior:-
On TH---Run command failure: ../../src/app/ReadClient.cpp:595: CHIP Error 0x00000032: Timeout
On DUT---Secure transport received message, but failed to decode/authenticate it, discarding

steps to reproduce:-./chip-tool basic read vendor-name  1 0 --commissioner-nodeid 332211

system configuration
Chip-Tool: RPI
DUT: RPI
Platform : IP and Wifi
Commit-ID: cfc35951be66a664a6efdadea56d1b8ea6e63e96
Dut:All-cluster-app
PFA log:-
IDM-1.2-step4.txt
Test-Plan Reference:-
https://github.com/CHIP-Specifications/chip-test-plans/blob/master/src/interactiondatamodel.adoc#tc-idm-1-2-invoke-response-action-from-dut-to-th
Spec-Reference:-
https://github.com/CHIP-Specifications/connectedhomeip-spec/blob/master/src/data_model/Interaction-Model.adoc#status-codes

Facing the same issue in TC-IDM-2.2(test-step 21) , TC-IDM 3.2(Test-step 18), TC-IDM-6.2(test-step-14).

Need details on what command is trying to run. This generally works, even in chip-tool.

This seems like a test setup / environment issue.

@mlepage-google
The command I tried ./chip-tool basic read vendor-name 1 0 --commissioner-nodeid 332211

Right, but need more details on what the DUT app is, and how it was commissioned. Do you have a sequence of commands which demonstrates the failure?

@mlepage-google we are using Dut as All-cluster-app and I tried in both WIFI & IP commission.
here I attached sequence of commands before this step.
IDM 1.2.txt

OK I tried the same thing here having built master, on Linux x64, and I get the same result. This seems like a problem with that --commissioner-nodeid argument to chip-tool. The message is not properly getting through.

This is due to an issue with chip-tool and the credentials it uses when the nodeid is changed like this, compared to the sessions etc. it has stored. It needs to be improved to handle that better.
Issue #17221

See comment https://github.com/project-chip/connectedhomeip/issues/18413#issuecomment-1129998162
I suggest manipulating the ACL since the commissioner-nodeid behaviour seems to have changed Let me know if that helps....

Thank you  @vivien-apple getting expected behavior.


Add main layout and routing system

Implements a base layout component that can be used in all views.
Implements 2 routes: index and settings.

Extension builds preview

Name
Link

Latest commit
5e8051f6b1e923e2f5ed61fd19b8e3edbdf4c8fa

Latest job logs
Run #7473452512

DownloadDownloadDownloadDownload

You have a couple of conflicts.


SCVMM Integration network virtualization / boundary VM

When using network virtualization for hosting an environment and using a boundary vm for connectivity to VMs the boundary is created fine but not registered into DNS. Netbios is not working in my environment due to seperated subnets.
Do i really need the boundary vm or is tfs able to use hyper-v integrated remote powershell?
Do i need to domain join the boundary vm manually or register into dns by script?
[Enter feedback here]

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

ID: 089ea08c-cf03-4fd4-1690-e2540c5ef0f8
Version Independent ID: 22a07881-4e4a-f531-59ed-dfe0eec4de82
Content: Create a virtual network for build-deploy-test scenarios
Content Source: docs/build-release/actions/virtual-networks/create-virtual-network.md
Service: unspecified
GitHub Login: @alexhomer1
Microsoft Alias: ahomer

Thank you for your feedback. I have passed your question on to the product team and let you know the response.

Thanks for your question. It looks like you're working through an issue with your scenario or implementation, rather than an issue with the documentation. Here are a couple of options where you might consider asking your question:

Azure DevOps on Stack Overflow
Azure DevOps Support Bot


The Boyer–Moore majority vote algorithm java

Have you read the Contributing Guidelines on Pull Requests?
Yes
Description
I have updated the The Boyer–Moore majority vote algorithm in java folder
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
Fixes #1852

@iamrajiv @atarax665 Please review this.

@iamrajiv @atarax665 Please review this.

@iamrajiv Please review this.

@iamrajiv Please review this.

@ankitaggarwal23 please refer this issue. #1852


Problem with the name of GO:0033942; F:4-alpha-D-(1->4)-alpha-D-glucano}trehalose trehalohydrolase activity

Hi,
there is an issue with the name of GO:0033942; F:4-alpha-D-(1->4)-alpha-D-glucano}trehalose trehalohydrolase activity
The presence of a mismatched curly bracket '}' creates a fatal error in UniProt. Would it be possible to rename it as:
4-alpha-D-((1->4)-alpha-D-glucano)trehalose trehalohydrolase
Thanks
Sylvain

4-alpha-D-(1->4)-alpha-D-glucanotrehalose trehalohydrolase


feature: Chart axis of type datetime

I am trying to use dates or datetime values as x axis tick_labels,
when i give datetime.datetime as x values of the data, it treats and presents them as numbers,
I can't find any documentation about how to do it.
is there any way?
Thanks.

The datetime axis type hasn't been implemented yet.

Is there any walk around?
Maybe formating a number as
Xx-xx-xx ?
בתאריך 14 בספט׳ 2016 19:49, "Steve Canny"<EMAIL_ADDRESS>כתב:

The datetime axis type hasn't been implemented yet.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/scanny/python-pptx/issues/231#issuecomment-247078398,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANMVajdsA6ooZpa8YDJW1P6UjWrusOCpks5qqCWvgaJpZM4J8iRJ
.

Support for date axis was added in the latest release v0.6.2.

Could you please give example for using date axis on x axis using pptx. Thanks!!


Add sample for using the tasks scheduler

New sample that can create a scheduled task to power off a specified vm at a specified time.

@blacksponge Thanks for adding the sample.


Create API review for JS packages with namespace in api extractor model

API review JSON input file has namespace model and all public API details are under this namespace model.  APIView parser currently ignores namespace and any below members which causes issues for packages that has all it's members under a namespace. For e.g API review for change in  PR https://github.com/Azure/azure-sdk-for-js-pr/pull/236/files#diff-6dc05287911739aecce4b2d7cbc4df5699df151c14f032b5a14990cd3f5b2762 is empty.
This PR will process namespace model and its child nodes.

Sample API review with this fix: https://apiviewstaging.azurewebsites.net/Assemblies/Review/f6bdaff7a9824ad0a96f13d0da57ad70
@MaryGao FYI....

/check-enforcer override

/azp run APIView - CI

/azp run APIView - CI

Sample API review with this fix: https://apiviewstaging.azurewebsites.net/Assemblies/Review/f6bdaff7a9824ad0a96f13d0da57ad70
@MaryGao FYI....

@praveenkuttappan I notice that all tokens under some nampespace are un-clickable, do you know why? Could we someone fix it?
To say we have a declaration type InferOncologyPhenotypingParameters here

This type is used by post method under interface InferOncologyPhenotyping

Sample API review with this fix: https://apiviewstaging.azurewebsites.net/Assemblies/Review/f6bdaff7a9824ad0a96f13d0da57ad70
@MaryGao FYI....

@praveenkuttappan I notice that all tokens under namespace are un-clickable, do you know why? Could we someone fix it?
To say we have a declaration type InferOncologyPhenotypingParameters here

This type is used by post method under interface InferOncologyPhenotyping and when click the reference type InferOncologyPhenotypingParameters we can't jump to relevant declaration.

This one doesn't look like we can resolve with a quick fix in APIView due to the metadata returned by api-extractor itself which is outside the APIView system. I will have a look and talk to someone JS team.


Add Codecov

Current coverage is 88.46%

Branch #38 has no coverage reports uploaded yet.

No diff could be generated. No reports for master found.

Powered by Codecov. Updated on successful CI builds.


Enhancement of contact us page

fixed #1152
I addressed issue #1152 by implementing several enhancements to improve the overall UI/UX of the website. Key updates include alignment improvements, dynamic effects, and content interactivity.
Key Changes Implemented:

Header Section & Navigation Bar Alignment:
Properly aligned the header section and the navigation bar elements to ensure consistent spacing and a polished layout across all screen sizes.

Card Flip Effect:
Implemented a dynamic card flip effect that reveals contact information when the card is clicked or hovered over. This enhances user interaction and presents important contact details in an engaging way.

Hover Effect on Contact Us Form:
Added a hover effect to the "Contact Us" form, creating a visually appealing border color change to make the form stand out when the user hovers over it.

Placeholder Text:
Inserted clear and descriptive placeholder text in the relevant form fields to improve the form’s usability and guide users in completing the form correctly.

Hyperlinks for Quick Links:
Added functional hyperlinks to the quick links section, ensuring that users can easily navigate to the intended pages.

Social Media Icons Alignment:
Properly aligned the social media icons for better visual balance and accessibility, ensuring a cohesive look in the footer section.
These updates contribute to a more dynamic and user-friendly interface, enhancing both the aesthetic and functional aspects of the site.
https://www.loom.com/share/4b228f8ea00b44169c7c63eb02cc497d?sid=78622d17-896c-4ec6-950c-5869a98daeeb

pls accept this  pull request under hackertoberfest24 @anuragverma108

Awesome contribution to Hacktoberfest'24! 🎉 Your work is super valuable. Keep up the great work!


Maintenance: Update roadmap April

Summary
Update roadmap for April
Why is this needed?
Roadmap is out of date
Which area does this relate to?
Governance
Solution
No response
Acknowledgment

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

Future readers
Please react with 👍 and your use case to help us understand customer demand.

@dreamorosi  @am29d - I've tried creating an automated report and noticed feature-request label used in other languages is named type/feature-request in TS -- can I get your help to rename it, please?

Yes, all the labels we use are scoped, I set them up like this over a year ago to be a bit more informative, like:

what's the type of issue: feature-request, bug, internal, etc.
what's the area: logger, tracer, etc
what's the status: pending-release, complete, etc.

I did this when we created the public project and I manually went through all the existing GH issues & PRs, including closed ones, to apply the new conventions.
Is there any chance that we can extend the report automation to take in account a map/dictionary that lets the repo set their own labels? The action would be centralized, but when running it can load a file at .github/labels.yml that contains a mapping.
What do you think?
If it's too much work, or we have a need to align the labels among projects (understandable), I'll set aside a couple of hours today and change all the labels back.


Update to OnBeforePrint publisher in Page 490 "Acc. Schedule Overview" to pass in TempFinancialReport record instead of just TempFinancialReport."Financial Report Column Group" so the values populated on the page in TempFinancialReport record can be used.

`action(Print)
        {

            ApplicationArea = Basic, Suite;

            Caption = 'Print';

            Ellipsis = true;

            Image = Print;

            ToolTip = 'Print the information in the window. A print request window opens where you can specify what to include on the print-out.';

            trigger OnAction()

            var

                AccSched: Report "Account Schedule";

                DateFilter2: Text;

                GLBudgetFilter2: Text;

                BusUnitFilter: Text;

                CostBudgetFilter2: Text;

                IsHandled: Boolean;

            begin

                IsHandled := false;

                **OnBeforePrint(Rec, TempFinancialReport."Financial Report Column Group", IsHandled); //CURRENT CODE
                OnBeforePrint(Rec, TempFinancialReport, IsHandled); //NEW CODE**
                if IsHandled then

                    exit;

                if TempFinancialReport.Name <> '' then

                    AccSched.SetFinancialReportName(TempFinancialReport.Name)

                else begin

                    AccSched.SetAccSchedName(TempFinancialReport."Financial Report Row Group");

                    AccSched.SetColumnLayoutName(TempFinancialReport."Financial Report Column Group");

                end;

                DateFilter2 := Rec.GetFilter("Date Filter");

                GLBudgetFilter2 := Rec.GetFilter("G/L Budget Filter");

                CostBudgetFilter2 := Rec.GetFilter("Cost Budget Filter");

                BusUnitFilter := Rec.GetFilter("Business Unit Filter");

                AccSched.SetFilters(DateFilter2, GLBudgetFilter2, CostBudgetFilter2, BusUnitFilter, TempFinancialReport.Dim1Filter, TempFinancialReport.Dim2Filter, TempFinancialReport.Dim3Filter, TempFinancialReport.Dim4Filter, TempFinancialReport.CashFlowFilter);

                AccSched.Run();

            end;

        }`

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 51150.


chore: add missing ImpressionTracking export to cohesion

The type of this PR is: chore

Description
Add ImpressionTracking export to index.ts to expose the interface

PR Checklist (tick all before merging)

[x] If I've added a new file to the tree I've exported it from the common index.ts
[x] I've added comments with examples for any new interfaces and ensured that they're in the docs
[x] No platform-specific terminology has been used outside of click and tap (platform is inferred by the DB storing events)

:rocket: PR was released in v4.108.0 :rocket:


Task context + schema

Updates the task schema and config to make a little more since.
Now the task widget takes either null, or an array of either strings or an object that has a name field and a when field, where the when field is a way to specify the context to show the task

@anthonydresser  can you link the issues that you are fixing?

fix #815: Backup and Restore tasks show on Azure DB Manage page


M #-: Append ACK to README

Description
Added ACKs.
Branches to which this PR applies

[ ] master
[ ] one-X.X

[ ] Check this if this PR should not be squashed

Need to check option for decreasing the font size before issuing the PR

Will not use different font size, reopening PR


git pull --rebase support

I would really like to see 'git pull --rebase' implemented as well.  It has been awhile since this issue was first posted, is SublimeGit still under development?

And one year later... is this plugin maintained and/or under development? This feature is much needed. Thanks!


arch wsl can't use systemctl or service command and can't install genie-systemd

IMPORTANT
Please read README and Docs before creating the issue.
Please fill out the below information:
Describe the issue
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Enviroment:

Windows build number: [e.g. 10.0.17134.228] (Type ver at a Command Prompt)
Security Software: [e.g. ESET Internet Security]
WSL version 1/2: [e.g. WSL1]
ArchWSL version [e.g. <IP_ADDRESS>]
ArchWSL Installer type zip/appx/other clean/update [e.g. appx update]
Launcher version [e.g. 19030700] (Type Arch.exe version at a Command Prompt)

Additional context
Add any other context about the problem here.

can't use service and systemctl command and install the genie-systemd can't resolv the dependencies

I am getting the same issue
$ sudo pacman -U genie-systemd-1.36-1-x86_64.pkg.tar.zst
loading packages...
resolving dependencies...
warning: cannot resolve "daemonize", a dependency of "genie-systemd"
:: The following package cannot be upgraded due to unresolvable dependencies:
      genie-systemd

:: Do you want to skip the above package for this upgrade? [y/N] ^C

$ sudo pacman -Ss genie
community/systemdgenie 0.99.0-4
    Systemd management utility

$ sudo pacman -Si systemdgenie
Repository      : community
Name            : systemdgenie
Version         : 0.99.0-4
Description     : Systemd management utility
Architecture    : x86_64
URL             : https://cgit.kde.org/systemdgenie.git/
Licenses        : GPL
Groups          : None
Provides        : None
Depends On      : kxmlgui
Optional Deps   : None
Conflicts With  : None
Replaces        : None
Download Size   : 89.52 KiB
Installed Size  : 283.71 KiB
Packager        : Felix Yan<EMAIL_ADDRESS>Build Date      : Tue 07 Jul 2020 06:31:02 AM PDT
Validated By    : MD5 Sum  SHA-256 Sum  Signature

$ sudo pacman -S systemdgenie
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: mesa will be installed before its libglvnd dependency
warning: dependency cycle detected:
warning: harfbuzz will be installed before its freetype2 dependency

Packages (88) attica-5.80.0-1  avahi-0.8+15+ge8a3dd0-3  double-conversion-3.1.5-2
              expat-2.2.10-2  fontconfig-2:2.13.91+48+gfcb0420-2  freetype2-2.10.4-1
              graphite-1:1.3.14-1  harfbuzz-2.8.0-1  js78-78.9.0-1  karchive-5.80.0-1
              kauth-5.80.0-1  kcodecs-5.80.0-1  kconfig-5.80.0-1
              kconfigwidgets-5.80.0-1  kcoreaddons-5.80.0-1  kcrash-5.80.0-1
              kdbusaddons-5.80.0-1  kglobalaccel-5.80.0-1  kguiaddons-5.80.0-1
              ki18n-5.80.0-1  kiconthemes-5.80.0-2  kitemviews-5.80.0-1
              kwidgetsaddons-5.80.0-1  kwindowsystem-5.80.0-1  kxmlgui-5.80.0-1
              libcups-1:2.3.3op2-1  libdaemon-0.14-5  libdrm-2.4.104-1
              libedit-20210216_3.1-1  libevdev-1.11.0-1  libglvnd-1.3.2-1
              libgudev-236-1  libice-1.0.10-3  libinput-1.17.1-1  libjpeg-turbo-2.0.6-1
              libomxil-bellagio-0.9.3-3  libpciaccess-0.16-2  libpng-1.6.37-3
              libproxy-0.4.17-1  libsm-1.2.3-2  libtiff-4.2.0-1  libunwind-1.5.0-1
              libwacom-1.9-1  libx11-1.7.0-4  libxau-1.0.9-3  libxcb-1.14-1
              libxcomposite-0.4.5-3  libxdamage-1.1.5-3  libxdmcp-1.1.3-3
              libxext-1.3.4-3  libxfixes-5.0.3-4  libxi-1.7.10-3  libxkbcommon-1.1.0-2
              libxkbcommon-x11-1.1.0-2  libxmu-1.1.3-2  libxrender-0.9.10-4
              libxshmfence-1.3-2  libxt-1.2.1-1  libxxf86vm-1.1.4-4  llvm-libs-11.1.0-1
              lm_sensors-1:3.6.0.r41.g31d1f125-1  md4c-0.4.7-1  mesa-20.3.4-3
              mtdev-1.1.6-1  polkit-0.118-1  polkit-qt5-0.113.0-2  qt5-base-5.15.2-5
              qt5-declarative-5.15.2-1  qt5-svg-5.15.2-1  qt5-wayland-5.15.2-1
              qt5-x11extras-5.15.2-1  shared-mime-info-2.0+57+gc1d1c70-1  tslib-1.22-1
              vulkan-icd-loader-1.2.172-1  wayland-1.19.0-1  which-2.21-5
              xcb-proto-1.14.1-3  xcb-util-0.4.0-3  xcb-util-image-0.4.0-3
              xcb-util-keysyms-0.4.0-3  xcb-util-renderutil-0.3.9-3  xcb-util-wm-0.4.1-3
              xdg-utils-1.1.3+19+g9816ebb-1  xkeyboard-config-2.32-1  xorg-xprop-1.2.5-1
              xorg-xset-1.2.4-2  xorgproto-2021.3-1  systemdgenie-0.99.0-4

Total Download Size:    98.31 MiB
Total Installed Size:  455.54 MiB
Net Upgrade Size:      455.23 MiB

:: Proceed with installation? [Y/n] ^C
Interrupt signal received

just do a yay -S daemonize assuming you have setup AUR
Alternatively you can also
git clone https://aur.archlinux.org/daemonize.git
then cd into the directory and run makepkg -si

already resolved ，thanks

Be sure to leave a full description about how you solved it before leaving.

I fixed the issue by installing daemonize. Since I didn't have the AUR setup and my repos couldn't refresh, I manually installed yay and used that to install packages. Installing with yay -S daemonize then installing genie as described

already solved this problem ,thanks!
On Thu, Apr 1, 2021, 01:18 Shawn McElroy @.***> wrote:

I fixed the issue by installing daemonize. Since I didn't have the AUR
setup and my repos couldn't refresh, I manually installed yay and used
that to install packages. Installing with yay -S daemonize then
installing genie as described
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/yuk7/ArchWSL/issues/197#issuecomment-811266116, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AS7VEUX2CPWUEZPVZHVDZJLTGNKPTANCNFSM4ZYMDOWA
.

yay -S daemonize

I think there might be something wrong with my WSL sudo permissions? Often pamac requires sudo where I wouldn't expect it to as well.
$ yay -S daemonize
:: There are 2 providers available for daemonize:
:: Repository AUR
    1) daemonize 2) daemonize-git

Enter a number (default=1):
:: Checking for conflicts...
:: Checking for inner conflicts...
[Repo Make:1]  python-markdown-3.3.4-1
[Aur:1]  daemonize-1.7.7-1

==> Remove make dependencies after install? [y/N]
error cloning daemonize: fatal: could not create work tree dir 'daemonize': Permission denied

$ sudo yay -S daemonize
 -> Avoid running yay as root/sudo.
:: There are 2 providers available for daemonize:
:: Repository AUR
    1) daemonize 2) daemonize-git

Enter a number (default=1): 1
refusing to install AUR packages as root, aborting

Any ideas on what I can try? I'm assuming it cannot make the folder required to download into but I'm not quite sure how to fix that.

@PeterKW I think you need to check the directory permissions of yay's work tree  for current user.


sched: SCHED_MULTIQ support DLE algo

In multi level queue, the priority already decide by thread's priority.
We only compare the deadline when adding thread to multi level queue.
The logic is similar with z_priq_dumb_add.

Sorry, missed this when it came by. Sorry, I have to NACK this one. This is breaking the performance promise that MULTIQ makes, which is that all thread suspend/resume operations are O(1) in the number of threads. If you have to walk a list, that's O(N) and you might as well use SCHED_DUMB or SCHED_SCALABLE.

Sorry, for me, it is useful. The deadline scheduler for MULTIQ is optional and if there are many priority, it can help user insert thread to queue more quickly; for dumb and scalable, the user have search list from head but MULTUQ can search from specific priority.

Sorry, missed this when it came by. Sorry, I have to NACK this one. This is breaking the performance promise that MULTIQ makes, which is that all thread suspend/resume operations are O(1) in the number of threads. If you have to walk a list, that's O(N) and you might as well use SCHED_DUMB or SCHED_SCALABLE.

If users enable CONFIG_SCHED _DEADLINE and CONFIG_SCHED_MULTIQ simultaneously, the operation falls to O(n), otherwise it’s still O(1).

@andyross - I think that there is still some value to enabling deadline scheduling with the multi-queue. You are absolutely correct in that it breaks the promise of O(1). However, could we not address that in documentation? That is, we could adjust the claim to be O(1) only for uniprocessor systems that are purely priority based, with a note that if used with deadlines it becomes O(N) albeit with a smaller set to search than CONFIG_SCHED_DUMB.

We could, but if you don't have an O(1) scheduler anymore what's the value in multiq?  It's bigger code, bigger RAM footprint, has a needlessly limited priority space, and if it's not guaranteed to be faster (because latency bounds are what you care about with scheduler behavior, not absolutely performance -- apps almost by definition don't spend many cycles in the scheduler in an absolute sense) what's the value proposition?  Apps that really care about doing the Right Thing and spending code bytes to do it are better served (modulo a bug that was submitted yesterday) by SCHED_SCALABLE anyway.
I guess sure, if this was carefully documented there's no reason it couldn't go in.  But that's true of a lot of code, and a project that included it all would be a mess.   There needs to be someone around to say no to features that "aren't wrong, just weird", right? :)
Also, to be blunt: MULTIQ is in the tree because that was the original scheduling algorithm, and I didn't want to have to have fights over whether we were losing something by walking away from the textbook O(1) ladder.  In practice I don't think anyone has shipped an app in the real world with this backend.

I don’t want to discuss scalable because there is a bug, it is reported https://github.com/zephyrproject-rtos/zephyr/issues/69935.

Yeah, that's seems wrong.  "Merge this feature because there's a bug in the feature I want to use" is silly, we should fix that bug.

Bug in the feature you want to use should be fixed.   So consider SCALABLE instead? :)

You are right.
I am persuaded from you.

We could, but if you don't have an O(1) scheduler anymore what's the value in multiq? It's bigger code, bigger RAM footprint, has a needlessly limited priority space, and if it's not guaranteed to be faster (because latency bounds are what you care about with scheduler behavior, not absolutely performance -- apps almost by definition don't spend many cycles in the scheduler in an absolute sense) what's the value proposition? Apps that really care about doing the Right Thing and spending code bytes to do it are better served (modulo a bug that was submitted yesterday) by SCHED_SCALABLE anyway.
I guess sure, if this was carefully documented there's no reason it couldn't go in. But that's true of a lot of code, and a project that included it all would be a mess. There needs to be someone around to say no to features that "aren't wrong, just weird", right? :)
Also, to be blunt: MULTIQ is in the tree because that was the original scheduling algorithm, and I didn't want to have to have fights over whether we were losing something by walking away from the textbook O(1) ladder. In practice I don't think anyone has shipped an app in the real world with this backend.

You are right.
I am persuaded from you.
But another point, we can offer user another option to select the scheduler which they want and they can compare the performance .
I know the reason is weak but still help you can consider.


Downloads

New feature:

Incorporates the download link for JSON files. Also in partial response to issue #14.

 download files as JSON


Docs for usage with templates

I'm using the /text/template package for html rendering. Now I want to use esc for including the templates files in my binary. I'm looking for a good example, but I can't find it. Is there a way to access a file from the generated sources as an asset which will be accepted by the template.-functions?
tmpl, parseErr := template.ParseFiles(baseFile, headerFile, footerFile)
if parseErr != nil {
	http.Error(w, parseErr.Error(), http.StatusInternalServerError)
	return
}

if templErr := tmpl.Execute(w, renderObject); templErr != nil {
	http.Error(w, templErr.Error(), http.StatusInternalServerError)
}

str := FSMustString(devMode, "/templates/index.html")
template, err := template.New("").Parse(str)

Thanks; working fine.


Profile page data display change, onboard.html add points rules

Added a playlist_id field to Annotation model
BUG after merging in Gamification PR: leadership board "Profile matching query does not exist" on line 90 of views.py
Future move: would be nice to see player performance based on generation model in addition to by playlist

Looks awesome and works for me!


keybase oneshot hanging

Hi, I use a paperkey to loigin to keybase while using CI custom builds.
But recently it just hangs, here is an example
https://ci.appveyor.com/project/kenkit/neon-html

Recently it used to work just fine as you can see from the history tab

Recently it used to work just fine as you can see from the history tab

Recently it used to work just fine as you can see from the history tab with the last build
https://ci.appveyor.com/project/kenkit/neon-html/builds/37924633

https://github.com/kenkit/neon_html/pull/5


Remove Conan from PEGTL

Taocp PEGTL is available under Conan Center Index now:
https://conan.io/center/taocpp-pegtl/2.8.1/
https://github.com/conan-io/conan-center-index/tree/master/recipes/taocpp-pegtl
https://bintray.com/conan/conan-center/taocpp-pegtl%3A_
Less code, less problems

Coverage remained the same at 100.0% when pulling 62c529b2c0ea6ab8fc0d79869d17c7cc30e4bc36 on uilianries:feature/remove-conan into cab824f5cae03f915a07b0a164b378a86ab5f2a6 on taocpp:master.


Test to make sure we are getting proper exit codes on podman run

podman run command screws up we should get 125
podman run command succeeds but command in container fails to exec 126
podman run command succeeds but command exits with non 0 exit code
Signed-off-by: Daniel J Walsh<EMAIL_ADDRESS>

@umohnani8 @haircommander @baude @mheon @giuseppe PTAL

LGTM assuming happy tests

LGTM!


Use Magento CMS API instead of 3rd party

Currently it looks like there is a 3rd party dependency on snowdog/module-cms-api for retrieving CMS data currently. Magento has API endpoints for this purpose already. Is there a feature or ability that this 3rd party module provides that Magento does not? At first glance it seems this can be replaced by Magento's core API and remove this dependency.

HI, Default Magento API didn't parse WYSIWYG to HTML, so we got data like from admin panel. This module parse the content of CMS block & pages to display it on frontend. Maybe in Magento 2.3 it's already fixed? I didn't tested.

Ahh, ok @anqaka I missed that piece. Makes sense. Doesn't look like they have made any changes to that in 2.3


0.3.0

Coverage remained the same at 100.0% when pulling f653fa56ad24d884427aa2a187bf7b66567732a8 on 0.3.0 into 4ea41b25934f23b72d08d82866607cdf7a3570c2 on master.


Add fish autocompletion support

See original issue on GitLab
In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 11:48
Background
BuildStream should provide fish autocompletion instructions similar to those for bash
Task description

[ ] Provide autocompletion setup instructions for fish

Acceptance Criteria
The documentation should provide fish users with enough guidance to have custom autocompletion for buildstream.

In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 11:48
changed the description

In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 13:23
marked this issue as related to #558

In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 13:23
marked this issue as related to #558

In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 13:23
marked this issue as related to #556

In GitLab by [Gitlab user @Qinusty] on Aug 6, 2018, 13:23
removed the relation with #558

In GitLab by [Gitlab user @tristanvb] on Aug 7, 2018, 08:11
changed the description

In GitLab by [Gitlab user @tristanvb] on Aug 7, 2018, 08:13
I'm happy if this is only a documentation exercise, for both this one and #558, although I was under the impression it might require some code to integrate the existing completion functionality into other shells than bash.
In any case, I'll just leave the documentation tag in place for now, until more research is done on this.


Fixed problem with converting objects inside $value

This is my input:
{
    "simpleParam1": "arp",
    "simpleParam2": "xyz",
    "arrayParam": {
        "propArray": [
            {
                "name": "prop1",
                "value": "123"
            },
            {
                "name": "prop2",
                "value": "789"
            }
        ]
    }
}

If I convert it as is, it works just fine. However, I want to add an attribute: xmlns=""
So my input looks like this:
{
    "exampleAction": {
        "simpleParam1": {
            "$value": "abc",
            "attributes": {
                "xmlns": ""
            }
        },
        "simpleParam2": {
            "$value": "xyz",
            "attributes": {
                "xmlns": ""
            }
        },
        "arrayParam": {
            "$value": {
                "propArray": [
                    {
                        "name": "prop1",
                        "value": "123"
                    },
                    {
                        "name": "prop2",
                        "value": "789"
                    }
                ]
            },
            "attributes": {
                "xmlns": ""
            }
        }
    }
}

Before: would convert to:
<exampleAction xmlns="http://ws.example.net/">
    <simpleParam1 xmlns="">abc</simpleParam1>
    <simpleParam2 xmlns="">xyz</simpleParam2>
    <arrayParam xmlns="">
        [object Object]
    </arrayParam>
</exampleAction>

Fixed: would convert to (as expected)
<exampleAction xmlns="http://ws.example.net/">
    <simpleParam1 xmlns="">abc</simpleParam1>
    <simpleParam2 xmlns="">xyz</simpleParam2>
    <arrayParam xmlns="">
        <propArray>
            <name>prop1</name>
            <value>123</value>
        </propArray>
        <propArray>
            <name>prop2</name>
            <value>789</value>
        </propArray>
    </arrayParam>
</exampleAction>

Thanks a lot for your time and effort @jadbaz - we appreciate it a lot :+1:
In order to get your PR merged, please follow our [Guidelines on Submitting a Pull Request[(https://github.com/vpulim/node-soap/blob/master/CONTRIBUTING.md#submitting-a-pull-request).

Sorry, there was a slight error, here is the updated block:
      //Its the value of an item.
      if (name === self.options.valueKey) {
        //If the value is an array or an object, go through it.
        if (typeof obj[name] === 'object')
        {
          return self.objectToXML(obj[name], name, namespace, xmlns, false, null, parameterTypeObject, ancXmlns);
        }
        //Otherwise, return it as is.
        else
        {
          return xmlEscape(obj[name]);
        }
      }

To be honest, I'm fairly new to git and I'm not exactly sure how or where I should include tests.
I also have yet to learn about rebasing, etc...
In any case, this is what I have at the moment. You can either merge it now yourself or wait for me to update it.
Thank you

No problem @jadbaz - we all once started with git and github alltogether :smile:
The best thing would be to add a test in  test/request-response-samples as your introductory message already describes what's your input and the expected output you'll half way there :+1:
For squashing commits (which is basically a tool to "melt" several commits into each other and change/rewrite the commit message along these lines) you can find links to the pretty good GitHub Help pages in our CONTRIBUTING.md file.

@VilleMiekkoja or why do you request a "reopen"?

It seems that this is still an issue, or is there another way to do this?

@michaek we never got tests.  feel free to plagiarize this PR and add some tests.

This bug doesn't allow me to create complex xml structure where there is a need for both child elements and attributes. Is there a way this can be handled?

Found a workthrough using postProcess in method call
options.postProcess = function (_xml) {         return _xml.replace("<api:Item>", "<api:Item key=\"newRequest\">") }

@aditya-skeps can you open a PR and add this to the README?