[RHOAIENG-2948] Improve create job

https://issues.redhat.com/browse/RHOAIENG-2948
Description

Improved the create job flow to include a couple fields that we were missing (catch up & max concurrency). Reworked the start/end to be more aligned with the mocks and converted the radio buttons into a dropdown.
cc @yannnz / @xianli123 / @kywalker-rh
https://github.com/opendatahub-io/odh-dashboard/assets/8126518/64471d85-a554-4dbe-bb4e-2ff47d7f7f0d
How Has This Been Tested?

Create / Duplicate Runs & Jobs
Test Impact

Added Tests for the scheduled section
Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit tests & storybook for related changes)

If you have UI changes:

[x] Included any necessary screenshots or gifs if it was a UI change.
[x] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

lgtm based on the video and Yan's mocks


Unix: Native globbing cannot be bypassed when using splatting

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
Note: This has been reported before, but not as a dedicated issue:

By @jborean93 in https://github.com/PowerShell/PowerShell/issues/24170#issuecomment-2294602625
Prior to that, by @andrewhickman in https://github.com/PowerShell/PowerShell/issues/17176#issuecomment-1185753356

On Unix, barewords passed as arguments to external (native) programs are subject to globbing (filename expansion), if they contain * or ?, for compatibility with native Unix shells.

In direct invocation, the way to avoid this is to quote the bareword, e.g. '*'

However - and this constitutes the bug -  when splatting, the globbing cannot be prevented:

# On Unix-like platforms.
/bin/echo @( '*' )

Note that using embedded quoting (e.g., @('"*"')) is not an option, because it becomes part of the argument.
Expected behavior
* should print verbatim.
Note:

The above assumes that  '*' should not be treated like a bareword in the context of splatting, which in turn implies that you fundamentally cannot specify barewords that way, and would have to use something like @((Get-Item * -Name)) to manually perform the desired globbing.

This strikes me as an acceptable trade-off and much preferable to the alternative: defaulting to interpretation as barewords, with a yet-to-be-devised opt-out method.

Actual behavior
The names of the files and subdirectories in the current directory print, because native globbing was applied.
Error details
No response
Environment data
PowerShell 7.5.0-preview.3 on Unix-like platforms.

Visuals
No response

The problem is that splatting doesn't different literal strings currently.  Is there a common enough problem that we should try to fix this (non-trivial that may break other things) or should we just document this as a limitation of splatting?

My personal take is you can manually do the glob expansion if you wanted it but with the current logic you cannot use a literal * in a splat so you should favour not expanding it
$myArgs = @('--files'; (Get-ChildItem $pwd).Name)
my_bin @myArgs

@SteveL-MSFT, I agree with @jborean93.
To spell it out: a fix (technically a breaking change, but most likely bucket-3) is called for that simply disables native globbing via splatting.

The Interactive WG has reviewed this issue. This is not a splatting issue.  This can be reproduced with a simpler example:
$a = '*'
/bin/echo $a

The WG would be interested in seeing more real-world examples of this problem before considering solutions.

@theJasonHelmick the issue here is specific to splatting as there is no way to turn off the automatic file globbing when using splatting. Unlike the non-splatting example where you can simply quote the `*‘ to avoid it.

A more specific examples, you can pass through a * literal when using it as a positional argument.
~/print_argv '*'
[1] *

~/print_argv "*"
[1] *

$w = '*'
~/print_argv "$w"
[1] *

The problem that this issue is open for is there is no way (that I know off) to pass a * literal when using splatting or using an array as a positional value. All the following will do the glob expansion and not pass through * as a literal char
$w = '*'
$a = @('*')

~/print_argv @('*')
~/print_argv @("*")
~/print_argv @("$w")
~/print_argv $a
~/print_argv @a

Thanks, @jborean93. In a nutshell:

With an indirectly specified scalar argument, enclosure in "..." is effective in suppressing globbing; applied to @theJasonHelmick's example: $a = '*'; /bin/echo "$a"

With splatting (including implicit splatting via an array of positional arguments), there appears to be no way to suppress globbing, hence this issue.

The behavior with scalars is consistent with Bash, but not with Bash arrays, which can be double-quoted as a whole to signify that its elements should not be subject to globbing:
# From Bash:
# OK: enclosing the array in "..." passes the elements without shell expansions, as individual arguments.
a=('foo' '*'); printf '%s\n' "${a[@]}"

Obviously, in PowerShell this is not an option, given that enclosing an array reference in "..." stringifies the whole array to form a single argument ($a = 'foo', '*'; printf '%s\n' "$a" yields foo * as a single string argument).

While native globbing is undoubtedly helpful, it is also awkward, in that selectively introduces an otherwise unknown concept to PowerShell: shell expansions, where the shell itself interprets arguments up front differently depending on whether or not they're quoted.
I don't think there's a good solution for the splatting case, hence the suggestion to simply disable native globbing when splatting (requiring the use of explicit Get-Item / Get-ChildItem calls instead).
As for the real-world impact:

It is awkward not to be able to use splatting whenever an argument that contains * or ? is required; while that is somewhat mitigated by patterns that match nothing being passed through as-is (e.g., /bin/echo nosuch*), it makes for unpredictable behavior (what ends up getting passed depends on the names of the files and directories that happen to be present in the working directory).

As for when you might want to pass * or ? (or arguments containing them) literally: say an external utility takes an arithmetic operator as an argument, or you need to pass a globbing pattern without expanding it up front, for later globbing in the context of an external utility (e.g., as in  find . -iname '*.txt'; trying to implement this as $findArgs = '.', '-iname', '*.txt'; find @findArgs does not work properly, because the up-front expansion of *.txt cannot be prevented)


Database

Please make a .SQL
Please make a SQL file for the "vehicles" Database so i can import it and can sold the cars
Thanks

its so easy to insert a car into database dafuq :D

its so easy to insert a car into database dafuq :D

i'm not gonna build your server for you.  Do it for yourself.


Quake 1 Not launching,

Describe the bug
Click play. Then it says running. Then it says play and nothing happens.
terminal does a lot of scrolling but it seems that this is the error:
 ERROR-OUT BEGIN
 QUAKE ERROR: W_LoadWadFile: couldn't load gfx.wad
 Basedir is: share/quake
 Check that this has an id1 subdirectory containing pak0.pak and pak1.pak, or use the -basedir command-line option to specify
 another directory.

It works for me.
It looks like your share/quake/id1 is empty, you should have a folder music, a file config.cfg and 2 symlinks to pak0.pak and pak1.pak

It works for me.
It looks like your share/quake/id1 is empty, you should have a folder music, a file config.cfg and 2 symlinks to pak0.pak and pak1.pak

I moved the ticket to the packages repo, as this is where any questions/issues/requests for engines should go.
For the issue:

What version of luxtorpeda do you have?
Please send a  full log from the start of the game request to the error you posted (should mostly be showing what luxtorpeda is extracting and running, can be helpful to see if it's missing a step)
What distro and version are you running on and are you using flatpak or another non-normal way of launching Steam?
What does your directory listing look like for the game?

I moved the ticket to the packages repo, as this is where any questions/issues/requests for engines should go.
For the issue:

What version of luxtorpeda do you have?
Please send a  full log from the start of the game request to the error you posted (should mostly be showing what luxtorpeda is extracting and running, can be helpful to see if it's missing a step)
What distro and version are you running on and are you using flatpak or another non-normal way of launching Steam?
What does your directory listing look like for the game?

I just tried it (just got the first quake) and it worked ok for me as well. Make sure you pick Quake in the possible options, not sure what'd happen for the others.

I just tried it (just got the first quake) and it worked ok for me as well. Make sure you pick Quake in the possible options, not sure what'd happen for the others.

Also, what file system type are you on? If you are on NTFS for example, that probably will not work.

Also, what file system type are you on? If you are on NTFS for example, that probably will not work.

Hello again all.
Today downloaded Lutorpeda-dev freshly, purged the one installed, deleted quake and reinstalled it (making sure to delete the folder in case a remnant was left)
Im on ext4, arch Linux. Games work fine on my machine, all vulkan stuff is installed fine (Doom eternal was my test lol)
Anyway, I still get no quake when i press play.
here is all the output, would like to know whats gone wobbly, :D
`GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to ShowLaunchOption with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp waiting for user response to ShowLaunchOption ""
GameAction [AppID 2310, ActionID 5] : LaunchApp continues with user response "0"
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to ProcessingInstallScript with ""
update_packages_json. found hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886
update_packages_json. found hash and remote hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886 49b2399864abf6d10ff02ffaeadbfdc8344c8886
vkquake-2310-4.tar.xz found in cache (skip)
quake-campaign-soundtrack.tar.xz found in cache (skip)
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 2310, ActionID 5] : LaunchApp continues with user response "CreatingProcess"
Game update: AppID 2310 "", ProcID 10490, IP <IP_ADDRESS>:0
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
update_packages_json. found hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886
update_packages_json. found hash and remote hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886 49b2399864abf6d10ff02ffaeadbfdc8344c8886
creating: "/run/user/1000/luxtorpeda/2310.pid"
steam_app_id: "2310"
original command: ["/home/hexdsl/.local/share/Steam/steamapps/common/Quake/Winquake.exe"]
working dir: Ok("/home/hexdsl/.local/share/Steam/steamapps/common/Quake")
tool dir: "/home/hexdsl/.local/share/Steam/compatibilitytools.d/luxtorpeda"
json:
{
"game_name": "Quake",
"download": [
{
"name": "vkquake",
"url": "https://github.com/luxtorpeda-dev/packages/releases/download/vkquake-4/",
"file": "vkquake-2310-4.tar.xz"
},
{
"name": "Quake Soundtrack",
"url": "https://luxtorpeda.gitlab.io/files/idstuff/quake/",
"file": "quake-campaign-soundtrack.tar.xz"
}
],
"command": "./vkquake.sh",
"information": {
"store_link": "https://store.steampowered.com/app/2310/",
"engine_name": "vkQuake",
"engine_link": "https://github.com/Novum/vkQuake",
"version": "1.05.2",
"comments": "Single-player only for now, fixed music",
"author": "dreamer",
"author_link": "https://github.com/dreamer",
"license": "GPLv2",
"license_link": "https://github.com/Novum/vkQuake/blob/master/LICENSE.txt"
}
}
installing: vkquake-2310-4
install: "license"
install: "license/..LICENSE"
install: "license/LICENSE.vkquake"
install: "vkquake"
install: "vkquake.sh"
install: "share"
install: "share/quake"
install: "share/quake/id1"
install: "share/quake/id1/pak1.pak"
install: "share/quake/id1/pak0.pak"
install: "share/quake/default.lux.cfg"
installing: quake-campaign-soundtrack
install: "quake_campaign_soundtrack_readme.txt"
install: "share/quake/id1/music/track08.ogg"
install: "share/quake/id1/music/track10.ogg"
Starting app 2310

