Describe the relationship with Yggdrasil

Knowing where projects come from helps understand the lineage and also captures some of the learnings that happened in the process. It's also helpful to the user as they are now able to make a more informed decision on their technology choices.
Do you remember what brought you to re-implement Yggdrasil. Were there particular design decisions or technology choices that didn't work for you? I looked in this repo and couldn't find a rationale document.

While Yggdrasil seemed like the warm water reinvented for overlay networks, their claims for a planetary scale network based on a DHT averred to show the same strains as IPFS, even with only a few thousand nodes. So latency spikes, lots of topology chatter, and overall inconsistent bandwidth.
That was not without reasons :

nodes in the topology were not aware of available bandwidth
the topology itself (or the structure) doesn't lend itself to be able to become locality-aware.
empirical evidence suggested that in terms of bandwidth with more that 2 hops data transfers were slower than most '90ies modems. So the network was basically only usable for very small messages, ssh, and for the rest we needed to revert to other more direct communications through our own wireguard-based mesh network.
latency spikes notwithstanding, we also had to cope with unreliable connectivity, which is inherent to publicly driven and operated networks.
All these reasons are quite understandable considering the design decisions, maturity of the project (it even stalled for basically a whole year because of the main developer's busy agenda), and the way the network is run, with volunteers for whom network bandwidth is not free nor abundant (mostly).
some research was done to work with the existing code, but appeared early on a path that we shouldn't take.

Zerotier suffers from other problems, mainly because of the (then) limited infrastructure to carry the network forward. Adding  moons to try to get the network a bit more performant led to no noticeable difference and the network  always felt off, sluggish and also unreliable. The financial situation of the company getting stretched out at that time led us to forego zerotier as main driver for our overlay. NIH? nah ;-)
Also, as things evolved, there were requirements for the grid to convey secure messages between nodes for which any existing library could be used.
As the idea ripened to start research in using the babel protocol as a building block for an overlay network (master's thesis  for an intern), the protocol lends itself naturally as a message-passing hub too, making mycelium a more generalized tool for the grid itself, instead of 'just' a network.
The main advantage of a self-developed overlay network is the fact that the feature set is fully owned. The more, as the routing protocol is loosely based on Babel, it can be extended/ameliorated driven by progressive insight and requirements.
The main takeaway from this implementation is the simplicity, and being written in Rust, it's very performant (a lot of care has been taken in that part).
For a project of +- 10K LoC till now for an MVP, it's a breeze and an overall good decision.
More to come on new features, but first: scale it up and up and up to see where we start seeing strain on as well chatter as routing tables.

Thanks a lot for taking the time to write this overview.
I haven't tried Yggdrasil but share the same experience with ZeroTier. One of the most frustrating aspects is how opaque the connectivity, and lack thereof is. And it always takes a minute or two to establish the routes. Comparatively, mycelium is very much instant in my little lab setup.
Is it correct to assume that privacy isn't a goal of the protocol? If a user joins the network with their laptop, tracking them by their public IP would be pretty straightforward.

Indeed, it's an open network. But keep in mind that the communication between 2 instances still is private.
we have an FR open to be able to use the same binary but make it a private network based on shared keys for if you would want to connect multiple nodes privately.
Still ironing out the kinks in the implementation details, but then you have a fully private network.

I'll consider this answered, feel free to reopen if there are further questions.


When installing target on Linux, .so should be copied

Is your feature request related to a problem? Please describe.
When a target uses a shared xmake package, it will not be installed with other files. This is problematic because the only way to get those .so out is to copy them from the xmake package folder.
Describe the solution you'd like
That xmake install copies all .so of its own packages to lib folder, a bit like what's done on Windows (but it should only be done if the package is not system).

I have supported it on dev.

Works great! Thank you.

Hi, I'm working on a Dockerfile to create a Docker image based on Lynix's project, that would work without using xmake run. I kinda reported this bug.
Sadly, I still have problems when trying to start the server.
Here's what I do:
####
# (Multiple instructions before, but we don't care here)
####

# Install xmake for burgwar user
RUN curl -fsSL https://xmake.io/shget.text | /bin/bash
RUN /home/burgwar/.local/bin/xmake update -s dev

# Build server
RUN git clone https://github.com/DigitalPulseSoftware/BurgWar.git
WORKDIR /home/burgwar/BurgWar

COPY --chown=burgwar:burgwar xmake.lua xmake.lua

RUN /home/burgwar/.local/bin/xmake config --mode=releasedbg -y
RUN /home/burgwar/.local/bin/xmake -r BurgWarServer

RUN /home/burgwar/.local/bin/xmake install -v -o build/ BurgWarServer

##############################
# Runtime image
##############################
FROM debian:latest

LABEL org.opencontainers.image.authors="Jerome Leclercq;Axel \"Elanis\" Soupe"
EXPOSE 14768/udp
HEALTHCHECK --interval=1m --timeout=3s CMD netstat -nltpu | grep -c 14768

# Add user
RUN useradd burgwar
RUN mkdir -p /home/burgwar
RUN chown -R burgwar:burgwar /home/burgwar

USER burgwar
WORKDIR /home/burgwar

COPY --from=build-env /home/burgwar/BurgWar/build/ .

ENTRYPOINT /home/burgwar/bin/BurgWarServer

The build is going fine, no error, and when I execute tree i get
Step 39/41 : RUN tree .
 ---> Running in f6a2a8a0e92b
.
|-- bin
|   |-- BurgWarServer
|   |-- libBurgCore.so
|   |-- libNazaraCore.so
|   |-- libNazaraLua.so
|   |-- libNazaraNetwork.so
|   |-- libNazaraNoise.so
|   |-- libNazaraPhysics2D.so
|   |-- libNazaraPhysics3D.so
|   |-- libNazaraSDK.so
|   |-- libNazaraUtility.so
|   |-- liblua.so
|   |-- linux_x86_64_releasedbg
|   |   `-- serverconfig.lua
|   |-- lua.sym
|-- include
|  (Many .h, .hpp and .inl here)
|   |-- nlohmann_json.natvis
|   |-- sol2.natvis
|   `-- tsl-hopscotch-map.natvis
`-- lib
    |-- libBurgCore.so
    |-- libBurgMain.a
    |-- libNazaraCore.so
    |-- libNazaraLua.so
    |-- libNazaraNetwork.so
    |-- libNazaraNoise.so
    |-- libNazaraPhysics2D.so
    |-- libNazaraPhysics3D.so
    |-- libNazaraSDK.so
    |-- libNazaraUtility.so
    |-- libcurl.so
    `-- liblua.so

But, when I try to execute the container, it doesn't work, we have this error:
/home/burgwar/bin/BurgWarServer: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory

Lynix thought of adding an export LD_LIBRARY_PATH=../lib but same error.
Is this problem caused by the way I used xmake, or an issue inside xmake itself ?
Thanks !

What about setting rpath for the executable? https://xmake.io/#/manual/project_target?id=targetadd_rpathdirs

That would be an option, however I wonder if the issue is that it searches for libcurl.so.4 and only libcurl.so is there.

That would be an option, however I wonder if the issue is that it searches for libcurl.so.4 and only libcurl.so is there.

It is a soft-link
/home/ruki/.xmake/packages/l/libcurl/7.73.0/37e7f90481bd415ab288732679a06e21/lib/
|-- libcurl.la
|-- libcurl.so -> libcurl.so.4.7.0
|-- libcurl.so.4 -> libcurl.so.4.7.0
|-- libcurl.so.4.7.0
`-- pkgconfig
    `-- libcurl.pc

I have improved it to copy symlink when installing package files on dev branch, you can try it
xmake update dev

Almost there.
I tried it with libcurl:
lynix@SirLynixVanDesktop:/mnt/c/Projets/Burgwar/BurgWar/test_install43/bin$ ll /home/lynix/.xmake/packages/l/libcurl/7.73.0/4e4edac7bcf34422bf52a6574436edb4/lib/
total 3972
drwxr-xr-x 1 lynix lynix     512 Aug 20 17:26 ./
drwxr-xr-x 1 lynix lynix     512 Aug 20 17:27 ../
-rwxr-xr-x 1 lynix lynix    1015 Aug 20 17:26 libcurl.la*
lrwxrwxrwx 1 lynix lynix      16 Aug 20 17:26 libcurl.so -> libcurl.so.4.7.0*
lrwxrwxrwx 1 lynix lynix      16 Aug 20 17:26 libcurl.so.4 -> libcurl.so.4.7.0*
-rwxr-xr-x 1 lynix lynix 3224552 Aug 20 17:26 libcurl.so.4.7.0*
drwxr-xr-x 1 lynix lynix     512 Aug 20 17:26 pkgconfig/

On install, only libcurl.so and libcurl.so.4.7.0 were copied:
installing CoreLib to test_install43 ..
> copy bin/linux_x86_64_debug/libBurgCore.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraSDK-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraLua-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraNetwork-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraNoise-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraPhysics2D-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraPhysics3D-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraUtility-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/n/nazaraengine/2021.06.10/4dc6096606f04e31b2bd002194534d75/lib/libNazaraCore-d.so to test_install43/lib
> copy /home/lynix/.xmake/packages/l/libcurl/7.73.0/4e4edac7bcf34422bf52a6574436edb4/lib/libcurl.so to test_install43/lib
> copy /home/lynix/.xmake/packages/l/libcurl/7.73.0/4e4edac7bcf34422bf52a6574436edb4/lib/libcurl.so.4.7.0 to test_install43/lib

Content of the bin folder:
lynix@SirLynixVanDesktop:/mnt/c/Projets/Burgwar/BurgWar/test_install43/bin$ ll ../lib
total 415540
drwxrwxrwx 1 lynix lynix       512 Aug 20 17:33 ./
drwxrwxrwx 1 lynix lynix       512 Aug 20 17:33 ../
-rwxrwxrwx 1 lynix lynix 124245736 Aug 20 17:33 libBurgClient.so*
-rwxrwxrwx 1 lynix lynix 152172608 Aug 20 17:33 libBurgCore.so*
-rwxrwxrwx 1 lynix lynix    179420 Aug 20 17:33 libBurgMain.a*
-rwxrwxrwx 1 lynix lynix   2593408 Aug 20 17:33 libNazaraAudio-d.so*
-rwxrwxrwx 1 lynix lynix  30979760 Aug 20 17:33 libNazaraClientSDK-d.so*
-rwxrwxrwx 1 lynix lynix   8779736 Aug 20 17:33 libNazaraCore-d.so*
-rwxrwxrwx 1 lynix lynix  22301176 Aug 20 17:33 libNazaraGraphics-d.so*
-rwxrwxrwx 1 lynix lynix   1747168 Aug 20 17:33 libNazaraLua-d.so*
-rwxrwxrwx 1 lynix lynix   5994416 Aug 20 17:33 libNazaraNetwork-d.so*
-rwxrwxrwx 1 lynix lynix    935728 Aug 20 17:33 libNazaraNoise-d.so*
-rwxrwxrwx 1 lynix lynix   3679384 Aug 20 17:33 libNazaraPhysics2D-d.so*
-rwxrwxrwx 1 lynix lynix  20705256 Aug 20 17:33 libNazaraPhysics3D-d.so*
-rwxrwxrwx 1 lynix lynix   3001128 Aug 20 17:33 libNazaraPlatform-d.so*
-rwxrwxrwx 1 lynix lynix  10609304 Aug 20 17:33 libNazaraRenderer-d.so*
-rwxrwxrwx 1 lynix lynix  10810056 Aug 20 17:33 libNazaraSDK-d.so*
-rwxrwxrwx 1 lynix lynix  22753800 Aug 20 17:33 libNazaraUtility-d.so*
lrwxrwxrwx 1 lynix lynix        16 Aug 20 17:33 libcurl.so -> libcurl.so.4.7.0*
-rwxrwxrwx 1 lynix lynix   3224552 Aug 20 17:33 libcurl.so.4.7.0*
-rwxrwxrwx 1 lynix lynix    760120 Aug 20 17:33 liblua.so*

Problem is that my executable is linked against libcurl.so.4 😅
lynix@SirLynixVanDesktop:/mnt/c/Projets/Burgwar/BurgWar/test_install43/bin$ ldd BurgWar
...
        libcurl.so.4 => not found
...

Maybe all symlinks should be copied

I have improved it again.
you need run xmake f -c to update package manifest info first.

Works like a charm! Thank you 😃


Compilation error when marking doobie as "provided"

[x] I've read the CONTRIBUTING guidelines

steps
Have a project, database, uses library tpolecat/doobie. Mark it as "provided".
Have another project, server, depends on database.
Compiling server with sbt server/compile gives an error.
Full build file and sample code is here: https://github.com/mt40/sbt_doobie
problem
Sbt produces this error:
[error] C:\Users\(...)\server\src\main\scala\main.scala:1:17: Symbol 'term <root>.doobie' is missing from the classpath.
[error] This symbol is required by 'method Repo.test'.
[error] Make sure that term doobie is in your classpath and check for conflicting dependencies with `-Ylog-classpath`.
[error] A full rebuild may help if 'Repo.class' was compiled against an incompatible version of <root>.
[error] trait A extends Repo
[error]                 ^
[error] one error found
[error] (server / Compile / compileIncremental) Compilation failed

expectation
Compile successfully
notes
Scala version: 2.11.12
Sbt version: 1.1.6

I think this is by design. In other words, I disagree with your expectation.
provided means that it can be using during compile time (of database subproject), but will not be part of the runtime or part of the transitive dependency.

This is actually a wrong usage. I just need to add that dependency to server to compile successfully.

it's weird- but see https://issues.apache.org/jira/browse/MNG-2205

@ritschwumm interesting, didn't know that many people run into the same situation


Custom ModelBinder for IEnumerable using multipart/form-data fires ModelBinder infinitely

Title
A custom ModelBinder is being used to take Excel like data and is necessary to handle data type conversions. The ModelBinder is firing correctly but then keeps getting hit with incrementing indexes forever. 2.1 Preview 1 is being used now but I have not tried this in any previous Core version. This sample is a simplified version to show this problem but all of the working pieces are in place.
WebApplication2.zip
Functional impact
This ModelBinder existed in old MVC app that we are converting to Core 2.1 Preview 1 and in bringing this ModelBinder over it was found to be unusable as it essentially loops forever.
Minimal repro steps
Attached is a sample app that demonstrates the problem. Click the button on the Index and it will hit a Download action on the HomeController that uses the GridCellModelBinder. If a breakpoint is put in the GridCellModelBinder you can see that a_bindingContext.ModelName is correct but then simply keeps going and going.
The data being sent is:
cells: [
   {
      Col: 0,
      Row: 0,
      Value: 'Col 0 Row 0',
      CellImageTextOverlay: null,
      TreatAsString: true
   }, {
      Col: 1,
      Row: 0,
      Value: 'Col 1 Row 0',
      CellImageTextOverlay: null,
      TreatAsString: true
   }
...
]

and is put into FormData to be passed to the controller and expected to be bound into IEnumerable<GridCell>.
Expected result
The ModelBinder should only fire for the data that is passed from the UI.
Actual result
The action never finishes because the ModelBinder is called over and over infinitely.
Further technical details
None

Thanks for reporting the issue.
@kichalla, can you please look into this?

Notes:
Data is being posted in the following format:
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryBP98kpw2eoASfu6P

------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[0].Col"

0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[0].Row"

0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[0].Value"

Col 0 Row 0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[0].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[1].Col"

1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[1].Row"

0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[1].Value"

Col 1 Row 0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[1].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[2].Col"

2
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[2].Row"

0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[2].Value"

Col 2 Row 0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[2].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[3].Col"

0
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[3].Row"

1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[3].Value"

Col 0 Row 1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[3].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[4].Col"

1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[4].Row"

1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[4].Value"

Col 1 Row 1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[4].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[5].Col"

2
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[5].Row"

1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[5].Value"

Col 2 Row 1
------WebKitFormBoundaryBP98kpw2eoASfu6P
Content-Disposition: form-data; name="cells[5].TreatAsString"

true
------WebKitFormBoundaryBP98kpw2eoASfu6P--

@spudcud
Thanks for the repro application. I was able to repro the issue and here is the reason it was happening that way.
The CollectionModelBinder(CMB) tries to bind the individual GridCell items and each of these individual items is handled by your custom binder. The CMB tries builds up the model names with prefixes like cells[0], cells[1] and would go on until cells[int.MaxValue] if the child model binder does not indicate that it no longer can bind the item. So you could try fixing your custom model binder by having the following check in it:
if (!valueProvider.ContainsPrefix(a_bindingContext.ModelName))
{
    return Task.CompletedTask;
}

I have tried this fix myself and was able to hit the action with the populated data.

@kichalla I have added this check and I am also able to get past this issue. Is this working as designed or will there be a permanent change to not require this?

As per my understanding, this is working as expected.
For example, instead of a custom model binder if you are trying to bind request data to a collection of boolean, then the CollectionModelBinder(CMB) delegates the task of binding the actual bool to the SimpleTypeModelBinder (STMB) and this STMB indicates if it found the value from the value providers or not. This stops the CMB from proceeding with furthers indices.
cc @dougbu, if I missed anything.

Okay, thank you @kichalla. This documentation is what I was using in order to convert our old one and it didn't mention anything about this. It may help other people if it is spelled out more. Custom Model Binding. Obviously the example is very different from what I was doing so it is hard to show what is needed for this scenario.
Thank you for pointing me in the right direction. Loving Core btw :).

Thanks folks!


Issue/reduce warning

Pull Request
Description

reduce pandas warning H -->h
torch<2.5.0

How Has This Been Tested?
CI tests

[ ] Yes

Checklist:

[ ] My code follows OCF's coding style guidelines
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have checked my code and corrected any misspellings

Might want to remove pin, once #68 has been merged


Issue with Hard Crashes on Realtime Linux Kernel + ROS Melodic

Required Info

Camera Model
D405

Firmware Version
<IP_ADDRESS>

Operating System & Version
Ubuntu 18.04

Kernel Version
4.19.50-rt22, Realtime Kernel Patch

Platform
PC, Xeon E3-1200

SDK Version
v2.54.1, Commit # 8ffb17b0

Language
C++, ROS Melodic

Segment
Robot

I am having an issue with a node on ROS Melodic based on the librealsense SDK on Ubuntu 18.04 with 4.19.50-rt22 realtime kernel patch.  The node itself is a light wrapper that packages RealSense data as ROS messages.
After anywhere between 5 and 50 minutes of starting the node, my computer will crash; the UI will freeze and a few seconds later the OS will restart entirely. (I tracked it down to this node by process of elimination.)
Neither dmesg nor journalctl reveal anything particularly useful about the crash. Data coming from the D405 appears correct and arrives in a timely manner.
I built librealsense from source with RSUSB based on the idea that this might support older kernels, but the problem persists.
I used the following steps to build librealsense:

sudo apt install libssl-dev libusb-1.0-0-dev libudev-dev pkg-config libgtk-3-dev cmake
sudo apt install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at
cd /tmp/
git clone https://github.com/IntelRealSense/librealsense.git
cd librealsense/
Unplug any attached RealSense cameras
./scripts/setup_udev_rules.sh
./scripts/patch-realsense-ubuntu-lts.sh
Add the following near the top of CMakeLists.txt: set( FORCE_RSUSB_BACKEND ON )
mkdir build && cd $_
cmake ../ -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=true
sudo make uninstall && make clean && make && sudo make install

Can you think of anything in particular about librealsense that may interfere/interact with realtime scheduling?

I use the ROS1 wrapper that you mentioned, but thank you for the suggestion, @MartyG-RealSense.
I made the changes to the build process that you suggested, and librealsense built successfully, but the problem persists.

Does librealsense perform any logging that would remain after a restart that I can use for troubleshooting?
This bug is currently hampering my entire ROS stack.

Linux writes all OS logs to the  /var/log folder.   You can review the entire kernel log file with the command below.
less /var/log/kern.log

This was an unknown hardware issue that resolved itself when I replaced the computer I was using with an identical machine.
The problem is not present on the new computer and I was able to run programs using librealsense both inside and outside of ROS for hours at a time with no issue.
Troubleshooting did not reveal the problem on the original computer, but evidence does not point to a problem with this library.
Issue closed.


can't build on "react-native": "0.71.3",

Describe the bug
I can't build on "react-native": "0.71.3", error came like this
yarn run v1.22.19
$ cd ios && NO_FLIPPER=1 RCT_NEW_ARCH_ENABLED=0 bundle exec pod install && cd ..
warn Multiple Podfiles were found: ios/Podfile,vendor/bundle/ruby/2.7.0/gems/cocoapods-core-1.11.3/lib/cocoapods-core/Podfile. Choosing ios/Podfile automatically. If you would like to select a different one, you can configure it via "project.ios.sourceDir". You can learn more about it here: https://github.com/react-native-community/cli/blob/master/docs/configuration.md
error Failed to build the app: No package name found. We couldn't parse the namespace from neither your build.gradle[.kts] file at<EMAIL_ADDRESS>nor your package in the AndroidManifest at<EMAIL_ADDRESS>
[!] Invalid `Podfile` file: unexpected token at 'info Run CLI with --verbose flag for more details.
'.

 #  from /Users/sharif/envy/envypayments/ios/Podfile:36
 #  -------------------------------------------
 #  target 'envypayments' do
 >    config = use_native_modules!
 #
 #  -------------------------------------------

Screenshots
If applicable, add screenshots to help explain your problem.
Stripe Terminal React Native SDK version

^0.0.1-beta.17

"react-native": "0.71.3",
Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

hey @sharifashraful the main build command and error seems to be for iOS but the terminal error is for Android. What exactly are you running and what's the project structure?

error fixed after upgrading react native version

error fixed after upgrading react native version

which react-native version resolved this error for you?


Seems to be broken on NixOS

Having done the above, I got an empty transparent header:

Perhaps this is due to the peculiarity of symlinks in NixOS, or maybe the fact is that my promt is drawn on two lines and uses a colored background:

Could you share your starship.toml? I don't run NixOS but I'd like to see if I can replicate it

Thank you for a fast reply.
This is recolored gruvbox-recolored preset. I can't give you my exact TOML, because it is written in Nix and it is useless without NixOS

Oh, i just get it working by adding NixOS module in addition to Home manager module. But it looks terrible

This is recolored gruvbox-rainbow preset. I can't give you my exact TOML, because it is written in Nix and it is useless without NixOS

Ah ok, does home-manager or whatever you're using not output the resulting starship.toml file somewhere? Anyway, yes using that preset that is about how it looks for me.
The header is just taking up one row, and if the background is filled in like for that preset, it will be touching the background of the line below. The only fix I can think of for the appearance would be a full empty line beneath the prompt, which I'm not sure Yazi allows but I'll have a look.

Hey, I think I'm gonna include a snippet on the README without the border, but you can actually use the full border tip from Yazi itself to achieve this if you don't mind the border:

Just paste this code into your init.lua, which overrides the base UI's Manager:render method:
        function Manager:render(area)
            local chunks = self:layout(area)

            local bar = function(c, x, y)
                x, y = math.max(0, x), math.max(0, y)
                return ui.Bar(
                    ui.Rect({
                        x = x,
                        y = y,
                        w = ya.clamp(0, area.w - x, 1),
                        h = math.min(1, area.h),
                    }),
                    ui.Bar.TOP
                ):symbol(c)
            end

            return ya.flat({
                -- Borders
                ui.Border(area, ui.Border.ALL):type(ui.Border.ROUNDED),
                ui.Bar(chunks[1], ui.Bar.RIGHT),
                ui.Bar(chunks[3], ui.Bar.LEFT),

                bar("┬", chunks[1].right - 1, chunks[1].y),
                bar("┴", chunks[1].right - 1, chunks[1].bottom - 1),
                bar("┬", chunks[2].right, chunks[2].y),
                bar("┴", chunks[2].right, chunks[1].bottom - 1),

                -- Parent
                Parent:render(chunks[1]:padding(ui.Padding.xy(1))),
                -- Current
                Current:render(chunks[2]:padding(ui.Padding.y(1))),
                -- Preview
                Preview:render(chunks[3]:padding(ui.Padding.xy(1))),
            })
        end

Thanks. Is there any method to change the color of this border?
Or, ideally, can you make frame color identical to terminal background, as long as intercolumn borders are grey?

Not sure but I think that would make the divisions between the columns do that too. I'm gonna figure out/ see if it's possible to do that padding without the border later and I'll update here

So like this works:

function Manager:render(area)
    local chunks = self:layout(area)

    local bar = function(c, x, y)
        x, y = math.max(0, x), math.max(0, y)
        return ui.Bar(
            ui.Rect({
                x = x,
                y = y,
                w = ya.clamp(0, area.w - x, 1),
                h = math.min(1, area.h),
            }),
            ui.Bar.TOP
        ):symbol(c)
    end

    return ya.flat({
        -- Borders
        ui.Bar(chunks[1], ui.Bar.RIGHT)
            :symbol(THEME.manager.border_symbol)
            :style(THEME.manager.border_style),
        ui.Bar(chunks[3], ui.Bar.LEFT)
            :symbol(THEME.manager.border_symbol)
            :style(THEME.manager.border_style),

        bar(" ", chunks[1].right - 1, chunks[1].y),
        bar(" ", chunks[2].right, chunks[2].y),

        -- Parent
        Parent:render(chunks[1]:padding(ui.Padding.xy(1))),
        -- Current
        Current:render(chunks[2]:padding(ui.Padding.y(1))),
        -- Preview
        Preview:render(chunks[3]:padding(ui.Padding.xy(1))),
    })
end

I kind of find it cool with the columns though:

function Manager:render(area)
    local chunks = self:layout(area)

    local bar = function(c, x, y)
        x, y = math.max(0, x), math.max(0, y)
        return ui.Bar(
            ui.Rect({
                x = x,
                y = y,
                w = ya.clamp(0, area.w - x, 1),
                h = math.min(1, area.h),
            }),
            ui.Bar.TOP
        ):symbol(c)
    end

    return ya.flat({
        -- Borders
        ui.Bar(chunks[1], ui.Bar.RIGHT)
            :symbol(THEME.manager.border_symbol)
            :style(THEME.manager.border_style),
        ui.Bar(chunks[3], ui.Bar.LEFT)
            :symbol(THEME.manager.border_symbol)
            :style(THEME.manager.border_style),

        bar("┬", chunks[1].right - 1, chunks[1].y),
        bar("┴", chunks[1].right - 1, chunks[1].bottom - 1),
        bar("┬", chunks[2].right, chunks[2].y),
        bar("┴", chunks[2].right, chunks[1].bottom - 1),

        -- Parent
        Parent:render(chunks[1]:padding(ui.Padding.xy(1))),
        -- Current
        Current:render(chunks[2]:padding(ui.Padding.y(1))),
        -- Preview
        Preview:render(chunks[3]:padding(ui.Padding.xy(1))),
    })
end

Thank you very much for this method! I think this could be posted on the tips page in the Yazu documentation.
As for me, I think both options with and without frames are really fascinating.

Clean setup btw


astyle: 3.1 -> 3.4.10

Description of changes
Release Notes (up to 3.4.9 at the time of posting)
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@lilyinstarlight thank you for reviewing this! I made the suggested changes and added myself as a maintainer.


snap install and git not found

I installed terragrunt via snap to use on a gitlab ci server. When running terragrunt apply, it runs the Terraform command:
$ terraform init -backend=false -get=false git::ssh://git@github.com/myorg/infrastructure-modules.git?ref=v0.1.1 /tmp/
And it fails with:
Error copying source: error downloading 'ssh://git@github.com/myorg/infrastructure-modules.git?ref=v0.1.1': git must be available and on the PATH
When I uninstall terragrunt with snap remove terragrunt and install it manually by putting it on the PATH, terragrunt works as expected.

@conorgil, I believe you may have added the snap install instructions. Have you seen this issue before or know what could be the cause? Thanks!

If you look at how snaps are configured, each snap has to define every binary it uses, in this case, including git. Unfortunately, I can't easily locate the source code for the terragrunt snap, but I'm guessing that's the issue.

Ah, good find. Marking this as a bug. I'd love to know who maintains the snap install and get that fixed.

Maybe in the interim, a note or warning regarding this on the install page would be useful for people? I'd imagine this is a fairly critical bug?

Done! https://github.com/gruntwork-io/terragrunt/commit/64de850c2870cd5c1f2e80fce32777ea81f6a5d0

Sorry for delayed response (I haven't had solid internet last few weeks). I did add this to the README, but I just copied it from https://github.com/gruntwork-io/terragrunt/pull/204. Wish I could help, but I haven't actually used snap before.

Ah, thanks for the reminder @conorgil!
@popey, do you by any chance maintain the snap installer for Terragrunt?


Explicit definition of botocore client credentials considered harmful

this change seems to lead to this failure:
. . .
File "/Users/emmanuel.obi/.pyenv/versions/newsela-cli/lib/python3.10/site-packages/botocore/client.py", line 415, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/Users/emmanuel.obi/.pyenv/versions/newsela-cli/lib/python3.10/site-packages/botocore/client.py", line 746, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.errorfactory.UnrecognizedClientException: An error occurred (UnrecognizedClientException) when calling the GetLogEvents operation: The security token included in the request is invalid.

v0.4.1a1 works as expected

resolved via release of v0.4.1


Explore support IE

IE 11 doesn't support Array#find.
Add polyfill for it and explore if something else is broken.

All find methods were change to lodash lib and the bug was fixed... but not in all cases.
So I add polyfill by babel and it works.
After that I notice that <foreignObject /> (SVG) is not supported in IE, so I had to remove it. <foreignObject /> was used to displaying long text. I workaround creating <SvgText /> component.
All these were made in ie branch.

I've tested in IE 11 and I found some bug:

[ ] Fix checkbox position at src/components/PropertiesNetwork/index.js.

[ ] The texts inside a node are not showing up. Ref: src/components/SvgText

[ ] When a node is created is always positioned at the top left. It should get the position from ContextMenu.
[ ] The site stops working when more than one node is created.
[ ] The site stops working when selecting a node.
[ ] It's not possible to change the network width or height.


Update the chroma_sampling test to encode a larger frame

Makes #1149 apparent in the test.

Coverage increased (+0.6%) to 83.505% when pulling 07f50c28b36abed55729a1937015689a8a3b15bf on rust-av:chroma_sampling_test_update into 0c9c2c04653e15092015a0ac548f1c2ecfaa3d68 on xiph:master.

Funny enough I manage to get an error locally with both my mac and my power9 machine, but it survives travis ...

Thanks for looking at this that I reported.
Yes, it passes Travis test, but if I use real sequences it fails.
So, we have issue(s) to fix in encoder path for 422.

Let me repeat, this update fails on both ppc and a system with the full simd set we support :)
So there is something we do in generic code but we do not in only one of the many impl we are using.

OK, I could not find you meant that, if you did, it passes with C code but only fails if simd is used.
So, you are confirming that only simd code needs attention?


Convert spec/dummy app to use rails/webpacker

Changed relative file paths, introduced alias for webpack config, changed webpacker to use master for debugger to work

This change is

Seems really close to passing CI.
BEGIN IGNORE PRINTS IN THIS TEST
Building Webpack assets...
================================================================================
React on Rails FATAL ERROR!
Error in building webpack assets!
cmd: cd "" && sh -c 'exit 1'
exitstatus: 1
===============================

CI errors

====> React On Rails: Checking files in /home/travis/build/shakacode/react_on_rails/spec/dummy/public/webpack/test for outdated/missing bundles based on source_path /home/travis/build/shakacode/react_on_rails/spec/dummy/client/app
Detected the following stale generated files:
  manifest.json
React on Rails will ensure your JavaScript generated files are up to date, using your
`cd "" && yarn run build:test` command.
Building Webpack assets...
No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#Build-times-out-because-no-output-was-received
The build has been terminated
``

@behraaang any word on the CI failures?

Merged in #1247.

Closed by #1247.


Update junwei's about section

Codecov Report

Merging #15 (ffc0a36) into aboutus (a820b7e) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             aboutus      #15   +/-   ##
==========================================
  Coverage      72.15%   72.15%
  Complexity       399      399
==========================================
  Files             70       70
  Lines           1232     1232
  Branches         125      125
==========================================
  Hits             889      889
  Misses           311      311
  Partials          32       32

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 a820b7e...ffc0a36. Read the comment docs.


Go to stash every run (Botty v.0.7.1)

Hi,
I am running pindle runs with my blizz sorc.
My char goes to the stash at the beginning of every run after it has stashed the first found item (fine before, it goes directly to the red portal).
This issue did not appear in v. 0.6.7
Any ideas?
Many thanks.
Nico

Can you confirm your params value for
runs_per_stash=
transmute_every_x_game=

runs_per_stash=0
transmute_every_x_game=1000
Any issues with this?

@nicoco1107 are you able to run latest master? Made some changes around this, might have fixed the issue.

@mgleed - How do I do this? I used to download the .rar file

resolved with new release - thanks!


Should there be an InsertOrReplaceAllAsync to match InsertOrReplaceAsync

Currently, there are methods for:
Insert
InsertAsync
InsertAll
InsertAllAsync
InsertOrReplace
InsertOrReplaceAsync
Feels like we are missing
InsertOrReplaceAll
InsertOrReplaceAllAsync
I know there are ways around this e.g.
InsertAllAsync(items, "OR REPLACE");

but I was thinking just to keep consistency to add the two new methods. I don't think it will be a big change, for me, from looking at the code. Just wanted to see if it was a good idea before I starting work on it?

Yes, please! That would be a great help to people just moving from the old SQLite.Net package to the new.

Thanks @b099l3 , I wasn't aware of this hack! 👍  Thought I had to loop through all records to find out whether insert or update needs to be done.... Glad I found your post!! So yes, I would highly appreciate an InsertorReplaceAsync as I guess I'm not the only one .... 👍


Support for ES6 syntax?

Hi are you planning to add support for ES6 syntax as well ?

No, sorry.

hi @asgerf I know this issue is closed. Would you be open to a consulting project to add ES6 support?


Add providers.kubernetesingress.ingressendpoint.publishedservice in template

To integrate External DNS with Traefik is necessary to enable published service.
This flag requires a namespace and service (usually the Traefik LoadBalancer service if it's the default ingress controller). For this reason is perfect to integrate in the Helm chart.
Proposal:
A new config extension:
providers:
  kubernetesIngress:
    publishedService:
      enabled: false
      pathOverride: ""

If "pathOverride" is unset and "enabled" true use chart namespace and Traefik LoadBalancer service.
This proposal is based on Nginx ingress controller Helm Chart
Traefik documentation: https://docs.traefik.io/providers/kubernetes-ingress/#publishedservice

Hi! No comments about it?
I can work on this feature but I need feedback. Is it ok for the project? Can I start?

Hey @Daverkex,
feel free to propose a PR for that :-)

Can ne enabled manually too:
    additionalArguments:
      - "--providers.kubernetesingress.ingressendpoint.publishedservice=infra/traefik"

Implementation merged. Thanks to all ;)


Maybe: Allow permission to derive key from BIP44 path

Today, if you wanted to make a Bitcoin plugin, for example, you would receive an appKey using our appKey API which would derive a private key unrelated to the slip44 coin derivation path and instead be derived from the source of your plugin.
This is nice for simple use cases, but for well established protocols, many users will want to interact with keys generated in standard ways, and so we will probably want to provide a permission to expose these.
Possible permission label:  This site wants to: Manage your keys for the [BITCOIN] protocol.
This could be from a permission that maybe resembles this:
initialPermissions: {
  manageKeys: {
    caveats: [{ type: 'path', value: '0x80000000' }] // this path is bitcoin, and we would know it by slip44
  }
}

This solves an issue of the ability to restore keys generated in well established ways.

Not sure this needs to be an MVP-blocker, but depends on how we want to commit to a key derivation strategy for plugins.

