Question re compilation

In the readme, it currently mentions this command:
cmake -S . -B ./build -D CMAKE_INSTALL_PREFIX=/path/to/installation/folder

What  should I enter for /path/to/installation/folder? Could we write a sentence to guide new users where this foloder should point at?

Nothing, you can run the cmake command without the -D CMAKE_INSTALL_PREFIX=/path/to/installation/folder. This is if you want to install the library in your system.
Simply use cmake -S . -B ./build, I will update the read me. But usually, with CMake being integrated inside IDE, little to no-one runs this command anymore.
You already ask this if I recall :stuck_out_tongue_winking_eye:

This is something I want to avoid because, a bit like Java or other language, people have their own way of building, IDE, etc.
And before we know it, we have a tutorial for building on VSCode, MSV, XCode, Eclipse, Makefile, etc ...
But here a quick tuto based on my setup:
My config for  VSCode:

MSV 17 or Ninja or Makefile
CMake (>= 3.20) install and available in PATH and CLI (open a prompt, and you should be able to run the cmd cmake
in VSCode, get the following extention: C/C++ extension Pack & CMake Tools from Microsoft

This should enable VSCode to call CMake for configuration and build. And It will use the cmake presets to select the build you want to do (like Debug, Release, etc.)
You can tune the build configuration using the option in the bottom bar (the status bar):

You then select the build type you want:

Ninja, win-msvc17, make file
Debug, Release build
Debug, Release tests

I am relying on Ninja (installed on my system) and build and test in Debug for development.
Note: these are presets stored in the cmake>presets and are not exaustive to all type of configuration. Hence, the use of the commande line in the README.
Once this is done, you can build in VSCode with ctrl+shift+p and type cmake: build

This should make VSCode call cmake with the correct command line based on the presets you selected:

This work fairly easy for Unix system (linux and mac) especially with all the building tools like ninja and cmake can be install with brew or apt.
For windows, things may be a bit more bumpy, and I am less familliar. hence the command line README to avoid using an IDE  or the use of CMake GUI for simpler configuration.
Hope that's help. And of course, if needed, we can find 5 min for a quick Visio to catch up and debug your build setup :)

Thanks, @StRigaud that is a great explanation ❤


SyntaxError: Expected the "svgName" prop to be a string, What should I do?

I assign a string to svgName, is ok.
return (
            { BENIF.map((v, k) => {
                return (

                    <svg svgName="webapp/src/assets/svg/local"  width='9' height='17' className="svg-arr-l"/>

)
            } )}

But I assign a variable to svgName, is bad.
  const BENIF = [
            'webapp/src/assets/svg/crown',
            'webapp/src/assets/svg/discount',
            'webapp/src/assets/svg/earth'
           ];
 return (
            { BENIF.map((v, k) => {
                // svgName={v} "webapp/src/assets/svg/local"  svgName={str}
                let str = v.toString() || ''
                return (

                    <svg svgName={str}  width='9' height='17' className="svg-arr-l"/>

)
            } )}

It's probably something specific to React expecting it to be a string. Please file an issue on the React repository.

React can’t make your build fail. No, it’s not specific to React.

Hello Tim Neutkens, Could you help to confirm it? Thanks! @timneutkens

@gaearon thanks for confirming, then I don't know what it is, it's also not related to Next.js, since we don't use any linter. So it's either related to Babel or Webpack 🤔 can you provide a minimal reproduction as repository, so that I can check it out real quick.


expose path data

I have the need to tessellate my vector graphics to receive a convex hull used for game physics.
I can easily do this with lottie and svg files, but rive doesn't seem to expose the underlying path data in the runtime.
Given framerate and animation length, Is there such a function of t, time, to receive the path geometry in that moment?
See: https://simbleau.github.io/rust/graphics/2023/11/20/using-vello-for-video-games.html#physics

rive-rs comes with a Vello back-end implementation included. You could get the path data by listening in on that implementation, but this pretty much means copy-pasting the implementation.
Another way to do this would be to query the path data from the runtime, but this would require writing quite a bit more APIs to get there.

I am suggesting the latter, e.g.
let handle = query_artboard.single();
let time = 0.25; // seconds
let path_data = bevy_rive::runtime::get_data(handle, time);

You could achieve that by listening to Renderer::draw_path after calling Scene::advance_and_maybe_draw. This will only give you the path data that changed from last frame though.


Ground Reaction Force in the Unity plugin

Hello,
I'm using the Unity plugin of MuJoCo for human gait synthesis. I'm interested in reading out the ground reaction forces. I only need the ground normal / global up component. I can use a touch sensor on the ground, but I would like to have separate signals for the left and right sides.

Windows 10
Unity 2021.2.19
MuJoCo 2.2.0

I figured that data->cfrc_ext can be used for this, by summing up the toe and foot body contact forces, with guidance from the old forum. link_1, link_2.
However every time I try to index cfrc_ext I get a null reference exception. I'm using the same method I've used to access other members of 'mjData', never ran into this issue before. I tried accessing it at different points of the timestep, same issue, and calling mj_rnePostConstraint didn't help either.
My next plan is to use mj_contactForce instead, and convert to a global frame of reference as recommended here.
Was using cfrc_ext an appropriate approach, just done incorrectly? Or is it an issue with the plugin? Any other alternatives for this purpose?
Many thanks!

Won't touch sensors on the feet accomplish you what you want?

I tried that as well, but I was uncertain about a couple of things, so I thought about alternatives. cfrc_ext seemed at first to be a quick way to read what I need, and its alignment with the global frame seemed convenient in case I move to sloped surfaces and still need the vertical component.
However, following your recommendation I'll look further into touch sensor based solutions.
I still need to add a second touch sensor to the toes and sum the signal, right (or other bodies of the foot that might contact the ground)?
When working with sloped surfaces I plan to use mj_contactForce, or use the normal of the contact.
Thanks for the quick responses!


TypeError: null is not an object (evaluating 'TrackPlayer.RATING_HEART')

Describe the Bug
When adding react-native-track-player to a new React Native project (without Expo) I get the following error:

TypeError: null is not an object (evaluating 'TrackPlayer.RATING_HEART')

Steps To Reproduce

npx react-native init AwesomeProject
cd AwesomeProject
npm install --save react-native-track-player
In App.js: import TrackPlayer from 'react-native-track-player';
npx react-native run-android (same result on iOS)
Error appears

Code To Reproduce
See steps to reproduce.
Environment Info:
npx react-native info

System:
OS: macOS 12.2.1
CPU: (8) x64 Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz
Memory: 30.03 MB / 16.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 14.17.0 - /usr/local/bin/node
Yarn: Not Found
npm: 8.5.5 - /usr/local/bin/npm
Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
Managers:
CocoaPods: 1.10.2 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
Android SDK:
API Levels: 30, 31
Build Tools: 30.0.2, 30.0.3, 31.0.0
System Images: android-28 | Google Play Intel x86 Atom
Android NDK: Not Found
IDEs:
Android Studio: 2020.3 AI-203.7717.56.2031.7621141
Xcode: 13.3.1/13E500a - /usr/bin/xcodebuild
Languages:
Java: 11.0.15 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.68.1 => 0.68.1
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found

react-native-track-player version

^2.1.3

Real device? Or simulator?
Both
What OS are you running?
Android, iOS, iOS Simulator
Thanks a lot!

@sjorsroelofs did you follow the instructions here and here? Specifically running setupPlayer?
From your report above it's not clear to me that you did.

Thanks for the reply. I'm now getting a different error.
In index.js I added this:
TrackPlayer.registerPlaybackService(() => require('./service'));
And in App.js I added this:
import TrackPlayer from 'react-native-track-player'; await TrackPlayer.setupPlayer({});
The error i'm getting right now is:

Unexpected identifier '_reactNativeTrackPlayer'
no stack

Am I doing something wrong in the setup? I followed the instructions, but it's not clear to me what's going wrong..

@sjorsroelofs did you also run a pod install in your ios directory? Just realized thats not in the docs.

@sjorsroelofs can you take a look at the setup of the Example app and mirror what it's doing? Something seems to be wrong with how you've set it up and I'm not entirely sure what it is.

Also see this issue which might be related https://github.com/doublesymmetry/react-native-track-player/issues/719

@sjorsroelofs what were the important things missing in the docs? If its the case we should get them updated.

Sorry, couldn't test on Android yesterday. Tried it now and getting a build error when running on an Android device:

FAILURE: Build failed with an exception.
What went wrong:
Could not determine the dependencies of task ':react-native-track-player:compileDebugAidl'.
Could not resolve all task dependencies for configuration ':react-native-track-player:debugCompileClasspath'.
Could not find com.google.android.exoplayer:exoplayer-dash:2.11.4.
Searched in the following locations:
- file:/Users/sjors/Desktop//node_modules/react-native/android/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
- file:/Users/sjors/Desktop//node_modules/jsc-android/dist/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
- https://repo.maven.apache.org/maven2/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
- https://dl.google.com/dl/android/maven2/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
- https://www.jitpack.io/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
- file:/Users/sjors/Desktop/***/node_modules/react-native-track-player/node_modules/react-native/android/com/google/android/exoplayer/exoplayer-dash/2.11.4/exoplayer-dash-2.11.4.pom
Required by:
project :react-native-track-player

By using this issue I figured out it was solved by adding jcenter() to the Android build.gradle file.
Now I see the media controls in Android, but no music is playing. After a few seconds the controls disapears. Works perfectly on iOS though.. I'm trying to play an HLS (m3u8) stream.

Are there any solutions to this problem?

I'm fairly sure this is still an issue using expo. It doesn't matter how well I follow the instructions, the error comes from this line in lib/interfaces.js:
var TrackPlayer = react_native_1.NativeModules.TrackPlayerModule;

NativeModules is:
Native Modules written in ObjectiveC/Swift/Java exposed via the RCTBridge Define lazy getters for each module. These will return the module if already loaded, or load it if not. See [https://reactnative.dev/docs/native-modules-ios](vscode-file://vscode-app/snap/code/104/usr/share/code/resources/app/out/vs/code/electron-sandbox/workbench/workbench.html)

RatingType[RatingType["Heart"] = TrackPlayer.RATING_HEART] = "Heart";

In the code above TrackPlayer is null. The variable is not reassigned anywhere else in the file.
The documentation states that expo is supported.
I have the default expo setup as stated in the official react native docs, blank project. I can provide minimal code if needed @jspizziri .
Thank you for spending time on the issue.

Try this on all "Evaluting error" Ex: 'TrackPlayer.RATING_HEART'  => 'TrackPlayer?.RATING_HEART'

ny solution of this


Save requests and import it later

We need to save the requests from 18 days ago to today (or when the bug is fixed). Please also check for duplicate entries.
THANK YOU VERY MUCH

Importet the requests to osm.org


ProfileScreen update label for "Password" field

I have created PR for this issue.
https://github.com/roopeshsn/freshbey/pull/29

hey, what kind of updation?

Hi @dharmiknotop, it's just a UI change. Changed label "Password Address" to "Password"

ohk, can you assign this to me?

Actually I have already created a pull request for this #29.
And I am not the Author/maintainer, I won't be able to assign it to you


Fixup property reference naming for grafana.feature_toggles

Property reference in bosh template was missing f in feature. This is referenced as grafana.feature_toggles.enable in the grafana spec

Thanks @aegershman!


Package does not exists - android

I am facing this issue today
/Users/aravindhkumar/Projects/work_test/testapp/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java:5: error: cannot find symbol
import com.github.adee42.keyboardvisibility.KeyboardVisibilityPlugin;
                                           ^
  symbol:   class KeyboardVisibilityPlugin
  location: package com.github.adee42.keyboardvisibility

/Users/aravindhkumar/Projects/work_test/testapp/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java:19: error: cannot find symbol
    KeyboardVisibilityPlugin.registerWith(registry.registrarFor("com.github.adee42.keyboardvisibility.KeyboardVisibilityPlugin"));
    ^
  symbol:   variable KeyboardVisibilityPlugin
  location: class GeneratedPluginRegistrant

can anyone help me to solve with this? I need to deploy the app to play store?

It works if I use

keyboard_visibility: 0.5.1

but when using

keyboard_visibility: ^0.5.1

It causes the error described.
so the problem may be with version 0.5.2

This is strange as the java file wasn't changed between version 0.5.1 and 0.5.2.
I suspect the 0.5.2 version of the plugin in your cache might be broken. Can you delete it and try to download it again?

Tried By creating new Flutter Project and it works till I add the plugin, when plugin package gets added then the error shows up. currently using v-0.5.1 to get working without errors.

This won't help as flutter caches the plugins. Can you just delete the following directory and then run the "flutter get packages" command in your project?
/.pub-cache/hosted/pub.dartlang.org/keyboard_visibility-0.5.2

I just uploaded an updated version of the plugin (0.5.3). Can you check if it works with this one?

Ok, will check to update.

Is it same for kotlin too??


error: implicit declaration of function ‘strdup’; did you mean ‘strcmp’?

I get this when trying to build the game (gcc on Linux):
cc -Wall -Wextra -std=c99 -pedantic -Iinclude `/usr/bin/sdl2-config --cflags`   -c -o dict.o src/dict.c
src/dict.c: In function ‘dict_load’:
src/dict.c:52:19: error: implicit declaration of function ‘strdup’; did you mean ‘strcmp’? [-Wimplicit-function-declaration]
   52 |         dict[i] = strdup(str);
      |                   ^~~~~~
      |                   strcmp
src/dict.c:52:17: error: assignment to ‘char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
   52 |         dict[i] = strdup(str);
      |                 ^
make: *** [<builtin>: dict.o] Error 1

Hi larpon,
thank you for checking out this repo and finding this potential issue. strdup() has been a POSIX function for a long time and it is part of every normal (desktop) C library I know of, even though it is technically not part of ISO C. So I assume that you fell victim to some odd decisions of your linux distro vendor... if this were a more common issue, I think it would be wiser to implement strdup (it is a two-liner) than throwing in dubious flags. For the time being, I will mark it as a won't-fix, but thank you and tell me if you know more than I do!


docs: add new policy deny limitation

Reported-by: Sebastian Wicki<EMAIL_ADDRESS>Signed-off-by: André Martins<EMAIL_ADDRESS>

it's not a limitation. If a policy deny is in place then no traffic is allowed, i.e., the endpoint enters a default deny mode and you have to explicitly allow pods. See the last column of the table in this section: https://docs.cilium.io/en/stable/policy/language/#deny-policies (I know the example is for ingress but the same logic applies for egress)


Integrate and use model parameter schema to determine sim_telarray and CORSIKA parameters

This PR adds functionality to use the model parameter schema (introduced in PR #894) and removes hardwired lists of sim_telarray and CORSIKA parameters in names.py.
We require that any model parameter used has a corresponding schema.
Having the strict control now with the schema parameters, this PR 'unveiled' some issues:

several database issue with missing or wrong parameter entries; moved therefore the 'clean' simulation model database sandbox_20240422 (I know, this is not a good name)
duplication possibility to define model-version in simulate_prod (use now always the command line argument; remove the one from the array model configuration file
duplication of resolving telescopes to design types (e.g., if SST-25 is not defined, it should be SST-design). This is done now consistently in model_parameter and therefore removed from the array model configuration (and the treatment of this in the array_model module)
removed default value for the name of the simulation model database. We don't give default values for the other database parameter, having this one differently is not useful
removed 'sim_telarray' in the simulation software section for a couple of parameters. These are all parameters which are not sim-telarray parameters.
changed the name for simtools in the schema as simulation_software entry from gamma-sim-tools to simtools (we don't use gammasimtools anymore)

Because of this, adding new parameters without schema is not wanted and we remove the functionality in the model_parameter module.

Thanks for the review. I made the minor update. I am waiting for the tests now and will then merge.


Add a transform step after receiving data from the API

Description

This PR makes some improvements to the media stores and services to improve the general code quality.

changes the results from an array to an object so that referencing results by ID becomes easier
changes the decoding to be an additional transformation step in the media service
cleans up the code for merging new results with the old ones

Testing Instructions

Searching and fetching more results should work as previously.
Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[x] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Checking the "no-results" bug from Sara's comment...

@sarayourfriend thanks for finding the regression! I believe 54a8efd should fix it.


matchAll only returns group 1 or 0

Laravel Version: 8*
PHP Version: 7.4

Str::of($str)->matchAll() only return group 1 or 0
public function matchAll($pattern)
{
    preg_match_all($pattern, $this->value, $matches);

    if (empty($matches[0])) {
        return collect();
    }

    return collect($matches[1] ?? $matches[0]);
}

So how can i use this if i want to use more than 1 group ? is it possible to convert these to laravel matchAll?:
preg_match_all('/td>(.*?)<.*\R.*\R.*?d>(.*?)<.*\R.*?d>(.*?)</', $html, $m);

$result = array_map(function ($c, $p, $s) {
    return [
        'c' => $c,
        's' => $p,
        'r' => $s
    ];
}, $m[1], $m[2], $m[3]);

Hi there,
Thanks for reporting but it looks like this is a question which can be asked on a support channel. Please only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repo you can try one of the following channels:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.

@driesvints sees "So how can i..." then immediately close the issue.


Update pause image to registry.k8s.io

Kubernetes moved from k8s.gcr.io to registry.k8s.io in 1.15 via: https://github.com/kubernetes/kubernetes/pull/109938
With old k8s.grc.io, pods failed to start in offline mode since it cannot resolve registry.k8s.io or download the new pause image:
Warning  FailedCreatePodSandBox  10s (x7 over 92s)  kubelet            Failed to create pod sandbox: rpc error: code = Unknown desc = error creating pod sandbox with name "k8s_ovnkube-master-84dtp_openshift-ovn-kubernetes_cb245daf-ef1d-4610-9f9b-77f7d0af8dc7_0": initializing source docker://registry.k8s.io/pause:3.6: pinging container registry registry.k8s.io: Get "https://registry.k8s.io/v2/": dial tcp: lookup registry.k8s.io on <IP_ADDRESS>:53: server misbehaving

/help


Server cannot be reached on Pebble

Hello! I've set up the server on my mac (currently running on Big Sur, if that's important) and I've completed all the steps for https setup, including going ahead and locking the IP address for port forwarding. I've given the certificate full trust for root access and I've double checked on the web browser that it's working and receive the URL not found error along with a line of fetch data in the server which appears as
::ffff:<IP_ADDRESS> - - [2021-04-13 12:36:58] "GET / HTTP/1.1" 404 356 0.002893
I've taken this as my go ahead that the server is running and everything is all fine and good, but my watch still won't connect. I'll enter my local IP and the port in the Server IP and will enter the key generated by the watch in config.json but when I select Data Fetch I receive an error saying the server cannot be reached and to check the entered Server IP.
I'd attach the code the server shows when I attempt to connect but it doesn't show anything whenever I try to connect the watch. Should I still be entering the local IP and port when trying to connect to the Server, or is there a different IP Address that I'm just missing?

I believe Big Sur could have removed the messaging protocol used in the server back end to send the iMessage. I have not yet been able to test this but you can do so by trying to run the following command.
osascript -e 'tell application "Messages" to send "Test" to buddy "<Some Contact Name>"
If the command above works you can look at why its not connecting to the server. Are you inputting your local IP into the watch or the public IP?

Any update on if this works on Big Sur and beyond?

Any update on if this works on Big Sur and beyond?

I can confirm this works on a Monterey MacOS virtual machine!

Thanks for validating this! I didn't have a machine that worked past Catalina, so I was never able to verify it.


Fatal error not a git repo

Hi,
Thank for porting the git command from wsl to windows, I love the idea, because I really really hate to have to install git on windows when it is perfectly working in my wsl.
It seems that wslgit.exe worked for a short while then stopped or maybe it never worked, I not so sure anymore :) Anyway,  wsl.exe git --version returns 2.17.0 but inside VSCode I am getting the following error:
git rev-parse --show-toplevel
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
fatal: not a git repository (or any parent up to mount point /)
my git repository is still currently inside my wsl file system, should I also move it to the windows side?

Sorry, I was confused, my repo is indeed in the windows side.
if I click the git logo bottom left, then I am getting "Git: There are no available repositories"
and the git log shows a repeat of the following command

git status -z -u
git rev-parse --show-toplevel
git rev-parse --show-toplevel
git rev-parse --show-toplevel
git rev-parse --show-toplevel
git config --get commit.template
Open repository: path
git status -z -u

This looks similar to #33, see https://github.com/andy-5/wslgit/issues/33#issuecomment-384940612 for a possible solution.
It looks like you have a bind mount so that you can access your windows files inside WSL at /c/... in addition to the standard location /mnt/c/.... For some reason, git sometimes uses the /c/... variant even if the current path is /mnt/c/.... However, wslgit cannot translate the /c/... paths to Windows paths, as it doesn't know about the bind mount.
The solution is to not setup the bind mount for the execution of wslgit, e.g. by not using an interactive shell for wslgit. In the latest version, this can be done by setting the Windows environment variable WSLGIT_USE_INTERACTIVE_SHELL to false, see the Readme for more information.

Yes you are right I had to bind /c with /mnt/c in order to make docker works.
Ok I had WSLGIT_USE_INTERACTIVE_SHELL=0 but after setting it to false then
the path in the log became c:\...\ format and it seems to be working, the repo is recognise in VScode.
I still get some error in the log:
fatal: not a git repository (or any parent up to mount point /mnt) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)

Thank you for the suport and wslgit ! you are awesome !

Hello just to let you know, I am not sure I should open an issue for that but it seems that if I start a shell (bash.exe) then open VSCode in this case wslgit doesn t work, however if I do the oposite VSCode then my shell, it works perfect :)

I haven't checked this, but maybe the /c bind mount is created when you first start a shell and then persists also for all further wsl commands?
Starting VS Code first, I guess it works because the full path to the repository is only checked once at the beginning. All subsequent git commands are based on the initial repository path. If /c is mounted later on, it therefore doesn't affect git anymore (unless you open a new project in VS Code).

If your git repository is inside your WSL filesystem, how do you access it from VS Code in Windows?
wslgit.exe assumes that the git repository is stored on a Windows filesystem, e.g., at C:\some\path\, which is available inside WSL at /mnt/c/some/path/. Only paths under /mnt/{DRIVE} can be translated to valid Windows paths.
So, yes, you probably should move your repository to the windows side.

I have my repository on the Ubuntu (in my case Debian distro) since it is accesible in:
C:\Users\$USER\AppData\Local\Packages\TheDebianProject.DebianGNULinux_$SOMEID\LocalState\rootfs. Is there any way wslgit can work with this path? If I move the whole project to the windows side it will change the permissions for all files to 755 (NTFS...)


[HttpTrigger] AspNetCoreIntegration 302 Redirect Not Working

I recently upgraded my project to try the preview of the AspNetCoreIntegration package.  Once I enabled this a simple redirect no longer works.
One that package is installed, this no longer works.  The page just stays at the function url.
 var response = req.CreateResponse(System.Net.HttpStatusCode.Redirect);
            response.Headers.Add("Location", "http://localhost:4200");
            return response;

Switching to the Asp.Net Core syntax produces the same result.
return new RedirectResult("http://localhost:4200");

 <PackageReference Include="Microsoft.Azure.Functions.Worker.Sdk" Version="1.11.0-preview1" OutputItemType="Analyzer" />
 <PackageReference Include="Microsoft.Azure.Functions.Worker" Version="1.15.0-preview1" />
 <PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore" Version="1.0.0-preview1" />

@sccrgoalie1 flagging this for investigation. Can you share more details about the behavior you're seeing?
Thanks for trying this out and providing feedback!

The browser url does not change it stays as the function app url.  Using the network tab I can see the browser is trying to load the redirect page, but it hasn't actually performed the redirect.

@sccrgoalie1 can you confirm you've updated your code to use HttpRequest as opposed to HttpRequestData? Based on what you have above, doesn't look like that is the case.

Can you please share the entire function code? Thanks!

Can you please share the entire function code? Thanks!

I just updated to the latest preview2 and it's still occuring.  Here's the code and result.
using System.Net;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.Functions.Worker.Http;
using Microsoft.Extensions.Logging;

namespace TestRedirectFunction
{
    public class Function1
    {
        private readonly ILogger _logger;

        public Function1(ILoggerFactory loggerFactory)
        {
            _logger = loggerFactory.CreateLogger<Function1>();
        }

        [Function("Function1")]
        public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req)
        {
            _logger.LogInformation("C# HTTP trigger function processed a request.");

            return new RedirectResult("https://www.microsoft.com");
        }
    }
}

This should be addressed by https://github.com/Azure/azure-functions-host/pull/9412
It will be out with Host 4.25.0.


Problem with several include-markdown statements (v2.6.1)

I've noticed a problem with included file
> **Sample content**: Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam ante. In dapibus augue non sapien.
Donec ipsum massa, ullamcorper in, auctor et, scelerisque sed, est.

The file:
## Heading

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam ante. In dapibus augue non sapien. Donec ipsum massa, ullamcorper in, auctor et, scelerisque sed, est. Duis risus. Etiam ligula pede, sagittis quis, interdum ultricies, scelerisque eu.

{% include-markdown "snippet.md" %}

## Heading 2

{% include-markdown "another.md" %}

## Heading 3

{% include-markdown "another.md" %}

## Heading 4

{% include-markdown "another.md" %}

## Heading 5

The contents of the snippet will be inserted, but rest of the file until Heading 5 is missing from the generated file. The last include will turn on the output again. I suppose that maybe the RE is too greedy?

https://github.com/mondeja/mkdocs-include-markdown-plugin/compare/v2.5.0...v2.6.0#diff-c29a8d7e2b134ad7dc80808c9cc6cca6a8cd932078d186e1873f0b01fa142488R25
https://github.com/mondeja/mkdocs-include-markdown-plugin/compare/v2.5.0...v2.6.0#diff-c29a8d7e2b134ad7dc80808c9cc6cca6a8cd932078d186e1873f0b01fa142488R39

https://github.com/mondeja/mkdocs-include-markdown-plugin/compare/v2.5.0...v2.6.0#diff-c29a8d7e2b134ad7dc80808c9cc6cca6a8cd932078d186e1873f0b01fa142488R25
https://github.com/mondeja/mkdocs-include-markdown-plugin/compare/v2.5.0...v2.6.0#diff-c29a8d7e2b134ad7dc80808c9cc6cca6a8cd932078d186e1873f0b01fa142488R39

Quickfix.
INCLUDE_TAG_REGEX = re.compile(
    r'''
        (?P<_includer_indent>[^\S\r\n]*){%
        \s*
        include
        \s+
        "(?P<filename>[^"]+)"
        (?P<arguments>[^%]*)
        \s*
        %}
    ''',
    flags=re.VERBOSE | re.DOTALL,
)

INCLUDE_MARKDOWN_TAG_REGEX = re.compile(
    r'''
        (?P<_includer_indent>[^\S\r\n]*){%
        \s*
        include\-markdown
        \s+
        "(?P<filename>[^"]+)"
        (?P<arguments>[^%]*)
        \s*
        %}
    ''',
    flags=re.VERBOSE | re.DOTALL,
)

or maybe better use
(?P[a-z_=\s]*)

Quickfix.
INCLUDE_TAG_REGEX = re.compile(
    r'''
        (?P<_includer_indent>[^\S\r\n]*){%
        \s*
        include
        \s+
        "(?P<filename>[^"]+)"
        (?P<arguments>[^%]*)
        \s*
        %}
    ''',
    flags=re.VERBOSE | re.DOTALL,
)

INCLUDE_MARKDOWN_TAG_REGEX = re.compile(
    r'''
        (?P<_includer_indent>[^\S\r\n]*){%
        \s*
        include\-markdown
        \s+
        "(?P<filename>[^"]+)"
        (?P<arguments>[^%]*)
        \s*
        %}
    ''',
    flags=re.VERBOSE | re.DOTALL,
)

or maybe better use
(?P[a-z_=\s]*)


RFC 8018 / PKCS #5 Version 2.1

I'd send a PR, but I feel pretty ignorant on this topic. Should the RFC reference in the README.md be to RFC 8018 instead of RFC 2898? RFC 2898 is marked obsolete - I assume in Jan 2017 when 8018 was published.
Looking at the change notes for RFC 8018 makes me think that this implementation would be compatible with it as well.

@potatosalad might know the answer to this but it seems safe

@potatosalad Thanks for the in-depth reply. I tried to turn part of it into a PR for the next person who comes across this library.


feature: Adding autocmd for noh instead of keymap so multiple keys can remove search highlights

Did you check the docs?

[X] I have read all the LazyVim docs

Is your feature request related to a problem? Please describe.
It's not a problem with LazyVim. It's just a suggestion that might enhance LazyVim I think.
Describe the solution you'd like
This autocmd can remove the search highlights whenever I any keys except that I specify here. so no need to press <Esc> before pressing j,k,l or any other key.
vim.on_key(function(char)
  if vim.fn.mode() == "n" then
    local new_hlsearch = vim.tbl_contains({ "n", "N", "*", "#", "?", "/" }, vim.fn.keytrans(char))
    if vim.opt.hlsearch:get() ~= new_hlsearch then
      vim.opt.hlsearch = new_hlsearch
    end
  end
end, vim.api.nvim_create_namespace("auto_hlsearch"))
return

I'm sure people here know about that, it's just a suggestion (I'm not a software engineer and this wasn't my code, I've seen it in reddit and multiple pre-configs..Astrovim..etc).
It can be added directly, but I can do a PR if you want so.
Describe alternatives you've considered
Despite not implementing it, I still consider LazyVim a greeeeeat one :)
Additional context
No response

Thank you for the suggestion!
I'm personally not a fan of clearing search highlights like this, but I'm sure other people might like it.
I've created a new discussions section where you can share things like this:
https://github.com/LazyVim/LazyVim/discussions/categories/recipes

Oh thanks for that, yea I think the recipes is the right thing to do


Detect GML source file SRS

The Source Reference System of some GML source files (Buildings and Addresses) are correctly detected when is opened with QGis (both with the Python API or the GUI), but this is not the case for the Cadastral Parcel dataset. The current solution is to open first the Building dataset, and apply its SRS opening the Cadastral Parcel Dataset. This could result in bad data if the SRS detection also fails for the Buildings dataset.
To solve this, the xml could be inspected for any element with a srsName attribute.

p = zipfile.ZipFile('A.ES.SDGC.BU.38002.zip')
file = zip.read('A.ES.SDGC.BU.38002.otherconstruction.gml')
root = etree.fromstring(file)
root.find('.//*[@srsName]').get('srsName')

Done in 633de1c1


Embeds Form field not working when inserting data

Laravel Version: 5.7
PHP Version: 7.1.*
Laravel-admin: 1.6

Description:
If I set Embeds fields
 return Admin::form(Setting::class, function (Form $form) {               $form->embeds('content', function (Form\EmbeddedForm $form) {                   $form->text('extra1')->rules('required');               });         });
When I saved as creating, column "value" is null, but when I saved as updating, column "value" is saveing as json
my form code:
class Setting extends Model {     protected $fillable = ['content'];     protected $casts = [         'content' => 'json',     ]; }
in database my field  type text
How to reslove this?
Steps To Reproduce:

the problem was solved by adding callback function, but it's not very good
` $form->saving(function (Form $form)   {
             $content =  \request()->get('content');
             $form->model()->content = $content ;

         });`

Hope this could solved officially!


support copy image link with shr command

Improve commit "a99122e" copy command.

Thanks!

I'm not sure this is a good idea.  shr-probe-and-copy-url is:
(defun shr-probe-and-copy-url (url)
  "Copy the URL under point to the kill ring.
Like `shr-copy-url', but additionally fetch URL and use its
redirection destination if it has one."
  (interactive (list (shr-url-at-point current-prefix-arg)))
  (if url (shr-probe-url url #'shr-copy-url)
    (shr-copy-url url)))

So it FETCHES the URL.  Simply copying a URL to the kill ring should not FETCH the URL.

In case it's not clear:
(defun shr-probe-url (url cont)
  "Pass URL's redirect destination to CONT, if it has one.
CONT should be a function of one argument, the redirect
destination URL.  If URL is not redirected, then CONT is never
called."
  (interactive "P")
  (url-retrieve
   url (lambda (a)
         (pcase a
           (`(:redirect ,destination . ,_)
            ;; Remove common tracking junk from the URL.
            (funcall cont (replace-regexp-in-string
                           ".utm_.*" "" destination)))))
   nil t))

