Question: Comparison to Nvidia GPU Operator + GPU Feature Discovery

Apologies if Issues is the wrong place for my question, but I don't see a Discussions forum for this repo.
I've read your Medium article, which provides a nice summary of what problem nvshare is solving.
However, I also came across this blog from VMWare, which describes GPU virtualization in Kubernetes via Nvidia's GPU Operator and GPU Feature Discovery, which adds labels to the Nodes such as nvidia.com/vgpu.present=true and facilitates fractional allocation of GPUs to Pods.
How does nvshare differ and/or what additional value does it provide?

@gadkins
The GPU Operator and Feature Discovery are auxiliary mechanisms that make it easier to manage GPUs in a K8s cluster. They just make life easier by automatically installing the Nvidia drivers and Device Plugin (in the case of the Operator) as well as automatically adding labels/taints to nodes with GPUs (in the case of the Feature Discovery thing).
AFAIK, Nvidia offers two mechanisms for sharing a GPU between multiple containers. These are exposed to a Kubernetes cluster through the official device plugin [1].
1. MIG (Multi-Instance-GPU)
This requires special hardware (Ampere architecture GPUs). The GPU's hardware is segmented in a way that allows the driver to offer "true" splits of the GPU as independent devices.
You can skim through the official docs [2] for an overview on how that works.
2. "Nvidia Device Plugin GPU Sharing"
NVIDIA device plugin 0.12.0 officially provides an option to enable sharing a GPU between multiple containers (https://developer.nvidia.com/blog/improving-gpu-utilization-in-kubernetes/).

They call the black-box NVIDIA scheduling mechanism "time-slicing"
CUDA 11.1 allows configuring the context-switch interval (albeit in 4 discrete values [DEFAULT, SHORT, MEDIUM, LONG])
They just advertize multiple [nvidia.com/gpu](http://nvidia.com/gpu) devices for every physical GPU

Memory is still the core problem:
Quoting them:
The tradeoffs with time-slicing are increased latency, jitter, and potential out-of-memory (OOM)
conditions when many different applications are time-slicing on the GPU.

This simply solves the 1-1 assignment on K8s and doesn't do anything to prevent OOM and friction between co-located apps.
I'll quote my thesis [3] (the abstract and first chapter are especially worth a read) on this very important distinction that we must always keep in mind when evaluating these alternative approaches:
While the problem of exclusive assignment of GPUs can be solved trivially
(for example by tweaking device-plugin to advertise a greater number of nvidia.com/gpu
than physical GPUs), the **CORE ISSUE** is that of managing the friction
between co-located tasks (how 2+ processes on the same node behave,
irrespective of Kubernetes) and that is hard to solve.

Conclusion

MIG chops a GPU into disjoint pieces, each with its own memory and computation units. There is no sharing between the pieces. Each process/container exclusively uses one or more pieces. If you want a process to use the whole GPU, it gets all the slices, so there is no sharing.
"Nvidia Device Plugin GPU Sharing" lets processes/containers loose on the same GPU. They can cause each other to go OOM. Quite chaotic.

To get an experience akin to (2), in nvshare, turn the nvshare-scheduler OFF through the CLI. This will use the default "CUDA black-box" scheduling.
Instead of OOM, processes may thrash the GPU instead.

[1] https://github.com/NVIDIA/k8s-device-plugin
[2] https://docs.nvidia.com/datacenter/tesla/mig-user-guide/index.html
[3] https://github.com/grgalex/nvshare/blob/main/grgalex-thesis.pdf

Great answer! Thank you!
Ahhh, I did not realize that the Nvidia device plugin for GPU sharing does not gracefully handle fair-sharing of memory.


NORMALIZATION RANGES for the 2ZoneDataCenterHVAC_wEconomizer_NY.idf building seem to be missing

When I was trying to run the DRL_Usage.py script with the Eplus-datacenter-mixed-continuous-v1 environment, I got the following error:
`KeyError Traceback (most recent call last)
/tmp/ipykernel_2958/1612162543.py in
125
126 # Training
--> 127 model.learn(total_timesteps=timesteps, callback=callback, log_interval=1)
128 # model.save(name)
129
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/sac/sac.py in learn(self, total_timesteps, callback, log_interval, eval_env, eval_freq, n_eval_episodes, tb_log_name, eval_log_path, reset_num_timesteps)
289 ) -> OffPolicyAlgorithm:
290
--> 291 return super(SAC, self).learn(
292 total_timesteps=total_timesteps,
293 callback=callback,
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/common/off_policy_algorithm.py in learn(self, total_timesteps, callback, log_interval, eval_env, eval_freq, n_eval_episodes, tb_log_name, eval_log_path, reset_num_timesteps)
336 ) -> "OffPolicyAlgorithm":
337
--> 338 total_timesteps, callback = self._setup_learn(
339 total_timesteps,
340 eval_env,
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/common/off_policy_algorithm.py in _setup_learn(self, total_timesteps, eval_env, callback, eval_freq, n_eval_episodes, log_path, reset_num_timesteps, tb_log_name)
312 replay_buffer.dones[pos] = True
313
--> 314 return super()._setup_learn(
315 total_timesteps,
316 eval_env,
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/common/base_class.py in _setup_learn(self, total_timesteps, eval_env, callback, eval_freq, n_eval_episodes, log_path, reset_num_timesteps, tb_log_name)
424 # Avoid resetting the environment when calling .learn() consecutive times
425 if reset_num_timesteps or self._last_obs is None:
--> 426 self._last_obs = self.env.reset() # pytype: disable=annotation-type-mismatch
427 self._last_episode_starts = np.ones((self.env.num_envs,), dtype=bool)
428 # Retrieve unnormalized observation for saving into the buffer
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/common/vec_env/dummy_vec_env.py in reset(self)
59 def reset(self) -> VecEnvObs:
60 for env_idx in range(self.num_envs):
---> 61 obs = self.envs[env_idx].reset()
62 self._save_obs(env_idx, obs)
63 return self._obs_from_buf()
~/miniconda3/lib/python3.8/site-packages/stable_baselines3/common/monitor.py in reset(self, **kwargs)
77 raise ValueError(f"Expected you to pass keyword argument {key} into reset")
78 self.current_reset_info[key] = value
---> 79 return self.env.reset(**kwargs)
80
81 def step(self, action: Union[np.ndarray, int]) -> GymStepReturn:
~/miniconda3/lib/python3.8/site-packages/gym/core.py in reset(self, **kwargs)
318 def reset(self, **kwargs):
319 observation = self.env.reset(**kwargs)
--> 320 return self.observation(observation)
321
322 def step(self, action):
~/sinergym/sinergym/utils/wrappers.py in observation(self, obs)
39 for i, variable in enumerate(self.env.variables['observation']):
40 # normalization
---> 41 obs[i] = (obs[i] - self.ranges[variable][0]) /
42 (self.ranges[variable][1] - self.ranges[variable][0])
43 # If value is out
KeyError: 'Zone Thermostat Heating Setpoint Temperature (West Zone)'`
I think this is caused by the fact that the https://github.com/jajimer/sinergym/blob/main/sinergym/utils/common.py file does not contain NORMALIZATION RANGES for the DataCenter.
Can you please add this info as soon as possible?
Thank you.

This bug has been solved. DRL_usage.py has been updated similar to DRL_battery.py but without gcloud functionality in order to use it easily and more configurable.


Id as text

Does select2 control support handling data where Id is text instead of a number?  I can change the server behavior to emit numeric id but want to evaluate this option before going down that route.
Here is the data I am dealing with:
[{id:"f32dc1ad-047b-48a7-8ce0-6910ee92def9",name: "name1"}, {id:"6c3bff47-fd2f-48cc-a3ff-f5a0e70cda9b", name:"name2"]

Select2 will actually coerce all ids to strings internally, so it's fine if you pass in an id as a string.
We need to do this because the value attribute of an <option> is a string.


"SPC f f" results in error

The keybinding SPC f f throws error:
Error detected while processing function SpacevimFindFiles: line 2:
E499: Empty file name for '%' or '#', only works with ":p:h": Files %:h

I just added spacevim as a distribution.

Which OS do you have ? Do you have install fzf ?

Thx for a fast reply.
Im on OSX 10.11.6.
Yes, fzf is installed and I have restarted vim.

OK I get it:
http://stackoverflow.com/questions/35135212/vim-source-command-results-in-error-e499
In short, SPC f f only work when file exist on the file system so it should not be a scratch file but an existing file.

Ah, okey. Thanks for the help!


Enhancements on files part.

Hey, in this commit we can see that it has added, get/set extensions and get their type of files.

@0rangeFox Thanks so much for your work. but I think there are some problems in your patch.
first, this PR changes the getFileName method, this maybe make old users code work failed.
second, not all users use the getFileExtension and the getFileType method, so we don't need to add member variables and initialize them, just create a temperary variable and return it when these methods are called.

@0rangeFox Thanks so much for your work. but I think there are some problems in your patch.
first, this PR changes the getFileName method, this maybe make old users code work failed.
second, not all users use the getFileExtension and the getFileType method, so we don't need to add member variables and initialize them, just create a temperary variable and return it when these methods are called.

You are welcome. But regarding the new functions, not everyone uses it because maybe this was not something implemented before? Or even the idea might not have come up at that time, but this would be very useful for those people who want to control which files they will receive in the api more easily without having to write more code. And those who already use the "getFileName" method, if the file only has an extension, that will be an empty string, they would probably notice the problem.

@0rangeFox Thanks so much for your work. but I think there are some problems in your patch.
first, this PR changes the getFileName method, this maybe make old users code work failed.
second, not all users use the getFileExtension and the getFileType method, so we don't need to add member variables and initialize them, just create a temperary variable and return it when these methods are called.

You are welcome. But regarding the new functions, not everyone uses it because maybe this was not something implemented before? Or even the idea might not have come up at that time, but this would be very useful for those people who want to control which files they will receive in the api more easily without having to write more code. And those who already use the "getFileName" method, if the file only has an extension, that will be an empty string, they would probably notice the problem.

I don't think so, avoiding breaking the current API is very important, we cannot expect users to have the patience to find bugs caused by API changes. If my application fails to work just because of the upgrade of the dependent library (for example, the file name saved in the database has no extension in this case), I will feel very annoyed.
@rbugajewski @marty1885 what do you think about this?

IMO, let's not break API. I too will be very annoyed if my projects suddenly break after updating. But I agree that there's quite some API that could/should be changed in Drogon.
@an-tao I've similar plans for drogon2. Maybe we should discuss it when we get to a further point of development? Though I don't have enough free time on hand to do much right now.

But regarding the new functions, not everyone uses it because maybe this was not something implemented before?

Thanks for your work, and please don’t get me wrong now.
I don’t use these functions, and I don’t need them right now for any of my use cases. That said, they are a welcome addition to the framework. Sample size: 1.
And I’m with @marty1885 here. Please don’t break the API. Drogon 2.x can break the API, but I think this framework is now stable and popular enough that we should stick to a common versioning scheme and its expectations.

Yes, and I can say that I totally agree with both of you guys, this would be good for version 2, what I am going to do exactly is, change everything so that it doesn't break the API at this point and that it is accessible to those who want it anyway.

Yes, and don't increase the amount of calculations for people who don't use them. You can delay the calculation of types and extensions until the user requests them. Please remember that in cplusplus programming, we all agree that we don't need to pay for things we don't need.


Copper heater strips

HEATERSTRIP1
Row 28 : Copper heater stripsFrost Fighter | Pick One
TOO EXPENSIVE Right now (89 dolars?)
Well, Whilst making the list- you had possibly found the price is 89 USD. The link(https://frostfighter.com/clear-view-order-guide.htm?add-to-cart=1366&v=402f03a963ba) you've added to the sheet- directly adds the item to cart and it shows $149 as of now.
So, Could you please revisit and confirm if this the same item with increased price or attach the actual product link- otherwise there's a chance others who can afford this may buy the wrong one which might not be useful:(

The idea is that eventually that there would be a film heater that users just stick on and not bother with the strips. The Frostfighter strips are only for prototyping.


fix EN_INITSETTING

Co-Authored-By: Lew Rossman<EMAIL_ADDRESS>Co-Authored-By: Elad Salomons<EMAIL_ADDRESS>#583

Works for me, thanks.


psu: imx6ull: badblocks false positive after ERASE_ALL

Sometimes (approx 20%) ERASE_ALL falsifely detects bad blocks (race condition / cache issue?):
WRITE_REGISTER -3 128 8

Fixed by phoenix-rtos/phoenix-rtos-devices#109


New version: Hashicorp.Boundary version 0.16.1

Pull request has been created with komac v2.2.1 :rocket:
Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Executable C:\Users\validator\AppData\Local\Microsoft\WinGet\Packages\Hashicorp.Boundary__DefaultSource\boundary.exe returned exit code: 127
Executable C:\Users\validator\AppData\Local\Microsoft\WinGet\Links\boundary.exe returned exit code: 127
Executable C:\Users\Validator\AppData\Local\Microsoft\WinGet\Packages\Hashicorp.Boundary__DefaultSource\boundary.exe returned exit code: 127
Executable C:\Users\Validator\AppData\Local\Microsoft\WinGet\Links\boundary.exe returned exit code: 127

(Automated response - build 885.)


Cannot sign in nor out: 500 errors

Environment

Operating System: Linux
Node Version:     v16.18.1
Nuxt Version:     3.3.3
Nitro Version:    2.3.2
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      app, extends, appConfig, css, postcss, build, modules, runtimeConfig, auth, content, i18n, image, nitro, routeRules, robots, security, vite
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
Will prioritize making one if you can't point out to the cause straight away
Describe the bug
Both sign in and out, which used to work a unknown amount of commits / deps bumps (should implement some more testing 🙈), do not work with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>
Sign-in doesn't work, the call to signIn fails with a 500 error:

On a signed-in state (which I was in before I cleared my browser's cache to try out), after confirming that I want to sign-out on the splash page, I get a 500 error, and my session stays connected.

[nuxt] [request error] [unhandled] [500] The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received an instance of Promise
  at new NodeError (node:internal/errors:387:5)
  at Function.from (node:buffer:328:9)
  at readRawBody (./node_modules/h3/dist/index.mjs:280:53)
  at readBody (./node_modules/h3/dist/index.mjs:306:22)
  at readBodyForNext (./.nuxt/dev/index.mjs:501:18)
  at getInternalNextAuthRequestData (./.nuxt/dev/index.mjs:584:24)
  at ./.nuxt/dev/index.mjs:596:31
  at ./node_modules/h3/dist/index.mjs:1189:14
  at Object.handler (./node_modules/h3/dist/index.mjs:1432:12)
  at Object.handler (./node_modules/h3/dist/index.mjs:1247:31)

Additional context
My /api/auth/[...].ts contains a NuxtAuthHandler with a CredentialsProvider
The call to sign out is very basic:
await signOut()

and the signIn() call consists in sending those credentials:
  const { error, status } = await signIn("credentials", {
    email: email.value,
    password: password.value,
    redirect: false,
  });

Logs
No response

Both sign in and out, which used to work a unknown amount of commits / deps bumps (should implement some more testing 🙈), do not work with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>
to quickly fix this for you: have you looked at whether your deps in the lock-file were (accidentaly) updated in the commit(s) that broke this?
Other than that: sadly no immeadiate idea, so please go ahead and provide a minimal repro. You can find a guide + nuixt starters for this here: https://nuxt.com/docs/community/reporting-bugs#create-a-minimal-reproduction

I hav the same issue.
repro: https://stackblitz.com/edit/github-xp4wje

@BracketJohn thanks for your message. Let's try to make a repro then !
@halindraprakoso could you describe your issue? Not sure these are the same. When I run your repro on Stackblitz with Chromium, when I sign in I get error, at it seems like we're being redirected to http://localhost:3000/api/auth/callback/credentials which obviously is not right, as we should be redirected relative to the repo's base url.
@BracketJohn by the way, that's the same behavior I have when I just open and run your own example repo: https://stackblitz.com/github/sidebase/nuxt-auth-example/tree/main/

Thank you fore the repo ❤
Steps I took:

opened it on stackbliz
click "download project"
npm i
npm run dev
open localhost:3000, click sign in
enter jsmith and hunter2 as username and password
click sign in -> it works

Screenshot of cookies:

@halindraprakoso I think the problem here rather lies with stackblitz -> it has wonky / bad support for cookies. See e.g., @danielroe's comment here: https://github.com/nuxt/nuxt/issues/20030#issuecomment-1493346372
so, I agree with @tmlmt -> this is likely something else. @tmlmt have you gotten around to provide a repro of your issue? Due to the cookie issues with stackblitz it's best if you also check that the problem occurs in your local development

Thanks for the follow up @BracketJohn! Note taken about having to test locally instead of Stackblitz.
I will most likely have little time this weekend, but I'll report here as soon as I've investigated further.

Sure thing - no worries! I'll wait around a bit to get the reproduction from you (:
Yeah - the stackblitz cookie thing is quite unfortunate and an easy trap to fall into.

@tmlmt @BracketJohn
oh, I see! The reason I used stackblitz was 'cause' I was able to reproduce the exact error message right away, not realizing that cookie support can be rather wonky
I actually managed to figure out that my issue is that something seems to be conflicting with nuxt-security,  https://github.com/baroshem/nuxt-security.

Hey guys, so I've taken some time to investigate, and also narrowed down to see that the change happened after the commit where I introduced nuxt-security. Indeed, disabling xssValidator with the following ...
security: {
  xssValidator: false,
  // ... rest of your nuxt-security config
}

... authentication (sign in/out) works again.
XSS Validator filter things out when the body or query params of a request contains script tags, to prevent cross-scripting-attacks. In the case of nuxt-auth (next-auth), if I take the example of signing out for instance, what happens is that the call to /api/auth/signout returns the HTML code of a "sign-out confirmation" page. I guess that HTML code cause xssValidator to block the sign-out process. See below screenshot, where the bottom part shows the response (that HTML code) of the first GET call to the API, and the top part shows the error encountered during the POST call to the API.

@BracketJohn :
1- I had never seen that sign-out confirmation page before (and it's the same on your example implementation: clicking on logout immediately logs out without the confirmation step), is that something you're implemented in nuxt-auth to bypass that step which is present in next-auth?
2- Any way we could arrange things and still enable xss protection on our apps?
I will rename the title of this issue accordingly.

Thanks!
I think as a workaround you can exclude the nuxt-auth specific routes from XSS checking.
Going further to actually resolve this, we'd need to provide nuxt-based pages for login, logout, ... out of the box -> this may besomething we take on in the future. This should avoid wrong detection of XSS.

Hey @zoey-kaiser, I assume you meant Closed as not planned and not Closed as completed as the issue is still valid, in the sense that you haven't provided nuxt-based pages for login, logout as mentioned in the previous message in this thread. If you confirm closing this with no further work on it, I will leave here in case it can be useful to other users, the workaround that enables nuxt-auth to work with nuxt-security: one needs to disable xss validation on the auth routes, i.e., in nuxt.config.ts like this:
  routeRules: {
    "/api/auth/**": {
      security: {
        xssValidator: false,
      },
    },
  }

@tmlmt indeed, sorry about that!
I am currently trying to minimize the scope of the new updates, as the amount of issues has gotten a bit out of control 😵.
Thanks for leaving the snipped on how to add nuxt-security to work with NuxtAuth! I will add it to the docs and credit you.


keeping dvrescue logs

If possible, it would be really cool to include the XML log generated from dvrescue and possibly the folder of images + HTML generated from dvplay -x in the AIPs with videoaip.

Also, maybe MediaConch reports too?

Extra files to be included in the log directory should currently be able to be specified with the -l flag ;  is that not working correctly?


Fix non-deterministic proofs (in IR)

Motivation
Described in the issue #496.
Test Plan
Not quite sure how to test this behavior as it was hard to catch it in the first place. Ran multiple tests locally to verify that order is preserved.

Fix looks super easy, but @d0cd and myself spent hours debugging and tracing it to this point.

@gluax yup!


Copy default custom runtime hit errors

create a bot
under runtime config to enable custom runtime
click copy default runtime will hit following error

And if user toggling custom runtime into disable, click startbot  will still hit [object object] error


Emmet 2.0: Occasionally insertion point is misplaced

VSCode Version: Code - Insiders 1.15.0-insider (3cfa565abbd6e162b7ae6f3055c231128da63df2, 2017-07-17T05:07:20.317Z)
OS Version: Darwin x64 16.6.0
Extensions:

Extension
Author (truncated)
Version

ng-template
Ang
0.1.4

vscode-markdownlint
Dav
0.9.1

code-settings-sync
Sha
2.8.2

sort-lines
Tyr
1.3.0

Bookmarks
ale
0.15.2

project-manager
ale
0.18.1

path-intellisense
chr
1.4.2

vscode-eslint
dba
1.2.11

vscode-html-css
ecm
0.1.7

tslint
eg2
0.16.0

auto-rename-tag
for
0.0.14

Angular2
joh
2.4.0

ecdc
mit
0.10.3

HTMLHint
mka
0.3.3

vscode-autoprefixer
mrm
2.0.0

vscode-stylefmt
mrm
2.4.1

angular2-inline
nat
0.0.17

stylelint
shi
0.27.0

ayu
tea
0.4.0

change-case
wma
1.0.0

(4 theme extensions excluded)

Steps to Reproduce:

This situation triggers this most often:

Some title

hello

The section, h1 and h2 tags all complete as expected, but then the H2 insertion point is outside the tag.

I can repro it, not sure why this would happen though...

This also used to happens when using something like url() where the selection would be outside of the parentheses, but it seems to be fixed, so maybe it is a similar issue to that?

@Niichie I don't recall the issue you are talking about, so don't know what fixed it :)

Actually, it seems it was not fixed in css!

@Niichie The issue with url() snippet is unrelated to emmet. Can you log a separate issue for that?
@smlombardi I was able to repro this once when you first logged this issue, but not anymore.
Can you try again on the next Insiders (21st July)

New emmet is completely unusable at this point.  I tried to re-create but, as you can see, it doesn't even correctly suggest
.  It suggests sect as I type (which is not a tag AFAIK) and does not offer or complete

 even after I type the whole tag.

@smlombardi This is actually exactly how it works. You need to have a look at this cheat sheet.
https://docs.emmet.io/cheat-sheet/
Basically now that emmet doesn't expand every word (woo!) It will only look for the complete abbreviation, which is actually sect not section.
@ramya-rao-a added a "whitelist" of sorts that inclued some commonly used tags to be expanded by emmet which can be found here.
https://github.com/ramya-rao-a/vscode-emmet-helper/commit/772bca6f09126256d4b0494ab33ae2728150aad9
I think the new emmet is working far better than it used to an is less intrusive!

Also, feel free to add to the whitelist here: https://github.com/ramya-rao-a/vscode-emmet-helper/commit/772bca6f09126256d4b0494ab33ae2728150aad9 and send a PR. I'll be happy to accept all the commonly used html tags

@smlombardi @Niichie Can either of you repro this?

I just did the same steps @smlombardi did in his gif and i'm getting correct insertion points.

So far, this is working as expected now.

Thanks, will close this for now then


Remove redundant static casts for malloc

There are multiple instances where malloc is statically cast to void *. For example https://github.com/DMTF/libspdm/blob/bff878de370b5fcb96bc82b135a10eb2035b1c51/unit_test/fuzzing/spdm_unit_fuzzing_common/common.c#L71-L72
However malloc's return type is already void *, so the static cast is unneeded.

I guess this is needed when the file is compiled as a C++ file. Closing.


refactor(material/checkbox): remove xml:space attr from svg checkmark

It seems that it was accidentally added in the first version of the component. unneeded attribute xml:space is removed.

CLA done


PTYExample linker error building for iOS against dylib built for MacOSX

When I build the PTYExample, I get the following linker error:
ld: building for iOS Simulator, but linking against dylib built for MacOSX file '/Users/thomaspk/Documents/code /apple/NMSSH-master/Examples/ PTYExample/NMSSH.framework /NMSSH' for architecture x86_64.

I'm a new to iOS development.  How do I get a dylib compiled for iOS if that's what will solve the problem?  Thanks.

I finally figured out the problem.  It was a real newbie problem....
When building the NMSSH.framework, you have to select the framework through the schema selector at the top (duh!):

Once the framework was built, it appeared in the Product folder and you didn't have to move it or anything.  Just had to go to the PTYExample and compile and run.  Worked perfectly!.


build(deps): Bump @cosmjs dependencies to 0.32.4 [DEV-4225]

Task linked: DEV-4225 Bump @cheqd/sdk


done

Did I give you a grade for this in Blackboard?

Closing this for now. We will reopen it if you did not receive a grade.


[FancyZones] FancyZones not active after (re)start of Windows

Microsoft PowerToys version
0.57.2
Running as admin

[X] Yes

Area(s) with issue?
FancyZones
Steps to reproduce
Start or restart the machine. Hold shift when moving a window.
I can confirm that PowerToys is started and shown in the system tray.
Opening the settings dialog (without doing anything else) solves the issue, i.e. FancyZones starts working.

✔ Expected Behavior
The defined FancyZones will be highlighted and allow me to drop the window in one.
❌ Actual Behavior
Standard Windows behaviour (moving windows/snap to top or side) but no fancy zones.
Other Software
No response

/bugreport

Hey, sure no problem.
When should create the bug report? Before opening the settings dialog (i.e. when FancyZones are not active) or after or doesn't it matter?
Cheers
Klaus
From: msftbot[bot] @.>
Sent: Tuesday, 26 April 2022 17:32
To: microsoft/PowerToys @.>
Cc: Allwicher, Klaus @.>; Author @.>
Subject: [EXTERNAL] Re: [microsoft/PowerToys] [FancyZones] FancyZones not active after (re)start of Windows (Issue #17915)
CAUTION: This Email is from an EXTERNAL source. Ensure you trust this sender before clicking on any links or attachments.

Hi there!
We need a bit more information to really debug this issue. Can you add a "Report Bug" zip file here?  Then drag the zipfile from your desktop onto the GitHub comment box in this issue. Thanks!
[Report Bug]https://urldefense.com/v3/__https:/user-images.githubusercontent.com/11349917/133042052-4975be21-4699-4363-83c9-a8e1869d079d.png__;!!L7QdHkQ!mdqqoq7tOyeNt6vKmIVgB5RzMLD8zmUKjYymkN136-ExxgemXk46_FCeZ-KpBBZDClokQOeqldeczv_LnBSCthli7ae4$

Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https:/github.com/microsoft/PowerToys/issues/17915*issuecomment-1109447925__;Iw!!L7QdHkQ!mdqqoq7tOyeNt6vKmIVgB5RzMLD8zmUKjYymkN136-ExxgemXk46_FCeZ-KpBBZDClokQOeqldeczv_LnBSCtgxn5yo5$, or unsubscribehttps://urldefense.com/v3/__https:/github.com/notifications/unsubscribe-auth/AWDJ7YFMWKWSKWVRQFZJYGTVG6LVNANCNFSM5UKIMP4A__;!!L7QdHkQ!mdqqoq7tOyeNt6vKmIVgB5RzMLD8zmUKjYymkN136-ExxgemXk46_FCeZ-KpBBZDClokQOeqldeczv_LnBSCtqNhcTmB$.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

PowerToysReport_2022-04-27-13-24-50.zip
Here you are. Btw after I rebooted the machine, I got the experience as described above (FancyZones not active). After I created the bug report but didn't open the settings, FancyZones was working fine.

Thank you for the report! We'll investigate the issue.

Are you still experiencing this issue? /needinfo

Hey Kayla,
Thanks for following up on this but luckily the issue was solve with one of the last PowerToys or Windows updates.
Cheers
Klaus

From: Kayla Cinnamon @.>
Sent: Thursday, 24 October 2024 6:33
To: microsoft/PowerToys @.>
Cc: Klaus Allwicher @.>; Author @.>
Subject: Re: [microsoft/PowerToys] [FancyZones] FancyZones not active after (re)start of Windows (Issue #17915)
Are you still experiencing this issue? /needinfo
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/PowerToys/issues/17915#issuecomment-2433272712, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWDJ7YD5I7EY2JQF5T6XQI3Z472YPAVCNFSM6AAAAABQPRBJB6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMZTGI3TENZRGI.
You are receiving this because you authored the thread.Message ID: @.***>


Java version out of date

When running the spongevanilla jar (spongevanilla-1.12.2-7.1.0-BETA-33) using jre10.0.1 , I get the following false error telling me that I would be using a too old version of java:

https://github.com/SpongePowered/SpongeVanilla/issues/355#issuecomment-335770593

While you're correct that Java 10 isn't 'out of date', it still isn't compatible with Sponge. Java 9 introduced a new 'modules' system that the entire Minecraft ecosystem has yet to be compatible with. For now, you'll need to use Java 8.


'java-library' plugin incorrectly applied to top level project

This plugin was applied to the top level project, where the intent was to apply to all subprojects (for now, there is only one)
The effect was minor, but led to a rogue/confusing empty jar under build/libs

In future as new modules added can decide if it better belongs in leaf projects or top level.


The new third party forks

Hi,
First of all I want to say that I really like that you're moving into regular github forks which helps to see the code changes :)
There's one problem though, which is that we use a specific revision of this sdk in order to make sure we're on the right version always and we don't get version bumps without first making sure nothing is broken, but these new forks point to the master branch.
I'm actually not sure what the best solution is, what we do with our forks is have branches which represent the SDK version they're dependent upon.
What do you think?
Thanks,
Elichai.

I can add sgx_tstd = { git = "...", rev = "v1.0.8" } on Cargo.toml to all my forked branches. Is this a solution?

Yeah I think it is. Then I can put the commit hash of that so it will stay like that even after you update so I can manually update all the workspace together.
(although tagging the SDK version in git will make it more readable but that's good enough)

Got it. I can do exactly what you are doing and I totally agree with you on tag + rev :-)

How to tag the SDK version in git? I can do it on my forks like you :-)

Most of the time I do stuff like that: https://github.com/enigmampc/ethabi/tree/sgx-v6.1.0-v1.0.7
to represent it's sgx(might be useless because you change the repo names to sgx) ethabi version 6.1.0 and your sdk v1.0.7.
I don't mind how exactly you decide to fit it best just so in the end I can point to a specific sdk version so it will match mine :)
(i'm starting to think about making a registry for sgx crates, that way all of this things can be upstreamed there and maintained with way less work, but still thinking about how will it work and if it's worth the effort)

Just tagged 1.0.8. Let me have dinner and then tweaks the new third-party libraries :-)

all those crates are pinned on rev = "v1.0.8", git = "..." and I'd change it every time a new version is released.

Sadly I'm having this exact issue with using https://github.com/mesalock-linux/serde-sgx and https://github.com/mesalock-linux/serde-json-sgx together and locking to revisions :(
I opened an issue on cargo for this but I don't have a good idea for a solution https://github.com/rust-lang/cargo/issues/6961

hi @elichai , I just fixed bugs related to env vars on the most recent commit. do you prefer re-tag the v1.0.8 tag to the latest commit id, or release a new tag v1.0.9? your comments would be very helpful! thanks!

I would like to prefer re-tag the v1.0.8 on the most recent commit -- nothing changes on docker images :-)

Sure retag :)

no prob!

I've found a bunch of new forks which are not tagged as suggested here:  log, chrono, base64, yasna, num-bigint
What's the logic behind which ones are tagged and which ones are not? And how can I know which upstream version we're on from looking at the Cargo.toml?

rustls/webpki/webpki-roots/sct.rs are specially treated here, because Github limits only one fork under one organization :-( these four forks have been previously maintained by mesalink on their mesalink branches. so I have no other options but maintains a new branch :-( I don't like it neither.
For all other crates, I added suffix.
I think most of the tags directly come from the original github repo. I haven't added any tags on them. But I think we need to figure out a way to tag the forks.
For now I can guarantee that the master branch of those forks can pass their tests (if ported). Don't know if you can see the CI records. And I would working on each PR (generated by Pull bot) to guarantee that after the merge the master branch still passes its tests.
The most recent problem is rand. rand is testing v0.7 on its master branch. I haven't merged it because I definitely need a tagging policy for all crates relying on it. Your comments would be very much helpful!

It might be a bit cumbersome, but what about tagging v0.13.1_sgx1.0.8. Of course, this only makes sense if the version specified in the crate root toml matches the tag. But it would make sure we know which sdk rev it is tested against. And it quite certainly would never clash with upstream tags

I think @brenzi's suggestion makes the most sense. Referring to crates via branch is not good for build reproducibility.


missing function: ImGuiInputTextCallbackData_GetEventChar

I'm debugging cmd/codegen.
Mentioned method belongs to structAccessFuncs.
It is added correctly, but for some reasons not generated in gogen.go

oh, I see:
Unknown ret:  ImWchar

but what does it mean?


Make use of new language features.

Removed redundant Me. calles
Removed some redundant line continuation chars
Utilise NameOf and Interpolation Strings
Utilise Multi-Line Sttring Literals

Hi @AdamSpeight2008, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by .NET Foundation and real humans are currently evaluating your PR.
TTYL, DNFBOT;


Strange behavior occurring when using custom LDAP id option

@ssddanbrown It seems that it's not possible to login again after the first one. I checked and the external authentication ID is very strange, actually:

Obviously, this is not the objectGUID that this user have in AD.
Originally posted by @joaomezzari in https://github.com/BookStackApp/BookStack/issues/592#issuecomment-582371753

I'm having the same issue. I tried using a couple different formats for the objectGUID such as the Hex value as well as the GUID string and neither worked, so I created a temp user in AD and registered that user in Bookstack. Initial login worked, but subsequent logins did not work. It seems that it's not storing the value correctly. In the database and on the display for that user for their External Authentication ID I have this value: ?K?E??"?S|??

Thanks for reporting @mflagler.
This is strange, I didn't think we handled this value any differently than other values we get from LDAP.
In the next bugfix, I'll sneak in an option to dump retrieved details upon fetch so we have an easier way to debug this, since I don't really have visibility of the raw values coming back from AD.

@ssddanbrown I used GUID instead of objectGUID an it worked!

@kanlas-net I just tried it and while it does work to register users and login, it's still just using the old distinguished name and not the unique  (and non-changing) objectGUID. I also tried ObjectSid which gave similar results to using objectGUID with ��������??Vz*???,�� as the external authentication ID.

@mflagler as mentioned here this is because guid is stored as hexadecimal byte arrays, so some it needs some conversion to become a text

@mflagler, @ssddanbrown seems like I have fixed it.
FIle: ./app/Auth/Access/LdapService.php
    public function getUserDetails(string $userName): ?array
    {
        $idAttr = $this->config['id_attribute'];
        $emailAttr = $this->config['email_attribute'];
        $displayNameAttr = $this->config['display_name_attribute'];

        $user = $this->getUserWithAttributes($userName, ['cn', 'dn', $idAttr, $emailAttr, $displayNameAttr]);

        if ($user === null) {
            return null;
        }

        $userCn = $this->getUserResponseProperty($user, 'cn', null);
        return [
-           'uid'   => $this->getUserResponseProperty($user, $idAttr, $user['dn']),
+           'uid'   => bin2hex($this->getUserResponseProperty($user, $idAttr, $user['dn'])),
           'name'  => $this->getUserResponseProperty($user, $displayNameAttr, $userCn),
            'dn'    => $user['dn'],
            'email' => $this->getUserResponseProperty($user, $emailAttr, null),
        ];
    }

I was seeing this issue, too, with the odd behavior that I could log in with my AD account once, but the next time I logged it would just take me back to the login page, and I'd get the following error in the storage/logs/laravel.log file:
[2020-02-14 02:05:23] production.ERROR: A user with the email<EMAIL_ADDRESS>already exists but with different credentials.
{"exception":"[object] (BookStack\\Exceptions\\UserRegistrationException(code: 0): A user with the email<EMAIL_ADDRESS>already exists but with different credentials. at /var/www/bookstack/app/Auth/Access/RegistrationService.php:60)

The patch provided by @kanlas-net seems to have resolved the issue.

I was looking around and want to test it, but don't have a dev server to test it on right now, but would it be better to use a suggested function similar to what is shown here in the comments: https://www.php.net/manual/en/function.mssql-guid-string.php#119391
This is removed in PHP 7, but the top note on the link suggests a different function to change the formatting to a standard GUID string like is viewable in Attribute Editor in this format: 4a9209bd-9252-4914-01a3-24c283062394
Also, would the fix given above by @kanlas-net break the existing storage of a DN instead of objectGUID, so it would need to be conditioned to only perform the function if the result is returned in binary format or if we're using objectGUID or ObjectSid?

@mflagler attribute editor shows it formatted, but if you open this attribute and choose hex format it will looks like in bookstack with my patch and it will be different, because it is in raw format. So I don't think there is any purpose to format guid, it will be correct in raw format too. Look at screenshot

There is the powershell script that formats guid:
$oct = "<your bookstack guid here>"

$oct1 = $oct.substring(0,2)
$oct2 = $oct.substring(2,2)
$oct3 = $oct.substring(4,2)
$oct4 = $oct.substring(6,2)
$oct5 = $oct.substring(8,2)
$oct6 = $oct.substring(10,2)
$oct7 = $oct.substring(12,2)
$oct8 = $oct.substring(14,2)
$oct9 = $oct.substring(16,4)
$oct10 = $oct.substring(20,12)

#there you get it formatted
$strOut = "$oct4" + "$oct3" + "$oct2" + "$oct1" + "-" + "$oct6" + "$oct5" + "-" + "$oct8" + "$oct7" + "-" + "$oct9" + "-" + "$oct10"

write-host $strOut

As you can see it just rotates some character arrays

Thank you very much @kanlas-net for figuring out what was going on here.
I've just deployed v0.28.1 and v0.28.2. In these I have added the ability to prefix any LDAP attribute options with BIN; to mark them as binary to be decoded to hex on fetch. Therefore you should be able to use the following in your .env:
LDAP_ID_ATTRIBUTE=BIN;objectGUID

If you have many any edits so far to the app/Auth/Access/LdapService.php you might want to revert and clear your changes before updating to avoid issues when running the update commands.
I have also added a LDAP_DUMP_USER_DETAILS=true option which will dump user details as JSON upon fetch to help with debugging where needed.
I don't have AD myself so have not been able to fully test the changes made. Please let me know the above attribute option works. If so I'll go ahead and update the docs to reflect these changes otherwise I'll remain hesitant for now.

@joaomezzari FYI

Strange, I just tested with the new patch but it still doesn't work. I used the binary value and hex for the user ID, no success.

Works perfectly! Took a little bit of work to convert my users over, but it's working great! Thank you!

Works for me too! :)

Thanks everyone for confirming. Docs have now been updated to reflect these changes so I'll close this off.


Http handle invalid byte sequence

HTTP requests and responses are quite a nuisance to deal with. To be quite honest, I'm a little worried about what I might have missed implementing this.
I'm sure I'll stumble upon those problems ( so I can fix them ) later. 😂
Aims to fix https://github.com/sdaubert/packetgen/issues/78

OK, nice PR.
Please add a spec to check #81 is fixed. I will merge it next week.

@picatz please add a spec to check #81 is fixed, and i will merge this.

@sdaubert Will happen this week 👍

@sdaubert I got the spec implemented, and while doing so, fixed some issues I found. 😂


GROOVY-6360: Add more String methods to avoid reflection

Tweak the following PR:
https://github.com/apache/groovy/pull/1486
① Add more String methods
② Remove redundant method declaration charAt, which has been declared in GString class

+1

Merged, thanks!


set default kube_apiserver_enable_admission_plugins for Kubernetes version 1.10 and later

Kube documentation recomend using this list of admission plugins
--enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota
but after changing option --admission-control to option --enable-admission-plugins, the default value of option --enable-admission-plugins in kubespray is empty
kube_apiserver_enable_admission_plugins: []
set default value:
kube_apiserver_enable_admission_plugins:
  - NamespaceLifecycle
  - LimitRanger
  - ServiceAccount
  - DefaultStorageClass
  - DefaultTolerationSeconds
  - MutatingAdmissionWebhook
  - ValidatingAdmissionWebhook
  - ResourceQuota

/assign @woopstar

ci check this

I think there is no need to explicitly enable these admission plugins as they are enabled by default (https://github.com/kubernetes/kubernetes/blob/426ef9d349bb3a277c3e8826fb772b6bdb008382/pkg/kubeapiserver/options/plugins.go#L133).
There is a PR to fix the documentation (https://github.com/kubernetes/kubernetes/pull/67011) merged on August 9th but I guess the docuementation has not been regenerated since then.

@mirwan I tend to agree. What I was thinking about is, should we run default or should we run the best settings / most secure settings?
We add DenyEscalatingExec to the list etc.
Most of Kubespray is configured to set the best and secure settings. Maybe this should actually be updated to this instead?

@woopstar I couldn't agree more about having more secure settings in a cluster deployment (that's what I do) but  - I'm asking myself the same question as you - I don't know if it should be the default settings here (btw the recommended set of admission controllers does not include DenyEscalatingExec).
That could be an item in the agenda of the next meeting ;-)
On one hand, DenyEscalatingExec is a pain in the a*s when it comes to debugging and for someone who's using kubespray to try k8s I'm not sure they should have to disable security settings as a first step, it could be seen as a constraint...
On the other hand, having more secure settings is required in order to comply with, let's say, kube-bench...

@mattymo Do you have any input on this matter?


HBASE-19547: HBase fails building on AArch64 due to asciidoctor-maven…

This error took place because asciidoctor-maven-plugin used an old version
of Jruby (1.7.26) which didn’t work with AArch64 (due to the fact that
Jffi 1.2.12 which Jruby 1.7.26 depends on has no native AArch64 libraries).
This patch resolves the issue by upgradeing Jruby to version <IP_ADDRESS> that supports AArch64.
Change-Id: I17c2372434cc536f9436aa9e101ecf27571a5623
Signed-off-by: Yuqi Gu<EMAIL_ADDRESS>

Was this closed and then not merged and then closed with no explanation?

not at all. the comment on the closing ref:

closes #70 - the referenced JIRA, HBASE-19547, has already closed.

that jira (the same one in the title ): HBASE-19547 says the change was merged and made it into the 2.0.0 release.

FTR, it was merged in April 2018.

My apologies, I had looked at only a portion of the referenced closing document!


Add option to rebuild packages only on load

The current algorithm is O(n) in the number of packages at Emacs init. We could reduce this to O(n) in the number of packages loaded at Emacs init, if the user enables an option to only check packages for rebuilds when they are actually loaded. This option should be disabled by default since it requires putting advices on require and load.
One potential complication is that it's not clear how we could figure out what features are supposed to be require-able, if the packages are not built yet. Perhaps this indicates that #41 is a better way to improve performance.

Closing as unclear if this is possible even in theory. Feel free to comment if you have an idea about how it could be done.


mweb - Old dot - Creating a workspace from "Join" crashes the tab with different account

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:
Pre-Condition: User has another tab open on staging.new.expensify.com signed into account B

Access staging.expensify.com on another tab
Tap email > Input a new account different from Account B (Lets call this account A)
Tap join > Set up my company for free

Expected Result:
User expects a staging.new.expensify.com tab to open on Account A's workspace and when returning to the tab with account B, that that tab is still functional
Actual Result:
The tab with Account B crashes once the user "Joins" with account A
Workaround:
Unknown
Platform:

Where is this issue occurring?

Web
iOS
Android
Desktop App
Mobile Web

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/93399543/192121430-5199ef3b-79a2-4a0e-ac1f-8ec503a10ef5.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

I think that's wanted, as we don't want the 1st tab to appear connected whereas the active user on the browser is someone else now.


Exposed API key on config.js

themoviedb API key

I hid it now thanks for saying, i appreciate it.

Fixed on commit b212a77


Giveli.st > Pull the nonprofit profiles from Every

Create a test link that pulls the nonprofit profiles from Every.org and links the donation to their payment flow

@osdiab Do you have an API to get the information of each active campaign which the corresponding nonprofits information to show on the givelist flow?

We do internally and i'll also add that to the third party API that can be accessed outside of our site!


Development docs unclear on adding new features

I was hoping to extend this and add a few extra things like /interface, but I just want to be sure I understand the dev flow.
From what I can tell:

cfg/bluefin_original.yaml is the automatically-generated docs as per fetch.sh against an up-to-date bluefin instance
cfg/bluefin.yaml is manually written, using bluefin_original.yaml only as a general reference
The reason to do this is that the truenas live api docs aren't compatible with openapi generator
Testing is done manually via programs that use the sdk (like terraform-provider-truenas)

Is that about correct?

Yep, and generate.sh script will run openapi sdk for you with all parameters set, it takes release name as first argument and currently only bluefin and angelfish supported. Original spec is not only not compatible, but it is also missing a lot of response/input type definitions.

Any idea where we'd need to edit (upstream) in order to have some of these corrected in the actual /api/v2.0 page? It'd be nice if this could (one day) be reduced to:

A curated list of routes whose upstream API docs are correct
A curated set of routes/schemas whose upstream API docs are NOT correct (but that we still want in the sdk)
A translation layer to convert some of the incompatibilities (e.g. openapi generator doesn't like the _name_ field in schemas)

Then the generate script could:

Run the translation on the upstream API yaml
Copy over the "known good" routes from translated upstream API yaml
Merge in the extra ones that aren't valid upstream

Looking at the differences between bluefin.yaml and bluefin_original.yaml for some routes, it seems like a heavy lift, but not necessarily unachievable (assuming truenas upstream is willing to accept the changes needed on their side). What do you think? Any wisdom on where such an effort is likely to fall flat?

Yes, that would be ideal. Last time I needed something fixed on their end, I posted in their forums - maybe thats the way to go. That would definitely make my life easier. I just recently started adding bluefin support and it is a sizable undertaking, honestly making me lose faith in this project :) I can't imagine adding yet another TrueNAS release support to this.

Good news on the upstream front. Turns out the lack of schema on most routes was a bug introduced in 2021. I've put up a PR here: https://github.com/truenas/middleware/pull/10747, and since it's clear to see it wasn't an intentional change, I'm hopeful they'll accept it soon :)
Obviously not files you'd normally want to mess with, but if you want the updated schema in your docs, you can make the simple edit from the PR to this file on your trunas instance:
/usr/lib/python3/dist-packages/middlewared/restful.py

I guess the next big target is the JSON returned upon success for GET routes? They do have a returns() decorator similar to the accepts() one that generates the PUT schemas, so maybe it's only a minor change also? One can dream ;)

Wow, nice!


Recieve Messages from Gesturify

Would it be possible to make Tab Deque recieve messages from the addon Gesturify to be able to go back and forth in the deque using gestures instead of shortcuts?

Seems like it would be possible, but I don't have time to look into it. Also, Gesturify would need to send messages, so this wouldn't just work.


[BEAM-851] Identify if pipeline is in streaming mode

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[X] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[X] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[X] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

R: @amitsela @jbonofre

@iemejia thanks!
See comments and ping me once updated.

Ok, rebased with the changes, please check @amitsela

Jenkins is failing on checkstyle. Please run mvn clean install -Prelease locally to see the issues.

Ok sorry for the checkstyle issue, I just fixed it, I also changed the options to be aligned with what you said, the TranslationModeDetector only detects the mode and does not do any extra logic (I suppose this is better if someday we eventually reuse this function between runners).

@iemejia looking good!
My comments are mostly thinking out loud 😉 .
I'm wondering though if you could remove all specific assignments of options.setStreaming(true) in the runner ? this would basically test your changes.

I have a test failure on the PR. Let me try a new full build.

Actually If I remove this, some of the tests will fail because the way we detect using Read.Unbounded does not match unbounded PCollections created by transforms e.g. CreateStream.fromQueue.
So there are two options:

I change back the visitor code to check every input for unboundness (my previous version, notice that the code is not as nice but it will cover event the SDF case).
I switch the respective tests to force streaming when needed and let the visitor detec only Unbounded.Read.

@iemejia you're right, I forgot about it.
I suggest we setStreaming(true) manually where CreateStream is used as it is not a proper IO (possibly fix that in another PR).
WDYT ?

Ok, added last remarks, I hope it is ok now.

LGTM pending tests.


Fix: fixed issue #56 - make send request button responsive

Overview
This PR fixes issue #56 where the 'Send Request' button was not properly styled or responsive on mobile devices.
Changes

I replaced the text of the "Send Request" button with an "Add Friend" icon from Lucide React to improve responsiveness and maintain a cleaner UI on mobile.
Updated button styles for better responsiveness on smaller screens.
Added appropriate padding and icon size adjustments for mobile view using Tailwind CSS.
Ensured the button fits within mobile views without overflowing or looking out of place.
Added accessibility attributes (aria-label) to improve screen reader support.

Issue Reference
Fixes #56
Screenshots

Before:

After:

Testing Instructions

i have Checked the button responsiveness on various mobile screen sizes (e.g., iPhone 5/SE, iPhone X, etc.).

@sid0000007 @daccotta  can anyone of you  add labels of gssoc-ext and level1 to this PR please as of latest guideliness in official announcements of GSSoC extended editions discord community

@sid0000007 @daccotta can anyone of you add labels of gssoc-ext and level1 to this PR please as of latest guideliness in official announcements of GSSoC extended editions discord community

@Dhruv-pahuja Added your mentioned labels.


Some videos not loading properly in project.html about section

Something I did to fix https://github.com/jonfroehlich/makeabilitylabwebsite/issues/679 broke this

This is now fixed:


Use nox

Codecov Report

Merging #41 (cbd7f08) into main (e49458e) will decrease coverage by 0.21%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #41      +/-   ##
==========================================
- Coverage   89.74%   89.52%   -0.22%
==========================================
  Files          42       42
  Lines        1492     1461      -31
==========================================
- Hits         1339     1308      -31
  Misses        153      153

Impacted Files
Coverage Δ

apgorm/constraints/foreign_key.py
61.53% <0.00%> (-1.88%)
:arrow_down:

apgorm/migrations/describe.py
96.66% <0.00%> (-0.96%)
:arrow_down:

apgorm/model.py
82.14% <0.00%> (-0.38%)
:arrow_down:

apgorm/migrations/migration.py
93.44% <0.00%> (-0.21%)
:arrow_down:

apgorm/field.py
92.63% <0.00%> (-0.16%)
:arrow_down:

apgorm/sql/sql.py
90.47% <0.00%> (-0.15%)
:arrow_down:

apgorm/database.py
100.00% <0.00%> (ø)

apgorm/types/numeric.py
100.00% <0.00%> (ø)

apgorm/types/base_type.py
100.00% <0.00%> (ø)

apgorm/constraints/constraint.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e49458e...cbd7f08. Read the comment docs.


$createUserWithEmailAndPassword doesn't return email-already-in-use error if duplicate email

Version info

Angular: 1.5.6
Firebase: 3.0.3
AngularFire: 2.0.1
Steps to reproduce
Create a new user with email and password (use $createUserWithEmailAndPassword)
Try to create a new user using the same email as the last user
Expected behavior
Should return email-already-in-use error
Actual behavior
Logs the following error in the console:
POST https://www.googleapis.com/identitytoolkit/v3/relyingparty/signupNewUser?key=AIzaSyAdHXt-qASFAmIZ8Mxm11p7ouO7YkJpBsQ 400 ()

Seems like a bug for sure. Would you mind putting together a Plunkr or JSFiddle of this problem?

Turns out it was a typo between the scope variable name and ng-if expression. :rage:
Sometimes you get the bear, sometimes the bear gets you...

No problem! That's why we ask for repros :)

I mean the POST 400() error still logs in this situation. Not sure if that is intentional, or a non-AngularFire log.

That's intentional and done by the browser. The request should log an error since it did indeed fail. Chrome (or whatever browser you are using) logs responses which return a 4xx and 5xx response code.

Okay. Thanks for confirming that!


PYPI package for arm64 OSX

Could you please provide OSX arm64 package for PyPI?
It's unreal to build it from sources because of huge number of dependencies.
I would assume that source pypi package must contain all dependencies internally, because I've tried to build pypi package and gave up with this on 6th dependency.

Looks like such request is asked already https://github.com/cgohlke/imagecodecs/issues/44
How can we help with build instructions for OSX arm64? do you know specific places which need to be fixed?

Duplicate of #44. See also https://github.com/Czaki/imagecodecs_build/issues/2.
Imagecodecs binaries are available for osx-arm64 on MacPorts and conda-forge.
Imagecodecs allows to build with missing dependencies via the --lite  or --skip-extension build options.
The imagecodecs build scripts are unable to build wheels for osx-arm64 because that platform is still not available on Azure Pipelines.

There's a pre-release for Azure pipeline that contains macOS Arm64.
https://github.com/microsoft/azure-pipelines-agent/releases/tag/v3.214.0


chore(deps): update module github.com/bradleyfalzon/ghinstallation/v2 to v2.3.0

This PR contains the following updates:

Package
Type
Update
Change

github.com/bradleyfalzon/ghinstallation/v2
require
minor
v2.2.0 -> v2.3.0

Release Notes

bradleyfalzon/ghinstallation
v2.3.0
Compare Source
What's Changed

Allow JWT signing method to be configurable. by @wlynch in https://github.com/bradleyfalzon/ghinstallation/pull/80
HTTPError should be unwrappable. by @cube2222 in https://github.com/bradleyfalzon/ghinstallation/pull/97
Bump github.com/google/go-github/v50 from 50.1.0 to 50.2.0 by @dependabot in https://github.com/bradleyfalzon/ghinstallation/pull/96

New Contributors

@cube2222 made their first contribution in https://github.com/bradleyfalzon/ghinstallation/pull/97

Full Changelog: https://github.com/bradleyfalzon/ghinstallation/compare/v2.2.0...v2.3.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

⚠ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

any of the package files in this branch needs updating, or
the branch becomes conflicted, or
you click the rebase/retry checkbox if found above, or
you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:
File name: go.sum
Command failed: install-tool golang 1.20.3
mkdir: cannot create directory ‘/opt/buildpack/tools/golang/1.20.3’: Permission denied
tar: /opt/buildpack/tools/golang/1.20.3: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now


MM-25792 Ensure previous state is cleared when logout

Summary
Make sure previous redux state is cleared when you logout from a server so there is no conflicting data or data that  does not belong when you switch servers.
Ticket Link
https://mattermost.atlassian.net/browse/MM-25792

Building app in separate branch.

Successfully building:
https://circleci.com/gh/mattermost/mattermost-mobile/6622
https://circleci.com/gh/mattermost/mattermost-mobile/6621

Artifact links:
https://6622-70265724-gh.circle-artifacts.com/0/~/mattermost-mobile/Mattermost_Beta.ipa
https://6621-70265724-gh.circle-artifacts.com/0/~/mattermost-mobile/Mattermost_Beta.apk

@marianunez @Willyfrog can you please test the build posted here? as you guys reported the issue

This one loaded townsquare on login on the new server.
But there was a new problem: when i pressed logout got a screen stating that something went wrong and teams could not be loaded.
(I have the screenshot, but GitHub mobile doesn't let me post it, I'll add another comment with it once I can)

Guillermo, does it happen to you every time? I’m unable to repro this newest issue

Not always, but it does reappear
I have a video happening 2 out of 3, I'll send it to you through mattermost

I installed from the links above and was not able to reproduce the original issue.
However, just want to confirm that the build number did not increase and it still shows as build 296.

Yes this is a PR build nothing more... so that means build numbers remain the same.
Did you happen to see what Guillermo is reporting?

@migbot plz review


Doc-3346 Fix fastest CI tutorial

Reflect updated get started flow
Add back yaml samples for each language for the required build steps.
Small editorial changes
Fix a broken link

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


No State Change in Time Range - Row disapears

Hi there, firstly I am so glad that I found your cool plugin - saved my week!
One issue - or maybe a lack of knowledge/docu:
If I have - say - 5 rows of feed and one row has no state change over the observed time period - IT DISSAPEARS :(
I thought the "expand from query" value solvs this problem by looking further back (enough) to find a state change. But it does not, at least in my setting.
Can anybody poke me in the right direction?
Thx heaps Diet

OK, workaround!
Query that looks fare in the past, to sure find a record, fill it with "null" and do the rest as always. Not sweet but works.
Example:
SELECT "count" FROM
(SELECT (last("firstzone") - last("firstzone")) as "count" from "xxx" WHERE time < (now()-7d)),
(SELECT count("firstzone") FROM "xxx" WHERE ("topic" ='TCS1') AND "firstzone"=2 AND "lastzone"=1 AND $timeFilter GROUP BY time(5m) fill(0))


Chapter 11 code feedback

use wait-for-it to ensure docker-compose up works on first attempt.

clean and sort imports

homogenise typing usage

remove unused executor argument from the execute decorator

raise rather than return error in execute decorator

Added typing to the execute decorator. But might be more
complex than desired. Feel free to discard.

Added overloads in the hydrate method for happier mypy
This may be more complex than desired. Feel free to discard.

Added typing to the execute decorator. But might be more
complex than desired. Feel free to discard.

Added overloads in the hydrate method for happier mypy
This may be more complex than desired. Feel free to discard.

Absolutely helpful. I am going to swing back thru this shortly and add a whole bunch of comments into this code. The complexity can be explained there. I like the idea of introducing overload here.


Support for files larger than 4MB in OneDrive / SharePoint

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.
Yep, searched for 4mb, 4 mb, onedrive, and more.

Is your feature request related to a problem? Please describe.
Not related to a problem.
Describe the solution you'd like
We're storing our diagrams in SharePoint (via the OneDrive integration), and make use of screenshots for storyboarding. We'd like to be able to add more screenshots and continue to use SharePoint, but are hitting the 4MB upload limit.
Describe alternatives you've considered
Still exploring alternatives such as using Azure File Storage to map a "network drive" or similar. Manually uploading to SharePoint will not work for us and would lead to user confusion.
Additional context
The 4MB limit is because this is the limit sending a PUT using the MS Graph API as indicated in the following comment: 			https://github.com/jgraph/drawio/blob/4fe8c180696d13ee582b7ba69d4606ddf8cd269b/src/main/webapp/js/diagramly/OneDriveClient.js#L913-L920
The message shown is:

The following StackOverflow post seems to describe using the an upload session to upload more than 4MB: https://stackoverflow.com/questions/56335586/upload-file-4mb-to-onedrive-using-graph-api
Storing files larger than 4MB would be really useful for us and we'd be really grateful for this enhancement! :)

Support of large files added. Will be available in the next release


add custom target 'check' for more verbose tests

adds a custom cmake target check. In case of an error in the testsuite the errors are printed to the terminal (instead of just telling the user which test failed). Very handy for CI systems

Why is this needed? Can't you just call ctest --output-on-failure directly?

It's nice to work with targets in CI environments (when testing on Windows/Linux).
instead of creating the build directory and then change into the newly created folder to build and test one can use just cmake commands. Then cmake selects the right tool to compile (make on linux, msvc on windows)
For example in Linux one can create the build directory and call test by hand
mkdir _build
cd _build
cmake ..
make
ctest

or let cmake do the heavy lifting (on every platform):
cmake -H. -B_build
cmake --build _build
cmake --build _build --target check

No need to remember how to compile in the command line on Windows with msvc or ninja
Another nice effect of this commit is, that no matter if you compile on Visual Studio or Makefiles you can always use the target check in the commandline. Otherwise one would have to know that under Visual Studio the test target is called RUN_TESTS and on Makefiles the test target is called test

I understand all this. However, this is not a "one size fits all" solution since one user may prefer a complete output of the log, the other none at all, and the third just on failures. Hence, I'm questioning the usefulness of this PR.

I could add three custom targets check_silent, check_failure, check_verbose covering your examples. Would this be enough or would it add to much clutter?

The scenarios I mentioned are just examples. There are many other parameters that ctest provides to support different scenarios.
I believe adding multiple check targets that cover the aforementioned cases would add too much noise without any real benefit. Especially, since there's already a standard test/RUN_TESTS target, albeit the verbose output.
Finally, CI runners typically require providing the command line for building and testing projects anyhow. Hence, calling ctest directly is generally not an issue.

Thanks for the explanation.
I found another workaround using cmake targets
CTEST_OUTPUT_ON_FAILURE=1 cmake --build _build --target test


Weird epoch start/end times

@disassembler reported this from testnet:
 id |      out_sum       | tx_count | blk_count | no |     start_time      |      end_time
----+--------------------+----------+-----------+----+---------------------+---------------------
 66 |<PHONE_NUMBER>579 |      123 |     21600 | 65 | 2020-06-15 16:52:16 | 2020-06-18 16:53:16
 67 |<PHONE_NUMBER>68 |      125 |     21600 | 66 | 2020-06-18 20:45:16 | 2020-06-23 18:25:56
 68 |<PHONE_NUMBER>454 |      464 |     21600 | 67 | 2020-06-23 21:35:36 | 2020-06-28 18:09:56
 69 |<PHONE_NUMBER>22 |      269 |     21600 | 68 | 2020-06-29 02:41:36 | 2020-07-03 18:08:36
 70 |<PHONE_NUMBER>56 |       97 |     21588 | 69 | 2020-07-03 20:55:36 | 2020-07-08 18:33:16
 71 |<PHONE_NUMBER>35 |       66 |     21600 | 70 | 2020-07-08 23:06:16 | 2020-07-13 14:15:16
 72 |<PHONE_NUMBER>65 |      122 |     21567 | 71 | 2020-07-13 20:40:56 | 2020-07-18 02:26:56
 73 |<PHONE_NUMBER>90 |       56 |     21600 | 72 | 2020-07-20 07:37:56 | 2020-07-23 11:48:56
 74 |<PHONE_NUMBER>52 |       55 |     21528 | 73 | 2020-07-24 00:16:16 | 2020-07-28 17:13:36
 75 |<PHONE_NUMBER>6221 |      115 |     21429 | 74 | 2020-07-28 20:25:36 | 2020-08-02 12:35:36
 76 |<PHONE_NUMBER>95419280 |      126 |     21260 | 75 | 2020-08-02 20:59:16 | 2020-08-07 19:11:56
 77 |<PHONE_NUMBER>5958678 |      133 |     12464 | 76 | 2020-08-08 04:57:36 | 2020-08-10 19:12:16

The start and end times seem to be all over the place.
Version is refs/tags/3.1.0, testnet config from https://hydra.iohk.io/build/3670619/download/1/index.html

The times above very definitely are strange. The start_time and end_time for each block should be the time stamp on the first block and last block of the epoch respecively.
The epoch table is filled in by the queryCalcEpochEntry query. That query function was developed by accretion; first getting it working for mainnet (which was relatively easy) and then adding handling for special cases until it worked for unusual cases.
This was all fine for Byron and its testnets, but may no longer be acceptable for Shelley.

Ok, have managed to reproduce the problem. Querying the block table:
testnet=# select sum(tx_count) as tx_count, count(id) as blk_count, min(time), max(time) from block
               where epoch_no = 67 ;
 tx_count | blk_count |         min         |         max
----------+-----------+---------------------+---------------------
      464 |     21600 | 2020-06-23 20:20:16 | 2020-06-28 20:19:56

but querying the epoch table:
testnet=# select * from epoch where no = 67 ;
 id |    out_sum    | tx_count | blk_count | no |     start_time      |      end_time
----+---------------+----------+-----------+----+---------------------+---------------------
 68 |<PHONE_NUMBER>454 |      464 |     21600 | 67 | 2020-06-23 21:35:36 | 2020-06-28 18:09:56
(1 row)

Stopping db-sync, then delete from epoch where no >= 67 ; and restarting db-sync results in the same weird results.
This suggests that the Esqueleto query is not being accurately translating to SQL.

Seems to have been an issue with the way the query was written.
The queryCalcEpochEntry used two queries and the start and end times were extracted from a query that joined block and tx. By rearranging the two queries it is possible to extract the start and end times in a query that only operates on the block table and the resulting start and end times are correct:
testnet=# select * from epoch where no >= 67 order by no asc ;
 id  |      out_sum       | tx_count | blk_count | no |     start_time      |      end_time
-----+--------------------+----------+-----------+----+---------------------+---------------------
  96 |<PHONE_NUMBER>454 |      464 |     21600 | 67 | 2020-06-23 20:20:16 | 2020-06-28 20:19:56
  97 |<PHONE_NUMBER>22 |      269 |     21600 | 68 | 2020-06-28 20:20:16 | 2020-07-03 20:19:56
  98 |<PHONE_NUMBER>56 |       97 |     21588 | 69 | 2020-07-03 20:20:16 | 2020-07-08 20:19:56
  99 |<PHONE_NUMBER>35 |       66 |     21600 | 70 | 2020-07-08 20:20:16 | 2020-07-13 20:19:56
 100 |<PHONE_NUMBER>65 |      122 |     21567 | 71 | 2020-07-13 20:20:16 | 2020-07-18 20:19:56
 101 |<PHONE_NUMBER>90 |       56 |     21600 | 72 | 2020-07-18 20:20:16 | 2020-07-23 20:19:56
 102 |<PHONE_NUMBER>52 |       55 |     21528 | 73 | 2020-07-23 20:20:16 | 2020-07-28 20:19:56
 103 |<PHONE_NUMBER>6221 |      115 |     21429 | 74 | 2020-07-28 20:20:16 | 2020-08-02 20:19:56
 104 |<PHONE_NUMBER>95419280 |      126 |     21260 | 75 | 2020-08-02 20:20:16 | 2020-08-07 20:19:56
 105 |<PHONE_NUMBER>4158377 |      176 |     14395 | 76 | 2020-08-07 20:20:16 | 2020-08-11 06:00:56
(10 rows)


Pop up Instal PWA

Provide environment information

Whose documentation is this feedback for?
@ducanh2912/next-pwa
Describe the problem
How to implement pop up for instal pwa? Is there an example?
Expected behavior

Screenshots (if relevant)
No response
Additional information (if relevant)
No response

https://github.com/DuCanhGH/next-pwa/blob/master/examples/lifecycle/components/PWALifecycle.tsx

@dimasandriano have you successfully implemented the popup? If yes, please close the issue :) Otherwise, please describe what issue you are getting.

@DuCanhGH , I tried to implement this popup, but the wb.messageSkipWaiting() did not activate the new worker.
I have the following error in the console:
sw.js:1 Uncaught (in promise) DOMException: Failed to execute 'importScripts' on 'WorkerGlobalScope': The script at 'http://localhost:3000/workbox-8e51679a.js' failed to load.     at http://localhost:3000/sw.js:1:214     at new Promise (<anonymous>)     at n (http://localhost:3000/sw.js:1:77)     at c (http://localhost:3000/sw.js:1:468)     at http://localhost:3000/sw.js:1:547     at Array.map (<anonymous>)     at http://localhost:3000/sw.js:1:533     at http://localhost:3000/sw.js:1:579

@DuCanhGH , I tried to implement this popup but the messageSkipWaiting() method did not activate the service worker. I have the following error in the console:
sw.js:1 Uncaught (in promise) DOMException: Failed to execute 'importScripts' on 'WorkerGlobalScope': The script at 'http://localhost:3000/workbox-8e51679a.js' failed to load.
    at http://localhost:3000/sw.js:1:214
    at new Promise (<anonymous>)
    at n (http://localhost:3000/sw.js:1:77)
    at c (http://localhost:3000/sw.js:1:468)
    at http://localhost:3000/sw.js:1:547
    at Array.map (<anonymous>)
    at http://localhost:3000/sw.js:1:533
    at http://localhost:3000/sw.js:1:579

@DuCanhGH , I have to correct: It works like charm. I just had to listen to the message to skip in my custom worker.
self.addEventListener('message', (event) => {
	if (event.data && event.data.type === 'SKIP_WAITING') {
		self.skipWaiting()
	}
})


Name change for QHub and Qhub OnPrem

@tylerpotts pointed out that we should rename QHub Cloud and Qhub OnPrem. This ticket aims to host the discussion about the name change. This issue has high priority since it is a blocker for the documentation and the creation of the QHub landing page.

Steps for this:

Merge all PRs for the next release
Create PR for renaming
Profit


Missing Right click && Left click

hello sir, you was working great on this project but there are some butons are missing and they are 'Left Click' and 'Right Click'

Hey! Those are mouse buttons, not keyboard keys, so they do no emit a keyCode


Handwriting

Hi, I am loving the plug in and it helps me with the way I take notes, but handwriting on iPad feels weird and when writing it keep cutting and jumping around…is there something wrong or do I need som extra script? Thanks!

Hi! Are we talking about excalidraw.com or the Obsidian plugin?
Can you record a video (probably using a phone) to show what is happening exactly?

Hi, it’s the obsidian plug-in. I’m attaching a video but I don’t thinks it shows what I mean.
https://user-images.githubusercontent.com/70978930/182054187-0fb09d00-f8b9-43bd-839e-ee0527c73e49.MOV


Please don't ignore bug reports

What would you like to be added:
There a many issues on kubectl where people reported valid bug reports, which then became rotten by fejta-bot.
Here is one example I just run into: https://github.com/kubernetes/kubectl/issues/555. There never was a single real response from someone from kubectl, but nevertheless it got rotten and closed.
Such policies which simply ignore bug reports by default if no one finds time to look into them are probably worth changing.
Suggestion: block issues from being rotten when they are in the initial stage "Needs Triage".
Why is this needed:
A software which does not care about bug reports is not to be recommended for production use. Still I think kubectl is actually intended for being used in production.

We made some changes to the bot last year https://groups.google.com/a/kubernetes.io/g/dev/c/PAWC56nUWJY/m/ns8E51bLAAAJ but the reality is as the bot says,

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

A 5 year old issue is ~15 releases of Kubernetes. The project sees hundreds of new issues being opened every week and it is difficult for us to keep up with all of them. The bot closes older ones and important ones usually rise back up.

A software which does not care about bug reports is not to be recommended for production use. Still I think kubectl is actually intended for being used in production.

I understand you were frustrated with the issue you ran into but comments like this are unproductive. We certainly care about bug reports.
Kubernetes is an open source project and many of us are volunteers. If you or your employer are using Kubernetes in a production environment or even as a hobby, please consider joining us.
/close


[tests-only] [full-ci] refactored feature files

Description
This PR adds the refactoring of features file.

coreAPITrashbin
coreApiTrashbinRestore
coreApiVersions
coreApiWebdavDelete
coreApiWebdavEtagPropagation1
coreApiWebdavEtagPropagation2
coreApiWebdavLocks
coreApiWebdavLocks2
coreApiWebdavLocksUnlock

Related Issue

https://github.com/owncloud/QA/issues/804

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Technical debt
[ ] Tests only (no source changes)

Checklist:

[ ] Code changes
[ ] Unit tests added
[ ] Acceptance tests added
[ ] Documentation ticket raised:

E2E tests failed: https://drone.owncloud.com/owncloud/ocis/22928/90/1
:boom: To see the trace, please open the link in the console ...

npx playwright show-trace https://cache.owncloud.com/public/owncloud/ocis/22928/tracing/members-of-the-space-can-control-the-versions-of-the-files-alice-2023-6-5-12-01-25.zip
npx playwright show-trace https://cache.owncloud.com/public/owncloud/ocis/22928/tracing/public-link-for-space-alice-2023-6-5-12-01-35.zip


make parameter -m optional in vault commit

Solved by giving Default Vaule to - m and level in vault revert.
TODO - Add a default vaule to path as "./" after that functionality is added


AI is not defined exception

when the below code is called,
AppInsights.trackException(error, "", properties, null, AI.SeverityLevel.Warning)
Hitting the exception:
AI is not defined.
Other methods work. AppInsights.trackTrace, AppInsights.trackEvent.
The one difference I notice is, the methods which works do not have AppInsight defined objects like AI.
This is how I have initialized app insights:
import { AppInsights } from "applicationinsights-js";
AppInsights.downloadAndSetup({
instrumentationKey,
});

Thanks for reporting. It's a know issue #282. We will fix it in the next release (v.1.0.9).

I'm getting the same issue when calling
this.monitoringService.trackException(new Error(), null, null, null, AI.SeverityLevel.Error);
Is there still a bug? I've gotten around the error but using 4 instead of the Enum,

this is still not fixed on version 1.0.20 !
why is it closed ??


A way to pass "context" to FromReflect

We have a use case where it would be useful to pass data into FromReflect which is needed to perform the conversion: We have entity ids encoded as opaque u32s. Before converting a u32 back into an entity id we'd need to check that it actually points to a valid entity, or perhaps do additional checks. Doing that check would require a handle to the system that manages entities. It is currently not possible to pass that into from_reflect and we only get the raw u32.
We can't simply add a new argument for from_reflect...
pub trait FromReflect<C: ?Sized>: Reflect + Sized {
    fn from_reflect(reflect: &dyn Reflect, context: &C) -> Option<Self>;
}

...since from_reflect called from:

Generated code for patching enums
[T; N]::clone_reflect
EnumValue::patch
BTreeMap::insert
BTreeMap::remove
BTreeMap::clone_reflect
Vec::clone_reflect
Vec::push
"Via scalar" patch

So we'd have to also pass the new arg to those functions. We also cannot add generic parameters to those functions since Reflect needs to be object safe. Could make Reflect itself generic over the context but thats a large change that'd cause other changes pretty much everywhere.
Perhaps there is a more elegant solution that wouldn't require changing everything 🤔

I'm not sure we really need this after all. The use case we had internally turned out to be solvable in a different way (EntityId::invalid()). So since we don't need it and its unlikely there is a good way to solve it I think I'll close this for now.


Choose an official Display format for ColumnName

Please describe why this is necessary.
Today, column names have no "official" string representation. We probably need to choose one.
Describe the functionality you are proposing.
Possible choices include:

Print their Debug form, "[\"a\", \"b\", \"c\"]"

PRO: 100% unambiguous, trivial implementation
CON: Super annoying to read -- especially in the common case where the column name contains no special characters

Print their "lossy" form: "a.b.c"

PRO: Super easy to implement, super easy to read in the common case where the column name contains no special characters.
CON: Potentially lossy if any field names contain special characters (especially '.' or engine-specific escape characters that might "mask" a dot).

Choose some syntax for escaping field names, and use that. For example, "a.[b.c].d" or "a.\"b.c\".d"

PRO: Lossless and usually easy to read
CON: Have to choose an escaping syntax, which may or may not match what a given engine uses

I personally favor the third approach, using square brackets as the field escape character. Rationale:

Everyone wants easily readable the column names in the common case (rules out 1/), but we also want to be precise in the uncommon case (rules out 2/).
Square brackets in field names should be vanishingly rare, so we would seldom need to use our escaping capabilities (big plus for readability)
The SQL double quote escape syntax is hard to read as a string constant (the escape character must be itself escaped), and readability disintegrates entirely once both forms of escaping are in play at the same time, e.g. "a.\""\"b\"\"\".c".

Additional context
No response

3rd approach lgtm! and also wondering if we could rely on :? (Debug print) vs :#? (Debug alternative - usually more formatting/prettier)?

Do column names actually need to implement Display?  As zach suggests, maybe we could do just Debug? Then we could do "[\"a\", \"b\", \"c\"]" for :? and "a.[b.c].d" (or ColName("a.[b.c].d")) for :#?.
Also, if we think engines will want a way to go in and out of string representations, why not have a to_delimited_string or similar that can take either a delimiting style enum, or delimiter start and end chars, so they can get exactly what they want.
This might be over-complicating something that could be easy though, so I'm also okay for now to just go with option 3.

Do column names actually need to implement Display?

We need something because Expression implements Display. It could be implemented in terms of Debug for ColumnName, but whatever we show should ideally be human-readable (since that's the purpose of Display).

wondering if we could rely on :? (Debug print) vs :#? (Debug alternative - usually more formatting/prettier)?

AFAIK :#? is usually bulkier -- "prettier" in the "lots of indentation and newlines" sense. Probably not quite what we want for column names? But maybe we could have :? either do ColumnName::to_string_lossy (basically, path.join(".")), or option 3; while :#? falls back to whatever the derived alt Debug impl would have done?

if we think engines will want a way to go in and out of string representations, why not have a to_delimited_string or similar that can take either a delimiting style enum, or delimiter start and end chars, so they can get exactly what they want.
This might be over-complicating something that could be easy though

I think we'll find that ~every engine has a slightly different quirky approach to parsing column names... really not in kernel's charter to tackle that.
I was more thinking about something from "default engine" perspective -- we can provide a sensible default for engines that want it, which happens to also be useful internally for printing out column names and expressions that involve them.
It's also a potential way to send column names across the FFI boundary: kernel defines the parsing spec we understand, and engine is responsible to provide column names in that format. Requires memory allocation and parsing tho (so not my preferred approach).

Update: Some Delta table properties include column names, emitted in delta-spark format (backticks as escape character). So we're forced do do that unless we want to support two display/parsing styles, and https://github.com/delta-incubator/delta-kernel-rs/pull/445 did it.


This is a pretty cool find!

Have you raised this with GitHub at all? 😆 I don't really know where you'd submit it or if they even care about this (they probably don't) but it's worth trying maybe? Maybe not. 🤷♂

No, I haven't raised it with GitHub. I suppose the place to submit it would be the community discussions.
I'd be scared to get it fixed, though, since some services may take advantage of this. For example, Vercel does not include the protocol in the URL (foo.vercel.app instead of https://foo.vercel.app) when setting the repo's website, which is actually an invalid <input type="url"> value. So the question is: should the input become less strict (just make it type="text"), or should the backend become more strict and potentially break some things :thinking:
It seems like GitHub has anticipated invalid URLs though, since they must be doing some sort of error-catching when "linkifying" this value :shrug:


Local scope

css-loader allows us to use a local scope. Is the same thing possible with sass-loader?

Never mind, I figured out you can simply use :local and :global in your SASS code and you can use it exactly the way as described in the css-loader.


⚠ Queues has degraded performance

In d6a2fe2, Queues (https://app.masivo.ai/api/health/queues) experienced degraded performance:

HTTP code: 504
Response time: 15074 ms

Resolved: Queues performance has improved in bb52692 after 16 minutes.