Raspberry Pi4: GPIO Access and Hardware Revision Missing

Describe the bug
Accessing the GPIO functionality on a Raspberry Pi4 is hindered by some special behaviour, that seems to be NixOS specific: /proc/cpuinfo is missing the hardware revision, and some memory protection mechanisms prevent controlling GPIO pins. Therefore, both the piogpio C library and the RPi.GPIO python library do not work on NixOS. While libgpiod from nixpkgs works fine, it lacks lots of functionality (I2C, PWM, event callbacks, ...).
Working around the hardware revision checks by patching the pigpio C code, one then hits some memory protection settings, resulting in a permission denied error.
To Reproduce
Steps to reproduce the behavior:

Build the current pigpio v79 pigpio.nix (without the patch)
Execute nix-shell -p pigpio --run "pigpiod" on Raspberry Pi4 as root ->

2021-05-14 15:48:59 initCheckPermitted:
+---------------------------------------------------------+
|Sorry, this system does not appear to be a raspberry pi. |
|aborting.                                                |
+---------------------------------------------------------+

Patch pigpio to ignore the hardware revision checks (Pi4Revision.patch.txt), Execute nix-shell -p pigpio --run "pigpiod" on Raspberry Pi4 as root -> initPeripherals: mmap gpio failed (Operation not permitted)
Build RPi.GPIO for Python rpigpio.nix.txt, in a root nix-shell with this python lib the Raspberry wont be recognised as Raspberry Pi4 at all and the library will raise an error on import.

Expected behavior
/proc/cpuinfo should contain the Revision field to be compatible with other operating systems and common Raspberry Pi libs.
GPIO memory should be accessible.
Additional context

Original bug report against pigpio
Memory access issues on 64 bit linux, solved with correct kernel parameters
Related to similar problems on Raspberry Pi3 on NixOS