Adding process 10490 for game ID 2310
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to WaitingGameWindow with ""
Adding process 10491 for game ID 2310
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to Completed with ""
install: "share/quake/id1/music/track06.ogg"
install: "share/quake/id1/music/track02.ogg"
install: "share/quake/id1/music/track07.ogg"
install: "share/quake/id1/music/track04.ogg"
install: "share/quake/id1/music/track03.ogg"
install: "share/quake/id1/music/track11.ogg"
install: "share/quake/id1/music/track05.ogg"
install: "share/quake/id1/music/track09.ogg"
run: "./vkquake.sh" with args: [] []
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Command line: ./vkquake -fitz -basedir share/quake
Found SDL version 2.0.14
Detected 12 CPUs.
Quake 1.09 (c) id Software
GLQuake 1.00 (c) id Software
FitzQuake 0.85 (c) John Fitzgibbons
FitzQuake SDL port (c) SleepwalkR, Baker
QuakeSpasm 0.93.2 (c) Ozkan Sezer, Eric Wasylishen & others
vkQuake 1.05.2 (c) Axel Gneiting & others
Host_Init
Playing shareware version.

ERROR-OUT BEGIN
QUAKE ERROR: W_LoadWadFile: couldn't load gfx.wad
Basedir is: share/quake
Check that this has an id1 subdirectory containing pak0.pak and pak1.pak, or use the -basedir command-line option to specify another directory.
dropping: "/run/user/1000/luxtorpeda/2310.pid"

Adding process 10498 for game ID 2310
Adding process 10499 for game ID 2310
Game removed: AppID 2310 "", ProcID 10490
Uploaded AppInterfaceStats to Steam
Exiting app 2310
No cached sticky mapping in ActivateActionSet.`

Hello again all.
Today downloaded Lutorpeda-dev freshly, purged the one installed, deleted quake and reinstalled it (making sure to delete the folder in case a remnant was left)
Im on ext4, arch Linux. Games work fine on my machine, all vulkan stuff is installed fine (Doom eternal was my test lol)
Anyway, I still get no quake when i press play.
here is all the output, would like to know whats gone wobbly, :D
`GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to ShowLaunchOption with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp waiting for user response to ShowLaunchOption ""
GameAction [AppID 2310, ActionID 5] : LaunchApp continues with user response "0"
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to ProcessingInstallScript with ""
update_packages_json. found hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886
update_packages_json. found hash and remote hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886 49b2399864abf6d10ff02ffaeadbfdc8344c8886
vkquake-2310-4.tar.xz found in cache (skip)
quake-campaign-soundtrack.tar.xz found in cache (skip)
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 2310, ActionID 5] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 2310, ActionID 5] : LaunchApp continues with user response "CreatingProcess"
Game update: AppID 2310 "", ProcID 10490, IP <IP_ADDRESS>:0
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
update_packages_json. found hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886
update_packages_json. found hash and remote hash: 49b2399864abf6d10ff02ffaeadbfdc8344c8886 49b2399864abf6d10ff02ffaeadbfdc8344c8886
creating: "/run/user/1000/luxtorpeda/2310.pid"
steam_app_id: "2310"
original command: ["/home/hexdsl/.local/share/Steam/steamapps/common/Quake/Winquake.exe"]
working dir: Ok("/home/hexdsl/.local/share/Steam/steamapps/common/Quake")
tool dir: "/home/hexdsl/.local/share/Steam/compatibilitytools.d/luxtorpeda"
json:
{
"game_name": "Quake",
"download": [
{
"name": "vkquake",
"url": "https://github.com/luxtorpeda-dev/packages/releases/download/vkquake-4/",
"file": "vkquake-2310-4.tar.xz"
},
{
"name": "Quake Soundtrack",
"url": "https://luxtorpeda.gitlab.io/files/idstuff/quake/",
"file": "quake-campaign-soundtrack.tar.xz"
}
],
"command": "./vkquake.sh",
"information": {
"store_link": "https://store.steampowered.com/app/2310/",
"engine_name": "vkQuake",
"engine_link": "https://github.com/Novum/vkQuake",
"version": "1.05.2",
"comments": "Single-player only for now, fixed music",
"author": "dreamer",
"author_link": "https://github.com/dreamer",
"license": "GPLv2",
"license_link": "https://github.com/Novum/vkQuake/blob/master/LICENSE.txt"
}
}
installing: vkquake-2310-4
install: "license"
install: "license/..LICENSE"
install: "license/LICENSE.vkquake"
install: "vkquake"
install: "vkquake.sh"
install: "share"
install: "share/quake"
install: "share/quake/id1"
install: "share/quake/id1/pak1.pak"
install: "share/quake/id1/pak0.pak"
install: "share/quake/default.lux.cfg"
installing: quake-campaign-soundtrack
install: "quake_campaign_soundtrack_readme.txt"
install: "share/quake/id1/music/track08.ogg"
install: "share/quake/id1/music/track10.ogg"
Starting app 2310