@alphapapa You're right, I will update it to shr-copy-url. Thanks.

Thanks, @alphapapa.


getCurrentWindow potentially loses children windows

The current implementation of getCurrentWindow creates a new ssf.window wrapper around the innerWindow. This means that it is possible (and likely) to have two ssf.windows pointing to the same innerWindow however they will have different children and listeners to each other.
The parent that creates a window and the child window itself both have their own wrapper around the innerWindow. So once the child creates another window or adds a listeners, the parent still has a wrapper that says there are no children or listeners.
I have investigated a few solutions however none of them seem ideal. One would be to put a reference of the child on the parent window and have the child use window.opener to get the currenty ssf.window rather than creating a new one, however this may not work at all for electron.
Another solution could be to have a higher up window or manager window that isnt shown and is a state of truth for all the other windows so that their references don't get out of sync. This solution could work however it would be a big task.

I think for Electron, keeping track of a windows children would be doable using the main process as our single source of truth. We could keep a tree like object of all windows and their children, which we can just get via IPC when we call getChildWindows. Obviously this isn't possible for OpenFin though.

John, Ben,
Could you explain the scenario in more detail?  Not really sure how the "innerWindow" is implemented and the reason for having it.
Typically, if we want to maintain state between multiple windows in an OpenFin app, we'll either use a persistent parent window (or hidden background window/render process), or web standard solutions like local storage or a shared worker.
-Nick

