Fix firefox tests

This is a PR for me to debug the firefox test failures. I cannot replicate these failures locally.

@larskarlitski Thanks for the review but I should have marked this as a draft PR. I have been unable to replicate this test failure locally and was hoping making some changes would fix it on the CI.
@marusak @henrywang If you have any free time I would really appreciate some advice on either how to replicate this locally or how to fix this issue. I am most confused that the aws step fails but the azure step passes. They are nearly identical tests.

Hmm, it says that .pf-c-form__label is not visible. It is at least present on the page.
My wild guess would be that you are in a wrong frame.
I can quickly look into the test. If you would need help how to run firefox tests locally I am happy to help.

@marusak Thanks for looking at this. Sorry I had pushed an attempted fix that breaks the test in a different way. This is the error I am seeing consistently in the CI but I am unable to replicate locally:
  File "test/verify/check-image", line 141, in testAWSStep
    b.key_press("never")
  File "/home/user/cockpit-project/bots/make-checkout-workdir/test/common/testlib.py", line 262, in key_press
    self.key_press_firefox(keys, modifiers, use_ord)
  File "/home/user/cockpit-project/bots/make-checkout-workdir/test/common/testlib.py", line 301, in key_press_firefox
    self.cdp.invoke("Input.dispatchKeyEvent", **args)
  File "/home/user/cockpit-project/bots/make-checkout-workdir/test/common/cdp.py", line 109, in invoke
    res = self.command(cmd)
  File "/home/user/cockpit-project/bots/make-checkout-workdir/test/common/cdp.py", line 136, in command
    raise RuntimeError(res["error"])

I believe I am able to test against firefox locally with the env variable BROWSER=firefox. But, I am still unable to replicate this error. What version of firefox does cockpit ci test against?

This is the error I am seeing consistently in the CI but I am unable to replicate locally:

right. Do you have the full log file? I think there should be some more info somewhere around.

I believe I am able to test against firefox locally with the env variable BROWSER=firefox.

yes

But, I am still unable to replicate this error. What version of firefox does cockpit ci test against?

You need to use firefox nightly though. And since this is nightly, it is nightly from the day, that the current task container was built. That is of course hard to get, but I think that any new f-nightly should do.

ok, I can reproduce this locally:
Traceback (most recent call last):
  File "/home/mmarusak/cockpit/cockpit-composer/./test/verify/check-image", line 141, in testAWSStep
    b.key_press("never")
  File "/home/mmarusak/cockpit/cockpit-composer/test/common/testlib.py", line 262, in key_press
    self.key_press_firefox(keys, modifiers, use_ord)
  File "/home/mmarusak/cockpit/cockpit-composer/test/common/testlib.py", line 301, in key_press_firefox
    self.cdp.invoke("Input.dispatchKeyEvent", **args)
  File "/home/mmarusak/cockpit/cockpit-composer/test/common/cdp.py", line 109, in invoke
    res = self.command(cmd)
  File "/home/mmarusak/cockpit/cockpit-composer/test/common/cdp.py", line 136, in command
    raise RuntimeError(res["error"])
RuntimeError: {"className":"Error","message":"","stacktrace":{},"entry":{"source":"javascript","level":"error","text":"Error: No user input on targetField","timestamp":1604063203676,"url":"resource://gre/modules/LoginManagerChild.jsm","lineNumber":1762,"stackTrace":{}}}

# Result testAWSStep (__main__.TestImage) failed
# 1 TEST FAILED [18s on vypocetnik]

I'll look around.

You need test/common with this commit: https://github.com/cockpit-project/cockpit/commit/e73fd0d54cff27f0e76444a52ae4f07892cfeed1#diff-091714d7dc9af86395448b948f93c35dabd81964ce1c3191f10b8f4ae938c656
It seems it is only in cockpit 231 tag, can you please try that?

(0)-(master 19ߡ ♥) $ giff
diff --git Makefile Makefile
index 4f47faa2..35a06881 100644
--- Makefile
+++ Makefile
@@ -154,7 +154,7 @@ machine: bots
 # checkout Cockpit's test API; this has no API stability guarantee, so check out a stable tag
 # this needs a recent adjustment for firefox 77 and working with network-enabled tests
 test/common:
-       git fetch --depth=1 https://github.com/cockpit-project/cockpit.git 229
+       git fetch --depth=1 https://github.com/cockpit-project/cockpit.git 231
        git checkout --force FETCH_HEAD -- test/common
        git reset test/common

diff --git test/verify/check-image test/verify/check-image
index bc7c7415..e2c25aae 100755
--- test/verify/check-image
+++ test/verify/check-image
@@ -11,7 +11,7 @@ import testlib

 @testlib.nondestructive
 @testlib.timeout(2400)
<EMAIL_ADDRESS><EMAIL_ADDRESS> class TestImage(composerlib.ComposerCase):

     def testImageStep(self):

and it passed :)

@marusak Thanks for the advice on this!!


PWA feature

it would be better if it was made into PWA.. :)

Feel free to make a PR, I agree it would be nice to have

I am closing this due to inactivity. Feel free to open a PR as Atomiks suggested. We recently moved to Gatsby so it might be an interesting task.


PR 1/2: Add versioned docs

Fix #504
Demo: https://till-m.github.io/BayesianOptimization/
This adds a version dropdown to our docs page. In the future, any new release will be added to this version dropdown automatically. Similarly, it will keep an updated version of the master docs.
I had to switch to sphinx-immaterial to get this to work. I’ve also cleaned up the docs a bit and made everything look nicer (imo).
How does it work?
There’s a workflow that runs on push (master), pull request and release. This workflow does a number of things.
1) build-docs-and-publish

It builds the docs (to use but also to check whether they actually build).
It determines the current state of the git ref and sets a target variable accordingly.

If running on master, set target to master
If running on a release, set target to release version
If running due to PR, set target to empty string

If the target is not empty string, it deploys the html folder of the built docs to gh-pages/<target>. It overwrites anything in <target> but ignores any other content in gh-pages

2) Update docs versions JSON
Only runs if the target is not empty

Clones the gh-pages branch and reads out the folders within (ignoring anything starting with .)
Reads out the folder names, determines which are referring to versions and which not.
Finds the maximum version
Generates a JSON object encoding the present folders/version and the maximum version
Pushes that JSON file to the gh-pages (ignoring any other files in the branch).

When you open the docs page, the landing page reads out the versions.json and redirects you to stable. If there is no version tagged stable, it will redirect to master.
On merging this
Requires a sister PR to be merged first, prepping the gh-pages branch: #510
I’ve purged the gh-pages branch and added docs for the v1.5.1 release. This way I could a) test the publish workflow, b) ensure that there is a stable version present, c) make persistent docs for v.1.5.1 and d) have a more functional demo.
Credit
Based on github.com/brechtm/rinohtype's workflow.

@phi-friday I will put your PRs on hold until this is sorted out, because any merge conflict on gh-pages would be horrible to resolve. My apologies.

@phi-friday I will put your PRs on hold until this is sorted out, because any merge conflict on gh-pages would be horrible to resolve. My apologies.

I'm sorry I can't help you with that, I'm not familiar with the documentation.
I looked at the link you showed as an example and it seems to be better in accessibility,
like dark mode support and clipboard support, so good luck with that.
PR checks are always welcome.

The code_docs looks like it needs some work.
The variable name and type are not separated by a space.

The code_docs looks like it needs some work. The variable name and type are not separated by a space.

When written like pbounds: dict, it looks fine,
but when written like pbounds : dict, the spaces disappear.

Technically adding a space before the colon is the correct version, as specififed in the numpydoc style guide.

I raised an issue about this at jbms/sphinx-immaterial#375

Fixed by adding an extension! Link (master only)!
I will backport this fix along with any other changes requested to the v1.5.1 commit once this PR is approved. Until then, I'm marking #510 as a draft.

Added a warning to the .maximize docstring to cover #513.

I backported all configuration changes to the v1.5.1 documentation (e.g. the numpydocs codestyle). From my side, this PR is good to go -- there's nothing I feel the need to change at this stage.
See the demo here.
@fmfn @bwheelz36 I would appreciate if you find a chance to review this. Given that the docs are in a sense the face of this project, I want to make sure no one is unhappy with the outcome.


Added RedshiftRetryOptions and enabled support for RetryOptions in Re…

Added RedshiftRetryOptions and enabled support for RetryOptions in RedshiftDestinationConfiguration for Firehose

Add blank lines around class to pass lint.

Thanks!


rule: no-cycle

Rule implementation for #941.
I need to do a final smoke test locally before merging, but wanted to open this up for implementation/docs/tests comments. Most notably, this first draft won't detect cycles introduced by deep requires. It will only lint require calls that import modules that import modules.

Coverage decreased (-60.7%) to 35.532% when pulling d81f48a2506182738409805f5272eff4d77c9348 on no-cycles into 1eac942a740b4986488973640746e021cb9f31d3 on master.


Move the management of the certificate verifier and the fizz::client::FizzClientContext object to FizzClientContext

This allows to remove various fizz specific parts of the API.

@deadalnix seems like there's some merge conflicts now :( can you rebase?


can it work for appletv

Before opening the issue, have you...?

[X] Searched for existing issues

Discussion
some tv's hdmi cec not surport to appletv ,but MonitorControl work for it on macos,can it possibly work for appletv?

The app won't have an AppleTV version I am afraid. HDMI-CEC support is not planned either (although there are some HDMI dongles that might have support for it).


Rename make reqs-freeze to make lock

I have been struggling with remembering the exact name for years and have frequently mistyped it. lock is both simpler and can be more easily applied to other ecosystems.

When running make fix in another repo, I learned that I forgot to rename the target everywhere it was referenced. It should be good now.


observability setup (monitoring and logging)

What is the expected enhancement?
A simple experience of accessing logs and metrics on executed jobs

@IceKhan13 Where do these information come out?   Grafana console, Ray console, cli output or a new web console?

System logs (ray cluster, gateway, repository, etc.) should be in grafana.
Ray job logs should be accessible to users.
job = serverless.run_program(...)
job.logs()