Adding process 10490 for game ID 2310
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to WaitingGameWindow with ""
Adding process 10491 for game ID 2310
GameAction [AppID 2310, ActionID 5] : LaunchApp changed task to Completed with ""
install: "share/quake/id1/music/track06.ogg"
install: "share/quake/id1/music/track02.ogg"
install: "share/quake/id1/music/track07.ogg"
install: "share/quake/id1/music/track04.ogg"
install: "share/quake/id1/music/track03.ogg"
install: "share/quake/id1/music/track11.ogg"
install: "share/quake/id1/music/track05.ogg"
install: "share/quake/id1/music/track09.ogg"
run: "./vkquake.sh" with args: [] []
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/hexdsl/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Command line: ./vkquake -fitz -basedir share/quake
Found SDL version 2.0.14
Detected 12 CPUs.
Quake 1.09 (c) id Software
GLQuake 1.00 (c) id Software
FitzQuake 0.85 (c) John Fitzgibbons
FitzQuake SDL port (c) SleepwalkR, Baker
QuakeSpasm 0.93.2 (c) Ozkan Sezer, Eric Wasylishen & others
vkQuake 1.05.2 (c) Axel Gneiting & others
Host_Init
Playing shareware version.

ERROR-OUT BEGIN
QUAKE ERROR: W_LoadWadFile: couldn't load gfx.wad
Basedir is: share/quake
Check that this has an id1 subdirectory containing pak0.pak and pak1.pak, or use the -basedir command-line option to specify another directory.
dropping: "/run/user/1000/luxtorpeda/2310.pid"

