BUG: helm upgrade --install fails if first deployment failed

If the first helm deployment of a release fails for any reason, any subsequent helm upgrade --install will fail with Error: UPGRADE FAILED: "RELEASE_NAME" has no deployed releases
I would expect it to work the same way as if the first deployment succeeded

This is a duplicate of https://github.com/kubernetes/helm/issues/4045

For anyone getting here from google, using helm upgrade --install --force works

You can also use helm delete --purge FWIW and then upgrade again. I'm unsure how to fit either one of them into our CI pipeline though, they seem to be far from the Right Way (more downright scary...). Waiting to see any guidance on the main issue.

@frankh --force does not solve the problem at all.

@paolomainardi - you're right, I should have said
helm upgrade --install --force may work sometimes


GMC: make "namespace" field of each resource in the CR optional

Description
make "namespace" field of each resource in the CR optional, if it's not specifically defined, get the namespace in the context
Issues
n/a
Type of change
List the type of change like below. Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would break existing design and interface)

Dependencies
n/a
Tests
Remove all the namespace in the "chatqa.yaml" or "codegen.yaml", which is the customer defined resource.
the controller bring up all the resource in the namespace where the CR is installed.
root@cis-gms-worker-3:~# kubectl get pods -A
NAMESPACE          NAME                                       READY   STATUS    RESTARTS        AGE
calico-apiserver   calico-apiserver-b566c7c4b-9xzd9           1/1     Running   1 (3d ago)      3d2h
calico-apiserver   calico-apiserver-b566c7c4b-npg8l           1/1     Running   1 (3d ago)      3d2h
calico-system      calico-kube-controllers-7fb5d85f75-gkpx5   1/1     Running   1 (3d ago)      3d2h
calico-system      calico-node-6f8px                          1/1     Running   1 (3d ago)      3d2h
calico-system      calico-typha-7f5bbfd54c-rtfd5              1/1     Running   1 (3d ago)      3d2h
calico-system      csi-node-driver-6svlq                      2/2     Running   2 (3d ago)      3d2h
chatqa             embedding-server-74c4958fb-kzrrs           1/1     Running   0               15s
chatqa             llm-server-57bb76b99c-bdtf6                1/1     Running   0               14s
chatqa             redis-vector-db-b6df644c-k4cf7             1/1     Running   0               15s
chatqa             reranking-server-7995997b7c-252st          1/1     Running   0               15s
chatqa             retriever-redis-server-76b6cd44b9-bpk7c    1/1     Running   0               15s
chatqa             router-server-6ccf7d5d89-54n8n             1/1     Running   0               14s
chatqa             tei-embedding-server-77f87c9db9-z5wnn      1/1     Running   0               15s
chatqa             tei-reranking-server-5f447446b4-t5l6s      1/1     Running   0               15s
chatqa             tgi-server-8564647c75-whkns                1/1     Running   0               14s
default            client-test-5d45f8c7b-sqvcd                1/1     Running   1 (3d ago)      3d
kube-system        coredns-787d4945fb-fpskt                   1/1     Running   1 (3d ago)      3d2h
kube-system        coredns-787d4945fb-svs22                   1/1     Running   1 (3d ago)      3d2h
kube-system        etcd-cis-gms-worker-3                      1/1     Running   9 (2d23h ago)   3d2h
kube-system        kube-apiserver-cis-gms-worker-3            1/1     Running   9 (2d23h ago)   3d2h
kube-system        kube-controller-manager-cis-gms-worker-3   1/1     Running   42 (3d ago)     3d2h
kube-system        kube-proxy-xksr7                           1/1     Running   1 (3d ago)      3d2h
kube-system        kube-scheduler-cis-gms-worker-3            1/1     Running   42 (3d ago)     3d2h
tigera-operator    tigera-operator-66ff84458f-86b8b           1/1     Running   1 (3d ago)      3d2h

was it a typo chatqa versus chatqna?
@KfreeZ and team -- more of a discussion. I know this is a sample and we are making namespace optional -- good. But what will the default be? Why because if every chain goes into a namespace that reflects the chains purpose, there will be less service sharing. If each loggedin user comes with a user or group specific namespace, the logic there would be potentially for chargeback/billing.

@mkbhanda I am writing chatqa on purpose, for saving a letter to type :) But if you think chatqna is better, we can revert to it.
with this change, the service defined in a same pipeline will by default live in same the namespace as where CR is created, if the optional namespace is set, it will be assigned to this specific optional namespace


Remove from mimir equipped management clusters

Towards https://github.com/giantswarm/roadmap/issues/3218

We should probably not merge this until Mimir is actually running on all installations on these cloudproviders, right?
So I'd either set the PR as "draft" or write a big warning not to merge it and explain why. :wink:

I think we Can merge this one as it's not liké we're planning on making a release right? But let's not merge thé remove from collection prs for sure


Add configuration option to disable "close on focus"

Is your feature request related to a problem? Please describe.
I use i3 as my window manager which uses changes focus on hover, so the "close on change focus" feature results in closing if the cursor doesn't remain over Onagre.
Describe the solution you'd like
An option in the configuration file for disabling this behavior. (I would add/PR it, but it appears the current version has removed the non-theme configuration file, best I can tell).
(Sidenote that is far less important and I can't justify making a unique issue for: the window includes the window manager window type hint of _NET_WM_WINDOW_TYPE_NORMAL, while a type of dock/popup/dialog might be more appropriate. Best I can tell,  iced doesn't expose the ability to configure this yes, while winit does, so it would likely have to wait unless you want to handle window creation and the event loop manually (which I think Iced does support, but is likely more effort than it's worth). I can make an issue for this if you'd like one just for keeping track, the only reason I noticed is because I needed to add a shadow-exclude rule to my compositor since the blanket rules by window hints weren't applicable)

I use i3 as my window manager which uses changes focus on hover, so the "close on change focus" feature results in closing if the cursor doesn't remain over Onagre.

This is already  implemented in the 'next' branch which will eventually turn into the first beta release. It's not ready yet, there are a lot of ongoing changes there, if you feel adventurous you can try it but the configuration format as dramatically changed.
I will try to push a config example today so you can try it out.

so it would likely have to wait unless you want to handle window creation and the event loop manually

I'd rather wait for it indeed. I'll try to build with the PR you mentioned and talk to the iced folk to see what's keeping this from being merged.

I needed to add a shadow-exclude rule to my compositor since the blanket rules by window hints weren't applicable

Which compositor are you using ? The WM class is now set to "onagre" on the next branch.
This works for me on picom :
shadow-exclude = [
  "class_g = 'onagre' && argb",
];

Here is the config example for the next version : https://github.com/oknozor/onagre/blob/next/config.example-ugly.scss
To try the this version : cargo install --git https://github.com/oknozor/onagre --branch next
I could really use some help to spot bugs here, so if you try it please give me some feedback.
If you notice onagre is falling back to the default theme, run it in a terminal, you should get a human readable error explaining what went wrong.

I actually ended up with that same picom rule independently :P and I'll try to switch to the next branch when I get off work and will certainly report any issues I hit.

I gave it a shot, works great, closing the issue but will let you know what other snags (if any) I hit
I've been using it for roughly a day without issue, and it also seems to have fixed another issue (knock on wood) I was trying to track down where sometimes it would immediately close without any stdout/stderr output (and possibly launching vim? I think? but I wouldn't be able to tell) which I at first thought was just it being too eager to process keypresses on launch but I am less certain of the cause now. Regardless, I haven't hit it since switching and hopefully it's gone for good, as it was one of the bigger pain points now that I'm using it as my daily driver


Could not send HEAD request to URL_SITE HTTP Error 403: Forbidden

Checklist

[ x] I'm asking a question
[x ] I've looked through the README and FAQ for similar questions
[x ] I've searched the bugtracker for similar questions including closed ones

Question

WRITE QUESTION HERE
I have read through the FAQ about a similar problem/challenge when the youtube-dl script output gives me: "Could not send HEAD request to URL_SITE (what I am trying to download). HTTP Error 403: Forbidden. I have read the FAQ here and also gone through some forums and seek help on Reddit, but to be honest I'm totally lost and would like some advice on how to solve this issue.
Here is the full output --verbose:
youtube-dl --verbose https://video.privacy.com.br/507b65cc-83e5-4649-a5ba-17bae1e65764/mp4/6502f04e-6c2b-47e2-b397-866264e56e33-1705105253171--yasminmineira_Mp4_Avc_Aac_16x9_1280x720p_24Hz_8.5Mbps_qvbr.mp4
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://video.privacy.com.br/507b65cc-83e5-4649-a5ba-17bae1e65764/mp4/6502f04e-6c2b-47e2-b397-866264e56e33-1705105253171--yasminmineira_Mp4_Avc_Aac_16x9_1280x720p_24Hz_8.5Mbps_qvbr.mp4']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.12 (CPython) - Linux-6.5.0-14-generic-x86_64-with-glibc2.35
[debug] exe versions: ffmpeg 4.4.2, ffprobe 4.4.2, rtmpdump 2.4
[debug] Proxy map: {}
[generic] 6502f04e-6c2b-47e2-b397-866264e56e33-1705105253171--yasminmineira_Mp4_Avc_Aac_16x9_1280x720p_24Hz_8.5Mbps_qvbr: Requesting header
WARNING: Could not send HEAD request to https://video.privacy.com.br/507b65cc-83e5-4649-a5ba-17bae1e65764/mp4/6502f04e-6c2b-47e2-b397-866264e56e33-1705105253171--yasminmineira_Mp4_Avc_Aac_16x9_1280x720p_24Hz_8.5Mbps_qvbr.mp4: HTTP Error 403: Forbidden
[generic] 6502f04e-6c2b-47e2-b397-866264e56e33-1705105253171--yasminmineira_Mp4_Avc_Aac_16x9_1280x720p_24Hz_8.5Mbps_qvbr: Downloading webpage
ERROR: Unable to download webpage: HTTP Error 403: Forbidden (caused by <HTTPError 403: 'Forbidden'>); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
File "/usr/local/lib/python3.10/dist-packages/youtube_dl/extractor/common.py", line 635, in _request_webpage
return self._downloader.urlopen(url_or_request)
File "/usr/local/lib/python3.10/dist-packages/youtube_dl/YoutubeDL.py", line 2300, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python3.10/urllib/request.py", line 525, in open
response = meth(req, response)
File "/usr/lib/python3.10/urllib/request.py", line 634, in http_response
response = self.parent.error(
File "/usr/lib/python3.10/urllib/request.py", line 563, in error
return self._call_chain(*args)
File "/usr/lib/python3.10/urllib/request.py", line 496, in _call_chain
result = func(*args)
File "/usr/lib/python3.10/urllib/request.py", line 643, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)

This URL format isn't supported and the attempt to handle it with the Generic extractor results in the error 403.
Having said that, your problem URL looks like a link to mp4 media. If so, you should try something else. yt-dl is for getting media links out of opaque sites, and possibly fetching the linked content. If you already have a media link, use ffmpeg or even curl or wget. You may need to pass the URL from which you obtained the link as the value of a Referer (sic) header.

https://yt-dl.org/ is shut down now. The script can't download the executable.

OP is clearly running yt-dl, even if @Syriuss can't manage to read #30839.

The bare URL gets 403 regardless. Additional parameters not provided by OP are needed to download this video. OP could try to find the same content at a site that yt-dl supports.

This URL format isn't supported and the attempt to handle it with the Generic extractor results in the error 403.
Having said that, your problem URL looks like a link to mp4 media. If so, you should try something else. yt-dl is for getting media links out of opaque sites, and possibly fetching the linked content. If you already have a media link, use ffmpeg or even curl or wget. You may need to pass the URL from which you obtained the link as the value of a Referer (sic) header.


Fix the list of globals

The current globals list is incorrect and includes things like 'jest', 'document', 'pit' etc. This uses the package 'eslint-plugin-react-native-globals' to include a proper list of globals.

Coverage remained the same at 71.91% when pulling 1460f74b52f7b79c5089d6f6e1caf5a408c257af on satya164:globals into 4f065442f613aeaab42acd54d807b90ee3edd47c on Intellicode:master.

Thanks @satya164! I'll create a release shortly.


Fix SyntaxWarning (resolves #943).

This PR resolves #943 by fixing a SyntaxWarning that affects Python >=3.8. Also affects #864, #871.

@dwhswenson Wonderful, thanks! 😄


Load indexfile from abnormal abort may lose index data

In IndexService#load
                    IndexFile f = new IndexFile(file.getPath(), this.hashSlotNum, this.indexNum, 0, 0);
                    f.load();

                    if (!lastExitOK) {
                        if (f.getEndTimestamp() > this.defaultMessageStore.getStoreCheckpoint()
                            .getIndexMsgTimestamp()) {
                            f.destroy(0);
                            continue;
                        }
                    }

                    log.info("load index file OK, " + f.getFileName());
                    this.indexFileList.add(f);

f.getEndTimestamp() indicates file's last write timestamp
indexMsgTimestamp in StoreCheckpoint indicates  indexfile last flush timestamp

Consider a situation that index file last write timestamp is later than flush timestamp, but first write timestamp is earlier than flush timestamp, what will happen is that the file with some valid data will be destroy and some index data will be lost.

Is this design like so or it is a bug?

i think you are right. the current recover logic only cover consumer queue, the index service recovery is not involved.

Any fix is going on in plan for this?


Rave + ipdapter

If I was to use RAVE +animatediff with IP adapter would you recommend to connect ipadapter as model to the unsampler and ksamplerRAVE or after the animatediff?

I would recommend using IPAdapter for both RAVE and AnimateDiff. Not sure if there would be any benefit to applying it to the Unsampler, but in theory if you're using a >1 CFG in the Unsampler and using actual prompts instead of just empty conditioning, maybe it could act similarly to negative conditioning. In my experience there's usually not much reason to add real prompts for inversion instead of just adding a negative prompt to the ksampler.

would you also recommend it when using sdxl models?

I haven't had much luck yet using RAVE with SDXL, I think it's because the multi-aspect-ratio training reduced the tiling effect compared to SD 1.5


Add #readable? to FileTest

specs please...

@smtlaissezfaire Okay, I’ve just added them.

Thanks.  Merged in 285aeec6c0b247b0f940e505798ba2ecfe83d27e


Tag Component added

Hello Artur Bień,
Tag Component
This is the Tag Component. I tried to make the UI as similar as the SS you have tagged in the issue.
Tags Container Component - Extra Component
This is made with the purpose of Containing the tags at one place.
How I approached
Tag Size
I tried taking the height of the tag as 28px by enlarging Window95 UI to the height of the screen and then measuring the respective size of the tag.
Tag Content Management
I passed an Array of content to the component, which will be basically about the type of content.
[
    { type: 'text', content: 'Microsoft' },
    {
      type: 'image',
      content: MsnImage,
      alt: 'microsoft'
    }
  ]

Screenshot

Actual Implementation

Story Book Implementation

Features

Users can create Tags in different formats (as in the SS) by the different ordering of the contents passed in the contentArray.
Users can also give different colors and background colors to the tags by passing them as props.

Note : These are the minimal features that I think (since haven't seen UI in real) should be there. Please guide me what to add more to make the component more interesting.
Bugs

Don't know why but the original preview and the preview in the Story Books seem to be different despite having the same Styling. It is my first time with the Story Book so I can't exactly figure it out.
Can't Pass SVGs as React Component in the Image in Story Book implementation. Same is working when done by simple implementation.

Todos:

Adding .mdx file
Adding .specs.js file

Hello Artur Bień,
Chip Component
This is the Chip Component. I tried to make the UI as similar to what you have instructed in the issue.
Component
<Chip size='md'>
Props
label - Label of the Chip
onClick - onClick Function to the Chip
size - Size of the chip (["sm","md","lg"]) (sm byd default)
fullWidth
backgroundColor
color
Note: BackgroundColor and Color are just optional props. If not provided, Chip will take up respective properties based on the Theme.
Screenshot

Default Chip i.e. Small Sized

Button with onClick function thus having tabIndex and role as button

Box Shadow on Hover

Theme based colouring

Chip with provided Background Color

Chip with provided text color

Bugs

MDX not been shown in the StoryBook

Todos:

Adding .spec.js file


Added .NET SDK for Microsoft.HybridContainerService

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

Please generate the API file with the command .\azure-sdk-for-net\eng\scripts\Export-API.ps1 hybridaks

@HariPrasadV can you update the pr for the comments?

@HariPrasadV can you update the pr for the comments?

Sorry for the delay, I've addressed all the comments now, and also tested the SDK and it looks good from our side. Please take a look and let me know if there is anything else. Thanks!

Merge this pr first, kick off release once the namespace got approved.


about dataset

dear author:
I have a question that training on gopro, have 2 blur folder, that blur and blur_gamma, I want to know you used is blur or blur_gamma? thankyou

blur_gamma

dear zzh:
Whether the image resolution of the GOPRO dataset is downsampled from 1280720 to 960540 like IFIRNN？ thank you very much！

Yes

dear author:
I have a question that training on gopro, have 2 blur folder, that blur and blur_gamma, I want to know you used is blur or blur_gamma? thankyou

Hi ,bro，Have you trained models on GOPRO datasets?I have a few questions for you ,When I downloaded the GOPRO_DS ,I had some problems during the training.
RuntimeError: There were no tensor arguments to this function (e.g., you passed an empty list of Tensors), but no fallback function is registered for schema aten::_cat.  This usually means that this function requires a non-empty list of Tensors.  Available functions are [CPU, CUDA, QuantizedCPU, Autograd, Profiler, Tracer, Autocast]
I just changed the batch_size=8 to batch_size=4.


Refactor, rewrite in ES6, switch to promises

[ ] Get rid of the curried functions. I'm pretty tired of 1000 wrapped & curried functions here and there, let's see if we can think of a better way which is just as fast
[ ] Switch from coffeescript to ES6
[ ] Switch to promises. Investigate performance downside from using them.

Well yeah... when I've been talking about rewriting in ES6 for 2.0 I didn't just mean a conversion like with decaffeinate. I hopefully have it in me to start getting it out of my head and putting together a new structure reasonably soon now that chokidar has crossed a big milestone. Way more ideas than time to implement them, like always.

@es128 if we'll find someone to do this for 1.9, why not do it? This will bring more contributors.

Uh, sure. Are there any volunteers?

Maybe myself.

Although not sure about promises — there's some async / await stuff — but i've never played with it. Need to research it more.

Yes I've thought about trying generators or trying to do more stream type stuff internally.

node 4 is out — which brings es6 support to the board. Which means we don't need babel.

I still think you need babel for es7's await, right?

yeah — but I don't care about await this much.


Table of Contents not generated when using shortcode

Describe the bug
I am using a shortcode to pull my README.md down from projects and include it in an article. However, when I do this the table of contents will not generate. It only works when directly adding headings to the markdown file.
To Reproduce
Save this shortcode to layouts/shortcodes/github-readme.html and use it in an article with {{< github-readme "user/repo" >}}.
{{ $repo := .Get 0 }}

{{- $url := printf "https://api.github.com/repos/%s/readme" $repo -}}
{{- $response := getJSON $url -}}
{{- $content := base64Decode $response.content | markdownify -}}
{{ replaceRE `(?s)<h[1-2].*?>.*?</h[1-2]>` "" $content 1 | markdownify }}

Expected behavior
A table of contents being generated when I make showTableOfContents = true in config/_default/params.toml.
Hugo & Blowfish versions
Hugo: v0.111.3
Blowfish: v2.32.0

Thanks for your feedback @dylantjb. I am closing this one because it's not related to Blowfish. Makes sense to me that the Hugo pipeline doesn't process this buy it's not something the theme can control.


recording freezes for IIS server with client certificate

Problem Description
recording freezes when trying to recored application on top of IIS server that uses client certificate.
but when using the same client certificate (same authority) on top of Apache server the recording passed as expected.
note: without mitmproxy we have normal behaviour on browser, we see the behaviour only when recording.
Steps to reproduce the behaviour:

install IIS server (IIS version 6.2 on windows 2012 R2)

generate some CA (authority).

configure the IIS server as following:

recored the IIS app by using client certificate.

System Information
Mitmproxy: 8.1.1 binary
Python:    3.10.5
OpenSSL:   OpenSSL 3.0.3 3 May 2022
Platform:  macOS-10.15.7-x86_64-i386-64bit

We don't have any IIS servers here, so we can't reproduce this.


[6.x] Fixed setting up memcached on travis

The install seems to have been failing but without crashing the setup, and then phpunit was just skipping the tests that needed memcached.

Before:

After:


Update arq to 5.2.3

Checklist

[x] The commit message includes the cask’s name and version.
[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.

Had to update the checkpoint checksum manually. The closing tag (</pubDate) in the updated appcast xml was put on a new line. Which caused the regex in the sed command mentioned on this page to not capture the <pubDate>...</pubDate> line properly.


New block without barrier

Describe the feature
Add a new block function without a barrier to provide users with an alternative way to implement code that does not need synchronization.
For example:
#pragma omp parallel
{
    // This line does not need synchronized execution
    printf("Block executed by thread %d\n", omp_get_thread_num());

    // Other parallel blocks
}

Additional information

[X] Would you be willing to help implement this feature?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

It is already implemented, but the execution is so quick that there is no possibility to execute the following code before the block ends. A possibility could be to use a list of tasks, and when the join method is called, the tasks are executed in order.


Improve ArchLinux Support

Signed-off-by: Logan Bond<EMAIL_ADDRESS>
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area cmd

/area pkg

/area docs

/area tests

What this PR does / why we need it:
Improve ArchLinux kernelrelease support to assume the user passes in the kernel type with the kernelrelease. For example: 5.10.10.zen1-1 rather than just 5.10.10-1.
This change allows driverkit to find/build zen, lts, and hardened arch kernels - as well as the default arch stable.
Examples (which include URL output just to debug)...
Arch Stable:
╰─❯ _output/bin/driverkit docker --output-module /tmp/test.ko --kernelrelease 5.0.2.arch1-1 --target arch
INFO driver building, it will take a few seconds   processor=docker
[https://archive.archlinux.org/packages/l/linux-headers/linux-headers-5.0.2.arch1-1-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/linux-headers/linux-headers-5.0.2.arch1-1-x86_64.pkg.tar.zst]
INFO kernel module available                       path=/tmp/test.ko

Arch LTS:
╰─❯ _output/bin/driverkit docker --output-module /tmp/test.ko --kernelrelease 4.19.28-1 --target arch
INFO driver building, it will take a few seconds   processor=docker
[https://archive.archlinux.org/packages/l/linux-lts-headers/linux-lts-headers-4.19.28-1-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/linux-lts-headers/linux-lts-headers-4.19.28-1-x86_64.pkg.tar.zst]
INFO kernel module available                       path=/tmp/test.ko

Arch Zen:
╰─❯ _output/bin/driverkit docker --output-module /tmp/test.ko --kernelrelease 4.20.7.zen1-1 --target arch
INFO driver building, it will take a few seconds   processor=docker
[https://archive.archlinux.org/packages/l/linux-zen-headers/linux-zen-headers-4.20.7.zen1-1-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/linux-zen-headers/linux-zen-headers-4.20.7.zen1-1-x86_64.pkg.tar.zst]
INFO kernel module available                       path=/tmp/test.ko

Which issue(s) this PR fixes:

Fixes # N/A
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
N/A

Better support for various ArchLinux kernel types

I did want to mention that I'm seeing a lot of compilation issues with various Arch kernel releases:
╰─❯ _output/bin/driverkit docker --output-module /tmp/test.ko --kernelrelease 5.12.8.arch1-1 --target arch -l debug
...
...
...
DEBU A+ cd /tmp/driver
DEBU + make CC=/usr/bin/gcc-11 KERNELDIR=/tmp/kernel
DEBU *make -C /tmp/kernel M=/tmp/driver modules
DEBU *make[1]: Entering directory '/tmp/kernel'
DEBU   CC [M]  /tmp/driver/main.o
DEBU �cc1: error: incompatible gcc/plugin versions
DEBU cc1: error: failed to initialize plugin ./scripts/gcc-plugins/structleak_plugin.so
DEBU Fmake[2]: *** [scripts/Makefile.build:271: /tmp/driver/main.o] Error 1
DEBU )make[1]: Leaving directory '/tmp/kernel'
DEBU 2make[1]: *** [Makefile:1851: /tmp/driver] Error 2
DEBU $make: *** [Makefile:7: all] Error 2
DEBU log pipe close                                error=EOF
DEBU context canceled
FATA exiting                                       error="Error: No such container:path: c7b515018a108fd4376ae20d64ca90bcf4342709641c6447d139477c3c6a6e79:/tmp/driver/module.ko"

The same error: failed to initialize plugin ./scripts/gcc-plugins/structleak_plugin.so pops up in several different releases. Lower level compilation issues are a bit over my head, but is this something I could potentially fix by making changes to the base archlinux.sh template script?

I was able to fix the gcc-12 issue by using --builderimage with a custom archlinux container:
FROM archlinux:latest

RUN pacman -Sy && pacman -Sy --noconfirm make pahole gcc11 gcc11-libs gcc && ln -s /usr/bin/gcc /usr/bin/gcc-12

...and then it works. Kinda makes sense given how new Arch is - --builderimage may just be required for Arch using newer tools than Debian.

So, fact is: we need to use some custom builderimage based on top of arch to build some arch kernels, right? I think they might use some gcc plugin that is not supported by the debian one.
I think it is good to go for now; we don't aim at natively supporting everything; good thing is one can build its own builder image and build all the archlinux kernels if needed.

DEBU (Failed to parse base BTF 'vmlinux': -22

Note that this does not depend upon gcc12, but it seems to be an issue with 6.x kernels; libs CI has a job that tests the build with driverkit on each maj kernel version (2.x, 3.x, 4.x, 5.19.12 on arch), and we are not seeing any issue.
I am able to build 5.19.12 with driverkit on my pc too.
After some research with the help of @Andreagit97 , we found out that newer kernels are enforcing the generation of BTF for kmod too.
Unfortunately, this is somewhat harming kmod build portability, as it seems we are not able to build a kmod for a distro different than the one that is running anymore.
Some links:

https://groups.google.com/g/linux.debian.kernel/c/2ePnmlEXeIQ/m/mdindWfVEAAJ
https://lore.kernel.org/bpf/20201113103158.GA30836@linux-8ccs/t/
https://groups.google.com/g/linux.debian.bugs.dist/c/Wv6lQZycgHY

The only workaround that we found, right now, is to forcefully disable the Makefile step that generates BTF, that is:
quiet_cmd_btf_ko = BTF [M] $@
cmd_btf_ko =                                                      \
if [ -f vmlinux ]; then                                         \
    LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J $(PAHOLE_FLAGS) --btf_base vmlinux $@; \
    $(RESOLVE_BTFIDS) -b vmlinux $@;                        \
else                                                            \
   printf "Skipping BTF generation for %s due to unavailability of vmlinux\n" $@ 1>&2; \
fi;

Basically, we'd need to rename /lib/modules/$(uname -r)/build/vmlinux to something else, and at the end of the kmod build, rename it back.
In this way, the above piece of code, will just print "Skipping BTF generation...".
WDYT?

Btw i think we can tackle it in another PR, i can work on that if we agree on the solution.

Unfortunately, this is somewhat harming kmod build portability, as it seems we are not able to build a kmod for a distro different than the one that is running anymore.

Ugh, this is not great.
Maybe a bit late to the party here, but why is BTF type info necessary for building a kmod?

cc @Andreagit97 ; i am not sure why, but upstream is requiring this now!

Hm.. That is interesting. I guess my question would be how does ArchLinux container build it just fine and the Debian one not? It doesn't seem to care about the vmlinux:
╰─❯ _output/bin/driverkit docker --output-module /tmp/test.ko --kernelrelease 6.0.6.arch1-1 --target arch -l debug --builderimage arch-test:latest
...
...
...
 Please note: this buffer will be mapped twice in the process virtual memory, so pay attention to its size.
DEBU parm:           max_consumers:Maximum number of consumers that can simultaneously open the devices (uint)
DEBU parm:           verbose:Enable verbose logging (bool)
DEBU log pipe close                                error=EOF
INFO kernel module available                       path=/tmp/test.ko

That being said, I'm good with adding the mv vmlinux to somewhere and putting it back. We could just add that to the template script inside the {{ if .BuildModule }} section even...
Otherwise, I added the archlinux container to the build/ folder just as docs, but we are good to build ArchLinux in that way for now if we don't want to make any changes to the Makefile or scripts right away.

That being said, I'm good with adding the mv vmlinux to somewhere and putting it back. We could just add that to the template script inside the {{ if .BuildModule }} section even...

Well, we'll now have to do this in each builder IIUC, so might as well just do it in one PR as @FedeDP suggested,

Agree with @FedeDP @dwindsor we need to investigate more on that before taking a decision

Makes sense to me! Then I suppose this PR is ready to go? I can keep the Arch Dockerfile in the repo for the sake of documentation for anyone who might be trying this besides us.

I'd avoid keeping the builder arch because otherwise a new builder image will be pushed; perhaps a note under the examples for archlinux is enough for now: https://github.com/falcosecurity/driverkit/blob/master/Example_configs.md#archlinux
We will tackle it later ;)

Ah I see.. there's just a loop in the Makefile to build anything there. Gotcha, I'll remove it and update documentation.

LGTM label has been added.  Git tree hash: a83f9665ec892e22c3a2b00c3d00e8f506c85143

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: dwindsor, EXONER4TED
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 [dwindsor]

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


Glitches when adding newlines

I'm not sure if this is because of bugs in PEG.js mode but I have weird results when I'm adding newlines to the editor. Somethings all lines are broken sometimes they are fixed.

This may be because incremental parser and PEG.js have inner JS mode.
Do you think that the problem is in PEG.js mode or in CodeMirror?

I'm not sure but I don't see only
state.localState = CodeMirror.startState(jsMode);

I don't see anywhere ending the mode in PEG.js (no "}" check anywhere). Maybe that is the problem. But I'm not sure how to turn off the inner mode, there is no endState in CodeMirror.

There is no file named PEG.js in the CodeMirror distribution. Is this about pegjs.js, or some 3rd party mode?

About default pegjs.js mode that is included in the library. The name for the parser generator is PEG.js so I used the name of the project not the filename.

Your PR looks rather unfinished and confused, and this issue doesn't provide a bug description that I can reproduce, so at this point I can't really do much. Also, that mode was contributed and I'm not willing to invest a lot of time into it.

Yes, the PR is broken, I thought that I've fixed the pegjs mode but I'm not able to make it work the same as htmlmixed. I'm getting stack overflow when trying to get pegjs mode inside pegjs mode. It's really hard because there is no detailed documentation how to write modes. At least I didn't find any.


Update README with more info about the repo

Is there an ongoing project about GitOps on this repo? Maybe we could share at least a link to the livestream on the README, or elaborate on the contributions we want to have. For example being like a source of information about GitOps perhaps?
Let me know your thoughts 😃

@BOLT04 the plan is for @eddiejaoude and I to do a live stream in a few weeks.

Thanks for raising the issue @BOLT04 . @swade1987 and me are still planning a few things out at the moment,.
Anything in particular you would like to see @BOLT04 ?

thanks for the response @eddiejaoude and @swade1987 😃. It would be cool to see something practical, maybe a demo example on GitHub (or anywhere that you guys feel its applicable) or even pick an existing repository and change it according to some GitOps practices, like maybe add a release pipeline (still not sure what GitOps is all about, so I'm shooting blindly 😅)

Great suggestions @BOLT04 👍 - I think there will be a demo too. I want to do something similar for EddieBot once I learn more from this session 🤓

I was thinking we could take a very basic NodeJS application, dockerise it, push it to a registry and deploy it to kubernetes using GitOps practices.

node FTW 💪  ... lets do it 👍

I already have one we can use I can port it over to this repo!

ok great 👍

Hi @swade1987 and @eddiejaoude, I'll be closing this issue since the live stream happened and the README was updated with tons of cool info to learn more about GitOps 👍 😃
Thank you!

Thanks @BOLT04 👍


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/74502

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/77186

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/77666

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/78047

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/81962

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/89503

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/92190

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/92289

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/94681

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/95389

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/100628

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/100664

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/101407

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/102097

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114182


Repositories dropdown only shows the repositories for last-selected project

Describe the bug
When multiple projects are selected, the Repositories dropdown only shows the repositories of the last-selected project.
To Reproduce
Steps to reproduce the behavior:

Install the extension
Go into a project > Repos > PRMH
Select multiple projects
Click on Repositories dropdown and search (manually or with the search box) for a repository contained in the original project: It's not there

Expected behavior
The Repositories dropdown should contain all the repositories, for all the projects that are currently selected.
Screenshots
Single project, single repository:
Adding second project, the initial repository is not present:
Desktop (please complete the following information):

OS: Windows 10 20H2
Browser: Chrome
Version: v98.0.4758.82 64-bit (latest version)

Additional context
Add any other context about the problem here.

Fixed in the latest PR #218


Cleanup PublicAPI

I think this conflicts with https://github.com/fsprojects/Paket/pull/2638 on some lines

haha so I are telling me to merge it asap so that I'm clear? ;)

ok. I will keep it open until the other one is done.

For example ;).
No idea, tbh ideal timeslot for cleanup is after big changes started, but tbf that is never the case.
Nono please merge if ready I can live with the consequences :P


Fix: exports map for plugins

Short description
TypeScript was complaining about not being able to find the declarations, so I fixed the exports map and tested it. Now I get full TS + autocompletion for plugin constructors. 🙌
Implementation details
I actually made the import path a little simpler/friendly: import SomePlugin from 'wavesurfer.js/plugins/...
Checklist

[X] This PR is covered by e2e tests
[X] It introduces no breaking API changes

NOTE: This shouldn't break anything in people's code, as the old/current import path of dist/plugins/... should still work. As you can see, I'm using it in my code, but the page still loads and shows the timeline properly:

Hey Sam, thanks for the PR!
Unfortunately, this change will most certainly break people's code.
In the readme and on the website, there are examples of how to correctly import plugins, namely:
import Regions from 'wavesurfer.js/dist/plugins/regions.js'

As you can see, it should have a .js extension. With your changes, this type of import will likely result in a double extension (e.g. regions.js.esm.js), which won't work.
If you prefer to import regions w/o an extension and with a shorter path, which I fully agree is nicer, we should add an additional mapping to the package.json, not replace an existing, working, mapping.

Ah, right! Maybe this is something we can phase out in a future major version, then. I just pushed an update.
I feel like this PR started from what I thought was a bug. I swear the type declarations were not working when I tried the dist/plugins/*.js format, but now I'm thinking VS Code was experiencing a hiccup.
I'll edit the PR to reflect that this is not a fix.


master is beta for deployment purposes

Basic fix for #130

Codecov Report

Merging #131 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #131   +/-   ##
=====================================
  Coverage      87%    87%
=====================================
  Files          70     70
  Lines         631    631
  Branches       50     50
=====================================
  Hits          549    549
  Misses         76     76
  Partials        6      6

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 72d4942...a94bda3. Read the comment docs.


[MAJOR] Missing contributing guide

@calebweinreb you seem to be the only developer at the moment, but I assume that you would like for the project to grow and to inspire contributions from collaborators, and perhaps also from the wider systems neuro community.
I suggest adding a CONTRIBUTING.md guide to the repo and, at the minimum, stating your policy on external contributions. Are they welcome, and if so, what's the recommended procedure?

I've now added a contribution guide:
https://github.com/calebweinreb/SNUB/blob/main/CONTRIBUTING.md

Thanks! I'll close this issue.


Beaker-rspec should support passing default options to beaker

While I understand using environmental variables to pass options such as "provision" or "destroy" to beaker via beaker-rspec, this isn't efficient if I want to make "provision=no" and/or "destroy=no" a default when I run my tests.
Beaker-rpec should support setting these defaults via the acceptance spec helper which can be merged with the spec_helper.rb defaults and over-written by any environmental variables.
I'm not sure how to accomplish this, since the spec_helper.rb gets executed before my acceptance spec helper.

I believe that this would be resolved with https://tickets.puppetlabs.com/browse/BKR-166.
If not, please file a new ticket here: https://tickets.puppetlabs.com/browse/BKR/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel


Add basic support for many to many relationship

I believe we already have support for Many2Many relations (@marktopper, correct me if I'm wrong), but it's a little simplistic.  I'm definitely open to having a UI to edit relations, instead of just the JSON config settings.
One request before we could even consider moving forward with this.  Please remove all of the Tag stuff.  We have no plans to expand on the existing Pages/Posts/Categories system in it's current state, so there's no reason to include it right now.  Of course, you're more than welcome to keep it in your own app. :)

Okay, I removed them. They were there just for demonstration.

@fletch3555: Nice review, however we currently have a lack of support for Many2Many relations since the ID is not stored on the related table.

@marktopper, I was thinking we had something, but that it was hacky (like having to do two one2many relations against the pivot table).

I believe this is a great improvement for the methods we have now.
I am gonna try get the conflicts solved so we can ship this out in next release.
Great job @moe2566 and sorry for the delay.

@moe2566 / @marktopper ,  There are a few conflicts that need to be resolved before this can be merged in.  Can one of you please handle it?
Thanks!

Hey @moe2566
Thanks for this commit. I was testing it out and whenever I try and add a relationship, I get the following message:

Can you send me an example of a format that is valid in this box:

I tried adding something like:
{
    "relationship": {
        "key": "id",
        "label": "name"
    }
}

but I kept getting that message. Let me know and I would love to get this merged in. Appreciate it.

Hi @tnylea, sorry for the late reply.
You need to add a method property pointing to to Eloquent Model method that sets the relationship.
Eloquent class:
public function roles()
{
      return $this->belongsToMany('App\Role');
}

BREAD config:
{
    "relationship": {
        "key": "id",
        "label": "role",
        "method": "roles"
    }
}

Hey, thanks for this commit. I've actually used some of the code that you've written here to implement into the new relationships section coming to 1.0 so I'm going to close out this request.
Take a quick look at the new relationship section in 1.0 here: https://www.youtube.com/watch?v=gnSJ0Z2Fmso&t=53s
Thanks! Talk to you soon.


The message and subject is not displaying

After sending the mail, the message and subject is not displaying

<EMAIL_ADDRESS>


initial connect and reconnect delays for KBFS

@strib I'd love to have some feedback on this. Thanks! Will clean up and vendor rpc changes in before merge.

@strib Please take another look, thanks! I think relying InitialDelayForBackgroundWork broke git. So in the new commit I've added DelayInitialConnect() to InitMode and only have it return true in the contained mode.


Use binary accuracy for binary cross-entropy loss

Currently, the model will default to categorical accuracy when the loss function is binary cross-entropy. It makes more sense to use binary accuracy instead.

LGTM

Hi this change was made in error, and has invalidated several weeks of results for my project.
Consider any target with 3 elements [0,0,1] and the output [0,0,0]. Binary accuracy computes the mean incorrectly as ~(2/3).
K = np
def binary_accuracy(y_true, y_pred):
    return K.mean(K.equal(y_true, K.round(y_pred)))
trivial = [[0,0,0], [0,0,0], [0,0,0]]
t = [[0,0,1], [0,1,0], [1,0,0]]
binary_accuracy(trivial, o)

Output:0.66666666666666663

In general this accuracy is incorrect because each prediction-target pair is not a proper bernoulli trial. For example in 3 way classification it can yield {0,(1/3), (2/3), 1} whereas a proper bernoulli trial must be in {0,1} only. Therefore the accuracy is improperly defined since it is not necessarily the proportion of correct predictions. Rather it is the mean of some variables that can express degrees of correctness, some of which are absurd as shown in the example above.


FOBreak don't work anymore after remove unused and reset

By apply "Remove Unused" on FOBreak node, and reset output again, the node doesn't extract correct field from the structure

The bug was fixed by last commit


After clicking on New address at time of checkout, billing information form should be open.

Bug report
Title
After clicking on New address at time of checkout, billing information form should be open.
Issue Description
After clicking on New address at time of checkout, billing information form should be open.
Preconditions
1. framework Version.- master

Steps to reproduce
1. step1- Add a product in cart, proceed for checkout.
2. step2- Click on New Address button.

Expected result
Billing Information form should get open when user click on New Address.
Actual result

Fixed


Fix chart errors

Description

Pie chart tooltip and chart label decimal point designation function
Insert a function or column name at the last cursor position of a user column
Chart color cannot be changed

Related Issue :

How Has This Been Tested?

When creating a pie chart, open the tooltip option and check if decimal point designation is possible.
When creating a user column, add and check the column name by which the cursor position has been moved in the formula input.
When creating a chart, change the order of the measures to see if the color of the chart changes.

Need additional checks?
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.

Additional Context

deploy to 2

deploy to 2

deploy to 2

deploy to 2


Getting value info after reading

Hi, i have read a characteristic value from a service and everything suppose to be ok but that value is not readable at all. The value returned is like: AAAAAAAAA== (i think that is base64)
After using the encodedStringToBytes and bytesToString methods, the result is "" with no value.
Any help?
Thanks a lot,

Could you include a small reproducible snippet?

$rootScope.connect = function(addressParam) {
var params = {address: addressParam};
$cordovaBluetoothLE.connect(params).then(null, function (obj) {
console.log("Conexión error " + obj.status + " con dirección: " + obj.address);
$rootScope.close(addressParam);
}, function (obj) {
console.log("Conexión success " + obj.status + " con dirección: " + obj.address);
$rootScope.isCon(addressParam);
if(obj.status==="disconnected" || obj.status==="undefined" ){
$rootScope.connect(addressParam);
}
});
}
$scope.readChar = function(){
var params = {address: $scope.device, service: $scope.service.uuid, characteristic: $scope.characteristic, timeout: 5000};
$cordovaBluetoothLE.read(params).then(function(obj) {
$scope.leer = true;
console.log("COMENZANDO LECTURA ");
$scope.valueobj = obj.value;
$scope.convertValue();
}, function(obj) {
console.log("Error al leer" + obj);
});
}
$scope.convertValue = function(){
$scope.bytesobj = $cordovaBluetoothLE.encodedStringToBytes($scope.valueobj);
$scope.strobj = $cordovaBluetoothLE.bytesToString($scope.bytesobj);
}
});

Results: No error:
$scope.bytesobj --> [0, 0]
$scope.strobj --> "
$scope.valueobj --> "AAA="

I'm sure that some data is password protected, for example look at this picture:

In the left photo the characteristic 2a00 is the name and i can read its value as you can see (value string '2-3') but in the characteristic fff2 which is the uuid that has to be password protected, the value is ' ' and all the bytes take 0 value. Where have to be the password included? As here:

Ah, I see.
Sometimes bluetooth devices require you to be paired and bonded before exchanging security keys (that would allow you to see the decrypted values).  Is your phone bonded with the target device?

how to bond with your plugin?
Thanks a lot for your answer,

The version we currently use does not have the ability to bond; but it can be patched in; if you'd like to do a PR. https://github.com/randdusing/cordova-plugin-bluetoothle
Here's the parent plugin we're wrapping; and most likely we'll be upgrading soon as we'll need that bonding capability as well.

Also, keep this in mind:
http://stackoverflow.com/a/27973402/16587

The solution is to complete the discovery of services and characteristics before attempting the read operation.

I execute discover method before reading, in order to read the choosen /service/characteristic.
I do not understand what you are saying with that answer, could you explain a little bit?
Thanks again


Language Strings, Config, View Improvements

This is a huuge update, thanks alot  @tonypartridger

Very welcome @eighty9nine I've got quite a bit incoming moving forward too as I integrate the package more. Appreciate the prompt merge :-)


Remove an extra word in CONTRIBUTING

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've been mindful about doing atomic commits, adding documentation to my changes, not refactoring too much.
[x] I've a descriptive title and added any useful information for the reviewer. Where appropriate, I've attached a screenshot and/or screencast (gif preferably).
[ ] I've written tests to cover the new code and functionality included in this PR.
[x] I've read, agree to, and signed the Contributor License Agreement (CLA).

PR Summary
Fix a simple typo.
Test strategy
Read the file :)

Current coverage is 61.56% (diff: 100%)

Merging #142 into master will not change coverage

@@             master       #142   diff @@
==========================================
  Files             8          8
  Lines           255        255
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            157        157
  Misses           98         98
  Partials          0          0

Powered by Codecov. Last update 0f24d6c...a3bb937


Introduce NSRotate flag to rotate amongst nameservers (or not) for forwarded requests

@miekg
Can you cut a new release that picks up the recent bug fixes about timeout, checking err value on /etc/resolv.conf read, this roundrobin fix.
Thanks!
@thockin

I think you use round-robin when skydns sends back multiple records to the client.
I could use ns-round-robin as a different flag.
But you raised a fair question. We should not be specifying more than 1 nameserver if we don't want round robin. It would leads to issues like: SkyDNS goes to the first NS, which  fails. Then SkyDNS still go to the second one, causing SkyDNS to propagate  NXDOMAIN instead of SERVFAIL or something..
@karlkfi for the mesos-k8s use case, can you have skydns just use 1 nameserver ?

Let me get back to you on this one after I resolve https://github.com/kubernetes/kubernetes/issues/15303

Yes, your assessment is correct, this will only work in the happy case.

You have multiple nameservers in case one fails.  The same reason every
config ever recommends having 2.
On Fri, Oct 9, 2015 at 4:32 AM, Abhi Shah<EMAIL_ADDRESS>wrote:

I think you use round-robin when skydns sends back multiple records to the
client.
I could use ns-round-robin as a different flag.
But you raised a fair question. We should not be specifying more than 1
nameserver if we don't want round robin. It would leads to issues like:
SkyDNS goes to the first NS, which fails. Then SkyDNS still go to the
second one, causing SkyDNS to propagate NXDOMAIN instead of SERVFAIL or
something..
@karlkfi https://github.com/karlkfi for the mesos-k8s use case, can you
have skydns just use 1 nameserver ?
—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/pull/231#issuecomment-146839508
.

What thockin said.
You're also assuming all nameservers are mirrors, which is not the case when you have several tiers of networking.
Also, you're ignoring the case where nameservers are imported from /etc/resolv.conf, where they were not explicitly given to skydns but were given to every dns client on the host.
Most DNS clients I've seen go down the list in one of the following methods:

Only try a nameserver if all the ones above it have timed out. - This has the downside that all DNS have to either be mirrors or "recursively" delegate to the others below them on the list. It's also slow on the client side.
Only return the response from a nameserver if all the ones above it have timed out, but query them all concurrently. - This is faster for the client, but increases net traffic and load on all the DNS servers.
Round Robin from the nameserver list - This distributes load, but requires all nameservers to be mirrors.
Randomly select from the nameserver list - This more evenly distributes load in high scale environments with similar workload ordering, but otherwise has the same downsides as option 3.
Concurrently query all nameservers and return the fastest response. - This is fastest for the client, but increases net traffic and load on all the DNS servers.

As an added functionality in skydns, it would be nice to have  a ns-rotate flag, just the way, /etc/resolv.conf has a rotate flag which specifies whether to round-robin between servers or not.
It would play out as follows:
i. skydns in no-rec mode: nothing to be done. client will respect the RES_ROTATE value of /etc/resolv.conf. Responsibility lies on the resolver client. The to-be-added-ROTATE flag in skydns would have no impact.
ii. For skydns in rec mode:
Skydns in-turn should respect the RES_ROTATE flag from etc/resolv.conf or respect the to-be-added-ROTATE flag that configures skydns to either round-robin or not between its nameservers. This would thus somewhat preserve the behaviour that clients were used to, before skydns replaced those Nameservers and become the only NS.

I would still need to update the PR to:
i. rename the flag to ns-rotate or something
ii. if flag is absent, for default value, read the rotate option from /etc/resolv.conf (treat it as false if absent)

If you're going to read multiple values from /etc/resolv.conf then it might make sense to only load /etc/resolv.conf with a specific --load-resolve-conf=true, rather than defaulting to that when --nameservers is empty. That way the other flags (nameservers, ns-rotate) just override /etc/resolv.conf values when --load-resolve-conf=true, rather than make flags mutually exclusive.

#5 is also semantically wrong.  If fast nameserver #2 returns NXDOMAIN for
your cluster.local, and you accept that answer while slower nameserver #1
could have had a valid response you are BROKEN.  See musl libc for a great
example of brain-damage.
Nameservers are listed in an order and that order needs to be respected.
Nameservers are not fungible.
var r
for each ns in nameservers {
    r = query(ns, timeout)
    if r == NXDOMAIN || r == VALID {
        return r
    }
}
return SERVFAIL

You can query in parallel or even be smart and query #2 when #1 is 50%
timedout, but you can't really round-robin or randomize or take
first-responde.
On Fri, Oct 9, 2015 at 8:57 AM, Karl Isenberg<EMAIL_ADDRESS>wrote:

What thockin said.
You're also assuming all nameservers are mirrors, which is not the case
when you have several tiers of networking.
Also, you're ignoring the case where nameservers are imported from
/etc/resolv.conf, where they were not explicitly given to skydns but were
given to every dns client on the host.
Most DNS clients I've seen go down the list in one of the following
methods:

Only try a nameserver if all the ones above it have timed out. -
This has the downside that all DNS have to either be mirrors or
"recursively" delegate to the others below them on the list. It's also slow
on the client side.
Only return the response from a nameserver if all the ones above it
have timed out, but query them all concurrently. - This is faster for the
client, but increases net traffic and load on all the DNS servers.
Round Robin from the nameserver list - This distributes load, but
requires all nameservers to be mirrors.
Randomly select from the nameserver list - This more evenly
distributes load in high scale environments with similar workload ordering,
but otherwise has the same downsides as option 3.
Concurrently query all nameservers and return the fastest response.

This is fastest for the client, but increases net traffic and load on all
the DNS servers.

—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/pull/231#issuecomment-146910591
.

I agree that the order is important, but there are definitely other clients doing it poorly. I wasn't trying to authorize their behavior, just point it out.

Just disabling this kind of name server selection (with a flag) seems most
sensible.
I'm not sure what the order of name servers in resolv.conf actually
implies. Diff. imp. seem to do different things.
They should return the same answers though, otherwise you end up in hard to
debug situations...:p
On 9 Oct 2015 17:43, "Tim Hockin"<EMAIL_ADDRESS>wrote:

#5 is also semantically wrong. If fast nameserver #2 returns NXDOMAIN for
your cluster.local, and you accept that answer while slower nameserver #1
could have had a valid response you are BROKEN. See musl libc for a great
example of brain-damage.
Nameservers are listed in an order and that order needs to be respected.
Nameservers are not fungible.
var r
for each ns in nameservers {
r = query(ns, timeout)
if r == NXDOMAIN || r == VALID {
return r
}
}
return SERVFAIL

You can query in parallel or even be smart and query #2 when #1 is 50%
timedout, but you can't really round-robin or randomize or take
first-responde.
On Fri, Oct 9, 2015 at 8:57 AM, Karl Isenberg<EMAIL_ADDRESS>wrote:

What thockin said.
You're also assuming all nameservers are mirrors, which is not the case
when you have several tiers of networking.
Also, you're ignoring the case where nameservers are imported from
/etc/resolv.conf, where they were not explicitly given to skydns but were
given to every dns client on the host.
Most DNS clients I've seen go down the list in one of the following
methods:

Only try a nameserver if all the ones above it have timed out. -
This has the downside that all DNS have to either be mirrors or
"recursively" delegate to the others below them on the list. It's also
slow
on the client side.
Only return the response from a nameserver if all the ones above it
have timed out, but query them all concurrently. - This is faster for the
client, but increases net traffic and load on all the DNS servers.
Round Robin from the nameserver list - This distributes load, but
requires all nameservers to be mirrors.
Randomly select from the nameserver list - This more evenly
distributes load in high scale environments with similar workload
ordering,
but otherwise has the same downsides as option 3.
Concurrently query all nameservers and return the fastest response.

This is fastest for the client, but increases net traffic and load on
all
the DNS servers.

—
Reply to this email directly or view it on GitHub
<
https://github.com/skynetservices/skydns/pull/231#issuecomment-146910591>
.

—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/pull/231#issuecomment-146926259
.

Sure, I meant for us in a multi-level hierarchical DNS world, we have to
respect the order.
On Fri, Oct 9, 2015 at 9:45 AM, Karl Isenberg<EMAIL_ADDRESS>wrote:

I agree that the order is important, but there are definitely other
clients doing it poorly. I wasn't trying to authorize their behavior, just
point it out.
—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/pull/231#issuecomment-146926880
.

@miekg PTAL. updated PR with new flag.

@miekg We are getting close to Kubernetes v1.1 launch.
It would be awesome if we can get this PR in and have a new skydns release :)
thanks for helping out!

Few nits, otherwise looks good.

thanks!
could we have a release of skydns as well with these changes so that we can use it in kubernetes 1.1 ?

yeah, no problem. WIll do it after work (18:00 UTC)

pushed 2.5.3a to the docker registry.

thanks!


Datatable don't have bottom scroll on mobile view

Hello,
my datatable isn't full responsive. Use default dynamic table. On my table don't show scroll on bootom.
Regards.

Can you please provide a screenshot ?

Hi, I am also noticing that table is not fully responsive to iPhone screen. Attaching screenshot as requested.

@girish2477  Hi, that's because that is the basic example with no responsive extension

William - thanks. Your suggestion made it workable for iPhone.
I noticed another issue which not related to responsiveness but data load. If I add 25000 rows to data table its takes very long to load the data and apply pagination and search to the page.

@girish2477 That you're doing WHAT 0_0?  Please don't do that! For very large data please don't load it into the DOM! Maybe some newer PC will be able to handle it, but you know clients almost never have a PC with Intel core last generation with 16GB of RAM! [At least not in my country!] (And don't tell me about it with a SmartPhone...)
For those case please use Server-side processing
Here there was some kind of conversation with some manager [I guess] that will help you understand a few things.
If you need more example Server-side processing you'll need to take a look at either StackOverflow or some other page.

There are many ways to get your data into DataTables, and if you are working with seriously large databases, you might want to consider using the server-side options that DataTables provides. With server-side processing enabled, all paging, searching, ordering actions that DataTables performs are handed off to a server where an SQL engine (or similar) can perform these actions on the large data set (after all, that's what the database engine is designed for!).

From: https://datatables.net/examples/server_side/
Good luck!

William - TFLMK :)
I was just playing around with the template to ensure it fits the requirement and hence created mock data in HTML itself. Thanks for your advice and links to server-side processing.


feat(api): Add 1.5ml tuberack to old labware definition section

overview
Closes #2582
changelog

add 1.5ml definition in shared-data/definitions and default-containers

review requests
If you can find 1.5ml tubes pls test on the robot.

Approved pending CI (I didn't look to see what is failing)


issue on installation

Hi
Love your plugin, but cant install it again
in the install window the following
Installing plugin...
Installing plugin from https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip...
/home/pi/oprint/bin/python -m pip install https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip
Collecting https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip
Downloading https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip (1.5MB)
Requirement already satisfied (use --upgrade to upgrade): OctoPrint-Slicer==1.2.8 from https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip in /home/pi/oprint/lib/python2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): OctoPrint in /home/pi/oprint/lib/python2.7/site-packages/OctoPrint-1.3.2-py2.7.egg (from OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): flask<0.11,>=0.9 in /home/pi/oprint/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Jinja2<2.9,>=2.8 in /home/pi/oprint/lib/python2.7/site-packages/Jinja2-2.8-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): werkzeug<0.9,>=0.8.3 in /home/pi/oprint/lib/python2.7/site-packages/Werkzeug-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): tornado==4.0.2 in /home/pi/oprint/lib/python2.7/site-packages/tornado-4.0.2-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): sockjs-tornado<1.1,>=1.0.2 in /home/pi/oprint/lib/python2.7/site-packages/sockjs_tornado-1.0.3-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): PyYAML<3.11,>=3.10 in /home/pi/oprint/lib/python2.7/site-packages/PyYAML-3.10-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Flask-Login<0.3,>=0.2.2 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Login-0.2.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Flask-Principal<0.4,>=0.3.5 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Principal-0.3.5-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Flask-Babel<0.10,>=0.9 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Babel-0.9-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Flask-Assets<0.11,>=0.10 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Assets-0.10-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): markdown<2.7,>=2.6.4 in /home/pi/oprint/lib/python2.7/site-packages/Markdown-2.6.8-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pyserial<2.8,>=2.7 in /home/pi/oprint/lib/python2.7/site-packages/pyserial-2.7-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): netaddr<0.8,>=0.7.17 in /home/pi/oprint/lib/python2.7/site-packages/netaddr-0.7.17-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): watchdog<0.9,>=0.8.3 in /home/pi/oprint/lib/python2.7/site-packages/watchdog-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): sarge<0.2,>=0.1.4 in /home/pi/oprint/lib/python2.7/site-packages/sarge-0.1.4-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): netifaces<0.11,>=0.10 in /home/pi/oprint/lib/python2.7/site-packages/netifaces-0.10.0-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pylru<1.1,>=1.0.9 in /home/pi/oprint/lib/python2.7/site-packages/pylru-1.0.9-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): rsa<3.3,>=3.2 in /home/pi/oprint/lib/python2.7/site-packages/rsa-3.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pkginfo<1.3,>=1.2.1 in /home/pi/oprint/lib/python2.7/site-packages/pkginfo-1.2.1-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): requests<2.8,>=2.7 in /home/pi/oprint/lib/python2.7/site-packages/requests-2.7.0-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): semantic-version<2.5,>=2.4.2 in /home/pi/oprint/lib/python2.7/site-packages/semantic_version-2.4.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): psutil<3.3,>=3.2.1 in /home/pi/oprint/lib/python2.7/site-packages/psutil-3.2.1-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Click<6.3,>=6.2 in /home/pi/oprint/lib/python2.7/site-packages/click-6.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): awesome-slugify<1.7,>=1.6.5 in /home/pi/oprint/lib/python2.7/site-packages/awesome_slugify-1.6.5-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): feedparser<5.3,>=5.2.1 in /home/pi/oprint/lib/python2.7/site-packages/feedparser-5.2.1-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): chainmap<1.1,>=1.0.2 in /home/pi/oprint/lib/python2.7/site-packages/chainmap-1.0.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): future<0.16,>=0.15 in /home/pi/oprint/lib/python2.7/site-packages/future-0.15.2-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): scandir<1.4,>=1.3 in /home/pi/oprint/lib/python2.7/site-packages/scandir-1.3-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): websocket-client<0.41,>=0.40 in /home/pi/oprint/lib/python2.7/site-packages/websocket_client-0.40.0-py2.7.egg (from OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /home/pi/oprint/lib/python2.7/site-packages/itsdangerous-0.24-py2.7.egg (from flask<0.11,>=0.9->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /home/pi/oprint/lib/python2.7/site-packages/MarkupSafe-0.23-py2.7-linux-armv7l.egg (from Jinja2<2.9,>=2.8->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): certifi in /home/pi/oprint/lib/python2.7/site-packages/certifi-2016.02.28-py2.7.egg (from tornado==4.0.2->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): backports.ssl-match-hostname in /home/pi/oprint/lib/python2.7/site-packages/backports.ssl_match_hostname-<IP_ADDRESS>-py2.7.egg (from tornado==4.0.2->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): blinker in /home/pi/oprint/lib/python2.7/site-packages/blinker-1.4-py2.7.egg (from Flask-Principal<0.4,>=0.3.5->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Babel>=1.0 in /home/pi/oprint/lib/python2.7/site-packages/Babel-2.3.3-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): speaklater>=1.2 in /home/pi/oprint/lib/python2.7/site-packages/speaklater-1.3-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): webassets>=0.10 in /home/pi/oprint/lib/python2.7/site-packages/webassets-0.11.1-py2.7.egg (from Flask-Assets<0.11,>=0.10->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): argh>=0.24.1 in /home/pi/oprint/lib/python2.7/site-packages/argh-0.26.1-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pathtools>=0.1.1 in /home/pi/oprint/lib/python2.7/site-packages/pathtools-0.1.2-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pyasn1>=0.1.3 in /home/pi/oprint/lib/python2.7/site-packages (from rsa<3.3,>=3.2->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): regex in /home/pi/oprint/lib/python2.7/site-packages/regex-2016.04.15-py2.7-linux-armv7l.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): Unidecode<0.05,>=0.04.14 in /home/pi/oprint/lib/python2.7/site-packages/Unidecode-0.04.19-py2.7.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): six in /home/pi/oprint/lib/python2.7/site-packages (from websocket-client<0.41,>=0.40->OctoPrint->OctoPrint-Slicer==1.2.8)
Requirement already satisfied (use --upgrade to upgrade): pytz>=0a in /home/pi/oprint/lib/python2.7/site-packages/pytz-2016.3-py2.7.egg (from Babel>=1.0->Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-Slicer==1.2.8)
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Done!
but in the octoprint top right I have the message below in red
Something went wrong
Installing the plugin from URL "unknown" failed: Could not parse output from pip
dont know what to do ??
thanks for any form of help

From the messages it looks like Slicer plugin was already installed successfully. If you haven't done it, can you reboot the Raspberry Pi and check if Slicer plugin is installed?

thanks for your reply
several reboot and it is not in the list of installed plugin
Anychance for a command line to have a force uninstall ?
thanks

If you can log into your Raspberry Pi you can do sudo /home/pi/oprint/bin/python -m pip uninstall https://github.com/kennethjiang/OctoPrint-Slicer/archive/master.zip to uninstall the plugin. However, I don't have a high confidence that re-installing it will work. Seems like your OctoPrint is in a little funky state that causes it to ignore plugins that are already installed.
What's your OctoPrint version?

I will reinstall octoprint as a whole and see

Let me know if the issue persists after you reinstall OctoPrint.

Hi
All is fine, even get an update this morning 1.2.9 if I recall well
thanks
Ps this thread is closed


Having problems with the default tabIndex=-1 in chrome, firefox, IE

I am trying to open a modal on loading an angular component. If I hit esc immediately after the modal is opened, it closes even when the keyboard property is set to false. So, by researching a little I found out that the default tabIndex on the modal was -1. I tried assigning [attr.tabIndex]="null". By doing that, I was able to keep the modal static after hitting the esc key. But, it only works in chrome not in IE and Firefox.
HTML:
<modal #modal [keyboard]="false" [backdrop]="'static'">

Message

<div *ngFor="let message of messages">
{{message}}

<button type="button" class="btn btn-default" data-dismiss="modal
(click)="continue()">Continue

ts:
@ViewChild('modal')
modal: ModalComponent;
close() {
    this.modal.close();
}

open() {
    this.modal.open();
}

ngOnInit() {
    this.modal.open();
}

Please help me fix this.
I am using angular 4 with<EMAIL_ADDRESS>angular-cli webpack.
Thank you.

This has been fixed in v0.11


Schema Incomplete?

Hey there!
I came across this project and was really excited. I had been planning on implementing a GraphQL server in Go, and now I don't have to [=
I decided to try adding the Star Wars Schema tests from Facebook's sample implementation in JS but ran into a few issues. You can see my start in this commit, but I'm getting confused on how to put together a more complicated, typed schema. I couldn't find any examples or tests in your repo.
It looks to me like some of the schema definition stuff might not be complete? I'd be happy to work on this, but wanted to make sure I wasn't just mis-interpreting what's here already.
Thanks in advance!

@jaredonline thanks for your interest. Yes there are some incomplete portions. I based this work off of an early draft and there's been a little drift. I'm very open to contributions in getting this more in line with the current specification.
There was enough flux (heh) around type system details I was holding off on a complete implementation.
Even if your contribution is just in the form of a failing test that's a fantastic start!

Hi @tmc
Glad to see the updated in the project and your comment https://github.com/chentsulin/awesome-graphql/pull/20#issuecomment-153507475 on maintainig this project. I like the clean and idiomatic API provide by this project and wonder the spec compliance.  I see the last commit was "Adopt naming from October2015 specification", but was it just naming or it is spec compliant.
It would be great to see an example of proper way of defining the schema. @tallstreet has a fork of this project where he switched the parser few times https://github.com/tallstreet/graphql . The API is same as this project and he has an example of a backend which supports https://github.com/facebook/relay/tree/master/examples/todo client.
To run that sample,

clone https://github.com/facebook/relay/tree/master/examples/todo
npm install all deps
comment out the following in server.js

// Expose a GraphQL endpoint
// var graphQLServer = express();
// graphQLServer.use('/', graphQLHTTP({schema, pretty: true}));
// graphQLServer.listen(GRAPHQL_PORT, () => console.log(
//   `GraphQL Server is now running on http://localhost:${GRAPHQL_PORT}`
// ));

his example runs on the same port (8080). I could make it work few weeks back, but now the parser dependencies are changes and gives error. Can you fork it to make it work with tmc/graphql. Which would be a great example.
Again the example is here https://github.com/tallstreet/todographqlgo
Thank you,
bsr


Fix DropwizardRequestMetrics leak

Motivation:
Commit c2dad254f19f5b3eccec987efde850b34eac9e32 introduced a regression
where a new DropwizardRequestMetrics instance is created for every
request, because it used RequestLog as a key of the Map that holds
DropwizardRequestMetrics. As a result, the Map will grow infinitely.
Modifications:

Use String as a key again

Result:
Leak is gone.

/cc @anuraaga


Can't really disable favicon rendering on external links in some specific case

Info:

OS: MacOS Monterey 12.6
Logseq ver: 0.8.8
Plugin ver: 1.5.1
[x] ⚠ Do i have issue with DISABLED my custom.css?
[ ] ⚠ Do i have issue with DISABLED other plugins?

Priority: LOW, because there is work around (see it at the bottom)
Description:
Can't really disable favicon rendering on external links, when:

icon rendering on internal links remain turned on (seems like it is important)
Logseq Plugin Automatic URL title (→) is enabled

Note 1: When Logseq Plugin Automatic URL title is disabled — everything works fine.
Note 2: Logseq Plugin Automatic URL title renders the favicon too and it's way of rendering more sharpy (I prefer it — see at the left):

Probably the reason is retina display on my mac. Here is the difference in favicons HTML:

So we can change the size for retina displays. But this is not the way of solving issue, because I need another functionality of Logseq Plugin Automatic URL title too: fetching header titles. So disabling this plugin is not an option.
To Reproduce:

Install and enable Logseq Plugin Automatic URL title
Install and enable Awesome Links
Set the settings for Awesome Links like this:

Reload the page (⌘+R )
Rendering of icons still turned on:

Expected behavior:
Properly working of all Awesome Links plugin settings with enabled Logseq Plugin Automatic URL title.
Workaround for now:
custom.css:
img.awLinks-link-icon {
    display: none !important;
}

Plugin ver: 1.5.1

latest is 1.5.3, favicons was fixed yesterday https://github.com/yoyurec/logseq-awesome-links/issues/3

Nice! Thank you! I've check the version 1.5.4 — both fixed: size of favicons and setting
A big thank you for the cool plugins!


Are persons returned in the pose, face and hands objects in the same order?

I am running PyOpenPose to obtain pose, face and hand keypoints for one and the same image.
I can't seem to find any explanation as to whether the persons in the persons, faces and hands objects (see code below) are guaranteed to be in the same order. PyOpenPose is running three separate commands, so it would be helpful to know that the order of the persons is the same in the pose, hands and face objects.
op.detectPose(image_arr) poses = self.op.getKeypoints(op.KeypointType.POSE)[0] op.detectFace(image_arr) faces = op.getKeypoints(op.KeypointType.FACE)[0] op.detectHands(image_arr) hands = op.getKeypoints(op.KeypointType.HAND)[0]
It would be great if this could be documented somewhere.

Yes it is the same.
Note however that in different frames openpose might detect people with different order so you cannot rely on the idx of the person for tracking.


Add Client->timings() to send multiple values at once

instead of using multiple timing() calls, use a key-value map for timings()

Thanks for contribution @xosofox!

@xosofox is there any reason why this doesn't allow for multiple timers with the same key. I'm trying to bulk my StatsD metrics (https://github.com/statsd/statsd/blob/master/docs/metric_types.md#multi-metric-packets) but sometimes I have many instances of the same timer. I ask because I'm not a StatsD expert and I might be missing something.

@xosofox is there any reason why this doesn't allow for multiple timers
There is no 'real' reason besides the fact that I didn't see that use case (in my project).
So I just used a simple array with key=>value. The function could of course be extend to check if the values of the passed array are key=>value pairs again.

You might want to check the code and give it a shot in another Pull Request


Use hook rather than preexec.

This allows zsh-title to cooperate with other plugins that want to use preexec.

Thanks again! :)


Include NIP 38 kind in filter list (30315 user statuses)

Include NIP 38 kind in filter list (30315 user statuses) or allow to customize event kind in the filter

Hey,
you can customize it by providing integer value directly via JSON Edit.


User.avatar not resizable

Expected behavior
I'd like to resize the picture of the avatar via Timber utilities
Actual behavior
The image doesn't accept size parameters
Steps to reproduce behavior

{{ post.author.avatar }}
{{ post.author.avatar | resize(400, 400)} }}
The picture is not really resized, it's stretched

What version of WordPress, PHP and Timber are you using?
WP 4.5.2
Timber 1.0.1
How did you install Timber? (for example, from GitHub, Composer/Packagist, WP.org?)
Natively via the plugin installer inside wordpress from the plugin list

Good point, for now you can do {{ TimberImage(post.author.avatar).src|resize(400) }} - I will change this so it returns a TimberImage by default in 1.0.2


Transformations are call order variant

container.scale(x,y); shape.rotate(x); shape.translate(x,y) is not the same as container.scale(x,y); shape.rotate(x); container.translate(x,y);. We expect it to be.
In the current state, all the transformations for a parent have to be applied before any transformation calls for its children.

Might have something to do with the non-commutativity of Matrix multiplication, No?


create bundler scripts for streams

We could also do separate bundles for request, render, etc while we're at it so people can use the standalone pieces in jsfiddles etc

Gitter conversation about naming scheme: https://gitter.im/lhorie/mithril.js?at=58409ccc73abd79c55c0979b

Hmm, so currently to create an actual browser-consumable version of mithril requires using browser.js. I'm going to need to add a new browser-<x>.js file for every API being exposed if we want people to be able to use them in a browser.
Gonna create a new /browser folder for all those shims to live in, I suppose. So it'll end up looking sort of like this :
/mithril
├───/browser
│   ├───index.js
│   ├───request.js
│   └───stream.js
├───index.js
├───mithril.js
├───mithril.min.js
├───mithril-stream.js
├───mithril-request.js
├───request.js
└───stream.js

Where if you want everything you drop mithril.js in. If you just want streams you use mithril-stream.js in a non-bundled browser environment and stream.js in a CJS environment (browser + bundler or node).
Does that even make sense?

That's what browser.js does right now (only CJS + browser, but close enough).
I think the problem is that each individual piece can be used in 3 different ways.

Bundled into mithril.js
Required independently
Bundled into it's own standalone file for browsers

So if you try and meet all 3 of those requirements in a single file you end up with a lot of bulk for other use-cases. I don't see a clean way to tackle this just yet, need to stew on it some more.

I merged the PR that makes the stream module auto-aware of environment and attaches itself to window in browsers


Check OSM licence

Check OSM license for derivative work and add the required links / references / texts

Disclaimer: I'm not a lawyer, so I may be missing something.
Important links:

http://wiki.openstreetmap.org/wiki/Legal_FAQ
http://wiki.osmfoundation.org/wiki/Licence
https://opendatacommons.org/licenses/odbl/
https://opendatacommons.org/licenses/odbl/summary/
https://opendatacommons.org/licenses/odbl/1.0/

Key points:

[From the FAQ] If I have data derived from OSM data, do I have to distribute it? No, but if you do the derivative database must be available under the same licence as the OSM data (the Open Database License).
[From the FAQ] I would like to use OpenStreetMap maps. How should I credit you? "© OpenStreetMap contributors" / "Map data © OpenStreetMap contributors".
[From the FAQ] If I make something with OSM data, do I now have to apply your license to my whole work? No, only the data is covered by the license. However, if you make a database which includes OSM data and any additional information, then this would be classed as a "derivative database" and should be made available under the Open Database License.

Main takeaways:

Our code licence is not affected by OSM licence.
I think the files we generate when using OSM as a source are a derivative work.
We are not forced to make public the files we generate from OSM data for internal use.

Having said that, I would try to stay in the safe side and prepare the files we generate to be openly distributed, so I would suggest to add the following when using OSM data:

"Map data from © OpenStreetMap contributors".
The ODBL licence header (https://opendatacommons.org/licenses/odbl/)


nvim_add_user_command

Hi there. Just installed nnn.nvim and get error:
packer.nvim: Error running config for nnn.nvim: ...l/share/nvim/site/pack/packer/start/nnn.nvim/lua/nnn.lua:528: attempt to call field 'nvim_add_user_command' (a nil value)

Looks like your plugin using nvim_add_user_command from Neovim 0.7.0+ which is not even released (0.6.1 current latest). With all due respect, do you think it's sane?

I indeed thought "sane" 0.6 users would pin the latest commit as the plugin has been stable for months.
Reverted the change and made a 0.7 branch instead to avoid further issues...


[pokeclk] compressed the image and some cleanup

compressed the color image for light mode
fixed the readme with better words and a screenshot
cleaned up code style

Thanks! Wow, compression made a big difference!

Thank you so much for the suggestion to do it! I'm still new at this programming stuff


Additional Functionality

I'm creating this issue as a placeholder while I work on adding "hab config", "hab bldr job", "hab file", "hab origin", and "hab bldr channel" commands to the plugin.
The goal of this is to prevent double work!

It's a list I'm still fleshing out. A lot of the commands from hab are redundant, but I'd like to add anything that has value

Agreed, I think we need to consider what value each piece brings. The scariest thing is going to heavy in features without use cases IMO.

I agree, I think these are the last few commands that could add value to the plugin:
https://www.habitat.sh/docs/habitat-cli/#hab-config-apply
https://www.habitat.sh/docs/habitat-cli/#hab-config-show
https://www.habitat.sh/docs/habitat-cli/#hab-file-upload
https://www.habitat.sh/docs/habitat-cli/#hab-origin-key download/upload
https://www.habitat.sh/docs/habitat-cli/#hab-bldr-channel

hab config apply and hab file upload with --remote-sup would for sure be useful!
hab origin key commands could be good as well, I see that as more habitat/jenkins configuration.
hab bldr channel is a good one as well, less of something I can see fitting into a pipeline, more as a pipeline utility.
hab config show would be less useful imo, as it only shows the default configuration; I've never understood the use case for it in general.

I saw "origin key" as giving the user the ability to recover from failures brought on due to key errors.
"hab config show" was something I thought about use for in a scripted pipeline, i.e
hab_config = hab config show myorigin/mypkg/version/timestamp if "the-field-I-care-about" not in hab_config {      hab config apply this_other_config }

looks like "hab config show" is being handled in the plugin with "hab pkg config"; we'll leave that one out


Add build infra for proto to Go structs

This adds infra required to generate Go structs from the IstioContolPlane proto.

Created https://github.com/istio/istio/issues/14960 to track the deepcopy issue.

Other than my comment above, it lgtm, I'd go ahead and merge this first because most of the other PRs are depending on these generated structs.

Probably the way to go is to have a docker based build as we do in istio/api. I'm part way to having that working but it needs a little more work. Have created https://github.com/istio/istio/issues/15017 to track it. Anyway, it's good enough to use the checked in generated go structs for now changes will not be so large for a while.
If you could approve, mergify will merge - thanks.


Using ExtensionIRNode for Inject directive

Issue - #5844
Related PR - https://github.com/aspnet/Razor/pull/1042
@NTaylorMullen @rynowak

🆙 📅

This is beautiful


Fix wifi jsonrpc signal type and size

I get incorrect type Core::JSON::DecUInt32 Signal; in https://github.com/rdkcentral/Thunder/tree/f53eec83fe4d09daff30f2bdbfa908e2d8dfa4f6
wifi signal will display incorrectly
Add these for safety

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


Can't get Docker WSL2 + Windows + Dev Environment setup on new machine

I keep getting permission issues on Windows with Docker WSL2. This is my first time setting up the WSL2 version of Docker for the dev environment.
website_1  | ******************************************
website_1  | Traceback (most recent call last):
website_1  |   File "manage.py", line 10, in <module>
website_1  |     execute_from_command_line(sys.argv)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
website_1  |     utility.execute()
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 375, in execute
website_1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 316, in run_from_argv
website_1  |     self.execute(*args, **cmd_options)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 353, in execute
website_1  |     output = self.handle(*args, **options)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 188, in handle
website_1  |     collected = self.collect()
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 114, in collect
website_1  |     handler(path, prefixed_path, storage)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 353, in copy_file
website_1  |     self.storage.save(prefixed_path, source_file)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/files/storage.py", line 49, in save
website_1  |     return self._save(name, content)
website_1  |   File "/usr/local/lib/python3.7/site-packages/django/core/files/storage.py", line 236, in _save
website_1  |     os.makedirs(directory)
website_1  |   File "/usr/local/lib/python3.7/os.py", line 213, in makedirs
website_1  |     makedirs(head, exist_ok=exist_ok)
website_1  |   File "/usr/local/lib/python3.7/os.py", line 213, in makedirs
website_1  |     makedirs(head, exist_ok=exist_ok)
website_1  |   File "/usr/local/lib/python3.7/os.py", line 223, in makedirs
website_1  |     mkdir(name, mode)
website_1  | PermissionError: [Errno 13] Permission denied: '/code/static'
website_1  | ****************** STEP 2a: docker-entrypoint.sh ************************

After many days of frustration, someone on Stack Overflow helped me figure it out. In linux (not the image or Docker container), I need to pre-create the static and website/migrations dirs.
See: https://stackoverflow.com/a/69587842/388117


Add inlay hints suport to new LSP Host

Is your feature request related to a problem? Please describe.
New LSP Host has almost no support for inlay hints except maybe hint for implicit (var) variables type.
Describe the solution you would like
Add more inlay hints support (for example hints for method params) and the corresponding settings to be added to new LSP Host
Applicable Scenarios
--
Describe alternatives you've considered
Omnisharp had support for much more types of inlay hints than the new LSP Host
Additional context
--

Oh. sorry, I didn't noticed that after switching to preview version of extension, all csharp.* and dotnet.* settings moved to the end of settings.json and i cannot find them in autocomplete