Move initial non-services to lib directory

Following on from actions agreed in https://github.com/alphagov/content-publisher/issues/1256#issuecomment-517197393 this moves classes and tests from app/services to the lib directory that don't require any renaming or refactoring.
This also sets up eager loading for code in the lib directory

So it turns out that brakeman doesn't scan any of the custom directories in app by default, as I learnt when I moved code from there to lib. This now sets up scanning on all our app directories to avoid these surprises - the alternative consistent approach would be to disable lib so it's ignored like the rest of our app directories, but since we have quite a lot of code in app/interactors it feels like we should scan more directories.
As part of this I cleared out our obsolete brakeman ignores and discovered a new one on the access limit SQL. I saw an opportunity here to use some code I wrote the other day for this. This makes the EditionFilter more declarative and consistent with the other ActiveRecord methods used in this class.

This looks good 👍. One minor inconsistency: I think we agreed the publishing_api_payload could be (refactored into) a supporting service. Can we record the future intention for this somewhere, or leave it where it is?

Sure, I've removed this now.


Secret used in the workload is not reflected in the API / UI

Rancher versions:
rancher/server:2.0 build with master(Feb 23)
Steps to Reproduce:

Create a secret in UI in the default project
Create a workload by using the secret created in step 1
The secret used in the workload is not reflected in the API and not displayed in the UI too

Nothing about using secrets works yet.  This is vestigial UI from preview1.

Secrets have been added to the environment variables accordion as a part of the environment from ui.

It should be part of the environment variable section, just like it is on create.  There shouldn't be a secrets section of details anymore, they're either in env or volumes.

@soumyalj - I can't seem to get the workloads to create.  Maybe something I'm doing wrong.  Can you check this?


[IxSelect] Support for Angular Forms

Suggestion / feature request
The IxSelectComponent on Angular should work natively with either with Template Driven or Reactive Forms.
As an example for Template Driven form:
<ix-select [(ngModel)]="value" name="select-control">
  <ix-select-option value="1" label="Option 1"/>
  <ix-select-option value="2" label="Option 2"/>
</ix-select>

and Reactive form:
<ix-select [formControl]="form">
  <ix-select-option value="1" label="Option 1"/>
  <ix-select-option value="2" label="Option 2"/>
</ix-select>

For this an implementation of a directive using the ControlValueAccessor interface should be created.
Happy to create PR for this.

Shoulds good. But keep in mind we are using the stencil-out-targets, this provides the posibility to generate valueAccessors out of the webcomponents https://stenciljs.com/docs/angular#valueaccessorconfigs


NavigationBar barTintColor not always working

Hi
I am trying to set #212121 as the barTintColor of the NavigationBar but it isn't working properly as a lighter color is set.
Look at the screenshot below: the StatusBar color and SearchBar colors are #212121 but the NavigationBar's isn't (which actually is #323232).

@jahirfiquitiva
Upgrade to the latest version 5.0.3.
You'll get an access for navigationBar -> menu.navigationBar
Note: To modify navigationBar you should use it in willAppear.
menu.onWillAppear = {
 menu.navigationBar =
}

Hey @rushisangani
I just implemented this and the navigationBar is now themed properly, but for some reason, a weird margin/space appears between the navigationBar and the searchBar

Could you please share your code?

Here's the code to change the color:
selectionMenu.onWillAppear = {
	selectionMenu.navigationBar?.isTranslucent = false
	selectionMenu.navigationBar?.backgroundColor = Theme.primaryColor()
	selectionMenu.navigationBar?.barTintColor = Theme.primaryColor()
}

The issue only happens when adding selectionMenu.navigationBar?.isTranslucent = false but it is required, or the navigationBar won't really change the color and the initial issue persists

Give me a few mins, I'll check and update.

Thank you so much! 😀 @rushisangani

This is only happening in style = Present and selectionMenu.navigationBar?.isTranslucent = false
It's weird..

@jahirfiquitiva
Navigation bar blank space issue solved. - Please upgrade to version 5.1.1


error when i change directory for model

Hi, i use your solution for generate a repository, but i have probleme, if i stock all my models in directory like app/models/User.php ...
when i try to make php artisan make:repository User
i have
[ReflectionEception]
Class User does not exist