@IceKhan13 The OT tracing is instrumented and most of the logs go into Prometheus.  What is missing to close this issue?

yes, closing it!
Thank you!


Convert CCF to json-cdc in access adapter

Description
The sdks should not get the new CCF format yet. This also mirrors what happens in the access node.
This was causing downstream problems as other tools are not ready to handle CCF yet.

For contributor use:

[x] Targeted PR against master branch
[x] Linked to GitHub issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the GitHub PR explorer
[x] Added appropriate labels

Nice work!  Thanks for fixing this @janezpodhostnik!  :+1:


fix: reference consuming component's package.json, rather than relatively

When using postInstall.mjs as part of auro-library, the script attempts to reference a relative package.json:
const pjson = require('../package.json');

If a component such as auro-input is referencing postInatll.mjs from auro-library, the install fails since it cannot find a relative package.json inside auro-library node_modules:
Error: Cannot find module '../package.json'

The postInstall script should run from node_modules and reference the consuming component's package.json
Alaska Airlines Pull Request
Before Submitting this pull request:

Link all tickets in this repository related to this PR in the Development section
note: all pull requests require at least one linked ticket
If this PR is Ready For Review, all ticket's linked under Development must have their status changed to Ready For Review as well

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I have performed a self-review of my own update.
Summary by Sourcery
Bug Fixes:

Fix the postInstall script to correctly reference the consuming component's package.json instead of a relative path.

:tada: This PR is included in version 2.10.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Classical Explainer] Importing Classical Text Explainer throws an OS Error

I set up the environment according to the steps outlined in the Readme and got the following error when I tried to run the Classical Text Explainer. I'm on a mac, perhaps that's causing the issue?

hi @chhetri22 , are you using a mac?  it looks like you didn't install libomp for lightgbm according to their instructions.  Did you run "brew install libomp"?
https://lightgbm.readthedocs.io/en/latest/Installation-Guide.html#macos

Thanks @imatiach-msft that fixed the issue!
I installed the packages from requirements.txt which does include lightgbm but I didn't realize that libomp was a dependency.


Not able to print query parameters bundled in a rest service

When the path/query parameter is a string/int basic data type, @ApiParam does the job of printing on swagger ui perfectly. But when you bundle them together into a object, which in this instance is CatRequestParam  which contains query parameters for filteration like zip code. dont come up when you git swagger-ui.
I want to display the member variables within CatRequestParam like zipcode  to be displayed on swagger ui as operation's input paramters,  not the class CatRequestParam .
Is there any annotation like @ApiParam(class = CatRequestParam.class) that I can use?
@RequestMapping(value = "/cats", method = RequestMethod.GET, produces = "application/json")
@ResponseBody
@ApiOperation(value = "getCats", tags = "pets", notes = "gets all pet cats")
@ApiResponses(value = { @ApiResponse(code = 200, message = "A Basic getcat reponse", response = CatResponse.class), })
public CatResponse get(
@ApiParam(name = "shelterId", value = "Unique identifier for the shelter", required = true) @PathVariable(value = "shelterId") int shelterId,
CatRequestParam requestParams) {
//some logic to return the cats of a particular shelter according to filter queryparams in requestParams object
}
}

You got the wrong project. This looks like Springfox. Please open the issue there.


doc: doxygen: improve formatting for kconfig alias

\verbatim is not giving the right output as we need an inline literal. Switch to \c instead.
Fixes #81595.

@kartben I'm not able to see the API reference for this PR. The API reference link at https://builds.zephyrproject.io/zephyr/pr/81612/docs/index.html just points to https://builds.zephyrproject.io/latest/doxygen/html/index.html


gox: use buildGoModule

Description of changes

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

I can't make wrapper creation to work here for some reason:
gox> post-installation fixup
gox> shrinking RPATHs of ELF executables and libraries in /nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1
gox> shrinking /nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1/bin/gox
gox> patchelf: cannot find section '.dynamic'. The input file is most likely statically linked
gox> strip is /nix/store/61zfi5pmhb0d91422f186x26v7b52y5k-gcc-wrapper-11.3.0/bin/strip
gox> stripping (with command strip and flags -S) in /nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1/bin
gox> patching script interpreter paths in /nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1
gox> checking for references to /build/ in /nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1...
gox> patchelf: cannot find section '.dynamic'. The input file is most likely statically linked
error: output '/nix/store/kbnh1mafh1bf0gnybs6rhgbyx32nzvda-gox-1.0.1' is not allowed to refer to the following paths:
         /nix/store/4mz4navg6bwavsfkwzpphbsm284ns087-go-1.17.10

Any help would be appreciated.

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

1 package built:

gox


Softball QnA Knowledge

Re-adding softball PR: https://github.com/instructlab/taxonomy/pull/659

@instructlab-bot help

You can fix this PR by running git rebase -i upstream/main and setting the commands to:
pick 74510a5 Added Softball QandA
pick 2d1c014 Fixes and typos found by @mingxzhao
pick 8b7f6da Converted to public repository
drop 1966cef feat(synthetic data): Add script to generate synthetic data readme (#650)
pick 5e1c555 fixed linter problem.
pick 00158ec Added context to the qna for softball
pick b4c166f Added basic attriubition.txt
pick 62feaf5 Updated to the SPDX licence.
drop cc381ec Updating org name from instruct-lab to instructlab (#711)


New package: Azul.Zulu.23.JDK version 23.30.13 (<IP_ADDRESS>)

Created by 🥟 Dumplings.
Microsoft Reviewers: Open in CodeFlow

Verify:


[DR] Canonical PB formulation for GK neutrals

In order to run with dynamic neutrals in general geometries, we will implement @johnson452's canonical PB formulation. As the canonical PB capabilities are already in place, all that is needed is the Hamiltonian for the neutrals defined in terms of the metric coefficients:

Here we replace h^ij with the metric coefficients g^ij calculated from the mapping to field-line following coordinates. This will be carried out by the following:

Create an updater to calculate the Hamiltonian, converting between a Gauss-Lobatto nodal basis and the modal basis to ensure continuity.
Currently, the canonical PB kernels do not include the hybrid basis that is typically used in the gk app. Therefore, the gk_neut species app will be modified to use only the p=1 basis instead of the hybrid basis.

Work related to this DR is on the branch: https://github.com/ammarhakim/gkylzero/tree/gk-g0-app_neut_can_pb

After discussion on Monday Oct. 21, we concluded that the phase basis should be defined in the species app, as related to issue 498.
Several other changes will need to take place:

Gk neut species will also need its own conf grid since a 3D conf grid will need to be defined regardless of the GK species conf grid dimension.
A length will need to be set for the ignorable coordinates, i.e. y in an axisymmetric simulation. This length is arbitrary. Should it be set by the user or in the app?
Moments for the cross-species neutral collisions will need to be averaged along ignorable coordinates for the GK collisions and broadcast to higher dimensions for the neutral collisions when GK cdim < 3.


pull request for e2e test at 01/06/2017 17:56:12

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


Squashed old migrations prior to feb 2020

This PR simply consolidates all migrations prior to February 2020 into one initial schema in the migrate folder. There is no functionality change concerned, but the folder was getting very cluttered and I don't believe any purpose is served by keeping these migrations separate. Feel free to close if there is one.

I like what I see, but the tests need to be green. Seems to be something to do with directly inheriting from ActiveRecord:Migration according to the logs?

I like what I see, but the tests need to be green. Seems to be something to do with directly inheriting from ActiveRecord::Migration according to the logs?

Whoops, looks like squasher didn't add the rails version to the consolidated migration it generated. I added that and everything should be good to go. @scottpchow23


prevent removing battery from ninja suit

About the PR
so originally i think i had code to handle this but due to ??? i removed it
i found out about it in liltens video where he takes out battery to charge it in a recharger
this is not intended, but is an interesting mechanic since you can sacrafice all suit abilities if you for whatever reason cant find any power storage devices to drain from???
dont merge without discussion ig
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
:cl:

fix: Fixed being able to remove powercells from ninja suits.

This should just be a batterycomponent on the suit not a powercell then.

then upgrading would be something like this:

replace the battery component of suit with inserted one, dont know how you can replace components
delete the inserted battery, bad since it ignores everything else e.g. plasma inside battery currently goes boom but in this situation is just deleted or requires special handling which is jank

Weird change because in ss13 they let you do just this.

also another thing that this stops is a ninja running around maint stealing all the lantern/fire helmet batteries then swapping from backpack, go spam emp 20 times easy

so the reason i removed this was swapping a powercell would first remove then insert
so i will need to add a thing to itemslot saying it can't have eject verb


reset CoverageData._lock at fork

might help with #1310

Thanks, though this doesn't seem to help #1310. :(

Is this still valid?


add workflows

Codecov Report

Merging #1 into master will not change coverage by %.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master        #1   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            7         6    -1
  Lines           83        74    -9
  Branches         0         7    +7
=========================================
- Hits            83        74    -9

Impacted Files
Coverage Δ

switch_case/curry.py
100.00% <100.00%> (ø)

switch_case/infix.py
100.00% <100.00%> (ø)

switch_case/operator.py
100.00% <100.00%> (ø)

switch_case/switch.py
100.00% <100.00%> (ø)

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 7653a88...51b3f6a. Read the comment docs.


Examples section

Add signed examples in the Example section:

3 LFDs (issuer, verifier, holder)
Then you can include everything else!

this ones in progress.


Correction in video embedded in README

At the time instance 3:15, "iscsiadm -m session -P 3" needs to be run instead of "iscsiadm -m session -P 1" to get the dev path of the newly attached target.

The steps to manually mount the iscsi targets are no longer required with the latest release (0.3). The demo video (outdated) has been removed from the README.md


plex: <IP_ADDRESS>35 -> <IP_ADDRESS>12

Motivation for this change
New upstream version
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@ofborg eval

Made redundant by #93718


Kodi + hass lose "sync" after a while

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version):
.60.1
Python release (python3 --version):
3.5.3
Component/platform:
media_player/kodi
Description of problem:
After a while of hass being up, it seems to lose its connection to Kodi, and the media card won't be updated. For instance, currently hass thinks kodi is playing my screen saver but I am watching a movie:

If I restart hass, everything works as expected, for a bit. Then back to losing sync.
Expected:
Hass always knows what's going on with Kodi

Can confirm that my Kodi player state cards do not update when I start playing media on the respective device. As soon as I pause/change speed, the state is correctly updated and is also correct for any subsequent action. It is just the very first action (= start playing) that is not reflected.
Home Assistant release (hass --version):
.62.1
Python release (python3 --version):
3.5.3

Same issue here as well. Explained it here:
https://community.home-assistant.io/t/ha-stops-reporting-kodi-status-after-a-few-hours/32660
Have had the same issue for all new versions of HA as well. Kodi sync for a while and then stops.

I think we should all list where we have Kodi installed as I do not have this issue.  Kodi is installed on Windows 10.  I will need to check my Fire Sticks and Fire TV to see if they have the same issue.  I am on version 0.63.3 and python 3.6.3 using Ubuntu server installed in a venv.

I'm running LibreELEC on RPi3.
HA runs on another RPi3 (version 0.61.1) in a venv with Python 3.6.3. Have had the issue since 0.5X.X. HA was initially installed via the AiO installer.
I'm starting to wonder if there could be some a network issue? I'm using a Asus RT-87U with standard firmware.  I have not checked the logs in detail but I haven't seen anything obvious being blocked either.
Thoughts?

kodi on ubuntu 16.04
hass in ubuntu 16.04 vm
@Qxlkdr i doubt it would be a network/firewall issue. if that were the case, it wouldn't have fixed itself since http is way above establishing a connection

True, then it would be fixed if I restart the router and not HA.

kodi and hass on Raspi3/OSMC
Not sure if my issue is related ....
State card does not change unless the page is refreshed. Howver the state changes do reflect in Developer Tools > States section. Problem with frontend ?

If state changes are updating then any automation will work fine so that would be a front end issue but I have not seen those on my end.  What settings is everyone using?  I think we need the HTTP web server turned on, application control ( 2 settings) and also uPNP with control enabled as well.  At least that is what I have here and things work well for me. Also I am on Kodi 17.6

Hi
I have HTTP web server and the two other settings enabled as well. Port 8080 and kodi/kodi as username/password. The only thing I didn't had enabled was UPnP. Tried to enable it and upgraded LibreELEC to 8.2.3 (Kodi 17.6). It didn't start working right away. So I tried to restart HA. Now it's working again. Let's see for how long. I will get back with the result. Will most probably check tomorrow morning (Swedish time) to see if it's still in sync or not.
Br Qxlkdr

Nope
Just get out of sync again. I'm out of ideas.

Does your guys issue involve kodi showing up as "off" even though it's online?
I've been browsing though kodis source and can't really find anything obvious.
The only somewhat relevant change to this component has been the async register implementation but I doubt that's the issue.
So it's either an issue somewhere deeper in hass core (which I'm super not familiar with) or maybe netdisco?

