master->live

Docs Build status updates of commit 9dd9118:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs/reference/msbuild-targets.md
:warning:Warning
View
Details

docs/api/registration-base-url-resource.md
:white_check_mark:Succeeded
View

docs/consume-packages/Package-References-in-Project-Files.md
:white_check_mark:Succeeded
View

docs/consume-packages/installing-signed-packages.md
:white_check_mark:Succeeded
View

docs/nuget-org/Deprecate-packages.md
:white_check_mark:Succeeded
View

docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md
:white_check_mark:Succeeded
View

docs/reference/nuspec.md
:white_check_mark:Succeeded
View

docs/reference/msbuild-targets.md

Line 118: [Warning] Invalid file link:(~/reference/errors-and-warnings/nu5048).

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.


[unknown] core.transfer: module not found

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

@DakshIndustries Please fill the form and said me what steps you did before facing this error. I can't understand what you meant.

@DakshIndustries I fixed this bug.


Dragon Ball Z Links can't be found

It says the following when I try to download the Dragon Ball Z anime:
[INFO] : AnimeUltima URL detected...
[INFO] : Collecting download links...
[INFO] : Retrying to collect download links...
[ERROR] : Failed to retrieve download links!
I don't know what it means but could someone tell me how I could fix this? I'm going on a road trip on Friday and it's going to be for 2 weeks so I need something to watch while were on the road.

@SoulPunisher https://github.com/Zebraslive/Mass-Anime-Downloader


concurrently requires Quotes around the Commands on Windows

With concurrently installed type:
npm run start-dev
and you get a whole lot of errors, mostly that nod, src, wb... are not commands. What is going on is that concurrently needs double quotes and not single quotes. It should look like:
"start-dev": "concurrently "node src/" "nwb serve-react-app app/index.js"",

@frastlin thanks I see with Mac OS it has no issue, it occurs in Windows. I will do update with this fix.


OUT_OF_MEMORY error on Mali GPU.

Hey there!
In my project I try to run inference on a simple one input model via GPU delegate and SSBO.
I have 5 devices: Nexus 5X, Xiaomi Mi A1, Xiaomi Mi T9 Pro, Honor 10 and Huawei Mate 20.
First three devices are on Adreno GPU and everything works perfectly, but in Huawei and Honor it turned out that during the intertpreter invoke method OpenGL ES OUT_OF_MEMORY error tracked on glGetUniformLocation call. I tried out different approaches to avoid this, but it didn't help.
At the moment of crash usage of Graphics memory is about 256 MB out of 1 GB.
Maybe you could help me with that?

Maybe any updates on that?

Sorry I'm out on a conference. I'll likely into this when I'm back. I'll
give an update next week.
On Fri, Nov 1, 2019 at 17:25 Anton Lashchenko<EMAIL_ADDRESS>wrote:

Maybe any updates on that?
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/33605?email_source=notifications&email_token=ACKKUT32UZHAVHSZXXCQLLTQRPRXDA5CNFSM4JDO7CY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEC2JIKA#issuecomment-548705320,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACKKUT3MKUO7MALKVMPO7KTQRPRXDANCNFSM4JDO7CYQ
.

Just ping on any update with this issue @impjdi :)

@wanfranck
Oops, sorry; forgot about this issue.  Thanks for reminding me.
We have gotten this bug report (OUT OF MEMORY on Mali devices) with MediaPipe too =/ (I'm involved with both projects).  The current suspicion is that something is not stable with OpenGL contexts on Mali devices.  Does your stuff run without SSBO, the bare minimum interpreter.run() with just CPU tensors?  Is it only failing if you're trying to fill in the GPU tensors via SSBO externally and then call interpreter.run()?

@impjdi
Yes, everything works perfectly with CPU tensors and start failing on GPU tensors via SSBO.
 Maybe it related to the problem as well, but we are not sure.

@wanfranck
Ah, okay.  In that case, please check that you maintain the same GLContext for the SSBO as the one for the inference.  Assume you create an SSBO with ID 42 and you tell an input / output tensor that ID 42 is used for that tensor.  Inference starts and will look up an SSBO of ID 42, but if that's a different context, it won't be able to find the object and will throw an OUT_OF_MEMORY.

@impjdi
Hi again! Everything's OK with maintaining GLContext, we definitely create SSBO in the same context, where the inference executed.

@impjdi  Any clue on how to fix this on mediapipe?

@wanfranck
Thanks for the update!
@elblogbruno
I think there's a very subtle bug in MediaPipe.  A couple of engineers have been looking into (and I also checked), but we couldn't spot anything obvious :(

@impjdi do you think you'll sort it out?

@elblogbruno Hopefully ;)  However, I'm not directly involved with the MediaPipe team and don't know their agenda or priorities.  I think it's better to follow up with them.

@impjdi thanks for answering. I'm really interested on implementing it on my product that's why I want it to work. I'll follow up.

@impjdi I think you got me wrong :) the issue is still exists, my message is that the issue isn't caused by GLContext management.

@wanfranck
I have a couple of questions:

Are you using C++ or Java APIs?
Are you using OpenCL or OpenGL?  If you don't know the answer, which delegate are you using?  IIRC we have like 3 different versions of the GPU delegate.
How are you using the GPU delegate?  From master, or from some static snapshot of TF release, or nightly build?

@impjdi

C++ API
OpenGL, gl_delegate from <tensorflow/lite/delegates/gpu/gl_delegate.h> (if it makes sence to you).
I use tensorflow as a submodule of my project, with bazel I built (from latest) libtensorflowlite.so and libtensorflowlite_gpu_gl.so and link it to C++ sources.

@wanfranck
Thanks.  @NikolayChirkov might have found the root cause of this problem.  I'll keep you posted when his fix goes live.  Maybe you can test and confirm :)

@wanfranck
Okay.  Change went live on master.  Can you sync and try out the latest code?

MEDIAPIPE Now works! awesome! thanks @impjdi and @wanfranck

@impjdi I'm on actual origin/master branch. Built gpu_delegate and tensorflowlite via:
bazel build -c opt --config android_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --linkopt -s --strip always //tensorflow/lite/delegates/gpu:libtensorflowlite_gpu_gl.so

bazel build -c opt --config android_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --linkopt -s --strip always //tensorflow/lite:libtensorflowlite.so