thanks


Update README.md

change org to viam-modules

@bhaney - I think this should get merged. Do you want me to take care of it?


Update cover.py

Description:
Blinds, Rollingshutters and Awnings did not set their respective device_class attribute
Previously they would all appear as device_class "window"
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[x] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
[ ] New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
[ ] Untested files have been added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Hi @gibman,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!

CLA not signed.

Its signed now... Weird as this is the second time Ive completed the cla signing.. hmmmm.


Remove unnecessary DisplayVersion from GeoGebra.Classic version 6.0.853

Issue https://www.github.com/microsoft/winget-pkgs/issues/138520 describes scenarios where DisplayVersion should not be used. This PR removes unnecessary DisplayVersion from the manifest file.
Microsoft Reviewers: Open in CodeFlow

URL:
Invalid URI: The hostname could not be parsed.
(Automated message - build 897)


Update Composer dependencies (2020-06-28-00-13)

Visual regression test passed!
View the visual regression test report


Fixed error on registration page caused by wrong route name

Fixed error on registration page caused by wrong route name in resources/views/frontend/auth/register.blade.php

Thanks @wizston


Can i use FTP upload or download files？

Hi ! Thank you for reporting an issue, but we would like to remind you, we have a trouble shooting page in our wiki.
You may want to take a look on that page or find issues tagged "trouble shooting" :p

please provide the version of installed library and RN project.
a sample code snippet/repository is very helpful to spotting the problem.
issues which have been tagged as 'needs feedback', will be closed after 2 weeks if receive no feedbacks.

@qq597578205 , FTP protocol is not supported ATM, we'll consider if add this feature in the furture, thank you.

+1

+1


[Priority: Medium] Paid fee should be shown before sending

Right now the user chooses the fee priority, but it doesn't know in advance what fee it will pay. There should be an estimation shown before sending.

It's a UI challenge only. build-transaction returns the fee.

I propose having a "Calculate Fee" button, next to the "Send" button, which will call build-transaction. Then shows the fee for the user.

I should probably calculate the fee  automatically when
a) the form is valid (all fields are ok)
b) something changes
No need for an extra button then.

It's possible you could do some rough estimates, however fee estimation is not an easy job.
The main problem with fee estimation is that it's non-deterministic, in order to calculate the fee you need to be aware of the number of inputs, but in order to be aware of the number of inputs you need to know the fee.
Maybe you want to call build-transaction every time the user changes something in the UI. I suspect that's fast enough.

Yeah, that's what I was saying. Call build-transaction on each change of the form.

Closing, estimatefee has been added.


Custom SVG Overlay for each image in the Sequence Mode

As I was doing a research for the solution I found the following configuration options:
OpenSeadragon({
...
tileSources: [{
...
overlays: [{
id: 'example-overlay',
x: 0.33,
y: 0.75,
width: 0.2,
height: 0.25,
className: 'highlight'
}],
...
}]
...
});
However, what is the approach if I am using the SVG overlay? SVG overlay requires the definition to be outside of the "this.viewer = OpenSeadragon({.." Here (http://www.c-ev.com/osdragon/sequence1.html) is a simple test to illustrate what I am trying to do - I need to show the circle on one image and the rectangle on the another image.

https://github.com/openseadragon/openseadragon/issues/366
My problem exactly.
I ended up with binding creation/clearing of the overlays (svg overlays actually, achieved in pre-svg-supported era) called right after opening new tilesource.

Could you please share some demo or code of how you solved the case?

Interesting...could be a nice extension to https://github.com/openseadragon/svg-overlay. Under the hood, of course, it would be listening for Viewer page events.

I wish, but I can't make it public due to my university policy, but I've copied everything except the image server (IIP Server) itself.
http://wrong.technology/~boskar/histo-www/
Believe me or not, the only missing thing here is IIP, the code there works.

I looked at your code in the given link but couldn't quite understand what do I do with the overlay code below. Where do I put the svg code?

Take a look here:
 $("#overlays-list").load("overlays.php?szkielko_guid=" + szkielko_guid, function() {
	    loadDone = true;
	       populate_overlays();
	       });

and please investigate overlays.php responses. They contain right menu, and inline svg code (moved from there to the viewer by addOverlay).

Thank you! Will do. Where do I get "overlays.php"?

Here:
http://wrong.technology/~boskar/histo-www/overlays.php?szkielko_guid=3D4F8D3E020C45D3BCE2D2A6511A9468
If You want the source - it won't give you anything useful probably, as I store pixels in SQL and just pass them to the response adding the svg "template".

Thank you! I will look into this.. Do you do freelance work? May I email you?

Sure. I've just set my e-mail in github public.

Your profile doesn't display your e-mail..

My email is<EMAIL_ADDRESS>can you PM me?

Done.

http://wrong.technology/~boskar/histo-www/menu.php
It is now fully functional (OK, except thumbnails) demo.

@boskar Very cool!

Please notice that svg scales without any additional libraries nor svg transformations - viewBox has done the magic, somehow...
I intend to make a svg plugin that implements this approach to the problem, but at the moment I fail at javascript...

@boskar Sounds good...let me know if you have questions :)