Adding process 10498 for game ID 2310
Adding process 10499 for game ID 2310
Game removed: AppID 2310 "", ProcID 10490
Uploaded AppInterfaceStats to Steam
Exiting app 2310
No cached sticky mapping in ActivateActionSet.`

@hexdsl What does your directory listing look like for the Quake game directory?
There should be an Id1 directory and then the following files inside it:
total 51720
-rwxr-xr-x 1 d10sfan d10sfan     2009 Jan 21 13:38 config.cfg
drwxr-xr-x 2 d10sfan d10sfan     4096 Jan 21 13:38 glquake
-rwxr-xr-x 1 d10sfan d10sfan 18689235 Jan 21 13:38 PAK0.PAK
-rwxr-xr-x 1 d10sfan d10sfan 34257856 Jan 21 13:38 PAK1.PAK
-rwxr-xr-x 1 d10sfan d10sfan       51 Jan 21 16:50 steam_autocloud.vdf

And then you should also see share/quake/id1, with the following files:
total 124
-rw-r--r-- 1 d10sfan d10sfan   2660 Jan 21 16:53 config.cfg
drwxr-xr-x 2 d10sfan d10sfan   4096 Jan 21 16:50 music
lrwxrwxrwx 1 d10sfan d10sfan     21 Jan 21 16:50 pak0.pak -> ../../../Id1/PAK0.PAK
lrwxrwxrwx 1 d10sfan d10sfan     21 Jan 21 16:50 pak1.pak -> ../../../Id1/PAK1.PAK

One ones that are important is PAK0.PAK in the Id1 directory (this is the data that comes from steam) and the pak0.pak and pak1.pak in the share/quake/id1 directory, which is a link installed by the vkquake package.

@hexdsl What does your directory listing look like for the Quake game directory?
There should be an Id1 directory and then the following files inside it:
total 51720
-rwxr-xr-x 1 d10sfan d10sfan     2009 Jan 21 13:38 config.cfg
drwxr-xr-x 2 d10sfan d10sfan     4096 Jan 21 13:38 glquake
-rwxr-xr-x 1 d10sfan d10sfan 18689235 Jan 21 13:38 PAK0.PAK
-rwxr-xr-x 1 d10sfan d10sfan 34257856 Jan 21 13:38 PAK1.PAK
-rwxr-xr-x 1 d10sfan d10sfan       51 Jan 21 16:50 steam_autocloud.vdf

And then you should also see share/quake/id1, with the following files:
total 124
-rw-r--r-- 1 d10sfan d10sfan   2660 Jan 21 16:53 config.cfg
drwxr-xr-x 2 d10sfan d10sfan   4096 Jan 21 16:50 music
lrwxrwxrwx 1 d10sfan d10sfan     21 Jan 21 16:50 pak0.pak -> ../../../Id1/PAK0.PAK
lrwxrwxrwx 1 d10sfan d10sfan     21 Jan 21 16:50 pak1.pak -> ../../../Id1/PAK1.PAK

One ones that are important is PAK0.PAK in the Id1 directory (this is the data that comes from steam) and the pak0.pak and pak1.pak in the share/quake/id1 directory, which is a link installed by the vkquake package.

Heres what i have.
/home/hexdsl/.local/share/Steam/steamapps/common/Quake/id1 =
total 51M
drwxr-xr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ./
drwxr-xr-x 6 hexdsl hexdsl 4.0K Jan 22 18:24 ../
drwxr-xr-x 2 hexdsl hexdsl 4.0K Jan 22 18:24 glquake/
-rwxr-xr-x 1 hexdsl hexdsl 2.0K Jan 22 18:24 config.cfg*
-rwxr-xr-x 1 hexdsl hexdsl  18M Jan 22 18:24 PAK0.PAK*
-rwxr-xr-x 1 hexdsl hexdsl  33M Jan 22 18:24 PAK1.PAK*
-rwxr-xr-x 1 hexdsl hexdsl   51 Jan 22 18:24 steam_autocloud.vdf*

/home/hexdsl/.local/share/Steam/steamapps/common/Quake/share/quake/id1 =
total 16K
drwxrwxr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ./
drwxrwxr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ../
drwxr-xr-x 2 hexdsl hexdsl 4.0K Jan 22 18:24 music/
-rw-r--r-- 1 hexdsl hexdsl 2.5K Jan 22 18:24 config.cfg
lrwxrwxrwx 1 hexdsl hexdsl   21 Jan 22 18:24 pak0.pak -> ../../../Id1/PAK0.PAK
lrwxrwxrwx 1 hexdsl hexdsl   21 Jan 22 18:24 pak1.pak -> ../../../Id1/PAK1.PAK

Again, these have been made by steam, i removed and re-installed everything to confirm it wasnt anything i did and there wasnt any old files around. :D

Heres what i have.
/home/hexdsl/.local/share/Steam/steamapps/common/Quake/id1 =
total 51M
drwxr-xr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ./
drwxr-xr-x 6 hexdsl hexdsl 4.0K Jan 22 18:24 ../
drwxr-xr-x 2 hexdsl hexdsl 4.0K Jan 22 18:24 glquake/
-rwxr-xr-x 1 hexdsl hexdsl 2.0K Jan 22 18:24 config.cfg*
-rwxr-xr-x 1 hexdsl hexdsl  18M Jan 22 18:24 PAK0.PAK*
-rwxr-xr-x 1 hexdsl hexdsl  33M Jan 22 18:24 PAK1.PAK*
-rwxr-xr-x 1 hexdsl hexdsl   51 Jan 22 18:24 steam_autocloud.vdf*

/home/hexdsl/.local/share/Steam/steamapps/common/Quake/share/quake/id1 =
total 16K
drwxrwxr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ./
drwxrwxr-x 3 hexdsl hexdsl 4.0K Jan 22 18:24 ../
drwxr-xr-x 2 hexdsl hexdsl 4.0K Jan 22 18:24 music/
-rw-r--r-- 1 hexdsl hexdsl 2.5K Jan 22 18:24 config.cfg
lrwxrwxrwx 1 hexdsl hexdsl   21 Jan 22 18:24 pak0.pak -> ../../../Id1/PAK0.PAK
lrwxrwxrwx 1 hexdsl hexdsl   21 Jan 22 18:24 pak1.pak -> ../../../Id1/PAK1.PAK

Again, these have been made by steam, i removed and re-installed everything to confirm it wasnt anything i did and there wasnt any old files around. :D

Strange on my system the I in Id1 (the directory from steam) is capitalized. A note is that that appears to be the correct name ("Id1" not "id1") inside Steam: https://steamdb.info/depot/2311/
Can you try renaming "/home/hexdsl/.local/share/Steam/steamapps/common/Quake/id1" to "/home/hexdsl/.local/share/Steam/steamapps/common/Quake/Id1" and see if it works then?

Strange on my system the I in Id1 (the directory from steam) is capitalized. A note is that that appears to be the correct name ("Id1" not "id1") inside Steam: https://steamdb.info/depot/2311/
Can you try renaming "/home/hexdsl/.local/share/Steam/steamapps/common/Quake/id1" to "/home/hexdsl/.local/share/Steam/steamapps/common/Quake/Id1" and see if it works then?

What happens if you run the game from the folder with:
sh vkquake.sh
and/or:
./vkquake -fitz -basedir share/quake "$@"
?
Also, when you share a log, please make a file and upload it here.

What happens if you run the game from the folder with:
sh vkquake.sh
and/or:
./vkquake -fitz -basedir share/quake "$@"
?
Also, when you share a log, please make a file and upload it here.

Okay renaming id1 to Id1 fixes the issue. I reinstalled this game TWICE and still it defaulted it id1
perhaps other people are having this issue? maybe the setup script could check when it installs the engine??
anyway thanks for help

Okay renaming id1 to Id1 fixes the issue. I reinstalled this game TWICE and still it defaulted it id1
perhaps other people are having this issue? maybe the setup script could check when it installs the engine??
anyway thanks for help

Good to hear! Not sure why Steam would be installing it as id1 instead of Id1. It may be worth creating a ticket on https://github.com/ValveSoftware/steam-for-linux. Could be something to do with a incompatibility with something unique to your system.
Do other games that lux-dev supports work for you?

Good to hear! Not sure why Steam would be installing it as id1 instead of Id1. It may be worth creating a ticket on https://github.com/ValveSoftware/steam-for-linux. Could be something to do with a incompatibility with something unique to your system.
Do other games that lux-dev supports work for you?

I reinstalled this game TWICE and still it defaulted it id1

How is it even possible??
Id1 is clearly capitalized:
https://steamdb.info/depot/2311/
How can you have something else?

I reinstalled this game TWICE and still it defaulted it id1

How is it even possible??
Id1 is clearly capitalized:
https://steamdb.info/depot/2311/
How can you have something else?

I do not know, you are pressing X to doubt. but here it is... https://youtu.be/XpGDtAcAQqY
i dont THINK im doing anything i shouldnt be. but here it is.

I do not know, you are pressing X to doubt. but here it is... https://youtu.be/XpGDtAcAQqY
i dont THINK im doing anything i shouldnt be. but here it is.

First time I see something like this oO
What is the App ID? Right click → properties → bottom left
It should be "2310" and it should be what you have.
Other idea:
What do you have here? : https://store.steampowered.com/account/remotestorageapp/?appid=2310
I suspect the cloud save to rename the folder. Can you uninstall the game, delete the folder, uncheck "Steam Cloud" in properties then redownload the game?

First time I see something like this oO
What is the App ID? Right click → properties → bottom left
It should be "2310" and it should be what you have.
Other idea:
What do you have here? : https://store.steampowered.com/account/remotestorageapp/?appid=2310
I suspect the cloud save to rename the folder. Can you uninstall the game, delete the folder, uncheck "Steam Cloud" in properties then redownload the game?

that link you gave me looks like this

yes, i have app id 2310. (if is it app Id  lol)

that link you gave me looks like this

yes, i have app id 2310. (if is it app Id  lol)

Uninstalled without steam cloud selected. its now correctly capitalised.  ive never even looked in this folder before all this so i guarantee it wasnt something i did. Wonder if there was a 'bug' when i first played it?

Uninstalled without steam cloud selected. its now correctly capitalised.  ive never even looked in this folder before all this so i guarantee it wasnt something i did. Wonder if there was a 'bug' when i first played it?

So it was the cloud save... I don't know what happened, it's a really strange behavior... You should now find a way to delete the cloud save. I'm not sure how to do it though, maybe you can try to delete the file in steam/userdata/[SteamID]/2310/
It could be interesting to open an issue here too: https://github.com/ValveSoftware/steam-for-linux/issues
https://steamdb.info/app/2310/ufs/
id1 is not listed as a path for savefiles 🤷

So it was the cloud save... I don't know what happened, it's a really strange behavior... You should now find a way to delete the cloud save. I'm not sure how to do it though, maybe you can try to delete the file in steam/userdata/[SteamID]/2310/
It could be interesting to open an issue here too: https://github.com/ValveSoftware/steam-for-linux/issues
https://steamdb.info/app/2310/ufs/
id1 is not listed as a path for savefiles 🤷

Wonder if you've played the game on Windows before? That might cause the steam cloud to insert the data in id1/* since Windows doesn't care about case sensitivity. And then steam for some reason lowercased the directory as well?

Wonder if you've played the game on Windows before? That might cause the steam cloud to insert the data in id1/* since Windows doesn't care about case sensitivity. And then steam for some reason lowercased the directory as well?


Crash on Opening GUI

MC Version: 1.10.2
Mod pack: FTB Beyond 1.4.2
Description: Game crashes when right-clicking flux receivers or flux plugs.
Crash report: See attached
crash-2017-04-08_12.45.07-client.txt

Duplicate #85


Background color goes beyond prompt after program execution

Steps to reproduce
Invoke-Module 'PSReadLine'

function OnViModeChange {
  if ($args[0] -eq 'Command') {
    $script:vicolor = [ConsoleColor]::Red
  } else {
    $script:vicolor = [ConsoleColor]::Green
  }
  [Microsoft.PowerShell.PSConsoleReadLine]::InvokePrompt()
}

Set-PSReadLineOption -EditMode Vi
Set-PSReadLineOption -ExtraPromptLineCount 2
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
Set-PSReadLineOption -ViModeIndicator Script -ViModeChangeHandler $Function:OnViModeChange

function Prompt {
  $Prompt = Write-Prompt "`n"
  $Prompt += Write-Prompt "`n DEBUG" -BackgroundColor $script:vicolor
  $Prompt += Write-Prompt ">" -ForegroundColor $script:vicolor
  if ($Prompt) { "$Prompt " } else { " " }
}

Expected behavior
Background color stops at the last character of the prompt.

Actual behavior
When I run a program (say "some_app.exe") in pwsh and quit, the background color goes beyond the prompt as shown:

Environment data

Name                           Value
----                           -----
PSVersion                      7.1.1
PSEdition                      Core
GitCommitId                    7.1.1
OS                             Microsoft Windows 10.0.19042
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

So I tested using different colors for the colored characters:

@Neur1n The repro steps you provided don't work. Invoke-Module and Write-Prompt are both not defined. Please update your repro steps.

Sorry, here is the minimal configuration:
function Invoke-Module ($name) {
  if (Get-Module -ListAvailable -Name $name) {
    Import-Module $name
  } else {
    Write-Host 'Installing missinged module ' $name '...'
    Install-Module $name -Scope CurrentUser -AllowPrerelease -Force
  }
}

Invoke-Module 'posh-git'
Invoke-Module 'PSReadLine'

$script:indicator = ''  # u+e0b0
$script:vimode = '[I]'
$script:vicolor = [ConsoleColor]::Green

function OnViModeChange {
  if ($args[0] -eq 'Command') {
    $script:vimode = '[N]'
    $script:vicolor = [ConsoleColor]::Red
  } else {
    $script:vimode = '[I]'
    $script:vicolor = [ConsoleColor]::Green
  }

  [Microsoft.PowerShell.PSConsoleReadLine]::InvokePrompt()
}

Set-PSReadLineOption -EditMode Vi
Set-PSReadLineOption -ExtraPromptLineCount 2
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
Set-PSReadLineOption -ViModeIndicator Script -ViModeChangeHandler $Function:OnViModeChange

function Prompt {
  $Prompt = Write-Prompt "`n"
  $Prompt += & $GitPromptScriptBlock
  $Prompt += Write-Prompt "`n $script:vimode" -BackgroundColor $script:vicolor
  $Prompt += Write-Prompt "$script:indicator" -ForegroundColor $script:vicolor
  if ($Prompt) { "$Prompt " } else { " " }
}

Having only glanced at this, I wonder if it is a duplicate of #14506

I tried running Write-Warning foo; 'bar' as mentioned in #14506, but it did not reproduce my issue. Thanks though.

@Neur1n - Thank you for reporting this issue.  The working group discussed this and .NET team has updated the terminal to resolve this type of error.  https://github.com/microsoft/terminal/issues/11742
After testing, we could not reproduce in the latest terminal and suggest you attempt the operation again with the latest version of Terminal.

@Neur1n - Thank you for reporting this issue. The working group discussed this and it turns out to be an issue with Windows Terminal, which has been fixed in the latest WT preview: microsoft/terminal#11742
After testing, we could not reproduce in the latest terminal and suggest you attempt the operation again with the latest version of Terminal.

Thanks for your effort! However, it seems that this issue starts to occur when the prompt hits the last line of the terminal (I'm using WT preview 1.16.3463.0):

Things go as expected so far

Issue starts to occur

And continues

@Neur1n Had the issue always happened when the prompt hit the last line of the terminal, or that's only the case with the latest WT version? I'm asking because I want to understand whether this is still a variant of the linked Windows Terminal issue.
Your prompt configuration is too complex to reason what might be the cause -- several factors in play: posh-git, PSReadLine, the VI edit mode, and the Windows Terminal (by the way, Write-Prompt and $GitPromptScriptBlock are still missing from your scripts above). Can you maybe provide a simplified repro? For example, does this repro when not using posh-git? Or when not having PSReadLine imported (you can archive this by starting pwsh by pwsh -noprofile -noninteractive)?

Reopen

Sorry about my late response. My minimal ps1 file to reproduce the issue:
function Invoke-Module ($name) {
  if (Get-Module -ListAvailable -Name $name) {
    Import-Module $name
  } else {
    Write-Host 'Installing missinged module ' $name '...'
    Install-Module $name -Scope CurrentUser -AllowPrerelease -Force
  }
}

Invoke-Module 'PSReadLine'

$script:indicator = ''
$script:vimode = '[I]'
$script:vicolor = [ConsoleColor]::Green

function OnViModeChange {
  if ($args[0] -eq 'Command') {
    $script:vimode = '[N]'
    $script:vicolor = [ConsoleColor]::Red
  } else {
    $script:vimode = '[I]'
    $script:vicolor = [ConsoleColor]::Green
  }

  [Microsoft.PowerShell.PSConsoleReadLine]::InvokePrompt()
}

Set-PSReadLineOption -EditMode Vi
Set-PSReadLineOption -ExtraPromptLineCount 2
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
Set-PSReadLineOption -ViModeIndicator Script -ViModeChangeHandler $Function:OnViModeChange

function Prompt {
  $Prompt = Write-Prompt "`n"
  $Prompt += & $GitPromptScriptBlock
  $Prompt += Write-Prompt "`n $script:vimode" -BackgroundColor $script:vicolor
  $Prompt += Write-Prompt "$script:indicator" -ForegroundColor $script:vicolor
  if ($Prompt) { "$Prompt " } else { " " }
}


Add Silverstripe sake

The New Solution/Problem/Issue/Bug:
Add Silverstripe sake to remove the need to fully type out ddev exec vendor/bin/sake {task}
How this PR Solves The Problem:
With this addition, one can easily install the sake proxy, and run ddev sake {task}
Manual Testing Instructions:
Run the commands described above.

I'm sure this is fine, but you might consider creating a DDEV add-on with more facilities than this (and more usable and discoverable). https://ddev.readthedocs.io/en/latest/users/extend/additional-services/

That was indeed a possible next step for me, simply haven't had time, and made this in the interim for my colleagues. Figured might as well PR at :)

Just added to the main readme.
I'll have a look at making it a proper additional service later, but for now, a useful start for Silverstripe users, I think

Also, a PR would be welcome to the quickstarts

I've written a sort-of quick start for Silverstripe here:
https://firesphere.dev/articles/ddevelopment-environment/#e44
I'll see if I can formalize that in to a more useful/complete documentation for the quickstarts!

Cool - the only problem I saw on a quick scan was I always recommend using ddev composer rather than composer on the host, because composer on the host may not match the php configuration (or composer version) of your actual setup inside container.


[Claw] remove %gcc

Changes needed to make CI on Dom possible:
https://c2sm.github.io/spack-c2sm/Install.html#spack-instance-on-dom

launch jenkins icon

launch jenkins --tsa icon

launch jenkins claw

@PanicSheep This should be the last step to enable CI on Dom for ICON as well


Doesn't seem so bad :D Thanks for the quick response <3


initial package update

@gAmUssA I started this PR for the org package. Once I figure out the issue with Chpt 12 code will submit

@daveklein @gAmUssA Please review for the com to org package change due to Vik owning the domain org.kafkainaction. This is more for awareness - I will merge it tomorrow afternoon with or without comments ;)


[DEV] Connection was refused by the server.

when running npm run dev I get a connection was refused eventhough the terminal says ready.
✔ Dependencies installed

<EMAIL_ADDRESS>dev
next dev "-p" "3000"

ready - started server on <IP_ADDRESS>:3000, url: http://localhost:3000
I noticed that the server was started on <IP_ADDRESS>:3000 which I have never seen before.

Looked deeper into this and seems like that next dev has the following Error
Segmentation fault: 11

Closing this, let me know if you still have any issue.


Add litellm to kubernetes path

We should add this to our k8s/helm and docker-compose yamls.
Maybe @duhow @braveokafor can help with this.
https://litellm.vercel.app/docs/proxy/deploy

I'm guessing you want to decouple services/dependencies from the whole open-webui image in separated services, or is there any other plan?
How do we want to scale that service?

FYI, Our webui already ships with LiteLLM proxy built-in!

Ok, so is works out of the box with the existing image?
Do i need to update test.json
/test.json)
for other providers?


Hoist URL handling to KaigiApp

Idea Description
There are a lot of startActivity intent on screens to open web pages.
How about hosting the event and handling it in new KaigiExternalNavigation?
And we can also add navigateGitHub(xxx) for adding the special handling for the intent.
    kaigiAppScaffoldState: KaigiAppScaffoldState = rememberKaigiAppScaffoldState(),
    kaigiExternalNavigationController = rememberKaigiExternalNavigationController()
) {
aboutNavGraph(
...
  onLinkClick = kaigiExternalNavigationController::navigate
)

Reference images and links

🙋♂


WIP Double buffer result set

Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

opened by accident


PyCharm doesn't resolve anything under tensorflow.keras

System information

OS Platform and Distribution: Windows 10
TensorFlow installed from: binary
TensorFlow version: 2.7.0
Python version: 3.9
Installed using: Conda
CUDA/cuDNN version: 11.2/8.1

Describe the problem
I've upgraded tensorflow from 2.5 to 2.7 and now PyCharm doesn't resolve anything under tensorflow.keras.

Other modules of tensorflow work, it's only keras that's problematic. I believe this has something to do with the change in TF 2.6 where keras has been split into a separate PIP package.
People have also been reporting this problem to JetBrains (PyCharm developers): https://youtrack.jetbrains.com/issue/PY-50318
Provide the exact sequence of commands / steps that you executed before running into the problem

Create the conda environment:
~ conda create --name tensorflow27
Activate it:
~ conda activate tensorflow27
Install Python:
~ conda install python=3.9
Install TensorFlow:
~ pip install tensorflow
Create new project in PyCharm
Write this code:

import tensorflow as tf
tf.keras.preprocessing.image_dataset_from_directory()

When you move mouse to image_dataset_from_directory function there will be no autocomplete.
Writing tf.keras. yields no modules/functions

Any other info / logs
/

Hi @sanatmpa1! Could you please look at this issue?

@markorakita,
Can you clarify if you mean that autocomplete is not working in Pycharm, or you're not even able to load the modules/functions in tf.keras?

Sorry I thought I replied to this.
You can write code and run it and it works, but you don't have autocomplete nor you can go to declaration of any keras function. It's like writing code in notepad :)

hi, @markorakita
It's a naming conflict issue.
try modify the file [site-packages\tensorflow_init_.py] near line 387.
keras  rename to keras_module
it a "Magic Repair".
before:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

after:
_keras_module = "keras.api._v2.keras"
keras_module = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras_module)

import like this
import tensorflow as tf
from tensorflow.keras import layers

it work for me.

@cpuimage,
Thanks for sharing your workaround.
@markorakita,
Can you try as per the suggestion by @cpuimage and let us know if it helps in resolving the auto completion problem?

@cpuimage Thank you for finding the cause of the problem in the source code!
@sanatmpa1 I've tried the workaround and it works, but I don't think it's the complete fix since some of the keras classes are still not visible. For example tensorflow.keras.layers.CenterCrop and tensorflow.keras.layers.Rescaling layers cannot be resolved, this gets highlighted in red with the message "Cannot find reference 'CenterCrop' in __init__.py":
from tensorflow.keras.layers import CenterCrop
I hope someone in your team could take a deeper look and apply the proper fix for the next tensorflow update?

@markorakita
you can find them here:
tf.keras.layers.experimental.preprocessing.Rescaling
tf.keras.layers.experimental.preprocessing.CenterCrop

@cpuimage Thanks, they can be found in that path but that is the old path, in TF 2.7 they were moved from experimental to tensorflow.keras.layers (see API docs) and those new paths should work in IDE. Maybe the same bug that is in site-packages/tensorflow/__init__.py is also in site-packages/tensorflow/keras/__init__.py
These are just the classes that I noticed at a first glance that cannot be resolved, but there might be more, somebody with domain knowledge should really look into this and devise full and proper fix.

@markorakita Everything is messed up, and I hope someone will carefully sort out the structure.

@markorakita    Everything is stirred up, for the time being, only part of it can be solved first, and I hope that someone will solve the problem as soon as possible.

any updates on the issue? as mentioned now it is like coding in notepad

I'm using Emacs and I have same issue in TF2.8.
For now, my solution is:
import typing

from tensorflow import keras

if typing.TYPE_CHECKING:
    from keras.api._v2 import keras

It works good for my environment.

Any update on this? It's been a minute and neither this issue nor #53271 have received any updates since Jan

Maybe @qlzh727 can give us an update? Would really appreciate it!

same issue here

le sigh. Ok well if anyone else is using PyCharm/IntelliJ with their own self hosted jupyter server, and need their interpreter to index keras correctly, the file will be under the following path in the file explorer
External Libraries -> Remote Python X.X.X Docker (or whatever type of interpreter you have) -> /usr/local/lib/pythonX.X/dist-packages/tensorflow/__init__.py

If it's not in /usr/local/lib... it might be in one of the other folders available from the Remote Libraries collection.

After you do this, PyCharm should immediately pick up the change, and start giving Keras autocompletes.
I have not tried wiping my indexes to see if it persists past an Invalidate Caches and restart, but based on my past experiences working with PyCharm docker interpreters at work, PyCharm seems to (annoyingly) not want to replace these files from docker interpreters when you do that, so I'm guessing it will persist.

Same issue here.

I am also having the same issue. After updating the __init__.py however, Pycharm does not pick up the changes... I am using tensorflow-macos==2.8.0 in M1.

I am also having the same issue. After updating the __init__.py however, Pycharm does not pick up the changes... I am using tensorflow-macos==2.8.0 in M1.

You'll probably need to invalidate caches and restart. Your indexes are likely still from before the change. PyCharm index cache invalidations works differently with native interpreters it seems

@vanakema I already did that but no luck... Any other idea?

@vanakema I already did that but no luck... Any other idea?

Oh I thought I saw someone else say that for whatever reason that style import doesn't work with the fix. Do you get autocompletes when you write something like tf.keras.layers in your actual code?

Yes, the autocompletes work.

Same issue her - I'm using Tensorflow 2.8.  The Workaround described above worked for me but in addition I needed to do the following in PyCharm:  File->Invalidate Chaches -> Invalidate and Restart. Takes a little while tough...

I can confirm that this issue still exits in latest PyCharm (2021.3.3 professional edition), python 3.10, TF 2.8.  The workaround from cpuimage, then invalidating caches and restarting, fixes the issue.  Should be fixed so people do not have to search for a workaround.

I second what winthropharvey said.  The workaround from cpuimage, then invalidating caches and restarting, did not fix the issue., except for me I have PyCharm 2021.2.4 Community Edition.

@nicolasperezdeo @winthropharvey @Tolure
try modify file [site-packages/tensorflow/init.py] like this:
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  keras_module = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", keras_module)

@winthropharvey @Tolure @nicolasperezdeo
site-packages\tensorflow\keras is removed in tf 2.8.
The temporary solution can only be:
before:
from tensorflow.keras.callbacks import EarlyStopping
after:
from tensorflow.python.keras.callbacks import EarlyStopping

After 2.6 version, if I want to insight what parameters the function have, I must import the class from full path, like this

I guess that because of the lazy loader, Pycharm regard code like tf.keras as a Lazyloader Class, but this class do not provide any function name with IDE.
https://github.com/tensorflow/tensorflow/blob/e2d0f649b3d28526e5cf5eb336b3a4ef6c7d454e/tensorflow/compat_template.__init__.py#L80

This workaround with the .python. addition works to have autocompletion and syntax checking (in some instances but not all).
However, it does not help during runtime:
import tensorflow.python.keras as keras
l = keras.layers.LayerNormalization()
>>> AttributeError: module 'tensorflow.python.keras.layers' has no attribute 'LayerNormalization'

When not using .python.:
import tensorflow.keras as keras
l = keras.layers.LayerNormalization()
# works

It's not a good workaround.
(TensorFlow 2.8.0)

When a new 2.9.0-rc is being cut, and this story isn't in the bug fixes section 🥲

The same issue is still happening with 2.8.0, 2.8.1, 2.9.0, and any combination with Python/Conda versions 3.7, 3.8, 3.9, or 3.10.

The reason why this does not work has nothing to do with pycharm, but that the tensorflow.keras package is no longer generated in 2.8 and onwards, which it used to be, as you can see from the header of all files from the package in 2.7.0:
# This file is MACHINE GENERATED! Do not edit.
# Generated by: tensorflow/python/tools/api/generator/create_python_api.py script.

Maybe @markorakita can adapt the title and maybe also the description?
Since there has been no activity from anyone from tensorflow since January 2022, the general question is how to get someone to pay attention to the issue? Could it be worth to open a new issue and give it upvotes from many people here? This probably affects everyone who is used to autocompletion/an IDE and doesn't use stubs for tf from somewhere?
I don't know what else has changed since then, but maybe generation just needs to be reactivated?

Can we run the generation manually as a workaround without having to compile TF from the source?

As a working workaround, you can do the following: (no need to recompile).
Use the fix from https://github.com/tensorflow/tensorflow/issues/53144#issuecomment-985179600 (you need to modify it a bit for the current versions.)
Then, in your code:
import tensorflow as tf
keras = tf.keras
K = keras.backend # example

You have to "Invalidate Caches & Restart" in PyCharm and let it regenerate the indices which will take a few minutes.
With this, I have full autocomplete as it should be.

Sorry for the very long wait.
This issue should be addressed by https://github.com/tensorflow/tensorflow/pull/54104, which is landed on tf-nightly (but didn't included in tf 2.9). I was able to verify this locally with the latest tf-nightly pip package.
Could any of you test with latest tf-nightly on the IDE and see if it fix the issue? Thanks.

It works with tf-nightly (or applying the patch on the 2.9.1 source) when using the toplevel import import tensorflow as tf and then do everything with tf.keras.....
However, some things still don't work:

from tensorflow.keras import layers as L  (shown as error)
from tensorflow.keras import backend as K  (shown as error)
from tensorflow import keras  (no error shown, but no autocompletions)

does “from tensorflow.keras import ...” work ?   please test

It works with tf-nightly (or applying the patch on the 2.9.1 source) when using the toplevel import import tensorflow as tf and then do everything with tf.keras.....
However, some things still don't work:

from tensorflow.keras import layers as L  (shown as error)
from tensorflow.keras import backend as K  (shown as error)
from tensorflow import keras  (no error shown, but no autocompletions)

sure , why google do not fix it ??

@qlzh727 The PR only solves part of the problem, as @bermeitinger-b already notes.
I'm not sure which issue I should best respond to that won't be overlooked?
I decided to wrote a comment in the other issue (https://github.com/tensorflow/tensorflow/issues/56231#issuecomment-1143377838) that should hopefully help understand and solve the problem. It contains a report of what works in which verseion and should explain which autocompletions should work.

Since this issue is a duplicate as https://github.com/tensorflow/tensorflow/issues/56231, I am going to close this one, so that everyone can track on same issue.

hi, @markorakita It's a naming conflict issue. try modify the file site-packages/tensorflow/__init__.py near line 387.
before:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

after:
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", keras)

it work for me.

perfect

hi, @markorakita It's a naming conflict issue. try modify the file site-packages/tensorflow/__init__.py near line 387.
before:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

after:
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", keras)

it work for me.

This solution worked for me. Thanks for sharing it.

Just copy the folder keras from site-packages/tensorflow/python to site-packages/tensorflow. And the auto completion will start working perfectly

Thanks! It is a simple and prefect way!

Just copy the folder keras from site-packages/tensorflow/python to site-packages/tensorflow. And the auto completion will start working perfectly

Thank you for your idea! However, it only works for some. It looks like site-packages/tensorflow/python/keras is different from site-packages/keras.
After applying your method, I have the following results:

set_random_seed is not resolved when calling from the copied folder

To everyone that's still couldn't make it work. Try this:
modify the file site-packages/tensorflow/__init__.py near line 387
From:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

To:
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  _keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", _keras)

And then make sure to copy folder
/site-packages/keras/ into /site-packages/tensorflow/
After all of that, invalidate and restart your IDE
This works on my setup using Conda

It worked on my anaconda also! . Thanks for all your help code completion and that mini documentation is very important for productivity.

To everyone that's still couldn't make it work. Try this, I just tweaked the popular solution on this thread:
modify the file site-packages/tensorflow/__init__.py near line 387 From:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

To:
Note that I used _keras instead of keras
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  _keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", _keras)

And then make sure to copy folder /site-packages/keras/ into /site-packages/tensorflow/
After all of that, invalidate and restart your IDE
This works on my setup using Conda

It worked perfectly on PyCharm IDE! Finally from tensorflow.keras.layers import Dense, Flatten, Conv2D is successfully recognized by IDE.
With a small change, instead of copy folder /site-packages/keras/ into /site-packages/tensorflow/, I use symbolic link ln -s <full-path-to-site-package>/site-packages/keras <full-path-to-site-package>/tensorflow/keras

To everyone that's still couldn't make it work. Try this, I just tweaked the popular solution on this thread:
modify the file site-packages/tensorflow/__init__.py near line 387 From:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

To:
Note that I used _keras instead of keras
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  _keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", _keras)

And then make sure to copy folder /site-packages/keras/ into /site-packages/tensorflow/
After all of that, invalidate and restart your IDE
This works on my setup using Conda

I am facing this super weird issue.
I am on version 2.16.1 First of my site-packages/tensorflow/__init__.py does not contain any such method.

And this is how the file looks like near line 387.
I still copied folder /site-packages/keras/ into /site-packages/tensorflow/ . But still no luck
Very interesting thing is that I can access the definition of __version__ in VS Code insiders but not on PyCharm.

At the same time I can go to Dense via from tensorflow.keras.layers import Dense on PyCharm, but not on VS Code insiders, also I am not able to access Input which also has the same parent package of Dense.
And ya, both of them are running on the same global interpreter 3.12.0
One thing I figured out was PyCharm was saving these packages at its own end.

Whereas, VS Code insiders was doing it from the /site-packages/tensorflow/keras. I was able to access tensorflow.keras after copying the folder, but not tensorflow.keras.layers.

To everyone that's still couldn't make it work. Try this, I just tweaked the popular solution on this thread:
modify the file site-packages/tensorflow/__init__.py near line 387 From:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

To:
Note that I used _keras instead of keras
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  _keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", _keras)

And then make sure to copy folder /site-packages/keras/ into /site-packages/tensorflow/
After all of that, invalidate and restart your IDE
This works on my setup using Conda

I am facing this super weird issue.
I am on version 2.16.1 First of my site-packages/tensorflow/__init__.py does not contain any such method.  And this is how the file looks like near line 387.
I still copied folder /site-packages/keras/ into /site-packages/tensorflow/ . But still no luck
Very interesting thing is that I can access the definition of __version__ in VS Code insiders but not on PyCharm.
At the same time I can go to Dense via from tensorflow.keras.layers import Dense on PyCharm, but not on VS Code insiders, also I am not able to access Input which also has the same parent package of Dense.
And ya, both of them are running on the same global interpreter 3.12.0
One thing I figured out was PyCharm was saving these packages at its own end.  Whereas, VS Code insiders was doing it from the /site-packages/tensorflow/keras. I was able to access tensorflow.keras after copying the folder, but not tensorflow.keras.layers.

I have the same problem.

I have the same problem. It looks like they've changed the code so the old workarounds are no longer relevant. Has anybody found a fix for the newest versions of Tensorflow?

Same issue here

So far I haven't seen anyone propose this solution, so I'm passing it on. If PyCharm does not suggest the code to you, but the code itself executes (i.e. if you run the code, e.g. tf.keras.layers.LayerNormalization, which the IDE does not suggest, executes correctly), you can install the package:
pip install types-tensorflow
which contains "stubs" compatible with the corresponding versions of TensorFlow. If you use TensorFlow 2.16.x, you can install, for example, types-tensorflow==<IP_ADDRESS>40606 (see which version of TensorFlow these definitions are for).
pip install types-tensorflow==<IP_ADDRESS>40606
PyCharm, after refreshing the indexes, should correctly suggest classes contained in TensorFlow, unfortunately it will not suggest documentation, but it always makes writing code easier.

So far I haven't seen anyone propose this solution, so I'm passing it on. If PyCharm does not suggest the code to you, but the code itself executes (i.e. if you run the code, e.g. tf.keras.layers.LayerNormalization, which the IDE does not suggest, executes correctly), you can install the package:
pip install types-tensorflow
which contains "stubs" compatible with the corresponding versions of TensorFlow. If you use TensorFlow 2.16.x, you can install, for example, types-tensorflow==<IP_ADDRESS>40606 (see which version of TensorFlow these definitions are for).
pip install types-tensorflow==<IP_ADDRESS>40606
PyCharm, after refreshing the indexes, should correctly suggest classes contained in TensorFlow, unfortunately it will not suggest documentation, but it always makes writing code easier.

The stubs are nice, but documentation is what I need most. I decided to downgrade to 2.12.1 to get documentation working again. Now code is linked correctly and documentation works, but GPU support is broken, because I use Cuda 12.3 which requires a newer tensorflow version.

this issue still exist in 2024.2 with Tensorflow 2.16.1

hi, @markorakita It's a naming conflict issue. try modify the file site-packages/tensorflow/__init__.py near line 387.
before:
_keras_module = "keras.api._v2.keras"
keras = _LazyLoader("keras", globals(), _keras_module)
_module_dir = _module_util.get_parent_dir_for_name(_keras_module)
if _module_dir:
  _current_module.__path__ = [_module_dir] + _current_module.__path__
setattr(_current_module, "keras", keras)

after:
import typing as _typing
if _typing.TYPE_CHECKING:
  from keras.api._v2 import keras
else:
  _keras_module = "keras.api._v2.keras"
  keras = _LazyLoader("keras", globals(), _keras_module)
  _module_dir = _module_util.get_parent_dir_for_name(_keras_module)
  if _module_dir:
    _current_module.__path__ = [_module_dir] + _current_module.__path__
  setattr(_current_module, "keras", keras)

it work for me.

I tried this wih Python 3.9 and tensorflow 2.11, though nothing changed!?

Just copy the folder keras from site-packages/tensorflow/python to site-packages/tensorflow. And the auto completion will start working perfectly

This worked for me as well..

This worked for me as well

Works but that is a dirty way, and I think it need to be repeated after each update
Should fixed on source side

@qlzh727 Both issues are closed and problem is not fixed yet
Please re-open this

Sorry for the very late reply. Both me and haifeng has moved to some new project for sometime. Let me cc @mattdangerw and @hertschuh here.

@qlzh727 Thank you!

Same problem in 2.18.0.

Hi,
as of Tensorflow 2.16, the preferred way of using keras is to import keras and use it directly:
import keras

inputs = keras.Input(...)

tf.keras is only provided for backwards compatibility.
My experience is that code completion for keras works in PyCharm with import keras.


Fixes issue with customPaging children click event

Test case fiddle: http://jsfiddle.net/jamie3d/tah9tndm/1/
Not that clicking the "Foo" text (appended directly) works as expected. Clicking any of the other child elements fails to fire due to the indicated change.
Similar to #1204 and #293

The problem is still occurs and this fix is not working with 1.5.5

This was fixed in 1.5.3 with a more robust solution :)
https://github.com/kenwheeler/slick/commit/f66ac9e155f249f8d034a81ed61793c6b56efbd7

