Fix Misassigned pxc container resources to init container

CHANGE DESCRIPTION
Problem:
Misassigned pxc container resources to init container.
Solution:
Init containers don't require significant resource demands. Moreover, even if resource requests need to be set for init containers, they don't need to be excessive, and certainly should not match those of the pxc containers!A simpler approach would be to remove the resource settings for the init containers.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.opsu seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


miri doesn't error on transmute between non repr(C) types

Nomicon says

Transmuting between non-repr(C) types is UB

However, miri doesn't produce errors when trying to transmute non-repr(C) types.
Example code:
// Note: non-repr(C)
struct In {
    a: usize,
    b: usize,
}

fn main() {
    unsafe {
        assert_eq!(
            core::mem::transmute::<In, (usize, i64)>(In { a: 1, b: 2}),
            (1, 2),
        )
    }
}

(playground)

This Miri behavior is by design -- the Nomicon is slightly imprecise in its language here. Transmuting between arbitrary type is okay if you know exactly that the fields are all at the right offsets. For non-repr(C), the field offsets are not guaranteed and can change any time, and even e.g. Vec<usize> and Vex<isize> are not guaranteed to have the same field order.
What Miri tells you when you run your example program is that for exactly these types, with exactly the compiler version you used, the code is okay. That is accurate. But changing the compiler or doing seemingly harmless changes to the involved types can break the code, because field order and offsets are not guaranteed.
See the UCG chapter on layout for more details.

This is also documented in the Miri README:

If the program relies on unspecified details of how data is laid out, it will still run fine in Miri -- but might break (including causing UB) on different compiler versions or different platforms.


UnKnow argument -crMiddle

I want to change the color of the heatmap according to the operation document, but it prompts UnKnow argument -crMiddle.

This is my complete order
LDBlockShow -InVCF out_4.vcf.gz -OutPut outYSM -Region 10:1-23420 -crMiddle 192,192,192 -crEnd 64,64,64 -OutPng -SeleVar 2

Re-plot Fig  by   ShowLDSVG   After  LDBlockShow
like  thie :
ShowLDSVG -InPreFix file -OutPut fileout -crMiddle 192,192,192 -crEnd 64,64,64 -crTagSNP 255,0,0 -OutPdf
see  more
https://www.cnblogs.com/chenwenyan/p/13526771.html

thanks！


Fix for issue #44 Multiple lang files

This contains the solution for loading multiple translates files without causing any issue with the TranslateHttpLoader to maintain backward compatibility

I would love to have this. What is needed to get this reviewed? It's been six months.


Add RISC-V as a requirement for the issue on error.

This will (hopefully) ensure that RISC-V failures result in a github issue being created.
BUG=http://b/291335234

merged without waiting for checks since this workflow file is pull_request_target and can not be tested until it it merged.

The post_tests workflow from this PR appears to confirm that the change is correct: https://github.com/tensorflow/tflite-micro/actions/runs/5558888228?pr=2128

Prior to this change, the graph looked like:


Updates AnormDB and database library versions; Fixes SQLite

This updates all db libraries to latest, and sets the base version of
PostgreSQL to 9.3. It also corrects HikariCP configuration for SQLite,
which prevents it from erroring out on account of JDBC variant mismatch.
AnormDB was using old versions of just about everything, including very
EOL PostgreSQL. More importantly, SQLite stopped working due to a recent
HikariCP change, which moved the default JDBC variant to 4.
Relates to #511

:+1:


not able to run stream enrich in local server(ubuntu)?