I agree, there is a lot of potential for this, which would allow MetaMask to become quite easily a multi crypto wallet which could be great for Decentralized exchanges/cross chain swaps for instance.
We can either share directly the root private key of depth 2 once the permission is approved
m / purpose' / coin_type'
or also include as a parameter (either as a field required and mentioned in permission, or as an option) the other depths of the BIP44 spec:
`account' / change / address_index``
This would allow to either only give access to one account selectively and/or to allow the apps to use our HD derivation library instead of having to handle this part too.

Another question is : Do we allow for value: 0x8000003c which is Eth.
This would mean that a website would be able to gain control of an user already potentially funded accounts.
That may be the case too for other cryptocurrency if the user uses the same mnemonic in other crypto (non eth) wallets.
In any case, we need a HUGE red flag for any of these permissions and probably to present these huge security risks permissions to the user individually, and not bundled.

Do we allow for value: 0x8000003c which is Eth.

I think at least initially we would disallow this, but I know that over time advanced users will request basically every possible permission, so I think it ultimately will come down to whether we can make the confirmation descriptive enough to endow the permission with the correct gravity.

As for the derivation paths, it would be great to only expose a single key, but realistically, providing UI to intelligently show what key they are exposing, and what it puts at risk may be outside the scope of the feature: The feature exists largely so we can externalize the responsibility of representing protocols that other teams may be more expert on, and if we were able to tell you how valuable exposing your zcash keys are, for example, we would have built a sort of zcash wallet already just for that sake.
So my initial MVP implementation would probably be:

Allow the whole protocol root key to be exposed
Show the protocol name from our own lookup table
Use severe language to express the degree to which this plugin can do anything with these accounts, and effectively owns them.

Over time we can start to break these up into more fine-grained pieces. It may be nice to pre-ship with value-checkers for different services, so we can warn users when they are putting valuable keys at risk.

We did this elsewhere.


docs:  Create Documentation for Mirai

📚 Create Documentation for Mirai on GitHub
Description:
We need to set up clear and comprehensive documentation for Mirai, a Server-Driven UI Framework. The goal is to provide contributors, developers, and users with easy-to-follow guides, setup instructions, and detailed documentation on Mirai Widget JSON Structure.

✅ Tasks

[ ] Setup Documentation Structure

Define folder structure (/docs)
Organize sections:

Getting Started
Installation
API Reference
Mirai Widget JSON Structure (High Priority)
Examples
Contribution Guide
FAQs

[ ] Write Getting Started Guide

Overview of Mirai
Installation steps
Basic setup example

[ ] Add Mirai Widget JSON Structure Documentation

Define the JSON structure for Mirai widgets
Provide examples for common widgets
Explain properties, configurations, and usage

[ ] Add API Documentation

Detailed explanation of core APIs
Code examples

[ ] Add Examples Section

Practical use-cases
Sample projects

🤝 Collaboration
Feel free to contribute, discuss or suggest improvements in this issue.

🗓 Expected Timeline
End of Jan'25.
Let’s make Mirai easier for everyone to use and contribute to! 🚀

Hey @divyanshub024 would like to contribute to this issue.


Add docs links to AutoML samples

Add docs links to AutoML samples for MimeType once available.

Will this link be sufficient ?
Adding docs links to sample java code like the following:
      // Get the full path of the model.
      ModelName name = ModelName.of(projectId, "us-central1", modelId);

      // For available mime types, see:
      // https://cloud.google.com/automl/docs/reference/rest/v1/projects.locations.models/predict#textsnippet
      TextSnippet textSnippet =
          TextSnippet.newBuilder()
              .setContent(content)
              .setMimeType("text/plain") // Types: text/plain, text/html
              .build();

As far as I can tell, yes.


How to generate gene expression

Hello~, if i want to use the trained model to predict the gene expressions, which function should i use, and could you kindly give some explanations about the parameters of the function?
Thanks~

Hi! you can use the predict method or generate method to get counterfactual gene expressions. The difference is: predict uses the mean of latent distribution as input feature representation to the decoder while generate uses a sample from the latent distribution as input feature representation to the decoder.
As for the arguments of these two functions, outcomes, treatments, and covariates are your factual observations, i.e. the observed gene expressions, factually used drug/knockout, and cell type. cf_treatments is the intervention (i.e. alternative drug/knockout) you are interested in.

I found two files including these two functions (vci and gvci). Which file should I use and what are the differences between them?
Thanks~

It depends on which model (vci or gvci) you trained, and you should use the methods of the model that you trained. If you used this repo and used GRN, then you trained a gvci model, you can load the model by
`
import torch
from gvci.model import load_graphVCI
state_dict, args, _ = torch.load(path/to/saved/model.pt)
model = load_graphVCI(args, state_dict=None)
`
then use model.predict or model.generate. If you trained a vci instead of gvci (you did not use GRN), use load_VCI function (from vci.model import load_VCI) instead of load_graphVCI.

If i want to use the data you provided (marson_prepped.h5ad) , how should I write the predict and generate functions?😊

I'm not sure I understood your question. You don't need to write predict and generate functions. You can use the prepare function (https://github.com/yulun-rayn/variational-causal-inference/blob/961741b8704cc2db9d91ba8b5a8ae7799b0bf832/vci/train/train.py#L21) to create the model and dataloader, then simply load a batch from dataloader () and feed them to the predict and generate methods of the model:
for data in datasets["loader_tr"]:
    genes, perts, cf_perts, covariates = data[0], data[1], data[3], data[4:]
    model.predict(gene, perts, cf_perts, covariates)

Hi, please refer to my response in the previous comment. Thank you!

Oh~ I got it ,thank you!

It's the same dimensions and same order as your input genes.


[feat] Inject javascript from on_window_ready or on_webview_ready (using state data)

Describe the problem
I want the inline the initial values of my app user config to my window. This data is coming from managed state in Tauri. I previously was calling it async from the front-end, but it means adding some dynamic imports to prevent race conditions.
Typically, my front-end main looks like the following:
(async function instantiateMuseeks() {
  //  Async instantiations: we need to execute a couple of async tasks before
  // rendering the app
  await Promise.all([attachConsole(), config.init()]).catch(logAndNotifyError);
  window.__museeks_osType = await type();

  // We import the app content/components asynchronously, because some parts (like stores)
  // are instantiated synchronously, and require to read data from `window`  (hacky, I know).
  // Using top-level import would cause race conditions as the config is is not initiated and did not
  // expose its values to `window`
  const router = (await import('./views/router')).default;
  const queryClient = (await import('./lib/query')).queryClient;

  const wrap = document.getElementById('wrap');

  if (wrap) {
    const root = ReactDOM.createRoot(wrap);
    root.render(
      <React.StrictMode>
        <QueryClientProvider client={queryClient}>
          <RouterProvider router={router} />
        </QueryClientProvider>
      </React.StrictMode>,
    );
  } else {
    document.body.innerHTML = '
x_x
';
  }
})();

This works, but is not great, and delays to time-to-readiness of the app. In Electron, some of this work could be done in preload.
So I decided to moving some window global variables setup to the back-end, having discovered the [initialization_script](https://docs.rs/tauri/2.0.0-beta.8/tauri/webview/struct.WebviewWindowBuilder.html#method.initialization_script) feature.
Unfortunately, when statically creating a window from tauri.conf.json, it is not possible to modify the webview attributed of it via plugin's on_window_ready or on_webview_ready.
Describe the solution you'd like
Make it possible to append additional initialization_script from plugin, dynamically.
Plugin::Builder::js_init_script  is not good enough, because I need to access State-managed data, and this helper only accepts static values.
This is really a convenience feature request, things are working ok right now, but if you think it makes sense and it's not too complicated, it would be absolutely awesome.
Alternatives considered
My current solution is to manually create the window during setup
#[tokio::main]
async fn main() {
    // Is there any way to instantiate that in the plugin directly?
    let db = plugins::database::setup().await.ok().unwrap();

    tauri::Builder::default()
        .plugin(plugins::config::init())
        // ...
        .setup(|app| {
            // TODO: Create an alert window in case something goes wrong here

            // We need to inject some stuff in our window, so we are creating it manually
            // Ideally, this would be in the Config plugin, but there seems to be no way
            // to append initialization_scripts to statically created windows.
            let config_manager = app.state::<ConfigManager>();
            let config = config_manager.get().clone();
            let config_json = serde_json::to_string(&config)?;

            let initial_config_script = format!(
                r#"
                    window.__MUSEEKS_INITIAL_CONFIG = {};
                    window.__MUSEEKS_PLATFORM = {:?};
                "#,
                config_json,
                tauri_plugin_os::type_().to_string()
            );

            tauri::WebviewWindowBuilder::new(
                app,
                "main", /* the unique window label */
                tauri::WebviewUrl::App("index.html".into()),
            )
            .title("Museeks")
            .visible(false)
            .hidden_title(true)
            .title_bar_style(tauri::TitleBarStyle::Overlay)
            .inner_size(900.0, 550.0)
            .min_inner_size(900.0, 550.0)
            .fullscreen(false)
            .resizable(true)
            .disable_file_drop_handler()
            .initialization_script(initial_config_script.as_str()) // All of this for that
            .build()?;

            Ok(())
        })
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

I would highly prefer to be able to inject that JS via my plugin (plugins::config::init()) instead + static window definition in tauri.conf.json, separation of concerns, all that ;)
Additional context
https://github.com/martpie/museeks/pull/748 for additional context and more code :D

Plugin::Builder::js_init_script is not good enough, because I need to access State-managed data, and this helper only accepts static values.

Not sure why Plugin::builder::js_init_script is not good enough, the same code you showed above with WindowBuilder::initialization_script could be done on the Plugin::builder::js_init_script as well.

If you really want to use on_webview_ready, you can do window.eval(your_script)

Eval seems like a good solution, I didn't know about it.
Regarding why not js_init_script: I may be missing something, but it is not possible to read managed state from there is it?

Oh I guess I can instantiate my config from the init method of my plugin, the move it to the scope of the plugin. Duh.
Thank you for the hints!


MMMLU task improvements

Fixes Issue #631.
#607 addresses most of the human feedbacks for these tasks.
I have added definitions of some of the lesser-known subjects.

Thanks!


feat: parse sgid userinfo data

feat: parse sgid userinfo data
This commit adds a new method, parseData, which helps to parse the
sgid userinfo object so that any stringified array or object values
are parsed as objects.

This commit is implemented according to the SDK implementation
requirements as linked here: https://www.notion.so/opengov/SDK-implementation-requirements-1f9b7cbd2bd4406b85d6645fe3e365dd#dcabe67d14034525bfd5e84acc1c59c6

This commit also adds the necessary unit tests for the newly introduced
utility functions that support parseData

Current dependencies on/for this PR:

develop

PR #42   👈

This comment was auto-generated by Graphite.


How install?

Hello,
I will trying your plugin, but can't figured out how install.

Download the zip from Github
Uploas the unzipped folder 'PicoMailForms-master' and rename it 'PicoMailForms'
Add this code in a test.md file:

[form]
  [text mail]E-Mail[/text]
  [text]some other information[/text]
[/form]

Adding this code in the config/config.yml (okay i would chanfg this, but i leave it for testing):

Mail:
    SenderName: test.ch
    Host: server.test.ch
    UserName<EMAIL_ADDRESS>    Password: test
    Port: 587
    OperatorMail<EMAIL_ADDRESS>
After that my test-website shows a blank page with an 500 error.
I used Picocms a week now, but for me as beginner it is not so easy installing without a good step-by-step guide and i'm not familiar with composer at the moment.
Hope you can adding more detailed steps how can implement your plugin in picocms? Where adding the config and content snippets?

Hello ctuxboy,
You have to install the plugin using composer. A "legacy" installation using the files only is not supported as composer takes care for PicoMailForms dependencies and namespaces.
According to the pico docs, pico also recommends installing pico using composer:

Starting with Pico 2.0 we recommend installing Pico using Composer whenever possible

Pico Doc > Install > I want to install pico using composer
After you correctly installed pico using composer, you can install PicoMailForms using followig command:
composer require jflepp/picomailformsplugin

Hi @jflepp,
Thx for the help.
Yesterday evening i try install Pico for the first time with composer.
I have a few question about composer, asked on the picocms github Page.
But it works well and happy i have SSH access to my hosting.
The problem is, some of my clients has no SSH access to they hosting. So i can't use your plugin on they're hosting?
Sorry about my poor english.

Hello @ctuxboy,
You could install your page locally and then push the source files (including ./vendor and the plugin directory) via ftp/share/etc to the server.
The problem is that the plugin is being configured in the ./vendor directory during the installation, so you need to you install it using composer. But there is no need to install it on the server directly (although i would recommend it)

Oh okay,
I understand:

Installing Picocms and our plugin locally
Upload the Pico installation to server's webroot.

exactly
please let me know if that works for you

@jflepp
I try it and it works well!
No server erro anymore.
Adding a mailform on a webpage.
Adding the settings in config/config.yml
Mail:
    SenderName: Christophe
    Host: smtp.gmail.com
    UserName<EMAIL_ADDRESS>    Password: ***
    Port: 587
    OperatorMail<EMAIL_ADDRESS>
Trying send a mail, but gives an error:
An error occured while sending your message. Please contact the site administrator.
What i see, in the gmail smtp settings, there is an extra option:
Gmail SMTP TLS/SSL required: yes
Is it possible adding this?

SLL SMPT is enabled by default and there is no option to disable it

I think your issue is now resolved as the installation workes using composer
best regards

It works installing with composer, but sending emails, doesn't work at this moment.
Try it again in the next daus ;-)
If it not works i can open another issue.

Installing with composer works, but sending emails doesn't work.


Unable to use SVG image as layer

Hi All,
I'm sorry to post it here but I did not get any good information on stackoverflow.
My question is simple: Can I use a SVG image as a layer with OpenLayers-3? I did not find anything on the website but because it is such a commonly used format I want to be sure.
For reference my question on stackoverflow: https://stackoverflow.com/questions/34416412/how-can-i-use-a-svg-image-as-layer-on-openlayers-3

The same question!

The question was properly answered on Stackoverflow, so closing.

I disagree with this, as if you use this example which uses imageStatic, the image becomes blurred on zoom and doesn't  remain smooth as you'd expect a SVG to do.

I have same issue. SVG goes blurred with newst version, but the old version works fine.

The reason why you did not see any blur in previous versions is because there wheel zooming was always snapped to integer zoom levels, which it is no longer.
And the reason why the SVG gets blurred at fractional zoom levels is because it is rendered to a canvas and composed to a final map image with the other layers.

So how do we work around this? Stay on the old version?  We need smooth SVG layers on our maps.

Still no solution?

any fix for this issue yet? or anyone with alternative approach?

Hi. I've looked at the documentation for the render property in the Layer class:
https://openlayers.org/en/master/apidoc/module-ol_layer_Layer-Layer.html
but i do not understand what input this property is expecting. What is the "frame state" and how do i return this?

@Koronag I have just created pull request #10363 with a new svg-layer.html example that should answer your question. Until that pull request is merged, you can preview the example: https://473-4974939-gh.circle-artifacts.com/0/examples/svg-layer.html

@ahocevar Hi
I was facing issues when adding a Static Image Source to the SVG layer that you created in this example SVG Layer. I tried providing the Layer some projection like in this example Image Reprojection. But the layer is not picking up the projection and I am not able to change the position, size and rotation of the image layer on the map. The SVG is always getting rendered at lon-lat [0, 0]. But the same projection is working when provided to a static image layer..
Sorry, I cannot provide any reproduction of this at this moment. But if possible, can you please create an example where SVG image (let's say this) is rendered on map at some point (lon lat [-72, 42]) and size should be relative?
Looking forward to your reply.
One more thing, it was possible to render SGV directly as Static Image in OL-3, but as you explained earlier, it is not possible now. I cannot go back to the previous version, but can you please make it easier to render SVG like the OL-3? Please consider this as a feature request.

Nothing keeps you from adding an SVG as static image layer. But it will be blurry because it is rendered to a canvas at the SVG's native resolution. Hence the better way of using a render function. The svg-layer example is made so it can align with other data, see e.g. https://codesandbox.io/s/svg-layer-forked-8rc6cu. If it doesn't align for you with a static image, you need to make sure the cssTransform of the SVG layer matches the extent of the ImageStatic layer.
Your other request (rendering an SVG at a location with relative size) is just an ol/style/Icon exercise with a scale calculated from the current view resolution.

Thanks for the reply. @ahocevar
I understood that I have to write a render function to display the svg on the map.
Please refer this example. https://codesandbox.io/s/svg-layer-forked-cvcpvd
Here I want to adjust the width of the svg building to 10 meters. And the building should render at lon lat [20, 20]. Also the [20, 20] should be the center point of the building on map.  But I am having difficulty writing the render function. Can you please help writing the render function for this example? Please edit the example as required.

Hello, i use a svg like this as a layer, but i cannot see other layer with it. it seems the render function, always hide others layers...
Thank you so much

With the new ImageSource loader API, it is no longer necessary to use a custom render function. See e.g. https://openlayers.org/en/latest/examples/wms-image-svg.html for SVGs from a WMS.


My First PR commit

PR comments

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: cjxd-bot-test
If they are not already assigned, you can assign the PR to them by writing /assign @cjxd-bot-test in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@cjxd-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr-build
067ee02b39a36785564e93e4441dd4ec1f623a2b
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Fix the map CSS

@kaashmonee Feel free to merge after reviewing.

@bl-nero thanks for taking a look at this. This looks good, but doesn't work with the Django server for some reason. I suspect that has something do with Webpack because I'm noticing that some of the other CSS doesn't load either. I'm going to merge this since it resolves #42 and works with npm start, but I'm going to try to see if I can resolve this new problem.


fix(datetimepickerv2): remove default time value from humanValue object

Closes #3631
Summary

The DateTimePicker and DateTimePickerV2 always auto populates the default value 00:00 if time is not select. Now we set time value default to null. It would show empty on TimePickerDropDown in DateTimePickerV2 and TimePickerSpinner. In the top input it would only show date if date is selected.

Change List (commits, features, bugs, etc)

changed startTime and endTime default value to null for DateTimePicker, DateTimePickerV2WithNewTimeSpinner, DateTimePickerV2WithoutNewTimeSpinner
updated component tests and e2e tests

Acceptance Test (how to verify the PR)

As in captured video

https://user-images.githubusercontent.com/24279794/204655032-eb7b349b-60c0-44e8-a035-3d82d2863849.mov
Single select Test

go to single select story
open dateTimePicker menu
click on clear button
open dateTimePicker menu again
select a date
check the value in the input does not have default 00:00

Range select test

go to Default story
check useNewTimeSpinner checkbox in the knobs
open dateTimePIcker preset menu
click on custom range
click on absolute radio button
select a start date
check there is no default time 00:00 show up in the input
select an end date

check there is no default time 00:00 show up in the input

Same for Range select without check useNewTimeSpinner in the Default story
Same for Date Time Range Selector/ Default story
Regression Test (how to make sure this PR doesn't break old functionality)

tests here

Things to look for during review

[ ] Make sure all references to iot or bx class prefix is using the prefix variable
[ ] (React) All major areas have a data-testid attribute. New test ids should have test written to ensure they are not changed or removed.
[ ] UI should be checked in RTL mode to ensure the proper handling of layout and text.
[ ] All strings should be translatable.
[ ] The code should pass a11y scans (The storybook a11y knob should show no violations). New components should have a11y test written.
[ ] Unit test should be written and should have a coverage of 90% or higher in all areas.
[ ] All components should be passing visual regression test. For new styles or components either a visual regression test should be written for all permutations or the base image updated.
[ ] Changes or new components should either write new or update existing documentation.
[ ] PR should link and close out an existing issue

Hey @jessieyan. When we have dates picked for the range and there are no times we are able to get an active apply button

Updated default time value to null.  Only check time values when hasTimeInput is enabled.

https://user-images.githubusercontent.com/24279794/206520264-3a671321-c6ce-4f66-ab52-9114c967e3e5.mov


Don't split on commas in quotes. https://github.com/nepsilon/search-q…

…uery-parser/issues/16

We'd need at least one test case for each of these:
from:one,two -> from: ["one", "two"]
from:one\,two -> from: ["one, two"]
from:"one,two" -> from: ["one, two"]
from:"one\,two" -> from: ["one, two"]
from:"one","two\, three" -> from: ["one" ,"two, three"]

In order to support all those cases, some significant refactoring is required. Any chance you could merge this as a small improvement, and then we can work on the refactor after? It'll take some time.

Okey. We can merge this but can't release a new package before testing to be exhaustive.
You can go ahead an merge this yourself I think. I invited you as a contributor last week.
Please add an issue to keep track of these tests to be written. Thanks!

Ok, no problem, I'll keep this unmerged for now until I can write the tests.

Just a heads up that we ended up writing a new parser and releasing it here: https://github.com/mixmaxhq/search-string (cc @mericsson ).


Add flag to keep default rules path

Issue Type

Feature request

Ansible and Ansible Lint details
ansible --version
ansible <IP_ADDRESS>
  config file =
  configured module search path = Default w/o overrides

ansible-lint --version
ansible-lint 2.4.1

ansible installation method: one of source, pip, OS package
pip in venv
ansible-lint installation method: one of source, pip, OS package
pip in venv

Desired Behaviour
When adding rules paths I want to be able to request explicitly that they are ina ddition to the default rules path.
Actual Behaviour (Bug report only)
Any extra rules dirs added require the default rules path to be explicitly readded
Please give some details of what is actually happening.
Include a minimum complete verifiable example
with:
This would allow more simple usage of ansible-lint with additional rulesets.

This would impact my atom linter package so I am going to add myself to this conversation.


removed AbstractFlagEncoder.speedDefault and flagsDefault()

It took a bit time, but finally I got rid of this method :) (usage was approx 2000 times). This will likely make it easier to move average_speed and access parsing into a separate TagParser.
My best friend was regex replace functionality of IntelliJ ala:
graph.edge\((\d+)..(\d+)..(\d+), (or variations with (\d+.\d+) or (\w+))
GHUtility.setProperties(graph.edge($1,$2).setDistance($3),encoder,60,true,
The new mechanism is a bit clumsy, but if you think about this then it is really necessary to initialize the edge with a specific speed (and vehicle). And in production we do not use this method, only for tests.
TODO: replace more single method calls of GHUtility with the new GHUtility.setProperties(List<EdgeIteratorState>)?

I have also committed the changes with formatting like you suggested. Is this in a shape where I can merge this or should we e.g. remove the addition of the new set methods? If we keep them I'll add a few tests at least :)

Ok, replaced a few places so that set(enc, fwd, bwd) is used in tests too.
btw: I like the cleanup here :) https://github.com/graphhopper/graphhopper/pull/2202/commits/84f673a09747df92c0e66428aad8484f2f2060c9#diff-9fa225a474dad457f320fc9e51c0337f69b560f7c9b676387e8d2155d8ef1d21


Pause rendering while scene view is not visible

Currently done by having separate routes for /open and /save.
Might be relevant if open and close are dialogs on the /editor route after implementing #78


xliffmerge - Modifying messages.*.xlf file of default language

Hello, and thank you for this great tool. You saved us a lot of work these past few days.
Our default language is English. To speed up development we have been fixing typos and such by directly modifying the messages.en.xlf file. For example if the <source> text was "I liek Apples" we would change the <target> of that file to say "I like Apples". This works great for quick fixes, but now we want to run the tool again, and are having troubles.. The tool reverts all our changes for the default language, and forces the <target>s to match the <source>s.
My question is: is the expected behavoir of xliffmerge to forcefully update the <target>s in the messages.en.xlf file to match the <source> found in the messages.xlf file given that the default language is English?

Thanks that you like xliffmerge.
The behaviour you describe in fact is the intended one.
The default language should be exactly what is given in the templates.
First of all every change of the source generates a new ID so that it will be a totally new unit. You can only avoid this by setting explicit IDs, which is very tedious and uncomfortable.
As a work around you could create a language like "en_corrected" to correct typos.

Thank you for the rapid response. Alright, makes sense. Now we know the fault is on our side, and can act accordingly :+1:
I tried the workaround you suggest, but it is complaining that it is not a valid language code:
bash-4.4# ng add @ngx-i18nsupport/tooling --i18nLocale=en --languages en,fr,en_corrected
Skipping installation: Package already installed
? Which translation file format would you like to use? xlf
    "en_corrected" is not a valid language code.
"en_corrected" is not a valid language code.

My workaround for this is to give it some language we are not going to use, say nor for Norwegian, and then treat that as en_corrected.
Is it possible to have the tool allow us to input made-up language codes? Does the tool use the language code for anything other than distinguishing between the different messages.*.xlf files?

Sorry, my fault. The _ is the problem. Must be "en-corrected"

Ah! I see, thanks alot :+1: :+1: :+1:


Refactor the "create Freshdesk ticket" view to use v2 API

The Freshdesk v1 API is being deprecated, need to refactor this view.
http://developer.freshdesk.com/api/#create_ticket

#upgrade issues

source 4 forum doesn't exist anymore in fresh desk api v2

I cant find the fresh desk page in the cms so that i can test some of the changes I made

I'm unsure if the API endpoint is used in the CMS, but just try to test the endpoint programmatically (using requests library or similar). See some of the unit tests for examples (test-api.py).

I made all the changes in api v2, I tested the endpoints using postman, but they seem to require extra parameters different to the ones in the code.


Fix reparenting after hover delay

Fix https://github.com/godotengine/godot/issues/91254
Also keep all nodes selected after reparenting and not just top level ones (before hover delay, because after it's the hovered/inspected node that should be the one selected)

Seems to work perfectly. Thanks!
The only difference with before is that when hovered the rectangle around the node is gone. I think it's brilliant because the rectangle around the node was interfering with the "drop line" making it difficult to see.

One thing that makes me ticks is that the bug was supposedly introduced by #90653 but this fix does not touch code related. This might still be the proper fix but ask the question on why  it does not implicate the code that broke it. I'll try to take a look when I have time most likely sometime between monday and tuesday.

Hello 👋

Seems to work perfectly. Thanks! The only difference with before is that when hovered the rectangle around the node is gone. I think it's brilliant because the rectangle around the node was interfering with the "drop line" making it difficult to see.

Thanks for your test and feedback!

One thing that makes me ticks is that the bug was supposedly introduced by #90653 but this fix does not touch code related. This might still be the proper fix but ask the question on why it does not implicate the code that broke it. I'll try to take a look when I have time most likely sometime between monday and tuesday.

The way I was ensuring that the inspected/hovered Node/TreeItem got selected and added to history when the drag ended was by using scene_tree->set_selected(node_hovered_now);, but since the changes in your PR apparently, it look like it update while the drag is happening or something, causing it to break. Just preventing the signal to be emited by passing false scene_tree->set_selected(node_hovered_now, false); avoided the issue, but then the problem was that it was not added to the editor selection history anymore after, so I did it at when the drag end instead. I don't think that your PR is problematic per se, just that it changed the previous behaviour, but would be better if you verify indeed.
While I was at it, I removed the use of the marked property and directly changed the text color to accent color which visually achieve the same result, with the bonus that it does not lose the accent outline around the target node for the reparent. set_marked is forcing the tree to update, causing it to lose the outline, and since now they stay visible I felt it was also better to not set the cursor on TreeItem because that gray outline overlap the other, as pointed by @Hilderin ... 😅
Anyway, if you can take a look at it when you have the time that would be greatly appreciated ! If you think you need to superseed (I think that's the term) it to make some more in depth changes, no problem, or if I need to make more corrections, let me know 👍. Thanks a lot !

Retested this, and realized this approach still have issue with the path(s) used in the history when reparenting after the delay.

See also:

https://github.com/godotengine/godot/pull/91439
https://github.com/godotengine/godot/pull/91430

The changes look fine. There is a minor issue where the inspected node does not appear at the top, but it can be fixed later:
godot.windows.editor.dev.x86_64_HVzun4zCyh.mp4

Yes indeed, right now it will do it only once the drag is ended. Tho I've realized another small issue caused with those new changes is that if you inspected a node by hovering it, then while dragging to the inspector you somehow passed over others node it would not select the inspect node at the end of the drag so I made a small changes that instead of selecting the node_hovered_now at the end of the drag, I select the edited object in the inspector (if it can be cast to a Node).

Thanks!


Remove spv_validate_options_t and change tests accrodingly.

Users always want to run all the checks. The spv_validate_options_t
mechanism, which provides little benefits to users, complicates the
internal implementation and also makes the tests exercise different
paths as users do.
Right now the tests are more like integration tests instead of
unit tests, which should be our next refactoring aim.
Addresses #89.

+1
@umar456 PTAL

+1
This change makes it easier to use the validator correctly.
Optional: Fix potential formatting problem in one place.
Still would like @umar456 to review.

This LGTM! +2.

Rebased, resolved conflict with the --version patch, and pushed into master as b6ccd0d89


[WIP] Publish docs as kolenabot

Looks like this works as expected!

Looks like this works as expected!

If someone changes their git settings and declares themself to be kolenabot, will that go through the branch protection settings? I imagine not, but we should verify.

Hmm, the commit might go through or might be rejected if their SSH key doesn't belong to kolenabot. I'm not sure what protections GitHub provides here (if any).
In either case, it doesn't seem too important to me to address — from my perspective, branch protections are useful to protect against accidental mishaps, not intentional malice. The user performing this attack would need to be inside our organization, and would need to configure themselves as kolenabot and run mkdocs gh-deploy --remote-branch release/docs. Too many steps to do accidentally.


import /usr/include instead of macosx sdk

Instead of depending on xcrun -sdk (whateversdk)  import the dependencies (like Darwin) instead.

might make sense to go ahead and do that here as well?

sounds reasonable. Want to pair on this durring waza on friday?


Unable to add dialogs in LU

Sometimes getting error when entering the dialogs in LU

@Msutapalli can you add a bit more detail into what you are trying to do?

Closing due to inactivity.


Documentation - Typo in OpenMetadata Authorization Config

While configuring openmetadata-security.yaml for Okta and Auth0, it threw an error which led to this typo.
Typo: prinicipalDomain
https://docs.open-metadata.org/install/enable-security/auth0-sso/auth0-config
https://docs.open-metadata.org/install/enable-security/okta-sso/okta-config

Resolved.


Set Custom Subject {{STATUS}} in upper case CAPS

⚠ Please verify that this bug has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

📝 Describe your problem
Hi,
I tried to integrate UPTIME KUMA, email (SMTP) integration with the very popular and free https://instatus.com/ status page service, but it does not work.
It’s because INSTATUS only accepts, email status notifications with the word “UP” and “DOWN” all-in upper-case CAPS and UPTIME KUMA sends “Up” and “Down” with just the first letter in upper case CAPS.
On UPTIME KUMA I set the smtp email notification CUSTOM subject to be: {{STATUS}}.
It would be great if on UPTIME KUMA, can in the future have a way to set this.
In the meantime, does anyone has an advice or suggestion on how can I solve this, in order to send the {{STATUS}} in upper case caps? Maybe by manual changing/editing some file, in a way that setting is not lost in future UPTIME KUMA updates?
Thanks!
📝 Error Message(s) or Log
No response
🐻 Uptime-Kuma Version
1.22.1
💻 Operating System and Arch
UBUNTU 22.04 with Cloudron.io control panel
🌐 Browser
Google Chrome
🐋 Docker Version
No response
🟩 NodeJS Version
No response

Currently, we don't support this.
The SMTP notification provider currently does "templating" like this:
https://github.com/louislam/uptime-kuma/blob/ac68a35d3a43c9e1abce0790080507040cc14302/server/notification-providers/smtp.js#L58-L60
Ideally, this would be handled via liquid as well (is an ongoing migration, but slow given the amount of notification providers):
https://github.com/louislam/uptime-kuma/blob/ac68a35d3a43c9e1abce0790080507040cc14302/server/notification-providers/webhook.js#L29-L39
Liquidjs would include a capitalisation-filter
Pull requests welcome

@CommanderStorm
Thanks for the response.
But since I'm not a developer/web dev, I do not "understand" your response. I'm a sysadmin.
Maybe try to explain to me in a more "simple" way. My konowledge goes so far as editing files in SSH... :(
Thanks!

I have opened this Pull request.
Could you test if the change breaks any functionality and provide Screenshots that it does not?
(you seem to have smtp configured, and I should really get back to my exam studying 😉)
As in, send provque mails and have the template set to these two cases:

{{STATUS}} {{NAME}} {{HOSTNAME_OR_URL}} (simple)
{{NAME}} {{NAME}} {{STATUS}} {{status}} (duplicate + caseness)

Hi @CommanderStorm
Thanks a lot for the help and code. I have not yet had the time to test.
Anyway I also contacted INSTATUS support team about this issue and they already updated their system to accept "Up" and "Down" email subject notifications.
So now UPTIME KUMA works perfectly with INSTATUS using SMTP email notifications.


Add new symbols BCH and CDT

Closes https://github.com/api3dao/react-icons/issues/9

BCH and CDT has been added to the package successfully


Add missing fields to facet expansion

Add the details needed by finder-frontend to the expansion rules
for facets, adds:
combine_mode
display_as_result_metadata
filterable
filter_key
name
preposition
type

 Mapping Rummager request/response in Finder Frontend


Fix unmatched context.save() & context.restore() calls

Fix unmatched context.save() & context.restore() calls in the redraw optimization return
    if (!redrawAll &&
        shiftX === 0 && shiftY === 0 &&
        mc.renderWidth === renderWidth && mc.renderHeight === renderHeight)
    {
        //  No reason to redraw map, looking at same thing and not invalidated.
        return;
    }

As a optimization, I have moved the save after the return instead of adding a restore before the return because there are no state changes until later.

:+1:


Remove pygeofilter==0.2.0 pin after next stac-fastapi release

The next stac-fastapi release should no longer pin pygeofilter to an older version, so we'll be able to remove the pygeofilter==0.2.0 pin in the API requirements. We'll want to confirm that pygeofilter is getting installed to the latest version after we remove the pin. See https://github.com/ASFHyP3/asf-stac/issues/6 and https://github.com/ASFHyP3/asf-stac/pull/61 for context.

After removing the pin, the next deployment workflow installed pygeofilter-0.2.0.


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/channel-wg-leads
/assign knative-sandbox/channel-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/pkg d569db3...d4505c6:
  > d4505c6 Source validation fixes (# 2251)
  > fb7ee28 when testing downstream use the correct release branch (# 2265)
  > bfab3c8 Add back inadvertedly deleted call to ObserveKind (# 2282)
bumping knative.dev/eventing 38f3845...7266621:
  > 7266621 upgrade to latest dependencies (# 5723)
  > 316e14d upgrade to latest dependencies (# 5717)

/lgtm
/approve


Canvas is coming with older version of Laravel

While installing canvas cms, it includes an older version of Laravel ie. 5.3

That's correct @ankit-fourtek. Right now the upgrade to 5.4 is in process but not completed yet. Stay tuned..


Drastically improve glTF generator performance

In order to reduce the time required to process large models by about
factor 10 the data is iterated more effectively.
Kudos to @sir-marc for pointing out the area.
The new approach uses an optimized data access strategy by not
re-generating new arrays and allocates the required memory only once.

As a nice side-effect this will also make the pipelines perform much faster 😄

Nice work and thanks for the kudos 😘
Now go and enjoy your Birthday 🥳


Unable to build on OS/X

I updated the caffe-public/Makefile with the following:
    LIBRARY_DIRS +=<EMAIL_ADDRESS>

With that change - the caffe-public now builds.
But the caffe-distri still does not: it fails here:
   ^
 [exec] ../caffe-public/distribute/include/caffe/data_transformer.hpp:141:8: note: candidate function not viable: no known conversion from 'vector<cv::Mat>' to 'const caffe::Datum' for 1st argument
 [exec]   void Transform(const Datum& datum, Dtype* transformed_data);
 [exec]        ^
 [exec] 1 error generated.

It looks like this were a problem with C++11 .  What to do here?  I have tried adding the following but makes no difference:
  CXXFLAGS +=  -std=c++11 -stdlib=libc++ -Wno-c++11-narrowing

Does anyone have this building on OS/X in CPU ONLY mode?

CaffeOnSpark worked on OSX in the early days, not sure if it still does since we don't have such a use case, it has not been tested in OSX anymore. There is the tutorial from last year.
https://github.com/yahoo/CaffeOnSpark/wiki/GetStarted_standalone_osx

Naturally I have looked at that guide many times.   The error message is very specific and seems to do with C++ version 11. Which version of C++ was used at the time of that document?

I don't remember the exact version, but it was pre-Sierra, either Yosemite or El Capitan.

Seems to compile on my latest OSX...ofcourse I get linker errors due to
cudart not installed
On Thu, Mar 23, 2017 at 11:32 AM, Jun Shi<EMAIL_ADDRESS>wrote:

I don't remember the exact version, but it was pre-Sierra, either Yosemite
or El Capitan.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/yahoo/CaffeOnSpark/issues/238#issuecomment-288819071,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACCTVcsaiGYtk6tIimNevnODNyZUeVMcks5rorq-gaJpZM4Ml_JF
.