Windows PowerShell should be the default terminal program on Windows

I'd like to recommend making PowerShell the default terminal program on Windows when the user hasn't configured their path (and when the COMSPEC environment variable hasn't been explicitly set).  Since PowerShell will now be the default terminal program in Windows 10 going forward (see blog post), I think it makes sense to make it the default in VS Code on Windows as well.
What do you think?

I absolutely agree with PowerShell being Default Term.

Agreed!!  Especially given that Windows 10 just announced that PowerShell would be the default shell offered in the Win+X poweruser menu and in Windows Explorer.

Yep.  Please.

Couldn't agree more with the other people.

Can't argue at all. Seems natural that it would follow the Windows default command line program.

I agree

@daviwil isn't COMSPEC set by default? Is it possible to tell if it's explicitly set?

Sounds like an great idea :)

I do agree.

@Tyriar looks like it is set to cmd.exe by default.  That was my understanding too but someone suggested that there are cases when it isn't set; I don't have any data to back that up.  Even though Windows 10 is going to default to PowerShell in the UI now, I haven't heard whether they'll change COMSPEC to point to PowerShell.  Either way, since PowerShell is far better than cmd.exe for developers, it makes sense to default to it in VS Code on Windows.
If the team decides it's better to stick with COMSPEC, I might see if users of the PowerShell extension would be OK with us auto-configuring the terminal to point to PowerShell on Windows.

I'm concerned about breaking people's workflow. The little experience I do have suggests that we may be by switching this. Specifically I recall it being very slow doing trivial commands and one of my most used commands before I jumped over to Linux wasdir/w which throws a scary looking error in PS.
By default on Windows does the post mean that powershell will appear first when you search for "cmd", with cmd.exe also matching the search? Because that at least gives people a very clear option, configuring the integrated terminal is a little less trivial. It also seems preferable to rather get the Windows team to make COMSPEC point to (64-bit) Powershell rather than updating every tool to work around it? Right now I believe it points at the 32-bit version of cmd.exe by default, even on 64-bit machines.
Having powershell update the config in the meantime makes total sense though (via a messagebox?).

What this means (from the MS post):

In an effort to bring the best command line experiences to the forefront for all power users, PowerShell is now the defacto command shell from File Explorer. It replaces Command Prompt (aka, “cmd.exe”) in the WIN + X menu, in File Explorer’s File menu, and in the context menu that appears when you shift-right-click the whitespace in File Explorer.

Regarding:

does the post mean that powershell will appear first when you search for "cmd", with cmd.exe also matching the search?

No. Folks should always be able to find cmd.exe and run it if they need/want to.

dir/w which throws a scary looking error in PS.

Yes. There are cmd.exe built-in commands that are not completely emulated in PowerShell e.g. dir (alias) works but not dir/w.  Folks have been learning PowerShell over the past decade and I think its time has come.  The equivalent of dir/w in PS is dir | format-wide or dir | fw if you prefer to type less.
Also, try to do this with your CMD prompt.  :-)

I agree too.

Agree 👍

Of course!!!!

I vote yes.

YES!

I haven't heard anything against this yet either here or from the team so I'd love to accept a PR and see how it goes in Insiders. Here are some recommendations on the implementation:

Don't point at powershell.exe in PATH as this points to the 32-bit version on 64-bit machines
Powershell should only be the default on Windows 10, use platform.isWindows, os.release() and process.arch to get whether it's 32/64-bit Windows 10 and point at correct path
Move TERMINAL_DEFAULT_SHELL_WINDOWS in /src/vs/workbench/parts/terminal/common/terminal.ts to /src/vs/workbench/parts/terminal/electron-browser/terminal.ts and generate the path there (for architectural reasons).
Point at the current Windows installation directory without any IO (env var?)

@Tyriar The file .../electron-browser/terminal.ts doesn't exist AFAICT.  Is the idea to create a terminal.ts in the electron-browser dir?

@rkeithhill yes this would need to be created, the reason being because you can't access require('os') or process from common/ as it needs to be able to run in a browser.

@Tyriar take a look at the above commit, which implements your requirements above (I think).
However, taking your direction literally, it does not call processes.getWindowsShell() and therefor does not take into consideration process.env['comspec'] to allow the user to override.
Is this what you intended?

Thanks @jchadwick, let's discuss in the PR.

To verifier: check that powershell is now the default terminal shell on Windows 10

Please update the documents: https://code.visualstudio.com/docs/editor/integrated-terminal

Thanks @ishitatsuyuki, created https://github.com/Microsoft/vscode-docs/issues/891


Show progress indicator when uploading files to browser

If the user chooses large files to upload, there's a delay of several seconds while the files are processed. During this display there's no indication that the upload is progress.
Ideally, the user should be able to show/hide a message or spinner when uploading starts/stops.

The delay was caused by an issue in my app that was unrelated to the image upload component. Once this issue was resolved, the upload happens almost immediately, so there's no real need for a progress indicator.


Compatibility Netbox v4

Hi if I am not wrong installation went fine but I can´t not see it in the gui or anywhere...
Netbox v4.0.5

Hi if I am not wrong installation went fine but I can´t not see it in the gui or anywhere...
Netbox v4.0.5

It works for me , no issues

Sorry for the late reply. Did not see any issue either.

Hi a python modle was missing for me "drf_yasg" after manualy installing it worked

This will be added to the requiremets in the future release


Make DateFieldPlugin timezone-aware

Today, DateFieldPlugin accepts and submits all dates as UTC (where the utc flag is set to true).
Ideally, we would want to accept and submit a timezone-aware format (ISO 8601) rather than exclusively UTC.

As long as when I use the UI, Tina uses my timezone and on save Tina converts the date to what format is more appropriated for its backend. If I'm GMT+2, I don't find 4PM translates to 2PM UTC.

As long as when I use the UI, Tina uses my timezone and on save Tina converts the date to what format is more appropriated for its backend. If I'm GMT+2, I don't mind if 4 PM GMT+2 translates to 2 PM UTC in the front matter.