And currently getting undefined reference to `TfLiteGpuDelegateCreate' on arm64-v8a.
Last commit in branch is 891e3dc6219bc886e5dbd22b268cd097ab2effcd.

@impjdi maybe some thoughts regarding this? Same problem without stripping though.

@wanfranck
Sorry for the late reply; was out for thanksgiving.
Stripping shouldn't cause a difference as that's about the symbols for debuggers and stacktraces etc.  Undefined reference is usually because of -fvisibility and things around TFL_CAPI_EXPORT.  The command line you copy & pasted above is used for our release as well, so I'm a bit puzzled why you run into this issue =/

I spy a couple of flags I don't recognize.  The last time I tried the release, it was something like:
# build -c opt --config android_arm64 --copt -Os --copt -DTFLITE_GPU_BINARY_RELEASE --copt -fvisibility=hidden --linkopt -s --strip always :libtensorflowlite_gpu_gl.so
cc_binary(
    name = "libtensorflowlite_gpu_gl.so",
    linkopts = select({
        "//third_party/tensorflow:android": [
            "-lEGL",
            "-lGLESv3",
        ],
        "//conditions:default": [],
    }),
    linkshared = 1,
    linkstatic = 1,
    deps = [":gl_delegate"],
)

You can also drop --copt -Os -fvisibility=hidden --strip always.  I'm not sure whether you can drop --linkopt -s; you can try if nothing else helps =/

@impjdi thank you, I'll give a try and let you know if it helps or not.

@impjdi unfortunately with your config I get fatal error
../../../../../../../../../libs/tensorflow/tensorflow/lite/delegates/gpu/gl_delegate.h:22:10: fatal error: 'absl/base/macros.h' file not found
#include "absl/base/macros.h"
         ^~~~~~~~~~~~~~~~~~~~

That's weird.  That file has been existing for quite some time.

@impjdi I mean, maybe I did something totally wrong. Just to validate the whole process:

checked out to master branch, and pulled it.
added cc_binary (from youur comment) section to ./tensorflow/BUILD file.
added pathes to android sdk and ndk repositories in ./WORKSPACE file.
run the command above (from your comment).
after that got the following error.

We fixed build with adding additional include directory with com_google_absl.
The line with this dependency was added with
18c7bad93bf (A. Unique TensorFlower 2019-12-03 00:45:08 -0800  22) #include "absl/base/macros.h"

@impjdi with the workaround above I ran tflite gpu delegate on Mali and now it's another problem appeared. When I try to init my input buffers, I try to get input tensor size like this:
input_image_ = ogl::Buffer::Make(GL_SHADER_STORAGE_BUFFER, get_input_size(0),
                                             std::vector<char>(get_input_size(0), 0).data(), GL_STREAM_COPY);

std::size_t get_input_size(std::size_t index) {
        auto input_id = interpreter_->inputs()[index];
        auto input = interpreter_->tensor(input_id); // here I get NULL as a result

        return input->bytes;
    }

I tried the same code on Adreno device (which worked before update) and ran into the problem where after invoke method I try to read my output and in outputs() method in debug I see that subgraphes member field is empty when the implementation tries to take .front() element of it.
void get_output(float* buf, std::size_t index) {
        auto id = interpreter_->outputs()[index]; // problem is here
        interpreter_->EnsureTensorDataIsReadable(id);
        auto output = interpreter_->tensor(id);

        std::memcpy(buf, output->data.f, output->bytes);
    }

@wanfranck
It's quite unlikely that interpreter_->inputs() or interpreter_->outputs() is broken.  Is your Interpreter properly initialized?

I think yes. Anyway here is a general code below.
model_ = tflite::FlatBufferModel::BuildFromBuffer(char_buf, size, &error_reporter_);
if (!model_) {
    fatal("Failed to load TFLite model.");
    return false;
}

auto resolver = std::make_unique<tflite::ops::builtin::BuiltinOpResolver>();
tflite::InterpreterBuilder builder(*model_, *resolver);
auto status = builder(&interpreter_);
if (status != kTfLiteOk) {
    fatal("Failed to create TFLite interpreter");
    return false;
}

const TfLiteGpuDelegateOptions kDefaultOptions = {
    .metadata = nullptr,
    .compile_options =
        {
            .precision_loss_allowed = 1,  // false
            .preferred_gl_object_type = TFLITE_GL_OBJECT_TYPE_FASTEST,
            .dynamic_batch_enabled = 0,  // false
        },
};

interpreter_->SetAllowBufferHandleOutput(true);

delegate_ = TfLiteDelegatePtr(TfLiteGpuDelegateCreate(&kDefaultOptions), &TfLiteGpuDelegateDelete);

auto const Make = [](GLenum target, GLsizeiptr byte_count, const GLvoid* data, GLenum usage) {
    Buffer buffer;
    glGenBuffers(1, &buffer.id);
    glBindBuffer(target, buffer.id);
    glBufferData(target, byte_count, data, usage);
    return buffer;
};

input_image_ = Make(GL_SHADER_STORAGE_BUFFER, get_input_size(0),
                                    std::vector<char>(get_input_size(0), 0).data(), GL_STREAM_COPY);
if (TfLiteGpuDelegateBindBufferToTensor(delegate_.get(), input_image_.id, interpreter_->inputs()[0]) != kTfLiteOk) {
    fatal("input image SSBO bind failure");
    return false;
}

if (interpreter_->ModifyGraphWithDelegate(delegate_.get()) != kTfLiteOk) {
    fatal("GPU delegate failure");
    return false;
}

I don't see anything wrong with the initialization.  Then, I would put a lot of print statements here and there:
size_t get_input_size(std::size_t index) {
        if (index >= interpreter_->inputs().size()) {
          // print index & interpreter_->inputs().size();
          exit(-1);
        }
        auto input_id = interpreter_->inputs()[index];
        auto input = interpreter_->tensor(input_id); // here I get NULL as a result
        return input->bytes;
    }

does your stuff run on CPU?

As soon as I use SSBO buffer as input, I think it's running on GPU, if only I didn't miss anything else.


Export scripts from prototype kit package so that users can start kit with npx or via simple command in package scripts

What
We want users to be able to start the kit with something like
npx govuk-prototype-kit
on the command line, or with the line
"start": "govuk-prototype-kit"
in their package manifest.
Why
This makes it simpler to run the kit as a package and to start from an empty project.
Who needs to work on this
Developer
Who needs to review this
Developer
Done when

[ ] npx govuk-prototype-kit works when the kit is installed as a package

@lfdebrux it seems that we are already working on this solution. We will close this ticket but we want to check with you once you are back from your a/l.

Yep, looks like this has been solved in commits https://github.com/alphagov/govuk-prototype-kit/commit/0c11e6081af1c92ee6d72cde4917a35476fa7382 https://github.com/alphagov/govuk-prototype-kit/commit/81221a2883e46e98978ecd31633737490df0f160, closing and archiving this ticket.


Add Teknikcollege

We want to add Teknikcollege Karlskoga/Degerfors to the branch.
swot/lib/domains/se/karlskoga/edu.txt has the information.
Thnx

@j4rl Pull request merged. Thank you!


What's the breaking change?

Looking at the changelog, it's not clear why the bump to version 6.0.0.
Which change breaks compatibility with something?

Because it's been a long time and I don't know the specific rules that govern what would require a bump. There was a user in the past that said if you change the class signature it would break tools, Brett had worked through that case.
This is my first time, I'm just trying to release something as it has been so long. There have been many hurdles to finish this. (I'm now waiting for approval on the new sonatype (s01) repository because apparently even sonatype has changed since the last release).
Honestly I just want to release something and I don't want to break anything.

So what has been changed in the "class signature"?

Possibly nothing has changed. But out of an abundance of caution, instead of having to identify what would break things, I figured it is better to just assume that something has changed a rev the major version. In future releases I will pay attention and try to follow semantic versioning rules and not rev the major version without reason. But for now, I figured it is less risk to rev the major than to not.
So to repeat what I was trying to say in my first comment, "I don't know."

The one change that had me most concerned, and most unsure if it was ok to not rev the major version, was that the pom was changed to expect Java 11 only. I assume that the existing build artifacts also only supported Java 11. I wondered about the case where if an existing user might be on java 9, a patch version update alone might cause them to get the latest artifact. Maybe that would be ok, but I didn't want to put the effort in to comprehend that scenario.
The other thing is that a public static inner class was added to a public class (UtilityElf.CustomDiscardPolicy), which I assume doesn't change the signature of the outerclass, but I don't know what these tools are that caused a problem before, so it seemed plausible that that change could cause a similar problem.

Neither change affects anything. <target>11</target>  was already added in 5.0.0. The contents of a class are not part of its signature.
If that change breaks this mystery tool, then that is the fault of that tool for doing unsupported reflection stuff.
If you're going to be managing this project now, you need to learn some of the basics of Maven and Java APIs.

This is the specific change to the pom.xml that I was uncomfortable with:
https://github.com/brettwooldridge/HikariCP/commit/a050d81004265567a92af5162e164a73823ee0b2#diff-9c5fb3d1b7e3b0f54bc5c4182965c4fe1f9023d449017cece3005d3f90e8e4d8L561
Also, please be kind. Realize that I'm a human and I'm just trying to help.
A change to the major version won't hurt anyone. If anything it is a symbol of other non-code changes. semver doesn't say that you cannot change a major version without a breaking API change.

Removing the profile? Yes it has no effect. It's a fix for having forgotten to do it in 5.0.0.
The majority of projects will not update to get these minor fixes, because you're advertising it as a breaking change.
What semver says is:

increment the MAJOR version when you make incompatible API changes

There's no other situation where it says to increment the major version.

While semver does say that the major version must be incremented for incompatible API changes, that doesn't mean that it must not be changed if there are not incompatible changes. This was a conscious decision on my part. The choice to rev the major version wasn't a "I don't know how semver works". It was a "I'm not 100% absolutely certain that in some strange case a new inner class doesn't break something downstream". And I will admit I don't entirely know the impact of a maven profile and I intentionally made a decision to not learn as I trust Brett implicitly, meaning that I knew the change was safe, but I didn't know what its impact on "compatibility" was.
My focus was on releasing and I thought a major version change was the least dangerous thing to do to get HikariCP moving again. That was a risk assessment judgement call. Based on my own assessment I also thought there wasn't any incompatible change. But concerned about the possible implications in the reflection case, and frankly not understanding clearly the implications of the profile change, I thought it was better to just release with the major version change now than to wait another six months to find the time and spirit to dig deep and understand the implications of that change.
Given that there were some bug fixes in the last 1.5 years that have been sitting around not released I assumed everyone would be rooting me on. And if a major version meant that some people wouldn't update, that doesn't seem like too terrible of a problem.
Luckily, the release hasn't actually been performed yet, so there is still a chance to use 5.0.2 for the version number.
Maybe I should have interpreted your original comment as "By the way, you don't actually need to rev the major version" rather than the subtly accusatory "What's the breaking change?"

No, the original comment was based on the assumption that you knew what you were doing and I didn’t know enough about the project to see where the breaking change was.
5.1.0 would be the better version for this.

6.0.0 isn't released, is it?
And: Where's the changelog for the released 5.1.0?

@lfbayer Have you noticed that 5.1.0 has already been "tagged" (click on releases then select 'tag')?

@lfbayer Have you noticed that 5.1.0 has already been "tagged" (click on releases then select 'tag')?

Yes I have. This is because the tag stage of the maven release plugin happens before the signing phase. I'm very very tempted to do some heavy force pushing to clean up the history. So a lot of that will likely go away. First step is to just get the build working to actually be able to publish an artifact up to sonatype again.
Since nothing is officially published on maven yet, it doesn't much matter what the current state is.


Docs: Document Action size() Method

This documents the current possible sizes of sm, md and lg. These docs would need to be updated if #4346 gets merged (seems like this will probably be in v3 though).

FYI, I made this a draft since it looks like #4346 will likely get merged and this PR will need to be updated to account for the new xs and xl sizes.

As it now looks like #4346 will not be merged until v3, I have revived this PR.


chore: bdd-spring-1578649052 to 0.0.1

chore: Promote bdd-spring-1578649052 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
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

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


Implemented SAS urls for blob storage

Hey, I just created this service a few weeks ago to generate SAS URLs on Blob storage resources.
https://learn.microsoft.com/en-us/rest/api/storageservices/create-service-sas
Working fine so far, hope you'll find it useful 👍

Thanks a lot! I think this is very useful. I have read the code and it looks good - I have not yet done any testing.
We try to support all current versions of Elixir (so 1.10 - 1.14), using :hour in DateTime.add is not supported in the older versions. I think the easy fix is to just set the default expiry to {:second, 3600}, then it's still possible to use :hour if your Elixir version supports it.
What do you think? :)
Thanks again, will definitely merge!

What do you think? :)

sure, I will fix it

Just switched to {:second, 3600}, let's see what CI thinks 👀

Awesome! Thanks - I'll test and merge this week

Hi
I'm sorry, but I just ran a test against Azurite, and I can't get the code to generate the correct signature. I tried a couple of different things, but I didn't manage to get it working, I just get an unauthorized response.
I tried generating the same SAS using the storage explorer, and there I get a different signature than the code gives (even after changing the versions).
Unfortunately the storage explorer does not log the string it signed, so I can't see what is wrong.
I do not have more time today, but I'll have a look when I have some more time.
The two generated signatures are:

From storage explorer:
http://<IP_ADDRESS>:10000/devstoreaccount1/test/test_blob?sv=2018-03-28&st=2022-10-30T14%3A13%3A00Z&se=2022-10-30T15%3A13%3A00Z&sr=b&sp=r&sig=V75WwBitq2W0%2BpVjUJVju1DgpoorMiEp9Qhq3hMc4Rw%3D
From the code (after changing the version string)
http://<IP_ADDRESS>:10000/devstoreaccount1/test/test_blob?sv=2018-03-28&st=2022-10-30T14%3A13%3A00Z&se=2022-10-30T15%3A13%3A00Z&sr=b&sp=r&sig=wqcJiWljpaVknEiYGV3Gi15Lsg2eB8v%2B2RaCQro0puA%3D

The last signature can be generated by changing the version string to 2018-03-28, and then running this code (the storage account key here is the default one for Azurite, so it's not a problem to share :smile:):
iex(1)> Application.put_env(:azurex, Azurex.Blob.Config,
...(1)>   storage_account_connection_string:
...(1)>     "AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;DefaultEndpointsProtocol=http;BlobEndpoint=http://<IP_ADDRESS>:10000/devstoreaccount1;QueueEndpoint=http://<IP_ADDRESS>:10001/devstoreaccount1;TableEndpoint=http://<IP_ADDRESS>:10002/devstoreaccount1"
...(1)> )
:ok
iex(2)> {_, st, _} = DateTime.from_iso8601("2022-10-30T14:13:00Z", Calendar.ISO, :extended)
{:ok, ~U[2022-10-30 14:13:00Z], 0}
iex(3)> Azurex.Blob.SharedAccessSignature.sas_url("test", "test_blob", from: st, expiry: {:hour, 1}, resource_type: :blob)
"http://<IP_ADDRESS>:10000/devstoreaccount1/test/test_blob?sv=2018-03-28&st=2022-10-30T14%3A13%3A00Z&se=2022-10-30T15%3A13%3A00Z&sr=b&sp=r&sig=wqcJiWljpaVknEiYGV3Gi15Lsg2eB8v%2B2RaCQro0puA%3D"

Hi I'm sorry, but I just ran a test against Azurite, and I can't get the code to generate the correct signature. I tried a couple of different things, but I didn't manage to get it working, I just get an unauthorized response. I tried generating the same SAS using the storage explorer, and there I get a different signature than the code gives (even after changing the versions). Unfortunately the storage explorer does not log the string it signed, so I can't see what is wrong.

I have SAS urls working against Azurite locally (didn't get a chance to push before this PR was made, unfortunately). I think the issue is that line #87 generates a timestamp with "T" in it, whereas Azurite seems to expect one with a space instead. So changing it to
String.replace(se(from, expiry), "T", " ")

should work? I haven't tested this branch though, and it's not actually in the docs, so I haven't had a chance to figure out if this is an Azurite bug that will break on Azure.

I never trid Azurite (didn't even know it existed) but it's working for me in production.
Will try with Azurite though as well as @ShahneRodgers suggestion!

Just tried with your code on my production Azure environment, it's working.
But If I do the String.replace(se(from, expiry), "T", " ") trick it's not working anymore.
Will try with azurite now
iex(1)> path = "indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3"
"indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3"
iex(2)> container = "readable-audio-original"
"readable-audio-original"
iex(3)> {_, st, _} = DateTime.from_iso8601("2022-10-31T07:30:00Z", Calendar.ISO, :extended)
{:ok, ~U[2022-10-31 07:30:00Z], 0}
iex(4)> sas_url(container, path, resource_type: :blob, from: st, expiry: {:day, 1})
"https://readable.blob.core.windows.net/readable-audio-original/indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3?sv=2020-12-06&st=2022-10-31T07%3A30%3A00Z&se=2022-11-01T07%3A30%3A00Z&sr=b&sp=r&sig=aXvkra%2FBU9jCoduZa07W4MTOVQB9oNOdsdySDtPRKWo%3D"

This is working as well with Azurite running on my mac 🤷♂
The difference might be that I did not use a connection_string?
config :azurex, Azurex.Blob.Config,
  storage_account_name: "devstoreaccount1",
  storage_account_key:
    "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw=="

Working with connection string as well, sorry but I have no clue 🤔
Though, I have a question regarding your message: you wrote that you changed the version to 2018-03-28. Why so?
My code has only been tested against 2020-12-06 specifications, which have evolved a lot. The 2018 version you are referring to uses a different signature string.
https://learn.microsoft.com/en-us/rest/api/storageservices/create-service-sas#construct-the-signature-string

Working with connection string as well, sorry but I have no clue thinking

Thanks a lot for your testing, and very strange that I could not make it work yesterday, I'll try again today.

Though, I have a question regarding your message: you wrote that you changed the version to 2018-03-28. Why so?
My code has only been tested against 2020-12-06 specifications, which have evolved a lot. The 2018 version you are referring to uses a different signature string.
https://learn.microsoft.com/en-us/rest/api/storageservices/create-service-sas#construct-the-signature-string

Yeah I tried the code "as-is" first, and had the problem, then I just wanted to see if I could reproduce what the StorageExplorer gave me, at that uses version 2018-03-28, so that's why i changed it.
 Will definetly try against the real blob storage first, maybe my Azurite is acting strange.

Just tried with your code on my production Azure environment, it's working. But If I do the String.replace(se(from, expiry), "T", " ") trick it's not working anymore.
Will try with azurite now
iex(1)> path = "indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3"
"indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3"
iex(2)> container = "readable-audio-original"
"readable-audio-original"
iex(3)> {_, st, _} = DateTime.from_iso8601("2022-10-31T07:30:00Z", Calendar.ISO, :extended)
{:ok, ~U[2022-10-31 07:30:00Z], 0}
iex(4)> sas_url(container, path, resource_type: :blob, from: st, expiry: {:day, 1})
"https://readable.blob.core.windows.net/readable-audio-original/indie-bites-43c183b9-5e59-4611-af66-7bea4520d07f.mp3?sv=2020-12-06&st=2022-10-31T07%3A30%3A00Z&se=2022-11-01T07%3A30%3A00Z&sr=b&sp=r&sig=aXvkra%2FBU9jCoduZa07W4MTOVQB9oNOdsdySDtPRKWo%3D"

I just pulled your branch and tested locally and it seems to be working for me too without any changes. Sorry for adding to the confusion, and thanks for testing!

I just tried installing Azurite via npm instead of via VsCode, and that works with the code as is, so I think my VsCode Azurite is somehow broken.
I'm really sorry for the confusion.
I'll approve and merge this PR now.
Thank you for all the work! Truly appreciate it.


Update curl to 8.8.0

Address a component governance issue with curl 8.4.0 by updating to the latest release (8.8.0)
CVE-2024-2398
Description of issue:
cURL / libcURL contains a flaw in lib/http2.c that is triggered when handling large amounts of headers. This may allow a remote attacker to consume excessive memory resources and cause a denial of service.
This issue is fixed in the latest release of curl:
https://github.com/curl/curl/releases/tag/curl-8_8_0
Commit used: fd567d4f06857f4fc8e2f64ea727b1318f76ad33

Looks like the curl error message also changed when calling POST with a message size over the allowed limit and the test "Testing a response over the limit fails the operation" is failing
Previously "Failure writing output to destination"
Now "client returned ERROR on write of 16384 bytes"
https://github.com/curl/curl/commit/270a25c011367f6300d5c01497fb1f23527458f4

@ryfu-msft please apply the patch below to fix the test:
sfs.patch

Thanks @ryfu-msft !


Minor: Adjust padding so text isn't cut off

"e.g. New key" in the text field is cut off slightly.

@pglowacky I looked into this and it appears that there is not any issue.
This specific input field grows its height based on the font size. There is no constraint in term of vertical space.
Zooming in the text e.g. and looking at the tail of the g, you could see that the curve is smoothed. It's not a great job, it looks flattish, but it's there. If you look at the e, the bottom part has the same identical issue.
I checked the other input fields (e.g. Create stream) and they have all the same behaviour.
I played around with the aliasing and other settings, but it all seems normal. This is just a visual illusion.


[packages/cli] create mail client

we need to create the mail client in the cli like this figma:
https://www.figma.com/file/hL1IjKPp9kwke9QT6XyokW/jsx-mail-client?node-id=2%3A101

We've decided not to build the entire email client for the time being. Let's control the email templates by the cli itself for now


Working with dictionary of two languages doesn't work

I'm a German, but as IT Professional I'm working mainly in English, so I have installed both languages, selected them in the settings and want to work with them...
...but it seema this doesn't work by now!
In some cases I have no dictionary with word completion suggestions over the keyboard at all, in other cases I have them, but only German ones.
And if a word is marked in the text, there is no right suggestion for it and it's really difficult to come into the middle of a word to add, correct, or remove a letter.
I'm working with version 1.41.1 of the app.

Here some screenshots...


Document CARGO_CFG_* enviromnent variable

https://github.com/rust-lang/cargo/pull/3243 added them. https://kazlauskas.me/entries/writing-proper-buildrs-scripts.html points out (that they exist! and) that they’re not documented on http://doc.crates.io/environment-variables.html

I believe this is a duplicate of https://github.com/rust-lang/cargo/issues/4041, so closing in favor of that issue.


Improve deployment rollback capabilities

Why:

Failed migrations can occur after code deploy, but does not auto-rollback, leaving server down
Lack of atomicity between FE and BE services can be a problem; can be left with diff versions for FE and BE

Issues:

How can we rollback TF infra changes? Can happy handle this?

Ideas:

Could we do a RDS snapshot for easier migration rollback?

Team Happy's related story: CCIE-427: Improve deployment rollback capabilities (Still queued up in their future planning epic)

@atolopko-czi move to proposal


Use IntoDataFrame in docs

We now have a IntoDataFrame type hint, which means "either a Narwhals dataframe, or something convertible to a Narwhals DataFrame"
I think we should use it in the tutorial / user guide
I'm not totally sure what whether we should use it in docstrings
Given that this tool is aimed at library maintainers, perhaps we should err on the side of including static typing in as many docs as possible?
cc @baggiponte the typing expert for thoughts?

Ciao Marco, sorry for the late reply.

I'm not totally sure what whether we should use it in docstrings

Why so?

it would require an extra from narwhals.typing import IntoDataFrame, and to people who don't like type annotations it might be it look more complicated than it needs to be
dunno, maybe it'd still be better though, people who don't like type hints can just ignore them, if they don't want their IDE to help them it's on them

dunno, maybe it'd still be better though, people who don't like type hints can just ignore them, if they don't want their IDE to help them it's on them

I agree with this one. It'd offer a superior experience to the end user. After all, it's just a single type hint, is it not?

I'd like to start and work on this.

I heard from someone recently that narwhalify isn't super-clear in the docstrings to a beginner, and that it's not clear what the input and output are of the various func examples
I feel like suggesting:

rename func to my_library_agnostic_function in all docstrings
remove narwhalify from the docstrings (except for the narwhalify docstring), and instead use from_native / to_native, and add type annotations to each argument


1.0-0015-SNAPSHOT

This version is referenced in an answer among the closed issues. However, that version is not accessible via Maven. Is this fixable?

Not yet released to maven I think.


d3.min.js IE8 erroring - Object doesn't support this action

I have the included <meta charset="utf-8"> in the <head>
As well as the <script charset="utf-8" ...> for the actual file. Has something changed, I was under the impression this was the work-around?

Note: I have all the shims / etc needed to make everything else function.

Sorry, but I don’t have the resources to provide support for IE8. Please try Stack Overflow tag d3.js or the d3-js Google group if you’d like to ask for help. I also strongly recommend posting a link to a running example so that people can reproduce the error and debug it; it’s difficult to speculate the cause knowing only the error message (“Object doesn’t support this action”).

It seems the file itself was causing the issue (I wasn't even using D3 on that page yet).
Oh it's totally fine Mike, I just removed it from the Masterpage, pages that want to use the amazing D3 have to inject it themselves. (We still have some clients on IE8, but IE8-9-10 will be dropped soon, fingers crossed).
Thanks for your response though, take care.


TADAOutliers

Single function that appends two additional columns to the dataset flagging outliers at the individual station/char level and at the all stations/char level
Three function inputs: Outliers across single station, all stations, or both:
Scale = AllStations
Scale = IndividualStations
Scale = Both

This topic could be related to the censored data method used for each characteristic:
Example.....
Cristina- is 1/x useful?
Lesley Merrick- they use it when the detection limit (or ½ detection limit) is above the water quality standard, particularly when using geomean

This issue is related to the TADA Shiny issue and pending development of an outlier tab: https://github.com/USEPA/TADAShiny/issues/137

A few existing packages related to outliers:

envoutliers: Methods for Identification of Outliers in Environmental Data - https://cran.r-project.org/web/packages/envoutliers/index.html
EnvStats: Package for Environmental Statistics, Including US EPA Guidance - https://cran.r-project.org/web/packages/EnvStats/index.html (some outlier functions)
outliers: A collection of some tests commonly used for identifying outliers - https://cran.r-project.org/web/packages/outliers/index.html

@cristinamullin are there any notes from previous working group discussions that might be helpful for me to review on this topic?
@wokenny13 the EnvStats package might be useful to check out for some of the mod 3 functions.


Unable to access graphiql on graphql-yoga with nestjs

Describe the bug
After updating to the latest version of graphql-yoga and the nestjs plugin, I am unable to access the graphiql interface and get as an error :
TypeError: Header name must be a valid HTTP token ["[ 'content-type', 'text/html' ]"]
    at ServerResponse.setHeader (node:_http_outgoing:605:3)
    at ServerResponse.writeHead (node:_http_server:323:21)
    at sendNodeResponse (/project/sandbox/node_modules/@whatwg-node/server/cjs/utils.js:149:20)
    at requestListener (/project/sandbox/node_modules/@whatwg-node/server/cjs/createServerAdapter.js:103:51)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Your Example Website or App
https://codesandbox.io/p/sandbox/adoring-snowflake-2ddq54
Steps to Reproduce the Bug or Issue

create a nestjs project
add graphql, graphql-yoga, @graphql-yoga/nestjs, @nestjs/graphql dependencies
configure graphql module using the yoga driver
start the project
access /graphql url

Expected behavior
I expected to see the graphiql interface
Screenshots or Videos
No response
Platform

OS: macOS
NodeJS: 18.16
@graphql-yoga/nestjs v2.0.0
graphql-yoga v4.0.0
@nestjs/graphql v11.0.6
graphql v16.6.0

Additional context
No response

Came here to report the same issue. In my case it's not even responding to POST requests - the integration appears fully non-functional.

Same for the Express integration. We are receiving the same errors here.

Fixed in the latest version


Invalid checksums from repo?

I can install the repo fine, but I cannot install the plugin.  Not sure if this is related to the other open issue or not.
Emby.Server.Implementations.Updates.InstallationManager: The checksums didn't match while installing "Jellyfin Upscaler", expected: "SHA256:6F95B2DD84B7605A6BD1D4A75B2DE6CC", got: "6F95B2DD84B7605A6BD1D4A75B2DE6CC"
[2024-12-29 04:22:04.185 +00:00] [ERR] [29] Emby.Server.Implementations.Updates.InstallationManager: Package installation failed
System.IO.InvalidDataException: The checksum of the received data doesn't match.

The plugin is not completely finished yet. All the files have been uploaded, but the zip file still needs to be adjusted, which I planned to do today or tomorrow at the latest.
And yes, it’s a similar issue because the hash code of the zip is different from the one in the manifest, which is why it can't be installed.


Route.get not working in Route.group

Hello, can't figure out why adonis is not seeing my route.
I have 63 methods (get, post and patch) in my group, all of them working. But when I try to add one more GET method, it simply doesnt work.
Route.group(() => {
    Route.get('/getTest', 'QuestionController.getTest');
    Route.post('postTest', 'QuestionController.postTest');
 }).prefix('api/questionnaire')
Related methods:
    async getTest({request, response}) {         console.log("QuestionController: getTest");     }
    async postTest({request, response}) {         console.log("QuestionController: postTest");     }
postTest func works fine, and logging result as expected, but getTest logs nothing
However, if I take getTest outside of group - I get expected console.log output. All other GET methods, that were written previously - work (although looks like now I'm having troubles with getting data from request.get()).
Is this a bug or I'm missing something?

@Kriegsmarine13
Get added prefix as /
It should be like
Route.get('getTest', 'QuestionController.getTest');

@mritgupta
Thanks a lot, that made it work! But...
This works only in a separate group. If I put these two routes to my main 'api/questionnaire' group it still won't work. But when I take them out in another 'api/questionnaire' group, as mentioned before, still nothing happens. I wonder, if there's a limit on a number of routes in a group?

@Kriegsmarine13
There no limit for routes in the group
I Tried to like this, and its working
Route.group(() => {
  Route.get('getTest', () => {
    return {
      status: 200,
      data: {
        message: 'Get test',
      },
    };
  });
  Route.post('postTest', () => {
    return {
      status: 200,
      data: {
        message: 'Post test',
      },
    };
  });
}).prefix('api/questionnaire');

@mritgupta Well, at least it is working now and I can continue my work. Thank you so much!


Custom keyboard repeat rate not honored under Wayland

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.56.2, 1.57.0
OS Version: Arch Linux

Steps to Reproduce:

Use Sway with a non-default keyboard repeat rate configured (pretty fast in my case).
Run vscode with --enable-features=UseOzonePlatform --ozone-platform=wayland
Press and hold keys, observe that the repeated characters are inserted much slower than in the rest of the system. This includes all keys and affects everything from the editor to the terminal to the command pallete etc.

Seems to be an Electron thing - I've installed Slack to test this and the behavior is the same.

I can confirm this behavior. Keyboard repeat with Wayland works properly everywhere except Electron apps like Slack, VSCode.

doesn't work with kwin too.

The cause is deep down in chromium, right here:
keyboard->auto_repeat_handler_.SetAutoRepeatRate(
      base::TimeDelta::FromMilliseconds(delay),
      base::TimeDelta::FromMilliseconds(rate));
}

So they treat the rate (== characters per second) as the interval (== time between key repeats). The faster you set your repeat rate, the slower it goes.
I'm yet to file a chromium bug about this - if someone beats me to it, kindly link it here.

Reported upstream: https://bugs.chromium.org/p/chromium/issues/detail?id=1238517

Quick update - this have been fixed (validated) in Chromium 94, which is the base for Electron 15. Now to wait until VSCode is updated to use Electron 15+.

WORKAROUND for sway users:
swaymsg -t subscribe -m '[ "window" ]' | jq -r --unbuffered .container.app_id | while read x; do if [ "$x" = Code ]; then rate=14; else rate=70; fi; swaymsg "input type:keyboard repeat_rate $rate"; done
where 70 is your desired rate (events per second) and 14 is 1000 divided by that number.
You could get all fancy and make it into a shell script:
#!/usr/bin/env bash

prevRate=70
while read x; do
    if [ "$x" = Code ]; then
        rate=14;
    else
        rate=70;
    fi
    if [ "$rate" != "$prevRate" ]; then
        swaymsg "input type:keyboard repeat_rate $rate"
        prevRate="$rate"
    fi
done < <(swaymsg -t subscribe -m '[ "window" ]' | jq -r --unbuffered .container.app_id)

and run it from your ~/.config/sway/config by adding:
exec /path/to/above/script

This was finally resolved quite a while ago.


Creating a task

Describe the bug
If I try and create a task and there is space in the title, I get an error saying, title can only contain letter and spaces

Titles are supposed to be words or Alphanumerics


Event for reconnection giving up

Hello:
I think it would be great if the client would emit an event when it gives up trying to reconnect to a dead Redis instance because a user configured it to do so using connect_timeout or max_attempts attributes.
I mean updating this code:
if (self.connect_timeout && self.retry_totaltime >= self.connect_timeout) {
    self.retry_timer = null;
    // TODO - engage Redis is Broken mode for future commands, or whatever
    console.error("node_redis: Couldn't get Redis connection after " + self.retry_totaltime + "ms.");
    return;
}

to look something like this:
if (self.connect_timeout && self.retry_totaltime >= self.connect_timeout) {
    self.retry_timer = null;
    self.emit('reconnectionGiveup');
    return;
}

and the same for the max_attemps case.

+1
Will this not happen because of the reconnect restructuring?

In order to better support this project and its new group of collaborators under a new org we are trying to clean up and close issues older than 6 months. Your issue may have been fixed since the issue was open, however, if you are still experiencing a problem please re-open this issue and we will label it accordingly.

This is going to be fixed by #829


docs: Create asset summaries investigation

Investigation into creating asset summaries - looks like it's actually pretty simple.
You can try the notebook yourself by running nix-shell --run 'jupyter lab extensions/linz/notebooks/asset-datetime-summary.ipynb'. It's my first notebook, so be gentle :)

Relevant to the suggestion posted in this comment: https://github.com/radiantearth/stac-spec/issues/1153#issuecomment-963640804. Discussion ongoing.

@dwsilk Should I close this, or do we want to keep the investigation?

Is this something we would merge @l0b0 or should it just be closed as having served its purpose?

Is this something we would merge @l0b0 or should it just be closed as having served its purpose?

It doesn't need to be merged, but it might serve as a useful example of such an investigation for future ones.


⚠ Bofrost.at has degraded performance

In aca5959, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2204 ms

Resolved: Bofrost.at performance has improved in 0455345.


Removing Microsoft Edge removes Microsoft Edge Update

Describe the bug
Removing Microsoft Edge removes Microsoft Edge Update needed in my case for some apps for MicrosoftEdgeWebView2 to work.
For example Zebar (Glazewm) bar
Needed to reinstall MicrosoftEdgeWebView2 to work again and Microsoft Edge Update reinstalled.
Not sure why it is needed.
To Reproduce
Steps to reproduce the behavior:
Run winutil go to tweaks under advanced tweaks check box Remove Microsoft Edge then run tweaks.
Expected behavior
Remove Microsoft Edge without removing Microsoft Edge Update.
Screenshots

Same, got the same issue here when selecting Remove Edge tweak on WinUtil. Removing that Microsoft Edge Update causing my Edge Dev can't be updated to latest version & that Edge WebView2 Runtime causing some apps not working properly. Now I got reinstalled those Edge Update stuff (including services) from my Edge Dev installer.


Cross-build for Scala.js

@odenzo has expressed interest in this.

This will happen in http4s-fs2-data.


fix _mm_castsi128_pd and _mm_castpd_si128 impls

The _mm_castX_Y SSE intrinsics are "reinterpreting" casts; LLVM's
simd_cast is a "converting" cast. Replace simd_casts with mem::transmute.
Fixes rust-lang/rust#55249

Thanks for this! This looks correct to me, and I'm trying to dig into why CI is failing now.

Ok the segfault here is not the fault of this PR. I'm looking into pinning CI temoprarily to an older nightly to fix CI

@kazcw if you're extra enterprising, the next step here is to update the src/stdsimd submodule in rust-lang/rust, and that should be all that's necessary to get the fix into nightly!

@alexcrichton Cool! #55291

# It's not clear why -Z plt=yes is required here. Probably a bug in LLVM. # If you can remove it and CI passes, please feel free to do so!`