installation is completed and in the configuration we used source=stdin and sink=stdouterr, but finally in running stream enrich
using the below command
./snowplow-stream-enrich-0.10.0 --config enrich.conf --resolver file:/home/hadoop/snowplow/3-enrich/config/iglu_resolver.json --enrichments file:/home/hadoop/snowplow/3-enrich/config/enrichments/ >> stream_enrich_log_file.txt 2>&1
i am getting below error.
{"line":"","errors":[{"level":"error","message":"Error deserializing raw event: Cannot read. Remote side has closed.
Tried to read 1 bytes, but only got 0 bytes. (This is often indicative of an internal error on the server side. Please check your server logs.)"}]
,"failure_tstamp":"2017-07-19T14:41:16.575Z"}
please help me out to resolve this error.

Hey! Please raise on our forums:
http://discourse.snowplowanalytics.com/


unable to close conn

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description
Cannot close connection to container once run interactively
Steps to reproduce the issue:

Run alpine container
 podman  run -it --rm docker.io/library/alpine /bin/sh

Then exit
 / # exit

This doesn't work and I have to hit Ctrl + C to exit.
Describe the results you received:

ERRO[0002] unable to close conn: "close unixpacket @->/run/user/1000/libpod/tmp/socket/b96520808e7f77e03d4869f225c9841b9418863d9ea5b68f60a0fd008b41c40d/attach: use of closed network connection"

Describe the results you expected:
Exit container without having to run Ctrl + C
Additional information you deem important (e.g. issue happens only occasionally):
Output of podman version:
✗ podman version
Version:            1.6.2
RemoteAPI Version:  1
Go Version:         go1.10.4
OS/Arch:            linux/amd64

Output of podman info --debug:
✗ podman info --debug
debug:
  compiler: gc
  git commit: ""
  go version: go1.10.4
  podman version: 1.6.2
host:
  BuildahVersion: 1.11.3
  CgroupVersion: v1
  Conmon:
    package: 'conmon: /usr/bin/conmon'
    path: /usr/bin/conmon
    version: 'conmon version 2.0.3, commit: unknown'
  Distribution:
    distribution: linuxmint
    version: "18.3"
  IDMappings:
    gidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 100000
      size: 65536
    uidmap:
    - container_id: 0
      host_id: 1000
      size: 1
    - container_id: 1
      host_id: 100000
      size: 65536
  MemFree:<PHONE_NUMBER>
  MemTotal:<PHONE_NUMBER>8
  OCIRuntime:
    name: runc
    package: 'cri-o-runc: /usr/lib/cri-o-runc/sbin/runc'
    path: /usr/lib/cri-o-runc/sbin/runc
    version: 'runc version spec: 1.0.1-dev'
  SwapFree:<PHONE_NUMBER>0
  SwapTotal:<PHONE_NUMBER>0
  arch: amd64
  cpus: 8
  eventlogger: journald
  hostname: user-All-Series
  kernel: 4.15.0-70-generic
  os: linux
  rootless: true
  slirp4netns:
    Executable: /usr/bin/slirp4netns
    Package: 'slirp4netns: /usr/bin/slirp4netns'
    Version: |-
      slirp4netns version 0.4.1
      commit: unknown
  uptime: 22h 38m 39.18s (Approximately 0.92 days)
registries:
  blocked: null
  insecure: null
  search:
  - docker.io
  - quay.io
store:
  ConfigFile: /home/user/.config/containers/storage.conf
  ContainerStore:
    number: 0
  GraphDriverName: vfs
  GraphOptions: {}
  GraphRoot: /home/user/.local/share/containers/storage
  GraphStatus: {}
  ImageStore:
    number: 1
  RunRoot: /run/user/1000
  VolumePath: /home/user/.local/share/containers/storage/volumes

Package info (e.g. output of rpm -q podman or apt list podman):
✗ apt list podman
Listing... Done
podman/xenial,now 1.6.2-1~ubuntu16.04~ppa1 amd64 [installed]

Additional environment details (AWS, VirtualBox, physical, etc.):

This works fine on Fedora 31, I would figure this is a problem with the conmon package and podman package interaction.
@giuseppe @haircommander @mheon Thoughts?

it seems like the latest conmon is installed but the version output seems incorrect (missing commit).  How was conmon installed?  It might just be an issue in the way we build the package

I think this is a build issue, so I am going to close, Reopen if I am mistaken.

For posterity; I can reliably recreate this issue on 1.6.3, but not on 1.7.0. Seems like that fixed it. It's also not ubuntu/mint specific.


Put Kubernetes API ref docs in the left nav.

This PR gives the Kubernetes API ref docs a presence in the left nav. This is not an elegant solution, but it is a step in the right direction.
https://deploy-preview-8435--kubernetes-io-master-staging.netlify.com/docs/reference/kubernetes-api/

/assign @zacharysarah

@steveperry-53 It works for now. 👍
/lgtm
/approve

Wow ... any lessons we need to write down? The solution looks so weird it requires some genius to figure it out -- I mean, change both the _index.md and the index.md ...


core: Fix march for linux

Changes to Linuxbrew's Core:

[ ] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your core changes, as applicable? Here's an example if you'd like one.
[ ] Have you successfully ran brew tests with your changes locally?

Fixes Linuxbrew/linuxbrew#1053

I'm currently splitting Linuxbrew/linuxbrew into Linuxbrew/brew and Linuxbrew/homebrew-core, as Homebrew did last week (two weeks ago?), so I'm not merging any pull requests right now. I'll cherry-pick this PR after the split is complete, probably next week. Sorry for the delay.

👍 Look's great! Thanks, Aleksey.

What should I do if I have a grid of machines with different CPU and want to specify a the oldest march, native won't work for me.

If you specify --build-bottle it will target -march=core2. Will that work for you?

The ability to override target architecture using an environment variable would be better and less error prone. I definitely will forget about bottles myself some time in future and I would need to teach other people to use that.

brew install --build-bottle foo installs a formula as normal but sets -march=core2 and disables postinstall. There's also the --bottle-arch option, but the value has to be from one of the values found in
https://github.com/Linuxbrew/linuxbrew/blob/master/Library/Homebrew/os/linux/hardware.rb#L3-L5

Is it possible to make Homebrew prefer value of -march in CFLAGS/CXXFLAGS to guessed ones?

No, CFLAGS and CXXFLAGS and other environment variables are intentionally removed from the environment before building for reproducibility. What architecture are you targeting? i.e. what value of -march do you want to use?

We have Xeons from Nehalem and up. So core2.
By the way, will the --build-bottle flag work with upgrade command?

A HOMEBREW_ARCH environment variable may be a better fit for your use case. Can you please open an feature request issue to discuss?

Okay. Should I do it in this repo?

Yes, please.

When you are going to cherry-pick this fix?

Sorry for the delay, and thanks for the bump, Aleksey. I'll do it today.

Moved to https://github.com/Linuxbrew/brew/pull/21


Add ssh-copy-id wrapper

can u assign this me, I have recently joined Oracle and under training this might help to gain some hands-on experience, any reference or description or any lead could be helpful to understand and resolve it. @brenns10

Hi @AnuravModak, sure. Feel free to reach out to me directly on Slack as well.
The purpose of the command, which should be called yo copy-id, would be to copy an SSH public key onto an instance using ssh-copy-id. Since Yo assumes you can SSH into the instance already, you'll need to specify whichever key you want to copy on via file. For example, suppose you have ~/.ssh/id_foo and ~/.ssh/id_bar, and the instance already has your key for foo on there, then the user would do something like this:
yo copy-id instance-name -i ~/.ssh/id_bar.pub

That command should add the public key to the instance's ~/.ssh/authorized_keys file. You would essentially pass through the -i value, and if it's not provided, the default behavior of SSH would be to copy all keys.
You can take a look at each of the commands in yo/main.py to see how they're implemented. You'd probably want to inherit from SingleInstanceCommand. And then you're just calling ssh-copy-id with the right arguments via subprocess.

Thanks for assigning me, Sadly, I am unable to connect to you on slack as it is asking me to contact admin. I hope we can carry forward the discussion here.
After scrutinizing the repo for the last 10+ hrs , especially "yo/main.py" as you have mentioned. I read and analyzed how different things were included and implemented and constructed. From my limited learning I have constructed the code below :
CODE : (changes that has to be made in "yo/main.py")
class copyIdCmd(SingleInstanceCommand):
name="copy-id"
description="copy an SSH public key onto an instance using ssh-copy-id"
def add_args(self, parser: argparse.ArgumentParser) -> None:
    parser.add_argument("instance_name",type=str, help="Name of the instance")
    parser.add_argument("-i","--identity-file",type=str, required=True, help="Specify path to the public key file")

def run(self) -> None:
    #Firstly, we need to extract instance name and public key file path from command-line arguments
    instance_name=self.args.instance_name
    public_key_file_path=self.args.identity_file

    # Extracting the instance using the name
    instance = self.c.get_instance_by_name(instance_name)

    # Checking if instance exists before moving forward
    if instance is None:
        self.c.con.print(f"Instance '{instance_name}' not found.")
        return

    #Now, construct the command as instance exists
    ssh_copy_id_cmd=[
        "ssh-copy-id",
        "-i",
        public_key_file_path,
<EMAIL_ADDRESS>    ]

    #Execution starts
    try:
        subprocess.run(ssh_copy_id_cmd,check=True)
        self.c.con.print(f"SSH public key copied to '{instance.name}' successfully.")
    except Exception as e:
        self.c.con.print(f"Error copying SSH public key: {e}")
    # currently not sure which error to catch most probably "subprocess.CalledProcessError"

** I am quite doubtful how to implement it in main(), maybe I need help here.......**
def main() -> None:
.
.
.
    # Add the CopyIdCmd command
    parser.add_argument(
        "copy-id",
        action=copyIdCmd,
        help="Copy SSH public key to an instance",
    )

    .
    .
    .
    ...........

Please let me know the further changes i need to do from my side
I hope, I was able to reach nearby your idea of resolving this issue.

(I updated your comment a bit to improve the formatting, you probably wanted to use fenced code blocks)
First, please provide code changes in a pull request. It's totally fine to share a very rough draft as a pull request and ask for feedback - just say so in the description. It's much easier to review code in the PR interface from Github rather than seeing it copy/pasted into an issue.
Second, to answer your question about main(), there's no code change required. Simply defining a subclass of SingleInstanceCommand is enough to add the command to Yo. This is a bit of magic that is courtesy of the "subc" sub-command library Yo uses. Essentially, any leaf class that inherits from the base class (in this case, YoCmd), gets added to the main CLI. Feel free to just try it and see :)
Third, here are a suggestions from what I see:

Please call it CopyIdCmd (upper case first letter). This matches the rest of the class names.
Take a look at the other classes which inherit from SingleInstanceCommand - you'll notice that they don't define a run() method, they define run_for_instance(self, instance: YoInstance). The SingleInstance command takes care of adding the proper command line argument and looking up the instance by name. All you need to do is the actual logic.
The actual logic looks good. I would prefer you catch subprocess.CalledProcessError rather than Exception. You "expect" that the command might fail, but Exception would catch other errors that might be due to bugs in Yo.

Firstly sorry for the rookie mistakes I have committed, I will keep those things in mind.
And, I made some changes and extended the same through a pull request.
Kindly review it and let me know.

Closed in #20


The pre-trained sytleGAN2 discriminator can not discriminate fake and real images

Hi, I want to use the pre-trained styleGAN2 discriminator as the supervision for training another image generation network. However, the pre-trained discriminator always outputs negative scores ( denotes fake images) whenever real or fake images are fed. Is it normal in GAN? Or is there a mistake in my usage?
Here are my codes.
def fit_to_stylegan_range(x):
    return  2 * x - 1  # Scale from range (0, 1) to range (-1, 1)

for path in files:
        name = os.path.basename(path)
        image =  torch.from_numpy(np.asarray(Image.open(os.path.join(path)))) / 255.0
        image = image.unsqueeze(0).permute(0, 3, 1, 2)
        image = torch.nn.functional.interpolate(image, size=(512,512), mode="bicubic")
        min_i = image.min()
        max_i = image.max()
        image = (image - min_i) / (max_i - min_i)
        print("image min:{}, max:{} ".format(image.min().item(), image.max().item()))

        image = fit_to_stylegan_range(image)
        d_fake = discriminator(image)
        prob_fake = F.softplus(d_fake)
        print("{} discriminator: {}({})".format(name, prob_fake.item(), d_fake.item()))

@chobao Hi! I know your question was long time ago, but I am facing the same issue. Were you able to solve it?


Kumulus Cloud

Project Abstract
This application serves as a follow-up grant  of the previous work Futur Protocol. This current project, titled Kumulus Cloud, stands as an important component in the Relai Network, specifically functioning as its decentralized compute and storage layer.
In this iteration of the project, we aim to establish and validate the efficacy of a decentralized infrastructure for compute and storage. To achieve this, we are leveraging a marketplace model similar to that of the Akash Network protocol, which has demonstrated significant success in decentralized cloud services. The marketplace approach allows us to harness a wide array of distributed resources, thereby enhancing scalability, redundancy, and data sovereignty across the network.
Grant level

[x] Level 1:  Up to $10,000, 2 approvals
[ ] Level 2:  Up to $30,000, 3 approvals
[ ] Level 3:  Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

[x] The application template has been copied and aptly renamed (project_name.md).
[x] I have read the application guidelines.
[x] Payment details have been provided (Polkadot AssetHub (DOT, USDC & USDT) address in the application and bank details via email, if applicable).
[x] I understand that 30% of each milestone will be paid in vested DOT, to the Polkadot address listed in the application.
[x] I am aware that, in order to receive a grant, I (and the entity I represent) have to successfully complete a KYC/KYB check.
[x] The software delivered for this grant will be released under an open-source license specified in the application.
[x] The initial PR contains only one commit (squash and force-push if needed).
[x] The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
[ ] I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

Hi @semuelle thank you for the feedback and the question

In your last grant application, you listed the Fusion Protocol as the next step, but this one is focused on something else and lists the protocol again as future step. Why the change?

Certainly, we initially planned to proceed with the Fusion Protocol MVP; however, upon further reflection, we realized that the compute/storage layer is essential component. Both Futur and Fusion Protocols will rely on it with backend services, functions, and other computational needs. Additionally, the Fusion Protocol will emphasize partnerships, particularly with Original Equipment Manufacturers (OEMs). We believe it would be advantageous to establish an initial compute/storage layer first. This approach allows us to refine Futur and also serves as a better foundation  for building the Fusion Protocol.

How do Futur/Fusion and Kumulus relate to another?

Futur and Fusion protocols are reliant on robust backend functionalities, including compute and storage capabilities, which will be supported by Kumulus.

For Futur Protocol, a dependable infrastructure that can handle high-performance tasks effectively is crucial for various tasks such as processing app submissions and downloads on devices, among other use cases.

The Fusion Protocol, on the other hand, is focused on establishing incentivized partnerships with OEMs, along with providing a marketplace and specialized tooling and infrastructure for devices that incorporate an adapted Futur store app, which varies based on the device type (e.g., phones, TVs, wearables).

Also there is a significant requirement for a backend infrastructure capable of managing data from these devices. This could be analogous to services like iCloud or Google Drive, where users can store their data,..

Additionally integration with IPFS is still planned and Kumulus could be augmented with IPFS integration (via Crust and the like) for use cases where immediate speed is not a priority, such as in cold data storage, archiving scenarios.

This approach ensures that our backend solutions remain versatile and scalable, effectively addressing both the short term and mid term  and future data management requirements of the Futur and Fusion protocols.

Furthermore, the architecture of Kumulus goes beyond serving only the Relai Network(Futur and Fusion) it is designed as a cloud computing marketplace and enables other projects to build and deploy their cloud-based applications on.

We have received several applications about decentralized compute in the past. Have you studied similar projects in our ecosystem (and related ecosystems) in terms of market fit and any reason why other projects might have been unsuccessful?

Indeed, we have examined projects within polkadot ecosystem (focused on computing but not storage)  such as DataGen Project. What we  noticed is that employed approaches that may not be ideally suited for on-chain execution, particularly for complex computing tasks. The blockchain, while transformative, is not inherently designed for high-throughput computing due to its limitations in speed and scalability when handling such tasks.
It is worth noting that project was at PoC stage is not live and there might be changes in directions in the future.
Our approach differentiates by adopting a model similar to the Akash Network's decentralized cloud compute style leveraging containerized technologies, in our case focusing on Kata Containers. Kata Containers uniquely combine the security benefits of virtual machines (VMs) with the resource efficiency and scalability of containers. This hybrid approach addresses critical vulnerabilities and performance bottlenecks , thereby offering a more secure and efficient platform and more innovation could be brought by adding gradual decentralization on orchestration, RBAC, …

Will you be relying on grants for the foreseeable future, or do you have a roadmap to self-sufficiency? Have you done any outreach towards or research on possible users/customers and market size?

Our project is currently in its initial stages of implementation. We are leveraging grants to kickstart these foundational pillars.
After successfully completing the initial phase, our plan is to grow  solidify our community and enter active funding rounds this year.
The project targets a wide and varied audience.
Future Protocol:

App developers : distribute applications across various platforms such as mobile devices, smart TVs, wearables, and any other devices supported by the Fusion protocol, requiring app stores.
Companies : establish their own customized app stores through app store white labeling.
Kumulus Cloud:
Provides services for Relai Network, including Fusion and Future Protocol.
Web2/3 projects having cloud computing needs (computing, storage, AI Inference, Training,…)

Fusion Protocol:

OEMs: infrastructure for managing user data from Fusion-issued devices and other related aspects.
Device buyers to purchasing devices on the Fusion marketplace chain
Device users purchasing services hosted or provided via Fusion (for example a decentralized Netflix hosted onchain and served via Fusion Smart TV,…)
Here is a report by messari about Depin Sector which is being more and more adopted and. The Kumulus cloud like Akash fall in this category.

I found manuals on your blog to publish apps and books. What application does this refer to? Can I test this myself?

The manual refers to the previous  Futur protocol application and you can follow it to test the assets deployment.

I sadly have to agree with @semuelle here. I'm also not in favor of this proposal.

Thank you @semuelle and @PieWol for the feedback.
I do understand ! Please feel free to close the PR anytime.

@morgueye4 thanks for your interest in our grants program.
I do agree with @semuelle and @PieWol that decentralized storage solutions & marketplaces are very challenging, and that none have really picked up so far. It's a very difficult problem to solve, and we already have a grant with moonsong labs that works on a decentralised storage solution. For there reasons, unfortunately I've decided not to add my approval here, neither.

I do understand ! Please feel free to close the PR anytime.

Understood, will close it. Thanks and feel free to apply again in the future.


Storybook support

Describe the bug
I am using storybook with tailwindcss. When running my app in dev mode, color theme switching works fine.
When using storybook, nothing happens to my styles, even though the class is correctly applied to the html node of the dom.
This is implemented with @storybook/addon-styling and this code in my .storybook/preview.ts:
export const decorators = [
  withThemeByClassName({
    themes: {
      dark: '',
      light: 'theme-light',
    },
    defaultTheme: 'dark',
  }),
]

Your minimal, reproducible example
none yet
Steps to reproduce
Install storybook and tailwindcss into a react+vite project, use tailwindcss-themer with @storybook/addon-styling
Expected behavior
As described.
How often does this bug happen?
Every time
Screenshots or Videos
No response
Platform
macOS, Chrome latest
tailwindcss-themer version
3.1.0
Additional context
No response

Thanks for opening the issue. I'd be happy to help. 😀
To do that I'll need a reproduction repo. I see you have instructions but the repo makes sure I see what you see while making things more maintainable on my end.

Hi, thanks for your swift reply. I was already working on an isolated example, as I am not able to share code from my actual project.
Here you go: https://codesandbox.io/p/sandbox/boring-leaf-x4yxsx
Thank you for taking the time.

I haven't prioritized looking at it yet (resolving some issues on different projects) but I hope to get to it soon unless someone else is able to take ownership of this.

You could probably achieve the same result by simply providing a decorator as follows. Docs
const withThemeProvider = (Story, context) => {
  const theme = context.globals?.theme || 'default-theme';
  return (
    <div data-theme={theme}>
      <Story />
    </div>
  );
};

const preview: Preview = {
  globalTypes: {
    theme: {
      description: 'Global theme for components',
      defaultValue: 'default-theme',
      toolbar: {
        // The label to show for this toolbar item
        title: 'Theme',
        icon: 'paintbrush',
        // Array of plain string values or MenuItem shape (see below)
        items: ['default-theme', 'theme-1', 'theme-2', 'theme-3'],
        // Change title based on selected value
        dynamicTitle: true,
      },
    },
  },

Sorry for the wait (things have been crazy on my end the last few months).
The issue you're experiencing actually has to do with tailwind's class detection. For those that want an in depth explanation, continue reading below, but you can fix this issue by including "theme-alt" anywhere in a file matched by your tailwind config's content field.
You can fix it by including .storybook/preview.ts in your tailwind config's content field.
You can even add something like this in your story file and be on your way.
const _ = "theme-alt"

Let me know if this fixes your issue @PhilippMolitor @SamyOuadhiGE

Now for the nerdy breakdown.
Tailwind generates a massive amount of classes due to all of the permutations derived from config. In order to make bundle sizes practical, tailwind inspects your code to see which classes you actually use and only includes those. The files it inspects is configured by your tailwind config's content field. On top of this, it expects to see the class represented in a string somewhere in those files. Thereby including something like const _ = "theme-alt" anywhere gets the related classes inserted in the bundle.
Also, even though .storybook/preview.ts has this string, it wasn't included by any of the globs in the content field.


Added basic macos implementation

This PR implemented basic macos game pad api.
The whole implementation is based on how SDL2 works.
Tested in Macos with XBox 360 controller.
And currently the button mapping is wrong. (which needs to discuss how to make it works for all platform)

@jice-nospam  Could you mind to help me to review it ?

And because lack of macos binding, currently i just forked iokit-sys, set the cargo dependency to it. And i will make a PR to upstream when everything is settled.

@jice-nospam Fixed, please have a look :)

@edwin0cheng you can squash !

@jice-nospam You can't squash it ? Do i miss config permission settings ?

@edwin0cheng ok squashed! I'll update the windows port right now


Feature request: Support telemetry

https://docs.rollbar.com/docs/telemetry
Your iOS SDK does it!
We use both for our react-native project and it's limiting to not have this supported on Android as well.

@sterlingwes Telemetry is now available in this release: https://github.com/rollbar/rollbar-java/releases/tag/v2.0.0-alpha.1
It will be in a non-alpha release in the coming weeks.


fix(versions): update Activiti/activiti-cloud-modeling-service versions into develop

UpdateBot pushed maven dependency: org.activiti.dependencies:activiti-dependencies to: 7.1.156

UpdateBot commands:
updatebot push-version --kind maven org.activiti.dependencies:activiti-dependencies 7.1.156 org.activiti.api:activiti-api-dependencies 7.1.156 org.activiti.core.common:activiti-core-common-dependencies 7.1.156 org.activiti.build:activiti-parent 7.1.156


Support for other gelsight-based sensors

Hi authors, I'm very impressed with your work and I'm interested in using your codebase with a GelSight Mini sensor. Would it be possible to adapt the code for this device? If so, could you offer some pointers on how to get started? Thanks!

Yes, our code can support the GelSight Mini sensor. But you need to modify something to adapt it. Here is the list: 1. mesh of the sensor surface 2.camera model (we apply fisheye camera model in our code). Then you can apply the method of system identification in our paper to infer the physical parameters of the sensor in the simulation.

Hi, I would like to ask about the specific type of the tactile sensor used in the paper. Is it a variant of DenseTact?

Thanks for your question, you can read our appendix A.6.1 for more details about the tactile sensor.

Thanks for your question, you can read our appendix A.6.1 for more details about the tactile sensor.

Thank you for your reply. Actually, my question is that the GelSight sensor used in the paper seems to be different from other normal GelSight sensors with a flat surface. So the sensor you used is designed by yourselves, or refers to other papers?

Hi, thanks for the question! Our sensor was designed and manufactured in the lab by one of our collaborators. Unfortunately, the design is not published as a paper yet. But our simulator can be used for sensors with flat surface, but you might need to generate the mesh model of the sensor elastomer and use the right camera model.


HasActivityInjector is Depreciated.#NOT WORKING

Hello,
No doubt its a great prototype for dagger2 . However, HasActivityInjector is depreciated and instead of HasActivityInjector, We have to use HasAndroidInjector.
 @Inject
DispatchingAndroidInjector<Object> dispatchingAndroidInjector;

Please, Update the implementation with change.
Thank you.

It should be replaced by HasAndroidInjector interface. Here is general scenarios.


Header v1 parsing code doesn't support UDP/Unix addresses

The v1 parsing and formatting code will parse UDP and Unix addresses as UNSPEC.

Can you link me directly to the offending code?

Sure! Here's where the parsing happens (only accounts for TCP4 and TCP6):
https://github.com/pires/go-proxyproto/blob/528b59d6162fc5463728b0e48a5ff5e73151eb38/v1.go#L37
And here's where the formatting happens (same):
https://github.com/pires/go-proxyproto/blob/528b59d6162fc5463728b0e48a5ff5e73151eb38/v1.go#L71

This seems to follow the assumption
https://github.com/pires/go-proxyproto/blob/528b59d6162fc5463728b0e48a5ff5e73151eb38/v1.go#L68-L69

I just re-read the spec and the comment above comes from it. And more

2.2. Binary header format (version 2)

(...)
It was also not possible to specify address families outside
IPv4/IPv6 nor non-TCP protocols.

That said, I think this can be closed as UDP and Unix sockets don't seem to be supported in V1.

Oops. Indeed, I just assumed v1 supported these features, but doesn't seem like it.


Workspace level auth session

As called out here https://github.com/microsoft/vscode/issues/127967#issuecomment-1464551714
We need some way to associate a session to a specific workspace. Scenarios like:

Codespaces are tied to a specific account and only that account has access
Azure Repos is similar

We have workspaces that we want to load and they can only be loaded by a specific account and that needs to be expressed somehow in API.
Today, Multi-account preference only exists at the global level... so when a user selects an account they want to use from getSession(..) that session then becomes the preference and will be returned when using the silent operations of getSession(). You can clear this preference using getSession(prov, scopes, { clearSessionPreference: true })... but that clears it globally so if you were using account A in workspace 1, you now have to associate that manually which means the user gets a prompt.
We need a way to associate a workspace to a specific session so we don't annoy the users all the time.
I have been thinking on this one using Configuration as an inspiration... here are a couple ideas:

vscode.authentication.updateSessionPreference(session, vscode.SessionPreference.Workspace); or updatePreference or setPreference or setSessionPreference... The idea here is that if we have a session, we can update the preference for this specific workspace.

but this has a flaw for something like Codespaces that might list all the Codespaces you can connect to, and then connect to it by opening that workspace... in other words, that proposal doesn't help if I want to say, "associate this session with this particular workspace"...
Maybe we need something like:

vscode.authentication.updateSessionPreference(session, workspaceUri); but this isn't really a pattern we've used before...

I'll take these proposals to API sync and see what we come up with there.

For now, I'll merge this in to https://github.com/microsoft/vscode/issues/177263 as the thinking is, at least initially, to use a Memento to store the account id and then allow the account id to be specified.


Additional unit testing for run-to-run bitwise reproducibility

This change requires rocPRIM PR #575
I've rebased it on top of rocThrust PR #431.
You can check out this commit db784c4 for a more specific diff.
Currently, we have tests that verify that the deterministic algorithms
for scan and reduce (available via the det and par__det_nosync
execution policies) produce the same results when run twice in a row
within the same test executable.
This change adds new bitwise reproducibility testing that is performed
across multiple test executable runs.
To do this, the test executable must be run twice. On the first run,
we hash all the inputs and outputs to/from the deterministic function
calls, and store those hashes in an SQLite database. We also insert
information about the ROCm version, rocThrust version, and GPU architecture,
into the database, since the results the deterministic algorithms produce
are allowed to vary if any those factors change.
On the second run, we hash the inputs/output again and check to see
if a row matching them (plus the ROCm version, rocThrust version etc.) exists
in the database.
This change:

Adds SQLite as a dependency in the CMake files. SQLite code is public domain.
Adds a library called CRCpp as a dependency in the CMake files. This library
provides a checksum algorithm that we can use for hashing. It uses a BSD 3-clause
license.
Add the database-based testing to the existing reproducibility tests in
test/test_reproducibility.cpp
Adds classes for database creation/manipulation and building hashes in
tests/bitwise_repro/

Because the run-to-run testing accesses a disk-based database file, it's pretty
slow, so I've disabled it by default. To turn it on, you must define an
environment variable called ROCTHRUST_BWR_PATH and set it to the path to
the SQLite database file to use for the testing.
If the database does not exist, to generate it, you must also define an
environment variable called ROCTHRUST_BWR_GENERATE and set it to 1.
This creates the database file given by ROCTHRUST_BWR_PATH and inserts
data into it as the run-to-run reproducibility tests are executed (the tests
will all pass in this case).
If you want to take an existing database and update it for a new
ROCm version/rocThrust version/GPU architecture, you can set
ROCTHRUST_BWR_GENERATE=1 and point ROCTHRUST_BWR_PATH to
the existing database file.

Why do we need to store the hashes for all ROCm versions if the hash is allowed to change between versions? Can this not be a simple file that's committed to the repository and regenerated when the implementation is changed? This way any changes can be reviewed and we don't need this over engineered database.

As I understand it, the requirement is that the deterministic algorithms must produce the same result for every unique combination of (ROCm version, rocThrust version, GPU architecture). So suppose that we went with the approach of storing the hashes in a simple file that's committed to the repository, and updated that file on every ROCm version change. If I'm understanding the problem and your suggestion correctly, then I think that the file would need to contain result hashes for all possible versions of rocThrust that can be run on the current version or ROCm, for all possible GPU architectures that are supported. This is basically the same as what the SQLite database file is currently. Storing the info in a database saves the trouble of writing code to find the correct value in the file and compare it with the current one, and makes updates easy if we need to change something.

Why do we need an entire dependency for computing a simple crc? a custom crc32 implementation is like 20 lines https://rosettacode.org/wiki/CRC-32
That's fair. I actually tied to write a version myself initially, but it was too slow without the precomputed table optimization that's used in the link you posted. I'll have to check if we have the license permission to use the Rosetta code version directly - if not, I'll educate myself on that optimization, and see if I can roll our own implementation.

As I understand it, the requirement is that the deterministic algorithms must produce the same result for every unique combination of (ROCm version, rocThrust version, GPU architecture). So suppose that we went with the approach of storing the hashes in a simple file that's committed to the repository, and updated that file on every rocThrust version change. If I'm understanding the problem and your suggestion correctly, then I think that the file would need to contain result hashes for all possible versions of ROCm that the current version of rocThrust can be run on, for all possible GPU architectures that are supported.

The idea was that because the file with the hashes are committed into the repository, they are automatically tied to a particular version of rocThrust. By extension, a particular version of ROCm contains a particular version of rocThrust. Similarly, a particular version of rocThrust is tied to a particular version of ROCm and by extension a parituclar version of clang that it contains. In theory its all one big package: when for example clang is updated and reorders the operations (its allowed to do this when --fast-math is enabled), that change only makes it over to the customer when a new version of ROCm is released, at which point we have already updated the hashes: they would always be those for the latest version of the compiler, for the latest version of ROCm, and for the latest version of rocThrust and rocPRIM. I guess that does depend on a relatively tight integration loop between releases of the compiler and updating rocPRIM and rocThrust.
Are you expecting that people mix and match ROCm/ROCm clang and rocThrust versions?

I guess I had assumed that people would be able to mix and match ROCm and rocThrust versions - for example, if they install rocThrust or ROCm via the Github repos, they are free to checkout whatever release tags they want, provided they can build and run together. I'm not sure how likely this is for the customers who've requested the bitwise reproducibility testing, but I thought it might be nice to cover the case.
Aside from the mix-and-match issue, there are a couple other less-significant factors I just wanted to mention as well - feel free to let me know what you think about them. Both rocFFT and rocSPARSE have implemented similar bitwise reproducibility testing in the past. I checked in with some of the devs on those projects, and the reasons they gave for going with an SQLite database mainly included:

The ability to query and compare results without having to do any text parsing.
The database stores a history that allows you to see how environmental changes affect reproducibility over time.
The bitwise repro tests are pretty slow. If a CI test machine has multiple GPUs installed, then multiple tests can be run in parallel, and they can read/write to the same database file simultaneously. I don't think this is currently done with any rocThrust tests, so this might not be applicable in our case.

Aside from the mix-and-match issue, there are a couple other less-significant factors I just wanted to mention as well - feel free to let me know what you think about them. Both rocFFT and rocSPARSE have implemented similar bitwise reproducibility testing in the past using databases, so I checked in with some of the devs on those projects. The reasons they gave for choosing to use a database mainly included:

If there is prior art on this topic I'm not as much against it.

* The ability to query and compare results without having to do any text parsing.
* The database stores a history that allows you to see how environmental changes affect reproducibility over time.

 I guess the downside is that one needs additional CI tooling for this to be visible. Out of curiosity, do rocFFT and rocSPARSE have tooling available for this?

 I guess the downside is that one needs additional CI tooling for this to be visible. Out of curiosity, do rocFFT and rocSPARSE have tooling available for this?

I don't believe there are currently any existing CI tools that have been built specifically for looking at the history of bitwise reproducibilty - I got the sense that the devs' idea was that, if such a history needed to be produced, it could be done pretty easily with some SQL queries (or a Python script that runs them).

I've removed the CRCpp library and replaced it with a custom implementation.

Added documentation to describe how to invoke the new tests.

Rebased to resolve conflicts and refactored a bit to remove compiler warnings when building other tests.


Myrmeleon patch

About the PR

the two fighters now have BecomesStation and should spawn on roundstart.
swaps 1 of the two water tanks to a high capacity one because someone complained
also adds 3 RV-8 auto-injectors to the pilot's freezer

Why / Balance
NOW THE MAP WILL WORK. SURELY.

somehow got myrmeleon and cestoda mixed together?? so im closing this


Package references contains duplicates

An extract from csx:
#r "packages\System.ValueTuple.4.3.0\lib\netstandard1.0\System.ValueTuple.dll"
#r "packages\System.ValueTuple.4.3.0\lib\netstandard1.0\System.ValueTuple.dll"
#r "packages\System.ValueTuple.4.3.0\lib\netstandard1.0\System.ValueTuple.dll"
#r "packages\System.ValueTuple.4.3.0\lib\netstandard1.0\System.ValueTuple.dll"
#r "packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll"
#r "packages\System.Xml.XPath.4.3.0\lib\net46\System.Xml.XPath.dll"
#r "packages\System.Xml.XPath.XDocument.4.3.0\lib\net46\System.Xml.XPath.XDocument.dll"
#r "packages\System.Xml.XPath.XDocument.4.3.0\lib\net46\System.Xml.XPath.XDocument.dll"

It might look harmless. For traditional targets (like net461) where number of potential references is low there is little overhead. For netstandard targets reference lookup takes 10-20 seconds (running in console), ending up with a list of over 300 lines for the example from #13, lots of duplicates.
Some caching/tracking of "seen" items is probably welcome. Process will be faster and will contain no duplicates.

Closed by 185713c37eede26c91881d6a0d0524c6e31fff8b

Some caching/tracking of "seen" items is probably welcome. Process will be faster and will contain no duplicates.

This is a good idea but probably needs to be tracked as a separate issue.


Subscribe ankr and integrate it for x-layer

See https://www.okx.com/xlayer/docs/developer/build-on-xlayer/rpc-endpoints#infrastructure-providers.

Already fulfilled in https://github.com/api3dao/chains/pull/346.


Not responding: custom made keyboard teleop node

Great work. This project has been really helpful to me lately.
I wanted to move the robot using WASD keys as follows.
import rclpy
from geometry_msgs.msg import Twist
from pynput import keyboard
import time

class KeyboardTeleopNode:
    def __init__(self):
        self.node = rclpy.create_node('keyboard_teleop')
        self.publisher = self.node.create_publisher(Twist, '/cmd_vel_joy', 10)

        self.cmd_vel_msg = Twist()
        print('initiated')

    def start(self):
        with keyboard.Listener(on_press=self.on_key_press, on_release=self.on_key_release) as listener:
            print("listener started")
            listener.join()

    def on_key_press(self, key):
        if hasattr(key, 'char'):
            if key.char == 'w':
                print("   w pressed")
                self.cmd_vel_msg.linear.x = 0.5
            elif key.char == 's':
                print("   s pressed")
                self.cmd_vel_msg.linear.x = -0.5
            elif key.char == 'a':
                print("   a pressed")
                self.cmd_vel_msg.angular.z = 0.5
            elif key.char == 'd':
                print("   d pressed")
                self.cmd_vel_msg.angular.z = -0.5

            self.publish_cmd_vel()

    def on_key_release(self, key):
        if hasattr(key, 'char'):
            if key.char in ['w', 's']:
                # time.sleep(1000)
                print('reset')
                self.cmd_vel_msg.linear.x = 0.0
            elif key.char in ['a', 'd']:
                # time.sleep(1000)
                print('reset')
                self.cmd_vel_msg.angular.z = 0.0

            self.publish_cmd_vel()

    def publish_cmd_vel(self):
        self.publisher.publish(self.cmd_vel_msg)
        print('published')

def main(args=None):
    rclpy.init(args=args)
    keyboard_teleop_node = KeyboardTeleopNode()
    keyboard_teleop_node.start()
    rclpy.spin(keyboard_teleop_node.node)
    keyboard_teleop_node.node.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()

It is publishing each time to the topic (checked from the printing statements). But, The robot moves only for the first command only and only to the move forward command "w". The following commands get stalled and Robot not responding. Do we have to try any async functions to make it work?
Thanks in advance.

H!! Should be async + make sure that move cmd doesn't overwrite with other commands. I will debug it more and see what causes the issue.

Thanks for the reply. I just connected to AP mode and used the SnowyAP for running the same code and it worked! The robot responds for w and a but not for s and d. Seems like it is not processing negative velocities.


Update parser.py

Changed line 51.
Previous code incorrectly parses a file if the '#' symbol is used in the header.
The new code correctly identifies the start of the table by noting the '#' symbol in between whitespace. This will break if a header either contains an empty line (because split() will return an empty list) or if the header contains a line that starts with ' # '.
I ran the code on the entire DSSP database, and I have not yet found any problems.

Codecov Report

Merging #2 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master       #2   +/-   ##
=======================================
  Coverage   78.94%   78.94%
=======================================
  Files           1        1
  Lines         114      114
=======================================
  Hits           90       90
  Misses         24       24

Impacted Files
Coverage Δ

DSSPparser/parser.py
78.94% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Multi-parameter optimization with custom loss function for probabilistic forecasting

Dear community,
I am currently working in a probabilistic extension of XGBoost called XGBoostLSS  that models all parameters of a distribution. This allows to create probabilistic forecasts from which prediction intervals and quantiles of interest can be derived.
The problem is that XGBoost doesn`t permit do optimize over several parameters. Assume we have a Normal distribution y ~ N(µ, sigma). So far, my approach is a two-step procedure, where I first optimize µ with sigma fixed, and then optimize sigma with µ fixed and then iterate between these two.
Since this is inefficient, are there any ways of simultaneously optimize both µ and sigma using a custom loss function?

Thanks for reaching out.  Your work has already generated a lots of interest on our side. ;-)  I have a proof of concept implementation in https://github.com/dmlc/xgboost/pull/5460 .  Lastest commit on that branch broke some functionality so it can't be used yet.
Just out of personal interest, I also looked into ngboost, in section 2.3 ii it stats:

Using a single tree per stage with multiple parameter outputs per leaf node would not be ideal since the splitting criterial based on the gradient of one parameter might be suboptimal with respect to the gradient of another parameter

And also from some experiments based on https://github.com/dmlc/xgboost/pull/5460, I agree with it.  It might be due to the gradient, or might be due to model capacity, I'm not sure yet.

Just in case I misunderstood something.  If you are looking for 1 parameter per tree solution, then existing code base has already supported it.  See /demo/guide-python/custom_softmax.py for an example on Python.

@trivialfis Thank you so much for you comments and suggestions, very much appreciated! Let me go through the material youve provided. Ill keep you updated on the progress.

Hi all,
I found this article that I think it may be helpful to this enhancement request for xgboost: https://towardsdatascience.com/regression-prediction-intervals-with-xgboost-428e0a018b
Ivan

Thanks for the reference, I will look into it.

Hi all,
I found NGBoost approach (https://github.com/stanfordmlgroup/ngboost) to conduct probability regression. It seems that their code allows to use any based tree learner to perform a regression analysis.
I have Python 3.6.5 with XGBoost 1.1.0 and NGBoost 0.3.10 and I gave try with the following code
** -->
import numpy as np
import xgboost as xgb
import ngboost
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
import multiprocessing
import matplotlib.pyplot as plt
if name == 'main':
cpu_count= 2 if (multiprocessing.cpu_count() < 4) else (multiprocessing.cpu_count() - 2)
x, y= load_boston(return_X_y= True)
x= (x - np.mean(x, axis= 0)) / np.std(x, axis= 0)
x_train, x_validation, y_train, y_validation= train_test_split(x, y, test_size= 0.4, random_state= 1969)
learner= xgb.XGBRegressor(max_depth= 6, n_estimators= 300, verbosity= 1, objective= 'reg:squarederror',
booster= 'gbtree', tree_method= 'exact', n_jobs= cpu_count, learning_rate= 0.05, gamma= 0.15,
reg_alpha= 0.20, reg_lambda= 0.50, random_state= 1969)
ngb= ngboost.NGBRegressor(Dist= ngboost.distns.Normal, Score= ngboost.scores.CRPScore, Base= learner,
natural_gradient= True, n_estimators= 1, learning_rate= 0.01, verbose= False,
random_state= 1969)
ngb.fit(x_train, y_train, X_val= x_validation, Y_val= y_validation)
y_preds= ngb.predict(x_validation)
fig, ax= plt.subplots(nrows= 1, ncols= 1)
ax.plot(range(0,len(y_validation)), y_validation, '-k')
ax.plot(range(0,len(y_validation)), y_preds, '--r')
** -->
I got the following warning message:
c:\temp\python\python3.6.5\lib\site-packages\xgboost\core.py:445: UserWarning: Use subset (sliced data) of np.ndarray is not recommended because it will generate extra copies and increase memory consumption
"memory consumption")
It seems that this error played a role because according the generated plot the boosting stage didn't work well. It is like the same tree was repurposed through out the entire process.
If someone could look into how to get these two packages to work together, then I believe we have the pathway to run probabilistic regression using XGBoost.
Many thanks,
Ivan

Hi all,
Previously, I reported that the boosting stage didn't work well. It is like the same tree was repurposed through out the entire process.
I believe that I found a way to overcome such issue. I needed to set a number of estimators for xgboost as well for ngboost. The code below shows this modification:
import numpy as np
import ngboost
import xgboost
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
import multiprocessing
import matplotlib.pyplot as plt
if name == 'main':
cpu_count= 2 if (multiprocessing.cpu_count() < 4) else (multiprocessing.cpu_count() - 2)
x, y= load_boston(return_X_y= True)

mean_scaler= np.mean(x, axis= 0)

std_scaler= np.std(x, axis= 0)

x= (x - mean_scaler) / std_scaler

x_train, x_validation, y_train, y_validation= train_test_split(x, y, test_size= 0.4, random_state= 1969)

# using only ngboost
ngb_1= ngboost.NGBRegressor(Dist= ngboost.distns.Normal, Score= ngboost.scores.MLE,
                                                    natural_gradient= True, n_estimators= 300, learning_rate= 0.01,
                                                    verbose= False, random_state= 1969)

ngb_1.fit(x_train, y_train)

y_preds_ngboost= ngb_1.predict(x_validation)

# using xgboost with ngboost
learner= xgboost.XGBRegressor(max_depth= 6, n_estimators= 300, verbosity= 1, objective=
                                                    'reg:squarederror', booster= 'gbtree', tree_method= 'exact', n_jobs=
                                                    cpu_count, learning_rate= 0.05, gamma= 0.15,
                                                    reg_alpha= 0.20, reg_lambda= 0.50, random_state= 1969)

ngb_2= ngboost.NGBRegressor(Dist= ngboost.distns.Normal, Score= ngboost.scores.MLE, Base=
                                                    learner, natural_gradient= True, n_estimators= 300, learning_rate=
                                                    0.01, verbose= False, random_state= 1969)

ngb_2.fit(x_train, y_train)

y_preds_hyboost= ngb_2.predict(x_validation)

fig, ax= plt.subplots(nrows= 1, ncols= 3, figsize= (10,5))

ax[0].plot(range(0,len(x_validation)), y_validation, '-k', label= 'validation')
ax[0].plot(range(0,len(x_validation)), y_preds_ngboost, '--r', label= 'ngboost')
ax[0].set_title("NGBOOST: validation & prediction")
ax[0].legend()

ax[1].plot(range(0,len(x_validation)), y_validation, '-k', label= 'validation')
ax[1].plot(range(0,len(x_validation)), y_preds_hyboost, '--r', label= 'hyboost')
ax[1].set_title("HYBOOST: validation & prediction")
ax[1].legend()

ax[2].plot(range(0,len(x_validation)), y_preds_ngboost, '-k', label= 'ngboost')
ax[2].plot(range(0,len(x_validation)), y_preds_hyboost, '--r', label= 'hyboost')
ax[2].set_title("NGBOOST - HYBOOST: prediction")
ax[2].legend()

plt.show()

Unfortunately, I still get the same warning message:
Warning (from warnings module):
File "C:\Temp\Python\Python3.6.5\lib\site-packages\xgboost\core.py", line 445
"memory consumption")
UserWarning: Use subset (sliced data) of np.ndarray is not recommended because it will generate extra copies and increase memory consumption
Does this issue influence the quality of the learned model by xgboost?
Kind regards,
Ivan


Author, are you no longer updating，We need you.

Author, are you no longer updating，We need you.

How's about I try to update it by forking it?

Cool. Thank you very much. Arm32. Can you make it work,

Whoops I'll try

hey boys. I'll do a 0.12.4 release


how to install this,the commmand rvc init doesn't work.

I just git clone this, and then run rvc init in my terminal. Can anybody tell me what I shoud do before I run this command？

i haven't tried the init yet, but you can get rvc by cd'ing in to the the repo, then doing pip install .

just do pip install . would be ok


mockhttp.Entry.can_handle doesn't take method into account

if there are two Entries with the same path but one handling e.g. GET and the other POST/PUT, only one of the Entries will ever be returned.

Fixed on master.


Added : tests

i have added few necessary tests.

@sOR-o can you add a screenshot of the tests running/successful?

Hi Eric, I appreciate your concern regarding the repository and the importance of its development with meaningful and valuable contributions. Here's the output of the updated tests that I have added:
.Ecpcli: Cannot delete. non_existent_directory doesn't exist
..EEE
======================================================================
ERROR: test_create_file_from_template_with_existing_file (__main__.TestAdditional.test_create_file_from_template_with_existing_file)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/saurabh/Documents/projects/CPCLI/tests/test_cpcli.py", line 58, in test_create_file_from_template_with_existing_file
    dir_path, file_path, _ = get_paths(self.test_file_name_1)
                                       ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestAdditional' object has no attribute 'test_file_name_1'

======================================================================
ERROR: test_clean_file_name (__main__.TestMisc.test_clean_file_name)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/saurabh/Documents/projects/CPCLI/tests/test_cpcli.py", line 20, in test_clean_file_name
    _test_file_name_1 = self.test_file_name_1 + "/"
                        ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestMisc' object has no attribute 'test_file_name_1'

======================================================================
ERROR: test_file_exists (__main__.TestMisc.test_file_exists)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/saurabh/Documents/projects/CPCLI/tests/test_cpcli.py", line 26, in test_file_exists
    dir_path, file_path, _ = get_paths(self.test_file_name_1)
                                       ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestMisc' object has no attribute 'test_file_name_1'

======================================================================
ERROR: test_get_paths (__main__.TestMisc.test_get_paths)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/saurabh/Documents/projects/CPCLI/tests/test_cpcli.py", line 14, in test_get_paths
    dir_path = os.path.join(self.test_file_name_1)
                            ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'TestMisc' object has no attribute 'test_file_name_1'

----------------------------------------------------------------------
Ran 7 tests in 0.001s

FAILED (errors=4)

I hope these changes get merged into the repository, and I look forward to becoming a contributor to this project.

.cpcli: Cannot create file. test_file_name_1/test_file_name_1.cpp already exists
.cpcli: Cannot delete. non_existent_directory doesn't exist
...cpcli: Cannot create file. test_file_name_1/test_file_name_1.cpp already exists
..
----------------------------------------------------------------------
Ran 7 tests in 0.001s

OK


Cursor and Gaze losing sync

Updated the HTK from a late-September build and suddenly the Cursor lags behind the users gaze. I am going to go back to an older build and see if that fixes it. Will report back

reverting did not fix the issue, it appears that it was an issue with a setting in the stabilization plane.
After playing with a few options, it is more or less working correctly now.


Update Celery to 4.1.1

Issue number: N/A
Description of change
This fixed the incompatibility with the latest version of kombu.
Checklist

[x] Have any relevant search models been updated?
[x] Have any relevant fixtures (fixtures/test_data.yaml) been updated?
[x] Have any relevant select-/prefetch-related field lists in the views and search apps been updated?
[x] Has the admin site been updated (for new models, fields etc.)?
[x] Has the README been updated (if needed)?

Codecov Report

Merging #958 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #958   +/-   ##
========================================
  Coverage    96.67%   96.67%
========================================
  Files          188      188
  Lines         5316     5316
  Branches       500      500
========================================
  Hits          5139     5139
  Misses         117      117
  Partials        60       60

Continue to review full report at Codecov.

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


Vulnerability of URL-PARSE dependency

This is a dependency vulnerability report:
Github dependabot notified me that this package uses a vulnerable release for URL-parse.
Please check the compatibility with minimum version 1.5.0.
Thanks
Alert:
 Dependabot cannot update url-parse to a non-vulnerable version
The latest possible version that can be installed is 1.4.7 because of the following conflicting dependency:

<EMAIL_ADDRESS>requires<EMAIL_ADDRESS>The earliest fixed version is 1.5.0.

Hey, it is fixed by auto bot here : https://github.com/lgraubner/sitemap-generator/pull/111
Is this package still maintained ?


Possibe split each codec to dynamic library

Just wondering if each codec like libvpx can be splitted out of avcodec dynamic library to its own, like libvpx.dll on windows.
Can someone tell me how can i reach this goal? I'm just curious if will it make decoding/encoding faster in performance or not

The only thing that makes sense is if you want to make a separate build with a different set of decoders etc for increased compatibility with more video/audio formats.. but it won't affect the performance, just the size of the output libraries. Currently only a small set of decoders is selected in the automated build to avoid licensing issues with patent/license encumbered codecs.

The only thing that makes sense is if you want to make a separate build with a different set of decoders etc for increased compatibility with more video/audio formats - That's what i want to do
I just don't know how could i reach my goal.
My goal is to reach somethink like... for example when I have added lame into that project, i want the lame codec to be exported as separate library, outside of avcodec...
Is that even possible? If so, do You know ways how can i achieve that? I have been searching for this on google etc. byt i didn't find any good results :/

I don't understand why you want it to be separate.. ffmpeg expects to know at build time what codecs it has

While unsure how to do that with Libav itself (it's entirely on how you
build that third-party library)
You can build your own plugin for the interface based on this one.
On Tue, May 24, 2022, 22:45 JezSonic @.***> wrote:

The only thing that makes sense is if you want to make a separate build
with a different set of decoders etc for increased compatibility with more
video/audio formats - That's what i want to do
I just don't know how could i reach my goal.
My goal is to reach somethink like... for example when I have added lame
into that project, i want the lame codec to be exported as separate
library, outside of avcodec...
Is that even possible? If so, do You know ways how can i achieve that? I
have been searching for this on google etc. byt i didn't find any good
results :/
—
Reply to this email directly, view it on GitHub
https://github.com/kidrigger/godot-videodecoder/issues/46#issuecomment-1136414174,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDSN5UEQ7HLNJ2WVY2FOBLVLU5XLANCNFSM5WV7UYDA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Upgarde to 2.6 (deprecation)

I got this deprecation when i upgarde to 2.6
The "Lexik\Bundle\JWTAuthenticationBundle\Services\JWSProvider\DefaultJWSProvider" class is deprecated since version 2.5 and will be removed in 3.0. Use "Lexik\Bundle\JWTAuthenticationBundle\Services\JWSProvider\LcobucciJWSProvider" or create your own "Lexik\Bundle\JWTAuthenticationBundle\Services\JWSProvider\JWSProviderInterface" implementation instead.
Any help ?

Hello,
Your warning seems to be triggered because of a config lexik_jwt_authentication.encoder.service. Did you override this configuration in your app configuration ? By default, it should use lexik_jwt_authentication.encoder.lcobucci that is the current preferred way and should not trigger any warning.
See here:
https://github.com/lexik/LexikJWTAuthenticationBundle/blob/master/Resources/doc/1-configuration-reference.md#full-default-configuration
PS: I'm only passing by and looking at my own issue.

Also got same deprecation on 2.6.3 version.
Configuration encoder service resolved to: lexik_jwt_authentication.encoder.lcobucci
Encoders in service argument  are also using this alias.
Any ideas why this could happen ?
Thanks !


Support for jetbrains suite?

Hey @mr-bo-jangles - thanks for trying out Tandem!
We currently have a lot of outstanding issues that we want to address first before adding on other editors ourselves, so it will take a while for us to circle back to this. We'll definitely be keeping the jetbrains suite in mind though!
If this is something you want to build yourself, we'd be happy to welcome pull requests as well! Check out: https://github.com/typeintandem/tandem/wiki/Interacting-with-the-Tandem-Agent


cabana: fix incorrect point size after adding new series to chart or changing series type

Issue: the point size is incorrect after adding new series/changing series type:
Kazam_screencast_00078.webm
Fixed: move point size related code to function updateSeriesPoints, call 'updateSeriesPoints' to update point size after create serries:
Kazam_screencast_00077.webm

Can you revert the opendbc change? Looks like that was added by mistake.

reverted


Support spell checking

The spell checking inspection doesn't seem to work for .tf files. I believe it needs to be enable via the plugin.xml file as described by this SO answer.

This would be super useful; looking at the code, it seems fairly straightforward to add quick support for things like comments & strings.
I'd be happy to take a crack at it, but would have no idea how to write the tests :joy:
Personally, I'd be super happy if spell-checking was enabled for comments, b/c then we're be able to at least comment everything out to do a quick spell check.
For me, "basic" spelling checking support would cover:

comments
HEREDOC
Strings

And then "advanced" would include things like resource names.

Initial spellchecking support will be available in version 0.7.9


Remove some obsolete .networkOff() tests

The one for npm is failing in CI:
https://circleci.com/gh/badges/daily-tests/133

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @paulmelnikow!

  Generated by :no_entry_sign: dangerJS against 2cec42aeb88be25b2d614e9d367829f2a7c4fc94


Added urllib3 as a package dependency

Dependency added to setup.py for issue #33

Ready for review/test.


Moving Core class to its own module

What is the change?
I moved the Core class to its own file.
Why is the change being made?

The Core class is, by far, the biggest class in the project, and it might as well have it's own module.
I have been wanting to do this for ages.
We are discussing various refactors of these high-level ARMI data objects, and so this will have to be done soon, one way or another.

close #1869

Checklist

[x] This PR has only one purpose or idea.
[x] Tests have been added/updated to verify any new/changed code.

[x] The code style follows good practices.
[x] The commit message(s) follow good practices.

[x] The release notes have been updated if necessary.
[x] The documentation is still up-to-date in the doc folder.
[x] The dependencies are still up-to-date in pyproject.toml.

@drewj-tp I added you as reviewer, because of your data model abstraction discussion.
The line-by-line diff here is probably unreadably insanely large. But I just moved the Core to its own file, there isn't anything else.
(NOTE: I don't have a release note, because this is not an API-breaking change. The Core is still importable from reactors.py. Feel free to disagree.)


GitHub Action: Add Python flake8 linting

@feelepxyz as recommended at https://github.com/dependabot/dependabot-core/pull/1376#issuecomment-748133905

@cclauss the CI failures seem unrelated, would you mind trying to rebase these changes on the main branch?

I'd say let's just fix those flake8 violations instead if ignoring them: https://github.com/dependabot/dependabot-core/commit/3796846fd141dbd2b3e4108e5b8ae58b390d558f

Thanks so much for this improvement @cclauss, just waiting for CI to finish and will then go ahead and merge this 🎉


API Documentation have a flattened list of all the modules and classes

Just a flattened list of all the modules and classes that is ordered by full module name.

I tried to do this. One solution is to set the left padding of the ul element in the side navbar, but the challenges is that changes the global settings.
A better solution is to add a class to the API reference page, and selectively apply this CSS modifier. But I for love of god can't figure out how to do that.
The toctree lives outside the main page content, so adding :class: to toctree definition in reference/index.md does not work. Similarly wrapping the contents of the same index.md in a  does not work.
I worry that the best solution maybe to create a custom toctree, somehow. But I am not at all sure how to do that. cc @jackgerrits

Agree. Principle at hand is recognition over recall.

Ah not done yet. The page with a flattened list of all classes is still not there.

Not sure if we can do this within the same site or not. Essentially it would break all of the anchors and class references etc, as now there would be two locations of the docs.
We could generate a new site and host it under a new directory but thats a bit confusing.
There's a builder which outputs the whole website as one big html file. It's pretty cool to see, but again not sure where we would host it in a way that makes sense for navigation.
Attaching it here for curiosity though: build-single-html.zip

Moving this to the next release.


We need to use the property value, not the C# property name to build …

This solve the issue https://github.com/zzzprojects/EntityFramework-Plus/issues/483

Hello @TheFireCookie ,
Thank you for the pull.
However, something feels weird. I believe the Item1 was not here by mistake but because Entity Framework will alias the column name to the property name and that's why the code is currently here.
Perhaps it was true for some older EF Core version and that has been modified in a later version?
Anyway, we will look at it and make sure that everything still works before merging this pull.

But here you are generating direct SQL Code if I'm not mistaken.
In the older, you were doing directly this
 primaryKeys = string.Join(Environment.NewLine + "AND ", columnKeys.Select(x => string.Concat("A.\"", x, "\" = B.\"", x, "\"")));
And columnKeys what this:
var columnNameProperty = mappingProperty.GetType().GetProperty("ColumnName", BindingFlags.Public | BindingFlags.Instance);                     columnKeys.Add((string)columnNameProperty.GetValue(mappingProperty));
Meaning it was directly always "Item2" of the new code.
I think the bug is there for a long time but maybe it doens't occur as often. But I'll let you be the judge 👍

Got the same bug here and Pull Request from @TheFireCookie fixed the problem on my side...

Hello @TheFireCookie, @pitming  ,
Sorry for the long waiting.
A new version has been released v1.9.0, it's a hybrid of your fix.
From our test, we found out that sometimes the relational name is used and sometimes the property name is used (via an alias) depending on the number of the primary key of your entities.
I'm not sure if we are missing some case but we hope that it will fix your case.
Let me know if the latest version works correctly.

(We will close this pull since we can continue the discussion on the issue #483)


Clarification on binding

I saw in #6 that some non-literal strings are accepted. Is import(someDynamicString) okay, where someDynamicString is a string referencing a valid binding?

Oh, and an unrelated comment: shouldn't this be listed in the proposal repo as a stage 0 proposal?

Yes, that is true. Is that unclear from the spec?
This has not been proposed to the committee and as such is not a stage 0 proposal.
Closing since it doesn't appear that there's a spec bug here, but happy to reopen if you can point out ways in which this is not clear.

Okay. Thanks!


363 enable light/dark mode with a preference for user system settings

How to test locally
Start the demo app locally

(optional) Start the python backend server using npm run start:backend
Start the frontend: REACT_APP_ENABLE_DESIGN_DEBUG=true npm run start:frontend

The ENABLE_DESIGN_DEBUG variable enables you to emulate each step of the demo app

Test this MR
This MR adds light/dark mode functionality to the demo app to support developers who may have a preference or struggle to read in one mode or the others. By default, the mode will default to the system preference provided by the operating system of the user.
Once the user overrides with their preference, it is stored in a local storage key named theme.
Testing system mode

Open the demo app
It should match your operating system preference.
Change your operating system preference, the app should update to match (sometimes a page refresh is needed).

Testing preferred setting

Select "light" or "dark" mode.
Refresh the page
The selection should persist despite your OS preference.

Closing in favor of https://github.com/platformsh/demo-project/pull/365 to support demo-runthrough check being able to pass with a shorter default branch name


Enter key doesn't split blocks

Pressing enter in a cell doesn't split the block but inserts a new row.

Why not put an pluginOption:
hotkeys: {
  "new-row": "enter",
  linebreak: "mod+enter",
  "next-cell": ....
}

I like that idea too :)


FR: Support for Xshell terminal

Hi,
could you add support for NetSarang Xshell? https://netsarang.com/en/xshell/
I added it as a custom terminal, and used the test feature, it correctly opened a local session, so I guess it supports invoking it via CLI. It also supports opening new tabs vs new windows.
Thanks a lot. :)

It's just that to properly open any arbitrary connection in a terminal or other program like xshell, xpipe needs to be able to call the program via its CLI and pass all relevant options. It usually does it by creating and passing a temporary script to be executed that will open the connection.
But since xshell does not support that, we kinda have to choose the second best option and call it differently, in this case by manually passing the connection information like username, host, etc. This is however not a very good solution as you have to enter any passwords, keys, etc. in xshell again when launched because we can't pass that information. It's better than nothing though.
If it would support the same level of CLI interaction as for example you can do with Windows Terminal, then I could add full support.

It's just that to properly open any arbitrary connection in a terminal or other program like xshell, xpipe needs to be able to call the program via its CLI and pass all relevant options. It usually does it by creating and passing a temporary script to be executed that will open the connection.

Well, Xshell supports session profiles (.xsh files) in which it stores all the info needed to connect to a server. It can also open all sessions files contained in a path.

So the script you mentioned could actually be that session file, but it should be in .xsh format, I have to check if it is documented, or I can pass you an example so you can check if it contains all needed parameters used by Xpipe.

See here: https://netsarang.atlassian.net/wiki/spaces/ENSUP/pages/419957436/Xshell+Command+Line+Option

So I think there are two options here:

Generate a xsh by ourselves to dynamically launch any connection
Find an already existing xsh file in the sessions dir that matches the hostname/port/user and then launch that

I think option two would make more sense

I think option two would make more sense

I initially discarded the second because it would mean maintaining a link in case they are renamed or deleted, etc.
How would xpipe link to the .xsh? by name of the server? Could work, but it means the user has to have them named in a specific way.

I can just scan all the .xsh for a certain hostname that is used in the xpipe connection and then call xshell with the found .xsh.
I.e. we would scan all .xsh files to find one that contains Host=<hostname>

Wouldn't that be slow? It's cool though, dynamic and tight integration. :)

Not really in terms of other standards. Searching the files for a fixed string should be quick

That's the best solution then.
Be aware that in the Sessions folder there could be subfolders.
This is my sessions folder:

And this is how I navigate it in Xshell (simple and efficient way):

I found this thread while I was trying to setup XPipe and Xshell as well, from a normal windows terminal I can just type:
xshell $hostname
or
xshell $sessionname

Can the shell function in xpipe just pass the "name" from the xpipe config to xshell, so when you hit the shell icon it just sends "xshell $objectname"?

Yeah I forgot about this issue somewhat and now my xshell trial is over. I would need to first purchase it to test it locally.
Just calling xshell <name> would be possible although a bit basic.

my xshell trial is over. I would need to first purchase it to test it locally.

there's the new open beta for v8. you could use that. I just installed it.
I agree that calling xshell with the hostname is a bit basic. your initial proposal is much better.

Oh it's free for home personal use now, fyi.
https://www.xshell.com/en/free-for-home-school/

Oh it's free for home personal use now, fyi.

it was always free for personal use, it had a session limitation of 8 initially (or 10, can't quite remember) but they increased that last year.

Well I guess it's up to interpretation if this constitutes personal use.
But the beta looks to be a good idea as that is not limited for personal use.

My initial proposal was of course much more work. Just adding a button to launch xshell with the specified connection name is very easy. And if you keep track on keeping your connection names consistent, that would work

So we can have the easy thing quickly? :)

So this simple launch functionality is implemented in https://github.com/xpipe-io/xpipe-ptb now

So I worked on this more to introduce a general solution for external clients like xshell, mobaxterm, termius, and others.
Right now it can start up a local SSH server that will connect to any connection in xpipe. It is working fine so far, but with xshell I can't get it to launch properly. I'm running "C:\Program Files (x86)\NetSarang\Xshell 8\Xshell.exe" -url ssh://"Christopher Schnick"@localhost:21722 -i "C:\Users\Christopher Schnick\.xpipe\ssh_bridge\identity" to connect to that local server but xshell always asks me for a nonexistent passphrase:

If I add the connection manually in xshell it works fine.

All right I think I managed to implement support for xshell the best I can in the latest PTB: https://github.com/xpipe-io/xpipe-ptb

Alright I think I managed to implement support for xshell the best I can in the latest PTB

Is there still the passphrase issue of previous post?

No, I figured it out. Xshell uses their own key storage and format so I had to work around that. It seems like it does not accept file paths for openssh keys in that cli.
The idea now is that you have to add the key with the right name to Xshell manually once to link it to xpipe, but after that everything should work automatically.

The idea now is that you have to add the key with the right name to Xshell manually once to link it to xpipe

I just tested it, and it works.
Here's the steps:

launch/open Xshell's Xagent (xshell's ssh agent)
click on Manage Keys
Import the private key from %USERPROFILE%\.xpipe-ptb\ssh_bridge\xpipe_ptb_bridge
Xagent creates the corresponding private key (in NSSSH format) in its data folder

It seems like it does not accept file paths for openssh keys in that cli

I noticed that importing private keys the resulting key is in NSSSH format, I wonder if maybe it was just a matter of using that kind of key.

I guess the xagent works too, I just added the key to xshell itself.

Yes I think they do the same thing.

Alright so can I mark this as completed? Or is there anything else?

Not yet. Didn't test with xshell connections yet.
So, this version doesn't "integrate" with existing Xshell connection files right?
So, how do I create a connection through Xshell, from scratch? I just configure a new terminal?

I interpreted your original issue as adding support to use xshell as a terminal in xpipe. Then that discussion moved towards calling xshell connections from xpipe, mainly because the cli did not support what I initially planned and that was the second best option. When this was implemented properly, I removed the launch xshell connection button again,

Do you also want the button to launch an existing xshell connection with the same name from xpipe?

My original request was to have integrated support for Xshell, recognizing the existing connections configuration files when scanning the local machine (like for docker for example).
Now if I understood correctly, you implemented a general way that works with other terminal apps, and in order to work you need to create a config keeping the name of the session consistent with the one configured in Xshell, is it correct?
It would be cool if during the scan of the machine you recognize the Xshell data folder with the config files and show the existing connections "automagically" like it happens with Docker etc.
If that's too difficult, an easy way to add an Xshell connection with the name parameter that reflects the config file.
Under the "Local Machine" main entry, there's docker, kubernetes, SSH, it would be great to also have a terminal section: Xshell (or whatever other app is supported) with the existing connections right below it. :)

The thing with essentially importing connections from xshell is that the available data that xpipe can use differs from the one xshell uses. It won't be possible to just seamlessly use all xshell connections without any user effort. Because xpipe handles ssh connections completely differently internally.
That is why I added a button to open a connection in xshell with the same config name. But then I removed it because I liked the terminal integration more. But I can readd the button.

I would simply use a different icon representing the terminal app, but I still can't understand how to add a new connection. For me it's not so intuitive it seems. :)

I added the button again in the latest ptb to open a connection with the same name in xshell

Can you explain how to add/use this button? Can't find how to add an existing xshell connection to the UI:

There is a button here that will launch an xshell connection with the same name. If you keep your server names consistent with xshell, this should work properly:

There is a button here that will launch an xshell connection with the same name

Can't find that submenu with "Open in Xshell", where should I click to open it?

The latest PTB should show that menu when right clicking any ssh connection. The idea is that you will probably add the same connection in both xpipe and xshell with the same name.

The idea is that you will probably add the same connection in both xpipe and xshell with the same name.

Ok, got you.
Is the "Name" field in Xshell the one to be configured in xpipe's connection "Connection Name" field? I ask because it's not working. When I launch from xpipe it opens xshell, but not the connection. Maybe it doesn't support spaces in the name?

Does the command xshell "RPi4 Argon" work for you in the terminal?

Ok, it's the spaces in the name, now it opens the connection, but it doesn't login using xshell's configured connection. it seems like it simply connects to the host using xshell executable, but doesn't leverage the already configured connection with the same name.

Does the command xshell "RPi4 Argon" work for you in the terminal?

Nope.

Sadly both my shell 7 and xshell 8 don't start up anymore and I don't know why.
If you find a working command to launch a xshell connection with a name (ideally also with spaces) from the command line, I can just implement that. Because right now it just runs  xshell "RPi4 Argon"

Running xshell -? from cmd I see this:

what is the session_path?

Just found out: it's the path to the session file of the specific connection.
This works perfectly and connects to my RPi4: xshell "d:\WinFolders\Documents\NetSarang Computer\8\Xshell\Sessions\Links\HomeLab\rpi4argon.xsh"

Is there a way to automatically determine the folder? It looks like in your case it is a custom location

Since xpipe is developed in java, here's how to get the default Documents folder path for the user: https://stackoverflow.com/questions/9677692/getting-my-documents-path-in-java
Under that, you have always this path for sessions folder:
DOCUMENTS_FOLDER\NetSarang Computer\8\Xshell\Sessions

So the the thing with recreating the tree in xpipe is that it is possible in theory but would require quite a bit of work only to have very limited functionality. Because many people would probably interpret this as being able to completely import and use xshell connections which isn't really the case here.
I fixed the launch xshell button to use the absolute path in the documents directory in the latest PTB just released. That should work now at least.

I still don't see the added value of completely mirroring the xshell connection tree. Why not use xshell directly for that? That is why am currently focusing on a small convenience button to quickly launch xshell if needed.
Does the launch at least work correctly in the latest PTB now?

Does the launch at least work correctly in the latest PTB now?

Yes it does. Tested also with spaces in the name. Good job.

I still don't see the added value of completely mirroring the xshell connection tree. Why not use xshell directly for that?

One of the things I liked about xpipe is the discovery mechanism for Docker, existing ssh user config connections, etc.: having xshell part of the same discovery process with connections automatically show in their own Xshell section would be really great. But it's your call, that's just a user opinion. In theory, if possible, I would expect the same thing for all terminal apps integration.
If you want to generalize the approach: when creating an SSH connection, let user choose depending on which terminal app he set in the options, and adapt the configurable options to the specific app. Right now I have to create a dummy ssh user connection specifying None to authentication/key/etc. just to have a shortcut for the right-click "Open in Xshell". Not really clean/elegant, IMHO, and it requires maintenance on the user side when you change connections in Xshell.

For me, it would make the most sense if xpipe could just call xshell like it works in a terminal or command prompt. I can just type xshell $hostname and it just opens xshell and connects just fine, including using my existing ssh keys?

I can just type xshell $hostname into terminal and it just opens xshell and connects just fine, including using my existing ssh keys?

It can't work like that: xshell has its own keys and configuration, it doesn't use OpenSSH keys, agent, etc.

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

PS C:\Users\Kyle> xshell llm

Doing this in powershell/terminal opens xshell and connects me to my existing server, via DNS hostname, which xshell already has a ssh key setup for, so it autoconnects and everything. So why can't xpipe send this type of command ?
(my network has hostname/dns suffix configured, so I don't need the whole FQDN)

If you check last 10-15 posts we have been discussing all this, and you'll see that xshell supports this from CLI:

So tell me, in xshell you have a preconfigured llm.xsh containing key/password and other config options for that host?
Can you please check if you have a session file called llm.xsh in YOURDOCUMENTFOLDER\NetSarang Computer\8\Xshell\Sessions?
Another test: xshell <IP_ADDRESS> (where the ip is the one for llm), does it work without asking for pw/key or whatever?

I think I need to elaborate on a few things here. Xshell is a competitor of xpipe and my main goal is developing a project that is arguably better and has more features than xshell. Looking at the detailed features of xshell, I think xpipe can match almost all features now while also providing many that xshell doesn't have. Obviously it will never be perfect, everything is subjective, and for some users xshell might still be the better option if it comes to specific features. One of the main things that makes switching more difficult is the inherent inertia of switching to something new and the fact that xshell has a vendor lock-in with their proprietary key formats and other things. So the main goal here is to make migration easier.
The terminal launcher support for xshell is for users who migrated from xshell but still like the actual terminal features of xshell and maybe have a lot of things customized there which would make switching to another terminal difficult. The button to open a session file is intended to allow users who migrated from xshell to still quickly open a connection in xshell if they still need it for some reason. I would call them migration helpers more than actual features. Also if xshell's CLI wasn't lacking so much functionality, this implementation would have been much easier and better.
Being able to specify the exact terminal for every SSH connection might be useful in some cases like this, but I don't think it would be worth it to introduce another configuration option for that. If you create dummy connections just to launch xshell, I don't see why you have to create them in the first place. I mean you could just use xshell directly for that. That button is intended for cases when you have added the same connection to both xpipe and xshell.
If both the terminal launcher and the button to open a specific connection by name in xshell work, I would consider this as completed considering the circumstances.

If there is any feature you would like to see in xpipe that prevents you fully from switching from xshell, feel free to open a feature request. I consider all feature requests.
But it is not the long term goal to fully integrate with xshell, the goal is to allow for a smooth migration considering the limitations of xshell's proprietary nature.

Xshell is a competitor of xpipe and my main goal is developing a project that is arguably better and has more features than xshell. Looking at the detailed features of xshell, I think xpipe can match almost all features now while also providing many that xshell doesn't have.

glad that you cleared this out. IMHO, I don't see Xshell as a competitor of xpipe, because I don't see xpipe as a full-blown terminal app like xshell, securecrt, etc. maybe I'm missing something, but the configuration options for a terminal session I see in those apps are not in xpipe yet.
I see xpipe like a sort of central hub for remote connections of various types: vnc, rdp, ssh, etc. but I don't see right now xpipe being the best app for each of those single domains. I hope it will become so, but that's not my perception right now. So for telnet/ssh/serial, I'll keep using xshell, even though I'd like to have xpipe as a central point of management of all connections.
Maybe I might be missing something, i just wanted to express my feeling as a user, and I thank you very much for the support and the fact you're open to discuss with users about xpipe developement, it shows you care about users, and that's an excellent thing.

I would categorize Xshell as an SSH client with an integrated terminal. Up until now, pretty much all SSH clients had their own integrated terminal. But due to recent developments, e.g. the introduction of Windows Terminal and other terminals for Windows, XPipe was created without an integrated terminal. Because I would argue you can get a better experience with a dedicated terminal like Windows Terminal in combination with xpipe than something integrated as in xshell or others. Also makes my development life easier. Now I know that this might be subjective, but if you look forward into the future, every improvement that tools like Windows Terminal will receive over the years, also improve the overall user experience in combination with xpipe.
The same goes with other things like RDP and also X11-forwarding for SSH as you get with xmanager. XPipe can launch RDP connections by using the native Microsoft tooling for that and can X11-forward on Windows by using WSL as a native X11 server. So xpipe is also trying to create better solutions for graphical connections with more modern approaches than xmanager.
For serial, XPipe 11 will introduce serial support. This will take a while until it is stable as it is not really tested yet. So it will be more of a community effort by crowdtesting it. But once it is, serial should also be covered by XPipe.
And for others like telnet, you can create a feature request for that if you would like to see that. Because that could be implemented similar to the serial support.
But yeah in general it is the plan to improve the various features such that it is the best tool for the job.
Xshell and others are much older than xpipe, so there is some catching up to do in terms of development time.

This is now released in XPipe 11: https://github.com/xpipe-io/xpipe/releases/
Feel free to report any issues if it does not work as expected.


Typo

There is a typo in the FAQ section: "Create a fork of this repository (called the upstream repository) if you not before", I believe this should say "if you have not before".
In the Grading section, it says "Quality of oresentation of graphs and tables (30%): Are they well-labeled? Do they have titles? Do they have legends? Are they formatted well?" Here, "oresentation" should be "presentation"
Also, in the problem set, question 8 says "Can think of any limitations", when it should say "Can you think of any limitations"
I have attached screenshots:

Hi Aidan,
Thank you for providing these. Please associate Issues/questions with the corresponding repository for the typo. For example, some of these correspond to Problem Set 2 and should be placed within the PS2 Issues tab.
On that, I encourage you to submit typo corrections as pull requests wherever possible so they are presented in context. This is especially true for typo corrections to the class materials page.
I provide instructions to pull request specific commits in the class materials, so you do not send through answers to problem sets if you do not want.
The goal is not only to have an eagle eye for typos, which you have, but also to learn best practices for getting them fixed efficiently, which is a skill that applies beyond this class.