@boskar What is the syntax for passing different svg to different image sequence? I will try to add it to this (http://www.c-ev.com/osdragon/sequence1.html) test of mine.


Added info to index.html

I took way too long to do this

https://github.com/TeamPropulsive/TeamPropulsive.github.io/pull/2/commits/0ce67290fb927cd5d3c3a07e393f810189f32953
I dont think we can accept a pr with modified code from another project

0ce6729
I dont think we can accept a pr with modified code from another project

I opened the wrong project


Second connection

Laravel Framework 9.5.1
PHP 8.0.8
laravel-admin 1.8.18
I have 2 connections: forge and domains-db.
I need use the second:
class Domain extends Model
{
protected $connection = 'domains-db';
}
This doesn't work for me.
What is the right way ?

solved
edit env and database php.
thanks.


[amqpcpp] Update to 4.3.23

Fixes #31177.

Update amqpcpp to 4.3.23.
Errors C2589 and C2059 occurred during testing usage, add fix-max_min_macros.patch to fix it. Reported upstream: AMQP-CPP/issues/498.E:\vcpkg01\installed\x64-windows\include\amqpcpp\message.h(85,42): error C2589: '(': illegal token on right side of '::'
E:\vcpkg01\installed\x64-windows\include\amqpcpp\message.h(85,42): error C2059: syntax error: ')'

[x] Changes comply with the maintainer guide
[x] SHA512s are updated for each updated download
[ ] The "supports" clause reflects platforms that may be fixed by this new version
[ ] Any fixed CI baseline entries are removed from that file.
[ ] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

No feature needs to be tested. The usage test passed (header files found):
amqpcpp provides CMake targets:

    # this is heuristically generated, and may not be correct
    find_package(amqpcpp CONFIG REQUIRED)
    target_link_libraries(main PRIVATE amqpcpp)

Unresponsive from upstream, so go ahead with this PR.


Fix service releases

Another refactor of Helm Release process
After good discussion with @pstranak-sw we came out with idea to change form create&push tag to create a PR with version change which fixes several problems:

local helm template/install for testing
cloud extensions pipeline
release without approval

Release for image:

git tag x.v.y,
git push origin x.z.y

Release for Helm

Open PR with change to Chart.yaml
Get it approved & merged
Approve  & merge PR created by GH Action

Includes changes from #716 as it does not require version change in test anymore.

Includes changes from https://github.com/solarwinds/swi-k8s-opentelemetry-collector/pull/716 as it does not require version change in test anymore.

If you don't want to include all changes from #716, you need specifically these changes:

https://github.com/solarwinds/swi-k8s-opentelemetry-collector/pull/716/files#diff-4cf5bf951bc791ef6263bacb0a2ffe4dfa843cf9dba4375eaf63a5172a6e00bfR5-R6
https://github.com/solarwinds/swi-k8s-opentelemetry-collector/pull/716/files#diff-4a10aaf03912dd0fde251cb4c821b7e58a505feda678169f7ba73e1d74877b94R25
https://github.com/solarwinds/swi-k8s-opentelemetry-collector/pull/716/files#diff-4a10aaf03912dd0fde251cb4c821b7e58a505feda678169f7ba73e1d74877b94R63


Please add a docker for converting to webm

it would be super awesome, if you can also provide a docker container to convert lottie files to webm with alpha chanels. :)

Thank you for the suggestion! The new converter lottie-to-webm is added in v1.1.0 release


Half-hearted update to 2018 edition

Disclaimer: This was done as I was bored waiting at the airport, so it might not be perfect/complete yet.
Since proc_macro was stabilized recently, I thought it would be a nice idea to make this work on stable.
Well, surprise, proc_macro_diagnostics is still an unstable feature. But hey, it works on the current nightly, so that's something, I guess?
Apart from the obvious, I also applied rustfmt and fixed the one thing Clippy complained about.

I've been meaning to update this (and the article) to Rust 2018 at some point in the near future. I'll take a closer look at this when I update the article. Thanks for your contribution!


prepare Dlsym system for dynamic symbols on Windows

This makes progress towards https://github.com/rust-lang/miri/issues/1059.

@bors r+

:pushpin: Commit 526fae75413392dcfd05256145c5503011d9c89a has been approved by RalfJung

:hourglass: Testing commit 526fae75413392dcfd05256145c5503011d9c89a with merge d8af0e5b8fd5b0ddd0af9c0be6d669db25b9a737...

:broken_heart: Test failed - status-appveyor

@bors r+

:pushpin: Commit 402535ef8639b4ba42ad4c1be7ff50542f8104d1 has been approved by RalfJung

:hourglass: Testing commit 402535ef8639b4ba42ad4c1be7ff50542f8104d1 with merge 101df34bd6574eaa3438c3d7cfc8a7e94ad6359f...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: RalfJung
Pushing 101df34bd6574eaa3438c3d7cfc8a7e94ad6359f to master...


learn.validate() blows up with Precision() and Recall() in metrics

If I have a trained model and I add new metrics to it as follows:
learn.metrics += [Precision(), Recall()]

and then run
learn.validate()

I get the following error:
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-26-631604a2e07b> in <module>
----> 1 learn.validate()

~/work/fastai_dev/dev/local/learner.py in validate(self, dl, cbs)
    228             self(['begin_fit', 'begin_epoch', 'begin_validate'])
    229             self.all_batches()
--> 230             self(['after_validate', 'after_epoch', 'after_fit'])
    231         return self.recorder.values[-1]
    232

~/work/fastai_dev/dev/local/learner.py in __call__(self, event_name)
    245     def __call__(self, event_name):
    246         "Call `event_name` (one or a list) for all callbacks"
--> 247         for e in L(event_name): self._call_one(e)
    248
    249     def _call_one(self, event_name):

~/work/fastai_dev/dev/local/learner.py in _call_one(self, event_name)
    249     def _call_one(self, event_name):
    250         assert hasattr(event, event_name)
--> 251         [cb(event_name) for cb in sort_by_run(self.cbs)]
    252
    253     @contextmanager

~/work/fastai_dev/dev/local/learner.py in <listcomp>(.0)
    249     def _call_one(self, event_name):
    250         assert hasattr(event, event_name)
--> 251         [cb(event_name) for cb in sort_by_run(self.cbs)]
    252
    253     @contextmanager

~/work/fastai_dev/dev/local/learner.py in __call__(self, event_name)
     21 class Callback():
     22     "Basic class handling tweaks of the training loop by changing a `Learner` in various events"
---> 23     def __call__(self, event_name): getattr(self, event_name, noop)()
     24     def __repr__(self): return self.__class__.__name__
     25     def __getattr__(self, k):

~/work/fastai_dev/dev/local/learner.py in after_validate(self)
    404     def after_train   (self): self.log += [_maybe_item(m.value) for m in self._train_mets]
    405     def begin_validate(self): [m.reset() for m in self._valid_mets]
--> 406     def after_validate(self): self.log += [_maybe_item(m.value) for m in self._valid_mets]
    407
    408     def after_cancel_train(self):    self.cancel_train = True

~/work/fastai_dev/dev/local/learner.py in <listcomp>(.0)
    404     def after_train   (self): self.log += [_maybe_item(m.value) for m in self._train_mets]
    405     def begin_validate(self): [m.reset() for m in self._valid_mets]
--> 406     def after_validate(self): self.log += [_maybe_item(m.value) for m in self._valid_mets]
    407
    408     def after_cancel_train(self):    self.cancel_train = True

~/work/fastai_dev/dev/local/learner.py in _maybe_item(t)
    366
    367 def _maybe_item(t):
--> 368     return t.item() if t.numel()==1 else t
    369
    370 class Recorder(Callback):

AttributeError: 'numpy.float64' object has no attribute 'numel'

I can 'fix' this using the following:

but this is obviously not the fix we want :slightly_smiling_face:

Fix is not that different though ;)


Improve test coverage of various things

Recommend to review commit-by-commit, as some things are completely unrelated.

I like this - better tests are always good! There's a few fixes to be made though.


Support values json schema validation

Helm lint supports validating the values.yaml file with a values.schema.json file, but rules_helm doesn't currently provide way to include this file in the helm chart. The result is that it's not validated in helm_lint_test.
See https://helm.sh/docs/topics/charts/#the-chart-file-structure.

The solution to this may be related to https://github.com/abrisco/rules_helm/issues/74.


Issues on the execution of main command

Hi there! Looks like is not able to execute:
I did a clean and a docker attempt:
hetzner-k3s create-cluster --config-file=./cluster/test_filled.yaml

________________________________________________________________________________
| ~/Documents/Code/ubloquity/terraform-k8s-hetzner-DigitalOcean-Federation/hetzner_03 @ jperez-mbp (jperez)
| => hetzner-k3s create-cluster --config-file=./cluster/test_filled.yaml

Firewall already exists, skipping.

Private network already exists, skipping.

Creating SSH key...
...SSH key created.

Traceback (most recent call last):
	10: from /usr/local/bin/hetzner-k3s:23:in `<main>'
	 9: from /usr/local/bin/hetzner-k3s:23:in `load'
	 8: from /Library/Ruby/Gems/2.6.0/gems/hetzner-k3s-0.4.2/exe/hetzner-k3s:4:in `<top (required)>'
	 7: from /Library/Ruby/Gems/2.6.0/gems/thor-1.1.0/lib/thor/base.rb:485:in `start'
	 6: from /Library/Ruby/Gems/2.6.0/gems/thor-1.1.0/lib/thor.rb:392:in `dispatch'
	 5: from /Library/Ruby/Gems/2.6.0/gems/thor-1.1.0/lib/thor/invocation.rb:127:in `invoke_command'
	 4: from /Library/Ruby/Gems/2.6.0/gems/thor-1.1.0/lib/thor/command.rb:27:in `run'
	 3: from /Library/Ruby/Gems/2.6.0/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cli.rb:28:in `create_cluster'
	 2: from /Library/Ruby/Gems/2.6.0/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:39:in `create'
	 1: from /Library/Ruby/Gems/2.6.0/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:105:in `create_resources'
/Library/Ruby/Gems/2.6.0/gems/hetzner-k3s-0.4.2/lib/hetzner/infra/ssh_key.rb:26:in `create': undefined method `[]' for nil:NilClass (NoMethodError)
________________________________________________________________________________
| ~/Documents/Code/ubloquity/terraform-k8s-hetzner-DigitalOcean-Federation/hetzner_03 @ jperez-mbp (jperez)

What I am doing is a prev envsub
envsubst < ./cluster/test.yaml | tee ./cluster/test_filled.yaml

Where I am redacting:
hetzner_token: 0lQ5BEtHPChange_me9YVUOSIiOj8Kt68LNM2bV
cluster_name: test
kubeconfig_path: "./kubeconfig"
k3s_version: v1.21.3+k3s1
public_ssh_key_path: "~/.ssh/id_rsa_no_pass.pub"
private_ssh_key_path: "~/.ssh/id_rsa_no_pass"
ssh_allowed_networks:
  - <IP_ADDRESS>/0
verify_host_key: false
location: hel1
schedule_workloads_on_masters: false
masters:
  instance_type: cpx21
  instance_count: 3
worker_node_pools:
- name: small
  instance_type: cpx21
  instance_count: 3
- name: big
  instance_type: cpx31
  instance_count: 2

Any ideas? Cheers!

Just in case I just passed a lint
| => yamllint ./cluster/test_filled.yaml

Thanks for the answer @vitobotta but mmmm already tried:
| => docker run --rm -it -v ${PWD}/cluster:/cluster -v ${HOME}/.ssh:/tmp/.ssh vitobotta/hetzner-k3s:v0.4.2 create-cluster --config-file /cluster/test_filled.yaml
Enter passphrase for /root/.ssh/github_com_rsa:
Enter passphrase for /root/.ssh/gitlab_com_rsa:
Enter passphrase for /root/.ssh/google_compute_engine:
Enter passphrase for /root/.ssh/id_rsa:
Enter passphrase for /root/.ssh/ssh_rsa:

Firewall already exists, skipping.

Private network already exists, skipping.

SSH key already exists, skipping.

API load balancer already exists, skipping.

Server test-cpx21-master3 already exists, skipping.

Creating server test-cpx31-pool-big-worker1...
Server test-cpx21-master2 already exists, skipping.

Server test-cpx31-pool-big-worker2 already exists, skipping.

Creating server test-cpx21-pool-small-worker2...
Creating server test-cpx21-pool-small-worker1...
...server test-cpx31-pool-big-worker1 created.

Server test-cpx21-pool-small-worker3 already exists, skipping.

Server test-cpx21-master1 already exists, skipping.

...server test-cpx21-pool-small-worker1 created.

...server test-cpx21-pool-small-worker2 created.

Waiting for server test-cpx21-master3 to be up...
Waiting for server test-cpx31-pool-big-worker2 to be up...
#<Thread:0x00007fb4e255df18 /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
	7: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154:in `block (2 levels) in create_resources'
	6: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:441:in `wait_for_ssh'
	5: from /usr/local/lib/ruby/2.7.0/timeout.rb:110:in `timeout'
	4: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	3: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	2: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `block in catch'
	1: from /usr/local/lib/ruby/2.7.0/timeout.rb:95:in `block in timeout'
/usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:442:in `block in wait_for_ssh': undefined method `[]' for nil:NilClass (NoMethodError)
#<Thread:0x00007fb4e255da68 /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
	7: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154:in `block (2 levels) in create_resources'
	6: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:441:in `wait_for_ssh'
	5: from /usr/local/lib/ruby/2.7.0/timeout.rb:110:in `timeout'
	4: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	3: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	2: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `block in catch'
	1: from /usr/local/lib/ruby/2.7.0/timeout.rb:95:in `block in timeout'
/usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:442:in `block in wait_for_ssh': undefined method `[]' for nil:NilClass (NoMethodError)
Waiting for server test-cpx21-master2 to be up...
#<Thread:0x00007fb4e255d928 /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
	7: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154:in `block (2 levels) in create_resources'
	6: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:441:in `wait_for_ssh'
	5: from /usr/local/lib/ruby/2.7.0/timeout.rb:110:in `timeout'
	4: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	3: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	2: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `block in catch'
	1: from /usr/local/lib/ruby/2.7.0/timeout.rb:95:in `block in timeout'
/usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:442:in `block in wait_for_ssh': undefined method `[]' for nil:NilClass (NoMethodError)
Waiting for server test-cpx21-master1 to be up...
Waiting for server test-cpx21-pool-small-worker3 to be up...
...server test-cpx21-master1 is now up.
...server test-cpx31-pool-big-worker2 is now up.
...server test-cpx21-master2 is now up.
...server test-cpx21-pool-small-worker3 is now up.
...server test-cpx21-master3 is now up.
Traceback (most recent call last):
	7: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:154:in `block (2 levels) in create_resources'
	6: from /usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:441:in `wait_for_ssh'
	5: from /usr/local/lib/ruby/2.7.0/timeout.rb:110:in `timeout'
	4: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	3: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `catch'
	2: from /usr/local/lib/ruby/2.7.0/timeout.rb:33:in `block in catch'
	1: from /usr/local/lib/ruby/2.7.0/timeout.rb:95:in `block in timeout'
/usr/local/bundle/gems/hetzner-k3s-0.4.2/lib/hetzner/k3s/cluster.rb:442:in `block in wait_for_ssh': undefined method `[]' for nil:NilClass (NoMethodError)
________________________________________________________________________________

Hi, have you tried leaving only the ssh key you want to use in the /.ssh directory? I am wondering if there is a problem when there are multiple keys.

@vitobotta Thanks for the fast response! Yes, I created a dedicated directory for SSH keys (id_rsa, id_rsa.pub) and I tried to mount this way from ${PWD}:
docker run --rm -it -v ${PWD}:/cluster -v ${PWD}/ssh:/tmp/.ssh vitobotta/hetzner-k3s:v0.4.2 delete-cluster --config-file /cluster/hetzner-k3s.yaml

I found the problem and I am going to release a fix soon.

Just pushed 0.4.3. Can you give it a try?

I'm building the Docker image, it should be available in a few mins if you want to try with Docker.

The Docker image is now pushed. Please give it a try and let me know :)

I can't see the new tag :(
https://hub.docker.com/r/vitobotta/hetzner-k3s/tags

Oops I pushed 0.4.2 by mistake :p Try now :)

@vitobotta Thank you! It works! 💯  🎉

Awesome, thanks for confirming 👍


Adding bleve to the admin console

Summary
Adding bleve to the admin console
Ticket Link
MM-23144

@mgdelacroix Per our discussion, this can actually be moved to the Experimental section at the bottom of the LHS.

@jespino
Error trying doing the automated Cherry picking. Please do this manually
+++ Updating remotes...
Fetching upstream
Fetching origin
+++ Updating remotes done...
+++ Creating local branch automated-cherry-pick-of-#5120-upstream-release-5.24-1589930871
Branch 'automated-cherry-pick-of-#5120-upstream-release-5.24-1589930871' set up to track remote branch 'release-5.24' from 'upstream'.
+++ Downloading patch to /tmp/5120.patch (in case you need to do this again)

+++ About to attempt cherry pick of PR. To reattempt:
  $ git am -3 /tmp/5120.patch

Applying: Adding bleve to the admin console
Using index info to reconstruct a base tree...
M	components/admin_console/admin_definition.jsx
M	utils/constants.jsx
Falling back to patching base and 3-way merge...
Auto-merging utils/constants.jsx
Auto-merging components/admin_console/admin_definition.jsx
Applying: Adding snapshot
Applying: Moving the action from mattermost-redux into the webapp
Applying: Pointing mattermost-redux to the correct branch commit
Using index info to reconstruct a base tree...
M	package-lock.json
M	package.json
Falling back to patching base and 3-way merge...
Auto-merging package.json
CONFLICT (content): Merge conflict in package.json
Auto-merging package-lock.json
CONFLICT (content): Merge conflict in package-lock.json
Patch failed at 0004 Pointing mattermost-redux to the correct branch commit
Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

+++ Conflicts detected:

UU package-lock.json
UU package.json

+++ Aborting in-progress git am.

+++ Returning you to the master branch and cleaning up.


Add a check for schema compatibility to cloud-sql-proxy

When switching Dataproc versions, metastore schema may become incompatible. When this happens, we can use schematool to report a concise error and fail.
$ /usr/lib/hive/bin/schematool -dbType mysql -info
Hive distribution version:       2.3.0
Metastore schema version:        2.1.0
org.apache.hadoop.hive.metastore.HiveMetaException: Metastore schema version is not compatible. Hive Version: 2.3.0, Database Schema Version: 2.1.0
*** schemaTool failed ***
User can upgrade their schema by running:
$ /usr/lib/hive/bin/schematool -dbType mysql -upgradeSchemaFrom 2.1.0
I am not sure if automating upgrade is a welcome change. Could we potentially upgrade schema in a way that it could no longer be used with previous Dataproc versions?

Done


ciao-cli: Add support for regexp matching

Add support for generic regexp matching. This allows the use of
textual regular expressions as supported by the go regexp package.
This makes some of the other functions redundant, but they are
retained for simplicity.
Signed-off-by: Manohar Castelino<EMAIL_ADDRESS>

Coverage decreased (-0.009%) to 66.865% when pulling f2d5ae609f808178784b3c458a1d0d22463f89a2 on mcastelino:template-subset into 0fd6579423d6957c8a0f34a51e26f0f95e1f3c2a on 01org:master.


chore: update log level to exception in processor's call to action-server

Updating the log level to exception to log the exception info when processor is calling the action server.
Reason: most production systems use a log level that's not debug, and this seems to be a fairly important exception to be able to dig through.
Status (please check what you already did):

[ ] added some tests for the functionality
[ ] updated the documentation
[ ] updated the changelog (please check changelog for instructions)
[ ] reformat files using black (please check Readme for instructions)

Thanks for submitting a pull request 🚀 @tttthomasssss will take a look at it as soon as possible ✨

@tttthomasssss 👋  let me know if there's something else I can add here, relatively simple fix that's been helping us debug issues that may not directly be evident from action-server logs, e.g. issues that may arise from some configurations/timeouts set on a service mesh level as part of Kubernetes-based deployment.


Feature request: Use regex in output name

At work, we don't have a set workstation and therefore often change monitors (flex office). All the monitors are of the same brand and model however they all have a different hexadecimal number in their names, for example, three similar monitors will have those names:

Goldstar Company Ltd LG Ultra HD 0x0000EDE5
Goldstar Company Ltd LG Ultra HD 0x0000E7C8
Goldstar Company Ltd LG Ultra HD 0x00007FB9

It is a burden to have to add all of them one by one. I'd like to be able to use a regex like so:
{
  output "Goldstar Company Ltd LG Ultra HD .*" enable scale 2.0
}

One solution would be to simply match output names with fnmatch(3). Another solution would be to allow users to match only a particular vendor, model or serial.
Related: https://github.com/swaywm/wlr-protocols/issues/68

Note, we already support * to match any output. Is that not enough for your use-case?

Unfortunately it is not enough for my use case because at home I have yet another monitor for which I need another conf.
Unless the most specific names takes precedence, in which case I could make it work.
Using fnmatch would indeed be a good solution.

The first matching configuration will be picked, so specifying the home configuration first should work.
The only thing that makes me hesitate about fnmatch is that your workplace has only one manufacturer/model of monitors "by chance". Maybe your workplace will buy a few monitors of the same brand as your home setup and this solution won't work anymore.

I think fnmatch is an interesting approach.

The only thing that makes me hesitate about fnmatch is that your workplace has only one manufacturer/model of monitors "by chance". Maybe your workplace will buy a few monitors of the same brand as your home setup and this solution won't work anymore.

Indeed it will not work every time. However, that leaves us the option to "group" profiles and do interesting things (until swaywm/wlr-protocols#68).
I will open a PR in this direction. I let you the final decision.

The first matching configuration will be picked, so specifying the home configuration first should work. It would be a good idea to document this behavior.

In that case it's good for my case indeed! However, I still think it would be a nice feature to have.
If two types of monitors existed at work, requiring different configuration each, then I would indeed need shell globbing.

I just had the use case at work where we have a second kind of monitor (with only slightly changing names), needing another configuration.
With globbing I can solve this problem with one block while without, I need a new block for each monitor.

Any update on this? A PR is ready to be merged, it seems to me that there are no obvious drawback for the flexibility it gives.


Less real estate for line number column

This is a nitpick so feel free to close.
I think the line number column on the left should get less real estate on the screen.  That column seems to be sized to fit a two digit number when we only have single digit line numbers and it gets resized to fit a 3 digit number when we have 2 digit line numbers.

This starts eating up valuable real estate when working with multiple panels on a laptop.

The additional column is for breakpoints, warning  and TODO markers.

I do not think we are really doing any fix here as @Nodd points out this extra space serves an specific purpose.
What we could do is add an option in the preferences to show/hide the breakpoints section of the lines numbers, if the user chooses to. Right now there is only an option for Show/hide line numbers

Yeah, we could add an option for the magin.

Right, sorry, I totally forgot about those...

@ccordoba12 should we add an option for this?

Nop, I don't think so. This is the first request of this kind I've seen in all my time with Spyder, so we'll be essentially adding an option for one person :-)

:+1: