How to use core::ManuallyDrop

I just updated to 0.44.0, which introduces windows::core::ManuallyDrop and I’m slightly confused on how this is supposed to be used.
The std::mem::ManuallyDrop is a container that does not call drop of the inner value, so if I understand it correctly,
// incorrect use:
{
  let nodrop = std::mem::ManuallyDrop::new(vec![0; 10]);
}
// nodrop is dropped but the contained vector is not, so memory is leaked

// correct use:
{
  let nodrop = std::mem::ManuallyDrop::new(vec![0; 10]);
  let vec: Vec<_> = std::mem::ManuallyDrop::into_inner(nodrop);
}
// vec is dropped so the memory is freed

So, using it for unions in the windows api makes a lot of sense for me, if the unions have memory that needs to be dropped, because the compiler has no chance to figure out which variant of the union to drop.
However, 0.44.0 introduce core::ManuallyDrop, which – as I currently understand it – has nothing to do with the reason and meaning behind std::mem::ManuallyDrop. Instead, it is just a reference (*mut void for things that implement Vtable).
I was searching for how to call drop on the contained value for a while, like one needs to do on the std ManuallyDrop, but I wasn’t able to find anything like that :)
So, two questions:

Why is it called ManuallyDrop isn’t Borrowed a better name?
If a union contains only pointers with no drop functions, can we remove the std::mem::ManuallyDrop wrapper?
(E.g. for D3D12_RESOURCE_BARRIER_0, the example never calls std::mem::ManuallyDrop::into_inner anyway, which – as far as I understand – one would have to do for a correct use case)

For cross-reference, #1410 is AFAIK the reason for core::ManuallyDrop and #2235 is the PR that introduces ManuallyDrop.

Sorry for the late response. The answer's a bit complicated but I hope to explain the issue here soon. It's definitely something I'd like to improve but Rust is a bit unwieldy in this regard. Anyway, I'll try to summarize the issue here asap.

Looked at this some more this morning. I might be able to untangle some of the problems that necessitate a custom ManuallyDrop. It's all somewhat tied up in the parameter binding support that I have slowly been simplifying but I think more could be done to make this "just work".

I'm unclear what you think the purposes of the type is because the type docs stop mid-sentence, but I would strongly encourage you to pick a name other than ManuallyDrop.
@Flakebi: Note that Rust unions already can't contain types that need to be dropped. Example that will print the appropriate error if you try to run it: https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=6ca6f3794c078115767864ab1ab14070

because the type docs stop mid-sentence

That's probably due to this typo:
https://github.com/microsoft/windows-rs/blob/721027379419bc58a9293adc51ea04a55e87e993/crates/libs/windows/src/core/manually_drop.rs#L3-L4

Ah, then I don't understand the comment because ManuallyDrop has Deref and DerefMut impls.


Setup release v0.0.15 [phab:D553]

Created by schroederc at 2015-10-13 18:07:14:

shahms accepted this revision at 2015-10-13 18:07:53

schroederc closed via commit ded11436a91e9948439c64c2eda87b8cbd23acfc at 2015-10-13 18:25:28


Support EXT-X-SCTE when encoding playlists

Expands upon #40 to support encoding the SCTE segments into a playlist.
Such that the following:
package main

import (
        "fmt"

        "github.com/grafov/m3u8"
)

func main() {
        p, _ := m3u8.NewMediaPlaylist(1, 1)
        _ = p.Append("test01.ts", 5.0, "")
        _ = p.SetSCTE("CueData", "ID", 3.141)
        fmt.Print(p.String())
}

Outputs:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:5
#EXT-X-SCTE:CUE="CueData",ID="ID",TIME=3.141
#EXTINF:5.000,
test01.ts

@vishal24tuniki if you have a moment, can you look over this and ensure it's behaving as expected, if you're OK with it, I'll merge.

@bradleyfalzon Yes sure, will go over it in couple of hours :)

@bradleyfalzon Everything looks fine. Just the SCTE tag is wrong as mentioned in the inline code comments

Brilliant, thanks @vishal24tuniki

#EXT-SCTE: is still wrong, its #EXT-SCTE35:


error when run the file" \examples\geometry_engine\airfoil\airfoil_xfoil_parallel.py"

when run the  airfoil_xfoil_parallel.py file under spyder envirement, the out put are as follows:
Running XFoil sweeps on Airfoil sd7032...
Traceback (most recent call last):
File "D:\PROGRAM\python\AeroSandbox\examples\geometry_engine\airfoil\airfoil_xfoil_parallel.py", line 8, in
parallel=True
File "C:\ProgramData\Anaconda3\lib\site-packages\aerosandbox\geometry\airfoil.py", line 987, in get_xfoil_data
pool = mp.Pool(mp.cpu_count())
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\context.py", line 119, in Pool
context=self.get_context())
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\pool.py", line 176, in init
self._repopulate_pool()
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\pool.py", line 241, in _repopulate_pool
w.start()
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\process.py", line 112, in start
self._popen = self._Popen(self)
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\context.py", line 322, in _Popen
return Popen(process_obj)
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\popen_spawn_win32.py", line 46, in init
prep_data = spawn.get_preparation_data(process_obj._name)
File "C:\ProgramData\Anaconda3\lib\site-packages\multiprocess\spawn.py", line 172, in get_preparation_data
main_mod_name = getattr(main_module.spec, "name", None)
AttributeError: module 'main' has no attribute 'spec'

Error for me too, on macos, i tried to run /AeroSandbox/examples/geometry_engine/airfoil/airfoil_xfoil_parallel.py as is
Running XFoil sweeps on Airfoil sd7032...
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
Exception ignored in: <function XFoil.__del__ at 0x7f832eb72f28>
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 66, in __del__
    handle = self._lib._handle