Notify maintainers
@thoughtpolice
Metadata
 - system: `"aarch64-linux"`
 - host os: `Linux 5.10.17, NixOS, 21.05pre289039.d1601a40c48 (Okapi)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.10`
 - channels(root): `"nixos-21.05pre289039.d1601a40c48"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

I also ran into that problem. I think the hardware revision problem is connected to the fact that NIxOS runs a vanilla kernel per default and not the (highly patched) kernel from the raspberry foundation. Did you try to run the raspberry pi kernel?
I.e.: boot.kernelPackages = pkgs.linuxPackages_rpi4; in the configuration.nix.

Yep, it is running this kernel version. Here is the relevant part of the configuration.nix:
boot = {
    loader = {
      # Use the extlinux bootloader instead of Grub.
      grub.enable = false;
      generic-extlinux-compatible.enable = true;

      raspberryPi = {
        enable = true;
        version = 4;
        # Stuff that goes into /boot/config.txt
        firmwareConfig = ''
          iomem=relaxed
          strict-devmem=0
        '';
      };
    };

    # Must use a custom raspberry pi 4 kernel for drivers
    kernelPackages = pkgs.linuxPackages_rpi4;

    # Makes the TTYs working
    kernelParams = [
      "8250.nr_uarts=1"
      "console=ttyAMA0,115200"
      "console=tty1"
      "iomem=relaxed"
      "strict-devmem=0"
    ];
  };

The iomem=relaxed and strict-devmem=0 lines are taken from the second bug report against pigpio, but I am not sure if they really make it to the configuration. The Debian wiki also mentions this (section GPIO support), as the default kernel configuration seems to be the cause of at least the mmap error.

@sheepforce
I have a couple of pure Linux libraries.

lgpio  access local GPIO - http://abyz.me.uk/lg/lgpio.html
rgpio  access local and/or remote GPIO via a daemon - http://abyz.me.uk/lg/rgpio.html

They are not as "powerful" as pigpio but may do what you want.

I gave the rgpio and lgpio versions a quick try (thank your for the tip @joan2937) and the examples actually work. At least I could turn on my LED on the GPIO pins using the rgpiod daemon and the rgs commands. Without having a look at all the C code; why do they work? What are they doing differently than pigpio?

They are pure Linux, they do not use any special features of any particular SBC.
pigpio is tailored to the Raspberry Pi, it will not work an any other SBC.  It uses Broadcom features to do things which are  not (without a GREAT deal of effort) possible on other SBCs.  It needs to identify the Pi model to decide things like how many cores and GPIO.  This identification step is often what goes wrong on other OSs running on the PI.  They are missing a needed hook.  It's never insurmountable but is not something the pigpio maintainers can generally help with as it is OS specific.  Our main goal is ensuring pigpio works on PiOS (Raspbian as was).
The motivation behind lgpio/rgpio was to provide general purpose GPIO libraries using the new /dev/gpiochip interface rather than the deprecated sysfs interface.  They should work on any Linux SBC out of the box.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/raspberry-pi4-gpio-permissions/12526/3

Still important to me

I'm interested in accesing the hardware PWMs and the I2C of the Raspberry Pi 4 but I wasn't able to get it to work. I used tried to load the overlays using the following configuration:
  # A bunch of boot parameters needed for optimal runtime on RPi 4B
  boot.kernelPackages = pkgs.linuxPackages_rpi4;
  boot.kernelParams = [
    "zfs.zfs_arc_max=134217728"
    "console=TTYAMA0,115200"
    "console=tty1"
    "8250.nr_uarts=1"
    "iomem=relaxed"
    "strict-devmem=0"
  ];

  # Enable SATA-HAT GPIO features
  boot.loader.raspberryPi = {
    enable = true;
    version = 4;
    firmwareConfig = ''
      iomem=relaxed
      strict-devmem=0
      dtoverlay=pwm-2chan,pin=12,func=4,pin2=13,func2=4
      dtoverlay=w1-gpio
      dtparam=i2c1=on
    '';
  };

  # Load PWM hardware timers
  hardware.deviceTree = {
    enable = true;
    filter = "*-rpi-*.dtb";
    overlays = [
      {
        name = "pwm-2chan";
        dtboFile = "${pkgs.device-tree_rpi.overlays}/pwm-2chan.dtbo";
      }
      {
        name = "w1-gpio";
        dtboFile = "${pkgs.device-tree_rpi.overlays}/w1-gpio.dtbo";
      }
    ];
  };

  # Enable I2C
  hardware.i2c.enable = true;

Anyone has successfully loaded these device tree overlays? I am not sure I'm doing it the right way

And running the dtoverlay commands using a systemd service, if anyone is interested in my config you can find it here

How do you get yours to work? Mine complains about device-tree_rpi in:
    overlays = [
      {
        name = "pwm-2chan";
        dtboFile = "${device-tree_rpi.overlays}/pwm-2chan.dtbo";
      }
      {
        name = "w1-gpio";
        dtboFile = "${device-tree_rpi.overlays}/w1-gpio.dtbo";
      }
    ];

Errors with:
unpacking channels...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)
building Nix...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)
building the system configuration...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)

@hexop

And running the dtoverlay commands using a systemd service, if anyone is interested in my config you can find it here

How do you get yours to work? Mine complains about device-tree_rpi in:
    overlays = [
      {
        name = "pwm-2chan";
        dtboFile = "${device-tree_rpi.overlays}/pwm-2chan.dtbo";
      }
      {
        name = "w1-gpio";
        dtboFile = "${device-tree_rpi.overlays}/w1-gpio.dtbo";
      }
    ];

Errors with:
unpacking channels...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)
building Nix...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)
building the system configuration...
error: undefined variable 'device-tree_rpi' at /etc/nixos/configuration.nix:67:25
(use '--show-trace' to show detailed location information)

I have a with pkgs; in the top of that file so it should be pkgs.device-tree_rpi

Here are all my workarounds for getting basic GPIOs working on the Raspberry Pi 3B+ with NixOS 22.05 and python.
I am using poetry to manage my code, I made a couple hacks to patch in a /proc/cpuinfo from raspbian.  This kills auto-detect, but for a personal project it works great.
let
  proc_cpuinfo = ./proc_cpuinfo.txt;
in
poetry2nix.mkPoetryApplication {
  projectDir = ./.;
  # Hacks to fix: https://github.com/NixOS/nixpkgs/issues/122993
  overrides = pkgs.poetry2nix.overrides.withDefaults (self: super: {
    rpi-gpio = super.rpi-gpio.overridePythonAttrs (old: {
      postPatch = ''
        substituteInPlace source/cpuinfo.c \
          --replace "/proc/cpuinfo" "${proc_cpuinfo}"
      '';
    });
    gpiozero = super.gpiozero.overridePythonAttrs (old: {
      postPatch = ''
        substituteInPlace gpiozero/pins/local.py \
          --replace "/proc/cpuinfo" "${proc_cpuinfo}"
      '';
    });
  });
};

Then I got errors because /dev/gpiomem did not exist.
I needed to set boot.kernelPackages to pkgs.linuxKernel.packages.linux_rpi3.
Then it stopped building because of another issue, #154163.
I did the workaround for #154163, an overlay to ignore the problem:
nixpkgs.overlays = [
  (final: super: {
    makeModulesClosure = x:
      super.makeModulesClosure (x // { allowMissing = true; });
  })
];

Then I had kernel panic at boot because of brcmfmac, some closed source binary blob 💩.
Disabling nasty closed source blobs with hardware.enableRedistributableFirmware = false; made it boot.
4 hacks/patches later GPIOs work :tada:

@newAM @hexop @sheepforce I didn't see this bug but I merged this in a while ago:
https://github.com/NixOS/nixos-hardware/pull/478

@illegalprime where did that DTS come from?  Presumably the same thing could be done for the other PIs?

For GPIO, see if the commands from libgpiod work. Those use the new character device ABI (/dev/gpiochip0), which is the preferred way to do such things these days. If you can find a library for your language that uses that ABI, that would be best.

Not sure what this means but sounds like someone should document this as it seems like libgpiod is the way to go forwards. I was using rpio and ran in all sorts of bugs, started thinking that maybe raspberry Pi 4b is just not suitable for NixOS. Dunno if this still applies to the likes of orange Pi 5 plus though.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/enable-1-wire-on-raspberrpy-4-cm/41886/2

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/missing-pwm-on-raspberry-pi-3b/49089/1

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/packaging-the-lgpio-python-package/49165/1

I don't actually use it yet, so I cannot guarantee it works, but I added all of @joan2937's packages to Nixpkgs in https://github.com/NixOS/nixpkgs/pull/316936 .


inappropriate ioctl for device

Hi I take the shell example and change little and I'm getting this error, I think the error is that I'm running the code of the example in a go routine.
func InitTerminal(socket Sockets.SocketReadWriter) error {
 // Create arbitrary command.
 c := exec.Command("bash","-l")
 // Start the command with a pty.
 ptmx, err := pty.Start(c)
 if err != nil {
  return err
 }
 // Make sure to close the pty at the end.
 defer func() { _ = ptmx.Close() }() // Best effort.

 // Handle pty size.
 ch := make(chan os.Signal, 1)
 signal.Notify(ch, syscall.SIGWINCH)
 go func() {
  for range ch {
   if err := pty.InheritSize(os.Stdin, ptmx); err != nil {
    log.Printf("error resizing pty: %s", err)
   }
  }
 }()
 ch <- syscall.SIGWINCH // Initial resize.

 // Set stdin in raw mode.
        //  This is where it fails!!! *************
 oldState, err := terminal.MakeRaw(int(os.Stdin.Fd())) // <---------------*************
 if err != nil {
  panic(err)
 }
 defer func() { _ = terminal.Restore(int(os.Stdin.Fd()), oldState) }() // Best effort.

 // Copy stdin to the pty and the pty to stdout.
 go func() { _, _ = io.Copy(ptmx, socket) }()
 _, _ = io.Copy(socket, ptmx)

 return nil
}

And this is how I call the function
go func() {
	err := Terminal.InitTerminal(srw);
	if (err != nil){
		panic(err.Error() + ": panic initializing the terminal")
	}
}()

Never mind, I don't know what is wrong, I change the code so that that line of code didn't run in a go routine and it also crashed.
My system is:
MacOS Mojave 10.14.2
If you need any other info I can supply it.

I figure out what was happening, I was running the code in goland (jetbrains IDE) and for some reason it fails, but when running from the terminal it worked.

same problem
bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell
platform:
CentOS Linux release 7.2.1511
go version:
1.8.3
process config
syscall.SysProcAttr{Setpgid: true}

@callnothing Can you provide a sample code to reproduce the issue by any chance? Also, could you describe what you are trying to accomplish? Why trying to set pgid? Depending on the use case, it might be better to go through pty.Open directly instead of pty.Start which is a generic helper with wraps pty.Open with some defaults.


Python solution for Birthday Cake Candles, Watermelon, Gasoline Introduction, Prime Tuples

Related Issue
#168
#161
#160
#105
Describe the changes you've made
Added python solution for Birthday Cake Candles
Added python solution for watermelon
Added python solution for gasoline introduction
Added python solution for prime tuples
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Language used for coding
Python
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] New and existing unit tests pass locally with my changes.

Try to complete your all work after assignment :/


login-update

Related Issue
Dark mode not working during login/signup
Fixes:  #1051
Description
Mylogin.html deleted, it is not connected with anyone.

https://github.com/anuragverma108/SwapReads/assets/142800930/193b747f-b4c7-4541-a6e3-42d7631c6e59
final Result =>
https://github.com/anuragverma108/SwapReads/assets/142800930/be4180ec-9782-4e28-a1f0-8b9aa431ef25

Type of PR

[x] Bug fix
[x] Feature enhancement

Checklist:

[x] I have made this change from my own.
[x] I have taken help from some online resources.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

@mukund-gpt please resolve conflict

@RitiChandak  plz review again


I think we should use more eslint plugins

As eslint parser we should @typescript-eslint/parser as we are using project with typescript apart from this  we should also use
eslint-plugin-react-hooks as we react recommend use of hooks

Yeah this makes complete sense! You can add that eslint package to your own implementation of this library. I created this to be a simple template with all the required minimal configuration to make it work and I kept it simple. I don't even use any react hook in the example components haha. If I enhance it in the future with more landed examples, I'll consider to add this package, for sure!


Investigate validator memory increase

Relevant discussions:
https://mysten-labs.slack.com/archives/C02GD7J9HUM/p1656435768898279
https://mysten-labs.slack.com/archives/C03GKUEA5PF/p1656639974689169

Insights
From investigations in staging + memory profiling, at a high level, we have a few insights about a couple of suspected issues which amplify each other:

a Narwhal node restart lead to a storm of requests for batches & certificates (A). That storm is overly large because the Narwhal node doesn't have crash-recovery yet (A.1), and because of the speed at which it retries them (A.2). This leads to a large amount of network messages in response. Those many messages are implemented in a way that's over-reliant on the tokio executor and consume memory at the responders (B).

Historically, as well as now with gRPC, node-to-node  connections are "1-way" in that node a -> node b is one connection and node b -> node a is a different one. When a restarts, this can lead to an issue where a can see b but b can't see a : there's a pile-up of pending messages at b (C).

Resources
Repro instructions for problem (1.):
https://gist.github.com/mystenmark/1c923ae86665f666595f359336feedb4
Mitigations:
https://github.com/MystenLabs/narwhal/pull/462 (A.2)
https://github.com/MystenLabs/narwhal/pull/463 (B)
https://github.com/MystenLabs/narwhal/pull/465 (A.2)
Better operations (logging, profiling, observability):
https://github.com/MystenLabs/sui/pull/2984
https://github.com/MystenLabs/narwhal/pull/461
https://github.com/MystenLabs/narwhal/pull/426
Follow-up work

confirm problem (C) through packet-capture, and investigate shortening the TTL of connections in mysten-network to mitigate,
Resolve (A.1) through resolving https://github.com/MystenLabs/narwhal/issues/115,
continue the line of work on memory profiling,
run staging with the above mitigations and confirm they significantly relieve the issue.

@huitseeker and @velvia can update latter

Update July 18:

the validator memory increase seen when restarted nodes is fixed as of 0.6.0 (A.2, B are solved)
problem (A.1) has a prototype fix slated for 0.6.1, undergoing testing.
problem (C) is still in the same status (@tharbert to update)
the gradual memory increase in validators (unrelated to restarts) is not reproducible without load. We will need to instrument the nodes to profile in production, the follow-up is https://github.com/MystenLabs/sui/issues/2974. @velvia to document status here.

The next step here is to generate load and try to reproduce this.  We likely need to do this in a deployed environment.
Steps:

Check current status and how much load can be generated locally
Look into remote load generator, make sure it can run for long periods of time
Look into deploying a load generator + devnet setup, with telemetry and profiling

fullnode is worth looking into as well

I think a lot of the recent issues have been driven entirely by the handle_batch_streaming implementation + bugs in fullnode that make them call that method too frequently.
Fixes for both issues should be ready this week.

Just to give an update after lots of work in this area:

Bytehound memory profiling combined with other metrics was showing the problem area is related to networking, specifically the follower API and the high number of followers in the prod dev.net environment
Mark made a change which reduced the batch size and helped decrease problems
Some memory flare-ups still observable when there is a jump in load, as well as at other odd times.  There is still a steady memory increase but it is much slower
Bytehound won't work going forward because of incompatibilities with some latest dependencies like RocksDB (needs aligend_alloc() API call which Bytehound doesn't support)

The remaining work is lower priority, to investigate remaining memory leaks and determine where they come from.

I think we can close this one out, been tons of progress on this ticket, including tons of new metrics including RocksDB, plus work on profilers, experiments, etc.  We have a much better handle on the use of memory.
RocksDB block cache is a big source.
There are many temporary sources of high memory usage, include network buffers and NodeSyncState.


PDF Creator Download Link Update

Hello I just post the updated link to the pdf creator

thank you for your contribution.
However, we are using the urls that are listed here which still uses the same url format that the current package use.
Even if the url had changed, the update script would probably need to be changed (the url is automatically inject in the install script during each appveyor update run)
as such I'm going to close this, feel free to reopen it if you disagree.


Update to Debian Bullseye

Description
Since august there is a new release of Debian named bullseye. Therefore I would propose to update our docker images from buster to bullseye.
Rationale
Stumbled into this issue when I was using the latest version of weasyprint requiring a newer version of libpango.
Do some of you have experience with Bullseye being production ready?

I liked the idea, and a pull request is welcome.
Anyway, a requirements file to Debian bullseye also should be created in the utility directory


netcdf module : basestring is not available anymore in Python 3

Hello,
Using netcdf module with Python 3, I encountered the following trace :
[...]
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 233, in close
self.flush()
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 322, in flush
self._write()
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 334, in _write
self._write_var_array()
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 380, in _write_var_array
self._write_var_metadata(name)
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 401, in _write_var_metadata
self._write_att_array(var._attributes)
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 363, in _write_att_array
self._write_values(values)
File "/usr/local/lib/python3.4/site-packages/scipy/io/netcdf.py", line 475, in _write_values
if isinstance(values, basestring):
NameError: name 'basestring' is not defined
Apparently, 'basestring' type is not used anymore in Python 3.
Here is a tip to avoid the problem : https://github.com/oxplot/fysom/issues/1
Regards,

Probably was fixed in Scipy 0.15.0

Thank you for your quick answer.
You may be right. I'm using 0.14.0 version.
Regards,

was indeed fixed, closing


accumulator: Fix undo empty roots bug

Undo empty roots would place the empty roots at the wrong row. The bug is addressed and the new tests are now able to detect the bug.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

15 of 15 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.09%) to 81.577%

Totals

Change from base Build<PHONE_NUMBER>:
0.09%

Covered Lines:
2059

Relevant Lines:
2524

💛  - Coveralls


creating a page for the "shop" section on the header.

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
the shop section isnt opening as of now as there is no page created for that.
Use Case
users can open the shop section to buy or rent books for which payment page is already made.
Benefits
it will help the website get more users if the website has options to buy books or rent books.
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

please assign me this issue.

Is there an existing issue for this?

[x]  I have searched the existing issues

Feature Description
the shop section isnt opening as of now as there is no page created for that.
Use Case
users can open the shop section to buy or rent books for which payment page is already made.
Benefits
it will help the website get more users if the website has options to buy books or rent books.
Add ScreenShots

Priority
High
Record

[x]  I have read the Contributing Guidelines
[x]  I'm a GSSOC'24 contributor
[x]  I have starred the repository

Hello @Aryakhot, Go for it
All the Best


Miscellaneous bugs with Plex module

As requested I'm adding the Plex bugs into a new issues.  Thanks for looking into these.  On the Dashboard the "Latest Movies" section loads correctly but the "Latest TV Shows" remains blank (no placeholder or anything), and within the Plex module of Manager the thumbnails for movies/shows are rather low resolution, whereas those in the CouchPotato area are crisp and sharp.

Can you paste your the response of ip:port/plex/GetRecentShow to pastebin
Paste your log to pastebin.
Are there any console errors in your browser?
What browser and version number?

Just wanted to update this here and let you know that with regards the dash module it hasn't worked for me at all since I first started using HTPC-Manager a few days ago.  I just updated my installation with your reversion from a few hours ago but it persists.  I'll grab that other info you asked for and post you the link.

Here is the response: http://pastebin.com/Z6Z6vchm
Here is the log: http://pastebin.com/vWAGC47F (errors shown occur every time HTPC-Manager loads but it doesn't seem to generate anything when I visit the link you mentioned.

No problem.  Results are here: http://pastebin.com/mHyDBabK  Need to check console with Safari after a reboot.
Log which is now capturing the error which occurs loading that page:  http://pastebin.com/c3E0kXia

wipe the log. Enable debug logging and try again?

This is the new Safari console error message - same as before - http://pastebin.com/mbJ5yZSA

That's fine, that isn't related.

I already had debug logging enabled but I reset it as requested and re-tested the link.  These are errors that show up every time I try to load the page: http://pastebin.com/KPCxNNdJ

Ok I didn't notice that in your privious log.
I need your xml to figure this out. Go to http://pmsip:pmsport/library/sections

Here's the XML: http://pastebin.com/i8G1kurL

Thanks. I have to make a seperate branch for you to use so we can debug this properly.  I suspect it fails https://github.com/Hellowlol/HTPC-Manager/blob/master2/modules/plex.py#L168 so I need to have all the episodes. I'll give you a link to a new branch later.

Thanks, I'm happy to provide whatever info you need to try and debug it.

Use this branch: https://github.com/Hellowlol/HTPC-Manager/tree/plexsucks
go to: http://localhost:8085/htpc/plex/GetRecentShows
grab the content post it to paste bin.

Here's the content: http://pastebin.com/9Zqc585H
I see an empty container for Latest TV Shows on the dash now at least.

@raysguy Can you update the plexsucks branch and try again.
Does the recent show appear? if not paste the content of go to: http://localhost:8085/htpc/plex/GetRecentShows
and full debug log.

Awesome, recent shows are now appearing on the dash with that latest update! Thanks.

Ok, ill add that to the master2 branch later. So now its only the question about tvshow dupes. Does that still appear?

Yeah, the dupes still appear in the TV shows section.
Also just noticed another Plex bug - when I click on a movie or tv episode and the pop up appears, if I have Plex Home Theater open on my Mac there is a button which says "Play on Plex Home Theater".  However, when I click on it nothing at all happens other than the pop up closes.  Nothing shows up in the logs though.  I should mention that when an item is currently playing on Plex Home Theater it is shown at the top of the Plex page and the play/pause etc controls do work on to control what is playing in PHT.

Ok, can you start htpc manager with loglevel debug so we get some logs. I dont use pht but it looks like have to install it

Thanks.  Here are recent debug logs - http://pastebin.com/NzDJ79Eg
The "Playing  + item +  on player <IP_ADDRESS>" is the entry that is triggered by me clicking the "Play on PHT" button

just pushed a a change, can you try again?

btw, the paste was private, i cant see it ;)

Oops sorry, meant to select unlisted not private.  Should be fixed now.

Updated with latest change but I can't run htpc now.  Here's what I see in terminal when I try: http://pastebin.com/gg28Q3wL

Manually fixed it - just a rogue ")" on line 955 of plex.py.  Thankfully terminal pointed me right to it!
Here are the recent logs after your latest change: http://pastebin.com/wUzCLJJv

Nice!,  sorry for the typo, im at work so i have no way of testing this before i push. Try again?

No worries - that's quite some commitment editing from work.  Good job!  Here are the latest logs: http://pastebin.com/69qEEvYx

Ok, I have found a solution for play. The problem is only the dupe episodes... I have no idea how to fix that

@raysguy can you update and test the play command again?

Hi, just updated and tested play and it works a treat thanks. Tested on both PHT and iPhone.
For the dupe issue is there any info in the XML at ip:port/library/sections/ that could be used to filter out certain sections?  Even if I have to manually add them into the plex.py file that'd be fine.
Also is there a way I can reorder how items appear in the plex section?  Plex sorts shows with "The" in the title under the second word of the title, whereas in HTPC all shows starting with "The" are sorting together under T.  Wondered if it was possible for me to adjust that at all.

Im not realt sure how to handle it, you have a strange setup. I can add a ignorere list but that will everything.
So say you have a section called dads show and kids show if both point to the same folder neither I'll be scanned.
I havnt forgotten your request I'll see if I can't fix that tomorrow
I don't think it is, how would like to have it?

Ah yeah, there's a fair bit of overlap so I'd end up with a lot of the main shows I| watch unscanned.  Thanks for looking into all this.
For sorting I'd like it if things were ordered the same as Plex, e.g. Firefly, The Flash, The Following, Forever, Fresh Off The Boat
At the moment in HTPC it's ordered Firefly, Forever, Fresh Off The Boat; then under the Ts I have The Casual Vacancy, The Flash, The Following, The Game etc

I just noticed there was some sorting option, even a dupe so hopefill ill get this sorted.

That's awesome news, thanks.

@raysguy can you update and see if if the last push resolves your issue?

Sorry for the slow reply, busy day preparing to travel.  Just installed latest update and that works perfectly.  All sorted and with no dupes. Awesome job. Thanks again.
Have you have had any luck pinpointing the cause of the low image resolution that only occurs on the Plex page?

Not yet, the resolution is the same but I have to check what type of images that are return by plex before pil resizes them. The resolution is the same, but the quality is bad. What resolution do you have on your screen?

Using a 13" Retina MacBook pro so 2560x1600.
Interestingly, since we last checked the CP images now seem to suffer from a lower quality too.  The only thing that has changed since the last time I checked is that I've installed PIL so I don't know if that's a factor.

i bet it is, if pil is installed it will resize images to the wanted resolution, if it's not installed it will just return the original image.
This is done because speed as the image can be huge and the typical size of a resized image is less then 6 kb

I wish it could pull the artwork that Plex has already downloaded without losing quality and then cache the files.

I dont think they would be good a solution. Think 1k images each with a size of 600kb. I'll rather tune the resize so it look good but uses less bandwidth.
Since I don't have a good screen do you think find the sweet spot regarding image resolution?

Okei so i have found the bug its a silly one.. :P. And i can say not resizing the images are not a option!
I disabled delete the entire cache and tried again.
 The page was insanely slow.
The good new is that the images will now be resize with pil so the image quality should be equal to kodi etc.
I added a option so you can test this yourself :)

https://github.com/Hellowlol/HTPC-Manager/tree/pleximages

Thanks, I've been testing this out.  Have to say I quite like the resize disable option as the images look so sharp.  Once it's cached them I haven't noticed any slowdown in the page speed.  Tried re-enabling resize but it reverted to the previous fuzzy images unfortunately.  Which values would I need to change in the plex.py module to specify a resolution so I can experiment with finding the optimum values?
There are a couple of side-effects with this branch though.  When you click on a movie the pop up box no longer has the "frosted" overlay on the background image so the synopsis etc text is unreadable on most of them.  Also in the shows section if you click on a show to bring up the episode list, when you click on an episode the layout of the popup is messed up as the frameshot of the episode is no longer resized.

There certenly are side effects. The branch was intended so you could see the difference .If resize is disabled the img will not be frosty etc I'll see if I can fix that. I'll see if there is a option regarding o in plex api. The images that are to big can be fixed with css.
So play with the sizes you need to edit plex.js look a call like this https://github.com/Hellowlol/HTPC-Manager/blob/master2/interfaces/default/js/plex.js#L101

Ah okay. I'll have a play around with some values when I get home later. I'd seen the o option in the py file but wasn't sure what to do with it.

On 3 Apr 2015, at 18:29, Hellowlol<EMAIL_ADDRESS>wrote:
There certenly are side effects. The branch was intended so you could see the difference .If resize is disabled the img will not be frosty etc I'll see if I can fix that. I'll see if there is a option regarding o in plex api. The images that are to big can be fixed with css.
So play with the sizes you need to edit plex.js look a call like this https://github.com/Hellowlol/HTPC-Manager/blob/master2/interfaces/default/js/plex.js#L101
—
Reply to this email directly or view it on GitHub.

O = opacity :)

Cheers, still picking up the more technical stuff as I go along :)
Btw forgot to mention but I realised the movie tab in the Plex module is actually missing most of my movies. It had picked them up from three libraries but is actually skipping the main one which is actually named "Movies". I think this might have been the case before the latest changes though to be honest, but can't be sure.

On 3 Apr 2015, at 19:27, Hellowlol<EMAIL_ADDRESS>wrote:
O = opacity :)
—
Reply to this email directly or view it on GitHub.

what are the file path and name of all your sections?

They should be all in the xml I posted on pastebin

On 3 Apr 2015, at 22:46, Hellowlol<EMAIL_ADDRESS>wrote:
what are the file path and name of all your sections?
—
Reply to this email directly or view it on GitHub.

Yeah I edit my post but you can't see that when your respond from the email :)

Haha I was also responding via the emails either which is why I couldn’t find it.  Got it now though: http://pastebin.com/i8G1kurL http://pastebin.com/i8G1kurL
It’s section 6 titled just “Movies”.

On 3 Apr 2015, at 23:34, Hellowlol<EMAIL_ADDRESS>wrote:
Yeah I edit my post but you can't see that when your respond from the email :)
—
Reply to this email directly or view it on GitHub https://github.com/Hellowlol/HTPC-Manager/issues/105#issuecomment-89438983.

What is the path for that section?

/library/sections/6/composite/1427450448
I think that is the path you wanted?

No the file/folder path

These are the folder paths that the library uses:
"/Volumes/Movies/Disney Movies"
"/Volumes/Movies/Ray Ray Movies"
"/Volumes/Movies/2D Movies"

Can you test the styxit version and see if your missing movies there aswell?

Can I close this now?

Yeah all movies are showing up in current version thanks.
Only bug I see now in Plex is in the TV section where "iZombie" comes at the end of the list after "Zen".  Think it is just a random side-effect from sorting changes for items starting with "The".


Model Pusher & Create API

[x] Create a Model pusher pipeline
[x]  Test complete training pipeline
[x]  Create API for running the project

created  and tested API  successfully


Skip add torch to path for update

No need to re-add Torch to the path when updating it.
@albanD, I think you missed this one 😉

Thank you!

@Atcold thanks! I didn't knew about this option :/

@albanD, you can run ./install.sh --help to have a full list of options. It uses the getopts command (see tutorial by Bash Hackers Wiki).


Update Reactor dependency

As a developer, I'd like to update reactor core dependency to 3.0.4.RELEASE.
Acceptance:

Reactor core is updated to 3.0.4.RELEASE
Build + tests run successfully
Docs updated

Addressed by https://github.com/spring-cloud/spring-cloud-dataflow-server-cloudfoundry/pull/237

https://github.com/spring-cloud/spring-cloud-deployer-cloudfoundry/commit/d27d1887c48ac587eeef4b7016502a3c2ce66b2b


Function to display folder structure.

Create a file utils.py in fileosninja module. Make a method (be creative with the name) that will display the folder structure of a given folder.
Note : Make sure not to push these to main branch, create a new branch.
Function must have proper docstrings (refer to the docstrings of already existing functions inf file_manager.py).
eg. func_name(folder_address, depth=3)
The depth keyword refers to the level of depth or hierarchy to which the folder structure should be displayed, default value should be 3.
output:

How to test the module?
The testing procedure involves using a file named test.py, which is explicitly excluded from version control via the .gitignore configuration. Consequently, any files generated within the test folder will also be excluded from version control and, thus, will not be pushed to the repository.  (Note: The folder specified is test folder not tests folder. tests folder has unit tests)

hi! i'd like to work on this, can you assign it to me?

@alenachao Yeah sure

@alenachao Great it works. Thanks for working on it.


Getting response 500, while curl works fine.

Just as the title says. Here's the curl command (trimmed cookie a tad for brevity):
curl 'http://<IP_ADDRESS>/Ion/default.aspx/GetRTxmlData' -H 'Cookie: ASP.NET_SessionId=ee4a3gjs2dgyzgy3y3putp50; .APPLICATIONFRAMEWORK=D684EB482F28D2A34E3D38261250545C25D77913B62F7B5D275E9708FF97A0AED07EB8DDEF74798D85F51D588D1CB5D534C42620639C879A24514BEE36C87201F4D0835822EE7F' -H 'Origin: http://<IP_ADDRESS>' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36' -H 'Content-Type: application/json; charset=UTF-8' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Referer: http://<IP_ADDRESS>/Ion/default.aspx' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --data-binary $'{\'subsKey\':\'x-pml:/diagrams/ud/network.dgm@\'}' --compressed
Curl Response (trimmed):
{"d":"\u003cDiagramInput savedAt=\"2018-02-10 05:51:46\" xmlns=\"http://rddl.xmlinside.net/PowerMeasurement/data/webreach/realtime/1/\"\u003e\r\n  \u003cItems nodeName=...
Curlconverter Response:
<Response [500]>

Just as the title says. Here's the curl command (trimmed cookie a tad for brevity):
curl 'http://<IP_ADDRESS>/Ion/default.aspx/GetRTxmlData' -H 'Cookie: ASP.NET_SessionId=ee4a3gjs2dgyzgy3y3putp50; .APPLICATIONFRAMEWORK=D684EB482F28D2A34E3D38261250545C25D77913B62F7B5D275E9708FF97A0AED07EB8DDEF74798D85F51D588D1CB5D534C42620639C879A24514BEE36C87201F4D0835822EE7F' -H 'Origin: http://<IP_ADDRESS>' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: en-US,en;q=0.8' -H 'User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36' -H 'Content-Type: application/json; charset=UTF-8' -H 'Accept: application/json, text/javascript, */*; q=0.01' -H 'Referer: http://<IP_ADDRESS>/Ion/default.aspx' -H 'X-Requested-With: XMLHttpRequest' -H 'Connection: keep-alive' --data-binary $'{\'subsKey\':\'x-pml:/diagrams/ud/network.dgm@\'}' --compressed
Curl Response (trimmed):
{"d":"\u003cDiagramInput savedAt=\"2018-02-10 05:51:46\" xmlns=\"http://rddl.xmlinside.net/PowerMeasurement/data/webreach/realtime/1/\"\u003e\r\n \u003cItems nodeName=...
Curlconverter Response:
<Response [500]>

Works fine for me.
{"args":{},"data":"${\'subsKey\':\'x-pml:/diagrams/ud/network.dgm@\'}","files":{},"form":{},"headers":{"x-forwarded-proto":"http","x-forwarded-port":"80","host":"postman-echo.com","x-am zn-trace-id":"Root=1-5f2ff376-881a8c584165f0f4bb5fe8a8","content-length":"46","user-agent":"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110  Safari/537.36","accept-encoding":"gzip, deflate","accept":"application/json, text/javascript, */*; q=0.01","origin":"http://<IP_ADDRESS>","accept-language":"en-US,en;q=0.8","content-ty pe":"application/json; charset=UTF-8","referer":"http://<IP_ADDRESS>/Ion/default.aspx","x-requested-with":"XMLHttpRequest","cookie":".APPLICATIONFRAMEWORK=D684EB482F28D2A34E3D3826125054 5C25D77913B62F7B5D275E9708FF97A0AED07EB8DDEF74798D85F51D588D1CB5D534C42620639C879A24514BEE36C87201F4D0835822EE7F; ASP.NET_SessionId=ee4a3gjs2dgyzgy3y3putp50"},"json":null,"url":"http://po stman-echo.com/post"}

I think that this ANSI-C quoted string

$'{\'subsKey\':\'x-pml:/diagrams/ud/network.dgm@\'}'

may've been what was causing the issue. If that's the case, this tracked in #207 and it should be fixed whenever the changes in #278 are deployed.


adding descriptions

closes https://github.com/MicrosoftDocs/office-docs-powershell/issues/7188
descriptions taken from Set-

@yogkumgit

Docs Build status updates of commit 499e281:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsMeetingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@get-itips copy review ( as suggested by Johan)

Docs Build status updates of commit 3be3ca9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsMeetingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@JohanFreelancer9

@tiburd Please merge this PR. Thanks

Docs Build status updates of commit f922fb4:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/New-CsTeamsMeetingPolicy.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


contracts: Expose rent parameter to contracts

Fixes #7533
This PR introduces a new contract callable function named seal_rent_params. This function returns information that can be used by contracts to make decisions based on rent related issues. The function returns the following data structure:
https://github.com/paritytech/substrate/blob/8ee32e692a1743282b25eaa43a5ce981348898b5/frame/contracts/src/exec.rs#L49-L70
Those information are collected very efficiently without any additional storage accesses by snapshotting them at the beginning of each contract call. They are grouped together in a struct because the overhead of calling a supervisor function is substantial. More than copying a few more bytes. These should be all the information needed to duplicate rent calculation in contract code (@cmichi please double check) . We expose data rather than some operational function like seal_rent_projection to allow the maximum amount of freedom for contracts until a good rent management strategy arises.

/benchmark runtime pallet pallet_contracts

What is the default size_of of the RentParams struct?
Would it maybe make sense to encode some of its fields as Compact data?

The SCALE encoded size of this struct is 73 bytes. If you look at the weight assigned for calling this function you can see that it is in-line or even below the single value getters. Copying more data to the contract memory is negligible when compared to the overhead of calling an (imported) function.
This does not include the decoding time of course. However, Compact won't help here as it makes the decoding slower and not faster. This tradeoff is only useful when the data is transmitted over the wire.

bot merge force


LA PONTINHA COMPANY® UPDATE!

name: 01º La Pontinha Company®
key: pontinha
color: preto
emblem: A_Char_Goblin_01.png
sort : troféu
info:
logo : https://uploaddeimagens.com.br/imagens/tUwCxNM
description: >
** Venha fazer parte da maior família do Clash Royale!!!
Torneios e premiações internas!!!
Lideres de clã, associe seu clã em nossa família!!!
social :

site : https://linktr.ee/lapontinha
discord: https://discord.me/legendfamily
twitter :
instagram : https://instagram.com/lapontinha
facebook : https://www.facebook.com/rovak.seitoushi
twitch : https://www.twitch.tv/rovak_
youtube :
aplicativo :
email : mailto<EMAIL_ADDRESS>clans:

name: La Pontinha
tag : 98VGJQC0
name: La Pontinha CMD
tag : L9R0LP8L
name: Sanidade
tag : YGRC0R98
name: GDMSA
tag : JJJUQP8
name: --RENEGADO--
tag : PVYR0Y20
name: Dark Knights
tag : Q2YGYY80
name: MarumbYTwO
tag : PPLR8Y80
name: Black Hawk BR
tag : P809L2PY
name: Black Hawk BR 2
tag : PR9Q09RC
name: Black Hawk BR 3
tag : Y8GUCULR
name: Black Hawk BR 4
tag : Y9RLQL0P

I only include comments in PORTUGUESE once, because of the automatic broker, then every time I include them in your language.
I do updates every week to include the new clans in the family ...
more respect man, I ask everyone in the family for the code of the royale api, so be more receptive, I'm bringing 200 more players to put the code of you in the clash store.
They are not errors, they are updates, the family is growing, who brought the method to sacrament the unions were you ...
And yes, the family name changed to 01 La Pontinha Company, it would be quite prejudiced if you do not change the name in view that it is just a game.
You already make updates every week, what I ask for is just the inclusion of more clans and NOW after the vote we changed our name to 01 La Pontinha Company.
Bearing in mind that we are the 1st Company in order to gather clans for the tournament.

how i can add more clan in familly?
have another channel for this?

I only include comments in PORTUGUESE once, because of the automatic broker, then every time I include them in your language.
I do updates every week to include the new clans in the family ...
please patience, i ask everyone in the family for the code of the royale api, so be more receptive, i'm bringing 200 more players to put your code in the clash store.
They are not errors, they are updates, the family is growing, who brought the method to sacrament the unions were you ...
And yes, the family name changed to 01 La Pontinha Company, it would be quite prejudiced if you do not change the name in view that it is just a game.
You already make updates every week, what I ask for is just the inclusion of more clans and NOW after the vote we changed our name to 01 La Pontinha Company.
Bearing in mind that we are the 1st Company in order to gather clans for the tournament.

thank you friend, seriously, the clash royale is a world game, I use the translator, this tool is still not 100% reliable, that's why these little disagreements happen, the next few times I'll just add the clans, because we really haven't changed anything beyond of adding clans to the family, I'm sorry again for making these mistakes.
if possible, give me the recommendations for when I'm going to make any changes, I can just
"01ª La Pontinha Company® update"
add clan
Name:
Tag:
need it just like that?


Adding docstrings to functions

This is the first chunk of work (in a work in progress) to add docstrings to functions. I will likely need to go through this a few times, and it will take more than a day or two... will update and remove WIP when ready for review.

Update
I've finished the docstrings! I've made sure to do the following:

spacing is consistent - I removed extra newlines
when arguments are repeated for the "*_cli" functions, I reference the function being wrapped and only define the new arguments (to avoid definition twice and potential conflict).
for one function (initialize_kernel metadata) there was an argument "kernel" that went in, but then wasn't used. I removed it, but if it was defined for a reason please let me know and I'll add it back!
for a few listings of variables, I made the readability better by putting them in ABC order, each on separate lines.
for the function print_config_values instead of hard coding the separator into the function, I made it an argument with default as - .
the client functions that have the added arguments for "*_opt" might need better descriptor, I wasn't totally sure what these were referencing other than some other option for a dataset, kernel, etc. coming from the client that would be used if the kernel / dataset was not defined.

@rysteboe this PR is now ready for review! Please see my comments under the "Update" section above.

All right, back to API stuff.  Doing a quick look, but first glance looks good.
For background on _opt, I had to do some janky stuff to work around backwards compatibility when making dataset, kernel, and competition names positional arguments.

Yeah, completely understand the "janky stuff" workarounds.
Thanks @rysteboe ! Let me know what else I can help with whenever :)


Update investigate-files.md

Updated the changes in file page which are now GA (Oren Saban - Microsoft)

Learn Build status updates of commit a2a5a89:
:bulb: Validation status: suggestions

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/investigate-files.md
:bulb:Suggestion

Details

microsoft-365/security/defender-endpoint/investigate-files.md

Line 77, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 84, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 114, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 5c100c7:
:bulb: Validation status: suggestions

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/investigate-files.md
:bulb:Suggestion

Details

microsoft-365/security/defender-endpoint/investigate-files.md

Line 77, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 84, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 114, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 73d55f7:
:bulb: Validation status: suggestions

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/investigate-files.md
:bulb:Suggestion

Details

microsoft-365/security/defender-endpoint/investigate-files.md

Line 77, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 84, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.
Line 114, Column 1: [Suggestion: duplicate-alt-text - See documentation] Alt text 'image' is duplicated. Within an article, alt text must be unique.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 645f160:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/investigate-files.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 172c27b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/investigate-files.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Invalid document data upload using AttachmentContent

Hi colleagues,
Our team is working with the attachments APIs (especifically, the DefaultAPICVATTACHMENTSRVService service) and we found an error with the files that were uploaded using the SDK. The operation runs fine and the document is uploaded to S/4 with the correct linked object key/type and metadata (file name, mime type); however, the actual data for the document is not valid.
Through a binary comparison between the original file and the one retrieved from S/4, I've noticed that data for the uploaded file is actually readable in a text editor and it contains a JSON representation of the actual file. E.g.:
{
  "LinkedSAPObjectKey":"123456789",
  "FileSize":"39618",
  "FileName":"testfile.jpg",
  "MimeType":"image/jpeg",
  "Content":"base64encodeddatahere",
  "BusinessObjectType":"EXAMPLE"
}

Here is how our code looks like when creating the command (using the generated builders, we also tried to use the setter methods but we got the same result):
byte[] attachmentData = document.getDataInBytes();
AttachmentContent attachmentContent = AttachmentContent.builder()
  .attachmentContent(attachmentData)
  .fileSize(String.valueOf(attachmentData.length))
  .fileName(document.getName())
  .mimeType(document.getMimeType())
  .linkedSAPObjectKey(document.getKey())
  .businessObjectType("EXAMPLE")
  .build();

This attachmentContent variable is then provided when we call the createAttachmentContent() method on DefaultAPICVATTACHMENTSRVService, but somewhere along the way it seems like the content is being replaced with the JSON containing both the data and the metadata.
The command's run() method looks like this:
private Map<String, String> getUploadHeaders() {
    Map<String, String> headers = new HashMap<>();
    headers.put("Slug", attachmentContent.getFileName());
    headers.put("Content-Type", attachmentContent.getMimeType());
    headers.put("BusinessObjectTypeName", "EXAMPLE");
    headers.put("LinkedSAPObjectKey", attachmentContent.getLinkedSAPObjectKey());
    return headers;
}
...
defaultAttachmentsService
  .createAttachmentContent(attachmentContent)
  .withCustomHttpHeaders(getUploadHeaders()).onRequestAndImplicitRequests()
  .execute(getConfigContext());

Right now are unsure if this is caused by something we are missing from our code or if there is a bug in this service somewhere. Could you please assist us with this issue?

Hi @rafaelferrari, let's keep the discussion on https://github.com/SAP/cloud-sdk/issues/175 since that is the recommended repo for questions & issues on the SDK in general.


[SPARK-28473][DOCUMENTATION]Stylistic consistency of build command in README

What changes were proposed in this pull request?
Change the format of the build command in the README to start with a ./ prefix
./build/mvn -DskipTests clean package

This increases stylistic consistency across the README- all the other commands have a ./ prefix. Having a visible ./ prefix also makes it clear to the user that the shell command is dependent on the current working directory.
How was this patch tested?
README.md was reviewed both in raw markdown and in the Github rendered landing page for stylistic consistency.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

I scoured the documentation for offending examples. I believe I found and corrected every command example not conforming to the ./ prepended convention.

ok to test.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/13168/
Test PASSed.

Test build #108061 has started for PR 25231 at commit 53d59fc.

Test build #108061 has finished for PR 25231 at commit 53d59fc.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/108061/
Test PASSed.


Currying for mix broken by transpilation

polished version: 1.9.2

Mixin/Helper/Shorthand you were using and how you were using it:
import { mix } from 'polished'

mix(0.4, '#FFF')('#000')

What you are seeing:
Uncaught Error: Passed an incorrect argument to a color function, please pass a string representation of a color.
    at parseToRgb (VM116112 polished.es.js:1459)
    at mix (VM116112 polished.es.js:2197)

What you expected to see:
The mixed color.
Explanation
Babel's handling of the default-value for weight causes it to manually assign arguments. The output in dist/poslished.es.js becomes:
function mix() {
  var weight = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.5;
  var color = arguments[1];
  var otherColor = arguments[2];
  ...
}

Thus, mix.length is 0 and currying is broken.
Ideally, this ought to be fixed in babel, but a very simple solution would be to remove the default weight from the function. Unless I'm missing something, the only way to invoke the function with the default weight is to explicitly pass undefined like this: mix(undefined, '#FFF', '#000'). This seems like a weird pattern to support.

@kgram This is definitely on our radar. We are tracking a similar bug here #244. The fix will likely require some sort of deprecation of the existing API, so we are still sorting that part out.

Great! How long do you expect it will be until 2.0.0 is released?

@kgram Hoping to get a beta out by the weekend.


Git branch name mangling in integrated Terminal

When running git branch inside the integrated terminal the branch name is mangled, where it takes the first letter of the branch name and just repeats it for every letter in the branch.
ex: branch name is master vscode is showing mmmmmm
Visual output from vscode for git branch:
   lpu-support
* mmmmm
  master-api-update
  remove-pairing-dependency

Visual output from iTerm for git branch for the same repo:
  lpu-support
* master
  master-api-update
  remove-pairing-dependency

What's odd too is if I highlight and copy the incorrect branch name from vscode's terminal then paste it somewhere the pasted branch name is correct and does not match what was copied.
This started after the last update Insider's from October 8th 2018.

VSCode Version:

Version: 1.29.0-insider
Commit: 5bd6ebe2dbc4dee510699020a25f70a69784ce8c
Date: 2018-10-09T09:24:52.091Z
Electron: 2.0.11
Chrome: 61.0.3163.100
Node.js: 8.9.3
V8: 6.1.534.41
Architecture: x64

OS Version:

macOS High Sierra
10.13.6

Steps to Reproduce:

Open integrated terminal in VS Code Insiders
run git branch

Does this issue occur when all extensions are disabled?: Yes

@cpheps does it fix itself up if you scroll? Could you provide a screenshot?
I suspect it will be fixed by doing cmd++, cmd+- as all the textures get redrawn.

Potentially related to https://github.com/Microsoft/vscode/issues/55981

Not sure if it's related to that issue but here's a screen shot. Iterm is on top and vscode is on the bottom.

Upstream issue: https://github.com/xtermjs/xterm.js/issues/1737

Looks like this was a regression in insiders only

Just wanted to follow up this is fixed in:
Version: 1.29.0-insider
Commit: cc5e2b41c3add18a31e87f84b5d6162566a38d6e
Date: 2018-10-10T05:10:57.005Z
Electron: 2.0.11
Chrome: 61.0.3163.100
Node.js: 8.9.3
V8: 6.1.534.41
Architecture: x64


Performance problem when rotating an orthogonal camera

Godot version
since 4.0
System information
Windows 11, AMD RX580 2048SP
Issue description
Rotating an orthogonal camera decreases frame rate significantly.

Steps to reproduce
N/A
Minimal reproduction project
TEST.zip

Doesn't seem to be issue in Linux with Nvidia GPU. Might be Windows specific.

SDFGI is currently not supported when using an orthogonal camera, try disabling it: https://github.com/godotengine/godot/issues/60522


LogCollect jobs extremely slow when input is missing

2014-11-20 07:25:56,044:ERROR:LogCollect:Unable to StageIn /store/unmerged/express/logs/prod/2014/11/18/Express_Run210818_StreamExpress/Express/0000/0/Express-c2c37b3a-6eec-11e4-9ed0-02163e00cd25-0-logArchive.tar.gz
2014-11-20 07:46:00,105:ERROR:LogCollect:Unable to StageIn /store/unmerged/express/logs/prod/2014/11/18/Express_Run210818_StreamExpress/Express/0000/0/Express-c29c42b8-6eec-11e4-9ed0-02163e00cd25-0-logArchive.tar.gz
2014-11-20 08:06:04,067:ERROR:LogCollect:Unable to StageIn /store/unmerged/express/logs/prod/2014/11/18/Express_Run210818_StreamExpress/Express/0000/0/Express-c269c7f2-6eec-11e4-9ed0-02163e00cd25-0-logArchive.tar.gz
2014-11-20 08:26:07,433:ERROR:LogCollect:Unable to StageIn /store/unmerged/express/logs/prod/2014/11/18/Express_Run210818_StreamExpress/Express/0000/0/Express-c30bd362-6eec-11e4-9ed0-02163e00cd25-0-logArchive.tar.gz
2014-11-20 08:46:14,165:ERROR:LogCollect:Unable to StageIn /store/unmerged/express/logs/prod/2014/11/18/Express_Run210818_StreamExpress/Express/0000/0/Express-c295d3ec-6eec-11e4-9ed0-02163e00cd25-0-logArchive.tar.gz
The files don't exist (why is a separate issue). But why is the LogCollect spending 20 minutes to figure out that an input file does not exist ? Shouldn't that be an instantaneous check ? I think I know why, it's using the StageIn code, which has some elaborate retry logic. These make sense for StageOut as you copy an existing file to the SE and want to not give up and loose the jobs work. For StageIn this is useless though, at least in this case where the input file doesn't even exist.

@hufnagel wasn't it fixed by #6125? If so, please close this issue


chore: next

:tada: This PR is included in version 3.2.0-beta.1 :tada:
The release is available on:

GitHub release
v3.2.0-beta.1

Your semantic-release bot :package::rocket:

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

GitHub release
v3.2.0

Your semantic-release bot :package::rocket:


Refactor buildOnyxDataForMoneyRequest to use a parameter object

As part of the tracking issue, and as advised in its description, refactor buildOnyxDataForMoneyRequest to use a parameter object.
Issue OwnerCurrent Issue Owner: @hungvu193

Proposal
Please re-state the problem that we are trying to solve in this issue.
Refactor buildOnyxDataForMoneyRequest to use a parameter
What is the root cause of that problem?
This is an improvement
What changes do you think we should make in order to solve the problem?
Wrap all parameters of this function into one object and in this object, we can have some sub-objects that will wrap the related data.
https://github.com/Expensify/App/blob/b80c68ea76cdf825d9331bbf298cc41b40716037/src/libs/actions/IOU.ts#L560
What specific scenarios should we cover in automated tests to prevent reintroducing this issue in the future?

What alternative solutions did you explore? (Optional)

@neil-marcellini I'm here.

@dukenv0307 is doing C+ for all these

@dukenv0307 The PR is ready.

@mkzie2 - can you pls link your Upwork profile here?

Payment Summary

[ ] @mkzie2 approved $250 via Upwork
[ ] @dukenv0307 approved $250 via New Dot

$250 approved for @dukenv0307

@mkzie2 - can you pls link your Upwork profile here?

@anmurali My profile is https://www.upwork.com/freelancers/~019f73367b03c6d784


Feat 44: adds feature to correct NP-optp electrode positions

Closes #44

@alakunina this PR "corrects" the settings file for the OPTO probes.
Here is an example of the corrected config at the tip (as loaded by SpikeInterface):

And settings.xml (I had to zip it):
settings.zip

@dyf now correction is done depending on the Neuropix-PXI plugin version in the settings

From conversation - @alejoe91 is going to remove this flag and check OpenEphys version numbers to know whether or not this needs to happen.

@alejoe91 should we close this now?

From conversation - @alejoe91 is going to remove this flag and check OpenEphys version numbers to know whether or not this needs to happen.

This is implemented! https://github.com/AllenNeuralDynamics/nd-data-transfer/blob/feat-44-np-opto-correction/src/transfer/util/npopto_correction.py#L44-L49
It's ready to be merged on my side


Ability to retrieve / pull profiles with standard behavior in source tracked sandbox and scratch orgs.

Is your feature request related to a problem? Please describe.
Currently, in source tracked sandbox and scratch orgs, when we retrieve / pull profiles, it retrieves permissions for components in the package.xml PLUS all other components that are currently tracked.
Reference: https://developer.salesforce.com/docs/atlas.en-us.232.0.sfdx_dev.meta/sfdx_dev/sfdx_dev_source_tracking_source_tracking_profiles.htm
We would also like the option to override this behavior to retrieve/pull the "standard" way.
What are you trying to do
There are times when we want to retrieve the profile permissions for components that are ONLY listed in the package.xml or changeset from source tracked sandbox & scratch orgs.
Describe the solution you'd like
A parameter where we can override the default behavior
sfdx force:source:retrieve -x package.xml --profilestandardretrieve true
sfdx force:mdapi:retrieve -p ChangeSetName --profilestandardretrieve true
This will retrieve the profile permissions for only components that are listed in the package.xml or changeset/package.
Describe alternatives you've considered
Nothing elegant at this point.
Additional context
See Salesforce Reference Docs for current behavior in source tracked sandbox and scratch orgs.
https://developer.salesforce.com/docs/atlas.en-us.232.0.sfdx_dev.meta/sfdx_dev/sfdx_dev_source_tracking_source_tracking_profiles.htm

Hi - we've looked into supporting profiles in that way, and found it wasn't possible without a lot of hazardous rewrites https://github.com/forcedotcom/cli/discussions/1785#discussioncomment-4722761


Unable to run on Mac : Torch not compiled with CUDA enabled

Hi
Newbie here. I am trying to run Mochi on my Mac. Getting the below error:
AssertionError: Torch not compiled with CUDA enabled

I tried uninstalling Torch and installing the nightly version, but still getting the same error. I looked at the code and appears that there's tight coupling to Torch-CUDA.
Machine config:
Graphics/Displays:

    Apple M3 Max:

      Chipset Model: Apple M3 Max
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 40
      Vendor: Apple (0x106b)
      Metal Support: Metal 3
      Displays:
        Color LCD:
          Display Type: Built-in Liquid Retina XDR Display
          Resolution: 3024 x 1964 Retina
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: Yes
          Connection Type: Internal

I tried running Mochi standalone as well as thro' ComfyUI. Please let me know if there's any way I can run the model on Mac.
Thanks

I think its impossible to run on Mac. I have m3 max too! And 48 gb version. https://github.com/genmoai/models/issues/71
I've tried multuply variants, used even chatgpt. Nothing helped.  I discovered that the issue lies with the 'out_cond' and 'out_uncond' variables in the model_fn() function, which consistently display as tensor([[[[[nan, nan, nan, ..., nan, nan, nan]...)...


MRG, FIX: Allow multiple runs of Epochs.drop_bad() even if only using a subset of initial reject channels

Closes #9483

thanks @hoechenberger!