I observe that Hass still has a TCP connection to Kodi, and that Kodi is sending what appears to be valid JSONRPC.  There is nothing relevant in the logs.  I hit this problem on upgrade to 0.65.2.
Here is one Play + Pause cycle captured from tcpdump:
{"jsonrpc":"2.0","method":"Player.OnPlay","params":{"data":{"item":{"id":9541,"type":"episode"},"player":{"playerid":1,"speed":1}},"sender":"xbmc"}}
{"jsonrpc":"2.0","method":"Player.OnPause","params":{"data":{"item":{"id":9541,"type":"episode"},"player":{"playerid":1,"speed":0}},"sender":"xbmc"}}

Similar issue here. Previously this would happen when raspberry pi was rebooted but today it happened even though there was no reboot. In this case my media_player entity gets stuck at idle and the easiest way to get it to reconnect is to send volume_up command to it, this way it actually reconnect after a few seconds - avoiding a restart of hass in its entirety.


Implement /metrics Endpoint and Serve Rendered Metrics

This task involves setting up a Rust web server to handle the /metrics endpoint, rendering metrics, and adding unit test cases for validation. We'll need to select and implement a suitable Rust web server library (e.g., hyper, actix) to achieve this.Write comprehensive unit test cases to validate the functionality

Closing since the parent issue has this marked completed


Screenshots are taken way too fast

Is there a way to way until the document complete loads to take the screenshot?  I'm getting screenshots that have some elements off just because some styles need to be applied first.  Adding the timeout option just sets a timeout between screenshot to screenshot but doesn't tell panthomjs to wait for the document to load completely before taking the picture.
I was trying to implement something similar to this but can't seem to make it work:
http://stackoverflow.com/questions/11340038/phantomjs-not-waiting-for-full-page-load

Nevermind. Issue was resolved.  Thanks! ;)

Hi @miroamarillo
Could you please explain what you did to resolve the issue ?
I am experiencing a similar issue, page screenshot looks "not fully loaded", some elements are strangely positioned
thanks


[WFLY-8228] Servlet server distribution fails to work with Elytron - NoClassDefFoundError

Issue: https://issues.jboss.org/browse/WFLY-8228

It is Ok, the WildFly PR is not required - once merged into ladybird we will handle the backport.
Also your commits have different SHAs - if we do have parallel PRs we need to ensure consistent SHAs are used.

OK. I will close this PR and let the ladybird take its place.


fix: Extract region from s3-.amazonaws.com

This PR fixes a behavior problem on our end when URLs
like s3-<region> are allowed we should use the region
name automatically otherwise calls like GetBucketLocation()
would fail by defaulting to us-east-1.
Fixes #785

@poornas @vadmeste any reviews?


Add method to Toolchain to help crater know what to uninstall.

This adds a method to Toolchain to help crater know whether or not to uninstall a toolchain (see https://github.com/rust-lang/crater/pull/584).

Released Rustwide 0.14.0.


Possibility to include partials outside of the theme

I'm currently running an older version that allows including files outside of the theme, but going over newer commits I see that it was patched as a security bug that stops you from going outside your theme to find files.
Usually I would have one theme that is common and than all my other themes would load partials from it
Which could include forms, content, or simple html elements that are exactly the same on ~20 websites.
Out of all partials, I only have one that has php in it via onStart().
To test it, you can create new empty theme and try to load a partial from a demo theme
{% partial '../../demo/partials/calcresult' %}

I have also tried using ~/themes/, etc
I do understand security concern, but would be good if there was a way to disable it for the whole project.
One of the "workaround" I had in mind is to create a relative symlink in each theme, but was curious if there a better way to do it.

If you are using almost the same elements for ~20 websites then maybe it's better to group them under your own plugin which could have it's own partials and components..., then maybe also the maintenance process could be easier for you, for example, you make changes in plugin file and then could deliver changes to all websites via plugin update. But that's just and idea...

@arvislacis is correct - the best form of re-usability is through plugins. We want to encourage safe theme editing and security so I feel it best that we don't have a way to disable the sandboxing of themes when there's readily available functionality better suited to your use case.

@bennothommo I asked for this issue to be opened, there were some ideas for this that I wanted to try but Sam was never interested in.

@LukeTowers ah fair enough. What were the ideas?

Mostly centred around using path resolving to ensures that the files existed in the themes directory, could also have it locked behind a config option like restrictBaseDir

How about an dependency model. When a theme lists other themes as a dependency, it can read from those theme dirs, but gains no access to other themes.
That way you keep sandboxing, whilst still hemming the possible scans of installed materials.

Laravel community and his leader dislike the final keyword and what it does.
Réf https://twitter.com/taylorotwell/status/1237053249703854080?s=20
I'm not sure how this protection should be handled and if it should be.
My thought on that would be to keep this features as a child-theme-like, allowing to extend a theme from one and only one other theme to keep it simple and do not create a chain of dependency in the Winter's themes.
@arvislacis in your use case all the 20 websites "extend" the same theme?

bump


os.homedir() results in different path depending on invocation (Windows)

os.homedir() on Windows checks for specific environment variables before falling back to the logic used on other OSes.
I think os.userInfo().homedir makes more sense. See also https://github.com/nodejs/node/issues/5582

Note: User can currently achieve this behavior currently with using a Configuration file:
const {join} = require('path');
const {userInfo} = require('os');

/**
 * @type {import("puppeteer").Configuration}
 */
module.exports = {
  cacheDirectory: join(userInfo().homedir, '.cache', 'puppeteer'),
};


Multispeaker support and some changes

Description

This PR adds support for training multispeaker models and some changes
Motivation and Context

How has this been tested?

Screenshots (if appropriate):
Types of changes

[ ] 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 not work as expected)

Checklist:

[X] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[X] All new and existing tests passed.

inference works well?

@blaisewf Yes

ok, core.py is missing things

Ow, okay, I'll add

extract or preprocess doesn't need something on the core?

extract or preprocess doesn't need something on the core?

No

extract or preprocess doesn't need something on the core?

No

so how do you preprocess a multispeaker dataset

extract or preprocess doesn't need something on the core?

No

so how do you preprocess a multispeaker dataset

user provides a location of the training set, such as C:\training
all acceptable files in C:\training are used for sid 0 as compatibility
all child folders with numeric values  (we actually need to check that they are int) are used as speaker IDs and content of those folders is processed normally.
the file index is written with these SID values + 2 mute files per speaker.

well so this needs to be well explained on the docs


upgrade project

This is a draft proposal to upgrade the project.
Dependencies have been upgraded to the latest version.
In accordance, some adjustments had to be made:

Added phantom markers and small adjustments in lifetimes.
Updated sqlx query returns.
Added tokio-runtime sqlx feature

This upgraded version compiles and passes all tests.

Thank you @ruy-dan  for making this update. I'm reviewing your changes right now.

Thank you @ruy-dan  for making this update. I'm reviewing your changes right now.

Great. I hope it can be helpful to find a possible update for the project.