AttributeError: 'XFoil' object has no attribute '_lib'
multiprocess.pool.RemoteTraceback:
"""
Traceback (most recent call last):
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/multiprocess/pool.py", line 121, in worker
    result = (True, func(*args, **kwds))
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/multiprocess/pool.py", line 44, in mapstar
    return list(map(*args))
  File "/Users/puiseux/GitHub/AeroSandbox/aerosandbox/geometry/airfoil.py", line 968, in get_xfoil_data_at_Re
    reset_bls=True,
  File "/Users/puiseux/GitHub/AeroSandbox/aerosandbox/geometry/airfoil.py", line 805, in xfoil_aseq
    xf = XFoil()
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/xfoil/xfoil.py", line 56, in __init__
    self._lib = cdll.LoadLibrary(self._lib_path)
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/ctypes/__init__.py", line 434, in LoadLibrary
    return self._dlltype(name)
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/ctypes/__init__.py", line 356, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(/var/folders/n4/bcbxk0g53j1f88t5q3ghv2_c0000gn/T/tmp7is24tqu.dylib, 6): Library not loaded: /usr/local/lib/libgfortran.3.dylib
  Referenced from: /private/var/folders/n4/bcbxk0g53j1f88t5q3ghv2_c0000gn/T/tmp7is24tqu.dylib
  Reason: image not found
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/puiseux/GitHub/AeroSandbox/examples/geometry_engine/airfoil/airfoil_xfoil_parallel.py", line 8, in <module>
    parallel=True
  File "/Users/puiseux/GitHub/AeroSandbox/aerosandbox/geometry/airfoil.py", line 998, in get_xfoil_data
    runs_data = pool.map(get_xfoil_data_at_Re, Res)
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/multiprocess/pool.py", line 268, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
  File "/Users/puiseux/anaconda2/envs/Apero/lib/python3.7/site-packages/multiprocess/pool.py", line 657, in get
    raise self._value
OSError: dlopen(/var/folders/n4/bcbxk0g53j1f88t5q3ghv2_c0000gn/T/tmp7is24tqu.dylib, 6): Library not loaded: /usr/local/lib/libgfortran.3.dylib
  Referenced from: /private/var/folders/n4/bcbxk0g53j1f88t5q3ghv2_c0000gn/T/tmp7is24tqu.dylib
  Reason: image not found

I was also getting an error running this example. For me the issue seems to be with stdout_redirected which an attempt to silence xfoil output in aerosandbox/tools/string_formatting.py. By silencing its call in method xfoil_aseq of airfoil.py I fixed the issue

Hi all,
Thank you all for the bug reports, and sorry for the delayed response!
These are three separate bugs for each commenter, two of which are due to underlying libraries:

@gkbatchelor is seeing an issue deep inside the multiprocess library (homepage here); unfortunately I'm not well-versed enough in the inner workings of this library to be of much help debugging this. A quick fix is to flag parallel=False, which will run the code in serial mode, bypassing the multiprocess module entirely.

@puiseux is seeing an issue within the underlying xfoil-python library (GitHub source here). Unfortunately, this library seems to be no longer maintained and not compatible with Python 3.8+ on Windows or any Python version on Mac/Linux - which is a shame because direct XFoil calls from Python were really useful. Dropped issue ticket to follow here: https://github.com/DARcorporation/xfoil-python/issues/9

@antoniosgeme is seeing an issue with stdout_redirected() which is inside aerosandbox. We're currently tracing this issue; it seems to throw errors somewhat randomly on various users' computers, but we're not yet sure what's causing that. AeroSandbox v3.0.0 is about to release soon, which, along with adding tons and tons of features, documentation, and tutorials, will remove this function until we can do more testing and debugging here.

@peterdsharpe  I am looking forward to 3.0.0. After upgrading to python 3.8.5, I am no longer able to reproduce the error since xfoil-python won't build in the first place. Seems like there is a PR to fix that but as you said the repo is likely not maintained.
Previous version: 3.7.9
ASB version : 2.2.10
Windows 10
sys.stdout.fileno() was working from command line but not from IPython or IDLE.


Deprecate pstore/config/util in favour of lib/yamlutil

The proxy server I am working on uses this to process its YAML config files, so I want to move this code to a better place.


Cannot use actions to connect to apt-get (Repeat of #675)

Description
Running Run sudo apt-get install libcurl4-openssl-dev in github actions fails with an error
This looks like a clone of #675
Platforms affected

[ ] Azure DevOps
[X] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 18.04
[X] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 10.15
[ ] macOS 11
[ ] macOS 12
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
Not sure what this is asking? I cannot find the link flow. Where is "Set up job"
Is it regression?
I believe so from #675
Expected behavior
The sudo command to install packages
Actual behavior
Suggested packages:
  libcurl4-doc libidn11-dev libkrb5-dev libldap2-dev librtmp-dev libssh2-1-dev
The following NEW packages will be installed:
  libcurl4-openssl-dev
0 upgraded, 1 newly installed, 0 to remove and 20 not upgraded.
Need to get 322 kB of archives.
After this operation, 1543 kB of additional disk space will be used.
Ign:1 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libcurl4-openssl-dev amd64 7.68.0-1ubuntu2.13
Err:1 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libcurl4-openssl-dev amd64 7.68.0-1ubuntu2.13
  404  Not Found [IP: 52.[25](https://github.com/Globacap/web-automation/actions/runs/3342414147/jobs/5537865982#step:2:26)2.75.106 80]
E: Failed to fetch http://azure.archive.ubuntu.com/ubuntu/pool/main/c/curl/libcurl4-openssl-dev_7.68.0-1ubuntu2.13_amd64.deb  404  Not Found [IP: <IP_ADDRESS> 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Error: Process completed with exit code 100.

Repro steps
As described

Hey @luke-hill.
Please note: https://docs.github.com/en/actions/using-github-hosted-runners/customizing-github-hosted-runners

Note: Always run sudo apt-get update before installing a package. In case the apt index is stale, this command fetches and re-indexes any available packages, which helps prevent package installation failures.

Should be:
 - run: |
          sudo apt-get update
          sudo apt-get install libcurl4-openssl-dev

Is there a reason this has passed ~ 300 times in the past 2+ months without this then?

Is there a reason this has passed ~ 300 times in the past 2+ months without this then? To help my knowledge for the future e.t.c.

https://github.com/actions/runner-images/issues/592#issuecomment-602448135

So ubuntu updated this lib-ssl package, which hasn't happened for a while. And as such the old cache one is invalidated and it cannot find the existing one on the server without updating refs first.
TIL - Many thanks @al-cheb 🥇

I am running sudo apt-get -y update but am still getting connection errors here; I think others are too at the moment.
Very slow connections to upstream apt repo; timeouts; or 404s.
I think there is actually something that is wrong with the upstream server, that intermittently goes wrong with it. Not sure if we should file a separate ticket.

This error occurs even after adding sudo apt-get update in the command:
Failed workflow: https://github.com/cloudspannerecosystem/harbourbridge/actions/runs/3908957093/jobs/6679673034
Upated Workflow file: https://github.com/cloudspannerecosystem/harbourbridge/actions/runs/3908957093/workflow#L130


Bug 1977972: /etc/driver-toolkit-release.json kernel version match rpm -q output

In versions of OCP where ART is specifying the kernel version as an argument to the driver-toolkit image build, the KERNEL_VERSION and RT_KERNEL_VERSION in /etc/driver-toolkit-release.json is missing the architecture at the end. Currently this is seen when comparing between DTK builds in 4.7 and 4.8
This results in unneeded inconsistencies between OCP versions, and means in some cases the kernel versions do not match with the node labels from NFD.

/lgtm

/cherry-pick release-4.8


Quick Tip Screens

** NEEDS ASSETS **
Description
Should add initial 7 quick tip screens to help center.
Each view should have an animated image (TBD if this is a gif or a lottie file), a title, and some body text.
https://www.figma.com/file/NHHMwIfxMnz39NxqkrFb7R/Stories-Post-Stable?node-id=4184%3A294993
Potential reference material: react-lottie for file type.
Acceptance Criteria
Should have 7 screens for the following (please reference Figma)

Add background media
Crop Selected element
Crop elements using shapes
Stay within the safe zone
Preview your web story
Add links to design elements
Enable swipe-up option

Convo in slack started by @aaecheverria  Jan 13, 2021 about checking early if lottie files will work for us. Copying here:

This is the Lottie file example for the animations within the companion/helper module. Please let us know if this is working ok so we can prepare and hand-off  the rest of the animations

Creator_Module_1.zip
@embarks can you do a quick sanity check that this will pan out?

Convo in slack started by @aaecheverria  Jan 13, 2021 about checking early if lottie files will work for us. Copying here:

This is the Lottie file example for the animations within the companion/helper module. Please let us know if this is working ok so we can prepare and hand-off  the rest of the animations

Creator_Module_1.zip
@embarks can you do a quick sanity check that this will pan out?

Hi guys @embarks @BrittanyIRL @swissspidy
Please find below the drive folder link with the exported assets for the tips animations (in the format we discussed in the slack channel: MP4 and webm).
https://drive.google.com/corp/drive/u/0/folders/1Iabww-Bs6p6kycqeQ0DxYLKkKI5AYjG6
There is one missing (preview tip), we will be adding it on Monday.

Hi guys @embarks @BrittanyIRL @swissspidy
Please find below the drive folder link with the exported assets for the tips animations (in the format we discussed in the slack channel: MP4 and webm).
https://drive.google.com/corp/drive/u/0/folders/1Iabww-Bs6p6kycqeQ0DxYLKkKI5AYjG6
There is one missing (preview tip), we will be adding it on Monday.

Hi @embarks @BrittanyIRL
We are making some tweaks to some of the assets. . We will post the new ones tomorrow at last. Please let me know if this works for you.
On the other hand, copy for the FTUE companion helper is final now and approved by Sam.

Hi @embarks @BrittanyIRL
We are making some tweaks to some of the assets. . We will post the new ones tomorrow at last. Please let me know if this works for you.
On the other hand, copy for the FTUE companion helper is final now and approved by Sam.

@aaecheverria Thanks for the update!
Asset updates for tomorrow should be fine. It's great to know the copy is approved. This is the copy that is currently in figma or is there a doc somewhere?
@littlemilkstudio ^^ above thread just for context since you're the one building!

@aaecheverria Thanks for the update!
Asset updates for tomorrow should be fine. It's great to know the copy is approved. This is the copy that is currently in figma or is there a doc somewhere?
@littlemilkstudio ^^ above thread just for context since you're the one building!

Hi @BrittanyIRL @embarks
In the same shared folder you can find the latest versions of the motion assets:
https://drive.google.com/corp/drive/folders/1Iabww-Bs6p6kycqeQ0DxYLKkKI5AYjG6 (please dismiss the Old version and the Future version folders for now).
Thanks!

Hi @BrittanyIRL @littlemilkstudio @embarks
Tad, told me there were some transparency issue with the assets. In the same folder you can find the updated version of the 7 tips. Please let us know if they are working as intended now :)
Thanks!

@aaecheverria thank you so much for updating all the assets! I really appreciate it. Could you check on Module 1 and Module 7 again for me? I'm still seeing a black background just on those two. These look great. ✨


debug mode docs don't match types

in the docs here:
https://github.com/prisma/prisma2/blob/master/docs/photon/api.md#debugging
it mentions debug mode can be used with const photon = new Photon({ debug: true }) however this raises an error in practice:
Argument of type '{ debug: boolean; }' is not assignable to parameter of type 'PhotonOptions'.
It seems log is available and __internal: { debug: true } not sure if either or both of these is equivalent.

Yes, it is indeed a typing. If you will execute it in JS, it logs the debug output.
Thanks for catching this!

Hey @chrisdrackett, thanks a lot for opening this issue! I couldn't reproduce the error Argument of type '{ debug: boolean; }' is not assignable to parameter of type 'PhotonOptions'. that you shared, can you confirm that this actually works in the latest release?
I did update the docs though to also document the log option and the different log levels that can be provided: https://github.com/prisma/prisma2/blob/master/docs/photon/api.md#debugging
Let me know if that addresses your issues! 🙂


Requirements check page

It would be useful to have a webpage that checks all requirements (php version, xml-lib, pdo). Troubleshooting will be easier.

Added in b6f39f32898028a9b10d1a5439f27af306a1a63e


Lagoon does not support DSA nor ECDSA formatted SSH keys

Lagoon currently supports only ED25519 and RSA based SSH keys. It shouldn't be too much trouble to add support for DSA and ECDSA formatted keys as well for customers who chose to use this format for their SSH keys.

It looks like we'd need to update the character matching in the UI here: https://github.com/uselagoon/lagoon/blob/main/services/ui/src/components/SshKeys/AddSshKey.js#L19
We'd also need to update the db fields migration here: https://github.com/uselagoon/lagoon/blob/main/services/api-db/docker-entrypoint-initdb.d/01-migrations.sql#L549
There's also the idea of not tracking the type of an SSH key at all...

Closing as a duplicate of #2189


insert some lines and modify next line makes conflict

for example, data is:
const mine = `{"3":"00001","5":"abcdefg 1"}
{"3":"00005","5":"abcdefg 5!"}
`;
const base = `{"3":"00001","5":"abcdefg 1"}
{"3":"00005","5":"abcdefg 5"}
`;
const theirs = `{"3":"00001","5":"abcdefg 1"}
{"3":"00002","5":"abcdefg 2"}
{"3":"00003","5":"abcdefg 3"}
{"3":"00004","5":"abcdefg 4"}
{"3":"00005","5":"abcdefg 5"}
`;

using diff command in Mac, the result below is what we expected:
{"3":"00001","5":"abcdefg 1"}
{"3":"00002","5":"abcdefg 2"}
{"3":"00003","5":"abcdefg 3"}
{"3":"00004","5":"abcdefg 4"}
{"3":"00005","5":"abcdefg 5!"}

but using jsdiff library, there is a conflict, the code is:
const parsedDiff = merge(mine, theirs, base);
const merged = applyPatch(base, parsedDiff);

So is it my mistake in using it, or does jsdiff not support merging in this situation

I'll answer the explicit question first - you've made no mistake here. jsdiff doesn't support merging here.
This is an interesting case to think about. I'm curious - how are you applying / merging the patches from the command line that is happy to apply these? You say you're using diff but at least my Ubuntu version of diff only generates patches and doesn't (unless I've missed a feature!) apply them; did you mean to say you applied them using the patch command?
I do note that Git (... or at least the version of Git on my machine!) agrees with jsdiff that this is a merge conflict.
Treating it as a conflict seems reasonable to me, although I can imagine the rough outline of an alternative (better?) merge algorithm that would be able to merge these patches automatically. Let me try to outline two coherent ways of thinking about the problem - jsdiff's, and a sketch of an alternative way that better matches your intuition.
Perspective 1 (how jsdiff sees things)
jsdiff has no concept of a line being "modified". (Indeed the unified diff format conventionally used for patches also has no concept of a line being "modified".) There are only insertions and deletions. In text mine, the line {"3":"00005","5":"abcdefg 5"} was deleted and the completely different line {"3":"00005","5":"abcdefg 5!"} was inserted. That there is only one character of difference between these two lines is entirely irrelevant.
In theirs, the line {"3":"00005","5":"abcdefg 5"} was not deleted, and several other lines were inserted before it.
This makes merging the patches automatically risky and forces any automatic merge to make some arbitrary choices:

Should the line {"3":"00005","5":"abcdefg 5!"} (inserted in mine) end up before or after the lines inserted in theirs? There is no reason to favour one order over the other.
Is it still valid to insert the stuff from theirs given that the line {"3":"00005","5":"abcdefg 5"} has been deleted? Since the inserted lines were adjacent to that line, there's a fairly high risk that they are coupled to it in some way and no longer make sense with it deleted.

Therefore the only safe thing to do is fail and complain of a conflict.
Perspective 2 (how you are intuitively thinking about this)
The change made in mine is clearly a modification (namely inserting a single ! character) to a line from base. We can tell this because the line is long and most characters on it are unchanged. The merge algorithm should recognise this and represent the change as a line modification, not as an insertion + deletion pair.
Once we have understood the change in this way, there is no longer any conflict. We understand that the line with the added ! is in some sense the "same" line that the insertions from theirs are meant to go before, just modified. So we can happily do those insertions before it and all is well.

It'd be interesting to write a merge conflict resolver that is capable of "reasoning" in the second way outlined above. Perhaps there's one out there (no idea tbh - I don't know the space of current implementations very well). I suspect (but am not sure) that an algorithm capable of recognising "modifications" to lines like this would tend to do a better job of automatic merging without letting through any significant number of bad merges (though this is conjecture and certainly not trivial to confirm or disconfirm).
But jsdiff doesn't do it (and nor does Git, I think?). Two lines that differ from each other by one character are as different from jsdiff's perspective as two lines that have no common characters at all, and when diffs are viewed from that perspective, this is a clear merge conflict and gets treated as such.

Closing this as I don't think I'd want to make any changes to jsdiff based on this, but I am certainly still interested in reading further discussion and don't mean closure to deter that.

This is an interesting case to think about. I'm curious - how are you applying / merging the patches from the command line that is happy to apply these? You say you're using diff but at least my Ubuntu version of diff only generates patches and doesn't (unless I've missed a feature!) apply them; did you mean to say you applied them using the patch command?
Yes, I also used the patch command. The complete command is below:

diff base local > diff_local.patch
diff base remote > diff_remote.patch
patch base < diff_local.patch -o merged_file // it equals local as a matter of course
patch merged_file < diff_remote.patch -o final_merged_file


Add 'Bounce' widget and several other improvements.

Disclaimer: I still need to add tests for this.

Closing this for now, as there are some animation primitives in the works that this should be rebased on top of.


Stackoverflow parsing Eigen

Brief Description
When parsing a header that #includes <Eigen/Dense> or similar, the parse hanges for a long time before failing with a Stack overflow.  I certainly don't need all (or any) of the Eigen functionality mapped but since it is failing in the parse stage, seems like applying TypeMap won't help.
OS: OS X
Built from master with downloaded llvm
Used headers
#include <Eigen/Dense>

struct MyStruct {
  Eigen::Vector3f eigen_member_;
};

Used settings
mono bin/CppSharp.CLI.exe testheader.h -I /usr/local/include/eigen --debug
Target: Clang
Stack trace or incompilable generated code
Generating C# bindings for OSX x86...
Parsing libraries...
Parsing code... (ed: very long time here)
Stack overflow: IP: 0x107eb9f3f, fault addr: 0x7ffeed50bfc8
Stacktrace:
  at <unknown> <0xffffffff>
  at CppSharp.Parser.ClangParser.ParseHeader (CppSharp.Parser.CppParserOptions) [0x0001e] in <bcd3c6bf8cbb4e14b1b403fccc6db1b9>:0
  <...>
  at CppSharp.ClangParser.ParseSourceFiles (System.Collections.Generic.IEnumerable`1<string>,CppSharp.Parser.ParserOptions) [0x00044] in <10575253dd0841909563e0a4ef285e3e>:0
  at CppSharp.Driver.ParseCode () [0x0006d] in <7687010274814f718efb10ca9e0b80ac>:0
  at CppSharp.ConsoleDriver.Run (CppSharp.ILibrary) [0x00090] in <7687010274814f718efb10ca9e0b80ac>:0
  at CppSharp.Generator.Run () [0x0014e] in <06190b4a6e594f2aaca23a3affd0edb3>:0
  at CppSharp.CLI.Main (string[]) [0x00043] in <06190b4a6e594f2aaca23a3affd0edb3>:0
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) [0x0002a] in <06190b4a6e594f2aaca23a3affd0edb3>:0

@jlaxson we know about this bug, in fact, it's been reported with the very same header. Out free time is limited at present but you can always try contacting our support.

@brunnerant Wish I had a better answer to tell you but the fact is our time to work on these kind of fixes is extremely limited, given all the other issues and improvements we could be doing.
The fastest way to get this over the line is to get in contact with either me or @josetr and sponsor the fix, we offer pretty fair rates for this kind of support work and will gladly help you with what you need.


xctool clean failed  with error code: 4

use xcode 8
ERROR: Unexpected action: clean
ERROR - Command 'xctool -workspace MushroomCloud.xcworkspace -sdk iphonesimulator ARCHS=i386 VALID_ARCHS=i386 CURRENT_ARCH=i386 ONLY_ACTIVE_ARCH=NO -scheme MushroomCloud clean' failed with error code: 4

Can you please try latest xctool release which is 0.3? It should be available via homebrew very soon.

We don't support clean action since Xcode 8.

If clean action is not supported, should we modify the run-sonar.sh linked in the README? Or could you link an updated version of the run-sonar.sh?

Sorry, which run-sonar.sh are you talking about?

I encouner tne same problem When sh run-sonar.sh use xcode 8.1

Same problem .
How to fix?

Same issue here. Can you please provide any fix?

@ExtremeMan  .. I am already using latest xctool 0.3.1 still facing the same issue. Any updates ??


These links do not point to Windows 11 SDK/WDK/EWDK installers - they are version 10

This link does NOT point to v11 (22H2) of the SDK. It points to v10 (old version):
https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/
This link does NOT point to v11 (22H2) of the WDK. It points to v10 (old version):
https://go.microsoft.com/fwlink/?linkid=2196230
This link does NOT point to v11 (22H2) of the EWDK. It points to v10 (old version):
https://docs.microsoft.com/en-us/legal/windows/hardware/enterprise-wdk-license-2022
These links are invalid, or you don't yet have versions of the SDK/WDK/EWDK for Windows 11. Either correct this page OR delete the links because there are issues (as you denote on this page) with using the these older versions with Visual Studio 2022.

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

ID: 5930505f-6810-b2a2-86b5-3c678aae7f89
Version Independent ID: 28315cf8-f06f-23ad-2088-9d51d08efe0d
Content: Download the Windows Driver Kit (WDK) - Windows drivers
Content Source: windows-driver-docs-pr/download-the-wdk.md
Product: windows-hardware
Technology: whats-new-and-downloads
GitHub Login: @tedhudek
Microsoft Alias: tedhudek

Hi @fenderluvr thanks for the feedback.  In fact, it was indeed the v11 (22H2) kit, it just so happens that the version number for that kit is 10.0.22621.1.  However, we just replaced it with an updated version of the v11 (22H2) kit last Friday -- with a new version number of 10.0.22621.382.  The new kit is available from the same download link as before -- https://go.microsoft.com/fwlink/?linkid=2196230.
For more info about the update, see the Note at the top of https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk .
Thanks again for reaching out!

If true, that's a very confusing versioning method - at best. Also, I
notice that you didn't address the WDK/EWDK in your response but closed out
the request.
On Mon, Aug 22, 2022 at 6:26 PM Ted Hudek @.***> wrote:

Hi @fenderluvr https://github.com/fenderluvr thanks for the feedback.
In fact, it was indeed the v11 (22H2) kit, it just so happens that the
version number for that kit is 10.0.22621.1. However, we just replaced it
with an updated version of the v11 (22H2) kit last Friday -- with a new
version number of 10.0.22621.382. The new kit is available from the same
download link as before -- https://go.microsoft.com/fwlink/?linkid=2196230
.
For more info about the update, see the Note at the top of
https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
.
Thanks again for reaching out!
—
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/windows-driver-docs/issues/3235#issuecomment-1223237708,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACDVXLYXHZA2CSTCF42AIRDV2P47VANCNFSM563AWTSQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


older(?) safari - buttons show as inputs/don't work

user submitted

using Safari on an old iPad the buttons to ‘save current options’ and ‘start static site export’ act as input fields, and won’t work.

look at changing from input  with class of button (taken from WP style guide?) to button with same class.

should now be fixed as these were changed to <button>s


Cow: Watch brandsrope.com

Cow requests the watch of the watch_keyword brandsrope\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

brandsrope\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.


Cannot create proof

Hi,
I have implemented a new screen to manage proofs. When i send my proof presentation, i received this error
Hyperledger.Indy.InvalidStructureException Message=A value being processed is not valid.
The error is thrown by this method "indy_prover_create_proof" in libindy. Any idea?

@foxbike what are you using to issue the request to the mobile agent?

I encounter the same problem too. I used an agent based on  Aries .dotnet framework to send request.
The following is the proof request
var proofRequest = new ProofRequest
{
Name = "Proof of Education",
Version = "1.0",
Nonce = await AnonCreds.GenerateNonceAsync(),
RequestedAttributes = new Dictionary<string, ProofAttributeInfo>
{
{ "referent1", new ProofAttributeInfo {
Name = "name",
Restrictions = new List {
new AttributeFilter {
SchemaName = "degree-schema"
}
}
}}
}
};

If you are using the sample code from dotnet framework to issue credential, make sure the timestamp field is not empty, the degree-schema has timestamp attribute. I got it to work after inserting the value in the timestamp field.

I encounter the same problem too. I used an agent based on Aries .dotnet framework to send request. The following is the proof request var proofRequest = new ProofRequest { Name = "Proof of Education", Version = "1.0", Nonce = await AnonCreds.GenerateNonceAsync(), RequestedAttributes = new Dictionary<string, ProofAttributeInfo> { { "referent1", new ProofAttributeInfo { Name = "name", Restrictions = new List { new AttributeFilter { SchemaName = "degree-schema" } } }} } };


docker arm64

Does anyone know how to build it for arm64?
tried
docker buildx build --platform linux/amd64,linux/arm64 -t myuser/eznode:latest .
or
docker build --platform linux/arm64 -t myuser/eznode:latest .
but when using the image, I got this error:
standard_init_linux.go:228: exec user process caused: exec format error

There are a few build args that need to be set to build the image for arm64.
You can set these args and build the docker image by running the following command in the repo directory: ./docker/build-arch.sh arm64 -t eznode
This is also mentioned on https://ezno.de/building

thank you @shesek


How to turn on/off and re-render highlight?

It would be nice to have ability to re-render highlight and calculations, in pair with complete turn on/off of highlight.
At the moment it calls removeCodeCoverageOnFileSave whenever there are changes, but no visible option on how to activate it back for non-changed files.
From UX perspective it makes sense to show warning that highlight can't be shown for edited file because .resultset.json is older than current file.

@orangedsoft Hey! Nope, I did not find a way to do so. By looking at the code it requires some work here. At this point I am already quite used to this over illuminated palette, so not yet investing into fixing the extension. :)

Thanks for opening the issue @amkisko and sharing feedback. I'll look at adding a keyboard shortcut command that people can bind and report back. The keyboard shortcut would allow you to toggle coverage on a file. I do still like the user experience of on save clearing on editors, otherwise it'd be a bit much permanently highlighting the coverage and being required to use a shortcut to remove it.

Version v0.0.7 has been published to the VS Code marketplace! You can download it now if your editor hasn't already automatically updated the extension.
The following commands were added:

simplecov.coverage.toggle: Toggle the display of code coverage.
simplecov.coverage.apply: Apply the coverage to the currently active file.
simplecov.coverage.remove: Remove the coverage from the currently active file.

They are not bound to any shortcuts by default. To set it up you can follow the VS Code shortcut editor documentation.
Let me know what you think!


Support Luau

remodel currently only supports Lua 5.3. It would be awesome to support Luau as well. This could be done in a backwards compatible manner by having .lua run in Lua 5.3, and having .luau run in Luau.

I think that we would ideally cut over to Luau completely in a new release, as opposed to supporting two different runtimes.

Works for me :+1:

I think that we would ideally cut over to Luau completely in a new release, as opposed to supporting two different runtimes.

A full transition to Luau in a new release would be great, supporting both vanilla 5.3 and Luau wouldn't make much sense, I agree with this.

Support for vanilla Lua should be preserved also.
Also support for LuaJIT would be great as LuaJIT is used on some backend workflows


Using phpunit.phar

This cost me a considerable amount of time to figure out.
I was trying to use phpunit.phar and added the path to the configuration. Spawning the process failed so I decided to dig deeper. Long story short:
"phpunit.execPath": "php", // path to php or php command
"phpunit.args": [
    "C:\\php\\phpunit-6.4.4.phar" // path to phpunit.phar
],

did the trick! (using Win10 but should apply to any OS)
Would be nice to add some kind of annotation to the setup instructions.
cheers

Sorry for that, but it's true. I'm also on windows but I use composer. I've created a .bat file for the execPath.
With content: php ../phpunit/phpunit/phpunit %*. Runs php with phpunit as input file and tags on any arguments. You could do the same if you like but your solution also works.
Either way, I should make it more clear in the readme.

I released v3.0.0 (also published to the marketplace) and it will find a composer.phar file automatically if it's in the project folder and use that without any configuration. php is also not needed if it's in the global environment variables.


STORM-1928 ShellSpout should check heartbeat while ShellSpout is waiting for subprocess to sync

When nextTuple is not calling at any chances (max spout pending, backpressure introduced at 1.0.0, and so on) multi-lang spout don't receive any message from ShellSpout, thus no messages from multi-lang spout side. (because multilang spout and ShellSpout communicates like ping-pong, unlike multilang bolt and ShellBolt)
In result, no heartbeat is being marked, and finally raises subprocess heartbeat timeout.
This PR changes ShellSpout to only check heartbeat while ShellSpout is waiting for subprocess to sync.
And this PR also changes ShellSpout.die logic similar to ShellBolt, since I found ShellSpout's die message was logged but worker itself was not died after logging. Only that task was died.

Could anyone review this? This is critical issue on multilang spout.

one minor nit, but overall I am +1 with or without the change.

+1 but all 4 CI jobs failed.  They look unrelated to this, as some of them are failing because of a RAT problem.  Lets fix the build ASAP before we merge in much more.

The file without a license is external/storm-kafka-monitor/src/main/java/org/apache/storm/kafka/monitor/KafkaPartitionOffsetLag.java
I'll file a separate JIRA for that.

Just rebased with master which fixes RAT issue. I'll merge after build shows green or at least issues are all unrelated.

OK. Only one of build which is run by !storm-core failed. Merging.


Use JupyterLab with SAP HANA, express edition

Tutorial URL: https://developers.sap.com/tutorials/mlb-hxe-tools-jupyter.html
Please specify the step you are referring to:

Step 5: Install JupyterLab

Building wheels for collected packages: subprocess32
Building wheel for subprocess32 (setup.py) ... error
ERROR: Command errored out with exit status 1:
compilation terminated.
error: command 'gcc' failed with exit status 1
linux log.txt

Hi @biscuit-70 . Sorry for delay replying.
There was an error message fatal error: Python.h: No such file or directory in your log. It means that Python2 developer libraries are not properly installed.
Fix it with sudo zypper in python-devel

Thank you for your feedback. The issue seems to be resolved, so I am closing the issue.
If you still have questions, feel free to reopen the issue.


ng build --prod

When i make a build (ng build --prod) appear this error:
ERROR in ./node_modules/ng2-input-autocomplete/ng2-input-autocompleteModule.ngfactory.js
Module not found: Error: Can't resolve 'ng2-input-autocompleteModule' in '/home/softkuka/Documentos/2 - Softkuka/2 - Testes/auto-complete/node_modules/ng2-input-autocomplete'
ERROR in ./src/app/app.module.ngfactory.js
In application he work fine, but i can't make a build --prod

Thanks for your report. I have released a new version for fixing this bug.

Thank you very much!!!! Works fine


warp-terminal: 0.2<IP_ADDRESS>.02.stable_01 -> 0.2<IP_ADDRESS>.02.stable_01

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for warp-terminal is: Rust-based terminal
meta.homepage for warp-terminal is: https://www.warp.dev
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.2<IP_ADDRESS>.02.stable_01 with grep in /nix/store/i3cnnkavsqd3bw3lyifcf81ihcyax1lb-warp-terminal-0.2<IP_ADDRESS>.02.stable_01
found 0.2<IP_ADDRESS>.02.stable_01 in filename of file in /nix/store/i3cnnkavsqd3bw3lyifcf81ihcyax1lb-warp-terminal-0.2<IP_ADDRESS>.02.stable_01

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

warp-terminal

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/i3cnnkavsqd3bw3lyifcf81ihcyax1lb-warp-terminal-0.2<IP_ADDRESS>.02.stable_01 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A warp-terminal https://github.com/r-ryantm/nixpkgs/archive/a9b6a73c8355b43543fa60c64f3ab5eee119c5b0.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/a9b6a73c8355b43543fa60c64f3ab5eee119c5b0#warp-terminal

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/i3cnnkavsqd3bw3lyifcf81ihcyax1lb-warp-terminal-0.2<IP_ADDRESS>.02.stable_01
ls -la /nix/store/i3cnnkavsqd3bw3lyifcf81ihcyax1lb-warp-terminal-0.2<IP_ADDRESS>.02.stable_01/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

warp-terminal

Maintainer pings
cc @emilytrau @imadnyc @DontEatOreo @johnrtitor for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge


Add shortcut to close plugin manager dialog and quit application

Fixes #38
Fixes #4
Add shortcut to close plugin manager dialog on mac systems (Cmd+W) and quit application on all other systems (Ctrl+Q)

Why only on macos system?

Why only on macos system?

Hi @Czaki, the Cmd+W is a mac only thing as far as I know.
The quit application one, does work for all systems

Command-W works nice! Huge improvement.
But I was somewhat surprised when Command-Q quit without the usual warning/confirmation.
Frankly, we could drop that -- it's not odd to have to close the dialog before quitting.

I used Command-Q, which worked, but I was somewhat surprised it just straight quit, without the usual warning/confirmation.

Command+W/Q do not ask for confirmation if there is no layer.

running napari from terminal and then Command-Q I get asked to confirm.

running napari from terminal and then Command-Q I get asked to confirm.

You are right, for command+Q should always be a confirmation if not disabled in settings...

Isn't the usual Quit shortcut Alt+F4 in Windows? Or is that no longer recommended?

Isn't the usual Quit shortcut Alt+F4 in Windows? Or is that no longer recommended?

Alt + F4 is system shoutcut, not application one.

Hello team, thanks for testing and comments, will leave then the shortcut for all systems, and check about the confirmation dialog :)
Cheers!

@Czaki and @psobolewskiPhD I have added a fix to emulate the current behavior of Cmd+Q of napari.
Could you please check :) ?

Could you check this one @dalthviz ? Thanks !

Gave this a check on Windows and this is what I'm seeing:

Confirm config + number of layers\Shortcut
Ctrl+W
Ctrl+Q

Confirm dialog enabled without layers

Confirm dialog enabled with one layer

Confirm dialog disabled without layers

Confirm dialog disabled with one layer

So I would say that this is fixing the mentioned issues :+1:
However, something that maybe is worthy to carefully think about (probably related with https://github.com/napari/napari/pull/6993) is that since actions (install/uninstall) continue running even after the dialog closes, you can end up seeing a message like:
WARNING: QProcess: Destroyed while process ("C:\\Users\\dalth\\anaconda3\\envs\\napari-dev\\python.exe") is still running.

By triggering the shortcuts two consecutive times or even by executing the Ctrl+Q only once if the confirmation dialog is disabled when you previously started an install or uninstall plugin action from the plugin dialog

By triggering the shortcuts two consecutive times or even by executing the Ctrl+Q only once if the confirmation dialog is disabled when you previously started an install or uninstall plugin action from the plugin dialog

Yes I guess we will need https://github.com/napari/napari-plugin-manager/pull/56 and https://github.com/napari/napari/pull/6993 for this. Tracking issue is https://github.com/napari/napari-plugin-manager/issues/53.

Awesome, so this looks like it is good to go. Should I merge? or should someone besides the author do it :) ?


Refactor/unify arg popping

fix(from): objects that are thennable that happen to have a subscribe method will no longer error.
refactor: Unify argument parsing and runtime type checks

Ensures that all runtime checks that check to see if a value is a function are done via isFunction.
Unifies a common pattern of inspecting the last argument and popping it off as popScheduler and popResultSelector.

~ 2KB in savings
(Down to the ~52K range)

A little further down a rabbit hole while addressing your comments: I've refactored from and scheduled quite a bit, and there's more to do in a follow-up PR as noted in some todos.
From the commit message:
refactor: from and scheduled use the same methodology

Ensures that from and scheduled do checks in the same order. Note that I realize that scheduled has no check for input instanceof Observable, however, the interop check right after is about the same thing, and I'm not terribly worried about the performance here for the moment. Any optimizations in this area can come once we fully remove the deprecated from(x, scheduler) pathway, so we don't bloat that hot-path.
Unifies the error thrown when a non-observable argument is passed to either from or scheduled.
Unifies checks for isAsyncIterable and isAsyncIterable.
Removes extra boilerplate around subscribeTo logic, as we don't use it inside of any other operators, it was just unnecessary overhead.
Moves functions closer to actual usage.
Adds a couple of TODOs around innerFrom. Since we're using from throughout the library now to convert our returned ObservableInputs for inner subscriptions, we are now going to inadvertently include scheduled in many operators. We need to switch those operators to use innerFrom where possible, as it will omit the bit scheduled logic, because it's unnecessary.

Rebased and resolved conflicts.


Implement variable/expression interpolation in regex literals

Similar to Riff's string interpolation introduced in version 0.3.5, the same can be done for regex literals (with a different sigil). This would require conditionally compiling some regexes as runtime.

$... would be available, making regex literals resemble Perl very closely. Though it's not clear how something like $1 should be handled.

Note that either this feature or some kind of builtin function (regex(pattern[,flags])?) needs to exist to provide full capability of dynamically-created regexes. While regexes can be implicitly created at runtime by using strings with match operations, there's no way to specify regex compilation flags.
One benefit of a regex() function would be that compilation flags can also be dynamic. So it may be nice to have the builtin regardless. The choice of sigil for string interpolation (#) conflicts with the PCRE2 comment symbol for extended regexes (e.g. /pattern #comment/x), so a regex() function still doesn't fully work here unless the string interpolation sigil changes ($ can't be used for strings since [g]sub() utilizes the default "dollar escape" feature of pcre2_substitute()).
If the interpolation sigils were the same, strings and regexes could converge to a single data type; lazily compiling and caching a regex object when used on a matching operation. That would also make the disassembly a little simpler. You could define a regex as a string literal with postfix flags (e.g. 'foo $bar'i).


Unexpected Authorization Error

Describe the bug
When I click on the the course "Grundlagen: Algorithmen und Datenstrukturen" and then on Aufgabe 1 - Labyrinth. Un "Unauthorized" error message appears even though I am authorised since I enrolled in the course. It disappears after some seconds. Also, even though I get the error message, the page loads just fine with all the content. I've been able to reproduce this behaviour when clicking on exercises in my pgdp course as well but it seems to appear on programming exercises only.
To Reproduce
see above.
Expected behavior
no error message
Screenshots

Environment

 - OS: MacOS 10.15.3
 - Browser: Chrome
 - Version 81.0.4044.113 (Official Build) (64-bit)

Additional context

Output in Web Console

zone.js:3324 GET https://artemis.ase.in.tum.de/api/programming-exercises/1171 403:
detail: "Access is denied"
message: "error.http.403"
path: "/api/programming-exercises/1171"
status: 403
title: "Forbidden"
type: "https://www.jhipster.tech/problem/problem-with-message"
instrument.js:110:
{
"headers": {
"normalizedNames": {},
"lazyUpdate": null
},
"status": 403,
"statusText": "OK",
"url": "https://artemis.ase.in.tum.de/api/programming-exercises/1171",
"ok": false,
"name": "HttpErrorResponse",
"message": "Http failure response for https://artemis.ase.in.tum.de/api/programming-exercises/1171: 403 OK",
"error": {
"type": "https://www.jhipster.tech/problem/problem-with-message",
"title": "Forbidden",
"status": 403,
"detail": "Access is denied",
"path": "/api/programming-exercises/1171",
"message": "error.http.403"
}
}

not reproducible any more / was fixed


Not deleting posts until theres a historical record

Temp solution until #194.

Would this remove it from the expired queue ?


Refactor/mrtk namespaces update

Overview
This change contains a holistic refactor of namespace names with the following approach:

Prefix all with Microsoft.MixedReality.Toolkit
Simplify namespace names by grouping them under feature areas (Input, SpatialAwareness, Boundary, UI, )
Group all editor code into Microsoft.MixedReality.Toolkit.Editor.
Separate some platform specific namespaces in format Microsoft.MixedReality.Tooklit.<Editor?>..

Excel with mappings:
MRTK-Classes-NS-Update.xlsx

It'd be nice to get a call out in the description how these things were tested. It looks like there were some test related changes, so we should make sure to run through the test passes. All in all I think this will be a painful break for custom profiles, but everything here looks pretty good.

I don't have any particular issues with the namespace changes, but I wanted to mention:

I think it's ideal to have the directory structure mirror the namespaces, doesn't look like that's happening right now.
Following that, Unity's asmdef files are specific to directories, so we'd want to be careful when organizing namespaces that we don't have to manage even more asmdef files (thus creating even more projects in the Visual Studio solution)

Certainly, if we're not adhering to item 1, we can organize the directory structure however we want to better suit the management of asmdef files.

I have to agree with @michael-house.

an asmdef review is definitely appropriate. the number of projects in Visual Studio can seem overwhelming.
tree structure can change over time once the namespaces set. there are parts of the current structure that feel like a change would be appropriate in a future PR


Fix infinite loop in AssignUniqueId operator

Increase the kMaxRowId from 32 bit to 40 bit, given the taskUniqueid is limited to 24 bit only
Add range check on rowId to prevent bit range overlap between taskUniqueId & rowId
Move the rowId counter from DriverFactory to AssignUniqueIdNode to enable unit test on counter value
Make assignUniqueId takes args in velox/exec/tests/PlanBuilder.h to enable unit test on taskUniqueId range

Signed-off-by: frankobe<EMAIL_ADDRESS>

@mbasmanova nice catch! I update the PR description and let me know whether it makes sense

Looks good, but linux-build is failing.
107: [==========] 230 tests from 30 test suites ran. (312816 ms total)
107: [  PASSED  ] 228 tests.
107: [  FAILED  ] 2 tests, listed below:
107: [  FAILED  ] AssignUniqueIdTest.multiBatch
107: [  FAILED  ] AssignUniqueIdTest.exceedRequestLimit
107:
107:  2 FAILED TESTS
110/110 Test #107: velox_exec_test ......................................***Failed  312.90 sec

Oops, my bad. Fixed in the PR already


[HOLD] Upgrade Guzzle to ~6.0

This PR upgrades the SDK to use Guzzle 6.
I am still exercising these changes with functionality very similar to the examples (shell.php and task.php), hence the "hold" designation for now.
I am curious how others are using this SDK now or would like to in the future.
My initial use case is seeding vaults in developer and CI environments with secrets similar to the deployed environments.
This will likely be a small standalone application and/or repository (vs being called within another app).  Vault is already installed, configured, and running on the host via configuration management tool.
The examples already in the project do this vault seeding sequence very well for CakePHP apps, but I think there is an opportunity to implement some of this logic on a Jippi\Vault\Helper namespace very similar to the Consul SDK and be usable within any app or framework.
A "Seed" helper with some convenience methods fits my current use case well:
        $this->reset();

        $this->create();
        $this->unseal();

        $this->Vault->waitFor(['sealed' => false, 'standby' => false]);
        $this->Vault->clear();

        $this->mounts();

But there may be a better name or context than "seed" from which to offer these methods.

I would love to see this get merged as I am building the Drupal contributed module that connects with Vault. My use case is quite similar to that which is in the examples, but Drupal is running Guzzle 6.2.2 and I won't be able to load the SDK until this gets merged.

Hi
I'm not sure why it was on HOLD tbh, i think it should be merged in unless someone got a good reason for it not to be? :)

@jippi --- I totally agree. Guzzle 6 has been out a while. It would be super helpful to get this merged in.

Done, and tagged https://github.com/jippi/vault-php-sdk/releases/tag/2.0.0 :)

Wow, thank you for doing this so promptly!

@jippi @nerdstein I had a particular use case that dried up as I was finishing this out, so put it on hold until jippi or I could exercise it a bit. We are still using Vault (and Consul and Nomad, etc), so I expect to get back to using this SDK shortly.
I think the cake tasks might still need to be converted.

This makes sense...


fixing typo - #3584

Description of the change: fixing typo
Reason for the change: I clearly got excited when writing this lol
Link to original source: https://sendgrid.com/docs/User_Guide/Settings/Sender_authentication/How_to_set_up_link_branding.html

Closes #3584

Hello @ksigler7,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


Make the 'Project data' window expandable

It would be handy to be able to stretch the lower right-hand corner of the Project data window to increase the window's height and display a larger chunk of the data at one go.  Adding a comment in a GH issue (like the one I'm typing in atm) is an example of the suggestion.

Dup of https://github.com/nexB/scancode.io/issues/210
Implemented in https://github.com/nexB/scancode.io/pull/777
Make sure to refresh your browser cache if you do not see the changes after upgrading SCIO to the latest version, as it is a JS-based solution.


Investigate robustness of throughput throttling

A user has reported odd throughput throttling numbers, e.g. instead of a targeted 100 ops/s they are seeing 105 ops/s. While it is not possible to exactly hit the target throughput (e.g. Rally might hit 200.1 ops/s instead of 200.0 ops/s) this variation is too much.
This could be caused by an inaccurate system timer and we should investigate whether this is reproducible.
More environment info:

OS (uname -a): Linux IP 3.13.0-135-generic #184-Ubuntu SMP Wed Oct 18 11:55:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux (Ubuntu 14.04)
Python (python3 -c "import sys ; print(sys.implementation)"): namespace(_multiarch='x86_64-linux-gnu', cache_tag='cpython-34', hexversion=50594800, name='cpython', version=sys.version_info(major=3, minor=4, micro=3, releaselevel='final', serial=0))
Hardware: AWS EC2, t2.large instance type

Closing for now. We will reopen if this comes up again.


New package: NordicSemiconductor.nrfutil version 7.6.0

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Hi @kenr,
This package has a dependency on the VCRedist package:

@wingetbot waivers Add Validation-Executable-Error

Hi @kenr,
This package has passed validation, and we'll be accepting packages with dependencies I believe with our 1.6 release.

Hi, not sure how to proceed on this one. Pinging @ImJoakim to try to reach out to a moderator.
Please let me know if the was the wrong way of doing this.

/AzurePipelines run


Narrative generator generates schema-non-compliant narrative for resources that don't have an html specified

In at least some cases, seeing Condition with a narrative like this:

But the schema requires that narrative has a div present

I think there is some text in this report missing.. :)

Odd, it was there when I pasted it.
Basically, what I'm seeing is a narrative that has a
But no <div
section

Lol, it happened again! I think GitHub is treating your resource tags as HTML content..
Try putting ``` around your examples, e.g. (ignore the backslashes in the example below)
\`\`\`
<Patient blah/>
\`\`\`

Any chance you are able to reproduce in a code snippet?

Closing. FIxed by https://github.com/jamesagnew/hapi-fhir/commit/c7558c77802e2d694d9779564a0a92db54e270f8


Emulator Feature: Report gas used

Closes: FLIP Fest issue 12 https://github.com/onflow/flip-fest/issues/12
Description
There should be a way to see transaction gas (computation) usage.
With this change, the output result of the transaction execution will look like this
BEFORE

AFTER

Other
Since there was no specific test code for the standard output of "txID=xxxxxx" that is currently displayed, I decided that there was no need to add any specific test code for this change as well.
I checked to see if any changes were needed in this document, but it looks like no changes are needed.
https://docs.onflow.org/flow-cli/start-emulator/

For contributor use:

[x] Targeted PR against master branch
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the Github PR explorer
[ ] Added appropriate labels

Thank you for adding this, it looks good, however, it does highlight the lack of tests for convert/vm.go and types/result.go so if you could please add those it would be great.

Thanks for checking the code.
I've added tests for convert/vm.go and types/result.go. I hope you can check it.

Looks great, just added some minor comments about naming.

I see, I also think that if it is more appropriate to use that term than Gas, it should be modified.
Thanks for the confirmation and the suggestion!


AlertManager support

How do you think AlertManager should be supported? The options I see are:

Creating a new cookbook.
Adding it as a recipe inside the current cookbook.
Enabling it via an attribute within the current recipes.

This goes from the conceptually cleanest - but with the most boilerplate - to the least redundant - but the least scalable.

This was merged a couple years ago.  Closing issue; it's also been refactored (thanks to @JavierZunzunegui IIRC) to support both binary and source deploys.


Can you use brightness keys?

Hi! I have a Dell G5 5590 too, and using your OC config I cannot use brightness keys... So, I have a solution using SSDT-XOSI, SSDT-BRT6 and 3 renames in ACPI Patch. If you need some help, you can talk to me!

Hi, it would be nice! I didn't go deeper with brightness via ACPI because I'm using Karabiner to remap all function keys, but if karabiner don't load correctly on boot, pressing brightness keys crashes system. If you can send me some tips I could update the EFI folder. Did you update your BIOS to 1.14.0? I'm still on 1.13.2 looking for success cases before update. Thanks!

Im using BIOS 1.12 👎 . To fix brightness keys I need to remove SSDT-GPIO, add SSDT-XOSI and add SSDT-BRT6. After, need to rename BRT6 to BRTX (using count=1 in OC ACPI Patch), OSID to XSID and _OSI to XOSI.
brightness-fix.zip

Worked great, thanks!! I will update the repo on monday, waiting the release of OpenCore 0.6.4 with updated kexts.
Only annoying issue now is plugging in and out the power adapter more than once the system crashes. Do you have this issue also? I read some fixes in the past, but never got the spare time to get it done.

Finee!! I havent tested the plug problem... I will test it tomorrow. My main problem now is the external microphone, because here I can only use internal mic 👎. Can you use combojack without problems?

I'm using a bluetooth headset but will test with a combojack one. Maybe we have to customize our ports, I have this page bookmarked but never had the time to follow the guide.

I've tested the plug power problem here and i've got the same problem as you. When I replug, the system freezes. Did you find anything about it?

I read a lot of topics covering this issue, but none of them worked. All topics I found was Clover related, none of them OpenCore. Some suggestions I followed already was change SMBIOS (tried MacBook Pro 15,1, MacBook Pro 16,1, none of them seems to resolve, so I reverted to MacBook Pro 15,2, the only one that works with external display using USB-C to HDMI adapter). Tried some ACPI patching, but no luck also. To be honest, I stopped searching for a solution for this because I have little free time to mess around. A workaround I'm using to avoid the freeze is closing the lid, waiting the computer enter sleep mode and plug/unplug in this state before reopen the lid.


How to debug with node-inspector using breakpoints in Chrome DevloperTool

Not worked with below one
$ npm install -g node-inspector
$ node --debug-brk node_modules/protractor/lib/cli.js protractor.conf.js
Open a new terminal and run the node inspector:
$ node-inspector
Open your browser with this url: http://<IP_ADDRESS>:8080/debug?port=5858
I can set breakpoints in cli.js and test it using step-over, step-in & step-out options. But in spec.js can't
Also, in WebStrom ide the same i can't debug spec.js
When i do so, browser will hang.
Can you please suggest me how to debug without using pause()/debugger()

Please direct general support questions like this one to an appropriate support channel, see https://github.com/angular/protractor/blob/master/CONTRIBUTING.md#questions
Thank you!


Latest Chrome breaks Media Overlays (Linux-specific)

Reported by Alberto Pettarin:
updated Chrome (43.0.2357.134), Readium 2.18.1, Debian. MO no longer work. 1st fragm highlighted, no audio, no autoplay

The  element, in the same configuration and with the same MP3 file that should have been loaded by MO, works.
As briefly said on Twitter, when I go to a XHTML page with MO, and click on the Play/Pause button, the first MO fragment gets highlighted, but no audio is played. Moreover, the active fragment does not get updated --- that is, the highlight stays on the first fragment.
When I click on another MO fragment, the highlight is applied to it, but again no audio or auto-play.
The problem exists for both an EPUB loaded from unpacked directory or from zipped container.

This is still open, but seems to be specific to Linux so unfortunately not a high priority.

EPUB3 Media Overlays playback on Chrome for Windows works fine, it seems.
http://development.readium.divshot.io/?epub=epub_content%2Fepub30-test-0120-20150521.
(also tested with fixed-layout / pre-paginated talking books)
I am afraid this looks like a Linux-specific bug.

Very sad.

@pettarin just in case you have some time to investigate this further, could you please set DEBUG to true so that HTML5 audio -related events get printed into Chrome's console:
https://github.com/readium/readium-shared-js/blob/develop/js/views/audio_player.js#L38
I remember having to implement various audio preload+buffer-sync strategies depending on target platforms (Android-Chromium and iOS, for example). HTML5 audio ; in my experience ; has been pretty inconsistent when dealing with fine-grained synchronisation. On top of that, I was able to observe codec-specific issues (typically with Media Overlays: MP3 vs. MP4).

Alright, I'll what I can do to diagnose the problem.

@pettarin   Thanks!  We would love to fix this, but we have limited resources and Linux is not a mandate from the Readium board.  That said, please provide us as much info as you can and we will help as much as we can.

I updated to the latest Chrome packaged for Debian (44.0.2403.157), but the problem is still there.
I set DEBUG to true. After starting the MO by clicking on the Play button on the GUI, I can see the various 0-10, X, Y, Z events fired. Still, no audio.
With DEBUG=true and the inspector console open, I can get audio and MO highlighting auto-playing, but not deterministically, just at times and with no evident relation to the state (if I left the EPUB open at the same XHTML asset or not, or with MO playing or paused, etc.).
With DEBUG=false I get the following two errors.
The first when opening the EPUB in the library:

The second when pressing the MO play button:

I am not sure if the "unload is not available in packaged apps." message is actually relevant.
Instead my impression is that, for some reasons, the audio data cannot be retrieved via JS from the temporary/Chrome-private location where the MP3 file is located. However, the same MP3 is played normally when launched from the <audio> element. (I am trying with one of our short stories:  http://www.readbeyond.it/samples/bierce01.epub )

Re. unload is not available in packaged apps, known (benign) "issue" with Chrome, see:
https://github.com/readium/readium-js-viewer/issues/341

I have found the problem, and it is an ugly one.
MO works correctly --- reflowable/pre-paginated, unpacked/EPUB --- as long as there is no <audio> element in the XHTML file which has src pointing to the same MP3 of SMIL.
To reproduce: e.g. modify basic_tests.xhtml inserting: <audio src="../audio/basic_tests.mp3" controls="controls" /> under the heading.
I guess that the JS fiddles with the <audio> element(s), and it gets "confused".
You might want to test this on other OSes as well, as it does not seem related to Linux alone.
Of course I shall not explain why this issue is very critical to me, the publishers I worked for, and ultimately my users --- in all the commercial EPUBs I did, I had to include the <audio> as a "fallback" for people using e.g. iBooks (which is not able to play MOs) so that they could still listen to the audio while reading the text.

Another way to reproduce the issue: using the test suite 0120 EPUB, first stop MO. Then go to the "Embedded Media" page, and then start MO again (either play button or by clicking a phrase). Highlight but no audio.
(If instead MO lands on "Embedded Media" by continuing from the previous XHTML, MO seems to work.)

Thank you for your detailed report @pettarin
Unfortunately I am not able to reproduce the bugs you are describing (I tried adding an audio element as you suggested, and I also tested the "Embedded Media" page).
I am in Windows 10, I tried the latest versions of Chrome, Firefox, Internet Explorer, and Edge.
I am using the build of the cloud reader from the "develop" branch (locally on my machine), which is also automatically deployed here:
http://development.readium.divshot.io/?epub=epub_content%2Fepub30-test-0120-20150521.

Thank you for taking time to check it out.
It seems a Linux-specific problem. I asked around, and I got:
6 Windows 7/8/10 users: all ok
2 OS X users: ok
1 Ubuntu: issue triggered
3 different Debian machines (of mine): issue triggered
It might have something to do with the Google google-chrome builds. (Not tested in chromium.)
Anyway :(

BTW, the issue is still present, with the same symptoms and diagnosis, in the latest Debian Chrome (2017-01-18):
$ google-chrome --version
Google Chrome 55.0.2883.87

Thanks Alberto!

I recently updated iceweasel on Debian (aka Mozilla Firefox 45.9.0), now the issue seems gone.
You can close it, if you like.

Many thanks!


Allow user override of persistent volume template in Redpanda chart

What would you like to be added?
There's no current way to provide granular settings to the PV, such as the reclaimPolicy.
Why is this needed?
It's possible a user may need to override a default defined by a StorageClass.
JIRA Link: K8S-157

AFAIK there's no way to set the reclaimPolicy on a PVC Template. It can only be set via the provisioner or the storage class.
Please re-open if I'm mistaken.


Kitti Inference

Hello! I was wondering how was the calibration file constructed, for the kitti video example. I am trying to run the model on other kitti videos, but the calibration files are looking entirely different. Thank you!

Hi, the calibration format is follows
$seqname=name-of-image-folder
$seqname-calib.txt
f1, pxn,pyn
...
fn, pxn,pyn

fn is the focal length of n-th image
pxn and pyn are the x,y principal point of the n-th image.
We assume square pixels where fx=fy and skew=0.


chore(tooling): test make bootstrap_migration

Description
A detailed explanation of the changes in your PR.
Feel free to remove this section if it is overkill for your PR, and the title of your PR is sufficiently descriptive.
Checklist

[ ] Investigated and inspected CI test results
[ ] Unit test and regression tests added
[ ] Evaluated and added CHANGELOG entry if required
[ ] Determined and documented upgrade steps
[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
Testing Performed
TODO(replace-me)
Use this space to explain how you tested your PR, or, if you didn't test it, why
you did not do so. Valid reasons include, for example, "CI is sufficient",
"No testable changes". Feel free to attach JSON snippets, curl commands,
screenshots.
In addition to reviewing your code, reviewers must also review your testing
instructions and make sure they are sufficient.

Current dependencies on/for this PR:

master

PR #5193

PR #6578   👈

This comment was auto-generated by Graphite.

Current dependencies on/for this PR:

master

PR #5193

PR #6578   👈

This comment was auto-generated by Graphite.


Add app localization

Allow supporting several app languages.

This is not priority but nice to have in the future, we can re-open it later when someone starts to work on it.


Exam 02 -- Midterm Test

Do part a in the class on Thursday 09-mar-2023, write it on the given answer sheet.
fi4002-u1.pdf
Do part b at home until midnight, and discuss the time extension with the class if necessary.
Note 08
Make a repository using your GitHub account, namely, midterm-answer and post link to it here and also in Edunex.

https://github.com/AriaRachmat/midterm-answer

https://github.com/Blitzmaestro/midterm-answer

https://github.com/RizkaFinesya/midterm-answer

https://github.com/chromaaxion/midterm-answer

https://github.com/dhsalsabila/midterm-answer

Selamat siang Pak, Dhia permata 10219003, izin melampirkan bukti pengumpulan uts kemarin. Terima kasih.


Add quotes to agent service install path.

This is in reference to #1048 .
There is a vulnerability when our service is registered with a non-quoted path.
This change adds quotes to the path when the Agent is registered as a service.
Before:

After:

@stephenmichaelf,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


[Doc Enhancement][Meetings]

Added links to developer preview and formatting changes.

Docs Build status updates of commit 343bfe6:
:warning: Validation status: warnings

File
Status
Preview URL
Details

msteams-platform/apps-in-teams-meetings/teams-together-mode.md
:warning:Warning
View
Details

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
:white_check_mark:Succeeded
View

msteams-platform/apps-in-teams-meetings/enable-and-configure-your-app-for-teams-meetings.md
:white_check_mark:Succeeded
View

msteams-platform/apps-in-teams-meetings/teams-together-mode.md

Line 34, Column 79: [Warning-file-not-found] Invalid file link: '../../concepts/build-and-test/teams-developer-portal.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
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 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 docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit c02aaf2:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch Appsforteamsmeetings-changes has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
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 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 docs.microsoft.com contributor guidesPost your question in the Docs support channel


RFC: LWC server runtime proposal

Server-side Rendering (SSR) is a popular technique for rendering pages and components that would usually run in a browser on the server. SSR takes as input a root component and a set of properties and renders an HTML fragment and optionally one or multiple stylesheets. This technique can be used in many different ways: improve initial page render time, generate static websites, …
Due to the size and complexity of this feature, the rollout of SSR is broken up in 3 different phases and is spread over multiple releases:

Phase 1: Decouple the LWC engine from the DOM and allow it to run in a JavaScript environment without access to the DOM APIs (like Node.js). As part of this phase, the LWC server engine will also generate a prototype version of the serialized HTML (Phase 2).
Phase 2: Settle on an HTML serialization format.
Phase 3: Rehydrate in a browser the DOM tree resulting from the serialization into an LWC component tree.

As part of phase 1, the goal is to provide a capability for LWC to render components transparently on the server. From the component standpoint, the LWC SSR and DOM versions provide identical APIs and will run the component in the same fashion on both platforms.

Rendered

@pmdartus
Did you thought about creating a new hook that fetches data on the server, before serving the component? Nuxt does that pretty well. In nuxt we have a method called fetch. I believe it would be something really great for lwc. With a fetch method, components could be served straight away with the data developers need from Salesforce. Pages would be rendered so much faster, not just because the component was rendered on the server, but also because components would no longer need to wait for the wired method to be added to the stack call on the client, which can be slow depending on the specs of the computer, and how many other wired methods were added to the stack.
I also believe that with a fetch method, lots of use cases for the wired methods would no longer exist.
Would we also be able to configure wich LWC component can be rendered on the server? Or would it be all or none?

@pmdartus
Did you thought about creating a new hook that fetches data on the server, before serving the component? Nuxt does that pretty well. In nuxt we have a method called fetch. I believe it would be something really great for lwc. With a fetch method, components could be served straight away with the data developers need from Salesforce. Pages would be rendered so much faster, not just because the component was rendered on the server, but also because components would no longer need to wait for the wired method to be added to the stack call on the client, which can be slow depending on the specs of the computer, and how many other wired methods were added to the stack. I also believe that with a fetch method, lots of use cases for the wired methods would no longer exist.
Middlewares that can run on both client/server could also be useful to control the initial state of a component depending on the User permissions.

@AllanOricil the fetch method is an interesting approach, NextJS offers something called getServerSideProps that does something similar.
My issue with this proposal, or any other proposal that provides an alternative to wire adapters is that it basically requires developers who leverage wire adapters for their data fetching to re-engineer their components to be server side rendered. This may not be avoidable due to some foundational architecture decision, but it's a real shame.
The wire adapter API is one of the best things about LWC, forking the ecosystem by saying on clients wire adapters are supported, but on servers they are not, is going to be a serious barrier for adopting server side rendering.
Perhaps a reasonable compromise would be to support Wire adapters without dynamic parameters during SSR, which would cover several use-cases (including my own).

@AllanOricil the fetch method is an interesting approach, NextJS offers something called getServerSideProps that does something similar.
My issue with this proposal, or any other proposal that provides an alternative to wire adapters is that it basically requires developers who leverage wire adapters for their data fetching to re-engineer their components to be server side rendered. This may not be avoidable due to some foundational architecture decision, but it's a real shame.
The wire adapter API is one of the best things about LWC, forking the ecosystem by saying on clients wire adapters are supported, but on servers they are not, is going to be a serious barrier for adopting server side rendering.
Perhaps a reasonable compromise would be to support Wire adapters without dynamic parameters during SSR, which would cover several use-cases (including my own).

@gamedevsam
Can't ssr be optional, and maybe configurable per component, and not just routes/pages. If so, maybe it would not be necessary to rewrite anything that is already working. Wire adapters eval could happen after the page is sent to the client. Why exactly do you think people would have to re-engineer their components?
More about nuxt fetch
The fetch method, if set, is called every time before loading the component (only for page components). It will be called server-side once (on the first request to the Nuxt app) and client-side when navigating to further routes.

If you think a fetch method is a good idea, I would like to add an addition to its proposal. fetch must not be a Salesforce org feature, like wire methods are. It must run everywhere. But when running on Salesforce, it must be injected with a Salesforce context object.
For me, wire methods always felt weird because they can only be used inside a Salesforce org. I think they shouldn't even be considered a lwc feature.

We should maybe take this discussion elsewhere (maybe Slack? Hit me up @Samuel Batista) since it's getting a bit unrelated to the current topic at hand, but I'd like to answer a few misconceptions in your previous comment:

Wire adapters eval could happen after the page is sent to the client. Why exactly do you think people would have to re-engineer their components?

Wire adapters can result in an invocation of a wire method, as well as wire values directly into member variables. If a wire adapter invokes a method on a component, that method often assigns values into member variables of the component. These variables can (and often are) accessed in the template of the component. If we render the template without invoking wire adapters, the HTML will be rendered using default values provided for those member variables. This may be acceptable for some use cases, but in my case it will break the template rendering, since we assume wire adapters will be invoked before the initial render, and will provide the initial values for member variables. Here's an example of code that would break in several of our repos, where we leverage wire adapters to inject localized text, ex:
export default class I18nComponentExample {
    @wire(WireI18n) i18n;
}

{i18n.keyToLocalizedText}

For me, wire methods always felt weird because they can only be used inside a Salesforce org. I think they shouldn't even be considered a lwc feature.

I use wire methods / wire adapter API outside of Salesforce, we use it to wire data from a Redux-like data stores in applications hosted on Heroku. Wire adapters are frequently used to pipe networked data into components, and that is the main use case for components rendered within Salesforce. But that isn't their only use case. AppExchange uses them to provide reactivity / connect them to external stores that manage our state. Wire adapters for me are like React hooks, they are in my opinion one of the best features of LWC OSS.

We should maybe take this discussion elsewhere (maybe Slack? Hit me up @Samuel Batista) since it's getting a bit unrelated to the current topic at hand, but I'd like to answer a few misconceptions in your previous comment:

Wire adapters eval could happen after the page is sent to the client. Why exactly do you think people would have to re-engineer their components?

Wire adapters can result in an invocation of a wire method, as well as wire values directly into member variables. If a wire adapter invokes a method on a component, that method often assigns values into member variables of the component. These variables can (and often are) accessed in the template of the component. If we render the template without invoking wire adapters, the HTML will be rendered using default values provided for those member variables. This may be acceptable for some use cases, but in my case it will break the template rendering, since we assume wire adapters will be invoked before the initial render, and will provide the initial values for member variables. Here's an example of code that would break in several of our repos, where we leverage wire adapters to inject localized text, ex:
export default class I18nComponentExample {
    // this:
    @wire(WireI18n) i18n;

    // is equivalent to this:
    i18n;
    @wire(WireI18n)
    i18nConnected(i18n) {
        this.i18n = i18n;
    }
}

Rendering the template without the wire adapter will break this component:

{i18n.keyToLocalizedText}

For me, wire methods always felt weird because they can only be used inside a Salesforce org. I think they shouldn't even be considered a lwc feature.

I use wire methods / wire adapter API outside of Salesforce, we use it to wire data from Redux-like data stores in applications hosted on Heroku. Wire adapters are frequently used to pipe networked data into components, and that is the main use case for components rendered within Salesforce. But that isn't their only use case. AppExchange uses them to provide reactivity / connect them to external stores that manage our state. Wire adapters for me are like React hooks, they are in my opinion one of the best features of LWC OSS.

@gamedevsam my bad
https://lwc.dev/guide/wire_adapter#wire-adapters
After reading this doc, now I understand how it actually works.

There are a lot of interesting points that have been raised on this thread. Let me try to answer some of them.

How would ssr work on a lightning page? Would salesforce let us control which lwcs are rendered on the server, or would it be all or none?

For the record, there is currently no plan to use SSR in the context of Lightning Experience. Salesforce is considering using SSR for other experiences where initial page load time and SEO are important.
As a side note, the portability of existing LWC components on the Salesforce platform from client-side rendering only to client + server-side rendering is also something that we discussed at length. While we understand that customers have put a lot of effort into building LWC components on top of the platform, it's important to acknowledge that building client-side-only UI components is vastly different than build isomorphic components. And this, regardless of the UI framework.
We are in the middle of porting some of our existing internal LWC components to be SSR compatible, and as part of this journey, some components had to be redesigned from the ground up. Documentation and linting rules are in preparation to help with this migration.

Did you thought about creating a new hook that fetches data on the server, before serving the component?

Yes, it was top of mind as we designed SSR for LWC. We are currently investigating an approach similar to Next getServerSideProps and Nuxt asyncData for data retrieval at the page level.
We also discussed exposing the capability to retrieve async data in arbitrary components (like fetch in Nuxt), but it's something that we have set aside for now as it would require a large rewrite of the LWC engine to make all the internals async. We believe the page-level data retrieval would be sufficient for the initial version of SSR. And as always it's something we might reconsider in the future based on developers' feedback.
/cc @nolanlawson @divmain


Template for instance segmentation

this can be tested on any server (local/dev/staging/hub). a new option called "Instance Segmentation" should show up under code templates.

the code is fairly generic, but I have only tested with https://www.kaggle.com/competitions/sartorius-cell-instance-segmentation.

Attach a Compute Server and download a dataset. An example dataset would be https://www.kaggle.com/c/sartorius-cell-instance-segmentation/data.

If you want to make it more Luminide specific...
Attach a Compute Server and download a dataset. An example dataset would be https://www.kaggle.com/c/sartorius-cell-instance-segmentation/data (in Luminide select Import Data to Compute Server > Kaggle > Competition and enter "sartorius-cell-instance-segmentation" after first accepting the rules).

Run Experiment custom script

Ran on staging.  Got this error:  ModuleNotFoundError: No module named 'detectron2'
I ran the following two commands to install it (from  https://detectron2.readthedocs.io/en/latest/tutorials/install.html)
  python -m pip install 'git+https://github.com/facebookresearch/detectron2.git'
  python -m pip install -e detectron2

My torch/detectron versions:
torch	1.9.1
detectron2              0.6

[eda.ipynb]

Looks good.

Run Experiment

Looks good.  FYI, output pretty verbose.

Visualization

Lots of data.  Looks cool.  Seems good, but to be honest I'm not exactly sure what to look at...

To use this repo for a Kaggle code competition:

Configure your Kaggle API token on the Import Data tab.

Skipped.

Run kaggle.sh as a custom experiment to upload the code to Kaggle.

Run kaggle.sh from the Run Experiment > Custom tab to upload the code to Kaggle.

To create a submission, copy kaggle.ipynb to a new Kaggle notebook.

Good.

Add the notebook output of https://www.kaggle.com/luminide/wheels2 as Data.
Add your dataset at https://www.kaggle.com/<kaggle_username>/kagglecode as Data.
Add the relevant competition dataset as Data.

Good.

Run the notebook after turning off the Internet setting.

Run the notebook after selecting a GPU Accelerator and  turning off the Internet setting.
Ran it and it worked just fine.  Wasn't obvious to me when it was finished (e.g. no "Done" message).  But guessing most Kaggle users know when it's done.
FWIW, I tried submitting but due to high capacity, got put in a queue.  Not sure if you want me to check that as well... but will let you know if I see any issues there.

sounds good. I will add your suggestion about data import to the README.
if you get a chance, also try report.sh and a fast sweep - just to make sure they complete without errors.

report.sh

Fails with the following log file.  Not clear what the issue is.
error-file.txt
When I ran the notebook manually, it generated the following error: ../output/history.csv not found
Indeed, that file does not exist in my project.  Maybe because I didn't run the full training to completion (only 8/50 epochs), instead of all the way to the end?

fast sweep

Running 10 trials w/ 3 epochs each.  Looks like it's working.
A bit slow, though.  Trial 0 took 13.0 minutes and just finished, on Trial 1 now.
Also a bit verbose.  Looks like the bulk of the output is for each trial it's printing the entire model, which is around 570 lines long e.g.
[03/25 22:21:57 d2.engine.defaults]: Model:
GeneralizedRCNN(
  (backbone): FPN(
    (fpn_lateral2): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))
    (fpn_output2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
    (fpn_lateral3): Conv2d(512, 256, kernel_size=(1, 1), stride=(1, 1))
    (fpn_output3): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
    (fpn_lateral4): Conv2d(1024, 256, kernel_size=(1, 1), stride=(1, 1))
    (fpn_output4): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
    (fpn_lateral5): Conv2d(2048, 256, kernel_size=(1, 1), stride=(1, 1))
    (fpn_output5): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))
...

Indeed, that file does not exist in my project. Maybe because I didn't run the full training to completion (only 8/50 epochs), instead of all the way to the end?

yes, we save the history file after training is complete. I will change the code to save after every epoch.

Fast sweep finally finished (10 trials of 3 epochs took 122.0 minutes total).
Results look a little weird, but maybe not that bad.  "Best so far" occurred in trials 0, 1, and 9 (which I verified by checking the sweep_results_raw.csv).

Also verified history.csv was written (I ran this on staging).  But it was in output/exp7/history.csv (the error above suggested it was looking for it in ../output/history.csv. -- so not sure it would have found it).

ah... ../output/history.csv is the correct path on the Compute Server (all notebooks execute there)


URL to tools generatepassword an changepassword

Hi !
Nice extension, exactly what I need !
A little suggestion : when you change your admin url in the general configuration (branding:path:), the two links to acces to the tools "generatepassword" an "changepassword" are broken... You have to change them manually in the address bar to access to the page (/youradmin/protect/generatepasswords).
Maybe, we can have access to the branding defined in config.yml path in the registerMenuEntries() function to have directly the good link ?
Best regards,
Benoît

Hi,
In the 3.x version this is handled automatically. Thanks!


Remove hardcoding of init path based on node type

Fix dockerfile so that it doesn't hardcode the init path.
The init path is still variable but now dependent on the logic in the celestia-node code itself and not the entrypoint.sh.

Codecov Report

Merging #845 (cc477d4) into main (63a8c17) will increase coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #845      +/-   ##
==========================================
+ Coverage   53.94%   54.00%   +0.05%
==========================================
  Files         122      122
  Lines        6979     6979
==========================================
+ Hits         3765     3769       +4
+ Misses       2826     2823       -3
+ Partials      388      387       -1

Impacted Files
Coverage Δ

ipld/retriever.go
86.53% <0.00%> (+2.56%)
: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 63a8c17...cc477d4. Read the comment docs.


Improve/battle-test USB implementation

Copied from internal issue tracker:

The current usb-device implementation is a reverse-engineering feat that was compared to the ATSAMx5x family implementation, along with an RTT (and Wireshark) trace of a CDC-serial example (the branch of which I have forgotten at the moment where I put it), and some ideas taken from the tinyusb implementation of the x7x.

At the time, the latter was not traceable due to tinyusb/#1520, but with it closed, we can now gather additional data and improve our own implementation. tinyusb also contains some abstracted class implementations in case available usb-device implementations are found to be lacking.

So, what we should do now is RTT/Wireshark trace the current implementation in this HAL and compare it with that of the tinyusb example. In this trace, we should send some known payload to the device which is simply echoed back (usb_serial_echo example). These should be attached in this issue and relevant MRs should be created, closing this issue when traces match.

Correction: the traced x5x application was not an echo application, but a simple USB enumerator. It is available here.

We also need to look into how the interrupts behave. In the example application, is USBHS always active, or do we eventually enter idle again? We only want USBHS to be active when needed.

We also need to test if the implementation can handle large payloads, and how large they can be before any eventual bytes are discarded.