@nkolba Our innerWindow is the container specific window object. This could be the current window or a window that has been opened using fin.desktop.Window for example.
The problem here is that our API wrappers for each window are not consistent. If a window creates a child window, its parent windows do not know about the new window. If the parent window then requested the children of that window, it would return []. (I hope that makes sense, its difficult to explain via a comment :-) )
I think your suggestion may be what we need to use in OpenFin to maintain state across apps. Either that, or we only allow getting child windows of the current window (i.e. a static method or similar). This would make windows stateless so we wouldn't need to worry about maintaining state across windows.
As for listeners not being communicated across windows, I think that the current behavior is the correct behavior. Listeners should only be relevant for the context they are currently running in. A parent shouldn't need to know about a child windows listeners. Maybe this needs to be communicated in the documentation somewhere.

Sorry, just getting back to this...
So is the issue that when using window.open, the OpenFin API (the inner window) is not aware of the creation of the child?

@nkolba The issue is with our window object having conflicting states in relation to child windows, as there is no method in either Electron or OpenFin to keep track of this. This would happen if a user used window.open instead of the API. The initial idea was to make it easier to get all child windows, but I don't think it really provides much value. I think removing this method is the solution, and keeping the window stateless. A user of the API would usually be calling const win = new Window(...) and keeping the reference to the child window anyway, making this method unnecessary, as well as allowing users to use window.open.
@JohnEz What do you think?