I agree. I was thinking there might be scenarios where we could want to process rows in parallel or where the callback might be shared across threads, hence the Box and Send + Sync, but I agree that this brings unnecessary complexity for this context. I have updated the callback following your suggestion and pushed a new commit.


Add rsync

in bootstrap.sh:
apt-get install rsync
sudo -u vagrant cp -R /bitcoin ~vagrant/bitcoin becomes rsync -a /bitcoin ~vagrant/bitcoin
update BTC_resync to use rsync

make sure that rsync doesn't sync .git

Done


Upgrade tox version and Python versions

Add Python 2.7.9, Python 2.7.10 and Python 3.4.3
Allow tox to be upgraded to latest version (2.1.1)
Fix test_string_bucket_name
Fix test_stream_keys_timeout  to have many more keys to stream
Use flake8 instead of pyflakes for lint testing
Use #noqa lines to allow lint testing under Python 3
Unset the PYENV_VERSION variable to use non-buildbot versions of Python

:+1:  6c06173

@borshop merge


chore: add proguard rules

Complete each step to get your pull request merged in. Learn more about the workflow this project uses.

[ ] Assign members of your team to review the pull request.
[ ] Wait for pull request status checks to complete. If there are problems, fix them until you see that all status checks are passing.
[ ] Wait until the pull request has been reviewed and approved by a teammate
[ ] After pull request is approved, and you determine it's ready add the label "Ready to merge" to the pull request and it will automatically be merged.

closing as this is merged separately.


(Java) Prevent crawling other domains found in the website #762

Hi!
I looked into your Java examples, and I found it straight forward, but because of the lack of examples, I'm having a difficulty getting to what I exactly need to do with my code.
I'm trying to do 2 things:
1- I need to force crawlers to avoid crawling into any domain other than the domain I have specified in the crawler config.
2- I need to access all the URL's that crawlers collect through the process.
what I'm trying to implement with your library, is simply: collecting links within the domain I specify in the config.
could you, please help me see my way through it?

Hello @nAoxide,
Which version are you using? I will assume v2.x, even though it should be the same/similar with v3.
1. Restrict to domain:
To force the crawler to remain on the same domains as those part of your start URLs, you can rely on the stayOn... attributes:
<startURLs stayOnDomain="true" includeSubdomains="true" stayOnPort="true" stayOnProtocol="true">
    ...
</startURLs>

Using Java, you can set those this way:
HttpCrawlerConfig crawlerConfig = ...  // <-- However you get your crawler config.
URLCrawlScopeStrategy scopeStrategy = crawlerConfig.getURLCrawlScopeStrategy();
scopeStrategy.setStayOnDomain(true);
scopeStrategy.setStayOn...(true);  // <-- Whatever other settings you want to enable

More information in HttpCrawlerConfig.
The above is usually the simplest, but if you need more flexibility, you can also use reference filters. With Java::
ReferenceFilter filter = new ReferenceFilter(TextMatcher.regex(".*/whatever/.*"));
filter.setOnMatch(OnMatch.INCLUDE);
crawlerConfig.setReferenceFilters(Arrays.asList(filter));

2. Get URL listing.
Storing what gets crawled for whatever purpose is usually the job of Committers. Do you care to get the content or other fields or do you just want a list of URLs?  Assuming the latter, there are a few ways to do this.
If you just want a text file with all URLs, you could use a file-system committer, like the JSONFileCommitter or the XMLFileCommitter.  V3 also has a CSVCommitter.
To only capture the URL and nothing else, you can eliminate the rest in your <importer> configuration with:

Thank you for your response!
about the second point "Get URL listing", all I need is getting scraped URL's in-app, without the need to store them anywhere on disk.
I will try to do it using "URLStatusCrawlerEventListener"..
I would still appreciate any help I could get from you.

You can have as many URLs as you want in the same crawler config.  The stayOn... configuration option will apply to each one individually.
If you only care to get URLs programmatically, there are also a few ways.   One where you have ultimate control would be to implement a crawler event listener just like the URLStatusCrawlerEventListener does.  I recommend you look at it for inspiration.  Every time a URL comes in you can either cache it in memory, or process it on the fly.  You can do what you want with it at that point really.
If you do not care about the content (other than for extracting links from HTML files), I recommend you do not bother to add a Committer, and also add a document filter (IDocumentFilter) do save yourself a significant amount of content processing.

I am glad you like it.  You will like v3.0, even more, when it is released.
There are no default Committers. I.e., if you do not specify any then it is the same as "disabling" them.
For logging statements, version 2 uses Log4j. You can find a log4j.properties file in your installation directory.  You can control what gets logged through that file.  If you set the log levels to ERROR everywhere to only get notified of problems.  You can also set them to OFF to disable logging.

There is no single class doing all the logging, it is done everywhere.  Eventually, they all go through Log4J so you can look at extending that library if you want to intercept/manipulate logging.
If you just want to be notified of certain events, the ICrawlerEventListener is also the way to go.    Some of which are crawler lifecycle events. The crawler event that should tell you when a crawler is done, is CRAWLER_FINISHED.
If you have multiple crawlers defined in the same collector and want to know when the entire Collector is done, you can do an equivalent on the collector using ICollectorLifeCycleListener.  That listener interface has an onCollectorFinish method.

Thank you very much!
Now I'm all done.
I really appreciate your time and your interaction with my issue.


flutter run -d chrome is not logging print statements on initial run

Repro:
import 'package:flutter/widgets.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    print('Important logging info');
    return SizedBox.expand();
  }
}

When I run this with flutter run -d chrome I don't see "Importing logging info." in the output. However, it appears after I do a hot restart (by pressing r).

The issue here is that I call main before setting up the vmservice registration. Fix should be to move it to after


Broken in Craft 3.7.46.

Updated to Latest Craft CMS version 3.7.46 from <IP_ADDRESS> and it's broken the reasons plugin functionality. I can't see any obvious errors appearing, the fields with conditional rules are applied but they just don't appear in the entries.

Also experiencing this. Don't see logs on the server or the client that would give clues to the issue(s).
CraftCMS => 3.7.46
mmikkel/reasons => <IP_ADDRESS>

Hi, thanks for reporting this. I'll have a look at it ASAP.

Thanks a lot @mmikkel. Let me know if you need any version or implementation details from us.

@parthi-me @joshuarichard I'm not able to reproduce this, so I need more info:

Browser and version
PHP version
Database version
Other plugins installed
Multisite?
Description of a specific conditional that isn't working (toggle field type, target field type, and the rule)

I'm also not seeing anything in the [v3 changelog] for <IP_ADDRESS> -> 3.7.46 that immediately jumps out as something that'd break Reasons.
If either of you could DM me (@mmikkel) on the Craft Discord with a database dump, composer.json and composer.lock file I can also try to dig further to reproduce with that.

Also, check if Reasons' JS is even loading by looking in your browser dev tools' Networks panel. It should have an entry for a file called render.js:

Hi @mmikkel , I see the dropdown field encryption is enabled in the latest Craft CMS update. This could be the reason for the above issue. I verified that before the update dropdown values are not encoded which you directly used to check against the values and displayed the respective fields. But as the values are encoded now we may need to decode and verify the values.
3.7.46 - Added craft\fields\BaseOptionsField::encodeValue().

@parthi-me Thanks, you're absolutely correct.
So it's specifically option toggle fields (i.e. dropdowns, radio buttons and checkboxes) that are broken, on 3.7.46. I'll look into a fix ASAP.

Should be resolved in Reasons 2.3.1. Thanks!


Command Center

Type: Bug
When pressing Ctrl+E doesn't show the drop-down search. I've notice this on VS Code Insider, please fix this as soon as posible because this is very useful in my coding work. Thank you.
VS Code version: Code 1.78.0 (252e5463d60e63238250799aef7375787f68b4ee, 2023-05-03T20:09:00.748Z)
OS version: Windows_NT x64 10.0.22621
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 x 2496)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
15.77GB (4.24GB free)

Process Argv
--crash-reporter-id cc272da3-8f7b-4778-8686-fbd5ece24b90

Screen Reader
no

VM
0%

Extensions (22)

Extension
Author (truncated)
Version

ng-template
Ang
16.0.0

blackbox
Bla
0.10.76

vscode-eslint
dba
2.4.0

composer-php-vscode
DEV
1.34.13083

phptools-vscode
DEV
1.34.13083

profiler-php-vscode
DEV
1.34.13083

gitlens
eam
13.5.0

vscode-html-css
ecm
1.13.1

prettier-vscode
esb
9.12.0

auto-rename-tag
for
0.1.10

html-snippets
gey
0.2.3

vscode-power-mode
hoo
3.0.2

angular2-switcher
inf
0.4.0

Angular2
joh
13.0.0

code-background
Kat
2.5.5

theme-monokai-pro-vscode
mon
1.2.1

sqltools
mtx
0.27.1

material-icon-theme
PKi
4.27.0

vscode-thunder-client
ran
2.6.2

tabnine-vscode
Tab
3.6.46

php-debug
xde
1.32.1

html-css-class-completion
Zig
1.20.0

(2 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscorecescf:30445987
pythondataviewer:30285071
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593cf:30376535
pythonvs932:30410667
cppdebug:30492333
vscaat:30438848
vsclangdc:30486549
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
2e4cg342:30602488
pyind779:30671433
f6dab269:30613381
pythonsymbol12:30671437
showlangstatbar:30730054
azdwalk:30721579
pythonms35:30701012
pythonfmttext:30731395
fixshowwlkth:30730052
hidesbindicator:30730055

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Compilation of packaged libxml2 fails when installing nokogiri-1.6.8 to a mounted volume in docker

If I don't mount the volume, this works fine. But I want to cache the bundle between builds.
Host is OS X. I'm guessing the issue could be either some code searching for some config or file till root of the file system, or user/group mismatch between the running user and mounted volume.
$ ls -la /srv/app/vendor/bundle
total 4
drwxr-xr-x    1 1000     50             102 Jul 11 08:37 .
drwxr-xr-x    3 root     root          4096 Jul 11 14:54 ..
drwxr-xr-x    1 1000     50             102 Jul 11 08:37 ruby

Dockerfile
# Common Image
FROM ruby:2.3.1-alpine

ENV APP_HOME=/srv/app
RUN mkdir -p $APP_HOME
WORKDIR ${APP_HOME}

# Build Image
RUN apk add --no-cache --virtual .build_packages \
      git openssh-client \
      build-base postgresql-dev ruby-dev

COPY Gemfile* ./

VOLUME $APP_HOME/vendor/bundle

CMD bundle install \
      --clean \
      --deployment \
      --without="test development"

/usr/local/bundle/extensions/x86_64-linux/2.3.0-static/nokogiri-1.6.8/gem_make.out
current directory: /usr/local/bundle/gems/nokogiri-1.6.8/ext/nokogiri
/usr/local/bin/ruby -r ./siteconf20160711-1-cjs0hl.rb extconf.rb
Using pkg-config version 1.1.7
checking if the C compiler accepts ... yes
Building nokogiri using packaged libraries.
Using mini_portile version 2.1.0
checking for gzdopen() in -lz... yes
checking for iconv... yes
************************************************************************
IMPORTANT NOTICE:

Building Nokogiri with a packaged version of libxml2-2.9.4.

Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:

    gem install nokogiri -- --use-system-libraries
        [--with-xml2-config=/path/to/xml2-config]
        [--with-xslt-config=/path/to/xslt-config]

If you are using Bundler, tell it to use the option:

    bundle config build.nokogiri --use-system-libraries
    bundle install

Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... ERROR, review '/usr/local/bundle/gems/nokogiri-1.6.8/ext/nokogiri/tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4/compile.log' to see what happened. Last lines are:
========================================================================
encoding.c: In function 'xmlGetEncodingAlias':
encoding.c:1021:20: warning: implicit declaration of function 'toupper' [-Wimplicit-function-declaration]
         upper[i] = toupper(alias[i]);
                    ^
encoding.c: In function 'xmlIconvWrapper':
encoding.c:1805:22: error: 'ICONV_CONST' undeclared (first use in this function)
     ret = iconv(cd, (ICONV_CONST char **) &icv_in, &icv_inlen, &icv_out, &icv_outlen);
                      ^
encoding.c:1805:22: note: each undeclared identifier is reported only once for each function it appears in
encoding.c:1805:34: error: expected ')' before 'char'
     ret = iconv(cd, (ICONV_CONST char **) &icv_in, &icv_inlen, &icv_out, &icv_outlen);
                                  ^
Makefile:1248: recipe for target 'encoding.lo' failed
make[2]: *** [encoding.lo] Error 1
make[2]: Leaving directory '/usr/local/bundle/gems/nokogiri-1.6.8/ext/nokogiri/tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4/libxml2-2.9.4'
Makefile:1440: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/usr/local/bundle/gems/nokogiri-1.6.8/ext/nokogiri/tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4/libxml2-2.9.4'
Makefile:859: recipe for target 'all' failed
make: *** [all] Error 2
========================================================================
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/usr/local/bin/$(RUBY_BASE_NAME)
    --help
    --clean
    --use-system-libraries
    --enable-static
    --disable-static
    --with-zlib-dir
    --without-zlib-dir
    --with-zlib-include
    --without-zlib-include=${zlib-dir}/include
    --with-zlib-lib
    --without-zlib-lib=${zlib-dir}/lib
    --enable-cross-build
    --disable-cross-build
/usr/local/bundle/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:366:in `block in execute': Failed to complete compile task (RuntimeError)
    from /usr/local/bundle/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `chdir'
    from /usr/local/bundle/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:337:in `execute'
    from /usr/local/bundle/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:111:in `compile'
    from /usr/local/bundle/gems/mini_portile2-2.1.0/lib/mini_portile2/mini_portile.rb:150:in `cook'
    from extconf.rb:364:in `block (2 levels) in process_recipe'
    from extconf.rb:257:in `block in chdir_for_build'
    from extconf.rb:256:in `chdir'
    from extconf.rb:256:in `chdir_for_build'
    from extconf.rb:363:in `block in process_recipe'
    from extconf.rb:262:in `tap'
    from extconf.rb:262:in `process_recipe'
    from extconf.rb:555:in `<main>'

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /usr/local/bundle/extensions/x86_64-linux/2.3.0-static/nokogiri-1.6.8/mkmf.log

extconf failed, exit code 1

/usr/local/bundle/extensions/x86_64-linux/2.3.0-static/nokogiri-1.6.8/mkmf.log
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I.     -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wno-maybe-uninitialized  conftest.c  -L. -L/usr/local/lib -Wl,-R/usr/local/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic     -Wl,-R/usr/local/lib -L/usr/local/lib -lruby-static  -lpthread -ldl -lcrypt -lm   -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

"gcc -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I.     -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wno-maybe-uninitialized    -Werror -c conftest.c"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main() {return 0;}
/* end */

have_library: checking for gzdopen() in -lz... -------------------- yes

"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I.     -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wno-maybe-uninitialized  -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c  -L. -L/usr/local/lib -Wl,-R/usr/local/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic     -Wl,-R/usr/local/lib -L/usr/local/lib -lruby-static -lz  -lpthread -ldl -lcrypt -lm   -lc "
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: #include <zlib.h>
 4:
 5: /*top*/
 6: extern int t(void);
 7: int main(int argc, char **argv)
 8: {
 9:   if (argc > 1000000) {
10:     printf("%p", &t);
11:   }
12:
13:   return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))gzdopen; return !p; }
/* end */

--------------------

have_iconv?: checking for iconv... -------------------- yes

"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I.     -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wno-maybe-uninitialized  -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c  -L. -L/usr/local/lib -Wl,-R/usr/local/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic     -Wl,-R/usr/local/lib -L/usr/local/lib -lruby-static  -lpthread -ldl -lcrypt -lm   -lc "
checked program was:
/* begin */
 1: #include "ruby.h"
 2:
 3: #include <stdlib.h>
 4: #include <iconv.h>
 5:
 6: int main(void)
 7: {
 8:     iconv_t cd = iconv_open("", "");
 9:     iconv(cd, NULL, NULL, NULL, NULL);
10:     return EXIT_SUCCESS;
11: }
/* end */

--------------------

same issue with libxml2-2.9.4

Can you please provide enough details to reproduce this, please?
The docker image you are using would be the best start, but I'd also like
to see the logs from the failure you're seeing.
On Oct 2, 2016 6:55 PM, "Yuri S."<EMAIL_ADDRESS>wrote:

same issue with libxml2-2.9.4
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/sparklemotion/nokogiri/issues/1510#issuecomment-251002022,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAgDyogDMTFsuG4P2EPueXHpYKD5Z3Eks5qwDZ6gaJpZM4JJdP3
.

Ah, I see OP has info. Not sure why this is a Nokogiri bug, though. Help me understand the rationale of filing it here?

I've gotten Nokogiri to build just fine using the docker image ruby:2.3.1-alpine, and so I'm going to close this issue (after installing lots of packages, admittedly).
I'd really suggest you take a look at other reasons this might be failing; or else provide a bit more information about why you feel this is a Nokogiri bug.
Also, if you care about Alpine support, please consider sending a PR to the installation tutorial: https://github.com/sparklemotion/nokogiri.org-tutorials

@flavorjones This might not necessarily be a nokogiri bug but I thought someone here would have a better idea about why it's failing.
Like I mentioned in the first post, nokogiri compiles fine unless the bundle target is a mounted volume (and you don't even need a lot of packages for that). The issue is when trying to install with bundler target on a mounted volume as in the dockerfile attached; specifically, this bit:
VOLUME $APP_HOME/vendor/bundle
Can you please try that and let me know what you make of the error log?

@TMaYaD in the past we've seen issues with overlyfs in docker containers. In particular, check out the sequence of https://github.com/sparklemotion/nokogiri/issues/1370 → https://github.com/sparklemotion/nokogiri/pull/1405 → https://github.com/docker/docker/issues/19082.
I'm not sure what I can do to help here.

@TMaYaD were you able to figure this out? i'm getting the same error as you describe all of a sudden. i've been using mounted volumes fine till now until i needed nokogiri. please help!

@jaequery I'm sorry you're having issues, but unfortunately this issue is closed.
Please open a new issue and provide the debugging information requested in the issue template. Thank you!


Added Travis CI configuration.

Partially fixes issue #2 by providing prebuilt binaries for all major platforms.

Here's what needs to be done for setup:

You can sign up for the open source plan at github.com/marketplace/travis-ci.
In .travis.yml, the value at deploy.api_key.secure needs to be replaced with an encrypted GitHub access token.
2a) The token can be generated from github.com/settings/tokens/new and needs to include the public_repo scope.
2b) Install the Travis CLI: gem install travis
2c) Use travis login --pro to authenticate the CLI against GitHub. Note: The --pro flag will log you into travis-ci.com instead of  travis-ci.org, which probably is what you want considering that the .org domain is being merged into .com as of May 2nd, 2018.
2d) Use travis encrypt --com put-your-github-token-here to finally get the encrypted token. It works by encrypting it against the public RSA key fetched from https://api.travis-ci.com/repos/rabite0/hunter/key, so basically only the Travis CI worker will be able to decrypt it. Read docs.travis-ci.com/user/encryption-keys/ if you'd like to know the details.
After .travis.yml has been committed, every change inside a branch matching branches.only will cause the CI to:
3a) Spawn an Ubuntu Xenial VM worker, install the current nightly Rust, and then cross-compile for every platform in matrix.include using the cross-crate.
3b) As specified with deploy.on.tags, whenever a new tag is created, the compiled builds will also be published in the github.com/rabite0/hunter/releases by using your API token. Note: deploy.draft is currently enabled, so it'll just create GitHub release drafts, which you can still edit as you'd like.

After setup, the result should look somewhat like this: travis-ci.com/straussdd/hunter/
As you can see, hunter compiles cleanly for all important platforms, however apple-32, freebsd-32 and freebsd-64 are failing. For your convenience, I've listed the compilation errors for each one:
For i686-apple-darwin:
error[E0308]: mismatched types
  --> /Users/travis/.cargo/registry/src/github.com-1ecc6299db9ec823/systemstat-0.1.4/src/platform/macos.rs:65:68
   |
65 |         Ok(DateTime::<Utc>::from_utc(NaiveDateTime::from_timestamp(data.tv_sec, data.tv_usec as u32), Utc))
   |                                                                    ^^^^^^^^^^^ expected i64, found i32
help: you can cast an `i32` to `i64`, which will sign-extend the source value
   |
65 |         Ok(DateTime::<Utc>::from_utc(NaiveDateTime::from_timestamp(data.tv_sec.into(), data.tv_usec as u32), Utc))
   |                                                                    ^^^^^^^^^^^^^^^^^^

For i686-unknown-freebsd:
error[E0308]: mismatched types
   --> /cargo/registry/src/github.com-1ecc6299db9ec823/systemstat-0.1.4/src/platform/freebsd.rs:109:68
    |
109 |         Ok(DateTime::<Utc>::from_utc(NaiveDateTime::from_timestamp(data.tv_sec, data.tv_usec as u32), Utc))
    |                                                                    ^^^^^^^^^^^ expected i64, found i32
help: you can cast an `i32` to `i64`, which will sign-extend the source value
    |
109 |         Ok(DateTime::<Utc>::from_utc(NaiveDateTime::from_timestamp(data.tv_sec.into(), data.tv_usec as u32), Utc))
    |                                                                    ^^^^^^^^^^^^^^^^^^

For x86_64-unknown-freebsd, 16 instances of E0277, for example:
error[E0277]: `std::sync::mpsc::Sender<notify::RawEvent>` cannot be shared between threads safely
   --> src/file_browser.rs:255:51
    |
255 |           let main_widget = AsyncWidget::new(&core, Box::new(move |_| {
    |  ___________________________________________________^
256 | |             let name = if main_path.parent().is_none() {
257 | |                 "root".to_string()
258 | |             } else {
...   |
279 | |             Ok(list)
280 | |         }));
    | |__________^ `std::sync::mpsc::Sender<notify::RawEvent>` cannot be shared between threads safely
    |
    = help: within `notify::PollWatcher`, the trait `std::marker::Sync` is not implemented for `std::sync::mpsc::Sender<notify::RawEvent>`
    = note: required because it appears within the type `notify::debounce::EventTx`
    = note: required because it appears within the type `notify::PollWatcher`
    = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock<notify::PollWatcher>`
    = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc<std::sync::RwLock<notify::PollWatcher>>`
    = note: required because it appears within the type `fscache::FsCache`
    = note: required because it appears within the type `[closure@src/file_browser.rs:255:60: 280:10 main_path:std::path::PathBuf, cache:fscache::FsCache, core_m:widget::WidgetCore]`
    = note: required for the cast to the object type `dyn std::boxed::FnBox<(preview::Stale,), Output=std::result::Result<listview::ListView<files::Files>, fail::HError>> + std::marker::Send + std::marker::Sync`

You should decide whether it's reasonable to fix these build failures eventually, or to maybe disable the CI builds for these platforms in .travis.yml.

Cool thanks. People have been asking for binaries, so this is perfect.
Nice that it also shows build failures for all the systems. Now I know for sure on which platform it compiles.


Support list vor env "CRATE_HOST"

Is your feature request related to a problem? Please describe.
If I understood correctly currently QL only supports one crate host given through the env variable "CRATE_HOST". So if I set up my crate cluster on different nodes, each with another configuration (that's why I didn't use "mode: global" and thus have multiple crate services), I cannot give QL a list of the services / IPs. Is that right?
Describe the solution you'd like
Implement the possibility to use a list of different services / crate hosts and the cluster's name // replicaset similar to when orion handles different mongo hosts.
Describe alternatives you've considered
I believe putting a proxy in front of crate that connects all crate nodes could work as well.
Additional context
Thanks for looking into this :)

@SBlechmann thanks for the suggestion!

"CRATE_HOST" ... I cannot give QL a list of the services / IPs. Is that right?

That's correct. CRATE_HOST takes a single host name, not a list. That's a bit unfortunate since it looks like you can actually configure the Crate driver to use a server pool quite trivially

https://github.com/crate/crate-python/blob/master/src/crate/client/connection.py#L106
https://github.com/crate/crate-python/blob/master/src/crate/client/http.py#L345

I believe putting a proxy in front of crate that connects all crate nodes could work as well.

Yep, spot on. Also in a K8s deployment you could just set CRATE_HOST to the Crate service name and then have K8s route traffic to the Crate nodes for you

https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies

This is what we tend to do with our deployments and it has the advantage that we're not limited to a static list of nodes---as it'd be the case if CRATE_HOST took a list of servers. As new nodes join the Crate cluster or old ones die, traffic would still be distributed to all available cluster nodes without having to reconfigure QuantumLeap.

@c0c0n3 as always: Thanks for the very fast response!
Well, I believe I really have to switch to k8s soon.. it's still in my bucket list. Thanks for sharing your thoughts!
Maybe this might still be easy to implement? Of course the list would need fitting everytime you add a new node / a new service but maybe this might be sufficient for smaller use cases?
BTW: In another issue I said that I wanted to conduct some performance tests. Just at on Tuesday I got to implement 0.8 and seriously, guys, the step from 0.7.5(6) to 0.8 is huge. Thank you for the new performance improvements and way better docs!

@SBlechmann

Thanks for the very fast response!

Pleasure! We try to tend to GH issues from the community as quickly as we can, but sometimes we've got so much in our plate that it could take us a couple of days to go through the list...

I believe I really have to switch to k8s soon

Obviously, you're the best person to judge what you need given your use case and requirements. If you go with K8s, these Helm charts might be useful to whip together a FIWARE cluster:

https://github.com/orchestracities/charts

But it could be overkill for your scenario, I have no idea :-) What I know is that K8s has a steep learning curve (well at least that was the case for me, but I'm not the brightest chap out there) and might not be worth it for simple scenarios where e.g. a simple Docker compose or plain OS services would do. For example, you could even run QuantumLeap outside of Docker with
python app.py

which can easily be hooked into a systemd unit. (You could also use a separate GUnicorn instance, tweak GUnicorn config, etc.)

Maybe this might still be easy to implement? Of course the list would need fitting everytime you add a new node / a new service but maybe this might be sufficient for smaller use cases?

Indeed. It shouldn't be too hard to implement actually and like you pointed out it comes in handy for simple scenarios. One thing that I'd like to find out though is if the Crate guys have any plans to do that in the Crate driver. So I'm summoning the Mighty Motl, @amotl do you know if it could be possible for the Crate client to populate the list of servers dynamically

https://github.com/crate/crate-python/blob/master/src/crate/client/http.py#L345

by querying the Crate cluster topology given the address of a configured cluster member? The CrateDB logs seem to give away that each node in the cluster is actually aware of the cluster topology, but I could be wrong!!

Thank you for the new performance improvements and way better docs!

Kudos to @chicco785 :-)

Hi there,
thanks for bringing up that topic. I discussed that with @mfussenegger and @seut already and they told me that a simple round-robin like distribution/balancing mechanism is implemented in crate-python already. However, the same thing can also be implemented by using some K8s ingress technologies or by just using a dedicated HAProxy (containerized or not) to use more sophisticated load balancing mechanisms [1].
On the PostgreSQL interface side (see also #407), I also would like to reference https://github.com/psycopg/psycopg2/issues/602 and https://github.com/sqlalchemy/sqlalchemy/issues/4392 here just for the sake of completeness.
Specifically attaching to people aiming to run CrateDB on Kubernetes, I also would like to point out crate-operator here.

Of course the list would need fitting everytime you add a new node / a new service but maybe this might be sufficient for smaller use cases?

On this matter, I just created https://github.com/crate/crate-operator/issues/170 which might yield some more insights how things may be improved on those aspects how to assemble things in an advanced manner.
With kind regards,
Andreas.
[1] http://cbonte.github.io/haproxy-dconv/2.3/configuration.html#4-balance

Hi @amotl
Thank you so much for this, you're awesome.

roundrobin-like distribution/balancing mechanism is implemented in crate-python already

is it doing round robin on the list of servers you pass in when you create the client:

https://github.com/crate/crate-python/blob/master/src/crate/client/connection.py#L106

or is it also fetching the cluster topology from the nodes currently in the Crate cluster? e.g. if I have a Crate cluster with 4 nodes, n1 to n4 and I create a connection with servers = [n1, n2], is the client going to automagically add n3 and n4 to the list? If so, does the list get refreshed over time so if the topology changes the list gets eventually updated too?

On the PostgreSQL interface side (see also #407), I also would like to reference psycopg/psycopg2#602 and sqlalchemy/sqlalchemy#4392 here just for the sake of completeness.

Excellent! Note to self: when tackling this issue, implement the same changes in the timescale backend too.

I also would like to point out crate-operator here

Like I said some time ago, we're very excited about this new addition to the Crate family!

Hi @c0c0n3,

Is crate-python doing round robin on the list of servers you pass in when you create the client.

Exactly. Currently, there is no further smartness here. Whether it would be actually possible to inquire topology information from the cluster itself might get revealed on an eventual discussion at https://github.com/crate/crate-operator/issues/170. From MongoDB, I know the Python client driver supports cluster node discovery:

The addresses passed to MongoClient() are called the seeds. As long as at least one of the seeds is online, MongoClient discovers all the members in the replica set, and determines which is the current primary and which are secondaries or arbiters.
-- https://pymongo.readthedocs.io/en/stable/examples/high_availability.html#id1

However, I don't know if it will be possible to implement with CrateDB. Let's wait what the core developers will have to say about this and maybe also file another ticket at https://github.com/crate/crate.
With kind regards,
Andreas.

Hi @amotl, thanks for clarifying. On second thought, I think regardless if the Crate client will eventually support node discovery, QuantumLeap should support reading a list of Crate hosts from config. In fact, as @SBlechmann pointed out, this feature would be useful right away, since the Crate client can already work quite happily with a list of servers. If one day, you guys implement node discovery, all the better. Those hosts you configure in QuantumLeap will serve as discovery seeds, like it happens in e.g. Mongo.

Hi again,
at https://github.com/crate/crate-operator/issues/170, @SStorm and @WalBeh provided more insights into how crate-operator works - thanks a stack. This might tremendously help when operating CrateDB within a Kubernetes environment as you won't have to care about making the client aware of multiple hosts. The K8s-LB will be configured automatically.
It would still be helpful if CRATE_HOST can accept a list of endpoints when operated in non K8s-environments, indeed.
With kind regards,
Andreas.

Hi once more,
after talking to @WalBeh (thanks again!), I want to add some more important details in order to clarify the situation.
When using crate-operator on an IaaS platform, it will be able to configure the load balancing components provided by Azure and AWS appropriately. This is done through a respective plugin.
However, when running K8s in an on-premise environment, this has to be done using a different technology than what the IaaS LB components provide. For example, he mentioned MetalLB in this context. crate-operator does not provide an option for that yet.
With kind regards,
Andreas.

@amotl thanks alot for all the info!

when running K8s in an on-premise environment, ... crate-operator does not provide an option for that yet.

Thanks, for pointing it out I'd totally missed that after reading the other thread!

Hey there,
apperently, I got some discussion rolling o.o Thanks for all the contributions @c0c0n3  @amotl
My thought of providing more than one crate host (e.g. service - I'm using docker swarm terminology) was meant to deal with use cases where you have different crate nodes with different roles (e.g. data-node // manager // combinations).
Just to see if I got that right - since I'm more a "user" of both crate and QL:

QL will have a look into this and might add the ability to give QL more then one host
on k8s there is crate-operator that handles all the loadbalancing and discovering of new nodes (but only in Azure and AWS?)
crate-operator still does not support to distinguish different roles of nodes but that might be a topic in the future

So for me right now I will just create simpler setups where all nodes are equal so I can use deploy mode global and don't have to deal with the issue yet, right? (swarm)
Sorry for asking but I'm not familiar with k8s yet: What would a solution on k8s that is not hosted on Azure nor AWS look like now?
Thanks for your time!

hey @SBlechmann

Thanks for all the contributions

Pleasure!

QL will have a look into this and might add the ability to give QL more then one host

Definitely, not sure exactly when, but keep tabs on this issue :-)

So for me right now I will just create simpler setups where all nodes are equal so I can use deploy mode global and don't have to deal with the issue yet, right? (swarm)

Well, I suppose it depends on where QL sits (e.g. outside/inside the swarm), whether you're doing load balancing e.g. HAProxy, etc. Not sure what your actual set up is.

What would a solution on k8s that is not hosted on Azure nor AWS look like now?

I've got no experience with Azure, but I suppose if you're not using a managed K8s service and you just roll out your own K8s on bare Azure nodes, you could have a Crate stateful set with a service that takes care of distributing requests coming from e.g. QL to the Crate pods in the stateful set. In this case all your QL instances would be configured to use one address in CRATE_HOST which is e.g. the name of the service. If you want to go down that road, you could use these charts:

https://github.com/orchestracities/charts/tree/master/charts/crate

Here's an (simplified!) example of what kind of Crate service those charts would install on a bare-bones K8s cluster
apiVersion: v1
kind: Service
metadata:
  labels:
    app: crate
  name: crate-crate
  namespace: prod
spec:
  ports:
  - name: crate-web
    port: 4200
  - name: cluster
    port: 4300
  - name: postgres
    port: 5432
  selector:
    app: crate
    release: crate

and here's the (simplified!) stateful set:
apiVersion: apps/v1
kind: StatefulSet
metadata:
  labels:
    app: crate
  name: crate-crate
  namespace: prod
spec:
  replicas: 3
  selector:
    matchLabels:
      app: crate
  serviceName: crate-crate
  template:
    spec:
      affinity:
        podAntiAffinity:
          ...
      containers:
      - command:
        - /docker-entrypoint.sh
        - -Cnode.name="$POD_NAME"
        - -Ccluster.name=${CLUSTER_NAME}
        - -Cnetwork.host="<IP_ADDRESS>"
        - -Cdiscovery.seed_providers=srv
        - -Cdiscovery.srv.query=_cluster._tcp.crate-crate.prod.svc.cluster.local
        - -Ccluster.initial_master_nodes=crate-crate-0,crate-crate-1,crate-crate-2
        - -Cgateway.recover_after_nodes=${RECOVER_AFTER_NODES}
        - -Cgateway.recover_after_time=10s
        - -Cgateway.expected_nodes=${EXPECTED_NODES}
        - -Chttp.cors.enabled=true
        - -Chttp.cors.allow-origin=*
        - -Cpath.repo="/backup"
        env:
        - name: CRATE_HEAP_SIZE
          value: 1536m
        - name: EXPECTED_NODES
          value: "3"
        - name: CLUSTER_NAME
          value: quantumleap
        - name: RECOVER_AFTER_NODES
          value: "3"
        - name: MINIMUM_MASTER_NODES
          value: "2"
        - name: POD_NAME
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.name
        image: crate:4.1.8
        imagePullPolicy: Always
        name: crate
        ports:
        - containerPort: 4200
          name: crate-web
        - containerPort: 4300
          name: cluster
        - containerPort: 5432
          name: postgres
        resources:
          limits:
            cpu: "3"
            memory: 5Gi
          requests:
            cpu: 300m
            memory: 2Gi
        volumeMounts:
        - mountPath: /data
          name: data
      dnsPolicy: ClusterFirst
      initContainers:
         ...
  updateStrategy:
    type: RollingUpdate
  volumeClaimTemplates:
  - spec:
      accessModes:
      - ReadWriteOnce
      resources:
        requests:
          storage: 30Gi
      storageClassName: fast
      volumeMode: Filesystem

Now with this set up, you could run a bunch of QL pods in the same namespace (prod) and set CRATE_HOST=crate-crate for all of them. K8s will take care of distributing the load among the 3 nodes in the stateful set without QL even knowing how many Crate nodes there are. Best of all, if you scale your stateful set (e.g. add nodes), everything will still work since QL is reaching Crate through the service name (crate-crate) not a specific IP.


[Nvidia] could not perform rpm-ostree update

Pulling manifest: ostree-image-signed:docker://ghcr.io/ublue-os/silverblue-nvidia:latest
error: Creating importer: Failed to invoke skopeo proxy method OpenImage: remote error: cryptographic signature verification failed: invalid signature when validating ASN.1 encoded signature

Hey
I'm guessing your image hasn't had an update in quite some time.
Please find remediation steps and an explanation about what happened in this Discourse post
https://universal-blue.discourse.group/t/important-announcement-regarding-system-updates-action-needed/2689
Apologies for the inconvenience

Since I've not heard back, and those docs have been used by many others who had the same issue, I'll close this issue.
Please @p5 if it's still not resolved.


feat: limit num of barriers between Meta -> Source

Is your feature request related to a problem? Please describe.
Currently, the channel between Meta server and CN i.e. SourceExecutor is unlimited, while other channels between actors limit the barrier number to 2 (#9427). As a result, when system is overloaded, hundreds of barriers are stuck in that Meta->Source channal and released to downstream in an instant after some time, and this may cause unpredicatable consequence to the cluster performance.
Describe the solution you'd like

Proposed by @hzxa21

We can try to limit that channel size and back-presure Meta to "drop" new barriers if there is already 1 barrier left in that Meta->Source channel.
I am not sure whther this can solve the fluctuation problem, but it should not have negative effect.
Describe alternatives you've considered
No response
Additional context
No response

@st1page has proposed to control checkpoint based on time e.g. 10 seconds instead of barrier frequency e.g. 10 barriers to mitigate fluctuation problem. I think my proposal will achieve similar effect.
For example, assuming now the Meta->CN channel has 1 barrier stuck there, and the Meta has already dropped 4 non-checkpoint barrier and 1 checkpoint barrier. In this case, the next barrier that Meta tries to emit should always be a checkpoint barrier, until one is successfully emitted out, then it can go back to the normal frequency.

The challenge I come up with in this approach is how to "drop" the barrier. According to the above, once some source gets back-pressured, all sources in all compute nodes should reject this barrier atomically. Here are some possible ways to achieve this:

Use two-phase barrier injection. The first RPC tries to reserve a slot, and if succeeded, send the second RPC to inject.
Back pressure based on the information on the meta side, since we know the maximum depth of the streaming graph and the current in-flight barrier number.

Another approach I find that might be simpler to implement is to let the compute node block the inject_barrier RPC from the meta service, until there're free slots in the bounded barrier receiver in the source. During the blocking, new barriers (no matter manually issued or periodical) are also blocked, and we have to adapt the idea of "checkpoint based on time" for this.

Suddenly I realized a problem... The Meta->Source channel we discussed here is shared among all streaming tasks. But in our case (barrier stuck for minutes #9723), actually only one job (Q16) is problematic, and other jobs should not be affected by it, so is it reasonable to block all of these jobs? cc. @hzxa21 @BugenZhao

Suddenly I realized a problem... The Meta->Source channel we discussed here is shared among all streaming tasks. But in our case (barrier stuck for minutes #9723), actually only one job (Q16) is problematic, and other jobs should not be affected by it, so is it reasonable to block all of these jobs? cc. @hzxa21 @BugenZhao

I guess this is unavoidable since we are doing global checkpoint. If we allow independent checkpointing for non-connected streaming graph (proposed long time ago), we can reduce the impact of a slow job. Are all nexmark jobs run on a shared table (materialized source)? If that is the case, the streaming graph of different jobs are still connected.

Are all nexmark jobs run on a shared table (materialized source)? If that is the case, the streaming graph of different jobs are still connected

In this case, No, they are using Kafka Source.

it seems hard to explain "source can have better isolation while table can't" to users.

This reminds me of a long-resolved question that why we don't have "physical resources" for sources. 😂

Can't solve the problem


added start and end values to Interval Trait. Used for IntervalRDD

Can one of the admins verify this patch?

Jenkins, add to whitelist.

Jenkins, test this please.

Also, +1 from me.

Do we still need width if we have start and end?  Do we need or want to support open ended intervals?  Intervals around the origin in circular genomes?  Zero-based or one-based coordinate systems?  etc.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1073/
Test PASSed.

@heuermh

Do we still need width if we have start and end?

Would probably make sense to define width = end - start

Do we need or want to support open ended intervals? Zero-based or one-based coordinate systems? etc.

We decided early on that we were going to be consistently 0-based, open ended inside of ADAM.

Intervals around the origin in circular genomes?

I wouldn't worry about this for now since no one's asked for it and it adds a fair bit of complexity, but it is something to consider later.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1076/
Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/ADAM-prb/1077/
Test PASSed.


SBD.symbol has changed?

I'm not sure what has changed in the last 24 hours but this piece here:
https://github.com/busyorg/busy/blob/bd5245616e1bd63eec31960ce5bb1dcd8aa630b7/src/client/wallet/Transfer.js#L291
Seems to be rendering as SBD* instead of just SBD.

This causes a steemconnect error when you try to do a transfer.

I can see the * in the url &amount=12 SBD*.

oh yeah, this had to do with a change in for cryptocompare, ill fix this


(db-postgres): localized group and localized fields inside of group are broken.

Link to reproduction
https://github.com/r1tsuu/payload/tree/postgres-reproduction
Describe the Bug
Given the collection config:
import type { CollectionConfig } from 'payload/types'

export const localizedSlug = 'localized '

export const Localized: CollectionConfig = {
  slug: localizedSlug,
  fields: [
    {
      name: 'groupLocalized',
      localized: true,
      type: 'group',
      fields: [
        {
          name: 'title',
          type: 'text',
        },
      ],
    },
    {
      name: 'group',
      type: 'group',
      fields: [
        {
          localized: true,
          name: 'title',
          type: 'text',
        },
      ],
    },
  ],
}

In both cases (localized inside and localized group itself) data is not saved to the database for properly, from my integration test i have this (null data for last row with en locale):

In the admin ui it just shows you the data in wrong language
Found this while was writing integration test for my PR https://github.com/payloadcms/payload/pull/5942
To Reproduce
Run
pnpm test int:postgres _community - doesnt pass
pnpm test int _community - passes with mongodb, which should confirm that something is wrong.
Payload Version
2 and 3
Adapters and Plugins
db-postgres

i think i could handle it, can assign to me

Any progress on this issue? We just ran into this problem as well.

Any progress on this issue? We just ran into this problem as well.

I opened a PR https://github.com/payloadcms/payload/pull/6158

The PR looks great! Good work @r1tsuu, are you able to resolve the merge conflict and we'll take it from there? We should be able to get this merged and ready for the next release.

I am closing this. It will be out in the next release of 3.0 beta.
I may do a backport of all the database changes made in beta back to 2.x based on demand.
Thanks @r1tsuu for this fix.


[parser] Fix list indent

List needs to add indents by IndentLevel
Signed-off-by: weiyang<EMAIL_ADDRESS>

@wy-z I saw that you are using this tool more frequently than me, and you are an experienced developer.
Would you like to join this repo as a collaborator? (I have sent you an invitation)

@wy-z I saw that you are using this tool more frequently than me, and you are an experienced developer.
Would you like to join this repo as a collaborator? (I have sent you an invitation)

It's my pleasure.

@wy-z You can merge the PRs by yourself. I will regularly use the latest tool every weekend. If there are no more problems, I will release a new version the next Monday.


Mobile - Crash app in case connect WalletConnect on Android

Descibe the bug
Crash app in case connect WalletConnect on Android
To reproduce the bug
Steps:

Connect WalletConnect on Android
Observe the displayed screen

Actual: Crash app
Expect: Connect WalletConnect successfully

Version test: https://www.diawi.com/qrcode/link/TxTWYF
https://www.diawi.com/qrcode/link/41AoTi
Device test: IP 11, MI 8 Lite
Validation passed.


Android databinding: lifecycleOwner is no longer accessible in Gradle 5.5-RC3

I have this snippet of code in my one fragments to get my view binding:
class ExaminationDetailFragment : BaseFragment(), ExaminationContract.DetailsView {

    override val layoutResId: Int
        get() = R.layout.fragment_examination_details

    private lateinit var binding: FragmentExaminationDetailsBinding
    @Inject lateinit var detailsPresenter: ExaminationContract.DetailsPresenter
    @Inject lateinit var viewModelFactory: ViewModelProvider.Factory

    override val viewModel: ExaminationViewModel by activityViewModels { viewModelFactory }

    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        binding = DataBindingUtil.inflate<FragmentExaminationDetailsBinding>(
            inflater, layoutResId, container, false).apply {
            viewmodel = viewModel
            isLandscapeMode = resources.configuration.orientation == Configuration.ORIENTATION_LANDSCAPE
            viewlistener = detailsPresenter
            lifecycleOwner = viewLifecycleOwner
        }
        return binding.root
    }
...

Here I initialize my ViewBinding and set some variables for use in my layout xml. Lastly I set my lifecycleOwner. But when I upgrade to 5.5-rc3. lifecycleOwner no longer gets resolved.

Expected Behavior
lifecycleOwner should get resolved and it should be possible in a Fragment to set it to the viewLifecycleOwner.
Current Behavior
lifecycleOwner = viewLifecycleOwner no longer gets resolved.
Context
Stopped working with 5.5.-rc3. Worked in 5.5-rc2.
Steps to Reproduce

Create an Android Project
Add an Activity that uses a Fragment to display it's UI
Create a layout file that uses databinding for the Fragment
Initialize the Fragment in onCreateView() and set a lifecycleOwner to the binding

4 is not possible as the lifecycleOwnerdoesn't resolve.
Your Environment
Android Studio 3.6 Canary 3
Build #AI-191.7<IP_ADDRESS>18338, built on May 30, 2019
JRE: 1.8.0_202-release-1483-b49-5587405 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.13.6
gradle_plugin_version = '3.6.0-alpha03'
androidx_core_version = '1.2.0-alpha02'
androidx_activity_version = '1.0.0-beta01'
androidx_fragment_version = '1.1.0-beta01'
androidx_recyclerview_version = '1.1.0-alpha06'
androidx_coordinatorlayout_version = '1.1.0-beta01'
androidx_lifecycle_version =  '2.2.0-alpha01'

Gradle build scan

Do you have an error when running your build or simply an error in the IDE view?
If there is an error when running the build, could you provide a build scan that shows it?

I actually can't reproduce the problem on my laptop. I'll look into it when I'm back at my desktop computer at work tomorrow morning.

This sounds more like something to do with a change in the Android Gradle plugin, though there doesn't seem to be any recent changes in AGP around the code involved here either.

One check you could do is verify that the classpath did not change between Gradle 5.5 RC2 and RC3, #9718 is a regression that affected the later and which can impact dependency resolution.

@bohsen would it be possible for you to create a small reproducer project that you could post here?

@lptr Reproducer - at least on my computer.

This sounds more like something to do with a change in the Android Gradle plugin, though there doesn't seem to be any recent changes in AGP around the code involved here either.

Haven't changed AGP version recently.

verify that the classpath did not change between Gradle 5.5 RC2 and RC3

Can you point me to how to do this? Not a Gradle expert.

I'm seeing very strange behavior. Two classes with very similar contents. One class resolves the lifecycleOwner the other one doesn't.

@big-guy Seems to work.
With 5.5-RC3

With nightly build:

A RC4 that fixes this will be going out today.

You should convert you layout to databinding first


In /wp-admin/admin.php?page=crellyslider&view=edit&id=1

table "slide options" css was missing a clear:left

Amazing work!

Hi!
I created the language files 100% complete for spanish and fixed the loading of language files.
it's ready to pull =)

Hi, thank you really much for what you are doing. 2 things (I'm relatively new to GitHub and I don't know if the discussion is the right section to ask):
1)I'd like to keep the language folder into the wordpress folder. In this way, the JS plugin and the backend interface are as much as standalone as possible.

The load_language_files should() be called crellyslider_loadLanguageFiles(). Prefixes avoid conflicts.

I'd do these little things by myself but I'm not sure if I have to merge the pull request or I have to wait your modifications and then merge (again, sorry, but this is my first project on GitHub).

Yes, this is the perfect place for discussions.
Or "issues" you can make as many as you want.

I will keep an eye on this project, I like it a lot!
It is fast, light and easy to use. Keep it simple!
I used it here: http://smilexalapa.com/
El jueves, 5 de marzo de 2015, fabiorino<EMAIL_ADDRESS>escribió:

Hi, thank you really much for what you are doing. 2 things (I'm relatively
new to GitHub and I don't know if the discussion is the right section to
ask):
1)I'd like to keep the language folder into the wordpress folder. In this
way, the JS plugin and the backend interface are as much as standalone as
possible.

The load_language_files should() be called
crellyslider_loadLanguageFiles(). Prefixes avoid conflicts.

I'd do these little things by myself but I'm not sure if I have to merge
the pull request or I have to wait your modifications and then merge
(again, sorry, but this is my first project on GitHub).
—
Reply to this email directly or view it on GitHub
https://github.com/fabiorino/crelly-slider/pull/5#issuecomment-77431070.

--
Enviado desde mi móvil


files from previous repository

main.py - daemon that runs surplus checks on transaction hashes for the interval between last one hour and last 30 mins, keeping in mind the competition endpoint data.
cowEndpointSurplus.py - runs on historical data providing several statistics including absolute and relative missed surplus values for an order,  solvers' surplus error, etc.
OnChainSurplus.py - decodes on-chain data to find surplus to be soon compared to Quasimodo's calculations.

cc @fhenneke for a review