Likely due to https://github.com/rust-lang/rust/pull/54592 switching the default.
If you use lld, it didn't support -fno-plt general-dynamic/local-dynamic TLS models until 2022-12-31 (https://github.com/llvm/llvm-project/commit/8dc73662ab5f7c992f9d7778de7c3611c1d5367e).


No Data without sending data first

Hi
Firstly- thank you for this component- it is exactly what I need.
I'm having a bit of a weird issue- I know that my interface is connected correctly as I get data via the mbpoll tool (https://github.com/epsilonrt/mbpoll), but when I apply the following config then there seems to be no data via the uart interface:
esphome:
  name: ashp
esp32:
  board: nodemcu-32s

wifi: !include wifi.yaml
api:

logger:
  level: VERBOSE
ota:
uart:
  - rx_pin: GPIO23
    tx_pin: GPIO22
    baud_rate: 19200
    stop_bits: 2
    data_bits: 8
    id: hpuart
    parity: NONE
    debug:
      direction: BOTH

modbus_server:
  - id: modbuserver
    uart_id: hpuart
    address: 1 # slave address
    holding_registers:
      - start_address: 1 # starting register range
        default: 0 # default value for all those registers
        number: 10 # number of registers in the range
        on_read: | # called whenever a register in the range is read
          // 'address' contains the requested register address
          // 'value' contains the stored register value
          ESP_LOGD("ON_READ", "This is a lambda. address=%d, value=%d", address, value);
          return value; // you can return the stored value or something else.

