Make it more dynamic

Hi!
Right now most of the styling options are hard-coded,
What do you think about making them in to options instead?
Im thinking something like:
scrollpup({
  background: 'linear-gradient(to right, #36d1dc, #5b86e5)',
  height: '5px'
})

Cheers,
Linus

@imlinus That's a great idea would you like to create a Pull Request

Of course I will!
I'll get on it after work :-)

Hi, please check my PR (https://github.com/flouthoc/scrollpup.js/pull/4)

:tada: Amazing !!!!!!


Replace 'open' directive attribute to 'show' - bugfix to Yeoman dist …

This fix solve Yeoman minified version (grunt serve:dist).
BUT this remove attribute param open and add attribute param show, breaking compatibility with oldest versions.

Please accept this PR. Thanks.


Implement VK_DBG_LAYER_ACTION_BREAK

This feature, though documented and allowed for, was apparently unimplemented.
Also fixed a documentation error that would keep VK_DBG_LAYER_ACTION_DEBUG_OUTPUT from working correctly.
@cnorthrop, any suggestions on ensuring the non-Windows break will work on Android?
Fixes #1991.

The signal handling should be very similar if not identical to Linux, so whatever you do to test that, it should work.  If it doesn't, we can look at it.

It worked fine in GDB and produced a good call-stack.

Ah, okay, I presumed you were going to hook up a regression test, but maybe that's not possible when testing a breakpoint.  We should be able to try this out by hand with gdbserver, but no need to hold up the PR.

We've begun planning for a follow-on for testing the debugreport stuff including the layer settings file options (recognizing the issues with testing debugbreaks).


Issue running tensorflow - ImportError: DDL load failed

Please make sure that this is a build/installation issue. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:build_template
System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10
TensorFlow installed from (source or binary):
TensorFlow version: 1.12
Python version: 3.6
Installed using virtualenv? pip? conda?: pip
CUDA/cuDNN version: CUDA v9.0
GPU model and memory: NVIDIA GTX 660 Ti

Describe the problem
Error is occurring when trying to run Hypergan
Provide the exact sequence of commands / steps that you executed before running into the problem
followed this guide until the final run command (https://gist.github.com/jmbjr/291ea9767cc8e33517dc03d242e25356).
commands as follows:
$ conda update conda
$ conda create -n hypergan python=3.6 anaconda
$ activate hypergan
$ pip install tensorflow-gpu hyperchamber nashpy pygame natsort opencv-python
$ cd $path_to_hypergan_folder
$ git clone https://github.com/HyperGAN/HyperGAN.git
$ cd HyperGAN
$ python setup.py develop
$ cd $dir_with_dataset_folder
$ hypergan train sample -s 32x32x3 -f png -b 8 --config wgan-gp --sampler static_batch --sample_every 5 --save_samples
Any other info / logs
the images inside \sample are 4999 png files all 32x32. The resultant error is as follows:
(hypergan-env) C:\Users\Craig\Documents\Data>hypergan train sample -s 32x32x3 -f png -b 8 --config wgan-gp --sampler static_batch --sample_every 5 --save_samples
Traceback (most recent call last):
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\Scripts\hypergan", line 7, in
exec(compile(f.read(), file, 'exec'))
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\HyperGAN\bin\hypergan", line 7, in
import hypergan as hg
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan-env\hypergan\hypergan_init_.py", line 17, in
from .gan import GAN
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan-env\hypergan\hypergan\gan.py", line 1, in
from hypergan.gans.standard_gan import StandardGAN
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan-env\hypergan\hypergan\gans\standard_gan.py", line 10, in
from hypergan.discriminators import *
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan-env\hypergan\hypergan\discriminators\autoencoder_discriminator.py", line 1, in
import tensorflow as tf
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow_init_.py", line 24, in
from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python_init_.py", line 49, in
from tensorflow.python import pywrap_tensorflow
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\imp.py", line 243, in load_module
return load_dynamic(name, filename, file)
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan-env\lib\imp.py", line 343, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

I have now tried using tensorflow 1.10 and i am getting the following error: (hypergan) C:\Users\Craig\Documents\LLD>hypergan train sample -s 32x32x3 -f png -b 8 --config wgan-gp --sampler static_batch --sample_every 5 --save_samples
Traceback (most recent call last):
File "C:\Users\Craig.conda\envs\hypergan\lib\site-packages\tensorflow\python\platform\self_check.py", line 87, in preload_check
ctypes.WinDLL(build_info.cudnn_dll_name)
File "C:\Users\Craig.conda\envs\hypergan\lib\ctypes_init_.py", line 348, in init
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Craig.conda\envs\hypergan\Scripts\hypergan", line 7, in
exec(compile(f.read(), file, 'exec'))
File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64\envs\hypergan\HyperGAN\bin\hypergan", line 7, in
import hypergan as hg
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan\hypergan\hypergan_init_.py", line 17, in
from .gan import GAN
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan\hypergan\hypergan\gan.py", line 1, in
from hypergan.gans.standard_gan import StandardGAN
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan\hypergan\hypergan\gans\standard_gan.py", line 10, in
from hypergan.discriminators import *
File "c:\program files (x86)\microsoft visual studio\shared\anaconda3_64\envs\hypergan\hypergan\hypergan\discriminators\autoencoder_discriminator.py", line 1, in
import tensorflow as tf
File "C:\Users\Craig.conda\envs\hypergan\lib\site-packages\tensorflow_init_.py", line 22, in
from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
File "C:\Users\Craig.conda\envs\hypergan\lib\site-packages\tensorflow\python_init_.py", line 49, in
from tensorflow.python import pywrap_tensorflow
File "C:\Users\Craig.conda\envs\hypergan\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in
self_check.preload_check()
File "C:\Users\Craig.conda\envs\hypergan\lib\site-packages\tensorflow\python\platform\self_check.py", line 97, in preload_check
% (build_info.cudnn_dll_name, build_info.cudnn_version_number))
ImportError: Could not find 'cudnn64_7.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Note that installing cuDNN is a separate step from installing CUDA, and this DLL is often found in a different directory from the CUDA DLLs. You may install the necessary DLL by downloading cuDNN 7 from this URL: https://developer.nvidia.com/cudnn

fixed this with getting cudnn cuda stuff from nvidia dev site


Bayesian regression with :cholesky not returning committee

# calling bayesian_fit in `bayesian_linear_regression`
return bayesian_fit(A, Y;
                            variance_c_floor = sig_0_floor * sig_0_floor,
                            variance_e_floor = sig_e_floor * sig_e_floor,
                            verbose = verbose)

# some code in between ...

function bayesian_fit(...)

   C = solve(y, X, var_c, var_e)
   return Dict("C" => C)

Seems that committee is not returned when we use Cholesky factorization for the BLR solver. Maybe worth a warning so that the users aware? It took me some time to look into the code and figure out why the committee is not return even if committee_size > 0.

Good point. Link #66.


undetectability

I think it would be better if there was no way to tell whether or not a message has been hidden in an image. I guess what the code does now is record certain start and end markers so it is possible to know where the encoded material begins and ends. But how about this:

Make the encoded data start at the very beginning of the pixel data, or at some fixed location after that with no start marker, and place no marker saying where it ends. Needless to say, whatever original noise has not been overwritten should stay intact.
The decode command thus extracts whatever data has been hidden, and after it ends it returns the original noise of the picture. It is up to the user to decide where the hidden data ends.
The reason for all this is that real steganography is undetectable. If the code adds detectable markers of any kind, the cover is blown.

That is definitely a good point, currently the data is written at the start of the pixel data and after the encoded message ends the original noise in the image is cleaned. But this is only default behaviour, it is possible to specify a function which determines what is written to the image data after the message ends.
For some purposes, where steganography.js is just used to store data inside the image and not to really hide it, it is necessary to extract the exact message again. So I think that this is something that should be configurable.
Another idea that would support the undetectability would be to distribute the hidden message throughout the image data, so that the whole message is not hidden in a single bundle inside the image. What do you think about that?

Some things that might be done easily:

Don't clean the rest of the pixel data, or at least leave that possibility open. The recipient can still figure out where the real data ends by inspection, and this would help a lot to hide the data.
Distribute the data throughput the file (perhaps leaving the rest of the noise intact, for better undetectability) by some sort of interleaving. How about this:
area to be used = (number of pixels)*3/(bits to be hidden)*counter
where counter runs from 1 to the number of bits to be hidden. The recipient would have to know the number of bits hidden, or this number could be hidden, in binary form, in a series of pixels.
Good work!


Individual Tiles

Is it possible to update the tilemap at run time?  For example, changing a land tile to a water tile?  If so, how do I get the individual tiles via a system or event?  I've tried adding the entity to resources at the point of creation of the TiledMapComponents, but I'm unsure which struct I should be looking for.  Is it the tiled::Map struct?
I'd really appreciate any help.

Ignore this, I've figured it out.  If this is of interest to anyone in the future (or there's an easier/better way), you can get the Map from the Assets by storing the Entity of the TiledMapComponents at the point of creation.  I hadn't considered that it was of type Handle, which is why I failed originally.
Sorry for the unnecessary issue raise.


topics.getPartitionedInternalStats should allow the returned data to not contain publishers or subscriptions information.

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
I have a lot of producers in a topic called admin.topics().getPartitionedStats, like 3k producers.The response size of getPartitionedStats is enormous (400M+) and it responds slowly.

However, I do not require information about publishers and subscriptions.
Solution
So I hope publishers and subscriptions can be optional, we can add new interface like below:
    CompletableFuture<PartitionedTopicStats> getPartitionedStatsAsync(
            String topic, boolean perPartition, boolean getPreciseBacklog, boolean subscriptionBacklogSize,
            boolean getEarliestTimeInBacklog, boolean containPublishers, boolean containSubsriptions,);