It should.
The initial fix (using UTC universally) was, I believe, an over correction.  This change will save with your local timezone (using moment() instead of moment.utc(), convert to UTC when saving (via toISOString() utilizing built-in methods), and, when querying, you can take the value and convert back to a timezone-aware Date:
const myDate = new Date(data.date)
console.log(myDate.toLocaleDateString())

Unless you are accessing the data directly (through the markdown files), you'll never know that it was stored in UTC.  And if you do access it directly, converting should be straightforward (and something you would have to do anyway).


Move from callback based system to async/await

Using async/await the code would get much easier to read and thus to maintain.
I'll place a PR as basis for discussion.

Fixed in next release based on pr #65.


createst: Allow to exclude certain fields

Ticket: #4062
Link to redmine ticket: https://redmine.openinfosecfoundation.org/issues/4062
Ticket

This is a continuation of PR #997 by  @TharushiJay
exclude Non top-level fields fields

createst.py mytest mypcap --exclude-fields dest_port,tcp.ts_max_regions

Before:
 filter:
    count: 1
    match:
      app_proto: http
      dest_ip: <IP_ADDRESS>
      event_type: flow
      flow.age: 0
      flow.alerted: false
      flow.bytes_toclient: 495
      flow.bytes_toserver: 425
      flow.pkts_toclient: 4
      flow.pkts_toserver: 6
      flow.reason: shutdown
      flow.state: closed
      proto: TCP
      src_ip: <IP_ADDRESS>
      src_port: 54186
      tcp.ack: true
      tcp.fin: true
      tcp.psh: true
      tcp.state: closed
      tcp.syn: true
      tcp.tc_max_regions: 1
      tcp.tcp_flags: 1b
      tcp.tcp_flags_tc: 1b
      tcp.tcp_flags_ts: 1b
      tcp.ts_max_regions: 1

After:
filter:
    count: 1
    match:
      app_proto: http
      dest_ip: <IP_ADDRESS>
      event_type: flow
      flow.age: 0
      flow.alerted: false
      flow.bytes_toclient: 495
      flow.bytes_toserver: 425
      flow.pkts_toclient: 4
      flow.pkts_toserver: 6
      flow.reason: shutdown
      flow.state: closed
      flow_id:<PHONE_NUMBER>448498
      proto: TCP
      src_ip: <IP_ADDRESS>
      src_port: 54186
      tcp.ack: true
      tcp.fin: true
      tcp.psh: true
      tcp.state: closed
      tcp.syn: true
      tcp.tc_max_regions: 1
      tcp.tcp_flags: 1b
      tcp.tcp_flags_tc: 1b
      tcp.tcp_flags_ts: 1b
      timestamp: 2016-07-13T22:42:07.011401+0000

Thanks! Did a couple of tests, including (or so I hope) the comment by Jason from #997 (comment)
Do think we should add a bit more explanation in the README, though (see inline comment)

Thank you @jufajardini working on it

work continued in #2115


Uninstall for Mac

Pinokio looks to be a fantastic app, but it does install a lot of packages. Are there plans for an uninstaller?
Or, at least, how can I get to the logs that display while Pinokio is installing?

I second this. I am a video editor, not a programmer whatsoever. I think it should be as easy to uninstall completley as is it to install.


Fix in resource var AssignVariableOp Compute

Add check in AssignVariableOp in resource_var_ops.cc similar to XlaAssignVariableOp::Compute in xla_device_ops.cc

What is this fixing? I assume XLA only has this check because it uses DT_INVALID for uninitialized variables. I don't think we want to allow variables to be initialized with different dtypes than they were declared with.

What is this fixing? I assume XLA only has this check because it uses DT_INVALID for uninitialized variables. I don't think we want to allow variables to be initialized with different dtypes than they were declared with.

This change does not allow variables to be initialized with different dtypes than they were declared with. This only allows for the update to happen first by the AssignVariableOp, in which case it's still uninitialized.
It is possible that this scenario never occurs in Tensorflow. However, when using TF-XLA, this scenario is possible when the execution uses the 'fallback' path (which essentially invokes Tensorflow ops via partitioned_call).

This change does not allow variables to be initialized with different dtypes than they were declared with. This only allows for the update to happen first by the AssignVariableOp, in which case it's still uninitialized.
It is possible that this scenario never occurs in Tensorflow. However, when using TF-XLA, this scenario is possible when the execution uses the 'fallback' path (which essentially invokes Tensorflow ops via partitioned_call).

Can you add a test? I'd also suggest checking explicitly for DT_INVALID, to avoid making this check more lax for non-XLA (in which case the correct dtype should come from the original VarHandleOp).

Can you add a test? I'd also suggest checking explicitly for DT_INVALID, to avoid making this check more lax for non-XLA (in which case the correct dtype should come from the original VarHandleOp).

Explicitly checking for DT_INVALID means that an uninitialized variable can have a type other than DT_INVALID. That sounds incorrect (adding the check might lead developers to believe the check is required)
Regretfully we cannot reproduce the issue against an OOTB TF. We've made a change in the XLA compilation strategy such that the fallback path is always executed before the compiled path. This is what causes the AssignVariableOp to be executed before the XlaAssignVariableOp.

Explicitly checking for DT_INVALID means that an uninitialized variable can have a type other than DT_INVALID. That sounds incorrect (adding the check might lead developers to believe the check is required)
Regretfully we cannot reproduce the issue against an OOTB TF. We've made a change in the XLA compilation strategy such that the fallback path is always executed before the compiled path. This is what causes the AssignVariableOp to be executed before the XlaAssignVariableOp.

Do you know which part of TF-XLA is creating the resource (with a Var and the wrong dtype) but not initializing it?

Do you know which part of TF-XLA is creating the resource (with a Var and the wrong dtype) but not initializing it?

Do you know which part of TF-XLA is creating the resource (with a Var and the wrong dtype) but not initializing it?

There is no wrong type, unless you deem DT_INVALID a wrong type.

Do you know which part of TF-XLA is creating the resource (with a Var and the wrong dtype) but not initializing it?

There is no wrong type, unless you deem DT_INVALID a wrong type.

So it is DT_INVALID? And do you know where that's set?
The code as-is does include uninitialized variables with real dtypes set (on uninitialized variable->tensor()s). If you have two AssignVariableOps racing to initialize the same handle, one will create the resource and one will grab variable->mu() first, but it's not necessarily the same one, and if it isn't then the other will see the resource creator's "real dtype but not initialized" Var. I guess you could argue that this is bad and DT_INVALID is nicer, but they just seem like slightly different conventions to me, and setting the dtype carries a bit more information. So I don't understand the pushback on limiting this to ((DT_INVALID && uninitialized) || same_dtype) with a comment that this is XLA's convention.
If we don't want to accept that both conventions are OK, it seems like we should change one of them. So either set the variable's real dtype in XLA or always use DT_INVALID when creating the resource. Those sound OK but are probably larger changes.

So it is DT_INVALID? And do you know where that's set?
The code as-is does include uninitialized variables with real dtypes set (on uninitialized variable->tensor()s). If you have two AssignVariableOps racing to initialize the same handle, one will create the resource and one will grab variable->mu() first, but it's not necessarily the same one, and if it isn't then the other will see the resource creator's "real dtype but not initialized" Var. I guess you could argue that this is bad and DT_INVALID is nicer, but they just seem like slightly different conventions to me, and setting the dtype carries a bit more information. So I don't understand the pushback on limiting this to ((DT_INVALID && uninitialized) || same_dtype) with a comment that this is XLA's convention.
If we don't want to accept that both conventions are OK, it seems like we should change one of them. So either set the variable's real dtype in XLA or always use DT_INVALID when creating the resource. Those sound OK but are probably larger changes.

"So it is DT_INVALID? And do you know where that's set?"
it's set in GetVariableInfosFromInputs:
// This var is uninitialized for now.
*ptr = new Var(DT_INVALID);
"The code as-is does include uninitialized variables with real dtypes set"
Yes it does, but so does the code in XlaAssignVariableOp::Compute, which doesn't check for uninitialized variables with a type either. We choose for symmetry with existing code here, and rely on uninitialized variables to have DT_INVALID type.

"So it is DT_INVALID? And do you know where that's set?"
it's set in GetVariableInfosFromInputs:
// This var is uninitialized for now.
*ptr = new Var(DT_INVALID);
"The code as-is does include uninitialized variables with real dtypes set"
Yes it does, but so does the code in XlaAssignVariableOp::Compute, which doesn't check for uninitialized variables with a type either. We choose for symmetry with existing code here, and rely on uninitialized variables to have DT_INVALID type.

Let's only loosen the check here to the extent we need. It's OK if it's slightly different than XlaAssignVariableOp::Compute.

Let's only loosen the check here to the extent we need. It's OK if it's slightly different than XlaAssignVariableOp::Compute.

@allenlavoie Incorporated your comment. Please take a look.

@allenlavoie Incorporated your comment. Please take a look.


Add support for other range types

Closes #99

It's super-cool that we got this in! Thanks so much!


Broken spinning animation since Jenkins release v2.289.1

Hi,
Since upgrading to the latest Jenkins LTS (v2.289.1), the spinning animation for running builds is broken:

There is a second pair of circular arrows that is detatched from the central spinning-icon (orbits around it). Might be similar to this issue.  Removing this material theme and reverting to the jenkins default fixes.
Versions
jenkins: 2.289.1
simple theme plugin: 0.6
firefox: 89.1
chrome: 91.0.4472.77
Theme is new generated from http://afonsof.com/jenkins-material-theme/ today (28th June).

Same here...

me too

there's a workaround https://github.com/afonsof/jenkins-material-theme/issues/183#issuecomment-806518351

@sunjin110 @chrisyang0604 @dominikkv @holmesb you can use this repo: https://github.com/Jorg3Lucas/jenkins-modern-themes


[Feature] FrankerFaceZ Faces Support

Digging around on FFZ's website brought up a couple of useful links:
http://cdn.frankerfacez.com/ - Main CDN site
http://cdn.frankerfacez.com/script/donors.txt - List of donors (for donor icon support)
http://cdn.frankerfacez.com/channel/ - List of every channel with CSS files and a folder of the images
The CSS file could be parsed using patterns, or I could parse the HTML on the folder URL for the faces.
Man this would be so much easier if it had a JSON API.

Closing, see issue #77


Is it recommended for use in the production environment?

Is there anybody use japronto in the production environment?
Will there be many bugs?

it's very amazing but there is not any actual release available. the pypi package is also very outdated.
if you want to use it in production you have to heavily unit-test it. and prepare yourself for debugging and also extending it for your use case. and another major issue with all async frameworks is that there is not any stable async ORM available. there is some like GINO or DATABASES but all of them are quit new in comparison to sqlalchemy. so there would be a lot of work for you to do if you want to use it.

it's very amazing but there is not any actual release available. the pypi package is also very outdated.
if you want to use it in production you have to heavily unit-test it. and prepare yourself for debugging and also extending it for your use case. another major issue with all async frameworks is that there is not any stable async ORM available. there are some like GINO or DATABASES but all of them are quite new and immature in comparison to sqlalchemy. so there would be a lot of work for you to do if you want to use it.

What you said is very helpful. Thanks！

it's very amazing but there is not any actual release available. the pypi package is also very outdated.
if you want to use it in production you have to heavily unit-test it. and prepare yourself for debugging and also extending it for your use case. another major issue with all async frameworks is that there is not any stable async ORM available. there are some like GINO or DATABASES but all of them are quite new and immature in comparison to sqlalchemy. so there would be a lot of work for you to do if you want to use it.

What you said is very helpful. Thanks！

You're welcome.

Yes. No bugs that might be a concern


docs(office-hours): add new resource api

Added new info for next office hours

FYI @mffap here is the next PR


Feature: json_object_foreach

Hey @akheron,
Here's the code for json_object_foreach. I also included a similar macro for iterating over arrays: json_array_foreach.
I've written an initial version of the documentation for both macros and for the C89 compatibility ones. Since English is not my first language and I hadn't used reStructuredText before, I cannot really guarantee the quality of the documentation. I hope it's at least good enough to get started.
Let me know if you have any problems/questions about the code.

Otherwise looks good. I also still have to test on actual code these to see how they "feel" :)

Hmm, I'm kind of uneasy about the parameter order thing. The object, key, value order really is more consistent with the rest of the library, so it makes sense to use it, but on languages with actual foreach constructs the order is reversed. Perhaps we should name the macros something other than foreach to avoid confusion? Perhaps loop? iterate?
I also found an issue with the implementation I hadn't thought about before: you can reuse the variable names for two different loops in the same scope level when in C89 mode, but not when in C99 mode. This makes the C99 implementation incompatible with certain C89 code, and actually less flexible. I'm still thinking on how to fix this, without requiring C99 users to declare the loop variables.

Actually, json_object_iter_at() is a bit inefficient for this, because it also works for strings that weren't returned by json_object_iter_key(), but we could implement a faster function (or macro) in the spirit of json_to_object() and friends.

Um, where did my previous message go (before the json_object_iter_at() nonsense :)
What I meant to say was that we don't probably need an iterator variable at all, if we come up with a way to transform key back to an iterator. json_object_iter_at() already does this, but its performance is bad.

Fixed in a3079747313f8d4f2e3954b29a1fb7ee67cd5d2e (for objects only). This version doesn't need an iterator variable at all.


Canvas not rendering some elements

Some elements are not getting rendered when I generate the canvas. It's almost as if they are hidden - because the space where they should be is taken up, but the formatting and data isn't there.
Here's a fiddle to demonstrate: http://jsfiddle.net/p4oe8z36/5/
Anyone?

Using position: relative works for me.
http://jsfiddle.net/p4oe8z36/6/


Hidden label when using position: "top" on vertical line label

Version: 0.5.3
Using position: "top" results in a hidden label when using vertical line annotation.
Changing line 852 in the source code from
ret.x = (isFinite(line.m) ? line.getY(ret.y) : view.x1) - xa;
to
ret.x = (isFinite(line.m) ? line.getX(ret.y) : view.x1) - xa;
fixes this issue. Maybe just a typo?

I believe so, yes. Feel free to submit a PR.


Fix header item color contrast

Accessibility: Change .header--item link color from #777777 (WCAG fail) to #595959 (WCAG AAA pass).

Two issues so far:

Not sure, whether the contrast between active and normal is large enough... (4,22 per https://contrastchecker.com/)
You forgot to build the files.

Do you mean the contrast between the hovered state and the normal state? That doesn't need to conform to WCAG standards, just the text-background contrast.


fix typo on README

From 0.8.0, .save is replaced with .write_image. But, README is not fixed.

See #103 - I'll sort it all out today in a PR I'm working on for that :)


M1 tf.gather_nd: InvalidArgumentError: Multiple OpKernel registrations match NodeDef at the same priority

Click to expand!
Issue Type
Bug
Source
source
Tensorflow Version
2.9.2
Custom Code
Yes
OS Platform and Distribution
MacOS Monterey 12.5
Mobile device
No response
Python version
3.10
Bazel version
No response
GCC/Compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current Behaviour?
tf.gather_nd should properly have a gradient of shape (2,6) in the code below connecting the (very bad and toy) loss to the defined variable. However, it appears that the kernel sets the same priority for some operations and cannot resolve the graph.

Furthermore, I have observed the following *extremely weird* behavior:

If you change the code to `indexed_v = tf.gather_nd(v + 0.0, indices)`, there is no error.

I have also confirmed that this issue does not occur if I go back to a much older version of tensorflow: `2.4.0-rc0`

Lastly, for reproducibility, I set up my virtual environment with the following executions

>>> conda create -n tf_bug_test python=3.10
>>> conda activate tf_bug_test
>>> conda install -c apple tensorflow-deps
>>> python -m pip install tensorflow-macos

Note that if I install tensorflow-metal, the same error will happen but it will specify the computation is on GPU instead of CPU.

Standalone code to reproduce the issue
import tensorflow as tf
import numpy as np

time = 100
products = 6
var_dim = 2

which_parameter_to_grab = np.random.binomial(1, p=0.1,size=(time, products))
v = tf.Variable(tf.ones((2,products)),name="test",dtype=tf.float32,shape=(var_dim,products))
# generate random indices for grabbing a parameter
indices = np.stack(
    (which_parameter_to_grab, np.tile(np.arange(products)[None, :], (time, 1))),
    axis=2,
).astype(int)

opt_fcn = tf.keras.optimizers.Adam(learning_rate=1e-3)

with tf.GradientTape() as tape:
    indexed_v = tf.gather_nd(v, indices)
    loss_val = tf.reduce_mean(tf.math.square(indexed_v))
grads = tape.gradient(loss_val, [v])

Relevant log output
Traceback (most recent call last):
  File "/Users/ryansaxe/Documents/bug_reproduce.py", line 21, in <module>
    grads = tape.gradient(loss_val, [v])
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/eager/backprop.py", line 1100, in gradient
    flat_grad = imperative_grad.imperative_grad(
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/eager/imperative_grad.py", line 67, in imperative_grad
    return pywrap_tfe.TFE_Py_TapeGradient(
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/eager/backprop.py", line 157, in _gradient_function
    return grad_fn(mock_op, *out_grads)
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/ops/array_grad.py", line 736, in _ResourceGatherNdGrad
    ref_shape = gen_resource_variable_ops.variable_shape(ref, indices.dtype)
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/ops/gen_resource_variable_ops.py", line 1341, in variable_shape
    _ops.raise_from_not_ok_status(e, name)
  File "/Users/ryansaxe/miniforge3/envs/tf_bug_test/lib/python3.10/site-packages/tensorflow/python/framework/ops.py", line 7164, in raise_from_not_ok_status
    raise core._status_to_exception(e) from None  # pylint: disable=protected-access
tensorflow.python.framework.errors_impl.InvalidArgumentError: Multiple OpKernel registrations match NodeDef at the same priority '{{node VariableShape}}': 'op: "VariableShape" device_type: "CPU" constraint { name: "out_type" allowed_values { list { type: DT_INT64 } } }' and 'op: "VariableShape" device_type: "CPU" constraint { name: "out_type" allowed_values { list { type: DT_INT64 } } }'
	 when instantiating VariableShape [Op:VariableShape]

Hi @RyanSaxe, I tried to replicate given issue, but I am getting different error.Could you take look at error and help us in reproducing this issue.
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
  File "/Users/gadag/tensorflow-metal/lib/python3.9/site-packages/tensorflow/python/util/traceback_utils.py", line 153, in error_handler
    raise e.with_traceback(filtered_tb) from None
  File "/Users/gadag/tensorflow-metal/lib/python3.9/site-packages/tensorflow/python/framework/ops.py", line 7164, in raise_from_not_ok_status
    raise core._status_to_exception(e) from None  # pylint: disable=protected-access
tensorflow.python.framework.errors_impl.NotFoundError: No registered 'ResourceGatherNd' OpKernel for 'GPU' devices compatible with node {{node ResourceGatherNd}

Hi @RyanSaxe, I used python -m pip install tensorflow-metal to get Tensorflow on Mac. Thank you!

Now that this has been reopened, how can I help here. From what I understand:

You have confirmed that this code is causing an error on specifically M1 hardware
My system and your system have slightly different errors but they are clearly related as they both have to do with the kernel related to this specific operation

I cannot seem to produce the error you shared on my system, but any error here is a problem as it is not performing as intended. Please let me know if I can provide more information to help in the resolution of this bug.

To add my voice, I'm having the same problem with the latest  tensorflow-macos==2.12.0 and tensorflow-metal==0.8.0, MacBook Air M1 2020, Ventura 13.4, python 3.10.11:
import tensorflow as tf

# with tf.device('/device:cpu:0'):  # works fine
with tf.device('/device:gpu:0'):  # crashes
    x = tf.Variable(tf.random.normal((3, 3))) # crashes on GPU
   #  x = tf.random.normal((3, 3)) # works on both CPU and GPU

idx = tf.random.uniform((2, 2), minval=0, maxval=3, dtype=tf.int32)
tf.gather_nd(x, idx)

Crashes with:
InvalidArgumentError: Cannot assign a device for operation ResourceGatherNd:
Could not satisfy explicit device specification '/job:localhost/replica:0/task:0/device:GPU:0'
because no supported kernel for GPU devices is available.

Changing the device to device:cpu:0 makes the example work fine. FWIW, tf.gather works fine on both GPU and CPU.
Also, the issue is only with variables allocated on GPU. Using a non-variable Tensor also works fine on both devices.

Hi,
The issue seems to be resolved with the latest Tensorflow version.
You can now install Tensorflow package on M1 from 2.13 using pip install Tensorflow.
Below is the command to install Tensorflow package, once it is installed, code mentioned in the issue runs without any error.
!pip install tensorflow==2.13rc1

In colab, with CPU runtime the code is getting executed without any error, attached gist here for reference. In M1 mac, I'm getting different error. Note: I have installed tensorflow-metal to use GPU in my instance.

Did you find a solution? @sachinprasadhs installing tf 2.13rc1 did not help me.


travis: timeouted on Python 2.6

 Issue by jirikuncar
Thursday May 15, 2014 at 11:08 GMT
Originally opened as https://github.com/jirikuncar/invenio/issues/243

travis tests take more than 50 minutes on Python 2.6

--
See https://github.com/jirikuncar/invenio/pull/240#issuecomment-43178282

can we close this issue?


Add Quill as an exported object to typings file

This is a fix for https://github.com/zenoamaro/react-quill/issues/361.
The problem is that when trying to import Quill from 'react-quill' in Typescript, it complains that react-quill has no exported member named Quill. Looking at the typings file, this is true. This fix adds Quill as an exported member to the typings file.

Can a Typescript person confirm this?
Also maybe we could add some kind of acceptance tests for TS to check basic usages compile.

Hello, using 1.3.0.
importing it like this import * as ReactQuill from 'react-quill'; and have the following error:
JSX element type 'ReactQuill' does not have any construct or call signatures.

same issue


correct VND's pattern

Hi lukazh, looking at the pull request in more detail, I think what you're doing here is tying a default currency to a locale, but unfortunately, that doesn't make sense in the context of the library (as sometimes, a locale may support multiple "default" currencies).
For your use case, we suggest you just maintain this map elsewhere in your code and after checking the user's locale, you just supply the relevant currency into the format function.
Thanks,
The OSREC Team


Updated depreciated stage declarations

Jenkins depreciated the form of the stage step that did not accept a block argument.  Tested as working, compiled fine.
I'll do the same changes to the rock64 Jenkinsfile, and also add parameterized builds to it, as two separate PRs... probably tomorrow. I'll wander around all the android ones and fix the depreciated stage stuff up if you want that done also...
In other news, I've given up on Digital Ocean for now... I spotted a much cheaper and more powerful setup with the guys you were with before... Scaleway... €5.99 for 4CPU/4GB RAM/50G+50G SSD vs US$10 for the 1CPU/1GB/30GB SSD from Digital Ocean... scaleway ends up cheaper after conversion rates... wish they'd actually listed that on their pricing pages... morons! I do like DigitalOcean more for the excellent built-in dashboard and fact you can change the cpu and ram of a VPS dynamically... you don't have to rebuild it... so looks like I'll have to add Prometheus to it ;)

Oh, and ?w=1 on the end of the url to see the changes minus github going loopy over whitespace changes... since this file uses spaces instead of tabs for indents...
https://github.com/ayufan-pine64/linux-build/pull/29/files?w=1


Tests do not match the instructions

Understanding Uninitialized Variables
In the tests it says:

a should be defined and have a value of 6

while in the instructions, it is asked to put in a value of 5 for a
Similarly, there is mis-match in the tests' description and instruction for variables b and c also
Screenshot

Hi there,
Thanks for reporting this issue. This is intentional.
Have a look at the instructions and the code already in the editor and then the tests.
Try looking through our forum for help with a specific challenge and any coding assistance.
Happy Coding!


[v2.10] General QOL improvements to release testing tests

Issue:  General QOL updates to provisioning test cases

Problem

During latest round of release testing, there were miscellanous items found that could use some quality of life enhancements. Nothing in particular was isolated, just general things seen while testing - hence the PR reflects that.
Solution

Updated the following:

Updated misc. code readability
Have airgap tests use a standard user when provisioning downstream clusters
Split S3 snapshot into it's own test file - snapshot_s3_restore_test.go
Remove RKE1 delete test file - consolidate it into delete_cluster_test.go along with RKE2 and K3s
Clean up snapshot test files to better determine which cluster type is being used when the tests are invoked

Testing

Engineering Testing
Automated Testing

Jenkins jobs will be provided to reviewers offline.

Backports and forwardport will be open once code freeze is lifted.


add execute bit to contrib/report-issue.sh

LGTM
but wondering if we actually use this script somewhere, I think it was only created as a work-in-progress
/cc @vbatts

the change LGTM, but as @thaJeztah pointed out, is there anyone using this script and is it up to date?

I have no idea if anyone actually uses this. I would reckon probably not.
On Tue, Feb 16, 2016, 06:03 Antonio Murdaca<EMAIL_ADDRESS>wrote:

the change LGTM, but as @thaJeztah https://github.com/thaJeztah pointed
out, is there anyone using this script and is it up to date?
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/pull/20352#issuecomment-184629993.

Job: Docker-PRs-WoW-TP4 FAILED:

---
	      56	docker-1.11.0-dev.exe.md5
  0%
100%
	    New File  		      88	docker-1.11.0-dev.exe.sha256
  0%
100%
	    New File  		  27.1 m	docker.exe
  0.0%
  3.6%
  7.3%
 11.0%
 14.7%
 18.3%
 22.0%
 25.7%
 29.4%
 33.0%
 36.7%
 40.4%
 44.1%
 47.7%
 51.4%
 55.1%
 58.8%
 62.5%
 66.1%
 69.8%
 73.5%
 77.2%
 80.8%
 84.5%
 88.2%
 91.9%
 95.5%
 99.2%
100%

------------------------------------------------------------------------------

               Total    Copied   Skipped  Mismatch    FAILED    Extras
    Dirs :         1         0         1         0         0         0
   Files :         4         4         0         0         0         0
   Bytes :   54.39 m   54.39 m         0         0         0         0
   Times :   0:00:00   0:00:00                       0:00:00   0:00:00

   Speed :<PHONE_NUMBER> Bytes/sec.
   Speed :            65275.868 MegaBytes/min.
   Ended : Tuesday, February 16, 2016 10:58:08 AM

+ ec=0
+ set +x
INFO: Linking the built binary to /d/CI/CI-5b6
---

Well, let's merge this and see if we want to keep this script after that
@glensc are you using this script?

@thaJeztah nope!


Should allow clearing slug (UpdateUser with empty slug)

As-is
Currently if the user does not provide slug when editing profile (for example, just changing display names),
the operation will be rejected.
To-be
Change UpdateUser

When slug is exactly an empty string,  clear the slug (For edit name dialog)
When slug argument is not provided at all, leave it as-is. (For avatar dialog)

trying to resolve this issue


FIX: Output NaN columns for CompCor on failure

Closes #1433.
Changes proposed in this pull request

Use failure_mode parameter added nipy/nipype#2819 to produce columns of NaNs when SVD fails to converge.

Documentation that should be reviewed

Should we add a warning to the reports when the column is all NaNs?

I think that's probably a good idea, but haven't gotten around to it. I think a small warning box just below the BOLD masks figure would make the most sense.
Perhaps text like:
Warning: [at]CompCor components could not be estimated, due to a linear algebra error.
While not definitive, this may be an indication of a poor mask. Please inspect the (magenta|blue)
contours above to ensure that they are located in the white matter/CSF.

Ref poldracklab/niworkflows#268

@oesteban If you could review the logic of the new patched interfaces, that's the most likely place to need fixes. I added a snippet that will only show up as a comment so we can verify this in the CircleCI artifacts.

I wonder whether after 10 failures we should call it an error (i.e. always raise in that case)

We already do that. The point is to give it a few chances to work and gracefully fail.


DB performance issues causing lots of small charges

Describe the bug
Hello,
I got symptoms of #323 again, hundreds of small charges, on Version: 1.14.3 . It seems to be related to a database performance problem I am having (rebuilding my RAID).
To Reproduce
Steps to reproduce the behavior:

Make Postgres really slow
Charge
Observe many charges being created in grafana

Expected behavior
Would be nice though if a temporary database performance problem wouldn't result in 100's of small charges, especially since teslamate knows that the last known state was charging and the location didn't change.
Relevant entries from the logs
#PID<0.25570.4> was at location:
    :prim_inet.recv0/3
    (postgrex) lib/postgrex/protocol.ex:2837: Postgrex.Protocol.msg_recv/4
    (postgrex) lib/postgrex/protocol.ex:1879: Postgrex.Protocol.recv_bind/3
    (postgrex) lib/postgrex/protocol.ex:1771: Postgrex.Protocol.bind_execute/4
    (db_connection) lib/db_connection/holder.ex:316: DBConnection.Holder.holder_apply/4
    (db_connection) lib/db_connection.ex:1255: DBConnection.run_execute/5
    (db_connection) lib/db_connection.ex:1342: DBConnection.run/6
    (db_connection) lib/db_connection.ex:539: DBConnection.parsed_prepare_execute/5
18:36:40.972 [error] GenStateMachine :"1" terminating
** (DBConnection.ConnectionError) tcp recv: closed (the connection was closed by the pool, possibly due to a timeout or because the pool has been terminated)
    (ecto_sql) lib/ecto/adapters/sql.ex:629: Ecto.Adapters.SQL.raise_sql_call_error/1
    (ecto) lib/ecto/repo/schema.ex:656: Ecto.Repo.Schema.apply/4
    (ecto) lib/ecto/repo/schema.ex:262: anonymous fn/15 in Ecto.Repo.Schema.do_insert/4
    (teslamate) lib/teslamate/vehicles/vehicle.ex:795: TeslaMate.Vehicles.Vehicle.insert_charge/3
    (teslamate) lib/teslamate/vehicles/vehicle.ex:459: TeslaMate.Vehicles.Vehicle.handle_event/4
    (stdlib) gen_statem.erl:1161: :gen_statem.loop_state_callback/11
    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
18:36:41.621 car_id=1 [info] Start / :online
18:37:11.007 car_id=1 [info] Charging / SOC: 68%
18:38:24.239 [error] Postgrex.Protocol (#PID<0.3515.0>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.25652.4> timed out because it queued and checked out the connection for longer than 15000ms
#PID<0.25652.4> was at location:
    :prim_inet.recv0/3
    (postgrex) lib/postgrex/protocol.ex:2837: Postgrex.Protocol.msg_recv/4
    (postgrex) lib/postgrex/protocol.ex:1879: Postgrex.Protocol.recv_bind/3
    (postgrex) lib/postgrex/protocol.ex:1771: Postgrex.Protocol.bind_execute/4
    (db_connection) lib/db_connection/holder.ex:316: DBConnection.Holder.holder_apply/4
    (db_connection) lib/db_connection.ex:1255: DBConnection.run_execute/5
    (db_connection) lib/db_connection.ex:1342: DBConnection.run/6
    (db_connection) lib/db_connection.ex:539: DBConnection.parsed_prepare_execute/5
18:38:24.239 [error] GenStateMachine :"1" terminating
** (DBConnection.ConnectionError) tcp recv: closed (the connection was closed by the pool, possibly due to a timeout or because the pool has been terminated)
    (ecto_sql) lib/ecto/adapters/sql.ex:629: Ecto.Adapters.SQL.raise_sql_call_error/1
    (ecto) lib/ecto/repo/schema.ex:656: Ecto.Repo.Schema.apply/4
    (ecto) lib/ecto/repo/schema.ex:262: anonymous fn/15 in Ecto.Repo.Schema.do_insert/4
    (teslamate) lib/teslamate/vehicles/vehicle.ex:795: TeslaMate.Vehicles.Vehicle.insert_charge/3
    (teslamate) lib/teslamate/vehicles/vehicle.ex:459: TeslaMate.Vehicles.Vehicle.handle_event/4
    (stdlib) gen_statem.erl:1161: :gen_statem.loop_state_callback/11
    (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
18:38:25.922 car_id=1 [info] Start / :online

Screenshots
See #323
Data
teslamate_data.txt
Operating environment

TeslaMate Version: 1.14.3
Type of installation: Mixed
OS: Fedora 31

Relevant: the default timeout was increased to 60 seconds and is configurable (via DATABASE_TIMEOUT) with the 1.16 release.


Wildcard Searching first names

To add to help:
Asterisks mean "any number of non-specified characters". the other characters that follow the asterisk are treated as if there was another asterisk at the end.
If first in the name, finds names that contain the letters after the first asterisk, e.g
*nn finds Ann, Yvonne, Minnie, Joy Anna, etc.
If later in the name, asterisk finds any number of characters (including spaces) or none: starting with the sequence up to the first asterisk eg
Ann* finds Ann, Anna, Anna Marie, etc.
Multiple astarisks can be used, e.g.
Ann*R finds Ann R.,  Ann R, Anna Marie, Annmarie, Annie R, Ann Jervis.
If you want to find where an asterisk is used in the original document, tick the 'Exact match on first names" box.
Capitalization is discregarded.

Opened in error, so closing


chore(main): release 1.1.0

:robot: I have created a release beep boop
1.1.0 (2024-04-09)
🚀 Features

add ubuntu-releases action (3602910)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/vicamo/actions-library/releases/tag/v1.1.0 :sunflower:


Use Access Tokens and More Shortcuts

Updating the plugin to use Access Tokens instead of password auth with crumb tokens.  Also added some additional error messages to deal with scenarios where an invalid job name was entered and added shortcut functions for build with parameters, describe and last build.  I've added support for displaying build parameters for workflows as well and removing aliases.

Split to own package

@zack-hable added you as a contributor. Thanks!


Add new docs page 'Changing rich text representation'

Add a new docs page, 'Changing rich text representation', which describes how to subclass the Format class in order to customise an image's representation in rich text.

Looks good to me!


[✨] Improve Runtime performance and Memory Footprint

Is your feature request related to a problem?
Qwik's strength lies in startup performance and delaying work as much as possible. Delaying, however, is not avoiding. Eventually, work needs to be done.
When it comes to performing work, especially, regarding list data: adding, removing, updating, and re-organizing DOM elements, Quick is only faster than React but slower than Angluar and Vue, and much slower than Svelte.
js web frameworks benchmark
Additionally, Qwik has a significant memory footprint and is by far the worst in this category based on the js web frameworks benchmark.
I am worried about how Qwik would perform in situations with large DOM or where DOM needs to be manipulated a lot. Think of a search result page where toggling filters can result in significant changes. Think of data grids, diagrams, and maps.
Would I struggle to make these kinds of use cases snappy using Quik?
Are runtime performance and memory usage on the radar?
Describe the solution you'd like
The ideal would be a combination of the startup characteristics of Qwik with the runtime characteristics of Svelte.
Quik already has a lot of knowledge of the components we write. Would anything prohibit us from having the same style of compile step that other web frameworks have to achieve more surgical DOM updates?
Describe alternatives you've considered
—
Additional context
No response

That's exactly what's happening in the build/v2 branch :)

Closing this to keep the issue list limited, since we can't do anything more right now. Feel free to follow along in the v2 channel on discord


Overhaul of coin selection for mixing

DoAutomaticDenominating logic should be:

check pre-conditions,
check denominations and collaterals,
try using existing queue,
try creating new queue.

Currently coins are selected too early and conditions are not quite right.
This is partially due to the fact that we no longer merge old inputs
and thus we are no longer able to calculate thresholds correctly using
SelectCoinsDark. To do this in a proper way we should use balances i.e.
GetAnonymizableBalance etc. Another issue is that we should take fee into
account when we calculate such balancies and when we select coins we should
ask for a correct denom, not just the smallest one as a minimum value.
And finally there are two bugs.
SelectCoinsGrouppedByAddresses: shouldn't push items smaller than
the smallest denom into resulting vector.
SelectCoinsDark: should allow small inputs in where "small" is defined
by nValueMin, not by some arbitrary amount.

Updated, please review and test.

fyi: I've been mixing with this and it works for me

fixed and rebased

utACK for PR


Custom Background color

Is there a way to set custom background color?
I tried
self.keyboardControls.backgroundColor = [UIColor blackColor];
but nothing happened

+1


chore(ci): remove gradle noise

🧭 What and Why
When using the tooling properly, with yarn cli or apic, there is no need for all the extra gradle files everywhere, which are not needed.
Make better use of the setup-gradle action to reuse the cache from the main branch but avoid recreating one per branch, and do the validation directly instead of using another action.
Also remove the custom yarn cache to try because it seems to be the exact same as the default action

so nice, playground still works right?

for java yes, I don't think it ever work for kotlin


JWT authentication fails in a load-balanced environment

Hi, I'm posting a Postgrest issue here even though I'm not sure the problem lies in Postgrest. Please apologize if the setup I'm going to describe is already battle-tested and the problem is elsewhere.
Here is it:
               client
                 |
            load-balancer
           /             \
    postgrest1         postgrest2
          \               /
              PostgreSQL

We've installed several postgrest instances to distribute the load from clients and provide a hot failover. The load-balancer uses round robin, so a given client can make requests to either one of the postgrest instances during the same session.
Here is the problem: the JWT sent together with the client's request seems to fail randomly in this setup (we receive a 401 unauthorized response), while it works flawlessly when there is a single postgrest instance.
I'm surprised, because I thought postgrest instances were stateless, and stored everything in the underlying Postgres db - including tokens. Am I missing something?

@fzaninotto make absolutely sure you started both postgrest instances with the same --jwt-secret secret parameter

That was it! Thanks a lot for your help.
Is this already documented somewhere? I may not have seen it. If it's not, I suggest you add a simple mention of it close to the work "load-balanced" so a simple search brings to the solution.


Typo in method name

https://github.com/yajra/laravel-datatables-editor/blob/master/src/DataTablesEditor.php#L112
    /**
     * @return string
     */
    protected function getUseFriendlyErrorMessage()
    {
        return 'An error occurs while processing your request.';
    }

Should be getUserFriendlyErrorMessage

Yes, definitely a typo. Can you send a PR to fix the method name? A possible breaking bug fix but I guess it can be considered to be just bug version bump. Thanks!


Improve look and feel by using Haiku styled icons

https://dev.haiku-os.org/ticket/9497 describes the required changes.

I've updated the look and added all the necessary hvif icons in a post on my blog here: http://haikudou.blogspot.com/2015/01/a-haiku-minesweeper-update-and-theme.html

For ease of reference, my original list of desired features from the original ticket (updated as needed) was as follows:

Tri-Edge AI has done a Minesweeper game as part of the Google Code-In 2012: http://www.google-melange.com/gci/task/view/google/gci2012/7959245
After downloading this, compiling it, and testing it out in Haiku, I felt like seeing if I could give it an improved Haiku look and feel, and also had a number of ideas on how it might be improved as a demo/game for Haiku.
Instead of using PNG image resources, I thought we could use HVIF icons along with the native Haiku API to draw the game board and graphics in the game. This should allow us to scale the game board to make it more easily seen for the visually impaired, reduce the size of the over-all package, and further serve as a good demo of using the Haiku API to its fullest.
The smile HVIF icons come from Zumi's emoticon pack: http://zumi.xoom.it/myhaiku/emoticon/index.html

3 for the "on-click" face

12 for the game start and default face

18 for the game over "you lose" face

19 for the for the game finished "you win!" face

The game timer icon comes from Zumi's btoolbar icon pack: http://zumi.xoom.it/myhaiku/btoolbar/ , it's the "document open recent" icon.
I've created the custom mine, flag marker, question mark, remaining flags icon, and explosion hvif files. They can be found linked in the blog post in the above comment.
All the numbers are simply normal colored text using the Deja-vu Sans font included with Haiku.
(I had tried to stick close to Pulkomandy's recommendation of using the colors from http://haiku-os.org/files/downloads/2007-03-20_haiku-color-palette.png , but had to stray from it for visual quality. I stuck much closer to it in the original mockup designs that you can see on the original trac ticket, but I feel the design is much improved by taking more artistic license with the color scheme.)
Feedback is welcome. I don't have the programming skills to implement this myself yet, but I'm more than happy to help with the design, icon work, etc.

As I also wrote on my original blog post for my first mockups, I question the inclusion of some of the features included in this if it were going to be a bundled demo game.

I also question the need for some of the added features in Tri-Edge AI's version of the game, since the goal here is to basically develop a modern Haiku version of the original BeOS Minesweeper game that was bundled with the OS. That game lacked animations, sound effects, etc... and as such for a small bundled application I think those things are too much for the intended goal. I'd strip it down to the more basic functionality and put the extra work into smoothing the aesthetics in the Haiku style, giving it some flexibility of the type you find in the Layout Kit (leveraging the API and native widgets, font rendering, etc rather than brute forcing everything with images), the use of HVIF vector icons for saving file size and allowing flexibility in displaying the images, and so on. Make it really illustrate what the Haiku API and associated technologies have to offer while still sticking very close to the functionality and feel of the original BeOS game.
(I'm not trying to knock some of the additions. For instance I think the little explosions are cute, and sounds could be neat... but think they're just overkill for a basic demo/game and too much of a departure from the original for a bundled demo/game.)

That about sums up what I'd really like to see in the app. A small, fast, streamlined, hvif and layout based native feel app that still matches the feeling of playing the original.

Is that a mockup, or a prototype?

Just a mockup. I took a screenshot of the default app, created the needed hvif icons, and merged in various actual Haiku widgets by editing them in from screenshots of other apps, to try to give it a bit more of a "Haiku" feel.
As I said before, I (currently) lack the skills to actually code such a thing up myself.


I want to use a plugin in my Ionic Angular application when the user closes the app from the background.

Could you share full details of the application key? I am a little confused because this program will require several users.

Purchased keys allow infinite users,  the key is bound to your applicationId.

In pricing plans, I can't see any limitless users.

It goes without saying.  It’s impossible for this plug-in to do device-based pricing since the plug-in doesn’t validate keys remotely.  This plug-in has no idea how many users you have.

Also, if I purchase this plugin, can I use all of its features?

The new Polygon geofencing feature requires a separate purchase.

What’s difficult?  Have you tried?

Is there a trial period API key so that I can ensure everything is operating as per my requirements?

No.  Trial keys are impossible (since the plug-in doesn’t validate keys remotely.
That’s why the plug-in is fully functional in debug builds so you can try before you buy (as noted at the top of the GitHub readme)


The leader's rapier!

About the PR
The leader's rapier!

It has:
Slashing blow: 20
Stabbing: 30
Strikes 1.5 times per second.
It is purchased for 25 points on the rack with the equipment of the squad leader.
Holds 15 ounces of any substance.
Copyright is indicated.

Why / Balance

Media

[ ] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Unfortunately we are not looking to port TGMC content at the moment, the focus is primarily if not entirely on CM13 content until the game is considered ported.
Additionally,

These damage values don't fit the current game balance.
Reflect chance has no use in this game.
Weapons should not have solutions/injectors on hit.


Ability to provision whole Kubernetes namespace

Is your feature request related to a problem? Please describe.
One of the strengths of Akash is that it builds on Kubernetes ecosystem. However currently only generalized version of "container" notion is supported in Akash SDL. I understand that it eventually enables to plug different backend then Kubernetes and still provide "container" resource so I could be running my application on different backends without rewriting my app.
However - Kubernetes has become such a rich and adopted ecosystem that it would be nice if Akash would expose Kubernetes-centric resources+semantics via Akash SDL. This would open up a way to tap into rich Kubernetes applications ecosystem.
Describe the solution you'd like
If Akash would allow me to allocate whole Kubernetes namespace I would be able to deploy Kubernetes applications into Akash. That would be a gamechanger. For example - I am currently working as an architect for enterprise application which is running on AWS but its basically a Kubernetes application. With this feature, I would allocate one Kubernetes namespace into Akash, one into AWS, I would deploy  Yugabyte DB into both sites - yugabyte automatically replicates data between the sites. Then I would deploy my application containers into that namespace. With this setup I would be running from the Akash site leveraging cheap resources and only in case of a problem with Akash service provider I would seamlessly switch to AWS.
This is just an example of such hybrid deployment but generally having such feature would open up access to vast ecosystem of Kubernetes based application and middleware.

Hi @remeq, thanks for the request and use-case!
If it helps at all, all services in a lease lease currently run in a single, unique namespace.

Hi @remeq, thanks for the request and use-case!
If it helps at all, all services in a lease lease currently run in a single, unique namespace.

Hi @boz, the problem is that Kubernetes applications work with plethora Kubernetes objects and abstractions. For example Kubernetes application needs to have control over management of Ingress objects, define new paths, services, jobs etc.
I understand that it breaks the way how Akash currently accounts for the service consumption and probably breaks bunch of other things but I think it is the key for widespread adoption as for complex applications it is really probably the only model that is widely adopted in the industry for cloud native apps (other being proprietary AWS/GCP/Azure environments which too allows me to build complex applications).

Also one more impression. As long as Akash only allows isolated containers there is not much of a competitive advantage over other node-focused platforms like Flux etc. The ability to allocate whole "colocated" datacenter-scoped environment is where the key selling point for Akash is for me as an application developer compared to other platforms. However in order to fully exploit it Akash would have to reinvent a lot of Kubernetes constructs on the Akash SDL level or would have to implement something like the feature I requested in this thread.

Thanks @remeq.  It's a good idea; we'd have to be mindful of the implications for multi-tenanted security, tho.
Will refer our incoming head of product to this.  Thanks for sharing your thoughts.

@boz Thanks, also if Akash would be willing to cooperate, the company I work for would be opened to really do the deployment the way I described. It would make a nice case study for the Akash project. I am sure many projects would be able to replicate that pattern. So if you conclude it makes sense, you can reach me out anytime.

This is a brilliant idea and I think this project https://github.com/loft-sh/vcluster might be one of the key components in achieving it.


yii\helpers\Url isRelative will return false when url is relative

in yii\helpers\BaseUrl
    public static function isRelative($url)
    {
        return strncmp($url, '//', 2) && strpos($url, '://') === false;
    }

strncmp($url, '//', 2) will return 0 when the url is start with '//'

// not relative URL. It is absolute.

oh, I get it now. I thought this function is used for validate protocol relative url.


fix: build flags for samples

Motivation

Fixes the flags set for samples
Issue number: NA

Modifications
Change summary
Please describe what changes are included in this pull request.
Revision diff summary
If there is more than one revision, please explain what has been changed since the last revision.
Testing
Is your change tested? If not, please justify the reason.
Please list your testing steps and test results.

CI test run result:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Hello,
I was looking into why these workflows are all failing. We have recently made some changes to our CI/CD process and GitHub Secrets are not passed to workflows triggered by a PR from a fork. So, in order to pass our updated CI/CD workflow this PR will need to be made from a branch in our repository.  Could you push your feature branch to the repo and create a PR from that?
Thanks,
Shane

Hello,
I was looking into why these workflows are all failing. We have recently made some changes to our CI/CD process and GitHub Secrets are not passed to workflows triggered by a PR from a fork. So, in order to pass our updated CI/CD workflow this PR will need to be made from a branch in our repository. Could you push your feature branch to the repo and create a PR from that?
Thanks, Shane

Is it possible for me to create a branch in the repo? I'll try this out.

@philcali
It should be! I think you should just be able to create a feature branch and push it to this repository... If that does not work then please let us know.
Thanks again!
Shane

merged to mainline, closing


pin cython to certain versions for <py3.9

Issue Number. Is this pull request related to any outstanding issues? If so, list the issue number.
Describe the changes made. A clear and concise description of what the problem is and what you did to fix it. E.g. [...] was happening and I've changed [...] to fix it.
Goals and Outstanding Issues. A clear and concise list of goals (to be) accomplished.

[ ]

Major files changed.

[ ]

Status.

[ ] 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)
[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Additional context. Add any other context or screenshots about the pull request here.

Codecov Report
All modified lines are covered by tests :white_check_mark:

Comparison is base (be9a6e2) 41.90% compared to head (d089861) 41.78%.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop      #23      +/-   ##
===========================================
- Coverage    41.90%   41.78%   -0.13%
===========================================
  Files          131      131
  Lines        16999    16977      -22
===========================================
- Hits          7124     7094      -30
- Misses        9875     9883       +8

Flag
Coverage Δ

unittests
41.78% <ø> (-0.13%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 16 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Demo App Fails Webpack Build

I'm currently unable to build the demo-app project in the /examples directory. Following the included readme, I ran npm install followed by npm start, but I'm receiving the following output. Any ideas? I'm not particularly well-versed in React, so am I missing something obvious?
> @ start /Users/username/Projects/demos/kepler-demo/node_modules/kepler.gl/examples/demo-app
> webpack-dev-server --progress --hot --open

 10% building modules 1/1 modules 0 active
Project is running at http://localhost:8080/
webpack output is served from /
 10% building modules 3/3 modules 0 activewebpack: wait until bundle finished: /
Hash: bfbb95190c60eccaeb52
Version: webpack 2.7.0
Time: 588ms
        Asset    Size  Chunks                    Chunk Names
    bundle.js  351 kB       0  [emitted]  [big]  app
bundle.js.map  413 kB       0  [emitted]         app
chunk    {0} bundle.js, bundle.js.map (app) 321 kB [entry] [rendered]
    [2] (webpack)/hot/emitter.js 77 bytes {0} [built]
    [3] (webpack)-dev-server/client?http://localhost:8080 7.93 kB {0} [built]
    [4] (webpack)/hot/dev-server.js 1.57 kB {0} [built]
    [5] ./src/main.js 369 bytes {0} [built] [failed] [1 error]
    [7] ./~/ansi-regex/index.js 135 bytes {0} [built]
    [8] ./~/events/events.js 8.33 kB {0} [built]
    [9] ./~/html-entities/index.js 231 bytes {0} [built]
   [12] ./~/loglevel/lib/loglevel.js 7.86 kB {0} [built]
   [18] ./~/strip-ansi/index.js 161 bytes {0} [built]
   [19] ./~/url/url.js 23.3 kB {0} [built]
   [21] (webpack)-dev-server/client/overlay.js 3.67 kB {0} [built]
   [22] (webpack)-dev-server/client/socket.js 1.08 kB {0} [built]
   [24] (webpack)/hot nonrecursive ^\.\/log$ 160 bytes {0} [built]
   [25] (webpack)/hot/log-apply-result.js 1.02 kB {0} [built]
   [26] multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/main.js 52 bytes {0} [built]
     + 12 hidden modules

ERROR in ./src/main.js
Module parse failed: /Users/username/Projects/demos/kepler-demo/node_modules/kepler.gl/examples/demo-app/src/main.js Unexpected token (36:2)
You may need an appropriate loader to handle this file type.
|
| const Root = () => (
|   <Provider store={store}>
|     <Router history={history}>
|       <Route path="/(:id)" component={App} />
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/main.js
webpack: Failed to compile.

I should also add that I installed kepler.gl via npm install --save kepler.gl. When I clone the git repository itself and then run npm install and npm start, it runs fine. Is it possible the npm package is behind?

Seeing You may need an appropriate loader to handle this file type., I believe this is a webpack configuration issue. If you're starting out, I would suggest heading over to http://vis.academy/#/kepler.gl/setup to try out the setup and following the setup there.

Thanks Chris, it does seem like a webpack configuration issue. I am able to get the demo app up and running through a git clone of this repository, but not if I install kepler.gl using npm. When I installed it using npm, I navigated into the /examples/demo-app folder and then tried to run npm install and npm start, thinking that would run the project, but that's when I encountered the error.
It seems like that is not the preferred way to run the example project, so to anyone else who encounters this issue, I would recommend using the git clone method described in the setup link that Chris shared.
Though it's probably worth leaving this issue open until you can run the example after an npm install?

I see the issue now.

When I installed it using npm, I navigated into the /examples/demo-app folder and then tried to run npm install and npm start, thinking that would run the project, but that's when I encountered the error.

This is generally not supported. In fact, the npm package should not include the /examples folder. Typically, it's inverted, people npm install the project, then use the package in their project, and should not attempt to run examples within the installed package.
I believe the bug here is that the package actually includes /examples folder. We should consider excluding it, which would mean smaller npm package download, and less confusion for users.
We can do this by adding an .npmignore file: https://docs.npmjs.com/misc/developers
Agreed to leave this open until it's addressed.

Makes sense, thanks for your help!

@MattSkewbie, the demo-app is not supposed to be run inside node_modules/kepler.gl you should try build the demo-app by git clone git@github.com:uber/kepler.gl.git first then npm install && npm start.
The examples are included explicitly in the npm package by specified in files property in package.json.

@heshan0131, thanks! I understand the paradigm now, my mistake.

It looks like the official example works fine. I am gonna close this one.

Hi, I am running into a webpack issue trying to run the demo-app on RHEL with node v8.9.4:
npm install followed by npm start from within examples/demo-app/ of a fresh git clone of the master branch produces the following output:

module.js:540
    throw err;
    ^

Error: Cannot find module 'webpack'
    at Function.Module._resolveFilename (module.js:538:15)
    at Function.Module._load (module.js:468:25)
    at Module.require (module.js:587:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/kepler.gl/examples/webpack.config.local.js:30:17)
    at Module._compile (module.js:643:30)
    at Object.Module._extensions..js (module.js:654:10)
    at Module.load (module.js:556:32)
    at tryModuleLoad (module.js:499:12)
    at Function.Module._load (module.js:491:3)

it seems that webpack.config.local.js from the parent dir is required from webpack.config.js in the demo-app dir, is that the expected behaviour?
Thanks for any hints!

@julianheinrich I'm running into the same issue. The webpack.config.local.js is like a decorator for webpack.config.js and it adds babel rules and hot reload settings.
The problem is that webpack.config.local.js requires webpack which is only installed inside demo-app. As a temporarily workaround, comment out const webpack = require('webpack'); and
      new webpack.EnvironmentPlugin([
        'MapboxAccessToken',
        'DropboxClientId',
        'MapboxExportToken'
      ])

in webpack.config.local.js will work. Another option is to use the webpack installed in demo-app like const webpack = require('./demo-app/node_modules/webpack');. Anyway, I'm also waiting for hints from others.

Thanks for the hint. If someone finds this thread, the README in the examples is somewhat misleading. I was able to run it by issuing yarn install and yarn start from the root directory of the project. I guess I missed that in the main documentation and jumped right at the demo-app.


SDXL inference speed up compare?

SDXL inference speed up compare?

@lucasjinreal Just don't have enough time now. But I provide a general script to test any SD model. So anyone who is interested can test on his own.
examples/optimize_stable_diffusion_pipeline.py

Ubuntu 22.04.3 LTS, nvidia driver 545.23.06
stable_fast-1.0.3.dev20240222+torch220cu121-cp310-cp310-manylinux2014_x86_64.whl
RTX 3060 12GB, ComfyUI, batch size 4, image size 832x1216
startup flags: LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4 python main.py --listen <IP_ADDRESS> --port 7860 --bf16-vae --force-fp16 --dont-upcast-attention --preview-method auto --disable-cuda-malloc
without stable fast: 2.78s/it
stable fast cuda graph enabled: 1.85s/it

Testing with RTX 4060 ti 16GB (everything else same)
without stable fast: 1.86s/it
stable fast cuda graph enabled: 1.28s/it


Add PR template and link to sandbox

Follow up on #104
What was done

removes pipeline.py and replaces it with a readme that points to the sandbox
creates a PR template that also references the sandbox

Questions

Is there a way to test that the template works? I just followed the formatting and hoped it was good.

@rabernat or @cisaacstern have either of you ever seen this Warning when using pre-commit?

The 'rev' field of repo 'https://github.com/myint/rstcheck' appears to be a mutable reference (moving tag / branch).  Mutable references are never updated after first install and are not supported.  See https://pre-commit.com/#using-the-latest-version-for-a-repository for more details.  Hint: pre-commit autoupdate often fixes this.

I can run pre-commit autoupdate but it changes the .pre-commit-config.yaml file and I'm not sure if we want that. Any ideas?

I have never seen that warning before, no.

So I didn't understand the Warning in the end or why my local pre-commit isn't catching the same errors as git pre-commit but I just pushed a commit that the comments and also passes the pre-commit checks.
Thanks for the reviews, everyone.

... well the bot is certainly diligent... we should probably make a no-bot or equivalent PR label which prevents this type of spam.

What if the bot is only activated if there is an update to the recipes directory?

What if the bot is only activated if there is an update to the recipes directory?

That is how it already works, but we are deleting recipes/example/pipeline.py here so... 🤖 🤖
Maybe this happens infrequently enough that we don't need a special label.

Agreed, this is an anomalous PR in that sense. LGTM.


Current buffer has no process bug

I'm running into a bug in which buffers associated with processes are getting their process killed after a few seconds. Reproducing this is easy enough on my machine:

Start emacs
M-x multi-term
Hold a key down for a few seconds

At some point it will stop and say "Current buffer has no process" in the echo area.
I've found that commenting out +all in the popup section of init.el seems to get rid of the problem. So that may be somewhere to start looking. I'll let you know if I find anything else.

I'm having trouble reproducing this. The feature/popup module does have a popup/process cleanup function, but it only runs after a popup window has been closed (and only for the specific buffer of the window that was closed).
M-x multi-term doesn't open a popup, however. So there is no concievable way for it to trigger that functionality.

Hmmm, I can't get multi-term to work anymore either. I think it might have something to do with being excluded from persp-mode because recently I started adding multi-term buffers to persp-mode.
But I can reproduce the bug another way. If you delete your rtags install folder and visit a C/C++ file it will complain that rtags isn't installed. Run M-x rtags-install and sometimes the process will get killed in the middle of the install. Sometimes immediately for me, sometimes not at all. I'm sorry I'm having trouble finding a more consistent example.

I think I know what you are describing. I've experienced myself; it's difficult to reproduce, but I am almost sure of its cause.
I've pushed a possible fix for it, but it needs more testing. Please update and let me know if the issue resurfaces.

I'm experiencing this same problem when using +term/open-popup or multi-term.
I think I've found a way to reproduce it:

Open a +term/open-popup.
Check the keybinding associated with C-p (non-evil emacs: C-h k)
Quit the help buffer
Check the keybinding associated with C-n (non-evil emacs: C-h k)
Quit the help buffer
Try to display the last CLI command with M-p (for non-evil users), which calls term-send-up`

After these steps, the term buffer will no longer have a process alive.

@UndeadKernel Thank you! That was exactly what I needed to solve this elusive bug. As of a77a967 this should be resolved. Let me know if the issue resurfaces!


Spatial database management of ~40 individual databases

No longer relevant as a single issue. Individual database management tasks or features should be contained within their own, separate issues/tasks.


Fix PickerAndroid will reset selected value during items update.

Summary
Fixes #13351
Two root causes:

Android Spinner will reset selection to undefined after setAdapter()
which will trigger onValueChange().
The behavior is not expected for RN.
And the solution is to setSelection() explicitly

In original implementation, it setups items immediately,
but delays the selected setup after update transaction.
There will be some race condition and incosistency
if update items only.
The fix will do the setup all after update transaction.

Changelog
[Android] [Fixed] - Fix #13351 PickerAndroid will reset selected value during items update.
Test Plan

Test the test case as @stochris reported in https://snack.expo.io/Sy1JClEag.
Test RNTester Picker sample

@Kudo - Looks like this PR is causing an increase in ArrayOutOfBoundsException at getView. Do you have context on why this is happening ?
I dont have context on this - do you think this is related ?

@axe-fb I've sent a PR #25276, hopefully that will fix your problem. Thanks for the reporting.


trash

this is worse than some random ball prediction taken from cheats.
imagine training a bot for weeks on this shit only to put it in real rl and have it perform like plat

why do the coordinates have to converted from unreal engine to bullet? i dont see why that should be necessary and that might be the reason why the prediction is not very acurate

Yikes.


Update nav.html

Using unless makes the condition slightly more readable by directly expressing the condition for the exception. In this case, we want to render the breadcrumb unless the layout is 'index', which reads more naturally and reduces cognitive load compared to checking if the layout is not 'index'. This refactor does not alter the behavior of the code but enhances its clarity and maintainability.

@Ayush277 thank you for the PR.  Looks like we need to switch from endif to endunless to pass CI.
In my personal opinion, I do not think unless is more readable.  I think it causes more confusion because we have to negate in our heads instead of explicit !=.  But that is a religious argument between rubyists and non-rubyists. 😉 Since we're using liquid for the templates, I get it.
I will ping the other maintainers and get some reviews on this.  Again, thank you for the contribution.

assign me this , i already solved similar problems.

This is a pull request, already assigned/owned.  Thank you though.

{
      "balance": "1000000000",
      "wallet_address": {
        "address": "0:405171f583a9e39e22ae9d8394769bc6e37299c59332012a51693b4d606780f3"
      },
      "jetton": {
        "address": "0:fa67d0c7739331fbc3c8f08e018c65f47763616a969100ad760a0b2dc1e36832",
        "name": "Mintless Points",
        "symbol": "Points",
        "decimals": 9,
        "image": "https://cache.tonapi.io/imgproxy/DmmPn6dWmsmBgSMVbvjbhIDCChLWI3RmqDJ71whxYBA/rs:fill:200:200:1/g:no/aHR0cHM6Ly9pLmliYi5jby9TS010TlRHL21pbnRsZXNzLnBuZw.webp",
        "custom_payload_api_uri": "https://claim-api.tonapi.io/jettons/EQD6Z9DHc5Mx-8PI8I4BjGX0d2NhapaRAK12CgstweNoMint"
      },
      "extensions": [
        "custom_payload"
      ]
    }

@Ayush277 thank you for the PR. Looks like we need to switch from endif to endunless to pass CI.
In my personal opinion, I do not think unless is more readable. I think it causes more confusion because we have to negate in our heads instead of explicit !=. But that is a religious argument between rubyists and non-rubyists. 😉 Since we're using liquid for the templates, I get it.
I will ping the other maintainers and get some reviews on this. Again, thank you for the contribution.

I agree.
For me, this is more readable:
If the condition is not true, then do your thing
than this:
Unless the condition is true, then do your thing
It always takes be a 🤌 little bit more to figure out if I fall into the condition funnel with the unless

Thank you for consensus @kenyonj @tomthorogood.  Please continue to contribute @Ayush277 🙇


Create RUIQI WU_k21068216.txt

Intern-training

Hi, it seems like you forget to include a commit message.


[Filter Presets Quick Launcher] Open library when clicking on left sidebar

Extension name
Filter Presets Quick Launcher
Feature Description
When configuring the extension to appear in left sidebar, I have gone to click on the shortcuts when I was on any other screen than the library and nothing happens. It only works when the library is open.
Example: I have the "Start Page" extension and from it, when I click on any of the left sidebar shortcuts nothing happens.
I have tried with all my extensions that I have shortcuts in the left sidebar and the same thing happens with all of them.
Screenshots
Selected in red are the extension shortcuts.

En la biblioteca, si funcionan los atajos.

Done in https://github.com/darklinkpower/PlayniteExtensionsCollection/commit/99aed0de9242e47da957cec6e96670968ec234cb


Home map not loading

I'm just getting a consistent spinning circle for the home map. I can click on the other options in the global nav and look at obs & weather station data but the home map is just a spinning ball.

This same problem is present in iOS and Android emulator builds. Some debugging was showing that the Glide Avalanches state in the api data is triggering this loading state.
This is an example error in the console:
 WARN  [ZodError: [
  {
    "received": "Glide Avalanches",
    "code": "invalid_enum_value",
    "options": [
      "Dry Loose",
      "Storm Slab",
      "Wind Slab",
      "Persistent Slab",
      "Deep Persistent Slab",
      "Wet Loose",
      "Wet Slab",
      "Cornice Fall",
      "Glide"
    ],
    "path": [
      "forecast_avalanche_problems",
      0,
      "name"
    ],
    "message": "Invalid enum value. Expected 'Dry Loose' | 'Storm Slab' | 'Wind Slab' | 'Persistent Slab' | 'Deep Persistent Slab' | 'Wet Loose' | 'Wet Slab' | 'Cornice Fall' | 'Glide', received 'Glide Avalanches'"
  }
]]

The <QueryResult /> component is given a list of results that it checks for a result.isLoading condition on each item. The items with this Glide Avalanches issue will always be { isLoading : true } which means the loading screen never exits.
If I add the Glide Avalanches to the enum the screen loads
diff --git a/types/nationalAvalancheCenter/schemas.ts b/types/nationalAvalancheCenter/schemas.ts
index 1e0eca8..1b01351 100644
--- a/types/nationalAvalancheCenter/schemas.ts
+++ b/types/nationalAvalancheCenter/schemas.ts
@@ -72,6 +72,7 @@ export enum AvalancheProblemName {
   WetSlab = 'Wet Slab',
   CorniceFall = 'Cornice Fall',
   Glide = 'Glide',
+  GlideAvalanches = 'Glide Avalanches',
 }

 export enum AvalancheProblemLikelihood {

And it looks like the QueryState component tries to log failures to Sentry but it would fail to log these cases.
https://github.com/NWACus/avy/blob/3e6ae6cbd436552607e4e721cb3fbf011aacc39b/components/content/QueryState.tsx#L25-L32
An example result state shows isLoading: true, isError: false and failureReason: {...}. So the app treats it as though it never finished loading from the API and th isError: false prevents it from being logged. It's not an API error but a client side data validation error.

@beaucollins your analysis is spot on and your suggested code fix I think is 100% correct - would you like to send a PR?
On the reporting front, the QueryState bits you identified do report HTTP errors with the request - which are not happening here - we should still run the following code that would report the error when we run our validation:
https://github.com/NWACus/avy/blob/3e6ae6cbd436552607e4e721cb3fbf011aacc39b/hooks/useNACObservation.ts#L74-L78
If you have suggestions for improving the approach to validation, there's a meta-issue here: https://github.com/NWACus/avy/issues/657


[Suggestion] magma/netherrack rain options

Hopefully I'm not just blind, but I couldn't find any options to change the behavior of magma or netherrack when rain hits it. This wouldn't be a big deal usually, but in netherrack and magma filled builds, you hear constant lava pops and have fire flying everywhere, which is a bit obnoxious.
I know that there's some way to use external config files, but after digging through the files it looks to be a bit above my pay grade.

I am assuming you are referring to the Overworld particle effects on these blocks.  Right now there isn't a way to turn this off in configuration.  I would need some code to do this.

Pushed v<IP_ADDRESS> to CurseForge.


certificate rotate doesnt work on older rancher created clusters

What kind of request is this (question/bug/enhancement/feature request):
bug
Steps to reproduce (least amount of steps as possible):
have a cluster with expired certs, created with an older version of rancher 2.x (2.0.7)
run cert rotate from the ui.
Result:
errors ensue
workaround:
#backup /etc/kubernetes
tar cvjf ~/k8s_config.tar.bz2 /etc/kubernetes

#create a cluster.yml file copy it to cluster-state.yml under the /etc/kubernetes/.tmp folder

#create missing certs
cd /opt/rke/etc/kubernetes/.tmp or /etc/kubernetes/.tmp
cp kube-ca.pem kube-apiserver-requestheader-ca.pem
cp kube-ca-key.pem kube-apiserver-requestheader-ca-key.pem
cp kube-apiserver.pem kube-apiserver-proxy-client.pem
cp kube-apiserver-key.pem kube-apiserver-proxy-client-key.pem

#need to use rancher v2.2.3+
execute rotate certs from UI for this cluster.

thanks to @galal-hussein for developing the workaround :D

After debugging the problem, I found that the root cause is that on older cluster we don't save the cluster-state.yml file on the nodes, so in rke 0.2.x it tries to pull the state to update legacy clusters, but it can't find it and breaks.

The issue will happen when you:

Have a cluster provisioned by Rancher v2.0.x. In this version of rancher/rke the cluster state wasn't stored on disk (it got added in Rancher v2.1 only)
Hit the cert expiration
Upgrade to 2.2
Call rotate certificates from Rancher UI. It will break as RKE 2.2 expects legacy clusters to have a cluster state on the nodes.

The changes can be tested with v2.2.4-rc19

No backport issue is created as we have to test the fix as a part of the upgrade to 2.2.4

verified the below scenarios:

rancher server and cluster expired using test image(30 mins expiry) and upgraded to v2.2.4-rc20
post upgrade steps:

The cluster is seen in Provisioning state for more than 10 minutes.
On doing a Rotate Certificates on the UI, the worker nodes are seen stuck in Unavailable status - Kubelet stopped posting node status. message is seen.
On the worker node - the kubelet pod is seen restarted after the rotate certificates action.

rancher server expired and user cluster still active using test image(30 mins expiry) and upgraded to v2.2.4-rc20
Post upgrade steps:

Wait for the user cluster certs to expire.
After expiry, the Kubectl from the Rancher UI does not work - shows Error 1006.
The cluster is seen Active. But not able to deploy any workloads
No error seen on the UI.
Remote kubectl works. Nodes/pods are listed successfully.

rancher server expired and user cluster still active using test image(30 mins expiry) and upgraded to v2.2.4-rc20
post upgrade steps:

Before the cluster expires do a cert rotate.
The cluster comes up active - no issues.

@alena1108 @galal-hussein , We also have a problem that when users upgrade from 2.0.7 to 2.2.4-rc20 and wait for the cert to expire , we still dont see any proper indication on the rancher server about cert expiry. This is something we need to address  or if it cannot be addressed , understand why we see this behavior.
This is noted in 2nd scenario in the previous comments:
After expiry, the Kubectl from the Rancher UI does not work - shows Error 1006.
The cluster is seen Active. But not able to deploy any workloads
No error seen on the UI. -- **Issue**
Remote kubectl works. Nodes/pods are listed successfully.

As described in the comment https://github.com/rancher/rancher/issues/20381#issuecomment-496718848 the issue happen because the cattle node agent pod isn't get updated on each worker node so it only pull the new certificates but doesn't restart the corresponding components.
To recover from this situation:

ssh to each worker node
restart kubelet, kube-proxy containers:

docker restart kubelet kube-proxy

verified this issue
Upgrade from: test image 2.0.13 to v2.2.4-rc21
Scenario 1: Steps:

Have a cluster setup in the test image given. (3 etcd, 1 control plane, 3 worker nodes)

Let the Rancher server and the user cluster expire.

Upgrade to rancher:v2.2.4-rc21.

The cluster will be seen in Provisioning state.

Cluster changed from Provisioning(Red) - Updating (Yellow)

It goes into Updating (Red) - with message - [workerPlane] Failed to bring up Worker Plane: [error during connect: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/nginx-proxy/json: failed to find Session for client c-qvfl8:m-82ln9]

The cluster will finally come up, and be seen as Active

On checking the nodes, we can see the worker nodes to be in Unavailable state with message - Kubelet stopped posting node status.

ssh to each worker nodes

restart kubelet, kube-proxy containers: docker restart kubelet kube-proxy

The nodes will recover and will be seen in Active state.

Verified that the certs have rotated.

Verified that the certs have new expiry dates, 10 years from when the action was performed.

A brief summary. This issue is an umbrella for 2 issues.
Issue #1

* Cluster got created on a version 2.0.13 or earlier.
* Before cluster expired, the setup is upgraded to 2.2.x. Then the certs expire.
* Try to rotate the certs on the cluster, and it breaks.

Issue #2

* Cluster got created on a) 2.0.13 or earlier on 2.0 release line b) 2.1.8 or earlier on 2.1 release line, and its certs expired while being on that version.
* The setup is upgraded to 2.2.x.
* Try to rotate the certs on the cluster, and it breaks.

The issue #2 doesn't happen if you upgraded the cluster to 2.0.14 or 2.1.10 prior to certs expiry/upgrade to 2.2.x

Both issues won't happen if you've upgraded to 2.0.1
Issue 1 got fixed with https://github.com/rancher/rke/pull/1370.
Issue 2 is described in this comment https://github.com/rancher/rancher/issues/20381#issuecomment-498328274. For 2.2.4 release, the affected setups should be updated using the workaround.

If you are upgrading from the older versions of Rancher - 2.0.13 or earlier, or 2.1.8 or earlier, and your clusters have the certificates expired, some manual steps would be needed in order for the rotation to go through:
1) For control and etcd nodes: login to the corresponding hosts, and:

* cd /etc/kubernetes/.tmp
* check if kube-apiserver-requestheader-ca.pem exists. If not, perform the following commands:

cp kube-ca.pem kube-apiserver-requestheader-ca.pem
cp kube-ca-key.pem kube-apiserver-requestheader-ca-key.pem
cp kube-apiserver.pem kube-apiserver-proxy-client.pem
cp kube-apiserver-key.pem kube-apiserver-proxy-client-key.pem

2) Call rotateCertificates. After the command is finished, check if the worker nodes are Active.
If not, login to each worker node and restart kubelet and proxy

I updated from v2.1.7 to v2.2.2 after the certificates were expired. I went into the UI and clicked Rotate Certificates. Now the UI shows:
This cluster is currently Updating; areas that interact directly with it will not be available until the API is ready.

Failed to rotate certificates: can't find old certificates

I SSH'ed into the workers and restarted both kubelet and proxy. However, when looking into the etcd and ctrl plane, the directory /etc/kubernetes/.tmp does not exist.

@spawnia you can copy the entier ssl certificate to .tmp:
cp -r /etc/kubernetes/ssl /etc/kubernetes/.tmp

and then trigger another certificate rotation, this should be enough to fetch the old certs and proceed the rotation normally

The fix will handle the following:

handle missing aggregation layer certs on upgrades
return error if keys or config for any cert is missing

Steps to verify:
1- verify that cluster without aggregation layer certs will be rotated normally:
- start a cluster with rke 0.1.8 with custom certificate expiration time (30 min)
- wait until certificates are expired
- run rke cert rotate with latest version
Result: the cluster certificates should be rotated normally without any manual steps
2- verify that the cluster with missing certs will be error out with the right log message:
- start rke cluster with 1 node ALL roles
- manually remove /etc/kubernetes/ssl/kube-apiserver.pem
- run rke cert rotate
Result: rke should fail with an error saying that /etc/kubernetes/ssl/kube-apiserver.pem is missing.

Verified with a custom rke image - with 10 minutes expiry
Steps:

verify that cluster without aggregation layer certs will be rotated normally:

start a cluster with rke 0.1.8 with custom certificate expiration time (30 min)
wait until certificates are expired
run rke cert rotate with latest version (rke version v0.3.0-rc9)

Result:
the cluster certificates are rotated normally without any manual steps. And the certs have expiry of 10 years.
And the following files are available on the control plane node.
kube-apiserver-requestheader-ca.pem
kube-apiserver-requestheader-ca-key.pem
kube-apiserver-proxy-client.pem
kube-apiserver-proxy-client-key.pem

I still have this error. Single rancher node, single k8s node. If I click to the rotate nothing happens, the k8s node has the .tmp dir, has all the keys, but the dates on the files not updating so I think even the rotate message is "lost". I think I need to somehow update one or more containers on the k8s instance too...
(I have all the files, only the cluster-state.yml is missing bcs I have no idea where I can find the original, or how I can write a new one.)
Probably a documentation about the error and about how these things are connected would let more ppl to try and fix it by hand, when the "automatic" methods are failing. (I think yesterday I read most of the documentation and issues about this topic, but I have no idea where should I go next to learn more and finally fix my "cluster".)

having the same issue :/ already update rancher 2.2.8 but my old added clusters with expired cert cannot be reached or perform the cert rotation :/


Docs need sitemap.xml

Since upgrading to Dgeni, the docs don't have a sitemap.xml at docs.angularjs.org/sitemap.xml (see sitemap <1.2.10: https://code.angularjs.org/1.2.9/docs/sitemap.xml). A Dgeni processor should be created to create one.

[ ] Change docs site to use html5Mode routing
[ ] Change servers (local and production) to do URL-rewriting to support html5Mode
[ ] Change URLs from entire module name to just component name (e.g., material.components.button to just button).
[ ] Generate and upload a sitemap.xml file

We do have one now! 😁


Move read-only methods of 'Scoped' into new interface, 'ReadOnlyScoped'.

Not all subclasses of 'Scoped' can sanely implement with_scopes (e.g, on GCE the scopes are hard-wired in when creating the GCE node).
Make Scoped derive from ReadOnlyScoped, adding the with_scopes method.
Make GCE's Credentials class derive from ReadOnlyScoped.
Closes #194.

@jonparrott PTAL.

This seems pretty reasonable to me, but I'd like @dhermes to take a quick look as well.

@tseaver I want to double check something - this does not break the current interface of the library, correct? Other than GCE credentials now being "scopeless"?

but I'm scratching my head a bit about why this is needed.

Yeah - could we get some context? I understand the computer sciency parts, but in practice how does this make the calling code different?

Yeah - could we get some context? I understand the computer sciency parts, but in practice how does this make the calling code different?

Context: https://github.com/GoogleCloudPlatform/google-cloud-python/issues/3933

Context: Having GCE's credentials derive from Scoped is a promise that it has a meaningful with_scopes, but in fact it raises NotImplementedError, which means that clients can't rely on it.

If there are no objections, I will make the edit myself out of respect for others' time.

go for it

@lukesneeringer 07d9c3b updates spelling per your request.

You beat me to it. Thanks. :-)


spatial/r3: add (Vec).Cross

https://github.com/gonum/gonum/issues/1049
Submitting this change as an example of operations to add. Happy to provide more common operations in subsequent PRs if this one gets accepted.

@sbinet Thanks for the feedback, fixes coming shortly!

Update - we moved in a different direction and are not needing this functionality - dropping this PR. Cheers


Jbaxter/scorer update

Update documentation to accurately describe the newest deployed scorer.

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


Add a "Professor not found" to search results

Add a Professor not found image/text when the search cannot find any courses that match the search.
Similar to Issue #271

For now on the UI, just use a simple course card shape to display the text / emoji "No results found :( "
Same goes for issue #271