With this config there is no data that comes via the uart debugging logs or via the ESP_LOGD command in the on_read section.

Which modbus transceiver are you using?
If its a MAX485 it sounds like your dataflow pin(s) and held low which would lock it into receive only.
This is the problem in the two other open issues.
The code author seems unresponsive.


Why I can't connect the server?

I can't connect the server https://apprtc.appspot.com,I don't know what reason is?

mee too. @QuintGao did you find a way to fix this?

apprtc is blocked in china. You need a VPN to use it


feat: monitoring

:tada: This PR is included in version ara-client-v1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Fix non-deterministic failing test

Introduced changes

modifies non-deterministic test, to avoid possible race condition problems

Checklist

[X] Linked relevant issue
[X] Updated relevant documentation
[X] Added relevant tests
[X] Performed self-review of the code
[X] Added changes to CHANGELOG.md

Linked relevant issue
Nothing is linked here

[x]  Linked relevant issue

Nothing is linked here, or just an issue does not exist?

Yup, issue does not exist.

Also would be helpful to have one or two sentences what was the issue so we don't have to guess it from the code. I assume two script tests were operating on the same state?

I did not have any luck with reproducing this locally, so I had to make an educated guess. I don't think the thing you've mentioned was the case, as we operate on tempdirs that do not include state files. My guess was invalid nonce or generally an account issue (due to the fact that the same account was used for some other chain modifying tests) OR near-identical transactions that could be performed due to the fact that devnet executes them almost instantly.
The first possible issue I try to resolve by using a new account, the second by creating a new script just for state-checking test case. I think these should prevent CI from failing non-deterministically, but as I couldn't reproduce it I will have to keep an eye on CI runs to make sure that is the case.


 I don't know why it would still call animation functions when they are turned off, but eh.
The problem is that getComputedStyle fails on an SVG element, for some reason its ownerDocument is no longer defined when animated with this plugin.
if ( document.defaultView && document.defaultView.getComputedStyle ) {
    getComputedStyle = function( elem, name ) {
        var ret, defaultView, computedStyle;
        name = name.replace( rupper, "-$1" ).toLowerCase();
        if ( (defaultView = elem.ownerDocument.defaultView) && <---- elem.ownerDocument is undefined
        (computedStyle = defaultView.getComputedStyle( elem, null )) ) {
            ret = computedStyle.getPropertyValue( name );
            if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) {
                ret = jQuery.style( elem, name );
            }
        }
        return ret;
    };
}

This should now be fixed (although it's not the best fix I've ever done in my life, sorry):
http://jsfiddle.net/HUAhP/1/


Change version numbering

@orchetect In the next build of CLI / Library can change the version numbering?
Theo, mentions and request that it will helpful if we make the cli version numeric, then the GUI will automatic pull the latest version of the CLI library. Having character  such as -alpha- makes it impossible for package manager like (Swift PM), to update.

We drop the alpha and date suffix, and use 0.2.1, 0.2.2, 0.2.3 and such.
Thank you.
CC: @theogscott

We can drop alpha and just move to SemVer.

0.2.0 released.


Speech generation using Mamba

I am interested in “How to use mamba to generate audio”. One of amazing things is the long sequence attention, i wanna know whether mamba can be used in TTS, so that it does not need the Vocoder. Maybe it will create a more "End-to-End" TTS?

a related experiment can be found here


docker_dns_servers_strict to control docker_dns_servers rtrim

i have 3 nameserver in my /etc/resolv.conf, the max nameservers check will always fail in this case.
add a docker_dns_servers_strict to control whether to rtrim docker_dns_servers to 3

ci check this

ci is good


Bucket listing is too eager

🐛 Description
A couple of times a day we get this problem when processing Level1A:
[ERROR] Level1AException: Failed to get aux data for 2023/2/21/23/MATS_OPS_Level0_VC1_APID100_20230221-132121_20230222-132833.parquet with start time 2023-02-21 22:59:55.126846313+00:00 and end time 2023-02-21 23:59:55.410049438+00:00:
  When listing objects under key 'HTR' in bucket 'ops-payload-level0-v0.2':
    AWS Error SLOW_DOWN during ListObjectsV2 operation:
      Please reduce your request rate.

The problem started when we shifted to hourly partitioning and will, unfortunately, only get worse as we get on...
✌🏽 Expected behaviour
Files pass  through without issues.

(I think a neat way of doing this would be as a decorator, which could be applied to the similar functions where this might occur, but that may be over-designing it.)


Custom validate() not found when wrapping with HOC

Hello,
This may not be a bug/feature request (just my mistake as I am new to HOC) so I would appreciate your patience. This may later help someone else if they are having the same difficulties. I have the following structure:

Formsy.Form

-  Formsy.HOC(MyCustomValidator(InputControl))

In other words, HTML input is being wrapped by MyCustomValidator which is basically copy-paste from Formsy examples for custom validator and defines validate() that should be called. The output of MyCustomValidator is then wrapped into Formsy.HOC following that particular example, except without ES6 syntax I can't use.
Everything works except no validation is performed because I don't define rules with "validations" prop, I am using my own validator which expects validate() to be called. Formsy cannot find this method even though I defined it, because it's looking at some kind of "ReactCompositeComponentWrapper" thing I don't understand instead of MyCustomValidator.
The problem happens in main.js of Formsy:
// the component defines an explicit validate function

if (typeof component.validate === "function")

Printing "component" to the console at this point proves that it has the value (all the getValue/onChange stuff worked) but "validate" is undefined rather than "function". How do I export my validate() function so that Formsy will see it, when using HOC? This worked well with the Mixin.
Thanks!
Custom Validator
'use strict';

var React = global.React;
var FormsyValidator = require('formsy-react').HOC;
var Rules = require('../CustomRules.js');

// ISSUE: Formsy cannot see validate() of CustomValidator

function CustomValidator(Component) {
    return React.createClass({
            render: function() {
                // We get HOC/Mixin members here through this.props
                return (

<Component name={this.props.name} getValue={this.props.getValue} onChange={this.onChange} />
error underneath field text here

);
                },

                onChange: function(e) { this.props.setValue(e.currentTarget.value); },

                validate: function() { console.log('validate called!'); return false; }
        });
}

module.exports = function(Component) {
        return FormsyValidator(CustomValidator(Component));
};

Example of use to create an input field with Custom & Formsy validation:
'use strict';

var Validate = require('./Validator.jsx');

var ValidatedText = Validate(function(props)) {
    return(
        <input id={props.name} name={props.name} value={props.getValue() || ''} onChange={props.onChange} type='text' />
    );
});

module.exports = ValidatedText;

And then the validated field gets used:
<Formsy.Form>
    <ValidatedText name='myinput' required />
</Formsy.Form>

I couldn't find a way to change my own code to fix this issue, however changing Formsy code makes this very simple. Perhaps this is the way to go? I can do a PR.

What this accomplishes:
Allows me to wrap Formsy HOC into my own Validator class that does custom validation. This change makes it possible for Formsy mixin code to discover a 'validate' function if I specify it on wrapped Formsy HOC myself in the render() of my Validator class that takes in Formsy HOC.
Note that I also changed wrapping order. In my first post above, I did Formsy.HOC(CustomValidator(InputComponent)). In this post, I changed my wrap to CustomValidator(Formsy.HOC(InputComponent)). This has the effect of allowing me to access Formsy mixin functions like getValue() using "this" from my custom component; also, if I put one or more props on the Formsy component being wrapped, they appear in its props. For example, I can put "validate = this.validate" in the props. When mixin executes validateComponent, the component being validated will not have validate() when using HOC because for some reason that doesn't get exported, but it will have props.validate(). If it's able to use either one, I can now do custom validation when using HOC.

I gave up on using HOC, never did get this to work. When I changed the direction of wrapping I could no longer access Formsy methods like setValue.

I'm with the same issue using HOC, defining a validate method on the class doesn't work and never gets called. The only work around so far is to try and validate before calling this.props.setValue but that can cause very odd results like not allowing to write partially incomplete values into the input.
Would another option be to wrap the original component with HOC, but use a wrapper version of that that actually defines the validation properties?

#311 May offer a solution to this, or similar, for some people. It did for me.


Travis support

@MrCreosote: If you have time, here is a PR to review. All this does is add a minimal .travis.yml that runs the tests and mucks around with some env vars. I wanted to get this working before working on all the complicated KBase deploy stuff.

I'm not really the right guy to review this stuff - I'm pretty hazy on how it all works. I'd recommend @sychan  or @scanon.

I will note that if you use KB_AUTH_TOKEN to run tests, the tests will fail on PRs because they don't have access to that variable.

If you have a travis.yml KB_AUTH_TOKEN encrypted against the main kbase/CachingService and a separately defined one in another repo, I think it will work.

Yes, you'd have to avoid committing changes to the travis.yml file. But something I should test is if you commit encrypted keys that are encrypted against another repo, does the build crash or just skip over it? In which case you can have the superset of all the necessary keys in your travis.yml

Just auth + ws would cover a lot of scenarios. That's all the search and ujs need, for example. Search just configures the ws to use GFS for storing data instead of Shock. I think all the caching service & ID mapping service would need is auth.


Decouple tests into separate projects

I saw we have only one project for unit tests which relies and tests all projects. We should aim to something like:
Api
Api.Tests
Api.IntegrationTests
Domain
Domain.Tests
Data
Data.Tests
Infrastructure
Infrastructure.Tests

Start with decoupling the tests we have. We have tests for Domain and Infrastructure, create projects for those and move them to the proper namespace. Once that is done, remove the current tests project. If looks like too much for a single PR, consider doing an staggered set.

fixed on #29, #28, #27 and #26


Enhancement: Initialize guild data on join

Summary
When @byte-bot-app joins a new guild we need to initialize data from the guild and set the defaults for certain things (prefix, guild name, etc) in the database.
Basic Example
No response
Drawbacks and Impact
No response
Unresolved questions
No response

[!NOTE]
We utilize Polar.sh to engage in regular as well as pledge-based > sponsorship.
Check out all issues funded or available for funding on our Polar.sh dashboard

If you would like to see an issue prioritized, make a pledge towards it!
We receive the pledge once the issue is completed & verified
This, along with engagement in the community, helps us know which features are a priority to our users.

I'm coming back to working on Byte (and programming in general) after ~3 months...
Idk what I was on here, but we do this with column defaults?

Closing for now. We seem to do this automagically.


Benchmarking and comparison with ac-library (and their ports)

Over ALPC is desirable.

Here's a quick comparison of ac-library-hs (Haskell) and ACL (C++) with oj-verify.
Environment
My machine

NixOS 25.05
CPU: 12th Gen Intel i7-12700K (20) @ 4.900GHz

Haskell
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 9.8.4

cabal.project:
constraints: bitvec +libgmp,
             clock +llvm,
             vector-algorithms +llvm
optimization: 2

Source code: see [app/(https://github.com/toyboot4e/ac-library-hs/tree/f4b87f4f8d7b83bc402a2a67b9531b6864c8dc01/verify/app).
Comile command: shell script that wraps cagal build (gcc-options: -fllvm -Wall -O2)
Execution command: shell script that wraps ./main

C++
$ g++ --version
g++ (GCC) 13.3.0

Source code: ac-library/test/example with modifications below
Compile command: default of oj-verify
Run command: default of oj-verify

I set it up manually:
$ cd /path/to/ac-library/test/examples
$ rename 's/cpp/test.cpp/g' # use GNU rename command
$ # edit source files and add `#define`s.
$ # edit some source files in order to remove trailing whitespace that prevents AC
$ # edit Two-SAT source because Yosupo problem is different
$ cp -r ../../test/atcoder .
$ oj-verify run <filename>

Comparison
I ran oj-verify run just once and noted the slowest answer's time.

Problem
Feature
Haskell
C++

A
Disjoint Set Union
0.074188
0.026175

B
Fenwick Tree
0.099690
0.113507

C
Floor Sum
0.036990
0.029765

D
Max Flow
-
-

E
Min cost Flow
-
-

F
convolution (mint)
0.304466
0.120046

F
convolution (long long)
0.285721
0.127659

G (yosupo)
SCC
0.218998
0.122683

H (yosupo)
Two-SAT
0.226262
0.266000 (my bad impl)

I
Suffix Array / LCP
0.70315
0.038862

J
Segment Tree
0.072081
0.049907

K
Lazy Segment Tree
7.919288
0.396994

L
Lazy Segment Tree
0.948271
0.130266

Haskell K and L are too slow. Something is wrong.

Oh no, is it dues to not inlining??

DSU became 0.037563 with merge inlined instead of stToPrim.
K became 0.650575 with INLINE version of applyIn and unsafeProd instead of stToPrim.
I was trying L..

Inling all the convolution functions may be too much.. the test takes too long to compile or link.

After #41, F got to be 0.113442. Maybe I could come back to stToPrim for compile speed? (cabal test is taking too much time)


k8s: Do not overwrite CRD validation fields

When we unrolled using references in the validation we ended up reusing
validation objects directly, cloberring the original's description.
We can also make full objects out of the 5 or so that are reused, but the goal might have been to reduce repetition.

test-me-please

test-me-please


feat(common): Add trait for easy registration with the World

So this is basically simpler version of #155? Should we just resurrect that one or simplify it to something like this?

The main motivation of @Aceeri's version was serialization and deserialization AFAIK (which has been solved by @omni-viral ), so I think a simpler solution is both sufficient and more practical.

r? @Aceeri @WaDelma

What's blocking merging here?  This looks ready to go.

@kvark is on vacation and wants to approve it before merging, otherwise it's ready. Besides, we can't release anyways since there are still soundness issues with saveload stuff.


OptimizeSwapBeforeMeasure pass drops Swap gate (even if there is NO measure after it)

Environment

Qiskit Terra version: 0.19.1
Python version: 3.8
Operating system: Ubuntu 18.04.6 LTS

What is happening?
I define a a sub-circuit without any measurement (since it is intended as sub-component); this sub-circuit ends with a swap gate, then I optimize the sub-circuit (optimization level=3) before using it as building block for a larger circuit/algorithm. But this optimization drops my final swap gate and leaves me with a semantically different sub-circuit with respect to the initial one I wrote. Thus the optimization is modifying the semantic in this context.
How can we reproduce the issue?
I transpile with level 0 and I get the expected result:
from qiskit import QuantumCircuit, transpile, Aer, execute
from qiskit.circuit.library.standard_gates import *
qc = QuantumCircuit(3)
qc.x(0)
qc.swap(0,1)
qc = transpile(qc, optimization_level=0)
qc.measure_all()
qc.draw(fold=-1)
counts = execute(qc, backend=Aer.get_backend('qasm_simulator'), shots=1024).result().get_counts(qc)
        ┌───┐    ░ ┌─┐
   q_0: ┤ X ├─X──░─┤M├──────
        └───┘ │  ░ └╥┘┌─┐
   q_1: ──────X──░──╫─┤M├───
                 ░  ║ └╥┘┌─┐
   q_2: ─────────░──╫──╫─┤M├
                 ░  ║  ║ └╥┘
meas: 3/════════════╩══╩══╩═
                    0  1  2
{'010': 1024}

Running it with level 3 instead, drops my swap and gives a semantically different circuit, with different result.
from qiskit import QuantumCircuit, transpile, Aer, execute
from qiskit.circuit.library.standard_gates import *
qc = QuantumCircuit(3)
qc.x(0)
qc.swap(0,1)
import pdb
pdb.set_trace()
qc = transpile(qc, optimization_level=3)
qc.measure_all()
qc.draw(fold=-1)
counts = execute(qc, backend=Aer.get_backend('qasm_simulator'), shots=1024).result().get_counts(qc)
        ┌───┐ ░ ┌─┐
   q_0: ┤ X ├─░─┤M├──────
        └───┘ ░ └╥┘┌─┐
   q_1: ──────░──╫─┤M├───
              ░  ║ └╥┘┌─┐
   q_2: ──────░──╫──╫─┤M├
              ░  ║  ║ └╥┘
meas: 3/═════════╩══╩══╩═
                 0  1  2
{'001': 1024}

What should happen?
I would have expected the optimization to preserve the semantic of the input circuit.
Any suggestions?
Via interactive debugging I nailed down the problem to the optimization pass OptimizeSwapBeforeMeasure.
This removes the swap before measurement and the swaps which are before final nodes DAGOutNode (aka end of the circuit). But in this way we are assuming that there will be never be any measurement, which in case of sub-component this is not true. Thus I suggest to remove this optimization for the swap followed by DAGOutNode nodes, because we cannot guarantee a perfectly semantically equivalent circuit.
https://github.com/Qiskit/qiskit-terra/blob/fcec842f1de9fd12120e30a1bf73bf7c52b1bf81/qiskit/transpiler/passes/optimization/optimize_swap_before_measure.py#L45
        swaps = dag.op_nodes(SwapGate)
        for swap in swaps[::-1]:
            if swap.op.condition is not None:
                continue
            final_successor = []
            for successor in dag.successors(swap):
                final_successor.append(
                    isinstance(successor, DAGOutNode)
                    or (isinstance(successor, DAGOpNode) and isinstance(successor.op, Measure))
                )
            if all(final_successor):
                # the node swap needs to be removed and, if a measure follows, needs to be adapted
                swap_qargs = swap.qargs
                measure_layer = DAGCircuit()
                for qreg in dag.qregs.values():
                    measure_layer.add_qreg(qreg)
                for creg in dag.cregs.values():
                    measure_layer.add_creg(creg)
                for successor in list(dag.successors(swap)):
                    if isinstance(successor, DAGOpNode) and isinstance(successor.op, Measure):
                        # replace measure node with a new one, where qargs is set with the "other"
                        # swap qarg.
                       ...
                dag.compose(measure_layer)
                dag.remove_op_node(swap)

Going back to my bug-triggering code, if the measurement would have been included in the circuit before the transpile call it would have worked perfectly, but sometimes we might not know how this sub-circuit will be reused in other parts of our algorithm.

Right now, transpile is purely for complete quantum programs; you say you want to use it on a subcomponent, but right now that's not a supported use.  In the context of an entire program, there is no semantic violation here.  Our documentation on this expectation could certainly be better, though.
Compilation of subcomponents is something that has come up a couple of times before, and it may be something we want to support in the future.  It's not immediately obvious as to how this would work, though; various things like routing, layout and scheduling need to know the exact register allocations, and a lot of optimisations need to know what swaps/couplings will be in place in order to rearrange gates.  Even if we did the initial basis translation on a subcomponent, it couldn't actually be re-used safely unless it was laid out onto specific qubits and then only applied to that exact same set, and even then it would need to be scheduled before it could run.


chore(main): release 1.2.1

:rocket: New release
1.2.1 (2023-05-16)
:memo: Documentation

update instructions for adding favicon (4438214)

:hammer: Housekeeping

ci: add comments for GitHub action workflow trigger (4e83639)
ci: change emojis used in changelog (2514abd)

:bug: Bug Fixes

baseURL variable on See all posts button (#38) (6e12b25)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/hugo-sid/hugo-blog-awesome/releases/tag/v1.2.1 :sunflower:


The app crashes when launching a background isolate/service on Android

This is because the activity object in the FlutterFlipperkitPlugin constructor in FlutterFlipperkitPlugin.java is null.
Here's a more detailed explanation:
https://github.com/ryanheise/audio_service#sample-bug-report

Please upgrade to 0.0.21


Fix the conda build with RMM 23.02

Description
The conda build failed on the RMM 23.02 variant as shown here due to the change with moving RMM_LOGGING_ASSERT between versions 23.02 and 23.04.
This fix removes uses of RMM_LOGGING_ASSERT replacing it with the equivalent DCHECK which is used throughout the rest of the repo.
Checklist

[X] I am familiar with the Contributing Guidelines.
[X] New or existing tests cover these changes.
[X] The documentation is up to date with these changes.

/merge


Add TypeScript definitions

Am I missing anything @ddneat? Fixes #16
Issue mentions adding example to README, but this should "just work" for TS users

Thanks for opening this pullrequest! Looks good to me and therefore ok, that we skip the documentation in the README.md for now as there is an major release of Tropic upcoming, which will include a revised documentation as well.
Cheers!


Typo "Azure Cosmos Emulator"→"Azure Cosmos DB Emulator"

https://docs.microsoft.com/en-us/azure/cosmos-db/cassandra-faq

@hyoshioka0128 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Merging based on @SnehaGunda approval in https://github.com/MicrosoftDocs/azure-docs/pull/66459 and related PRs.


Attempt to append data created with OSM tool results in missing/incorrect nodes

Steps to replicate:

Create a dataset using the OSM Toolbox - e.g., create a geodatabase and populate it with features through the OSM Server Component

Follow workflows for importing, per documentation at https://github.com/Esri/arcgis-osm-editor/wiki/Contribute-an-existing-dataset-to-osm

At Append step, node IDs are getting mixed up. Consequence: errors such as the one below result when Upload not successful; when Upload is successful, nodes and polygons are placed in incorrect locations on the map.

"The remote server returned an error: (412) Precondition Failed.
Precondition failed: Way  requires the nodes with id in (7308,7309,7310,7311), which either do not exist, or are not visible...."

Unable to reproduce. I appended some line features to existing edits and uploaded everything. Seems ok.
Christine, if this is still an issue we can re-open the issue.


[WIP] Initial sketch of notification system

Description
I started to sketch out a simple notification system we can start to use to display notifications to the user without having to puts error display inside every component.
TODO:

[ ] Add a DISMISS_NOTIFICATION action type and a default way to dismiss notifications
[ ] Provide a way for components to trigger callbacks when something is clicked in a notification
[ ] Add tests once the approach is solid

Reviewer Notes
There is probably some more advanced styling that we can do, but for now the notifications are displayed as alerts with position:sticky so they are always visible on the screen regardless of the user's scroll position.
Screenshot

Here is a screen capture of this PR handling an authentication issue:

@tinyels I brought this up in design and I am putting together a list of error states for them to consider. Is there value in leaving this open, or should I close it until we have that work complete?


fix: Hover tab to show checkbox

Codecov Report

Merging #176 into master will increase coverage by 0.37%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #176      +/-   ##
==========================================
+ Coverage   52.61%   52.98%   +0.37%
==========================================
  Files          18       18
  Lines         249      251       +2
  Branches       51       52       +1
==========================================
+ Hits          131      133       +2
  Misses         87       87
  Partials       31       31

Impacted Files
Coverage Δ

src/js/components/Tab/Icon.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Coverage increased (+0.5%) to 46.269% when pulling 30490806d72604a976aa7b636dd54c1491febc59 on tab_checkbox into bcc5b8d5736e37de5de454a30ef03f81925447b4 on master.


feature: Streamline running script modules/cookbooks

Problem
Too much friction for running a module
the process is

download cookiecutter
install dependencies
kitchenai init
kitchenai dev
hatch build

While this is robust, it diminishes the developer experience. This can be an option maybe as a template guide.
Suggestion
Bypass init and local db storage of config file and provide a simple way to do the following
kitchenai dev src/cookbook.kitchen:kitchen
and kitchenai run src/cookbook.kitchen:kitchen to run the production.

https://github.com/epuerta9/kitchenai/pull/10


Added Pipl search engine

Are you sure it is a "general" search engine? I can't find any public endpoint for searching something

@edoardottt its actually termed as people's search engine. You can check & take the decision to merge or not

Adding that under another category


WIP: Devcontainer updates and support codespaces

PR Summary
This provides several updates with the goal of enabling a PowerShell contributor to begin contributing as fast as possible to PowerShell utilizing a devcontainer or CodeSpaces and Visual Studio Code.

Update devcontainer base OS to official vscode Ubuntu 18.04 devcontainer image
Add devcontainer tooling and initial setup scripts to match the docs/building/linux.md document as closely as possible
Add setup steps mirrored from the codespaces devcontainer repo to ensure proper codespaces support
Remove legacy Fedora references that are no longer reference in the codebase or Azure Pipelines AFAIK

Known Issues

Codespaces doesnt support WaitFor on the creation commands yet, so occasionally a race condition occurs where omnisharp loads before dotnet has been bootstrapped by Start-PSBootstrap, leading to a dotnet not found message. This can be resolved by just reloading the window. I can also suppress the message but I chose not to as it seems to be fairly rare. Once waitfor is supported then this won't be an issue

PR Context

PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[ ] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[x] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[x] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[x] N/A or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[x] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and opened an issue in the relevant tool repository. This may include:

[ ] Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode
(which runs in a different PS Host).

[ ] Issue filed:

[ ] Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.

[ ] Issue filed:

[ ] Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).

[ ] Issue filed:

[ ] Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

[ ] Issue filed:

@msftbot still active, just life stuff in between :)

Maybe include <EnableWindowsTargeting>true</EnableWindowsTargeting> per project or in a Directory.Build.props in the root so we can compile for Windows. Had to use that to catch all errors in #17769.

@fflaten I don't think windows containers are supported for either devcontainers or codespaces?

@fflaten I don't think windows containers are supported for either devcontainers or codespaces?

Not Windows containers, but being able to run Start-PSBuild -Runtime win7-x64 in Ubuntu container. Without that property it won't download the required Windows targeting packs. See https://docs.microsoft.com/en-us/dotnet/core/tools/sdk-errors/netsdk1100

Thanks @msftbot, still active :)

@SteveL-MSFT have some time to investigate this again. Question: Prebuilds now use Github Actions, and are stored in Github storage. These have a free allocation now for public repos, as such will this be possible to do now?


Formatting a label expression with 2 decimal number

When creating a label expression I am concatenating a distance value (double) and a unit (string) so that it looks like "200.00meters" or "233.59NM". However I am struggling on how to format the numeric part of the expression:
'create labels for the polygon layer
Dim lyrLabel As MapLabelLayer = New MapLabelLayer(lyrPgnRing)
lyrLabel.Symbology.Categories(0).Expression = "[RADVAL] + [RADUNIT]" '<-- how do I use something like FORMAT(RADVAL, "0.00") + RADUNIT here
lyrLabel.Symbolizer.FloatingFormat = "0.00"
lyrLabel.Symbolizer.Alignment = StringAlignment.Center
lyrLabel.Symbolizer.LabelPlacementMethod = LabelPlacementMethod.Centroid
lyrLabel.Symbolizer.Orientation = ContentAlignment.BottomCenter
lyrPgnRing.LabelLayer = lyrLabel
lyrPgnRing.ShowLabels = True

As it is the labeler displays 9 decimal places and that's just too long for my purpose. I tried using FloatingFormat but that doesn't have any effect.

never mind, it does work and it works great. I updated code in a routine and ran the sample with another routine. time to go home.


Experimental feature: Spot Fleet support for worker nodes

refs #112

Current coverage is 64.52% (diff: 92.30%)

Merging #113 into master will increase coverage by 0.78%

@@             master       #113   diff @@
==========================================
  Files             4          5     +1
  Lines           924        950    +26
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            589        613    +24
- Misses          254        255     +1
- Partials         81         82     +1

Powered by Codecov. Last update ed09dd9...102cb5b

@c-knowles FYI I've introduced our first test suite which does integration testing with real AWS services including S3, KMS, CloudFormation as we've discussed before
https://github.com/coreos/kube-aws/pull/113/commits/f46c711f1e50f01998ad2f6611a0ed0a75444db8#diff-17c3b4ff0a8d67faed426a76a03f8430R1

E2E tests passed

Rebased and then squashed.

All green. Merging 🚥


Typo in Chapter 9 of book

When enumerating the four QoS levels, the second, User Initiated, contains a typo.

User Initiated: (...) i.e., if the user taps on buttons to do other stuff, that could should be executed (...)

"Could" should be removed from this line.

This is fixed in the next update.


Host for metrics-datadog from host.address

Currently micro-metrics-datadog doesn't support host field for metrics. Datadog doesn't allow setting host via host tag. This PR should fix it.

Hey @earlzero and @morrowgi , Do we have an issue logged for this one (for release notes tracking)?

I've created one #343.


What File Types are supported?

What File Types are supported?
Is there a possibility to also upload CSV oder Excel Files?

Looking through the code, only pdf and text files.


Lets XCode build based on the selected destination

When builing for an iOS device in XCode, TARGET_DEVICE_IDENTIFIER is exported, and PLATFORM_NAME is "iphoneos". PLATFORM_NAME is "iphonesimulator" when building for an iOS simulator.
Sets the build option --ios_multi_cpus=arm64 when building for a iOS device. Otherwise, uses the default option.
Also pins GoogleUserMessagingPlatform to fix the master.

@segiddins I tried to add a test, but xcodebuild emits wrong env variables, e.g., PLATFORM_NAME is iphoneos even if the target is a simulator. Saw someone complained the same issue. Fortunately if a developer wants to build from commandline, she should directly use bazel, instead of xcodebuild.

@congt I think we could check one of the ARCHS env vars instead of just the platform name?

@segiddins xcodebuild has the similar issue with CURRENT_ARCH and some other arch variables. It's arm64 even when the target device is a simulator. I used PLATFORM_NAME instead of CURRENT_ARCH to differentiate iOS and macos. Read somewhere that macos can also use arm64.


net/http: data race in dialConn when dialing proxied connections

What version of Go are you using (go version)?

$ go version
go version go1.13.5 linux/amd64

Does this issue reproduce with the latest release?
1.13.5, yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/nuts/.cache/go-build"
GOENV="/home/nuts/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/nuts/golang-test/go-src"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/nuts/golang-test/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/nuts/golang-test/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build701551313=/tmp/go-build -gno-record-gcc-switches"

What did you do?

Ran this code. although it uses elazarl/goproxy package, behavour can be reproduced without this package.
package main

import (
	"net/http"
	"net/url"
	"time"
	"sync"
	"io/ioutil"
	"github.com/elazarl/goproxy"
	"fmt"
)

func ProxyFunc(req *http.Request) (*url.URL, error) {
	return url.Parse(req.RemoteAddr)
}

func prepareTransport() *http.Transport {
	return &http.Transport{
		Proxy: ProxyFunc,
		//DisableKeepAlives: true,
		ProxyConnectHeader: http.Header{
			"User-Agent": { "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:71.0) Gecko/20100101 Firefox/71.0" },
			"Proxy-Connection": {"keep-alive"},
			"Connection": {"keep-alive"},
		},
	}
}

func sendRequest(client *http.Client, proxy *url.URL, u *url.URL) {
	for {
		req := http.Request{
			URL: u,
			RemoteAddr: proxy.String(),
			Method: "GET",
		}

		if res, err := client.Do(&req); err == nil {
			defer res.Body.Close()
			_, _ = ioutil.ReadAll(res.Body)

		}
	}
}

func spawnProxies(port string) {
	proxy := goproxy.NewProxyHttpServer()
	proxy.Verbose = false
	fmt.Println(http.ListenAndServe(":" + port, proxy))
}

func main() {
	numProxies := 4
	client := http.Client{
		Transport: prepareTransport(),
		Timeout: time.Second * time.Duration(5),
	}

	u, _ := url.Parse("https://httpbin.org/")

	proxyPorts := make([]string, 0, numProxies)

	for i := 0; i < numProxies; i++ {
		port := fmt.Sprint("800", i)
		proxyPorts = append(proxyPorts, port)
		go spawnProxies(port)
	}

	var wg sync.WaitGroup

	wg.Add(numProxies)

	for _, port := range proxyPorts {
		proxy, _ := url.Parse("http://test:test@<IP_ADDRESS>:" + port)
		go func() {
			defer wg.Done()
			sendRequest(&client, proxy, u)
		}()
	}

	wg.Wait()
}

What did you expect to see?
Above code to run without data race warning.
What did you see instead?
==================
WARNING: DATA RACE
Write at 0x00c00008b530 by goroutine 22:
  runtime.mapassign_faststr()
      /home/nuts/golang-test/go/src/runtime/map_faststr.go:202 +0x0
  net/http.(*Transport).dialConn()
      /home/nuts/golang-test/go/src/net/textproto/header.go:22 +0x1d4f
  net/http.(*Transport).dialConnFor()
      /home/nuts/golang-test/go/src/net/http/transport.go:1308 +0x14f

Previous write at 0x00c00008b530 by goroutine 21:
  runtime.mapassign_faststr()
      /home/nuts/golang-test/go/src/runtime/map_faststr.go:202 +0x0
  net/http.(*Transport).dialConn()
      /home/nuts/golang-test/go/src/net/textproto/header.go:22 +0x1d4f
  net/http.(*Transport).dialConnFor()
      /home/nuts/golang-test/go/src/net/http/transport.go:1308 +0x14f

Goroutine 22 (running) created at:
  net/http.(*Transport).queueForDial()
      /home/nuts/golang-test/go/src/net/http/transport.go:1277 +0x68a
  net/http.(*Transport).getConn()
      /home/nuts/golang-test/go/src/net/http/transport.go:1231 +0x785
  net/http.(*Transport).roundTrip()
      /home/nuts/golang-test/go/src/net/http/transport.go:522 +0x83d
  net/http.(*Transport).RoundTrip()
      /home/nuts/golang-test/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /home/nuts/golang-test/go/src/net/http/client.go:250 +0x6a8
  net/http.(*Client).send()
      /home/nuts/golang-test/go/src/net/http/client.go:174 +0x1ca
  net/http.(*Client).do()
      /home/nuts/golang-test/go/src/net/http/client.go:641 +0x2cc
  main.sendRequest()
      /home/nuts/golang-test/go/src/net/http/client.go:509 +0x11f
  main.main.func1()
      /home/nuts/golang-test/t.go:74 +0x80

Goroutine 21 (running) created at:
  net/http.(*Transport).queueForDial()
      /home/nuts/golang-test/go/src/net/http/transport.go:1277 +0x68a
  net/http.(*Transport).getConn()
      /home/nuts/golang-test/go/src/net/http/transport.go:1231 +0x785
  net/http.(*Transport).roundTrip()
      /home/nuts/golang-test/go/src/net/http/transport.go:522 +0x83d
  net/http.(*Transport).RoundTrip()
      /home/nuts/golang-test/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /home/nuts/golang-test/go/src/net/http/client.go:250 +0x6a8
  net/http.(*Client).send()
      /home/nuts/golang-test/go/src/net/http/client.go:174 +0x1ca
  net/http.(*Client).do()
      /home/nuts/golang-test/go/src/net/http/client.go:641 +0x2cc
  main.sendRequest()
      /home/nuts/golang-test/go/src/net/http/client.go:509 +0x11f
  main.main.func1()
      /home/nuts/golang-test/t.go:74 +0x80
==================
==================
WARNING: DATA RACE
Write at 0x00c0000b84f0 by goroutine 22:
  net/http.(*Transport).dialConn()
      /home/nuts/golang-test/go/src/net/textproto/header.go:22 +0x1d67
  net/http.(*Transport).dialConnFor()
      /home/nuts/golang-test/go/src/net/http/transport.go:1308 +0x14f

Previous write at 0x00c0000b84f0 by goroutine 21:
  net/http.(*Transport).dialConn()
      /home/nuts/golang-test/go/src/net/textproto/header.go:22 +0x1d67
  net/http.(*Transport).dialConnFor()
      /home/nuts/golang-test/go/src/net/http/transport.go:1308 +0x14f

Goroutine 22 (running) created at:
  net/http.(*Transport).queueForDial()
      /home/nuts/golang-test/go/src/net/http/transport.go:1277 +0x68a
  net/http.(*Transport).getConn()
      /home/nuts/golang-test/go/src/net/http/transport.go:1231 +0x785
  net/http.(*Transport).roundTrip()
      /home/nuts/golang-test/go/src/net/http/transport.go:522 +0x83d
  net/http.(*Transport).RoundTrip()
      /home/nuts/golang-test/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /home/nuts/golang-test/go/src/net/http/client.go:250 +0x6a8
  net/http.(*Client).send()
      /home/nuts/golang-test/go/src/net/http/client.go:174 +0x1ca
  net/http.(*Client).do()
      /home/nuts/golang-test/go/src/net/http/client.go:641 +0x2cc
  main.sendRequest()
      /home/nuts/golang-test/go/src/net/http/client.go:509 +0x11f
  main.main.func1()
      /home/nuts/golang-test/t.go:74 +0x80

Goroutine 21 (running) created at:
  net/http.(*Transport).queueForDial()
      /home/nuts/golang-test/go/src/net/http/transport.go:1277 +0x68a
  net/http.(*Transport).getConn()
      /home/nuts/golang-test/go/src/net/http/transport.go:1231 +0x785
  net/http.(*Transport).roundTrip()
      /home/nuts/golang-test/go/src/net/http/transport.go:522 +0x83d
  net/http.(*Transport).RoundTrip()
      /home/nuts/golang-test/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /home/nuts/golang-test/go/src/net/http/client.go:250 +0x6a8
  net/http.(*Client).send()
      /home/nuts/golang-test/go/src/net/http/client.go:174 +0x1ca
  net/http.(*Client).do()
      /home/nuts/golang-test/go/src/net/http/client.go:641 +0x2cc
  main.sendRequest()
      /home/nuts/golang-test/go/src/net/http/client.go:509 +0x11f
  main.main.func1()
      /home/nuts/golang-test/t.go:74 +0x80

Thanks for the report. I can reproduce this with both go1.13.5 and gotip using the provided program.
Since this bug is already present in 1.13, I'm tentatively milestoning it for 1.15, but if the fix is small it might make 1.14 (and might be a backport candidate for a patch release either way).
CC @bradfitz

It is also worth noting that the stack traces in the race report seem to be missing at least one inlined stack frame. That is probably a compiler and/or runtime bug.
CC @dvyukov @randall77 @aclements

Here is a race report with inlining disabled, using a current gotip (after go1.14beta1).

==================
WARNING: DATA RACE
Write at 0x00c0001324f0 by goroutine 17:
  net/textproto.MIMEHeader.Set()
      /usr/local/google/home/bcmills/go/src/net/textproto/header.go:22 +0xe3
  net/http.Header.Set()
      /usr/local/google/home/bcmills/go/src/net/http/header.go:37 +0x60
  net/http.(*Transport).dialConn()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1569 +0x1828
  net/http.(*Transport).dialConnFor()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1357 +0x14f

Previous write at 0x00c0001324f0 by goroutine 15:
  net/textproto.MIMEHeader.Set()
      /usr/local/google/home/bcmills/go/src/net/textproto/header.go:22 +0xe3
  net/http.Header.Set()
      /usr/local/google/home/bcmills/go/src/net/http/header.go:37 +0x60
  net/http.(*Transport).dialConn()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1569 +0x1828
  net/http.(*Transport).dialConnFor()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1357 +0x14f

Goroutine 17 (running) created at:
  net/http.(*Transport).queueForDial()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1326 +0x592
  net/http.(*Transport).getConn()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1280 +0x6c0
  net/http.(*Transport).roundTrip()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:544 +0x7b4
  net/http.(*Transport).RoundTrip()
      /usr/local/google/home/bcmills/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:252 +0x24c
  net/http.(*Client).send()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:176 +0x196
  net/http.(*Client).do()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:692 +0x2eb
  net/http.(*Client).Do()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:560 +0x42
  main.sendRequest()
      /tmp/tmp.jpcyEnuDdq/36431/main.go:37 +0x134
  main.main.func1()
      /tmp/tmp.jpcyEnuDdq/36431/main.go:76 +0x89

Goroutine 15 (running) created at:
  net/http.(*Transport).queueForDial()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1326 +0x592
  net/http.(*Transport).getConn()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:1280 +0x6c0
  net/http.(*Transport).roundTrip()
      /usr/local/google/home/bcmills/go/src/net/http/transport.go:544 +0x7b4
  net/http.(*Transport).RoundTrip()
      /usr/local/google/home/bcmills/go/src/net/http/roundtrip.go:17 +0x42
  net/http.send()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:252 +0x24c
  net/http.(*Client).send()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:176 +0x196
  net/http.(*Client).do()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:692 +0x2eb
  net/http.(*Client).Do()
      /usr/local/google/home/bcmills/go/src/net/http/client.go:560 +0x42
  main.sendRequest()
      /tmp/tmp.jpcyEnuDdq/36431/main.go:37 +0x134
  main.main.func1()
      /tmp/tmp.jpcyEnuDdq/36431/main.go:76 +0x89
==================

@gopherbot, please backport to Go 1.13 and 1.12.
This is a data race in net/http, and the fix is straightforward.

This should be fixed in the next 1.14 build (beta2 or rc1).


Label line doesn't follow the bubble when it changes size

Go to the end of timesldier, 2015
then select a country that is quite large
Don't move the small label
Now drag timesldier back
The leach form the label to the bubble dioesn't connect with the bubble
Which could lead to it pointing at the wrong country

was resolved ages ago in bubble chart, you can see the solution there.
however in bubble map it should be more elegant


IPEX bug in recent update

In the recent IPEX update to scripts/demo/credentials/single-issuer.sh, I get a bug ERR: 'Hab' object has no attribute 'mhab'  after I ran kli ipex grant.

@pfeairheller I'll work with you to retest this.


Add explicit workflow for NLeSC projects

At the moment the guide is a bit unclear / verbose / outdated on the software development workflow we use at NLeSC. There also seem to be some steps missing, and some steps seem to be optional (or a choice) when they really aren't.
It would be good to make this more explicit, and depend less on the interpretation of the individual engineers.
Some examples:

The guide links to the old IP policy (2017). There is a 2021 one.
All repo's of software we create must be public from the start (according to the 2021 IP policy).
Adding stuff to the RSD should be described somewhere.
Talking to your friendly neighborhood TechLead / GT / SIG when making big technical choices or running into problems
....

@jmaassen Is this something that you would still like to put in the guide? Or is the intranet a better location? E.g. https://nlesc.sharepoint.com/sites/home/SitePages/Project-procedures.aspx

I think the direction we are going in is that the Guide will be about NLeSC specific advice that is also valuable to share with the world. NLeSC specific processes and links like the ones @jmaassen mentions should indeed be put somewhere on the intranet.
So, in my estimation, this is not going to be added. Feel free to reopen if you disagree :)