Alternatives
No response
Anything else?
No response
Are you willing to submit a PR?

[X] I'm willing to submit a PR!

@crossoverJie
Could you please draft a PIP for it?  https://github.com/apache/pulsar/blob/master/pip/README.md

@mattisonchao OK, I'll try it later.

fix by https://github.com/apache/pulsar/pull/21228


[RaspberryPi] Memory access error when using DRM instead of Framebuffer

Running this Demo application "ControlCatalog.NetCore" on raspberry pi with 7" Touchscreen.
When trying to start the project with the parameter "--drm", a memory access error occurs. Is this error known?

Most likely some error in P/Invoke import declaration.
I've only tested DRM backend on my laptop and in QEMU with virgl, both using are 64 bit Intel CPU

You know the quickest way to find out which P/Invoke is faulty?

Step-by-step debugging, I guess

I've recently demoed using DRM, and it worked well. Closing for now.


Support COM-style query signatures with unconventional parameter positions

Fixes #1354
@robmikh let me know what you think of the transformation of ICompositionDrawingSurfaceInterop.

It looks great!

I think it might be better to fix those in metadata. That way we can confirm they are truly meant to be void**.
Case law: https://github.com/microsoft/win32metadata/issues/446


1.0.0 Installation problem

For some reason can't install the 1.0.0 version. Gives this error in the console:

Also, in the module browser it still shows up as the previous version.

the same to me.....

I had some strange issues also. Hosting via the Forge my module updated fine to v1.0.0 and it initially activated fine and was working on the latest foundry v10 version. But upon logging into my server a second time the module has completed disappeared from the modules list and is no longer present or working. Kind regards and thank you for your hard work.

Just happened to me too. Quick fix for this:

Download latest release zip
Unzip into old forien-unidentified-items folder ( default %localappdata%/FoundryVTT\Data\modules\forien-unidentified-items )
Open module.json with notepad++ or similar
Scroll down to the esmodules object and change from:
    "esmodules": [      "init.js"  ],

to
    "esmodules": [         "init.ts"     ],

Same error here.
Guess as a Forge user I have to wait for an update. Since the fix seems to be a small one, i hope the Update comes soon.

@Varriount  It's seem the github action failed for some issue with the plugin "Publish the release to FoundryVTT's package repository" ?
https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/blob/2ba8dba467a7cdd76220fdef7bb0ff28e166de73/.github/workflows/release.yml#L74
in the meanwhile unistall and install the module with this manifest : https://github.com/p4535992/foundryvtt-forien-unidentified-items/releases/download/v1.0.0/module.json

@p4535992 @LupusVentus Can you try now? For some reason there was an incorrect condition in the "Publish Release" step.

@p4535992 @LupusVentus Can you try now? For some reason there was an incorrect condition in the "Publish Release" step.

There is still some wrong indentation on the yaml at line 74 https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/actions/runs/4937128253/workflow

yeah I just tried to update on the forge from p4535992's excellent hot fix above and received the following. it looks like it's installed but in the game server it is not present in the module list and not working as before.

