Out of bounds error driving me insane.

With function defined as
// setting root function.
void setRoot(string thisLine)
{
j = placeCounter;
if (thisLine[j] == thisLine.length())
{
	placeCounter = 0;
	newCounter = 0;
	return;
}
if (thisLine[j] == '\t')
{
	newCounter++;
}
else if (newCounter == 0)
{
	root->person += thisLine[j];
}
else if (newCounter == 1)
{
	root->subject += thisLine[j];
}
else if (newCounter == 2)
{
	root->message += thisLine[j];
}
placeCounter++;
setRoot(thisLine);

}
where j, placeCounter, and newCounter are global variables initialized to zero. thisLine is the string sent from a line of file, does anyone know why i get an error "Expression: string subscript out of range". I cannot figure it out and its killing me. No variable should ever go out of range... Im so deep into coding I cant seem to remove comand line arguments and just run it through the debugger. I know the problem is here bc if i comment it out everything works.

@MoJoShMaN, what do you mean with thisLine[j] == thisLine.length()? I don't think that's valid (it's looks like undefined behavior).

its checking to see if you're at the end of the line. if the spot [j] is at the end of the line, you exit the function. ive even tried changing it to thisLine.length()-1 to see if that was the issue, it is not.

If j is a global var, then reset it after the function call back to zero

I have tried that, both where i reset other counters and after function call. Still same error. Shouldnt matter bc as soon as function is called its set to placeCounter and reinitialized to zero if new iteration.

Really, placeCounter doesn't look like it is being reset in your sample.

if (thisLine[j] == thisLine.length())
{
placeCounter = 0;
newCounter = 0;
return;
}
as soon as it gets to the end of the line, it resets the counters and exits

thats in my exit condition

omg i think i just figured it out, we dont want thisLine[j] == thisLine.length(), just j since thisLine[j] would be a character.  just checked totally is

ty you made me look at that a little closer and i see what i did wrong

As I said before, thisLine[j] won't exit your code; read my edit above for the reason.

ha didnt see the edit ya good eye


Silence warning that venv does not exist

I work in a monorepo that has one .tool-versions file at its root and several subfolders that are Python projects with pyproject.tomls in them, all thus using the same tool-versions, which works fine.
However, when entering the repo in a new terminal, I get a one-time (once per terminal session) warning:
mise-poetry: Virtualenv does not exist at . Execute poetry install to create one. .
As I intentionally do not have a .venv in my repo root, I would like to silence this warning.
How can I do that?

.tool-versions file:
python 3.12.7
poetry 1.8.4

mise version:
2024.11.27 linux-x64 (5562f2f 2024-11-23)
OS:
Ubuntu 24.04.1 LTS

The bug I fixed (at the second attempt I hope) was that auto install didn't work and it exited too soon so this code didn't run. By the sounds of it its exiting for the right reasons now, but the message is just...pointless.
Do you think the code path is wrong or that the message is just annoying?
I'd not disagree, but I really don't want to become the defactor maintainer of this and it sounds like its working as designed.

I don't see the rational for the message. Auto install is documented (and now works ;) ) and if you don't want that, being spammed isn't a good alternative. Devs will already know they need to run poetry install, thats how poetry works, its the normal state.


ags: init at 1.8.0

Description of changes
Add ags, a GJS library for defining widgets.
cc @Alyur
I'm aware that there is a Nix package from upstream but I would prefer to fetch it from nixpkgs repo altogether. I just want to know if the author is cool with it.

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Closes https://github.com/NixOS/nixpkgs/issues/289099

Result of nixpkgs-review pr 293262 run on x86_64-linux 1

1 package built:

ags


Allow users to separate and organize unrelated apps

Currently, if you are running multiple probes across many instances, there is no way to differentiate between different apps.   Would be useful if the users could somehow organize their scope probes into their own groups or be able to create custom views.

To be clear, the aim here is for users to be able to distinguish multiple apps, such as those created by docker-compose, that are running across a bunch of hosts, all running probes reporting to the same app.

organize their scope probes into their own groups

I don't think that would achieve the objective, since each probe reports on an entire host, whereas apps span hosts and multiple apps can run on the same host. E.g. app A might run on host X and Y, and app B might run on host Y and Z.


Errors brought by new commits

An error message during installation is brought by the commit https://github.com/dptech-corp/Uni-Core/commit/57460f0817d1a284cd47169b981d52e0f2e58ff8, on the following platform: A100 with Driver Version: 520.61.05 and CUDA Version: 11.8. I install PyTorch with version 2.2.0 and cuda 11.8. The error message is the following:
nvcc fatal   : Unsupported gpu architecture 'compute_90'
ninja: build stopped: subcommand failed.

The compute_90 flag is set to support the Hopper architecture, which requires CUDA 12.x or higher for compilation. You can either remove the sm_90 flag or upgrade both your CUDA and driver versions. The support matrix can be found here.

OK, can the flag be automatically determined based on the users environment?


Update local nav doco

[x] Note it is intended for sidebar
[x] Make current page also Grandchild link

Needs another template file to be uploaded.


v0.1.15

@JuliaRegistrator register

Registration pull request created: JuliaRegistries/General/62914
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.15 -m "<description of version>" d1428402300701af5aae503067ece492d7387d48
git push origin v0.1.15


Allow passing of cartopy_crs

It would be nice to allow xrviz to handle a metpy-generated cartopy_crs  passed as part of the initial_params for xrviz.
hvplot handles it just fine, but using it in the initial_params returns
TypeError: getattr(): attribute name must be string.   See:
https://nbviewer.jupyter.org/gist/rsignell-usgs/56d8ff54708a95b45bb46f55a0677ab0

As of now initial_params's values are only in the form of strings and not the form of custom objects such as cartopy.crs. It is a good idea to also allow passing the values for projection options directly in the form of these objects. Values in the form of string will also be allowed.
I will look into this issue after 11Oct (exams now).

@rsignell-usgs (for now you can directly pass it in the form of string such as "LambertConformal"). Initially our idea was to pass the initial params with a YAML file, so only values in the form of strings were allowed.

This is how I think it could be done:
import cartopy.crs as ccrs
crs = ccrs.LambertConformal(central_longitude=40.,
                            central_latitude=60.,
                            globe=ccrs.Globe(ellipse='WGS84',
                                             semimajor_axis=None,
                                             ))

Lets say this is the crs object parsed by metpy. If we want to pass just the name of this object it could be done by crs.__class__.__name__. However, this object can't be passed directly to hvplot because we also need to display its properties in the crs params.
So the values of default parametes (along with globe's parameters) need to be extracted from this object, for display in crs params.
This could be done with the help of keys/values from crs.proj4_params. This data has to be converted to dictionary and is to be passed to crs.value textbox for display.

However, this object can't be passed directly to hvplot

well, it could, but would be an alternate code path. This could be very OK, you can use the passed-in CRS object or you can set your own parameters. Extracting out the parameters from a passed-on object and populating the fields would only ever be on a best-attempt basis, because there are many options we cannot surface in the interface.

In summary, I think this is a reasonable request that we can allow, when someone makes the effort to implement it.


show "last updated" date at the top of each report

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/1376
Originally created by @dmor on 2019-12-05 20:23:39

When you are viewing a report in Meltano, there is no way to see how fresh the data is. It would be simple to add a "Last Updated: timestamp" line of text, with the date based on the last time the ELT for the report ran. Ideally this would show up at the time of a report like this one:

And it would need to also show up on the report in the dashboard view.

View 29 previous comments from the original issue on GitLab


Documentation error for tf.signal.frame

URL(s) with the issue:
https://github.com/tensorflow/tensorflow/blob/cf7fcf164c9846502b21cebb7d3d5ccf6cb626e8/tensorflow/python/ops/signal/shape_ops.py#L55-L199
Documentation:
https://www.tensorflow.org/api_docs/python/tf/signal/frame
Description of issue (what needs changing):
In the following example, the count of frames generated with pad_end=False is incorrect
# A batch size 3 tensor of 9152 audio samples.
audio = tf.random.normal([3, 9152])

# Compute overlapping frames of length 512 with a step of 180 (frames overlap
# by 332 samples). By default, only 50 frames are generated since the last
# 152 samples do not form a full frame.
frames = tf.signal.frame(audio, 512, 180)
frames.shape.assert_is_compatible_with([3, 50, 512])

In fact, only 49 frames are generated with pad_true=False (the default).
Clear description
Suppose we are given a tensor x with x.shape[-1] == N, a frame_length == K, and a frame_step == k.
To compute tf.signal.frame(x, frame_length, frame_step) (here default axis=-1 and pad_end=False), we could equivalently stack along axis -2 the following list of slices:
[x[..., 0:K],
 x[..., k:K+k],
 x[..., 2*k:K+2*k],
 x[..., 3*k:K+3*k],
 ...
 x[..., j*k:K+j*k]]

where j is the maximum integer such that K+j*k <= N.
We can compute that j = (N - K) // k, so the number of slices in this list is j+1 = 1 + (N - K) // k.
In the example here, N = 9152, K=512, k=180, so:
j+1 = 1 + (9152-512) // 180 = 1 + 8640 // 180 = 1+48 = 49

Thus in the example given, the return shape should be [3, 49, 512], not [3, 50, 512]. Attached is a screenshot showing that this is indeed the behavior of tf.signal.frame, so it is an error in the documentation not in the code.

Submit a pull request?
I am planning to submit a pull request.

@jmsmdy
as there is a pr to monitor this issue, can we close this issue.

Closing this issue since the associated PR has been merged.
It's effective with TF 2.3 documentation.
Thanks!


Trigger action AND close notification in one click

Is it possible to configure my keybinds with wired like this:

left click: trigger action and close
right click: close notification
middle click: close all

Currently, I use this as my shortcut config:
shortcuts: ShortcutsConfig (
    notification_action1: 1,
    notification_close: 2,
    notification_closeall: 3,
)

This almost does it, but it doesn't close the notification when I left click it, but only triggers the action. Is it possible to configure this how I want it? If not, it would be great if a feature like this could be added!

I would be happy to contribute this if we figure out how to implement this! 😄

Currently this is not possible -- 1 shortcut corresponds to 1 action, and there's no "fallthrough" behavior like you're describing.
This sounds like a good idea but I'm not quite sure how it should work.  How should we specify "if there is an action, do it, and then close" and also another use case may be: "if there is an action, do it, otherwise close".
I'd like to not break users configs if possible, but it seems tricky with the current the given implementation.
Two solutions I can think of:

A base config option: action_closes_notification or similar, which closes the notification when any action is triggered.  This seems a bit inflexible.  I don't think I really like it.
Separate actions which provide combined functionality, i.e. notification_action1_and_close.  This feels pretty clunky, but at least it's easy to understand, and from the user side you don't really see any of this complexity.  Internally this should only be 1 extra shortcut.

Alternatively, we rework how shortcuts work, but honestly I have no idea what that looks like.
Thoughts?

Hey, I think your proposed solutions are a possibility, but I agree that theyre a little clunky. If we had to choose one of those, I think I would also prefer the second solution. But, although I'm not sure this is possible to do in RON, something like this would be great:
shortcuts: ShortcutsConfig (
    // support old format
    notification_closeall: 3,

    // new format; actions will be executed sequentially
    1: [
        notification_action1,
        notification_close,
    ],
)

And if that isn't possible with the serializer, I think this should be possible, while still allowing the old format to be used instead, by deserializing into an enum with #[serde(untagged)]:
shortcuts: {
    3: notification_closeall,
    1: [
        notification_action1,
        notification_close,
    ],
},

Do you think this is a good solution?

Something like that was my third idea.  Ideally I wanted to support OR functionality if we did something breaking (trigger action OR close), but I don't think it's actually that useful for reasons similar to above, so I'm happy to not care about it.
Thanks for the info on #[serde(untagged)], I wasn't familiar with that attribute.  Unfortunately I think it would still be a breaking change (please forgive my laziness on testing).  Here's how ShortcutsConfig currently looks:
#[derive(Debug, Deserialize)]
pub struct ShortcutsConfig {
    pub notification_interact: Option<u8>,
    pub notification_close: Option<u8>,
    pub notification_closeall: Option<u8>,
    pub notification_pause: Option<u8>,

    pub notification_action1: Option<u8>,
    pub notification_action2: Option<u8>,
    pub notification_action3: Option<u8>,
    pub notification_action4: Option<u8>,
}

#[serde(untagged)] implies using an enum, probably something like the following (correct me if you think something different):
struct OldShortcutsConfig {
    // same as ShortcutsConfig above ^
}

#[serde(untagged)]
pub enum ShortcutsConfig {
    Shortcuts(OldShortcutsConfig),
    AdvancedShortcuts(Vec<(u8, Vec<String>>),    // probably not string, idk, this is ugly
}

Which could be configured like so:
shortcuts: ShortcutsConfig (
    (
        notification_interact: 1,
        ...
    )
)

// or...

shortcuts: ShortcutsConfig (
    [
        (1, [notification_interact]),
    ]
)

Notice the added brackets.  We could probably get around this somehow but it would be a paint -- I'd rather just write a custom deserializer at that point.

Assuming we don't want a custom deserializer, for a solution that maintains backwards compatibility while supporting "advanced shortcuts", maybe this can work:
pub struct ShortcutsConfig {
    pub notification_interact: Option<u8>,
    pub notification_close: Option<u8>,
    pub notification_closeall: Option<u8>,
    pub notification_pause: Option<u8>,

    pub notification_action1: Option<u8>,
    pub notification_action2: Option<u8>,
    pub notification_action3: Option<u8>,
    pub notification_action4: Option<u8>,

    pub advanced_shortcuts: Option<Vec<(u8, Vec<String>)>>,   // again, not too keen on this being a string
}

shortcuts: ShortcutsConfig (
    notification_interact: 2,
    advanced_shortcuts: [
        (1, [notification_interact, notification_close]),
    ]
)

Personally I feel this is over-engineering at the moment.  I'm still partial to the initial solution I outlined (the second one), and then if more use cases pop up in the future, we can consider breaking the old shortcuts config and "doing it right", as opposed to doing something awkward now that we need to change later anyway.
If you're still interested in contributing for this, let me know and we can discuss implementation details.
The code that handles actions currently is not super good for supporting this, but I think it should be workable, even if not beautiful: https://github.com/Toqozz/wired-notify/blob/47d370d40df56e09a2b3c70ee50bd5562e7fc234/src/management/mod.rs#L254-L292

You might be right, my suggestion may be a little overengineered. Also, I didn't plan on using a String. What I had in mind was something like this
#[derive(Deserialize)]
pub struct ShortcutsConfig {
    // ... old shortcuts here
    pub advanced_shortcuts: Option<Vec<(u8, ShortcutType)>>,
}

#[derive(Deserialize)]
// this renames the serialized version to be snake_case,
// so it should have the same name as it does currently.
#[serde(rename_all = "snake_case")]
pub enum ShortcutType {
    NotificationInteract,
    NotificationClose,
    NotificationCloseall,
    NotificationPause,

    NotificationAction1,
    NotificationAction2,
    NotificationAction3,
    NotificationAction4,
}

I am still very much interested in contributing! So, what solution should we go for?

Ahh, that makes more sense.  That would work decently and I'm definitely a fan of having a ShortcutType sometime in the future, but for now I think we just do the simple thing and create some new shortcuts, namely:
notification_action1_and_close: Option<u8>,
notification_action2_and_close: Option<u8>,
notification_action3_and_close: Option<u8>,
notification_action4_and_close: Option<u8>,

From there, I expect the only issue is finding the nicest way to execute the additional shortcuts.
Thanks for the discussion overall.  I have a much better idea on what I wouldwant from a shortcuts rework and how we could execute. :)

Alright, I'll get to implementing this then!


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/157 is merged into live branch.
Auto archive content to https://github.com/OPS-E2E-PPE/docs-archive-test-target.git

Docs Build status updates of commit 3d29b3a:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-10-09-09-19-38 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-10-09-09-19-38

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Can't reproduce lama domain problem example

Thanks for the excellent docker image,
I tried to run the lama example lama domain.pddl problem.pddl, but I'm getting this error:
root@8155b66bf2c6:~# planutils activate

   Entering planutils environment...

(planutils) root@8155b66bf2c6:~$ lama domain.pddl problem.pddl

Package not installed!
  Download & install? [Y/n] Y
lama will be installed.

About to install the following packages: downward (36M), lama (20K)
  Proceed? [Y/n] Y
Installing downward...
FATAL:   While pulling shub image: error fetching image to cache: failed to get manifest for: shub://aibasel/downward: no response received from singularity hub

Error installing downward. Rolling back changes...
rm: cannot remove 'downward.sif': No such file or directory

The steps that I have followed to install the docker image:
$ docker pull aiplanning/planutils
$ docker run -it --privileged aiplanning/planutils bash
$ planutils activate
$ lama domain.pddl problem.pddl

Can you please tell me how to solve this issue please? thanks in advance.

I rebuilt the docker image with the Dockerfile from the main branch and could pull install lama there without any changes. @bhomaidan1990  could it be a networking issue with your docker container not being able to reach the singularity hub?
@haz: so far they only prohibit new images. The existing ones should still work.

"could it be a networking issue with your docker container not being able to reach the singularity hub?"
Maybe, but the lab connection usually is highly stable, however, I tried again now (the same process up from Docker Hub) and I confirm that it is working now. Thanks for "turning the lights on" on singularity hub :)

Hehe, did you unplug it and plug it back in?
Thanks for giving it a spin, and be sure to reach out for any other bugs that (I'm sure will) come up!


Version Range in Variant breaks build

As discussed over IM, using a package variant like this usd-0.8.0+<0.8.1 will break a build.
CMake Error at ./rezplugins/build_system/cmake_files/InstallPython.cmake:103
(add_custom_command)
    add_custom_command called with OUTPUT containing a "<".  This character is not allowed.

Similarly (to add to this), variants to specify an explicit exclusion ie "!maya" will not play well because exclamation points are special in bash. rez actually handles that part fine, but almost any build script/system is not smart enough to handle the situation.


Add system with StandardLoad

Useful for testing in PowerAnalytics. NOTE: depends on https://github.com/NREL-Sienna/PowerSystems.jl/pull/1022.

Add c_sys5_all_components, which includes renewable energy, hydro energy reservoir, and both StandardLoad and PowerLoad
Include some basic tests
NOTE: depends on a convert_component! method in PowerSystems that I just added

Test error MethodError: no method matching convert_component!(::System, ::PowerLoad, ::Type{StandardLoad}) is expected given the dependency note.


fix: always run individual classes after the class attribute (closes #735)

This passes CI locally but it's the GitHub SSH key issue, and I'm too checked out on a Friday afternoon to fix that, so I'm going to merge it...


Fails at first hurdle

Using demo code:

import riemann
from riemann import Dimension

I get an error:
ImportError: cannot import name 'Dimension' from 'riemann'
and indeed looking in riemann.py there is nothing named Dimension.
What am I doing wrong?
I'm using python 3.8.1.

That's on me; I neglected to merge my latest branch. Things are still buggy, but be sure you're using the latest version of riemann (v.1.0.0-a.1):
$ pip install riemann==1.0.0a1

The README should be updated to reflect the new syntax.


AppVeyor builds do not start automatically

@Edhebi I would like you to take the following steps

Create an App-Veyor account and log in with your GitHub
Create a "project" that points to the Edhebi/cpp-sdl2 repo on your repo list

I cannot create this configuration successfully on this repo, and thus, cannot start the visual studio builds automatically :sob: (They do run at the press of a button tho. 😅 )
To avoid confusion with the "public-facing" side of app-veyor, only one "project" should point to a specific github repository, so I deleted mine. (if that precaution hasn't been taken, urls like "ci.appveyor.com/project/github/account/repo" will not work.

Thanks a lot! Commit are now starting builds as they should have done all along!


getOrElseGet() with provider as parameter for Property/Provider

Expected Behavior
There are cases where it is handy to return another provider if the current one is empty.
class PitestPluginExtension {
    final SetProperty<String> targetClasses
    final SetProperty<String> targetTests

//get targetClasses or if not use targetClasses
= extension.targetTests.getOrElseGet(extension.targetClasses) //method name should be enhanced

Current Behavior
Without that it is needed to use ifPresent():
= project.providers.provider {
    if (extension.targetTests.isPresent()) {
        return extension.targetTests.get()
    } else {
        return task.targetClasses.getOrNull()
    }

Similar approach is used in java.util.Optional

Do you have a little more detail on where/how = extension.targetTests.getOrElseGet(extension.targetClasses) is used?

Sure. I the targetTests parameter is not set by an user in the plugin configuration the value from targetClasses is taken - targetClasses is always set by the plugin logic and is a sensible default value. However, an uses might want to narrow the scope of PIT execution to subset of tests. Sample usage in code and the original issue which brought me here.

OK, in that case, could you just do:
extension.targetTests.convention(extension.targetClasses)

If targetTests is set explicitly, then that value is used.
If targetTests is not set, by convention, you use targetClasses.

Have you looked at Provider.orElse(Provider), added in Gradle 5.6? It does what you're asking for in the description.

OK, in that case, could you just do:
extension.targetTests.convention(extension.targetClasses)

@big-guy I tried it before and with:
task.targetTests.convention(extension.targetClasses)
task.targetTests.set(extension.targetTests)

The second line overrides a default value even if extension.targetTests is a non-set provider. It's SetProperty<String> to maybe a default empty collection causes that? Is it an intended behavior?

Have you looked at Provider.orElse(Provider), added in Gradle 5.6? It does what you're asking for in the description.

@adammurdoch Yes, that's exactly what I needed, thanks. I've been looking for that, but maybe my IDE has an earlier Gradle version set, so I missed it.

Yes, that's exactly what I needed, thanks. I've been looking for that, but maybe my IDE has an earlier Gradle version set, so I missed it.

Ok, I missed it as it is named orElse() not getOrElse() (which has just plain argument accepted).


cluster-autoscaler: Dynamic reconfiguration via ConfigMap

Is this a request for help? (If yes, you should use our troubleshooting guide and community support channels, see http://kubernetes.io/docs/troubleshooting/.):

No.

What keywords did you search in Kubernetes issues before filing this one? (If you have found any duplicates, you should instead reply there.):

I've searched for:

cluster-autoscaler
dynamic reconfiguration
configmap
config map
cluster autoscaler

and their combinations but found nothing.

Is this a BUG REPORT or FEATURE REQUEST? (choose one):

FEATURE REQUEST

If this is a FEATURE REQUEST, please:

Describe in detail the feature/behavior/change you'd like to see.

As a maintainer of kube-aws, I'm planning to add out-of-box support for/integration with cluster-autoscaler into kube-aws and got to want a feature to reconfigure cluster-autoscaler without deleting it and then creating it with new --nodes parameters, hence "dynamic reconfiguration".
cc @andrewsykim @mwielgus
My use-case
My use-case is to reconfigure cluster-autoscaler automatically when a kube-aws user added/removed node pool(s) associated to a k8s cluster.
More complete context can be seen in an corresponding issue of kube-aws.
What could be done WITHOUT the requested feature
Currently, an user has to delete and then create cluster-autoscaler completely out of band from a k8s cluster created by deployment tools like kops and kube-aws, to reconfigure cluster-autoscaler to:

stop auto-scaling on already removed node pool(s)
start auto-scaling on newly created node pool(s)

With cluster-autoscaler as of today, we can achieve dynamic reconfiguration via writing e.g.:

a shell script to inotify-wait on a configmap volume,

read the latest configuration from it,
and then updating cluster-autoscaler by restarting it while updating --nodes parameters,

via kubectl or inside the container running cluster-autoscaler.

Though it is technically possible, doing so in that way seems to involve more moving parts than necessary:

a correct init process(a shell script as pid=0 may result in zombie processes)
process supervisor(to keep cluster-autoscaler up and running)

and makes testing harder.
What could be done WITH the requested feature

cluster-autoscaler can be integrated to k8s deployment tools in easier ways/cluster-scaler can be deployed more widely

For example, for each k8s deployment tool like kops, kube-aws, implement a configmap updater application to periodically update the configmap read by cluster-autoscaler
and then our user is freed from manually recreating a cluster-autoscaler deployment object for each time he/she updated a cluster, thus less work to utilize cluster-autoscaler

Thoughts on implementation
After looking around the k8s ecosystem, I've noticed that an existing k8s add-on like cluster-proportional-autoscaler seems to have a well thought support for dynamic configuration via --configmap and --default-params flags, hence I'm "suggesting" dynamic reconfiguration "via ConfigMap".
It won't necessary be utilizing ConfigMap if dynamic reconfiguration is achieved.
FYI cluster-proportional-autoscaler's code was helpful to imagine how it would work to achieve dynamic reconfiguration. This matched my expectation on how I'd like cluster-autoscaler to support dynamic reconfiguration.
Btw, cluster-autoscaler seems to have a similar control-loop to periodically update node groups.
If it is ok to extend the loop to periodically check a configmap for an update while changing a part of cluster-autoscaler's state from immutable to mutable, I guess I can submit a pull request to achieve what is requested in this feature request with it.

Related tool regarding triggering rolling updates on config map changes: https://github.com/kargakis/configmap-rollout
And related issue: https://github.com/kubernetes/kubernetes/issues/22368

This is a similar feature to what discussed in this PR: https://github.com/kubernetes/contrib/pull/1982
I will update the PR in these days to address the comments. I would say that this can be done even without the configmap natively by the autoscaler. In my case, I am already using such a feature.

@Raffo Thanks for the info and the great work!
I've read through your PR and found it will also be useful for my use-case.
I'm definitely :+1: to see your work to be merged into master.

Would you all mind keeping this issue open, though?
Sorry for being not very clear about that but our use-case includes not only autoscaling groups but also spot fleets as the autoscaling targets.
Automatic reconfiguration just for autoscaling groups could be achieved via @Raffo's great work(#1982) without any problem. I'm looking forward to see his work merged into master.
On the other hand, a spot fleet is missing a well-known source-of-truth for auto scaling hence I've suggested configmaps. A spot fleet doesn't have properties like MinSize, MaxSize. It can't be tagged either. Therefore, kube-aws has opted to put the source-of-truth into tags assigned to a cloudformation stack managing the spot fleet. That's definitely not the way to go for everyone, though.
I guess supporting dynamic reconfiguration via a generic building block like the configmap alleviates the issue like mine which aries when building our own automatic reconfiguration for one's own k8s deployment. We could build our own automatic reconfiguration for cluster-autoscaler regardless of cloud provider, deployment method, exact place to store the source-of-truth, around the generic dynamic reconfiguration feature.

I agree with @mumoshu. While @Raffo's PR is definitely helpful it is AWS specific and cannot be generalized to other cloud providers (at least not to GCE/GLE where min/max size is not provided). Also, with config map it would be possible to easily change runtime parameters (timeouts, thresholds, etc).
I would imagine that an extra flag pointing pointing to a config map would be added to CA. CA would periodically try to parse it and, in case of failure, surface an alarm.

All sounds like great ideas! Happy to see a PR covering this use case and happy to contribute one or review it if needed.

Closing this as resolved via #2226
cc @mwielgus


Build dashboard plugin should not realize all tasks

https://github.com/gradle/gradle/pull/6247

merged PR


Cannot Build From the Source

Hello,
I want to install 5GReplay from the source using the following tutorial (because I'm using Ubuntu 22.04.2 LTS): https://github.com/Montimage/5Greplay/tree/main/docs/docs/guide/building-from-source
However, after I clone the repository, I can't find the 'lib' folder (please see here), thus, the rest of the installation process can't be done. Can you please let me know how to install it?
Thank you.

Hi,
You can use: wget https://github.com/Montimage/mmt-dpi/releases/download/v1.7.9/mmt-dpi_1.7.9_8694eaa_Linux_x86_64.deb && sudo dpkg -i ./mmt-dpi*.deb && sudo ldconfig to install the "library"
I also updated the install instruction


twilight: use rustls for default

#328 missed out some bits

Is this required if the main crate is going to do nothing but link to sub crates?

I think the main crate's Cargo.toml will be rewritten anyway as part of #459

[ ] Update documentation and code for the main "twilight" crate to be an "advertisement crate". It shouldn't re-export the crates that it does and should get across in its README that the individual crates should be used.

Closing then.


[web] Hive 4.0.0-dev.2 - issues initializing

Hello - I know that 4.0.0 is still a pre-release. I encountered a few issues while getting started on web.
The first issue is it seems to be expecting a directory:
Invalid argument(s) (directory): No directory specified and no defaultDirectory provided.

If we set the Hive.defaultDirectory = '' it seems to move ahead, but this time we get a different error:
On web you have to call Isar.initialize() manually before using Isar.

Calling Isar.initialize() throws the following error:
IsarError: Operation not supported. You might need to use a different flavor of Isar.

Does this mean we need to install Isar as well? Is there documentation that can help setup Hive for web?

Same issue here

Same here =(

Same here

https://github.com/isar/hive/issues/1225#issuecomment-1691219875

@p4-k4 I don't think the comment addresses the issue mentioned here. The comment only says that web won't support persistance - just in-memory, until a stable release.

@p4-k4 I don't think the comment addresses the issue mentioned here. The comment only says that web won't support persistance - just in-memory, until a stable release.

Nah, never said it addresses the issue. But is the closest somewhat official response to this issue - whether or not it has anything to do with why this issue exists, I have no idea. Maybe web overall is only half-implemented for 4.0.0-dev. Who knows.
I see there's another pending issue posted about this quite some time ago too.
Hang tight, I'd say.


Fixed #321.

Fixed invalid-pointer-pair by address sanitizer.

Codecov Report

Merging #324 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #324      +/-   ##
==========================================
+ Coverage   85.51%   85.51%   +<.01%
==========================================
  Files          34       34
  Lines        4881     4889       +8
==========================================
+ Hits         4174     4181       +7
- Misses        707      708       +1


Add integration tests for genomic location

Added some testing for the genomic location endpoint While trying to
address #403, which turned out to be a typo by the API consumer (i.e.
yours truly).

@leexgh seems fixed now. I think there are some occasional intermittent failures of the integration tests because of how there are multiple tests apps started at the same time running on different ports. Maybe they are interfering with each other


Always load all protocols

From now on we'll ignore the list of protocols in protocols.

Does this mean that we won't need to add scoring to the OK files when adding them to the autograder? And that students would be able to run python3 ok --score?

Yes to both. Is there a danger to letting students run python3 ok --score?

I don't think so. I was just clarifying my own understanding.

The only protocol I'm concerned about is Backup. It's perfectly valid for someone not want to use the backup protocol (data8 did this all last year) and with this PR there is no way to do so (without having the user add arguments every time).
No other protocol prompts for authentication with a user flag specifying that they want to run that protocol.
There are a few solutions:

A blank endpoint ("") prevents backup from running.
An optional argument in the .ok file that disables the backup protocol.

Any particular reason you closed this PR?

Hmm how about omitting the endpoint entirely?

We use the endpoint all over the place - in collab & hinting for example.
If we can get a default value in there - so that using assignment.endpoint won't result in attribute error - then that's fine with me.

The endpoint now defaults to the empty string if omitted. If the endpoint is falsey, we won't attempt to backup. I tested the other protocols too manually, and nothing seemed to break.


Updating database objects doesn't call change listeners

Expected:
Any update to the database would call the appropriate change listeners
Actual:
Updates other than through 'create', 'update', or 'delete' don't call listeners, so we are reliant on then calling database.save, which leaves room for error
Realm are updating their notifications system currently.

Hey guys, I've been looking into this issue, Realm currently supports 'global' listener Realm.setListener('change', listener), it doesn't point to target or type of change (so pretty useless).
Also can bind listener to objects('recordname') or even filter(), pretty fined grained, gives target, with insert, change and delete(no target for delete) .
Can introduce to react-native-database but, have to bind to each schema DataType in constructor, excluding a list of exceptions (Settings, ..) and only implement the modifications (use current insertion/deletion in wrapper)
A few issues:

it will trigger 'change' (modification) on parent if children values have changed or child is inserted/deleted.  So as it stands now, will add to SyncQueue a parent even if minor change in child (i.e too many callbacks when Requisition or RequisitionItem are changed due to Parent <->> Children relationship), I guess a way around this is not to bind to all DataTypes but only the primitive, with no children, parent or other object links (either through physical list or traverse schema in constructor and identify child-free.. but then have to make sure to call .save for all other types still..).
can't pass 'sync' or ...args to callback, could be a problem when updating existing record through incoming sync, unless Queue is disabled or db put in sunc state
could have some minor performance issues if binding to all schema DataTypes.

I didn't try to implement in Database, there are 52 .save calls in the project, a lot of testing to verify, not a quick solution issue (can solve in free time when Craig hires me :), maybe even look into Realm JS source (need, to bind globally Realm.setListener() which gives pointer to target and change type).
Other Solution:
Extend Realm.Object with setProp(prop,val,database), call .save after setting field... have to pass database every time unfortunately.

8/10 ;-)

thank you.. but.. can do better, 10/10 not reachable unless Realm source is modified so I'll go for 9 (thought about it this morning, and tested before leaving for Auckland).
So instead of DataObject.prop = something; database.save() use DataObject.setProp(prop, something), no need to pass database instance or call save
Extend Realm.Object as per below and inherit for all DataTypes extend it and use setProp or pushProp
class ExtReal extends Realm.Object{

	setProp(propName, propVal, causedBy)
	{
		this.changes.push(
			createChange(propName,propVal,this,causedBy);

		this[propName] = propVal;
	}
	pushProp(propName, objToPush, causedBy)
	{
		this.changes.push(
			createChange(propName,objToPush,this,causedBy);

		this[propName].push(objToPush);
	}
	// for delete, haven't tested but Realm should delete
	// all links from all list when record deleted
}
function createChange(propName, propVal, recordInstance, causeBy)
{

	return this.changes.push({
			propName: propName, // optional
			recordType : getRecordType(recordInstance),
			recordId : this.id,
			causedBy : causedBy
		});
}
function getRecordType(recordInstance)
{ // this one was a struggle, thus the 'lateness of this issue comment' ahhhh :( the js prototyping...
    let retStr = recordInstance.constructor.toString(); // returns function className() {blah; blah;}
    retStr = retStr.substring(9);    // strip 'function' and '(){blah;...' a bit of a hack
    return retStr.substring(0, retStr.indexOf('('));
}

then in database.js
constructor(schema) {
    this.realm = new Realm(schema);
    this.listeners = new Map();

    this.bindChangesListener();
 }

 bindChangesListener(){
 	// as per Realm 15 notifications

 	this.objects('changes').addListener((changes,change)=>{
 		change.insertion((index) =>
 		{
 			const curChange = changes[index];

 			alertListeners(	CHANGE_TYPES.UPDATE,
 							curChange.recordType,
 							{id: curChange.recordId},
 							causedBy );

 			changes.delete(curChange);
 		}
 	});
 }

add to schemas as per below
{name : 'changes',
	properties {
		propName 	: 'string', // optional
		recordType 	: 'string',
		recordId 	: 'string',
		causedBy 	: 'string'
	}
}

and add to all DataType schema as per below, migration should be easy as we only adding a new field
{......., properties {
 	.....,
 	changes : {type:list, objectType:'changes'}

 }}


Status/possibility of Kubernetes support

Is your feature request related to a problem? Please describe.
We are using Kubernetes and the deployment of the docker-compose stack is not applicable to us.
Describe the solution you'd like
I've search through the other issues and I have not find a clear answer, so I've created this issue to hopefully get some more insights.
I've seen the OpenSlides manage service, and as I understand it, it uses docker compose. The readme has a mention of "other container orchestration systems" but nothing else.
Now, before I go and start writing a Helm chart based on the output of the manage tool, I wanted to ask the community if other work has been done already. :)

I know about the --address flag, but couldn't get it to work with any port other than 8000, others have confirmed this problem at  #6538 in OpenSlides/OpenSlides.
Regarding your question: As long as no manual action is required during setup and all hostnames / ports used for internal communication between the different microservices are configurable, I can put together a helm chart without too much of a hassle.


Client Allocation Request for: Zhongjing Baicheng Technology (Beijing) Co., LTD.

Client Allocation Questions
Core Information

Name: Zhongjing Baicheng Technology (Beijing) Co., LTD.
Website / Social Media: https://analysis.bjzjtp.com/homePage
Region: Greater China
DataCap Requested: 10TiB
Addresses to be Notarized: f3rsrgn4kytqtpl7s6vmolp7cdturafek3wagpg2mfymkpmzhqi2l2cni5bvxoxyxsz5y33fjtvvvy3vhmouaq
Notary Requested: IPFSUnion

@jahskdjhakhs Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

Hi, can you kindly answer my following questions?
individual and organization
    1.	What's your name? What's your duty in your company? Please introduce yourself and your team briefly, and show me some your social media accounts such as GitHub, email address, WeChat official account etc.
    2.	For your organization, Please describe its time since inception, registration country，scale, named officers, project, industry reputation etc.
track record
    1.	How did you know about Filecoin? Please describe your understanding of Filecoin storage.
    2.	Please describe any of your honor and disputes in the field of Filecoin.
    3.	Regarding your data you intend to store, What’s the original source of those data, and do you have any proof of ownership or authorization?
    4. Has your organization obtained DataCap before? if so, please answer the following sub-questions.
        * Please share all links and recording of your application before.
        * How about your DataCap usage? Is there any remaining? Is there any information on the deals you've created and miners you've used with your previously allocated?
use plan
    1.	Please describe your plan to use DataCap as detailed as possible? (including use case, amount, timespan, geography, miner, partner etc.)
    2.	Do you plan to record your allocation decisions and execution details in public?
    3.	How do you plan to protect the DataCap you have obtained to make sure that it is used to its best advantage?
Email if you think privacy is involved.

1T datacap is allocated to you，given that this is your first applicantion. the related message is here.
https://filscout.com/zh/message/bafy2bzaceahehf7yyvh3z2kettlhznqygpd4vslnxa725qrcamxuejb4vncb6

Thanks.


Update the shapeMaps grammar

Update the shapeMaps grammar to better handle SPARQL based validation.
The shapeMaps grammar from Eric is here

Done


Added a way to set target table to be a subquery

Added QueryBuilder.from_sub() to select from SubQuery expression.

would be great to see that one merged !


Release new version for Featuretools 1.0.0

Release new version (1.0.0?) that is compatible with Featuretools 1.0.0. This should be released before Featuretools, making sure to set the Featuretools version to >=1.0.0 in requirements.txt to prevent installation before featuretools is released.

@jeff-hernandez going to assign you to this issue, as we need to document the release process for this library (we don't have a release.md in the repo).


added multidimensional array example to docs

added read and write multidimensional arrays to docs, thanks to @fieryWaters for confirming it works

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
5 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.2%) to 94.37%

Files with Coverage Reduction
New Missed Lines
%

pyads/testserver/testserver.py
5
92.44%

Totals

Change from base Build<PHONE_NUMBER>:
-0.2%

Covered Lines:
1693

Relevant Lines:
1794

💛  - Coveralls


can we make version available in /c/blake3.h ?

just some
#define BLAKE3_VERSION_STRING "0.3.7"

or something, mirroring the version number found in /Cargo.toml
(i am in a situation where some C code bundling the C version of BLAKE3 want to know which version it is bundling, that project is bundling 0.3.7's blake3_portable.c in it's own repository, but allows a ./configure --with-blake3-upstream-c-source-dir=DIR for users who want SSE/AVX/etc)

Sure, this seems like a good idea. Should we make it a static string, so that dynamically linked programs can ask about the version at runtime? In that case, does it need to be a function?

Probably both. Something like
#define BLAKE3_VERSION_STRING "0.3.7"
const char * blake3_version(void);

in blake3.h and
const char * blake3_version(void) {
  return BLAKE3_VERSION_STRING;
}

in blake3.c.

@divinity76 if you want to put up a PR for this, you'll get an immediate 👍 :)

thanks guys,
implemented in PR https://github.com/BLAKE3-team/BLAKE3/pull/131 ,
closing this issue.


compile error relatated json

When I use the json.hpp whose version is 3.7.0, there are some error in the following lines:
"auto j = nlohmann::json::parse(fd.P());", the function nlohmann::json::parse cannot process the return value of fd.P()
//sources\cli\cli.cc:
auto file = bela::StringCat(root, L"\config\settings.json");
clangbuilder::FD fd;
if (_wfopen_s(&fd.fd, file.data(), L"rb") != 0) {
return false;
}
try {
auto j = nlohmann::json::parse(fd.P());

Can you provide more detailed error information, as well as the compiler environment. By the way, I am currently using Visual Studio 2019, so Visual Studio 2017 is not tested.

@fcharlie here are the information in the cmd
BTW，my  compiler environment is :VS2017  win10  64bit
E:>cd E:\clangbuilder\script
E:\clangbuilder\script>InitializeEnv.bat
try download vswhere E:\clangbuilder\bin\pkgs\vswhere\vswhere.exe
Use Visual Studio 15.9.28307.812 x64
Update $env:VS150COMNTOOLS to: C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Tools\

** Visual Studio 2017 Developer Command Prompt v15.9.15
** Copyright (c) 2017 Microsoft Corporation

[vcvarsall.bat] Environment initialized for: 'x64'
Clangbuilder Utilities Environment
Copyright © 2019. Force Charlie. All Rights Reserved.
Building Clangbuilder Utils ...
C:\Program Files\CMake\bin\cmake.exe -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release .. [E:\clangbuilder\sources\out]
-- The C compiler identification is MSVC 19.16.27032.1
-- The CXX compiler identification is MSVC 19.16.27032.1
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.16.27023/bin/Hostx64/x64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- IPO/LTO enabled
-- Configuring done
-- Generating done
-- Build files have been written to: E:/clangbuilder/sources/out
C:\Program Files\CMake\bin\cmake.exe --build .  --config Release [E:\clangbuilder\sources\out]
Scanning dependencies of target bela
[  2%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/ascii.cc.obj
ascii.cc
[  5%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/codecvt.cc.obj
codecvt.cc
[  7%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/escaping.cc.obj
escaping.cc
[ 10%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/fmt.cc.obj
fmt.cc
[ 12%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/match.cc.obj
match.cc
[ 15%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/memutil.cc.obj
memutil.cc
[ 17%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/numbers.cc.obj
numbers.cc
[ 20%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/stdwriter.cc.obj
stdwriter.cc
[ 23%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/winansi.cc.obj
winansi.cc
[ 25%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/str_split.cc.obj
str_split.cc
[ 28%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/str_replace.cc.obj
str_replace.cc
[ 30%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/strcat.cc.obj
strcat.cc
[ 33%] Building CXX object bela/src/bela/CMakeFiles/bela.dir/subsitute.cc.obj
subsitute.cc
[ 35%] Linking CXX static library ......\lib\bela.lib
[ 35%] Built target bela
Scanning dependencies of target belawin
[ 38%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/env.cc.obj
env.cc
[ 41%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/path.cc.obj
path.cc
[ 43%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/realpath.cc.obj
realpath.cc
[ 46%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/reparsepoint.cc.obj
reparsepoint.cc
[ 48%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/appexeclink.cc.obj
appexeclink.cc
[ 51%] Building CXX object bela/src/belawin/CMakeFiles/belawin.dir/peimage.cc.obj
peimage.cc
[ 53%] Linking CXX static library ......\lib\belawin.lib
[ 53%] Built target belawin
Scanning dependencies of target belashl
[ 56%] Building CXX object bela/src/belashl/CMakeFiles/belashl.dir/picker.cc.obj
picker.cc
[ 58%] Linking CXX static library ......\lib\belashl.lib
[ 58%] Built target belashl
Scanning dependencies of target ClangbuilderUI
[ 61%] Building CXX object ui/CMakeFiles/ClangbuilderUI.dir/main.cc.obj
main.cc
[ 64%] Building CXX object ui/CMakeFiles/ClangbuilderUI.dir/appexec.cc.obj
appexec.cc
[ 66%] Building CXX object ui/CMakeFiles/ClangbuilderUI.dir/appui.cc.obj
appui.cc
[ 69%] Building CXX object ui/CMakeFiles/ClangbuilderUI.dir/settings.cc.obj
settings.cc
E:\clangbuilder\sources.\include\json.hpp(20481): error C2416: attribute 'deprecated("Since 3.0.0")' cannot be applied in this context
E:\clangbuilder\sources.\include\json.hpp(22424): note: see reference to class template instantiation 'nlohmann::basic_json<ObjectType,ArrayType,StringType,BooleanType,NumberIntegerType,NumberUnsignedType,NumberFloatType,AllocatorType,JSONSerializer>' being compiled
E:\clangbuilder\sources.\include\json.hpp(20729): error C2416: attribute 'deprecated("Since 3.0.0")' cannot be applied in this context
NMAKE : fatal error U1077: 'C:\PROGRA~2\MICROS~1\2017\PROFES~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\cl.exe' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.

This seems to be a bug in a specific version of MSVC, my suggestion is to upgrade to Visual Studio 2019. see: https://github.com/nlohmann/json/issues/1675

@fcharlie Thank you for your quickly reply! I have change the json file and adjust the following code and make the compile successfully
from:
auto j = nlohmann::json::parse(fd.P());
change to:
std::ifstream steamFile(file, std::ios::in);
auto j = nlohmann::json::parse(steamFile);


Value "phpunit" in route parameters

Hi,
I'd like to test a route with a parameter that has value "phpunit" but i've an 404 route not found error. If I try with an other value it's work. Is it something to configure or do?
Thanks in advance.
ps: Sorry for any spelling fault, english is not my mother tongue.

@Scyt8l3 Can you provide unit test with it? I don't think that there is any restriction about param values.

@webimpress
Sorry for my late response, I've redo some test. And I'm thinking that I've found.
The problem is in \Zend\Http\PhpEnvironment\Request (line 543):
"phpunit" is the base name from executable and It take a strpos on my request uri (ex<EMAIL_ADDRESS>and thus doesn't take the begining of my route.


AffectsRender subscription optimization

Description from @MarchingCube:

This PR changes a few classes (Pen for example) to not implement IWeakEventSubscriber directly to allow derived types to setup own subscriptions.
Visual is using new WeakEvent handling which improves perf and reduces allocations
General performance tweaks to subscriber handling and weak event compaction.

You can test this PR using the following package version. 0.10.999-cibuild0018240-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

You can test this PR using the following package version. 0.10.999-cibuild0018361-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

You can test this PR using the following package version. 0.10.999-cibuild0018383-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

Added one more change to reduce allocations in Visual and a benchmark case.

Method
Mean
Error
StdDev
Median
Gen 0
Allocated

SetPropertyThatAffectsRender
717.5 ns
52.81 ns
150.67 ns
676.6 ns
0.0763
160 B

SetPropertyThatAffectsRenderOld
745.6 ns
30.60 ns
86.30 ns
736.2 ns
0.0992
208 B

You can test this PR using the following package version. 0.10.999-cibuild0019941-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

You can test this PR using the following package version. 0.10.999-cibuild0019949-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

You can test this PR using the following package version. 0.10.999-cibuild0020050-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]


support surface timeseries

Description
This PR will close #829 by allowing timeseries values for surfaces (i.e. static surface, but values that vary in one (say time) or more dimensions. This code snippet will allow you to reproduce the example bellow
# NKI resting state data from nilearn
from nilearn import datasets
from nilearn import surface
import napari
import numpy as np

nki_dataset = datasets.fetch_surf_nki_enhanced(n_subjects=1)

# Fsaverage5 surface template
fsaverage = datasets.fetch_surf_fsaverage()

# Load surface data and resting state time series from nilearn
pial_left = surface.load_surf_data(fsaverage['pial_left'])
sulc_left = surface.load_surf_data(fsaverage['sulc_left'])
timeseries = surface.load_surf_data(nki_dataset['func_left'][0])
timeseries = np.stack([timeseries, timeseries/2, timeseries/4, np.full(timeseries.shape, -1.5)], axis=2)
print(timeseries.shape)

with napari.gui_qt():
    # create an empty viewer
    viewer = napari.Viewer(ndisplay=3)

    # add the mri
    viewer.add_surface((pial_left[0], pial_left[1], sulc_left), name='base')
    viewer.add_surface((pial_left[0], pial_left[1], timeseries), colormap='red', opacity=0.9, name='timeseries')

Note some counterintuitive things may happen if you now try and "display" a timeseries like dimension, but it shouldn't crash. There might be some weird corner cases I havn't caught yet though.
Right now the change is backwards compatible with our current shapes API, this PR purely adds functionality. There was some discussion of changing the API in #829 which I am open too, but I think that can be separated from this PR, though I'm open to doing it here too!
Type of change

[x] New feature (non-breaking change which adds functionality)

How has this been tested?

[x] tests added inside the surface layer tests

Final checklist:

[x] My PR is the minimum possible work for the desired functionality
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works

This will also close #540 a duplicate of #829

I have added an example which depends on nilearn. Similar to our xarray example it using a try / catch with an ImportError to give a helpful warning if nilearn isn't installed. The nilearn package takes care of the downloading / loading of the dataset. Curious if @tlambert03 and @jni think this is the right approach?
I've also made the minor fixes requested by @jni including adding more comments and switching the order of the timeseries data to be (K, N) instead of (N, K) say, if there are N vertices.
Here's a gif of the example data playing at 40fps - pretty cool I think!!

This is now ready for re-review

@jni I've made all the changes requested apart from raising an error if there values object is not 1-D. I can, or I can try and think of something better to do if you think it is important. also if you want more comments / better variable names keep asking. i know the logic here is intuitive in places / might be hard to debug in the future, so I'm happy to do more to make it more clear

@sofroniewn other than the .mean behaviour, which I still think should go, this is ready to go imho! .mean isn't even tested as far as I can tell?

I have removed the .mean behavior, now emitting a warning and making no data visible. I've also added a test for this new behavior.
This should be ready to go. Thanks for the helpful review @jni, I think the PR is much better now

@sofroniewn great! Yes, I guess if you are changing the displayed dimensions, then the surfaces themselves should disappear? Minus some small, 2D, possibly 1D or even 0D slice? Which, yeah, doesn't make much sense to me... Possibly we should have a multicoloured (multivalued) line orthogonal to the surface slice? But who knows. Certainly it would be of limited use at best!
Thanks for all your patient changes! 😊

I love that we have this in! 🎉

Love it...


Add StringSet metrics to Python SDK

Please add a meaningful description for your change here
Direct runner and Flink runner (loopback) working. For Dataflow runner, needs to regenerate apiclient, will be done in a separate PR

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @robertwb

PreCommit YAML Xlang Direct fails with slf4jlogger classDefNotFoundError. Test passed on an earlier commit and the change later on are trivial naming changes. Likely bad gradle cache and merging for now


fatal: Could not read from remote repository.

Using stack2nix . > foo.bar gives
+ cabal2nix --subpath . --system x86_64-darwin --compiler ghc-8.4.3 cabal://zstd-<IP_ADDRESS>
+ cabal2nix --subpath . --system x86_64-darwin --compiler ghc-8.4.3 cabal://ztail-<IP_ADDRESS>

<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Enter passphrase for key '/Users/dominic.steinitz/.ssh/id_rsa':
Enter passphrase for key '/Users/dominic.steinitz/.ssh/id_rsa':
Enter passphrase for key '/Users/dominic.steinitz/.ssh/id_rsa':
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Enter passphrase for key '/Users/dominic.steinitz/.ssh/id_rsa':
Enter passphrase for key '/Users/dominic.steinitz/.ssh/id_rsa':
<EMAIL_ADDRESS>Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Unable to checkout fcfa557328d93866127ad285f701c4093f81b884 from git@github.com:haskell-numerics/hmatrix-sundials.git.
abort: repository git@github.com:haskell-numerics/hmatrix-sundials.git not found!
svn: E205000: Syntax error in revision argument 'fcfa557328d93866127ad285f701c4093f81b884'
failed to open trace file: [Errno 2] No such file or directory: '/homeless-shelter/.bzr.log'
bzr: ERROR: Unsupported protocol for url "git@github.com:haskell-numerics/hmatrix-sundials.git"
stack2nix: user error (Failed to fetch source. Does this source exist? Source {sourceUrl = "git@github.com:haskell-numerics/hmatrix-sundials.git", sourceRevision = "fcfa557328d93866127ad285f701c4093f81b884", sourceHash = UnknownHash, sourceCabalDir = "."})

You can't use ssh access with git.

@domenkozar You mean in order to use stack2nix or in general? I use it all the time in general so I am confused.

With stack2nix, because it's automatic and it will want to ask for your password. You could use ssh agent to persist authentication, but generates Nix expressions won't work anyway (they don't have access to your private key).

Ok that worked although I am surprised that the resulting output contains a derivation for every known package. Thanks 👍


Translate docs/third-party into Korean

What type of PR is this?
/kind content
/kind translation
Any specific area of the project related to this PR?
/area documentation
What this PR does / why we need it:
Translate third-party page(/docs/third-party) into Korean.
Which issue(s) this PR fixes:
Fixes #276
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign leodido
You can assign the PR to them by writing /assign @leodido in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

@jmyung @bluefriday
리뷰 부탁드립니다 🙏

/assign

Preview page 👇
https://deploy-preview-301--falcosecurity.netlify.app/ko/docs/third-party/

LGTM label has been added.  Git tree hash: bdae29a5031aaecdc09a3382959dd05cabc477f7

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leodido]

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

Thank you for your approval! 🙏


Remove version: Jackett.Jackett version 0.20.3689

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.20.3689/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 918)


I want to make the VAC-Bypass start steam with parameters "-no-browser +open steam://open/minigameslist"

I have a low-end computer. So I use steam with -no-browser command which reduces the memory usage of steam. I tried looking in the .sln file but couldn't understand anything. Can anyone tell me how do I [title]?

Can't you just manually put the parameter in the launch options or just disable the steam overlay?

Can't you just manually put the parameter in the launch options or just disable the steam overlay?

How do I do it?

all parameters that are passed to the loader are passed to steam. Just send -no-browser to the loader via shortcut / batch script

all parameters that are passed to the loader are passed to steam. Just send -no-browser to the loader via shortcut / batch script

I am not good in Visual Studio I just installed it some days ago. When I tried to open the .sln file, I couldn't find any code where it opens steam.

all parameters that are passed to the loader are passed to steam. Just send -no-browser to the loader via shortcut / batch script

I am not good in Visual Studio I just installed it some days ago. When I tried to open the .sln file, I couldn't find any code where it opens steam.

@Taughtimp2786
No need to edit the source code, didnt test myself but this should work(according to https://github.com/danielkrupinski/VAC-Bypass-Loader/issues/91#issuecomment-855307915):
VAC-Bypass-Loader.exe -no-browser

all parameters that are passed to the loader are passed to steam. Just send -no-browser to the loader via shortcut / batch script

I am not good in Visual Studio I just installed it some days ago. When I tried to open the .sln file, I couldn't find any code where it opens steam.

@Taughtimp2786
No need to edit the source code, didnt test myself but this should work(according to https://github.com/danielkrupinski/VAC-Bypass-Loader/issues/91#issuecomment-855307915):
VAC-Bypass-Loader.exe -no-browser

It works! Thank you so much.


typescriptlang.org request: Can we have a directory of libraries/frameworks written in typescript?

Yes, yes...it isn't supposed to matter because typescript is javascript+types. But it still does matter, because:

Libraries that are not written in typescript require huge amounts of infrastructure in order to work correctly. DefinitelyTyped only really exists for libraries that are written in JS, because TS libraries can publish their types directly within their repository and can export to @types with a single directive in their package.json.
Libraries that are not written in typescript have declaration development lags. A JS library can publish an API version bump to NPM, and it falls on the community to update the types in DefinitelyTyped accordingly. If you aren't comfortable enough to do that yourself, it usually means that you end up waiting weeks/months to be able to update to the latest version.
Libraries that are not written in typescript have a declaration version mismatch for intentional library version choices. If I don't want to bump to <INSERT_UBIQUITOUS_TERRIBLE_DEPENDENCY> 3.0 because my project has a dependency on 2.2, how do I ensure that I have the correct types for 2.2?
Libraries that are not written in typescript are not constrained by actual type safety. You see this all the time...declaration files that just don't seem to work unless you have any sprinkled everywhere. I can't even count the number of libraries I've found where you have a function has three arguments, the second two of which are optional, and which have code contained in the function to determine which of the two optional arguments were actually supplied when the function is called with two arguments. They might adequately function correctly, but that behavior would never fly in a Typescript library.
JS libraries have massive problems with bugs that would never even pass the compiler if they were written in typescript.

I can't think of a single reason why I would ever choose a JS-first library as a typescript developer if there is a competent TS-first alternative. Hell, I've even considered switching from React to Angular2 (which, IMO, is a complexity nightmare) just to avoid the nagging TS-related issues with React. As such, whenever I need a new <FUNCTIONALITY>, the first thing I would like to know is if there are any good TS libraries out there for it. And as such, a directory of libraries that are written in typescript would be an incredibly valuable resource.

We've got the "Friends of TS" page now along with some quotes.
I don't think we want to maintain a list of all TS libs as that list is extremely long at this point, not to mention js libs that are pushing their own self-maintained types.


Support class declaration

The current gen2rb.py supports only global functions. It should support classes.
The first target is cv::CascadeClassifier.

Real OpenCV classes haven't been supported yet, but simple class of dummycv now can be instantiated.
So close this ticket. Further improvements are required, but they should be different issues.


Enforce unique Folder names, use AssetNameGenerator

Regression from 3.x. Also makes behaviour between File->write()
and Upload->load() more consistent. The latter was using AssetNameGenerator,
which suffixed "-v2", but File->setName() was using a "-2" suffix.
This also fixes a bug where folder duplicates try to set an extension,
so creating a duplicate folder called "test" results in "test-2."
with a suffixed dot.
Merge together with https://github.com/silverstripe/silverstripe-graphql/pull/49

Question  @chillu ; Can you ensure you set ParentID before Name when creating folders?

Question @chillu ; Can you ensure you set ParentID before Name when creating folders?

I don't think it's realistic to enforce that across all apps. Perhaps it's better to add the uniqueness suffix as part of onBeforeWrite()?

onBeforeWrite() would also pave the way for us addressing this in a way that doesn't suffer from race conditions. However, it would necessitate that we obtain a write lock prior to querying for duplicates....
We don't currently have any good scheme for requesting a write lock within onBeforeWrite() that will be released once the write has successfully completed.

Perhaps it's better to add the uniqueness suffix as part of onBeforeWrite()?

@sminnee Good call. I was approaching this from the perspective of a bugfix, hence tried to minimise the change. But the circumstances have changed since 3.x, from memory there was a reason why we enforced uniqueness earlier (something with filesystem syncing order?). Anyway, onBeforeWrite makes this a lot more readable.
Regarding read locks, we're already in a much better position now - the timespan between onBeforeWrite() and write() is usually shorter than between setName() and write(). Introducing read locks would be nice, but I'd consider it scope creep for this PR.


make failures to report metrics non fatal

Sometimes our metrics endpoint is returning an error and propagating the error to the eyeball.
Since metrics aren't cleared, we can retry the next time. This change makes the metrics failure non fatal and makes it invisible to the eyeball.

This makes sense to me.
We should also consider pushing the prom metrics in a wait_until.


[Bug Report] When I use two el-tables in the same component, adding the render-header attribute to the el-table-column of one el-table will affect the other el-table

Element UI version
2.13.0
OS/Browsers version
macOS Big Sur 11.1/chrome 90.0.4430.212
Vue version
2.6.12
Reproduction Link
https://codepen.io/atom0827/pen/oNZZzgX
Steps to reproduce
When I use two el-tables in the same component, adding the render-header attribute to the el-table-column of one el-table will affect the other el-table
What is Expected?
Normally displayed in the list that does not use render-header
What is actually happening?
When I use two el-tables in the same component, adding the render-header attribute to the el-table-column of one el-table will affect the other el-table

@qianqikun It just reuses the existing same component. Here're 2 options to solve this:

Adding different keys to el-table components
Move one table to another block, make sure they are not siblings of one same parent.

Hope this can help you.


Is there any plans for JSONEvent?

I'm new to python, and I'm using this library for IPC calls to other non-python programs.
However, unexpectedly, the event published from this library can't be read as same as others published on NodeJS client.
After a while I encountered this problem, I'd changed contentType from application/octet-stream to application/json and this kind of fix make it works anyway. I'm not good at eventstoreDB, but I guess this is related to event types, such as JSONEventType or BinaryEventType in node client.
I'm not sure but it seems application/json is more recommended way to publish.
Is there any reason to use application/octet-stream? or Do you have any plans for event type support?

Thanks for this suggestion. I like your code changes. I added a TODO for this here: https://github.com/pyeventsourcing/esdbclient/blob/1d1f72e74578356eebf227dcf9749842416762ff/TODOS.md?plain=1#L11

Hey @goznauk,
I have tried to resolve this issue by adjusting the NewEvent class so that is has a content_type attribute, which by default is application/json and which can alternatively take the value application/octet-stream if given as a constructor argument.
The value of this attribute is used when proposing events to be appended in the database. The recorded value is then set as the content_type attribute of the RecordedEvent class when reading events from the database.
https://github.com/pyeventsourcing/esdbclient#the-newevent-class
Let me know what you think?
The NewEvent class now also has an id attribute, which by default will be a new version-4 UUID, and which can alternatively take a value given as a constructor argument. The value of this attribute is used when appending events. This effectively implements support in this client for the idempotent append operation supported by the server. Previously the event ID was generated within the append method, and so any retries would not use the same event ID.
I've also implemented support for SSL/TLS and username/password authentication, requires to connect to "secure" servers. And a few other smaller things, such as filtering on persistent subscriptions.
I've updated the README accordingly. Please check out v0.9, which is now available on PyPI, for which I remembered to add a tag! :-)
https://pypi.org/project/esdbclient/0.9/

@johnbywater Thank you for nice library :) I'll update and try soon!


Implement lower_bound, upper_bound that accept unary predicate instead of value for the search.

For example:
template< class ForwardIt, class UnaryPredicate,  class Compare >
ForwardIt lower_bound( ForwardIt first, ForwardIt last, UnaryPredicate pred, Compare cmp );

A counterpart of:
template< class ForwardIt, class T >
ForwardIt lower_bound( ForwardIt first, ForwardIt last, const T& value );

is needed that uses a unary predicate instead of  == value. The signature is likely the following:
template< class ForwardIt, class T, class UnaryPredicate >
ForwardIt lower_bound( ForwardIt first, ForwardIt last, UnaryPredicate p ); // maybe name it lower_bound_if()?


Add ViewComponent 3 support

ViewComponent 3 has been released. Raising this as a draft to extract out what needs to be updated. We should be able to make all required changes ahead of time as we want this to be backwards compatible.

Looking with_good
Are you going to separate this out into other PRs?

Are you going to separate this out into other PRs?

Yeah that was https://github.com/citizensadvice/design-system/pull/2759 and the remainder I think is mostly in https://github.com/citizensadvice/design-system/pull/2767 now so this can probably be closed. Will double check if there's anything missing.


added doc page for how to handle existing schemas

Added a doc page for this as well as updated Android page to include how to use the logging setting...apparently, you can't do a pull request on wiki updates :-(
My fork of the wiki is here: https://github.com/kenyee/requery-wiki
Note that the doc page assumes this bug has been fixed: https://github.com/requery/requery/issues/222

Sure will expand the wiki to cover these, thanks


Request: Icon Launchers/Dropdowns

I'm really glad that people have started working on improvements for the very conservative windows 10 taskbar. Thank you for your excellent work.
One addition I would like to see is an alternative way to launch my applications by turning each pinned shortcut into a dropdown menu as shown here: https://youtu.be/bl6vm0PlgG8
Maybe it's possible to reuse some logic of this old project: https://github.com/pawelt/stacky
Thank you

Thanks for your suggestion. Actually, it is planned to add this docking tiles resembling Windows 10 start menu.

However, I was also considering to add optional alternatives like Mac Stacks

And that stacky project might be another choice too.

this looks cool!!
I'm looking forward to it.


Fixes #10032: Update dependencies to work with Java 8

https://www.rudder-project.org/redmine/issues/10032

OK, merging this PR


Remove unneeded HandheldFriendly and MobileOptimized meta tags

<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">

I realise that these meta tags aren't doing any harm - but they are not needed at all and take up a few bytes of the page loading.

The HandheldFriendly meta tag was used for a very old version of BlackBerry.
REF: https://developer.blackberry.com/playbook/html5/documentation/handheldfriendly.html

The MobileOptimized meta tag was used for a very old version of Windows Mobile 5 / 6 (before even Windows Phone 7, 8 and Windows Mobile 10!).

I was thinking of making a PR to remove then, but wanted to check with you first.

Yes, please submit a PR to remove them. Thanks for bringing it up.

Hi @coliff, would you mind sharing the source explaining <meta name="MobileOptimized">. For <meta name="HandheldFriendly"> I have this one https://getoutofmyhead.dev/handheld-friendly/.

Hi @coliff, would you mind sharing the source explaining <meta name="MobileOptimized">. For <meta name="HandheldFriendly"> I have this one getoutofmyhead.dev/handheld-friendly.

It was for old Internet Explorer for Windows Mobile... docs here:
https://learn.microsoft.com/en-us/previous-versions/bb431690(v=msdn.10)?redirectedfrom=MSDN

again, thank you very much. the reason I am asking, is because source citations are important. every developer is afraid of these tags, if we share and hardlink (in code/docs) how/why they are redundant, we remove the fear and everyone wins.
add me @junaga on https://discord.com/app


confusing log when attempt install of multicluster-primary

Bug description
Following - https://preliminary.istio.io/docs/setup/install/multicluster/shared-gateways/#setup-cluster-1-primary
$ istioctl manifest apply --context=$CTX_CLUSTER1 \
  -f install/kubernetes/operator/examples/multicluster/values-istio-multicluster-primary.yaml
Applying manifests for these components:
- Injector
- CoreDNS
- Galley
- EgressGateway
- CertManager
- Telemetry
- IngressGateway
- Base
- Citadel
- NodeAgent
- Prometheus
- Policy
- Pilot
- Grafana
- Cni
- Kiali
- Tracing
- PrometheusOperator
CertManager is waiting on a prerequisite...
Grafana is waiting on a prerequisite...
Injector is waiting on a prerequisite...
Policy is waiting on a prerequisite...
Telemetry is waiting on a prerequisite...
NodeAgent is waiting on a prerequisite...
Prometheus is waiting on a prerequisite...
Citadel is waiting on a prerequisite...
Tracing is waiting on a prerequisite...
PrometheusOperator is waiting on a prerequisite...
IngressGateway is waiting on a prerequisite...
Cni is waiting on a prerequisite...
EgressGateway is waiting on a prerequisite...
Pilot is waiting on a prerequisite...
Galley is waiting on a prerequisite...
Kiali is waiting on a prerequisite...
Applying manifest for component Base
Waiting for CRDs to be applied.
CRDs applied.
Finished applying manifest for component Base
Prerequisite for Tracing has completed, proceeding with install.
Prerequisite for Galley has completed, proceeding with install.
Prerequisite for Injector has completed, proceeding with install.
Prerequisite for PrometheusOperator has completed, proceeding with install.
Prerequisite for Grafana has completed, proceeding with install.
Prerequisite for NodeAgent has completed, proceeding with install.
Prerequisite for Policy has completed, proceeding with install.
Prerequisite for CertManager has completed, proceeding with install.
Prerequisite for IngressGateway has completed, proceeding with install.
Prerequisite for Kiali has completed, proceeding with install.
Prerequisite for Citadel has completed, proceeding with install.
Prerequisite for Pilot has completed, proceeding with install.
Prerequisite for Prometheus has completed, proceeding with install.
Prerequisite for Telemetry has completed, proceeding with install.
Prerequisite for EgressGateway has completed, proceeding with install.
Prerequisite for Cni has completed, proceeding with install.
Applying manifest for component Prometheus
Applying manifest for component Policy
Applying manifest for component Citadel
Applying manifest for component Pilot
Applying manifest for component Galley
Applying manifest for component IngressGateway
Applying manifest for component Telemetry
Applying manifest for component Injector
Finished applying manifest for component Citadel
Finished applying manifest for component Prometheus
Finished applying manifest for component Injector
Finished applying manifest for component Galley
Finished applying manifest for component Policy
Finished applying manifest for component IngressGateway
Finished applying manifest for component Pilot
Finished applying manifest for component Telemetry

Component Policy installed successfully:
========================================

serviceaccount/istio-policy-service-account created
clusterrole.rbac.authorization.k8s.io/istio-policy created
clusterrolebinding.rbac.authorization.k8s.io/istio-policy-admin-role-binding-istio-system created
deployment.apps/istio-policy created
destinationrule.networking.istio.io/istio-policy created
poddisruptionbudget.policy/istio-policy created
horizontalpodautoscaler.autoscaling/istio-policy created
service/istio-policy created

Component Prometheus installed successfully:
============================================

serviceaccount/prometheus created
clusterrole.rbac.authorization.k8s.io/prometheus-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/prometheus-istio-system created
configmap/prometheus created
deployment.apps/prometheus created
service/prometheus created

Component PrometheusOperator installed successfully:
====================================================

No resources found

Component Pilot installed successfully:
=======================================

serviceaccount/istio-pilot-service-account created
clusterrole.rbac.authorization.k8s.io/istio-pilot-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-pilot-istio-system created
configmap/istio created
configmap/pilot-envoy-config created
deployment.apps/istio-pilot created
meshpolicy.authentication.istio.io/default created
destinationrule.networking.istio.io/api-server created
destinationrule.networking.istio.io/default created
poddisruptionbudget.policy/istio-pilot created
horizontalpodautoscaler.autoscaling/istio-pilot created
service/istio-pilot created

Component Grafana installed successfully:
=========================================

No resources found

Component Cni installed successfully:
=====================================

No resources found

Component Kiali installed successfully:
=======================================

No resources found

Component Tracing installed successfully:
=========================================

No resources found

Component Telemetry installed successfully:
===========================================

serviceaccount/istio-mixer-service-account created
clusterrole.rbac.authorization.k8s.io/istio-mixer-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-mixer-admin-role-binding-istio-system created
configmap/telemetry-envoy-config created
deployment.apps/istio-telemetry created
attributemanifest.config.istio.io/istioproxy created
attributemanifest.config.istio.io/kubernetes created
handler.config.istio.io/kubernetesenv created
handler.config.istio.io/prometheus created
instance.config.istio.io/attributes created
instance.config.istio.io/requestcount created
instance.config.istio.io/requestduration created
instance.config.istio.io/requestsize created
instance.config.istio.io/responsesize created
instance.config.istio.io/tcpbytereceived created
instance.config.istio.io/tcpbytesent created
instance.config.istio.io/tcpconnectionsclosed created
instance.config.istio.io/tcpconnectionsopened created
rule.config.istio.io/kubeattrgenrulerule created
rule.config.istio.io/promhttp created
rule.config.istio.io/promtcp created
rule.config.istio.io/promtcpconnectionclosed created
rule.config.istio.io/promtcpconnectionopen created
rule.config.istio.io/tcpkubeattrgenrulerule created
destinationrule.networking.istio.io/istio-telemetry created
poddisruptionbudget.policy/istio-telemetry created
horizontalpodautoscaler.autoscaling/istio-telemetry created
service/istio-telemetry created

Component Injector installed successfully:
==========================================

serviceaccount/istio-sidecar-injector-service-account created
clusterrole.rbac.authorization.k8s.io/istio-sidecar-injector-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-sidecar-injector-admin-role-binding-istio-system created
configmap/injector-mesh created
configmap/istio-sidecar-injector created
mutatingwebhookconfiguration.admissionregistration.k8s.io/istio-sidecar-injector created
deployment.apps/istio-sidecar-injector created
poddisruptionbudget.policy/istio-sidecar-injector created
service/istio-sidecar-injector created

Component CoreDNS installed successfully:
=========================================

No resources found

Component Galley installed successfully:
========================================

serviceaccount/istio-galley-service-account created
clusterrole.rbac.authorization.k8s.io/istio-galley-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-galley-admin-role-binding-istio-system created
configmap/galley-envoy-config created
configmap/istio-galley-configuration created
configmap/istio-mesh-galley created
deployment.apps/istio-galley created
poddisruptionbudget.policy/istio-galley created
service/istio-galley created

Component EgressGateway installed successfully:
===============================================

No resources found

Component CertManager installed successfully:
=============================================

No resources found

Component NodeAgent installed successfully:
===========================================

No resources found

Component IngressGateway installed successfully:
================================================

serviceaccount/istio-ingressgateway-service-account created
deployment.apps/istio-ingressgateway created
destinationrule.networking.istio.io/meshexpansion-dr-pilot created
gateway.networking.istio.io/ingressgateway created
gateway.networking.istio.io/meshexpansion-gateway created
sidecar.networking.istio.io/default created
virtualservice.networking.istio.io/meshexpansion-vs-citadel created
virtualservice.networking.istio.io/meshexpansion-vs-pilot created
poddisruptionbudget.policy/ingressgateway created
horizontalpodautoscaler.autoscaling/istio-ingressgateway created
service/istio-ingressgateway created

Component Base installed successfully:
======================================
Error detail:

Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply (repeated 1 times)

namespace/istio-system configured

customresourcedefinition.apiextensions.k8s.io/adapters.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/attributemanifests.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/authorizationpolicies.security.istio.io created
customresourcedefinition.apiextensions.k8s.io/clusterrbacconfigs.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/destinationrules.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/envoyfilters.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/gateways.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/handlers.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/httpapispecbindings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/httpapispecs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/instances.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/meshpolicies.authentication.istio.io created
customresourcedefinition.apiextensions.k8s.io/policies.authentication.istio.io created
customresourcedefinition.apiextensions.k8s.io/quotaspecbindings.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/quotaspecs.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/rbacconfigs.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/rules.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/serviceentries.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/servicerolebindings.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/serviceroles.rbac.istio.io created
customresourcedefinition.apiextensions.k8s.io/sidecars.networking.istio.io created
customresourcedefinition.apiextensions.k8s.io/templates.config.istio.io created
customresourcedefinition.apiextensions.k8s.io/virtualservices.networking.istio.io created

serviceaccount/istio-reader-service-account created
clusterrole.rbac.authorization.k8s.io/istio-reader-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-reader-istio-system created

Component Citadel installed successfully:
=========================================

serviceaccount/istio-citadel-service-account created
clusterrole.rbac.authorization.k8s.io/istio-citadel-istio-system created
clusterrolebinding.rbac.authorization.k8s.io/istio-citadel-istio-system created
deployment.apps/istio-citadel created
poddisruptionbudget.policy/istio-citadel created
service/istio-citadel created

*** Errors were logged during apply operation. Please check component installation logs above. ***

The log output said error but when I check the logs I only see warnings.  This is extremely confusing and user is left with doubts on the install.
Expected behavior
Steps to reproduce the bug
Version (include the output of istioctl version --remote and kubectl version and helm version if you used Helm)
istio 1.5 beta 5
How was Istio installed?
Environment where bug was observed (cloud vendor, OS, etc)
IKS 1.16

looks like this is caused by an older version of istioctl.  if we only support the matching istioctl with the to be install level, we should generate a warning and stop the installation.

@esnible thoughts?  There is a manifest.yaml in the root of the istio binary, and it has the version in there.  we can simply check istioctl version match/mismatch with that version.

Which version of istioctl were you using?

Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply (repeated 1 times)

Is this the logged error or was there another problem?

istioctl version used earlier was 1.4.  What you pasted is the only warning I saw yet at the end istioctl reports to user "Errors".

cc @ostromart , I'm not sure installing 1.5 beta5 with istioctl 1.4 is supported / tested.

@linsun @ayj I will create a PR to print the istioctl client version at the beginning of apply before the "Applying manifests for these components:" initial text.
apply must work with or without pre-existing Istio.  It is not difficult to check the control plane version.  Should we also print the control plane version and make the user say they are "Sure?" or use -y if the apply would downgrade the control plane?
apply doesn't distinguish between errors and warnings.  The text Warning: kubectl apply should be used comes from kubectl, not Istio.  Istio doesn't scrape the output of kubectl to figure out if kubectl has really failed.  It is possible to add logic to look for "warning" and have manifest apply suppress or downgrade.  Do we want that?  It seems very ad-hoc?
Can someone on @istio/wg-environments-maintainers (@sdake ?) command on their expectation of what istioctl should do if it invokes kubectl and gets a warning?

@ostromart I can suppress the warning but why does the operator produce
Component Base installed successfully:
======================================
Error detail:

Warning: kubectl apply should be used on resource created by either kubectl create --save-config or kubectl apply (repeated 1 times)

Is it possible Lin's cluster was created in a non-standard way, e.g. istioctl manifest generate | kubectl create instead of apply?

@linsun The fix is easy but I can't reproduce this.  Is it easy for you to reproduce?

Those instructions are no longer there.  The new instructions seem to be https://preliminary.istio.io/docs/setup/install/multicluster/shared/

I was not able to complete the instructions.  The second control plane's ingressgateway never starts.  The logs suggest it can't talk to Pilot.
This is not the original problem.  @linsun are you still having the original problem?

@linsun Is this still happening?  How can it be reproduced?

I can try reproduce next week but I thought we don't support istioctl version not matching the control plane version, in that case, it would be great to throw a warning or (even an error) when user issues a cmd.

Note: this only happened when using older version (I used istioctl 1.4) to install 1.5 because I forgot to update it.

This whole code flow has changed completely, should be much better UX now for errors


crystal shards high alch

These are not high alchable, but runeltie still shows a HA value of 6000 ea

Duplicate of #7028


feat(dapp-console-api): totalRebatesClaimed endpoint

#262  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tremarkley and the rest of your teammates on  Graphite