@cansozeri you're talking about something else, this issue is about customPaging (dots) not slides. :smile:

@simeydotme ooops sorry : )


Bluetooth CCM encryption bug in MIC generation

Describe the bug
bt_ccm_decrypt() returns -EBADMSG after trying to decrypt the same data that was encrypted with bt_ccm_ecnrypt().
To Reproduce
Steps to reproduce the behavior:

Encrypt any data with MIC length greater than 0 and less than 16
Decrypt the result with the same MIC length
See error

Source code for example (test vector is taken from https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/917432/cc1310-aes-ccm-tags-and-nist-test-vectors***)
```
#define AES_MIC_SIZE 4
uint8_t key[16] = {0x12, 0x34, 0x56, 0x78, 0x9a, 0xbc, 0xde, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
uint8_t nonce[13] = {0x00, 0x00, 0xf0, 0xe0, 0xd0, 0xc0, 0xb0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x05};
uint8_t payload[20] = {0x14, 0xaa, 0xbb, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f};
uint8_t encrypted[24];
uint8_t decrypted[20];
bt_ccm_encrypt(key, nonce, payload, 20, NULL, 0, encrypted, AES_MIC_SIZE);
int ret = bt_ccm_decrypt(key, nonce, encrypted, 20, NULL, 0, decrypted, AES_MIC_SIZE);
if (ret) {
printk("failed to decrypt -> %d", ret);
return 0;
}
```
Expected behavior
Decryption should work returning 0.
Environment (please complete the following information):

OS: Windows
Toolchain: nRF Connect SDK 1.7
Commit SHA or Version used

Solution
FIx bt_ccm_encrypt() function in aes_ccm.c file:
Replace
ccm_auth(key, nonce, enc_data, len, aad, aad_len, mic, mic_size);
with
ccm_auth(key, nonce, plaintext, len, aad, aad_len, mic, mic_size);

@nth-eye could you send a Pull Request please?

@trond-snekvik Looked into it and the bug-report seems to be correct. Mesh is however not affected by this as it is providing the plaintext twice in the call to bt_ccm_encrypt, so enc_data in the call will also be plaintext.
So using bt_ccm_encrypt with enc_data not pointing to plaintext is broken.


update changelog for lastest release. added a bunch of unit tests for…

… single leaf parsing
Summary

Added single leaf parsing unit tests for all condition parsing types.

Test plan
Added unit tests for single leaf parsing.

Pull Request Test Coverage Report for Build 771

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 89.947%

Totals

Change from base Build 770:
0.0%

Covered Lines:
2693

Relevant Lines:
2994

💛  - Coveralls


debug: move the chainkeys to local-worker

In debug mode, when the chainkeys are enabled, they are created in ~/.substra_chainkeys
What this PR changes:

the folder ~/.substra_chainkeys is now local-worker/chainkeys

That way, in debug mode everything is created inside the local-worker directory.

NB: this would require a change in any code that generates chainkeys


Blueprint not added to blueprint book

I tried add some blueprint like stick ladder blueprint to my multiplayer save game, but when i load that save it doesn't show up in blueprint book

Is it a locally hosted multiplayer game or do you use a dedicated server?

I can see the blueprint, I'll check if it is actually available in the game or not.
Some of the blueprints are just placeholder but not actually implemented. As far as I know I've need seen the stick ladder in action yet.