it seem 1.0.3, solved the compilation (init.ts now is init.js so the direct json manifest work https://github.com/League-of-Foundry-Developers/foundryvtt-forien-unidentified-items/releases/download/latest/module.json), the problem is with the standard installation module behaviour is miissin the "latest" string or the specific version "v1.0.3" on the url for the manifest.json.

Just to confirm v1.0.3 has solved my issues on the forge also. Many thanks for your hard work.


Error messages should include rule name

Bug Report

TSLint version: 5.7.0
TypeScript version: 2.3.4
Running TSLint via: CLI

TypeScript code being linted
Promise.resolve('foo');

with tslint.json configuration:
{
  "rules": {
    "no-floating-promises": true
  }
}

Actual behavior
Running tslint --project . file.ts reports:
ERROR: /full/path/to/files.ts[1, 1]: Promises must be handled appropriately

Expected behavior
I'd expect something like:
ERROR (no-floating-promises): /full/path/to/files.ts[1, 1]: Promises must be handled appropriately

Sometimes an error might be unexpected and we might want to disable the rule that causes it. When you have a large config, though, it may not be obvious which rule reports a particular error.
ESLint formatters print the name of the rule that detects the error.

Use the verbose formatter by adding -t verbose CLI command.
The rest of the issue is a duplicate of #2228


[SCALING] High-cpu usage by kube-api-server when cluster size > 150 nodes

What you expected to happen?
As size of the cluster increases there will be load on the kube-api-server. But it is observed once applying weave-net daemonset it is observerd that CPU usage of API server tripled. Once the weave-net daemonset is deleted CPU usage comes to regualr usage. Weave-net should not be causing such a drastic hike in CPU usage.
What happened?
When we launch cluster size of 200 nodes, there is consistent high CPU usage (> 150% on t2.medium on AWS). This causes API server to become unresponsive and cluster unusable reliably. New weave-net pods that are launching failed to get peers and kube-utils fails fatally.
How to reproduce it?
Launch cluster of size > 175 nodes. Apply and delete the weave-net daemonset to notice the kube-api-server process CPU usage
Anything else we need to know?
Scaling tests were performed with fixes to mesh library so that weave process itself it not using high-cpu. But this should not change the observed beahviour.
Versions:
$ weave version
2.5.1
$ kubectl version
1.10.8

When weave-npc is disabled high CPU is observed as well.
Since weaver process does not invoke any kube API, only suspect was kube-utils. Changing resync time for shared informer factory reduced CPU usage. On testing further informer factory does not seem to be cause. Need to root cause API server high cpu usage with weave

In API server logs "TLS handshake error" were noticed.
https://gist.github.com/murali-reddy/c3d9e89f5164f68165c888ca10dd9f31#file-kube-api-server-unresponsive-L5686
However from the api server logs even with verbose mode I could not find any relation to weave-net pods causing it explicltly. So my hypothesis is weave-net pod running on the API server hogs CPU and memory resources which are being addressed in different issues.

This causes API server to become unresponsive and cluster unusable reliably.

Since I was running on AWS kube-api service was failng ELB health checks and resulting API server not accessible. I ran scaling tests with m5 API server instance instead of t2. For now I am closing this issue. Will reopen if i have concrete evident of weave-net causing kube-api server CPU usage spike.


Use Durable Functions as backend for Static Web App

Describe the solution you'd like
I would like my Blazor WASM front end to be able to call an Azure Durable Functions backend when deployed to Static Web Apps. This would allow me to quickly build small robust workflows with a web interface.
I have tried this and get the following error:
Error in processing api build artifacts: the file 'ConvertToXlf/function.json' has specified an invalid trigger of type 'activityTrigger' and direction ''. Currently, only httpTriggers are supported. Visit https://github.com/Azure/azure-functions-host/wiki/function.json for more information.
Describe alternatives you've considered
Perhaps I can work around this by calling this particular activity function as an external "third party" endpoint from my durable functions workflow but it would be great if there were a simpler option.
Now reading about linking an existing Functions service with my static web app.

That is correct, if you'd like to use triggers other than httpTriggers you will need to use an existing function and link them.

So I have successfully deployed a Blazor WASM app as an Azure Static Web App and linked it to a separately deployed Durable Functions Workflow. From the Blazor App I can successfully start a workflow. I know this because a standard response is returned with the various Uri's for querying and stopping the workflow. Also I can see the activity in the Overview of the Azure Portal.
When I try to access the statusQueryGetUri of the Durable Functions Workflow from a normal browser window I get a Bad Request response which I assume is because the request is not authenticated.
When I try to access the statusQueryGetUri from my Blazor App using a relative Url (i.e. from /runtime... I get the error We couldn’t find that page, please check the URL and try again..
When I try to access the statusQueryGetUri from my Blazor App using a fully qualified Url (i.e. from https://... the Blazor App bombs with a CORS error.
Is it possible any url from /runtime is blocked by Static Web Apps?

Are your function paths prefixed with /api? Calls to the function must start with /api in order for us to recognize that call as a function request

Well the out-of-the-box status calls such as /instances sit under the runtime/webhooks route but I was able to get this working by adding my own HttpTriggered function under api/ which calls methods such as IDurableOrchestrationClient.GetStatusAsync(). It's a little inconvenient to have to do this though.

Ah yes, I can see how this is an issue. Other triggers such as Event Grid and SignalR that rely on those webhook endpoints are also affected.


test PR for Learn modules

Learn Build status updates of commit 0ea4e22:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md
:warning:Warning
View
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md

Line 0, Column 0: [Warning: h1-missing - See documentation] H1 is required. Use a single hash (#) followed by a space to create your top-level heading.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-prod-or-service-missing - See documentation] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 48, Column 332: [Warning: file-not-found - See documentation] Invalid file link: 'overview-azapi-provider.md'.
Line 57, Column 1: [Warning: table-syntax-invalid - See documentation] Table syntax is invalid. Ensure your table includes a header and is surrounded by empty lines.
Line 139, Column 1: [Warning: file-not-found - See documentation] Invalid file link: './media/choosing-the-right-azure-tool/azure-cloud-shell-bash-powershell.png'.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Learn Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit c9ec5ad:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md
:warning:Warning
View
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md

Line 0, Column 0: [Warning: h1-missing - See documentation] H1 is required. Use a single hash (#) followed by a space to create your top-level heading.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-prod-or-service-missing - See documentation] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 48, Column 332: [Warning: file-not-found - See documentation] Invalid file link: 'overview-azapi-provider.md'.
Line 139, Column 1: [Warning: file-not-found - See documentation] Invalid file link: './media/choosing-the-right-azure-tool/azure-cloud-shell-bash-powershell.png'.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Learn Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 7008bcc:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md
:warning:Warning
View
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md

Line 0, Column 0: [Warning: h1-missing - See documentation] H1 is required. Use a single hash (#) followed by a space to create your top-level heading.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-prod-or-service-missing - See documentation] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 48, Column 332: [Warning: file-not-found - See documentation] Invalid file link: 'overview-azapi-provider.md'.
Line 140, Column 1: [Warning: file-not-found - See documentation] Invalid file link: './media/choosing-the-right-azure-tool/azure-cloud-shell-bash-powershell.png'.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Learn Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit e771d14:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md
:warning:Warning
View
Details

docs-ref-conceptual/3-choose-the-right-cli-tool.md

Line 0, Column 0: [Warning: h1-missing - See documentation] H1 is required. Use a single hash (#) followed by a space to create your top-level heading.
Line 1, Column 1: [Warning: title-missing - See documentation] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 1, Column 1: [Warning: ms-prod-or-service-missing - See documentation] One of the following attributes is required: 'ms.prod', 'ms.service'. Use ms.prod for on-premise products, or ms.service for cloud services.
Line 48, Column 332: [Warning: file-not-found - See documentation] Invalid file link: 'overview-azapi-provider.md'.
Line 145, Column 1: [Warning: file-not-found - See documentation] Invalid file link: './media/choosing-the-right-azure-tool/azure-cloud-shell-bash-powershell.png'.
Line 1, Column 1: [Suggestion: description-missing - See documentation] Missing required attribute: 'description'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Learn Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn module has been published in learn-pr.  Closing this test PR.


Coerce numeric types

Take simple example:
def fib(n : Int64)
  ...
end
puts fib(42)

Produces the error:
Error in ./ex.cr:11: no overload matches 'fib' with type Int32
Overloads are:
 - fib(n : Int64)

puts fib(42)
     ^~~

It must be possible for Crystal to coerce 42 into Int64 in cases like this. The error message makes it clear it knows what's up. Basically any IntX passed to an IntY parameter where X < Y, should be coercible by the compiler.
It would nice b/c it would let us remove a fair but of extra boilerplate in the form of _i64, and the like.
Although perhaps there is better/more appropriate way to remedy this?

Reads of interest: #567, #2995, #1778, etc.

Duplicate of #2995.

@trans Hey, you're back!

@kirbyfan64 Hi! Yep, I've been heehawing about what new language to adopt for awhile. I narrowed it down just the other day when I decided I wanted a compiled language, nothing dynamic and no runtime VMs. That helped eliminated a few (otherwise good) choices like Clojure and Elixir, and left me with basically five options: Go, Rust, Julia, Swift and Crystal. The first two I decided are at a level a bit lower than I want to be working. For the moment Julia and Swift are still on my radar, but I need to get a project moving and I can leverage my Ruby skills, so Crystal.
P.S. Holy smokes, talk about serendipity. The project I just started working on (with Crystal) is a site/blog generator. One of the options I was thinking of adding was dynamic page generation from JSON (as an alternative to full static generation). Well bite my code, I just checked out your blog and the first post I see explains how that's exactly what you are doing!!!!!!!!! Hot damn. Could I get access to your source so I can use it in my project? With any luck that'll save me a lot of time. And in exchange I'll fix your RSS problem :-)

@trans

For the moment Julia and Swift are still on my radar

Uhh...doesn't Julia use a runtime VM?

P.S. Holy smokes, talk about serendipity. ...

:D FYI, we might want to discuss this off the issue tracker...

And in exchange I'll fix your RSS problem :-)

Wow, I just have to see this.

Okay, email me (my address is listed on my github profile. I couldn't find yours.) I'm busy the rest of this week but should have time next week. And, oh yea, https://github.com/trans/brite.cr


chore: Local Caddy support

Replaces NGINX for local dev with Caddy.
The advandage here is that the script that generates Caddyfile at runtime on production deployments, is also used to generate the Caddyfile at local development. This reduces the local--production gap.

/build-deploy-preview skip-tests=true


AttributeError: 'Node' object has no attribute 'output_masks'

I'm trying to train my dataset, but the application has returned a problem:
I'm using simple parser
Traceback (most recent call last):
File "train_frcnn.py", line 130, in
shared_layers = nn.nn_base(img_input, trainable=True)
File "/home/user/projetotcc/keras_frcnn/resnet.py", line 176, in nn_base
x = ZeroPadding2D((3, 3))(img_input)
File "/home/user/.pyenv/versions/3.6.0/lib/python3.6/site-packages/keras/engine/base_layer.py", line 443, in call
previous_mask = _collect_previous_mask(inputs)
File "/home/user/.pyenv/versions/3.6.0/lib/python3.6/site-packages/keras/engine/base_layer.py", line 1311, in _collect_previous_mask
mask = node.output_masks[tensor_index]
AttributeError: 'Node' object has no attribute 'output_masks'

Hi, I got the same issue when I try to run the model on tf-gpu 2, but if I use tg-gpu 1.13 or 1.14 it's OK. Which version of tf do you use ?


No module named wifi

first thank you for making this solution available.
I have the error below. Can you help me?

sudo python ./run.py
Traceback (most recent call last):
File "./run.py", line 5, in
from wifi import Cell, Scheme
ImportError: No module named wifi

thank you!

same error

you need to install wifi lib for python
pip install wifi

or  see this

one more issue i faced was that even if i install wifi module, it still gave the same error. That was due to permission. Here's what you do if you face that issue.
sudo -H pip install wifi

Any solution ?... I'm still getting this issue

use pip3 not pip

one more issue i faced was that even if i install wifi module, it still gave the same error. That was due to permission. Here's what you do if you face that issue.
sudo -H pip install wifi

it works


How to set up multi-tenancy in SpringDataJDBC?

Hi, How can I set up multi-tenancy in SpringDataJDBC? That is, set the query to attach the upper tenant condition uniformly at the time of query.

There is a related feature request: #1547

There's no such support in Spring Data JDBC to set up filters for a tenant column.

Hello, do you provide any extension points? If it cannot be directly supported, how can I indirectly configure and support tenants?


Helm 3: 'helm chart push/pull' can't fetch oauth token

Output of helm version:
version.BuildInfo{Version:"v3.0.0-alpha.2", GitCommit:"97e7461e41455e58d89b4d7d192fed5352001d44", GitTreeState:"clean", GoVersion:"go1.12.7"}
I setup a docker registry (container, image is registry:2) and an auth sever(other container, image is cesanta/docker_auth:latest)
And I enabled token auth on the registry. The auth configuration of the registry container is as follow:
auth:
  token:
    realm: https://helm.auth.zte.com:5001/auth
    service: "token"
    issuer: "Auth Service"
    rootcertbundle: /certs/server.pem
http:
  addr: :5000
  host: https://helm.registry.zte.com:5000
  tls:
    certificate: /certs/domain.crt
    key: /certs/domain.key
  headers:
    X-Content-Type-Options: [nosniff]

The config of auth server is as follow:
server:  # Server settings.
  # Address to listen on.
  addr: ":5001"
  # TLS certificate and key.
  certificate: "/ssl/server.pem"
  key: "/ssl/server.key"

token:  # Settings for the tokens.
  issuer: "Auth Service"  # Must match issuer in the Registry config.
  expiration: 900

# Static user map.
users:
  # Password is specified as a BCrypt hash. Use htpasswd -B to generate.
  "helm":
    password: "$2y$05$JX9D.kynlW5HsbWx7FeUOuBY7XdKAB/bq27yLAFmFCsrcDzgzHdpi"

acl:
  # Admin has full access to everything.
  - match: {account: "helm"}
    actions: ["*"]

"helm registry login https://helm.registry.zte.com:5000" returned "Login succeed". But when I run helm chart push, the response from helm said
helm chart --debug push helm.registry.zte.com:5000/mysql:1.2.0
The push refers to repository [helm.registry.zte.com:5000/mysql]
Name: mysql
Version: 1.2.0
Meta: sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1
Content: sha256:ab5943bba9a103dabb3c579ec116c5cd90e9cd06693583f5dc31c03653fe3564
WARN[0000] encountered unknown type application/vnd.cncf.helm.chart.content.layer.v1+tar; children may not be fetched
DEBU[0000] push                                          digest="sha256:ab5943bba9a103dabb3c579ec116c5cd90e9cd06693583f5dc31c03653fe3564" mediatype=application/vnd.cncf.helm.chart.content.layer.v1+tar size=4086
WARN[0000] reference for unknown type: application/vnd.cncf.helm.chart.content.layer.v1+tar  digest="sha256:ab5943bba9a103dabb3c579ec116c5cd90e9cd06693583f5dc31c03653fe3564" mediatype=application/vnd.cncf.helm.chart.content.layer.v1+tar size=4086
DEBU[0000] do request                                    digest="sha256:ab5943bba9a103dabb3c579ec116c5cd90e9cd06693583f5dc31c03653fe3564" mediatype=application/vnd.cncf.helm.chart.content.layer.v1+tar request.headers="map[Accept:[application/vnd.cncf.helm.chart.content.layer.v1+tar, *]]" request.method=HEAD size=4086 url="https://helm.registry.zte.com:5000/v2/mysql/blobs/sha256:ab5943bba9a103dabb3c579ec116c5cd90e9cd06693583f5dc31c03653fe3564"
WARN[0000] encountered unknown type application/vnd.cncf.helm.config.v1+json; children may not be fetched
DEBU[0000] push                                          digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" mediatype=application/vnd.cncf.helm.config.v1+json size=2
WARN[0000] reference for unknown type: application/vnd.cncf.helm.config.v1+json  digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" mediatype=application/vnd.cncf.helm.config.v1+json size=2
DEBU[0000] do request                                    digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" mediatype=application/vnd.cncf.helm.config.v1+json request.headers="map[Accept:[application/vnd.cncf.helm.config.v1+json, *]]" request.method=HEAD size=2 url="https://helm.registry.zte.com:5000/v2/mysql/blobs/sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a"
WARN[0000] encountered unknown type application/vnd.cncf.helm.chart.meta.layer.v1+json; children may not be fetched
DEBU[0000] push                                          digest="sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1" mediatype=application/vnd.cncf.helm.chart.meta.layer.v1+json size=492
WARN[0000] reference for unknown type: application/vnd.cncf.helm.chart.meta.layer.v1+json  digest="sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1" mediatype=application/vnd.cncf.helm.chart.meta.layer.v1+json size=492
DEBU[0000] do request                                    digest="sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1" mediatype=application/vnd.cncf.helm.chart.meta.layer.v1+json request.headers="map[Accept:[application/vnd.cncf.helm.chart.meta.layer.v1+json, *]]" request.method=HEAD size=492 url="https://helm.registry.zte.com:5000/v2/mysql/blobs/sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1"
DEBU[0000] fetch response received                       digest="sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1" mediatype=application/vnd.cncf.helm.chart.meta.layer.v1+json response.headers="map[Content-Length:[148] Content-Type:[application/json; charset=utf-8] Date:[Tue, 13 Aug 2019 02:07:40 GMT] Docker-Distribution-Api-Version:[registry/2.0] Www-Authenticate:[Bearer realm=\"https://helm.auth.zte.com:5001/auth\",service=\"token\",scope=\"repository:mysql:pull\"] X-Content-Type-Options:[nosniff]]" size=492 status="401 Unauthorized" url="https://helm.registry.zte.com:5000/v2/mysql/blobs/sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1"
DEBU[0000] Unauthorized                                  digest="sha256:ce6406ac24828c894298fbf6f2b45552e15033de13e11a79968c6e73a959d7c1" header="Bearer realm=\"https://helm.auth.zte.com:5001/auth\",service=\"token\",scope=\"repository:mysql:pull\"" mediatype=application/vnd.cncf.helm.chart.meta.layer.v1+json size=492
DEBU[0000] fetch response received                       digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" mediatype=application/vnd.cncf.helm.config.v1+json response.headers="map[Content-Length:[148] Content-Type:[application/json; charset=utf-8] Date:[Tue, 13 Aug 2019 02:07:40 GMT] Docker-Distribution-Api-Version:[registry/2.0] Www-Authenticate:[Bearer realm=\"https://helm.auth.zte.com:5001/auth\",service=\"token\",scope=\"repository:mysql:pull\"] X-Content-Type-Options:[nosniff]]" size=2 status="401 Unauthorized" url="https://helm.registry.zte.com:5000/v2/mysql/blobs/sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a"
DEBU[0000] Unauthorized                                  digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" header="Bearer realm=\"https://helm.auth.zte.com:5001/auth\",service=\"token\",scope=\"repository:mysql:pull\"" mediatype=application/vnd.cncf.helm.config.v1+json size=2
DEBU[0000] token request failed                          body="Bad request: invalid scope: \"repository:mysql:pull repository:mysql:pull,push\"\n" digest="sha256:44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a" mediatype=application/vnd.cncf.helm.config.v1+json size=2 status="400 Bad Request"
Error: failed to fetch oauth token: unexpected status: 400 Bad Request
helm.go:76: [debug] unexpected status: 400 Bad Request
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerAuthorizer).fetchTokenWithOAuth
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/authorizer.go:215
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerAuthorizer).setTokenAuth
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/authorizer.go:149
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerAuthorizer).AddResponses
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/authorizer.go:83
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerBase).retryRequest
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/resolver.go:393
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerBase).doRequestWithRetries
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/resolver.go:373
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.dockerPusher.Push
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/pusher.go:86
helm.sh/helm/vendor/github.com/containerd/containerd/remotes.push
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/handlers.go:135
helm.sh/helm/vendor/github.com/containerd/containerd/remotes.PushHandler.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/handlers.go:127
helm.sh/helm/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:53
helm.sh/helm/vendor/github.com/containerd/containerd/images.Handlers.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:63
helm.sh/helm/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:53
helm.sh/helm/vendor/github.com/containerd/containerd/images.Dispatch.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:123
helm.sh/helm/vendor/golang.org/x/sync/errgroup.(*Group).Go.func1
	/go/src/helm.sh/helm/vendor/golang.org/x/sync/errgroup/errgroup.go:57
runtime.goexit
	/usr/local/go/src/runtime/asm_386.s:1321
failed to fetch oauth token
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerAuthorizer).setTokenAuth
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/authorizer.go:151
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerAuthorizer).AddResponses
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/authorizer.go:83
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerBase).retryRequest
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/resolver.go:393
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.(*dockerBase).doRequestWithRetries
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/resolver.go:373
helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker.dockerPusher.Push
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/docker/pusher.go:86
helm.sh/helm/vendor/github.com/containerd/containerd/remotes.push
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/handlers.go:135
helm.sh/helm/vendor/github.com/containerd/containerd/remotes.PushHandler.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/remotes/handlers.go:127
helm.sh/helm/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:53
helm.sh/helm/vendor/github.com/containerd/containerd/images.Handlers.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:63
helm.sh/helm/vendor/github.com/containerd/containerd/images.HandlerFunc.Handle
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:53
helm.sh/helm/vendor/github.com/containerd/containerd/images.Dispatch.func1
	/go/src/helm.sh/helm/vendor/github.com/containerd/containerd/images/handlers.go:123
helm.sh/helm/vendor/golang.org/x/sync/errgroup.(*Group).Go.func1
	/go/src/helm.sh/helm/vendor/golang.org/x/sync/errgroup/errgroup.go:57
runtime.goexit
	/usr/local/go/src/runtime/asm_386.s:1321

I doubted the auth server might work incorrectly. I use a script to test it.
#!/bin/bash -ex
# This is the operation we want to perform on the registry
registryURL=https://helm.registry.zte.com:5000/v2/_catalog

# Save the response headers of our first request to the registry to get the Www-Authenticate header
respHeader=$(tempfile);
curl -k --dump-header $respHeader $registryURL

# Extract the realm, the service, and the scope from the Www-Authenticate header
wwwAuth=$(cat $respHeader | grep "Www-Authenticate")
realm=$(echo $wwwAuth | grep -o '\(realm\)="[^"]*"' | cut -d '"' -f 2)
service=$(echo $wwwAuth | grep -o '\(service\)="[^"]*"' | cut -d '"' -f 2)
scope=$(echo $wwwAuth | grep -o '\(scope\)="[^"]*"' | cut -d '"' -f 2)

# Build the URL to query the auth server
authURL="$realm?service=$service&scope=$scope"

# Query the auth server to get a token
token=$(curl -ks -H "Authorization: Basic $(echo -n "helm:helm" | base64)" "$authURL")
# Get the bare token from the JSON string: {"token": "...."}
token=$(echo $token | jq .token | tr -d '"')

# Query the registry again, but this time with a bearer token
curl -vk -H "Authorization: Bearer $token" $registryURL

From result, a token can be fetch from the auth server.
+ curl -k --dump-header /tmp/fileOVd0Rb https://helm.registry.zte.com:5000/v2/_catalog
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":[{"Type":"registry","Class":"","Name":"catalog","Action":"*"}]}]}

++ curl -ks -H 'Authorization: Basic aGVsbTpoZWxt' 'https://helm.auth.zte.com:5001/auth?service=token&scope=registry:catalog:*'
+ token='{"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IkVUWEw6TTNUUjpSNlJBOjQySk86T1c3TTpLRTRaOjRWVVg6SjVKRDpWRUFBOkpPVFQ6RkdVVjo2QVZDIn0.eyJpc3MiOiJBdXRoIFNlcnZpY2UiLCJzdWIiOiJoZWxtIiwiYXVkIjoidG9rZW4iLCJleHAiOjE1NjU2NjM2NzIsIm5iZiI6MTU2NTY2Mjc2MiwiaWF0IjoxNTY1NjYyNzcyLCJqdGkiOiI4NjEyMTk1OTA2NzkzMTQzODI0IiwiYWNjZXNzIjpbeyJ0eXBlIjoicmVnaXN0cnkiLCJuYW1lIjoiY2F0YWxvZyIsImFjdGlvbnMiOlsiKiJdfV19.NqId_NBqyCQBl9FB8E3UajU38quilY0a6CkARP5shhk45cmfHN9bFio2YG-ddJabp6mWKcrH-1smiEIGcYcIXrwuoTu3j9i-_Fcj7XTrrq06EkXMXc7D84O9H81PcdxZKOEQKxyu3OhJchS-FnsJiknH4QdvywU8mszfQC8RHb05pBULU-bgS2hGe8roU7voMkK8XywWg8I2qTzQZt6I5X3OSgroyjUdZtqF4Clfs6k6YMdqyrjx6rXo1EWRa2JTkO3n7fBu-3FrtQBG4U_v--jcG1WwAcXbHoOVXmE1E00y7_v2nLRvD78_DIDH6ZWSjyWSOXdENPWNwvj_R1qAcg"}'

+ curl -vk -H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IkVUWEw6TTNUUjpSNlJBOjQySk86T1c3TTpLRTRaOjRWVVg6SjVKRDpWRUFBOkpPVFQ6RkdVVjo2QVZDIn0.eyJpc3MiOiJBdXRoIFNlcnZpY2UiLCJzdWIiOiJoZWxtIiwiYXVkIjoidG9rZW4iLCJleHAiOjE1NjU2NjM2NzIsIm5iZiI6MTU2NTY2Mjc2MiwiaWF0IjoxNTY1NjYyNzcyLCJqdGkiOiI4NjEyMTk1OTA2NzkzMTQzODI0IiwiYWNjZXNzIjpbeyJ0eXBlIjoicmVnaXN0cnkiLCJuYW1lIjoiY2F0YWxvZyIsImFjdGlvbnMiOlsiKiJdfV19.NqId_NBqyCQBl9FB8E3UajU38quilY0a6CkARP5shhk45cmfHN9bFio2YG-ddJabp6mWKcrH-1smiEIGcYcIXrwuoTu3j9i-_Fcj7XTrrq06EkXMXc7D84O9H81PcdxZKOEQKxyu3OhJchS-FnsJiknH4QdvywU8mszfQC8RHb05pBULU-bgS2hGe8roU7voMkK8XywWg8I2qTzQZt6I5X3OSgroyjUdZtqF4Clfs6k6YMdqyrjx6rXo1EWRa2JTkO3n7fBu-3FrtQBG4U_v--jcG1WwAcXbHoOVXmE1E00y7_v2nLRvD78_DIDH6ZWSjyWSOXdENPWNwvj_R1qAcg' https://helm.registry.zte.com:5000/v2/_catalog
*   Trying <IP_ADDRESS>...
* Connected to helm.registry.zte.com (<IP_ADDRESS>) port 5000 (#0)
* found 149 certificates in /etc/ssl/certs/ca-certificates.crt
* found 594 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* SSL connection using TLS1.2 / ECDHE_RSA_AES_128_GCM_SHA256
* 	 server certificate verification SKIPPED
* 	 server certificate status verification SKIPPED
* 	 common name: helm.registry.zte.com (matched)
* 	 server certificate expiration date OK
* 	 server certificate activation date OK
* 	 certificate public key: RSA
* 	 certificate version: #3
* 	 subject: C=CN,ST=SH,L=SH,O=ZTE,OU=ZTE,CN=helm.registry.zte.com
* 	 start date: Wed, 07 Aug 2019 08:43:47 GMT
* 	 expire date: Thu, 06 Aug 2020 08:43:47 GMT
* 	 issuer: C=CN,ST=SH,L=SH,O=ZTE,OU=ZTE,CN=helm.registry.zte.com
* 	 compression: NULL
* ALPN, server accepted to use http/1.1
> GET /v2/_catalog HTTP/1.1
> Host: helm.registry.zte.com:5000
> User-Agent: curl/7.47.0
> Accept: */*
> Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IkVUWEw6TTNUUjpSNlJBOjQySk86T1c3TTpLRTRaOjRWVVg6SjVKRDpWRUFBOkpPVFQ6RkdVVjo2QVZDIn0.eyJpc3MiOiJBdXRoIFNlcnZpY2UiLCJzdWIiOiJoZWxtIiwiYXVkIjoidG9rZW4iLCJleHAiOjE1NjU2NjM2NzIsIm5iZiI6MTU2NTY2Mjc2MiwiaWF0IjoxNTY1NjYyNzcyLCJqdGkiOiI4NjEyMTk1OTA2NzkzMTQzODI0IiwiYWNjZXNzIjpbeyJ0eXBlIjoicmVnaXN0cnkiLCJuYW1lIjoiY2F0YWxvZyIsImFjdGlvbnMiOlsiKiJdfV19.NqId_NBqyCQBl9FB8E3UajU38quilY0a6CkARP5shhk45cmfHN9bFio2YG-ddJabp6mWKcrH-1smiEIGcYcIXrwuoTu3j9i-_Fcj7XTrrq06EkXMXc7D84O9H81PcdxZKOEQKxyu3OhJchS-FnsJiknH4QdvywU8mszfQC8RHb05pBULU-bgS2hGe8roU7voMkK8XywWg8I2qTzQZt6I5X3OSgroyjUdZtqF4Clfs6k6YMdqyrjx6rXo1EWRa2JTkO3n7fBu-3FrtQBG4U_v--jcG1WwAcXbHoOVXmE1E00y7_v2nLRvD78_DIDH6ZWSjyWSOXdENPWNwvj_R1qAcg
>
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=utf-8
< Docker-Distribution-Api-Version: registry/2.0
< X-Content-Type-Options: nosniff
< Date: Tue, 13 Aug 2019 02:19:32 GMT
< Content-Length: 20
<
{"repositories":[]}
* Connection #0 to host helm.registry.zte.com left intact

Is there important something i miss for helm? Any suggestion about it?
Thanks in advance!

I have also encountered this problem. Is there a temporary solution?

Do you need any help on this problem? I can reproduce it in my setup and can do some research and invest some time.
@jdolitsky Are you working on this issue?

@jamct I havent had a chance - anything more you can add here would be very helpful.
It may be that its actually an issue in the underlying library ORAS (or even containerd): https://github.com/deislabs/oras

Thanks @jdolitsky for this useful hint. I installed oras command line tool and investigated it further. I believe I found the problem:
When oras wants to push, it needs two auth scopes for the repository: push and pull.  In the process of ordering the token, it combines them with a space char. The scope looks like:
repository:test/test-artifact:pull repository:test/test-artifact:pull,push
The other part of our setup is cesanta/docker_auth. This little software is not ready for this type of requests (with multiple scopes, separated with spaces), as you can read in this code on line 229: https://github.com/cesanta/docker_auth/blob/master/auth_server/server/server.go
It is made to handle just one string with a syntax of repository:test/test-artifact:pull.
I did not have a look into specs whats correct here.

OK, I read the specs and oras is working correct. It is not very useful to repeat the name of the repository, but it's correct, as you can see in the specs:
[https://github.com/docker/distribution/blob/1b9ab303a477ded9bdd3fc97e9119fa8f9e58fca/docs/spec/auth/scope.md#authorization-server-use](distribution spec)
I opened an [https://github.com/cesanta/docker_auth/issues/268](issue #268 for cesanta/docker_auth) and see if I can fix it.

I'm facing the same issue but only when running from azure devops pipeline

Is there any update on this? I am facing the same issue with gcr only when running in Linux container. its working fine on my local mac

any updates?  Having the same issue on 3.1.2

cc @waveywaves

Vibhav (@waveywaves) has started taking a look at this

Has anyone managed to fix this?  Im having the same issue using Harbor as my registry - Logged in fine, using admin but I cant push any charts to a repo - always throws a 403 error.

Still happens to me
Using ACR and Helm3 to push
Error: failed to authorize: failed to fetch anonymous token: unexpected status: 401 Unauthorized
@waveywaves , any news ?

I only started working on the this weekend. Will update it ASAP

@waveywaves , any progress ? 🏆

Expect an update by the end of today. I am working on it as we speak.

After my investigtation it seems that helm chart push is not carrying out the auth mechanism to get the token from the Auth Server. What made me come to this conclusion is that Helm is supposed to get a "401 Unauthorized" response after which it has to ask the auth server for the bearer token which isn't happening based on the spec provided in https://docs.docker.com/registry/spec/auth/token/ . @chenfli Are you sure you are using the correct credentials as you are getting the 403 error which shouldn't be the case you should be getting the 401. And I am not sure if this feature would work with ACR @jdolitsky can you confirm if pushing Helm Charts would work on ACR ?

I have started on work on a PR to add the Auth support for helm chart push/pull. Will update soon.

I have started on work on a PR to add the Auth support for helm chart push/pull. Will update soon.

Hi,
helm chart push giving the error:
Error: failed to do request: Head https://XXX.local:8081/v2/XXX/blobs/sha256:5dc8f65da2d33ae3531efce11979245d549b43c63ee6531701b203a679387c1f: http: server gave HTTP response to HTTPS client
Login with  helm registry login XXX.local:8081 --insecure succeeds and helm pull also works..
Is it related or should i open a new issue?
Thanks a lot .

server gave HTTP response to HTTPS client

That error would suggest some form of setup issue on your end with the registry, as the registry is receiving an HTTPS request, but returning an HTTP response. Make sure you set up HTTPS correctly according to their documentation.

server gave HTTP response to HTTPS client

That error would suggest some form of setup issue on your end with the registry, as the registry is receiving an HTTPS request, but returning an HTTP response. Make sure you set up HTTPS correctly according to their documentation.

Hi, Thanks for your help,
I'm working with Gili,
we storing our registry as an INSECURE Registry,
pushing and pulling Docker images, for example, working great.
We can push Charts by curl command.
Thanks for your help.

Hi,
I am running into the same issue with Azure ACR, exactly the one described here under "Open Issue" section: https://gaunacode.com/publishing-helm-3-charts-to-azure-container-registry-using-azure-devops-part-2. So nothing to do with insecure registries...
The version of helm is the latest: 3.2.1/x64/linux-amd64
Error: failed to authorize: failed to fetch anonymous token: unexpected status: 401 Unauthorized
Any idea?
Thanks

I agree above, I think this issue is still open and needs attention. @bacongobbler should this open and investigated. Good explaination can also be found in article https://gaunacode.com/publishing-helm-3-charts-to-azure-container-registry-using-azure-devops-part-2 under Open Issue section.

@tigran-a and @sammym1982, can you please describe your issue? Based on your comments I cannot tell if this is the same issue or something different, which we should track in a separate issue. I don't want to drag this issue along especially since there are other users who have reported that this has been fixed. Perhaps the same error is cropping up, but it's due to some other external factor.

Ah, looking at this issue more closely I don't believe a PR was pushed or merged to address this issue. The comment from @itzikban appears to be an anomaly. Re-opening.
@waveywaves did you happen to submit a fix for this yet?

@itzikban how are you setting up your insecure registry in this case ? Is it a registry:2 image on docker ?
@bacongobbler I am still working on it. This is particularly tricky :/

@itzikban how are you setting up your insecure registry in this case ? Is it a registry:2 image on docker ?
@bacongobbler I am still working on it. This is particularly tricky :/
I have resumed work on this yesterday only.

Yes, we are  using registry:2
Thanks so much for your help

@waveywaves just a gentle check with you if you were able to make progress with this?

@waveywaves any update on this?

ping.. unfortunately we need to find alternatives now :( as it seems this completely blocks Azure's helm chart repository functionality in ACR.

Before it got fixed, what I end up with is to use an ACR access key and then used
echo $ACCESS_KEY_PASSWORD | helm registry login youracrname.azurecr.io -u youracrname --password-stdin
Not a solution, but maybe someone finds it helpful.

@tigran-a yes that is the workaround from the documentation, but I think it is not a long term viable solution to have to pass this is as a clear text password to helm registry login ... so hopefully there will be a more permanent solution.

I was having a hard time figuring this out. I have requested help from @jdolitsky on this one. With other important todos we had to move on :(

Does anybody else just get Invalid handle errors when running @tigran-a's solution in a build pipeline? Works fine locally even with all the variables set in the same way with either powershell or bash I just get invalid handle errors.

https://github.com/felipemouradev/harbor-push

any update v3.3.1?

No update.

I solve this problem like this.
azurermtest-ACR - azurerm ServiceConnection for Docker Registry
- task: AzureCLI@2
  env:
      HELM_EXPERIMENTAL_OCI: 1
  inputs:
    azureSubscription: 'azurermtest-ACR'
    scriptType: 'bash'
    scriptLocation: 'inlineScript'
    inlineScript: |
      ACCESS_TOKEN=$(az acr login --name testcontainerregistry.azurecr.io --expose-token --output tsv --query accessToken)
      echo $ACCESS_TOKEN | helm registry login testcontainerregistry.azurecr.io -u 00000000-0000-0000-0000-000000000000 --password-stdin
      helm chart save $(Build.Repository.Name)/charts/app/ testcontainerregistry.azurecr.io/charts/app:latest
      helm chart push testcontainerregistry.azurecr.io/charts/app:latest

我也遇到了，http的harbor 咋解决啊

我也遇到了，http的registry 咋解决啊

I solved this problem like this.
azurermtest-ACR - azurerm ServiceConnection for Docker Registry
- task: AzureCLI@2
  env:
      HELM_EXPERIMENTAL_OCI: 1
  inputs:
    azureSubscription: 'azurermtest-ACR'
    scriptType: 'bash'
    scriptLocation: 'inlineScript'
    inlineScript: |
      ACCESS_TOKEN=$(az acr login --name testcontainerregistry.azurecr.io --expose-token --output tsv --query accessToken)
      echo $ACCESS_TOKEN | helm registry login testcontainerregistry.azurecr.io -u 00000000-0000-0000-0000-000000000000 --password-stdin
      helm chart save $(Build.Repository.Name)/charts/app/ testcontainerregistry.azurecr.io/charts/app:latest
      helm chart push testcontainerregistry.azurecr.io/charts/app:latest

It does solve the problem !! Thanks !!

I solved this problem like this.
azurermtest-ACR - azurerm ServiceConnection for Docker Registry
- task: AzureCLI@2
  env:
      HELM_EXPERIMENTAL_OCI: 1
  inputs:
    azureSubscription: 'azurermtest-ACR'
    scriptType: 'bash'
    scriptLocation: 'inlineScript'
    inlineScript: |
      ACCESS_TOKEN=$(az acr login --name testcontainerregistry.azurecr.io --expose-token --output tsv --query accessToken)
      echo $ACCESS_TOKEN | helm registry login testcontainerregistry.azurecr.io -u 00000000-0000-0000-0000-000000000000 --password-stdin
      helm chart save $(Build.Repository.Name)/charts/app/ testcontainerregistry.azurecr.io/charts/app:latest
      helm chart push testcontainerregistry.azurecr.io/charts/app:latest

It does solve the problem !! Thanks !!

Does this mean that ACR must have "admin enabled".. We do not have that set and therefore do not expose the ACR username and password.  Will the az acr login continue to work?

Does this mean that ACR must have "admin enabled".. We do not have that set and therefore do not expose the ACR username and password. Will the az acr login continue to work?

IT works without an enabled admin.
But you need a service application in Azure Active Directory with access to registery.
And also on the Azure DevOps side azurerm ServiceConnection for Docker Registry

This still is broken; and the above fix using an exposed token is now broken as well. One can use a Service prinicpal with a set secret for it and use that tho, passing it in form keyvault or a variable in the pipeline (i used the first one). As the principle can access both ACR and Keyvault just fine, its just the helm client that doesnt really work with the SP login properly.
Use the SP to grab a file off of keyvault with the password, cat the file and pipe it to stdin on the helm cli and it sorts it out.
This is just helpful if you already use kevvault in your pipelines tho.

Running Helm 3.6.3, I'm able to authenticate to ACR using Service Principal. On my local Mac I can do
helm pull oci://<name>.azurecr.io/helm/<chart>
helm upgrade --install some-app oci://<name>.azurecr.io/helm/<chart>:0.0.1
But when I try to do the same on Ubuntu VM:
I'm able to pull the chart using helm pull oci://<name>.azurecr.io/helm/<chart>
But when I try to deploy, it fails with
Error: failed to authorize: failed to fetch anonymous token: unexpected status: 401 Unauthorized helm.go:88: [debug] unexpected status: 401 Unauthorized

Running Helm 3.6.3, I'm able to authenticate to ACR using Service Principal. On my local Mac I can do
helm pull oci://<name>.azurecr.io/helm/<chart>
helm upgrade --install some-app oci://<name>.azurecr.io/helm/<chart>:0.0.1
But when I try to do the same on Ubuntu VM:
I'm able to pull the chart using helm pull oci://<name>.azurecr.io/helm/<chart>
But when I try to deploy, it fails with
Error: failed to authorize: failed to fetch anonymous token: unexpected status: 401 Unauthorized helm.go:88: [debug] unexpected status: 401 Unauthorized

I think you need to use helm registry login -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET to be able to deploy helm from ACR.
https://docs.microsoft.com/en-us/azure/container-registry/container-registry-helm-repos#authenticate-with-the-registry
echo $spPassword | helm registry login mycontainerregistry.azurecr.io \
  --username <service-principal-id> \
  --password-stdin

I fixed it like this (v3.7.0):
helm pull oci://<name>.azurecr.io/helm/<chart> --version 0.0.1 --destination .
helm upgrade --install some-app *.tgz

On Ubuntu 20.04 I solved it by manually adding the auth token to the registry config file. The following steps work for the GCP Artifact Registry. Follow the steps in the GCP Helm Quickstart up to the Push the chart to Artifact Registry step. This step will fail.

The access token should be stored in your system's keychain (e.g., seahorse) under https://-docker.pkg.dev
Copy the value in the password field
Encode the access token and the token username with echo "oauth2accesstoken:ya29.c.b0..." | base64 -w 0
Update the entry in .config/helm/registry.json. Remove credStore and add the output of the above command so that:

{
    "auths": {
        "https://<region>-docker.pkg.dev": {
            "auth": "<output from earlier>"
        }
    }
}

Push the changes with Helm as in the tutorial

** Note: Since the access token is only valid for 60 minutes, this method should only work during that time period

I solved this problem like this. azurermtest-ACR - azurerm ServiceConnection for Docker Registry
- task: AzureCLI@2
  env:
      HELM_EXPERIMENTAL_OCI: 1
  inputs:
    azureSubscription: 'azurermtest-ACR'
    scriptType: 'bash'
    scriptLocation: 'inlineScript'
    inlineScript: |
      ACCESS_TOKEN=$(az acr login --name testcontainerregistry.azurecr.io --expose-token --output tsv --query accessToken)
      echo $ACCESS_TOKEN | helm registry login testcontainerregistry.azurecr.io -u 00000000-0000-0000-0000-000000000000 --password-stdin
      helm chart save $(Build.Repository.Name)/charts/app/ testcontainerregistry.azurecr.io/charts/app:latest
      helm chart push testcontainerregistry.azurecr.io/charts/app:latest

Thank you. works perfectly!


Can the results be used for SD models？

What an amazing project! Can the results be used for SD models？

It can be used in SD1.x series in a plug-and-play manner where the text encoder is OpenAI-CLIP instead of Open-CLIP
In fact, the 'text-to-image generation' demo figure is generated by SD1.5

Are there any available examples? In A111 or comfyui?

We implement it in pytorch. You can use it in SD by implementing the pipeline of SD with only changing the text encoder into Long-CLIP.

@beichenzbc Is there a more elegant way to integrate into transformers, such that we can directly load via CLIPTextModel and CLIPTokenizer?

perhaps you could try the scripts in CLIP to transfer a pytorch model into the huggingface mode

We rewrote the pipeline of SD and didn't try to convert it into a huggingface format. Maybe you could try this link for easy use.
https://github.com/beichenzbc/Long-CLIP/issues/7#issuecomment-2053783281


forked temporary mongod not shutdown if initdb failing script

when any script in /docker-entrypoint-initdb.d/* fails the whole docker-entrypoint.sh fails but without shutting down the temporary forked mongod
https://github.com/docker-library/mongo/blob/9db9e3d4704f5d963e424a3894fa740b8ce4ea70/4.4/docker-entrypoint.sh#L304
	function shutdown {
	     "${mongodHackedArgs[@]}" --shutdown
	      rm -f "$pidfile"
	}
        # hook showtdown
        trap shutdown EXIT

then
https://github.com/docker-library/mongo/blob/9db9e3d4704f5d963e424a3894fa740b8ce4ea70/4.4/docker-entrypoint.sh#L357
	rm -f "$pidfile"
        # reset shutdown
	trap - EXIT

I'm honestly a little confused by this -- if any of the initdb scripts fails, it would be useful to not have a database that can actually be used because then it's way too easy to mistake for one that did properly initialize, so if we were to add an explicit error trap, IMO it should purposefully make the database "unclean" such that it requires administrator action/attention. :confused:

Hello Tianon,
Let's consider the /data/db is volume, so it could be persist if the volume is mounted on the host, even if the container is restarted.
The issue is that the initdb scripts are loaded only if /data/db folder is empty, db not yet initiated.
but the issue is that before initdb scripts are loaded, there is a local (<IP_ADDRESS>) mongodb  is forked (started into another process)
"${mongodHackedArgs[@]}" --fork

then this temporary (only meant to load initdb scripts) will create on /data/db the initial files of the db even before start executing initdb scripts, so /data/db is not anymore empty, and also create socket file /monogo.22017 and start a process mongodb.
now if any of the initdb scripts fails, then the docker-entrypoint.sh fails without shutting down properly the temporary mongodb, so it stays up locks the port 22017 and the /data/db directory
and indeed if the entrypoint of the container is docker-entrypoint.sh then you are saved and you wont notice it, so th zombie temporary mongodb is killed, because when the docker container dies it kills all remaining processes.
now if you restart the container again, the /data/db is already filled in with that the temporay mongodb has initiated, so the initdb scripts do not start be cause the container thinks that the database had been initated already, but the issue is that the initdb scripts will never be executed, and the error will never be noticed.
so the best approach is that if the initdb scripts fails, then the /data/db should not be initiated.
and that the container will be stuck with the error linked to initidb scripts.
to achieve this we just need to ensure that the temporary mongod is shutdown properly if any errors in the initdb scripts, and remove the initial data created by the temporary local mongod.
line 304

		"${mongodHackedArgs[@]}" --fork

    function cleanup {
      "${mongodHackedArgs[@]}" --shutdown
      rm -f "$pidfile"
      rm -rf "$dbPath/WiredTiger" "$dbPath/journal" "$dbPath/local.0" "$dbPath/storage.bson"
      echo
      echo 'MongoDB initdb process failed. cleanup data'
      echo
    }

    trap cleanup EXIT

		mongo=( mongo --host <IP_ADDRESS> --port 27017 --quiet )

		# check to see that our "mongod" actually did start up (catches "--help", "--version", MongoDB 3.2 being silly, slow prealloc, etc)
		# https://jira.mongodb.org/browse/SERVER-16292
		tries=30
		while true; do
			if ! { [ -s "$pidfile" ] && ps "$(< "$pidfile")" &> /dev/null; }; then
				# bail ASAP if "mongod" isn't even running
				echo >&2

line 368

		"${mongodHackedArgs[@]}" --shutdown
		rm -f "$pidfile"

		trap - EXIT

		echo
		echo 'MongoDB initdb process complete; ready for start up.'
		echo

I guess an approach like what I describe (and then demonstrate) in https://github.com/docker-library/postgres/issues/159#issuecomment-1042466970 could also work -- the short version is that we initialize to a subdirectory of the provided datadir so that subsequent runs can fail immediately if said subdirectory still exists. :thinking:
Then we get the benefit that containers with a restart policy stay failing and keep their (failed) state for inspection.
The biggest downside is the added script complexity (and thus added fragility + maintenance overhead, which is why that PostgreSQL one hasn't actually been implemented as a PR yet).


Fixes: #38 ; Adds Text-to-Speech Converter using gTTS

Pull Request: Add gTTS Text-to-Speech Script with Customization Options
Description
This pull request introduces a Python script that uses Google Text-to-Speech (gTTS) API to convert text to speech with multiple customization options. Key features added include:

Support for multiple languages.
Accent customization via Google’s tld option.
Ability to control speech speed (normal or slow).
Customizable text pre-processing and tokenization.
Timeout control for API requests.

Related Issues
Fixes: #38 (Implement gTTS for Text-to-Speech Conversion)
Changes Made

Implemented text_to_speech.py using gTTS.
Added arguments for:

text: Text to be converted to speech.
lang: Language code for the speech (default: en).
tld: Top-level domain for localized accents (default: com).
slow: Option to slow down the speech (default: False).
lang_check: Validate if the language code is supported (default: True).
timeout: Timeout configuration for API requests.

Included proper error handling for invalid language codes and timeout issues.
Added sample usage documentation in the script and README.md.

Type of Change

[x] ✨ New feature (added text-to-speech functionality)
[x] 📝 Documentation update (updated README.md with usage instructions)

How Has This Been Tested?

Tested the script by converting various texts into speech, using different languages and localized accents.
Verified that the output audio file (output.mp3) is generated successfully.
All tests for multiple language inputs and API response times pass successfully.

Checklist

[x] Created a new branch (feature/add-text-to-speech) for this PR.
[x] Followed the coding style and conventions of the project.
[x] Added appropriate usage documentation in README.md.
[x] Manually tested the script for various inputs.
[x] No merge conflicts.

Additional Comments

This feature is fully functional and ready for review.
Let me know if any additional tests are needed for edge cases, especially for non-standard languages or timeout configurations.

@king04aman Could You Please Review My PR and Merge if Staisfied


Allow BGPPeer to be scoped on node labels

Current Behavior
At the moment, if you wanted to peer each node in a n-rack cluster with the ToR router, you have to either configure multiple Global Peers, and be happy that some of the sessions never establish (which will conflict with #1827 in v3.1) or configure many individual BGPPeer objects
Expected Behavior
The ability to target BGPPeer to nodes with better control that either "Global" or "per node"/
Possible Solution
Allow matching on labels to target BGPPeer configurations to nodes.

Calico version v3.0.4

I think configuring global peers that you know will fail is an antipattern. We should consider how we can make it easier to configure many individual BGPPeers.
As a strawman idea, if the BGP peers had a "node selector" they could query nodes with label 'rack=a', for example.

Yep, I think node selectors are the best idea. We label all our nodes with the rack they’re on :)

I've put together a prototype which includes this here: https://github.com/projectcalico/libcalico-go/pull/861

This has been merged to master!
Will be out in v3.3.0.


Use Clover's public python template

@dargueta  CC @gwax this updates pytest-pgsql to use https://github.com/CloverHealth/temple-python-public as the template
The template was created using the scaffolding changes in this project, so there weren't a bunch of diffs. I manually updated some of the differences in the template that are not in this repo.
Doing this change means that pytest-pgsql will be kept in sync with changes to the template

You'll need to add installation of Postgres to the test setup (it's not part of the template), you can see an example here: https://github.com/CloverHealth/pgmock/blob/5c0d2be637c23729a306c0346b9ec1340450a54b/.circleci/config.yml#L17-L22.

@jiffyclub I no longer have access to this branch as I was removed as a contributor. Unless Wes picks this back up again I think we're going to have to restart it.
Kinduva heretical thought -- do we need Temple?


[NG] Adding input to Wizard that prevents all navigation

• The use case here is to disable navigation across the whole wizard for a long-running process
• Added clrWizardPreventNavigation input that disables all buttons, stepnav links, and even prevents closing the wizard
• Prevents firing of events as well, so cannot be used to implement alternative flows
• Fixed a naming collision issue in the deprecated wizard demos
• Also added a demo of the stop navigation functionality
• When working on the demo, I noticed we were needing an additional path to just disable the stepnav by itself. So I did that and wrote tests for it!
Signed-off-by: Scott Mathis<EMAIL_ADDRESS>[NG] unit tests
Signed-off-by: Scott Mathis<EMAIL_ADDRESS>[NG] Aditya’s fix for unit tests
Signed-off-by: Scott Mathis<EMAIL_ADDRESS>[NG] Demo
• This added a demo of the stop navigation functionality
• When working on the demo, I noticed we were needing an additional path to just disable the stepnav by itself. So I did that and wrote tests for it!
Signed-off-by: Scott Mathis<EMAIL_ADDRESS>

@mathisscott: not sure why but some of the CSS regression images are failing on this PR.

@adityarb88
I know. I'm looking into it.


Tr/review extra labels

PR Type:
Enhancement

PR Description:
This PR introduces the following enhancements:

Adds a new feature to set review labels based on the predicted review effort and security concerns.
Adds new configuration options to enable or disable these review labels.
Updates the prompts for effort estimation and security concerns to guide the user to provide the expected format of responses.

PR Main Files Walkthrough:
 files:

pr_agent/tools/pr_reviewer.py: Added a new method 'set_review_labels' to set review labels based on the review prediction data. The labels are set for review effort and security concerns if enabled in the settings.
.pr_agent.toml: Added a new configuration option 'enable_review_labels_effort' under 'pr_reviewer' section.
pr_agent/settings/configuration.toml: Added new configuration options 'enable_review_labels_security' and 'enable_review_labels_effort' under 'pr_reviewer' section.
pr_agent/settings/pr_reviewer_prompts.toml: Updated the prompts for 'Estimated effort to review' and 'Security concerns' to guide the user to provide the expected format of responses.

/describe

Preparing review...

Preparing review...

Persistent review updated to latest commit https://github.com/Codium-ai/pr-agent/commit/7a342d33123866bede7bf8f4f9c57ce47ddeb9c7

Preparing review...

Persistent review updated to latest commit https://github.com/Codium-ai/pr-agent/commit/762a6981e17125c9cfadd3cc239d8d351c708183


[SUPPORT]

Tips before filing an issue

Have you gone through our FAQs? Yes. Also looked at the Tuning guide: https://cwiki.apache.org/confluence/display/HUDI/Tuning+Guide

Join the mailing list to engage in conversations and get faster support at<EMAIL_ADDRESS>Have subscribed to this. Also posted this on the Slack group and the suggestion was to create a GH issue.

If you have triaged this as a bug, then file an issue directly: Not sure may be a config issue at my end.

Describe the problem you faced
A clear and concise description of the problem.
To Reproduce
Steps to reproduce the behavior:

Submit a spark job on EMR 5.30 or above.
Bulk_insert a huge dataset (around 4 TB) with PARTITION_SORT/GLOBAL_SORT sort mode.
upsert a delta around 300 GB
Observed the job is taking too much time in step "Getting small files from partitions (count at HoodieSparkSqlWriter.scala:389).

Expected behavior
I expect a good file size of 128 MB to be created during bulk_insert with fewer small files and subsequent upserts to be faster with less/no time taken in optimizing small file size.
Environment Description

Hudi version : 0.6

Spark version : 2.4

Hive version : 2.5

Hadoop version : 2.5

Storage (HDFS/S3/GCS..) : S3

Running on Docker? (yes/no) : no

Additional context
I have a dataset of 4 TB size for which I have used "bulk_insert" mode with config "hoodie.bulkinsert.shuffle.parallelism" set to 15000. This job took about 2 hours and the data is stored in S3 partitioned on 2 columns (uid and source). Few questions here:

what is the right value to use for hoodie.bulkinsert.shuffle.parallelism. If I go by the logic of 500 MB per partition, the value is 5000 but with this my job is very slow. After this, I changed to 15000 and it completed in 2 hours.
I used partition_sort instead of the default global_sort for hoodie.bulkinsert.sort.mode as I wanted the data sorting within a partition. With this the job was a few minutes faster than it was with global_sort but I saw a variation in file sizes. With partition_sort some file sizes in few partitions were too small (1-2 MB) and some were around 60-70 MB. In global_sort most files were 60-70 MB. The default file size is supposed to be 120 MB. Why are we seeing smaller file sizes and what sort mode is better to use to get the right file size of 120 MB?
After the bulk_insert, I tried an upsert with 300 GB delta. For this, I used the config hoodie.upsert.shuffle.parallelism set to 600 as per the Hudi tuning guide of 500 MB per partition. With this the job competed in 1 hour 20 minutes and about 50 minutes is taken by step "Getting small files from partitions (count at HoodieSparkSqlWriter.scala:389)" . I am assuming it is because of small files but I am not sure what I have done wrong here. Could this be related to the smaller files created in the previous bulk_insert? Or is there some setting which I may be missing.
We expect to get a delta of around 200-500 MB every 12 hours and we run the job on EMR - 5.30 for now (will upgrade later after initial hudi experiments). I am using Hudi version 6.0.

Stacktrace
No exception. Job is taking too much time at step "Getting small files from partitions (count at HoodieSparkSqlWriter.scala:389)

Answer provided : https://apache-hudi.slack.com/archives/C4D716NPQ/p1609922670490200?thread_ts=1609360627.455000&cid=C4D716NPQ
Regarding your first question, Bulk_Insert mode simply honors the number of parallelism you have provided and uses it to create separate files.  Please look at https://cwiki.apache.org/confluence/display/HUDI/FAQ#FAQ-Whatperformance/ingestlatencycanIexpectforHudiwriting If you want file sizing to be taken care of, use INSERT mode for the first commit. Regarding your second question, the reason is that with sorting inside a partition (Note : this is spark partition), what happens is that if the records within a spark partition falls under different hive partition, then they end up as separate file. With global sort mode though, each spark partition is likely to see records from the same hive partition. The  spark step name might be misleading, It could be the index lookup time. Try global sort mode with insert and then run upsert to observe upsert time

Answer provided : https://apache-hudi.slack.com/archives/C4D716NPQ/p1609922670490200?thread_ts=1609360627.455000&cid=C4D716NPQ
Regarding your first question, Bulk_Insert mode simply honors the number of parallelism you have provided and uses it to create separate files.  Please look at https://cwiki.apache.org/confluence/display/HUDI/FAQ#FAQ-Whatperformance/ingestlatencycanIexpectforHudiwriting If you want file sizing to be taken care of, use INSERT mode for the first commit. Regarding your second question, the reason is that with sorting inside a partition (Note : this is spark partition), what happens is that if the records within a spark partition falls under different hive partition, then they end up as separate file. With global sort mode though, each spark partition is likely to see records from the same hive partition. The  spark step name might be misleading, It could be the index lookup time. Try global sort mode with insert and then run upsert to observe upsert time

Hi,
I tried copy_on_write with insert mode for 4.6 TB dataset which is failing with lost nodes (previously tried bulk_insert which worked fine). I tried to tweak the executor memory and also changes the config "hoodie.copyonwrite.insert.split.size" to 100k. It still failed. Later i tried to add the config "hoodie.insert.shuffle.parallelism" and set it to a higher value and still I see failures. Please can you tell me what is wrong here.
Thanks,
Pranoti

Hi,
I tried copy_on_write with insert mode for 4.6 TB dataset which is failing with lost nodes (previously tried bulk_insert which worked fine). I tried to tweak the executor memory and also changes the config "hoodie.copyonwrite.insert.split.size" to 100k. It still failed. Later i tried to add the config "hoodie.insert.shuffle.parallelism" and set it to a higher value and still I see failures. Please can you tell me what is wrong here.
Thanks,
Pranoti


[BUG] Can't start the zep container because of .env file

Describe the bug
In this documentation https://docs.getzep.com/deployment/quickstart/#starting-a-zep-server-locally-is-simple There's no .env file in the git. Documentation is telling Add your OpenAI API key to a .env file in the root of the repo.
I saw .env file in .gitignore file it might be the main reason
To Reproduce
docker compose up -d
Expected behavior
Starts the app
Logs
time="2023-11-03T10:09:36Z" level=warning msg=".env file not found or unable to load. This warning can be ignored if Zep is run using docker compose with env_file defined or you are passing ENV variables."
time="2023-11-03T10:09:36Z" level=info msg="Log level set to: info"
time="2023-11-03T10:09:36Z" level=info msg="Starting Zep server version 0.17.3-88d7882 (2023-11-01T22:48:07+0000)"
time="2023-11-03T10:09:36Z" level=fatal msg="store.type must be set"
Environment (please complete the following information):

Zep version: 0.17.3-88d7882
Deployment docker-compose

Note: The Zep server version is available in the Zep server logs at startup:
Starting zep server version 0.11.0-cbf4fe4 (2023-08-30T12:49:03+0000)
Additional context
I tried to create .env file with envs but didn't work either
ZEP_AUTH_REQUIRED=true
ZEP_AUTH_SECRET=SECRET
ZEP_OPENAI_API_KEY=APIKEY
ZEP_STORE_TYPE=postgres
ZEP_SERVER_WEB_ENABLED=true
ZEP_DEVELOPMENT=false

The .env file is created by the developer and not stored in GitHub. Would you please share your config.yaml and docker-compose.yaml files?
On Fri, Nov 3 2023 at 3:16 AM, serhatcalik < @.*** > wrote:

Describe the bug
In this documentation https://docs.getzep.com/deployment/quickstart/#starting-a-zep-server-locally-is-simple
There's no .env file in the git. Documentation is telling Add your OpenAI
API key to a .env file in the root of the repo.
To Reproduce
docker compose up -d
Expected behavior
Starts the app
Logs
time="2023-11-03T10:09:36Z" level=warning msg=".env file not found or
unable to load. This warning can be ignored if Zep is run using docker
compose with env_file defined or you are passing ENV variables."
time="2023-11-03T10:09:36Z" level=info msg="Log level set to: info"
time="2023-11-03T10:09:36Z" level=info msg="Starting Zep server version
0.17.3-88d7882 (2023-11-01T22:48:07+0000)"
time="2023-11-03T10:09:36Z" level=fatal msg="store.type must be set"
Environment (please complete the following information):

Zep version: 0.17.3-88d7882
Deployment docker-compose

Note : The Zep server version is available in the Zep server logs at
startup:
Starting zep server version 0.11.0-cbf4fe4 (2023-08-30T12:49:03+0000)
Additional context
I tried to create .env file with envs but didn't work either
ZEP_AUTH_REQUIRED=true
ZEP_AUTH_SECRET=SECRET
ZEP_OPENAI_API_KEY=APIKEY
ZEP_STORE_TYPE=postgres
ZEP_SERVER_WEB_ENABLED=true
ZEP_DEVELOPMENT=false
—
Reply to this email directly, view it on GitHub (
https://github.com/getzep/zep/issues/260 ) , or unsubscribe (
https://github.com/notifications/unsubscribe-auth/AABAAZYSOGFP3Y4P5X5DM4DYCTABXAVCNFSM6AAAAAA64GIZG6VHI2DSMVQWIX3LMV43ASLTON2WKOZRHE3TKOBVGAYDCOI
).
You are receiving this because you are subscribed to this thread. Message
ID: <getzep/zep/issues/260 @ github. com>

Glad its fixed!