Regarding conversations offline, we are going to change the OpenFin implementation to always open fin.desktop.Application and monitor the state of the application ourselves, possibly needing an invisible hidden window to act as the main process like in electron. This will mean the process model for window between the 2 containers is much similar than before.

I had a good play with the OpenFin & Electron window APIs, mostly for my own benefit! Anyhow, hre are my notes in case they are useful:
OpenFin

You can obtain the initially opened window via Application.getWindow()
Windows are created via fin.desktop.Window, with various options passed
You can obtain the parent via Window.getParentWindow, and access parent context, getParentWindow().getNativeWindow()
You can obtain all other applications windows via Application.getChildWindows()
OpenFin does not maintain any sort of window hierarchy, getParentWindow() always returns the window created via app.json, and all others appear in the Application.getChildWindows() array, no matter which window was the 'opener'
All windows are within the same process
doesn't have the concept of child windows, instead you use alwaysOnTop (although this doesn't minimize together with the parent)

Using window.open

Creates a new OpenFin window with a UUID for the name, and autoShow set to true (with new fin.desltop.Window this defaults to false)
window.opener returns the native parent, i.e. the same as getParentWindow().getNativeWindow()
window.opener behaves differently from getParentWindow() in that it always references the native window that it was opened from, rather than the window constructed via app.json

Browser

New windows opened via window.open
Has the same behaviour as above, same process, and able to access same context

Electron

Windows are created via new BrowserWindow, within the main process.
Windows can be created in the renderer process using the 'remote' interface, although this is just a proxy interface, with the window still being created and managed by the main process
Each new window is in a different process
You can obtain all the windows via the static BrowserWindow.getAllWindows() method
You can set a window as a parent on construction, in order to create a child window. You can navigate this relationship via getParentWindow / getChildWindow

Using window.open

Creates a window via BrowserWindow, but returns a proxy, BrowserWindowProxy
window.opener returns a BrowserWindowProxy, with a restrictive API
The parent / child are different processes, so you can only postMessage

@ColinEberhardt I have added your comment to the wiki so we have this information if we need it once this issue is closed.


Question on variable management

In the current version of Dialogic, each variable needs to be unique. This means in case I want to populate Dialogic state based on entities in the game world, I'd need to create a set of variables per entity. For example, let us assume I have 20 different NPCs, most of them have similar variables (items in inventory, health etc.) - currently, I'd need to manually create the same set of variables, 20 times but with custom names (e.g. npc1_health, npc2_health, npc3_item_ruby_count) which is not very straight-forward to manage on the long run.
Do folks have any suggestions how i can optimise this workflow? Maybe having something like a "struct" type might help? For example, instead of having a simple string variable, we could introduce a "complex variable type" where I can specify the individual values and names, and then I can just create complex variables of that type.
Any other suggestions welcome!

Not entirely sure if I know what your needs are but I would create "generic variables" in Dialogic and change them before spawning a timeline. For instance:
example_timeline
Hello there, my name is [npc_name] and my current hp is [npc_hp]

I would set those two variables to their specific value and show the dialog:
var name = "Emilio"
var hp = 10

var dia = Dialogic.start('timeline')
Dialogic.set_variable('npc_name', name)
Dialogic.set_variable('npc_hp', hp)
add_child(dia)

I haven't dealt with a game with too many variables and maybe creating timelines from GDScript is something that might be interesting if you have a lot of "procedural content". Not sure if that helps, so feel free to keep asking 🙈

@coppolaemilio let me try to provide an example with what I mean exactly:
Let us say there is the concept of gold in my game and I want to track how much gold each NPC in the world owns. I can do that quite easily outside of Dialogic by giving each NPC an int variable that tracks that gold amount.
However, now I want to create dialogues based on the amount of gold a particular NPC owns. Let us say, there are two NPCs:

Miguel has 500 gold
Emilio has 1000 gold

Now, I want to trigger dialogue in case Miguel has at least 1500 gold (after Emilio has given away his gold, lol). As a result, I need to track these gold values in Dialogic as variables. Currently, I'd go and create two variables:

emilio_gold_amount
miguel_gold_amount

I can then connect my gold collecting signals so it updates these variables automatically, no problem. The problem is now that there is not just a single gold value but potentially hundreds of different values and hundreds of NPCs and this would mean I'd need to manually create over a thousand of different variables.
A solution to this problem could be to be able to define character-specific variables those get automatically set up for each character I create within Dialogic. I could define the gold_amount variable and I can set this variable then "per character". Let us say I have set up over 100 different characters in Dialogic, adding a new "character variable" would automatically provide it on each of these 100 characters.

Variables per character would be a great solution for this. I understand where you are coming from with the different variables that you need to trigger different conversations but I think the solution I provided would still work (even if it is a bit meh). npc_gold_amount, player_gold_amount inside dialogic and then get those values from where you store that information. Not ideal but yeah, the only sane solution I could think at the moment.
Adding variables per character would be a great way of dealing with things like this, but it would require some work to get it implemented. Super doable tho.

@coppolaemilio the problem then becomes that I'd need to populate the state whenever I create a new dialogue. I'll have to see how this impacts performance but this might be an okay trade-off compared to manually creating hundreds of variables, haha.


No module named svgwrite

Describe the bug
Using the official Home Assistant Docker image fails to load svgwrite.
ERROR (MainThread) [homeassistant.setup] Setup failed for custom integration 'irm_kmi': Unable to import component: No module named 'svgwrite'

To Reproduce
Run Home Assistant using Docker, try to load irm-kmi-ha.
Version

Image:          docker.io/homeassistant/home-assistant:latest
Image ID:       docker.io/homeassistant/home-assistant@sha256:132ef461504be5c5ebd6e34e5d3fb3d7958bb6758a5136107eea9f84c299254a
Home Assistant: Core 2024.12.5
Home Assistant: Frontend 20241127.8
IRM KMI integration [e.g. 0.2.24]

Hello,
I tried to reproduce the error but could not observe the bug.  Here are my steps:

Using the same Docker image, start a fresh Home Assistant.  I used this docker-compose config:

services:
  homeassistant:
    container_name: homeassistant
    image: docker.io/homeassistant/home-assistant@sha256:132ef461504be5c5ebd6e34e5d3fb3d7958bb6758a5136107eea9f84c299254a
    volumes:
      - ./config:/config
    restart: unless-stopped
    network_mode: host

Configure the basics (username, location and other)
Manually copy the custom_components folder of this repository into the ./config folder mentioned in the docker-compose.yml
Restart Home Assistant: docker restart homeassistant
Using the UI, add this integration: Settings > Devices and services > Add integration.  Just set up the zone and leave all the settings with their default value.
Observe the logs, and no ERROR line is present. The integration works as expected.

My host is running kubuntu 24.04 (kernel 6.8.0-51-generic) on x86 CPU.  My Docker setup looks like this:
jules@kubuntu:~$ docker version
Client: Docker Engine - Community
 Version:           27.2.1
 API version:       1.47
 Go version:        go1.22.7
 Git commit:        9e34c9b
 Built:             Fri Sep  6 12:08:10 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          27.2.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.7
  Git commit:       8b539b8
  Built:            Fri Sep  6 12:08:10 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.7.21
  GitCommit:        472731909fa34bd7bc9c087e4c27943f9835f111
 runc:
  Version:          1.1.13
  GitCommit:        v1.1.13-0-g58aa920
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

jules@kubuntu:~$ docker compose version
Docker Compose version v2.29.2

Could you try with a fresh container like I did?  Or maybe share a minimal working example to trigger the bug.

Hi Julius,
Here's what I just tried:
podman run -ti --name=ha -v $(pwd):/config:Z -p 8123:8123 docker.io/homeassistant/home-assistant
git clone git@github.com:jdejaegh/irm-kmi-ha.git
cd irm-kmi-ha/
cp -r custom_components/ ../ha/
podman restart ha

In Home Assistant, try to activate the integration:

In the logs:
2024-12-29 20:02:28.317 ERROR (MainThread) [homeassistant.config_entries] Error occurred loading flow for integration irm_kmi: No module named 'svgwrite'

Though it should be noted, I'm using podman on my laptop (Fedora 41), k3s on the machine that hosts Home Assistant. The container runtime probably isn't the cause here.
I'm really curious as to why you're not getting that error.

I'm really curious as to why you're not getting that error.

I'm equally curious as to why you're getting it :smiley:

The container runtime probably isn't the cause here.

Yes, let's put that aside.
I assume your container is allowed to get to the Internet. The first thing Home Assistant will do when setting up the integration is pull the dependencies.  svgwrite==1.4.3 is one of them: it is used to create the rain radar animation.
To find where things go wrong, you could increase the logging on you install.  Here is how I did:

Start fresh Home Assistant container (no volume, nothing)
Stop Home Assistant once it is started: this way it created all the files you need.
Copy the custom_components of this repository over.
Add those lines to you configuration.yml

logger:
  default: info # going for debug here is too noisy

Restart Home Assistant.
Configure what is needed and install the integration.
Check the logs when you get your error.

Here are the logs I get when everything goes fine
2024-12-30 09:53:25.895 INFO (SyncWorker_4) [homeassistant.util.package] Attempting install of svgwrite==1.4.3
2024-12-30 09:53:33.595 INFO (MainThread) [homeassistant.setup] Setting up irm_kmi
2024-12-30 09:53:33.853 INFO (MainThread) [homeassistant.components.weather] Setting up irm_kmi.weather
2024-12-30 09:53:33.854 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new weather.irm_kmi entity: weather.home
2024-12-30 09:53:33.855 INFO (MainThread) [homeassistant.components.camera] Setting up irm_kmi.camera
2024-12-30 09:53:33.855 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new camera.irm_kmi entity: camera.radar_home
2024-12-30 09:53:33.856 INFO (MainThread) [homeassistant.setup] Setting up binary_sensor
2024-12-30 09:53:33.856 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up irm_kmi.binary_sensor
2024-12-30 09:53:33.856 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new binary_sensor.irm_kmi entity: binary_sensor.weather_warning_home
2024-12-30 09:53:33.857 INFO (MainThread) [homeassistant.components.sensor] Setting up irm_kmi.sensor
2024-12-30 09:53:33.857 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new sensor.irm_kmi entity: sensor.home_ash_level
--- truncated ---
2024-12-30 09:53:33.862 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new sensor.irm_kmi entity: sensor.home_next_sunrise

I expect yours to not have the first line Attempting install of svgwrite==1.4.3 but an error instead.


Table creator web design #11 #362

Issue resolved: #362
Description: Created table_11_HarikaB11.html and table_11_HarikaB11.jpg
Output Review:

Heartfelt Thanks for Your Contribution to Our Open Source Project!
            Dear @HarikaB11,

            I trust this message finds you in good health and high spirits. I am reaching out with a heart full of gratitude for your recent contribution to our open source project. Your dedication has not only elevated the functionality of our project but has also exemplified the collaborative spirit that lies at the core of thriving open source communities.

            A heartfelt congratulations are in order for your exceptional work! Your commitment and expertise have played a pivotal role in the success of our project, and we consider ourselves truly fortunate to count you among our community members.

            I must extend my sincere apologies for the delay in responding to your pull request. Your patience and understanding during this time are immensely appreciated. As our project continues to grow, we acknowledge the imperative need to enhance the quality and response time for contributions. To address this, we've kickstarted a call for maintainers and reviewers who can help us uphold the high standards of our project and ensure swift responses to pull requests.

            Your involvement and insights would be invaluable in this initiative. If you, or someone you know, is interested in taking on a more active role in the project, please don't hesitate to reach out. We firmly believe that with a robust team of maintainers and reviewers, we can elevate both the quality of the project and the speed of our responses.

            On an exciting note, I am thrilled to share that we have activated the sponsorship button for our project. This development allows supporters like yourself to contribute to the sustainability and growth of the project. Your ongoing support, whether through code contributions or sponsorship, is genuinely appreciated.

            Once again, congratulations on your outstanding contribution, and thank you for being an indispensable part of our open source community. We eagerly anticipate your continued collaboration and shared success.

            Best regards,

            Ntem Kenyor K.
            Lead
            Kwickerhub


Conditional files

Allow copying files conditionally based on prompt results. Probably a custom metalsmith middleware that deletes entries from files. We will need a extra field in meta.json:
{
  "schema": {
    "linter": {
      "label": "ESLint configuration",
      "type": "list",
      "choices": [
        "standard",
        "airbnb",
        "none"
      ]
    }
  },
  "files": {
    ".eslintrc.js": "linter.standard || linter.airbnb"
  }
}

We can allow simple expressions in the value for each file entry, probably evaluated using a new Function(). Or, we can allow the meta file to actually be a JavaScript file, so that each files entry can be a function that receives the prompt results and return a Boolean to determine whether the file should be copied.
Update: we also need to handle conditionally rendering entire directories.

Feature landed with 2.0 release.


Example of pack, unpack

Hi,
A very useful package and a reference implementation!
I quote from the paper at https://repository.kaust.edu.sa/bitstream/handle/10754/662495/gradient-compression-survey.pdf?sequence=1&isAllowed=y

... pack can further compress the representation by encoding several values originally stored in 32-bit into a single 32-bit value. For instance, a 1-bit quantization can pack 32 values into a single 32-bit integer

However I couldn't find any example of pack unpack. Can you point me to one if there exists one? If not can you add such functionality to for example SignSGDCompressor?

Hi. We've currently excluded this functionality from this code release because we could not create an efficient implementation purely based on the TF API. These bit-level manipulations are somewhat method-specific and in general require custom C++ operators to be created. As such, we are still investigating how to best support this functionality.

Oh I see, look forward to seeing that functionality!


[list] live demo bugs

[ ] Order list is not showing the numbers in the list for the live demo.
https://carbondesignsystem.com/components/list/usage#live-demo

Replaced with storybook demo https://github.com/carbon-design-system/carbon-website/pull/3716


Added RetinaNet example

Re-added the RetinaNet example, closed the old PR since there are major changes in model and style of the code.

Can be trained on mscoco dataset, and achieves 32.1 mAP on the 2017 validation set after training for after 13 epochs (35.7 quoted in the paper). The script currently downloads a subset of the dataset and trains for 100 steps, this can be configured to train on the complete dataset to reproduce the above score. The script takes around 5 mins to run on colab.
Significantly reduced code complexity compared to the previous PR.
Downloads trained weights to visualize examples.

@srihari-humbarwadi
Many things you need can probably be obtained via Keras-CV, like anchor generator, target assignment, iou similarity calculation, box encoder/decoder. I think that would actually make this example much compact and elegant.
We haven't officially release this yet, many things are still in-flight, for now you can checkout this to see what it would look like (for example, examples/ssd300_train).

Another side note: where is mAP calculated?

Another side note: where is mAP calculated?

I have not included the mAP calculation part in the example, since it would be a lot of code. I am using the evaluator provided along with the coco dataset.

Many things you need can probably be obtained via Keras-CV, like anchor generator, target assignment, iou similarity calculation, box encoder/decoder. I think that would actually make this example much compact and elegant.

We can ship the code example in its current standalone form for now, and later when KerasCV is released and stable we can remaster the code example to rely on it (it will end up much shorter).

I have not included the mAP calculation part in the example, since it would be a lot of code. I am using the evaluator provided with the coco dataset.

That's fine.

tf.keras.losses.Huber has a bug, i.e., if y_pred and y_true is shape [batch_size, n_boxes, 4], the return loss would be [batch_size] where it calculates the mean over n_boxes -- this is wrong, even if reduction is None, because reduction is for first dimension only IIUC. I think that's why the author was trying to use compat.v1 loss

In this case:

we should fix that bug asap
we can use tf.keras.losses.huber + manual reduction

In any case, let's not use tf.compat.

@fchollet @tanzhenyu I have made the requested changes, I still not clear how to go about with l2_regularization. Please take a look

@fchollet I made the additional changes that were required, but I'd like to point out that the example has 468 loc which exceeds the recommended limit of 300, I tried reducing the complexity and length of the example, but going any lower than this is really difficult, do you have any suggestions on that ?

@fchollet I made the additional changes that were required, but I'd like to point out that the example has 468 loc which exceeds the recommended limit of 300, I tried reducing the complexity and length of the example, but going any lower than this is really difficult, do you have any suggestions on that ?

We can make an exception, since this is a great notebook. You can override the MAX_LOC parameters in tutobooks.py.

@fchollet I have added the generated files

LGTM, merging! Thanks again for the great contribution -- this is a super high quality code example. Sorry the review process took a while -- but it was worth it in the end.

Thanks for the contribution!

@fchollet @tanzhenyu Thanks a lot for the long but detailed reviews, it definetly taught me a lot of things and also made the example much better than I had initially expected!

Hey! Nice work. However, I'd add a small section explaining how to reproduce it with custom datasets. Maybe not the code, but at least some pointers/references to some articles explaining how to do it and what is expected.
In my case, I want to train it on my own model with a custom dataset, clean-dirty-containers-in-montevideo, but I can't find how to convert it from images with xml annotations to the expected format in this tutorial.
Thanks for your contribution and your time!

Hello, I'm following this great tutorial and wanted to ask if my understanding is correct.
Line in tutorial
self.scales = [2**x for x in [0, 1 / 3, 2 / 3]], ln

Generates self.scales = [1, 1.26, 1.59].
Question: Is it intended to scale anchor box only up, not down to smaller version?
Thank you, in advance for the explanation.
Reference
[1] SSD object detection: Single Shot MultiBox Detector for real-time processing


Questionbank REST API with Database

[Not ready to merge, PR made for code reviews]
Microservice managing the questions used in PeerPrep.
A REST API using Spring / SpringBoot and Gradle. Allows for CRUD operations such as GET, POST, PUT and DELETE of questions.
Work in progress:

Linking to a NoSQL database (such as MongoDB)
Linter Fixes: JavaDocs
Error handling for exceptions and different use cases
Tests for CRUD operations and Error handling

I did not look deep into the implementations but I think the overall structure (having the Controller, Database, Model layers) is good!

Personally, I think it would be good to add one more layer (Service to store your business logic) between your Controller and Repository. As of now, the service layer will probably seem like it will just add more code but I think it would help achieve better segregation of responsibilities. reference

I agree with Donovan's comment on including the Service layer. It will help improve the scalability and maintainability of the code as the application evolves.
You are the one working on this microservice though, so I feel it is still up to your judgement on how complex you think the logic would grow. If it is going to be fairly simple then it is fine to not include too!


Squirrel port ever possible?

Hopefully this isn't too risky a question ;)
Will there ever be a squirrel port of sol2? I've attempted to write my own binding lib but I'm finding all this template meta programming is actually rather insane :(
Both embedding APIs seem quite similar but due to the template crazies I'm not sure I'd be able to do it myself. If the APIs are near 1:1 then also what about the possibly of supporting both via some compile time option?

Based on my understanding, Sol2 has been written from the beginning with focus on supporting lua and lua only, and not being extensible or pluggable with other scripting languages. On top of that, even though the Squirrel API has a few similarities with the Lua API, they're still inherently different when it comes to offered features, meaning that Sol2 by itself will probably never be able to support both languages in a single library.
With that said however, you can probably start your own fork of sol2 and start wrapping similar lua API calls to squirrel API calls (possibly by introducing an additional header file with macros for lua calls, such as #define lua_pushinteger sq_pushinteger, if you don't want to mess with sol's internal code from the get-go). This should be trivial for things that are API compatible, but will become increasingly complex when you start coming across functionality that's either lua or squirrel specific. From that point on you will have to dig into sol2's code and start making changes there, not only to lua calls, but also to implementation specific abstractions.

If somebody wants to pay me so I don't spend all my time working on Open Source things to make this so I can actually take care of myself and not be a literal zombie, yeah.
... Otherwise, no. I've never used Squirrel, and while I never used Lua before I worked on Sol, I have no desire to do this for other embeddable virtual machines like Python, Javascript, etc. Squirrel's dev, IIRC, might have some interest in making clean bindings. I'm not sure: maybe ask him?
Also, sol2 was designed specifically to encapsulate Lua's functionality specifically. While I'm sure something like 80% of it is basic and what everyone would want from every VM, sol2 isn't exactly made to be a "plug backend and play" interface: it was designed specifically with Lua in mind.

All right thanks, I might try to be brave enough to fork and make it work with both.


Python typing error in azure-synapse-artifacts APIs

Package Name: azure-synapse-artifacts
Package Version: 0.16.0
Operating System: Windows
Python Version: 3.8.10

Describe the bug
Any parameter which has been described as an object in the swagger API gets set to JSON type in the sdk by the auto code-gen.
This results in a type error if the parameter is passed as a string. Parameters of object type should not throw a type error for string, bool, int etc.
To Reproduce
Steps to reproduce the behavior:

Run the following code through a python type checker (vscode-pylance, pyright or mypy)

from azure.synapse.artifacts import models

trigger = models.CustomEventsTrigger(
    events=["JobSuccess"],  # This line throws as error in vscode when using pylance/pyright even though it works at runtime
    scope="dummy-scope",
    subject_begins_with="dummy-subject"
)

Expected behavior
Parameters of type object in swagger docs should not through python type error for inputs of python type string, int, bool etc. During run time passing a string works as expected in the above example, so type checking should also show no errors.
Screenshots

Additional context
JSON type has been defined as follows (link):
JSON = MutableMapping[str, Any]

Ideally any parameter which is defined in swagger as object should have its type set to something like Union[Any, JSON] and not JSON

Hi @neerajanil, thank you for opening an issue! I'll tag someone who should be able to help; we'll get back to you as soon as possible.

@iscai-msft how do you think?

@xiangyan99 @iscai-msft Any updates on this issue?


[storage] Typo fixes in help doc

Description

Simple typo fixes in the the storage/_help.py file
Testing Guide

n/a
History Notes

[storage] Fixed misspelling of "destination"

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

storage

The PR title is not correct and will make its way into the release history. See https://github.com/Azure/azure-cli/blob/dev/doc/authoring_command_modules/README.md#format-pr-title


Roofline performance measurements on H2O for Modin

Measure H2O Benchmarks on Modin actual vs roofline.

Task is done, see Jira task 274 for details.


Add more tests, introduce custom replacement for ioutil.TempFile

See individual commit messages for changes made.
Note: Issue #33 is not yet resolved by these changes. A version of renameio.WriteFile accepting permissions will be necessary for that.

Thanks, this looks good! Can you rebase on top of current master to pick up the Go 1.16/1.17 CI change please?

Can you rebase on top of current master to pick up the Go 1.16/1.17 CI change please?

Done. Please take another look.


Fix stray timer in SuiteSortingReporter

This should fix #1175

@cheeseng Please let me know if there's a better way to fix it.

@gleber-da Sorry for attending to this late, I look into this but I am not sure if a timer.schedule call is allowed after a timer.cancel() is called, according to the schedule method javadoc here:
https://docs.oracle.com/javase/8/docs/api/java/util/Timer.html#schedule-java.util.TimerTask-long-
It shall get a IllegalStateException ?  I didn't try it yet but I think it is good idea to believe what javadoc says.  :)
It seems to be doDispose is a more suitable place for calling timer.cancel(), would that work?

@gleber-da Fyi I added an alternative PR here:
https://github.com/scalatest/scalatest/pull/1774
It'll be great if you can take a look to see if it makes sense to you, or if you can help to verify if the fix works it would be even greater!

Superseded by https://github.com/scalatest/scalatest/pull/1774
Thank you!


*: Fix max snapshot lifetime is now shown on Grafana

What problem does this PR solve?
Issue Number: close https://github.com/pingcap/tiflash/issues/7713
Problem Summary:
After https://github.com/pingcap/tiflash/pull/7706, when PS V3 or UniPS is enabled, the metrics of max snapshot lifetime is always reported to prometheus as 0.
What is changed and how it works?
When PS V3 or UniPS is enabled, get and report the metrics in AsynchronousMetrics::update
Check List
Tests

[ ] Unit test
[ ] Integration test
[x] Manual test (add detailed scripts or steps below)

Block the queries by using DBGInvoke disable_fail_point(hang_in_execution) through tiflash client
We can see that the max snapshot lifetime is reported normally on Grafana

[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/run-all-tests

/run-all-tests

/run-integration-test

/run-all-tests

/run-all-tests


Update package.json and add travis-ci

Add flow to dependencies and support npm run typecheck which is automatically run during npm run test.
Use travis-ci.org to ensure tests pass.

Oops, accidentally closed via a force push (which I quickly reverted). I meant to force push to my fork at sstur/draft-js-utils but it had this as the tracking branch.


Normalized Metrics in Database - #44

Normalized all Metrics to corresponding tables in the DB

DB with all Integration Tests
Before:

After:


Security only works in MODE_GLOBAL

Hi,
the security on a vaadin application using Navigator and @Secured annotations only works if the following is set:
@PostConstruct
public void init() {
     SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);
}

Problem: if running on a webserver, mode_global is of course not the right strategy, as then no user specific authentication context will exist.
Though, if using any other strategy, the Authentication object is often null when a @VaadinView is changed.

If you would eliminate the SecurityContextHolder then you can not use the SpringSecurityFilterChain. Access to the Authentication object is now implemented by VaadinSecurity.
Within your UI you can autowire the VaadinSecurity which should give you all the access you need, also as provided with the samples, the SpringSecurityFilterChain is now used so your Authentication object is always populated. If not populated with an authenticated user, the filter chain will populate it with a anonymous Authentication object.
Example
@Autowired
private VaadinSecurity security;

Issue Closed


Tool-tips for the URI of a location in the viewer are not complete URIs

In the viewer, the "result info" tab shows a location that is just a file-name (say "dirs" as the file name).
The tooltip is just showing file://dirs instead of the complete path.
The tooltip should be the complete path.

Hey @GabeDeBacker
I think the reason its just showing file://dirs is because that's actually the complete path provided in the sarif file.
E.g. This is the snippet from the sarif file that issue came from

I tried it on another test file and it does show the complete path as given in the sarif file

So from our understanding this is the expected output based on the input. Please let me know if a different outcome is expected
cc @jeffersonking

Interesting.. I was trying to read through the SARIF spec, and I couldn't determine what the "rules" are for the URIs as far as locating artifacts. From the snippets you presented in the issue, it isn't clear to me if there is anything in the SARIF log that would point to the "complete" correct path.
So, it appears to me there is both a bug in the tool that generated this SARIF log and an issue that needs to be addressed in the SARIF spec.
@michaelcfanning - Can you help clarify this?
Things to keep in mind is that the SARIF output is not written next to the source files (the SARIF is placed in a completely different location), so the viewer would not be able to "assume" that the complete path is relative to the location of the SARIF log.

So what we appear to have here are relative paths from some unknown root. Tool providers can help by adding a uriBaseId with the relative path the helps establish which relative URIs are associated with a common base. It looks like that isn't happening here. If the tool is emitting relative paths in the log file that are relative to different base URLs, that's a problem the tool needs to resolve.
If all these relative paths are implicitly based on a common root, the viewer should query the user for that root and then remap all the log file URIs.
@lgolding, who handles spec concerns.

From a viewer standpoint, this is "by design".  We can only show as much as the log tells us (I looked at the full original log).
WRT "viewer should query the user": current design defers that until (if) the file contents are opened. The alternative (as it previously was) was considered distracting and blocking.

There is a lot to say here :-)
First: artifactLocation.uri is allowed to be either a relative reference (for example, some_dir/some_file.c) or an absolute URI (for example, file:///C:/dev/my-project/some_dir/some_file.c).
If artifactLocation.uri is an absolute URI, you are done. The viewer can do whatever it wants (for example, display the full URI, or display just the file name part and provide the full URI as a tooltip, or anything else).
If artifactLocation.uri is a relative reference, there are a couple of options:

If artificatLocation.uriBaseId is present, its value is a symbolic name (such as SOURCE_ROOT) that stands for the absolute path with respect to which the relative reference was expressed. And now there are two possibilities:
a. The property run.originalUriBaseIds tells you what SOURCE_ROOT stood for on the machine where the scan was performed. A viewer is allowed to see if that path works on the current machine as well. If it does, great! If not, the viewer can prompt to find out what SOURCE_ROOT means on this machine.
b. run.originalUriBaseIds is absent, or it is present but it doesn't mention SOURCE_ROOT. The viewer should prompt to find out where SOURCE_ROOT is.

If artifactLocation.uriBaseId is absent, the viewer can prompt to find out what base path it should use for artifactLocations that don't specify a uriBaseId.

After all that, the viewer has either figured out the absolute path, or it hasn't. If it has, then great! It has all the display options I mentioned above. If it hasn't, it should display what it has. It could display the full "relative path" (some_dir\some_file.c). It could display just the file name some_file.c, and display the full "relative path" as a tooltip. Or whatever.
What the viewer cannot do -- and that's why I reopened the bug -- is just prepend file:/// to the relative path and call it good. If the scheme is present, you must supply the absolute path. If you don't have the absolute path, you can't supply the scheme.
Hope that helps.

Note: The viewer does account for (1) and (2) as mentioned by @lgolding. However, that information was not present in the SARIF log (not shared for privacy reasons). We don't prompt immediately per the design considerations in my previous comment.
Regarding the pre-pending of file:/// to relative paths:

@GabeDeBacker is this the spirit of this bug? It seemed you were expecting more path segments.
Implementation detail: We use VS Code's URI object and it does not round-trip relative URIs. It didn't seem cost effective to re-implement URI (or search for a compatible library) for such cases. @lgolding You're welcome to push back here.
Re "What the viewer cannot do...", I'm going to suggest it can. Going full-lawyer here: §3.4.4 says "If uriBaseId is not yet resolved, the consumer MAY use other information or heuristics to locate the artifact." I would argue prepending file:/// is a fair (albeit overly-simple) heuristic, and thus within the spec.

But you are not "[using] other information or heuristics to locate the artifact".  Suppose the viewer were to say to itself, "Hmmm... I wonder if I could find this file by prepending the file: scheme. Let's find out..." ... and then suppose that turned out to work. Then sure, the viewer would be entitled to conclude that file:///whatever-you-had-before really was the location, and to display it wherever it wanted. But that's not what you did.

@lgolding: That's fair. :-) The first two bullet points are the more practical concerns though.

@lgolding  - All I'm saying is the SARIF spec to say something like "all artifact locations MUST resolve to a fully qualified URI using the information present in the SARIF log.
Without this statement, tools can output files that cannot be remapped from a "remote path" (say from a CI build system path) to a "local path" present on a developers machine. Which makes "path remapping" by the SARIF viewers difficult to impement.
For example, there are 69k files named "dirs" in our repository.

@GabeDeBacker I agree that there's something wrong if the file contains results from two distinct files, both named dirs, that live in different directories, and the file provides nothing but the file names. The file should at least provide distinct relative paths:
"results": [
  {
    "locations": [
      "physicalLocation": {
        "artifactLocation": {
          "uri": "some/folder/dirs"
        }
      }
    ]
  },
  {
    "locations": [
      "physicalLocation": {
        "artifactLocation": {
          "uri": "other/directory/dirs"
        }
      }
    ]
  }
]

Feel free to file a suggestion in the SARIF TC's GitHub repo: https://github.com/oasis-tcs/sarif-spec. (I think anyone can do that.)
Thanks for the idea,
Larry


Documentation: User tutorial - publish a page: suggestion for improvement

I just checked out your user tutorial (to see if it contains something which should be linked from our own translators' guide).
Here (http://docs.django-cms.org/en/support-3.0.x/user/tutorial/publish_page.html) I read that
'only you can see it.' (the draft). In my experience, this is not correct, as drafts are not saved per editor.
So I think it should maybe better be something like 'only people with permission to edit the page can see it'. Else an editor may believe that he/she is really the only person who can see a specific draft ;)
Another little improvement suggestion: Maybe the actual number for 'Description is restricted by the number of characters the search engines actually use to show content.' could be added here: http://docs.django-cms.org/en/support-3.0.x/user/reference/page_admin.html ? (For people who copy-paste text there and then hit the limit... I already did ;) )

@Moini thanks for the suggestions

Thanks @Moini for the suggestion.

Thanks for the improvement :D


Incorrect "There should be no empty line within import group"

I get this message a lot, with no rhyme or reason as to why...
For this code:
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/interval';
import 'rxjs/add/observable/of';
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/mergeMap';
import 'rxjs/add/operator/throttle';

I get this warning: There should be no empty line within import group for line 1.
For this code:
import { getActiveProjectId } from 'uf/app/selectors';
import {
  makeGetAnalysisModuleInfoForProject,
  makeGetScenarioInfoForProject,
} from 'uf/projects/selectors';
import { addAppMessage } from 'uf/appservices/actions';
import { loadProject, updateProjectStatus } from 'uf/projects/actions';

I get the same warning on the `addAppMessage' line.
For this code:
// Bootstrap babel and sourcemaps.
require('source-map-support/register');
const universalWebpack = require('universal-webpack');

const universalWebpackSettings = require('../webpack/universal-webpack-settings');
const webpackConfig = require('../webpack/webpack.config');

// This tells webpack to not re-apply babel to the server itself as a
// part of server startup.
const babelOptions = universalWebpack.babelRegisterOptions(
  universalWebpackSettings, webpackConfig);

I get the warning on the const webpackConfig =  line.
I don't know if the error message is just on the wrong line, but I can't figure out how to correct my imports to make this pass.

What happens if you add a blank line between a side-effecting import/require and its neighboring normal import/require?

I'm experiencing a similar problem. This is my code:
import './polyfills';

import 'sqlite-evcustom-browser-memory-storage-ext-free';

import { version } from<EMAIL_ADDRESS>import dbUrl from<EMAIL_ADDRESS>import { registerBindings } from '@prd-crossmip/inject-registration'; // <1>
import<EMAIL_ADDRESS>
import './global.css';

import { getMipDatabaseBackend } from '@prd-crossmip/database'; // <2>

import { initTenants } from './tenants';

At <1>, I'm getting the (incorrect) error "There should be no empty line within import group".
At <2>, I'm getting the (correct) error "@prd-crossmip/database import should occur before import of @prd-crossmip/frame/package.json".

The auto-fixer doesn't do anything. My guess is that something about this order of imports puts it in an invalid state where it is unable to perform any fixes.
If I manually move import <2> to the correct position, everything works fine again. The incorrect error disappears and the auto-fixer works again.

@DanielSWolf bindingless imports are assumed to be side-effecting, and thus can't ever be safely reordered (or anything moved across their boundary). That means you have to manually fix the ordering, if possible. This is by design and practically speaking, can't ever be changed.

@ljharb That's a good point, thank you! It still doesn't explain the phantom error at <1>, though.

@DanielSWolf what is your eslint config for this rule?

@ljharb Here's a stripped-down ESLint configuration that reproduces the phantom error:
module.exports = {
  parser: '@typescript-eslint/parser',
  plugins: ['import'],
  rules: {
    'import/order': [
      'error',
      {
        'alphabetize': { order: 'asc' },
        'groups': [
          'builtin',
          'external',
          'internal',
          'parent',
          ['index', 'sibling'],
          'object',
        ],
        'newlines-between': 'always',
        'pathGroups': [
          {
            pattern: '@prd-crossmip/**',
            group: 'external',
            position: 'after',
          },
          {
            pattern: '.*/**/*.scss',
            group: 'sibling',
            position: 'after',
          },
        ],
        'pathGroupsExcludedImportTypes': [],
      },
    ],
  },
};

I have the same problem with the typescript resolver baseUrl. One line out of dozens doesn't get ordered correctly.

ok! i've definitely turned the invalid one into a reproducible test case. @DanielSWolf can you show me the code matching https://github.com/import-js/eslint-plugin-import/issues/1062#issuecomment-805591110 that is both correct and also doesn't warn?

Still getting this error on general usage of rule

@Sergei8888 can you answer the question in https://github.com/import-js/eslint-plugin-import/issues/1062#issuecomment-903051219 ?

bindingless imports are assumed to be side-effecting, and thus can't ever be safely reordered (or anything moved across their boundary). That means you have to manually fix the ordering, if possible. This is by design and practically speaking, can't ever be changed.

IMO this should be reported in the error message itself, as to why the lint error is not fixable and what manual fix is required
As a side note, i've noticed eslint has no problem reordering other imports below the side-effecting imports, which could still be problematic.

It shouldn't be problematic to reorder imports that have bindings.
As for the error message, I'm happy to review a PR that makes the message more helpful, bearing in mind that it shouldn't be overly verbose.

@loucadufault yes - certainly every module might have side effects, whether it has a binding or not. If we assume that, then this rule simply can't exist at all.
However, the overwhelming convention is that the only modules that have side effects are the ones that export nothing, which is what this rule assumes.

With that said, is the example above not proof that reordering statements after a sife-effecting import (by convention) is problematic? There are several practical examples that come to mind where this would be disruptive.
My understanding would be that side-effecting imports should form boundary(ies) within the module that reordering would not be able to automatically reorder an import to cross that boudary

I'm not sure what you're asking.
If we do not accept the convention, the rule should not exist at all.
If we accept the convention, then the only things that would depend on side effects (by importing side-effecting module B into module A) would be module A - meaning, module A is safe to reorder in its consumers, but the module B import inside A is not.

I agree that it is unsafe to reorder "the module B import inside A" in your example above. Extending that, it must be unsafe to reorder the side-effecting import in either direction (whether it be hoisting it up or pushing it down).
However, the reordering has no problem with moving imports having a binding from above to below a side-effecting import, which is what I had described in my initial comment. This could be problematic if those reordered (non-side effecting) imports within the same module depend on those side effects (or more precisely depend on those side-effects not having yet happened).

Yes, that's right - every side-effecting import is treated as a "boundary" across which no automatic sorting can occur.
Moving a binding from above to below a side-effecting import would be a bug.

Ok, I will open a bug report

What's the resolution to this please?

is there an autofix for this ?

@sibelius https://github.com/import-js/eslint-plugin-import/issues/1062#issuecomment-1707235183


Tippy throws a warning when used with Next.js

My app is being built with Next.js and when I navigate to a page that has a Tippy component I get the below warning in the console. However, I do not get the warning when I hit the page directly.
Warning: useLayoutEffect does nothing on the server, because its effect cannot be encoded into the server renderer's output format. This will lead to a mismatch between the initial, non-hydrated UI and the intended UI. To avoid this, useLayoutEffect should only be used in components that render exclusively on the client. See https://fb.me/react-uselayouteffect-ssr for common fixes.
    in Tippy
    in ForwardRef(TippyWrapper) (at Signup.js:147)
    in div
    in Context.Consumer
    in Context.Consumer
    in StyledComponent
    in FormElements__FormGroup (at Signup.js:145)
    in fieldset (at Signup.js:112)
    in form
    in Context.Consumer
    in Context.Consumer
    in StyledComponent
    in FormElements__Form (at Signup.js:109)
    in Mutation (at Signup.js:107)
    in Signup (at signup.js:73)
    in Fragment
    in NewUser (at signup.js:108)
    in div (at signup.js:101)
    in main
    in Context.Consumer
    in Context.Consumer
    in StyledComponent
    in signup__Main (at signup.js:100)
    in div
    in Context.Consumer
    in Context.Consumer
    in StyledComponent
    in signup__Layout (at signup.js:99)
    in SignupPage (at _app.js:118)
    in Context.Provider
    in Context.Consumer
    in ThemeProvider (at _app.js:117)
    in Context.Provider
    in ApolloProvider (at _app.js:116)
    in Container (at _app.js:113)
    in MyApp
    in RenderPromisesProvider

Think it means renderToString() is being called by Next, but also global.window and global.document are defined by Next so it thinks it's a browser environment. idk what we can do, that annoying is honestly the worst and shouldn't even exist 💀

global.window and global.document are defined by Next

Ugh, why? 🤔

Also, just quickly skimmed through zeit/next.js repo and didn't find any occurences of global.window and global.document.

Yeah it didn't happen to me when using Next when I fixed that issue in February. So it is probably some other custom config.

Well, I'm not sure what it is then. I just created a clean project in CodeSanbox with Next.js and Styled Components (I'm styling Tippy with Styled Components) and I don't get the warning ¯_(ツ)_/¯


[JOSS] Does the package have standard tests?

One of the JOSS review checklist items is about software testing:

Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?

Having some kind of standard suite of tests has a lot of benefits for scientific software packages, including but not limited to:

preventing unintentional changes to simulation results by checking that the software output doesn't change over time
detecting incompatibilities with dependencies (e.g. perhaps tomorrow pvlib releases a new version that breaks your code)
making it easier for new users to ensure they have installed the software correctly on their computer

What many other packages do, including pvlib, pvfactors, and bifacial_radiance, is have a suite of tests covering most or nearly all of the primary package code.  We also run these tests automatically for each commit to give us confidence that we are not accidentally breaking something.  Using pvlib as an example:

test definitions: https://github.com/pvlib/pvlib-python/tree/master/pvlib/tests
example automated test run: https://github.com/pvlib/pvlib-python/actions/runs/2503197724

In my opinion, testing is essentially a requirement for robust and reliable scientific software.  For pvlib we take it so seriously that nearly 100% of the package code is covered by tests (see https://app.codecov.io/gh/pvlib/pvlib-python) and we don't accept new code unless it has tests (see pvlib's contributing docs).
Does BifacialSimu have anything along these lines?  I didn't see any tests, but maybe I missed it.  If not, do you have any plans to implement tests?
Cross-reference: https://github.com/openjournals/joss-reviews/issues/4443

Dear @kanderso-nrel,
Thank you for your suggestion. I just launched a new version of the programm with Tests for the most important functions in the calculationHandler and radiationHandler. I will definitly continue to write and implement tests for the other functions.
You can find the Tests in the folder Tests.


Changed key 'enter' to 'return' in $.jstree.defaults.core.keyboard

Change the key enter to return in $.jstree.defaults.core.keyboard to match the mapping defined in _kbevent_to_func

Fixes #2205


Draw a canvas image using parsed file data

As a developer, I want to draw a canvas image using parsed file data.
Definition of Done

[ ] Criterion 1
[ ] Criterion 2

Tasks

[ ] Task 1
[ ] Task 2

Story already exists elsewhere, #153. Closing this duplicate.


Firefox on Retina Freaking Out

So this only happens in firefox when having the browser on my macbook screen, it doesn't have any problems on my regular external displays.
I even tried to replicate the issue in jsfiddle and for no reason at all I wasn't able to replicate the issue. (yes I've also tried disabling any other javascript running the page and still gives me error)
$('#slideshow').slick({ 		arrows: false, 		autoplay: true, 		dots: true, 		infinite: true 	});
On Firefox on non-retina screen:

On Firefox on retina screen:

====================================================================
Steps to reproduce the problem

Visit this site on firefox on a retina display.
You will see slide in middle of page

====================================================================
What is the expected behaviour?
Full width div
====================================================================
What is observed behaviour?
Javascript making Div 1/4 size of parent box
====================================================================
More Details

Firefox 49.0.2
Jquery 3.1.1, Latest slick on depository
Never worked on firefox, but all other browsers

Figured out I could fix the issue by CSS styling


Fix destination environment variable value

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@sacnl Do you have a mechanism/script to apply this change to all relevant branches?

Not a single script, but a sequence where I already did this. Will be uploaded soon.


issue to host the onboarding gif

new gif https://share.cleanshot.com/l9PkTd2B
from script launch to replay navigation.
Unfortunately it's 15Mb and gh won't let me upload it here.

here is a trimmed version : form script launch to replay being processed

another one, with just one window: