docs: Create CentOS/RHEL 7 installation guide

Write a document explaining how to install Clear Containers 3.0 on a
CentOS 7 or RHEL 7 system. Added associated scripts and configuration
files (which are lightly modified versions from
https://github.com/01org/cc-oci-runtime).
Fixes #371.
Signed-off-by: James O. D. Hunt<EMAIL_ADDRESS>

Before this lands, we need an ack to confirm the instructions work for both:

CentOS 7
RHEL 7

@GabyCT - do you still have your RHEL environment?

Coverage remained the same at 53.451% when pulling a04cfa66d663643963d07129f8e98eea4f215763 on jodh-intel:add-centos-install-doc into df043b1443e4e174831658353f59deee4066b3e5 on clearcontainers:master.

Note that this PR also uses the docker name cc-runtime (see #370).

@jodh-intel sorry, I do not have a RHEL

@GabyCT, @chavafg - do you know roughly how long it would take to get a system setup to test this?

@jodh-intel I will try to setup the end of the week

@jodh-intel @GabyCT For Clear Containers 3.0 We only need scripts for RHEL.
CentOS packages are OK.

@gorozco1 - sure, the script does use the OBS packages, but most of the logic is needed to build qemu-lite which isn't in OBS fwics.

@jodh-intel, I am trying to test this issue however when I am doing the pull of your PR it has confilicts with the versions.txt could you please solve this so I can run it thanks

Coverage remained the same at 55.39% when pulling 2a782dd03e0b7d217c8bc71c0fa3f687e3cad8ad on jodh-intel:add-centos-install-doc into 7bde8a9eb710dd9f090a680f1f6ba9ad86137a3b on clearcontainers:master.

@jodh-intel, when I running the script at RHEL, the following error is show:
Error: Package docker-ce-17.06.0.ce-1.el7.centos.x86_64 (docker-ce-stable)
Requires: container-selinux >= 2.9
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

@jodh-intel , I 've been searching and this problem is quite common as it appears in several sites https://github.com/docker/for-linux/issues/20

@jodh-intel I forgot to mention that the system where I did the test was a fresh installed RHEL

Hi @GabyCT - Is the container-selinux package installed by default? What does yum info container-selinux show?
@gorozco1, @chavafg  - I seem to remember we've seen something like this before. Any thoughts?

@jodh-intel , if I do
yum info container-selinux
Error: No matching Packages to list

We had some issues[1] with clear-containers-selinux on CentOS, which is provided by us. But seems that this package is from the RHEL repos. Someone from the issue that @GabyCT pasted above, recommends to manually download and install the package: https://github.com/docker/for-linux/issues/20#issuecomment-316930840
Not sure if that could work for us.
[1] https://github.com/clearcontainers/packaging/issues/7

@chavafg actually this script is using the Centos packages for RHEL

@chavafg what is doing is trying to install the docker packages of centos in RHEL
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum -y install docker-ce

maybe we need access to the EPEL repos?

@chavafg installing the rpm fixed the issue with docker, now we have the following error
Loaded plugins: product-id
adding repo from: http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/RHEL_7.3/home:clearcontainers:clear-containers-3.repo
grabbing file http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/RHEL_7.3/home:clearcontainers:clear-containers-3.repo to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
Could not fetch/save url http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/RHEL_7.3/home:clearcontainers:clear-containers-3.repo to file /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo: [Errno 14] HTTP Error 404 - Not Found
@gorozco1 the resource is not available

Hi @GabyCT - I've now updated this PR to account for the small (but annoying ;) difference between CentOS and RHEL whereby the former sets VERSION_ID in /etc/os-release to the major release number (7), whereas RHEL sets it to major.minor format (7.3). This should fix the issue you were seeing with the OBS URL being incorrect on RHEL only.

Coverage remained the same at 55.39% when pulling 44572bcbb28719936cef8823323fcb2b8756bc56 on jodh-intel:add-centos-install-doc into 743362fc27af0e85702dd34b096bade5ddcb9359 on clearcontainers:master.

@jodh-intel , here are the issues that I have now
Loaded plugins: product-id
adding repo from: http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/RHEL_7/home:clearcontainers:clear-containers-3.repo
grabbing file http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/RHEL_7/home:clearcontainers:clear-containers-3.repo to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
repo saved to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
home_clearcontainers_clear-containers-3                                                                                | 1.3 kB  00:00:00
home_clearcontainers_clear-containers-3/primary                                                                                | 2.6 kB  00:00:00
home_clearcontainers_clear-containers-3                                                                                14/14
No package cc-runtime available.

@jodh-intel , I see that that rpm has not been created it

Marked as release-gating as we can't release and not support RHEL.

Blocked on https://github.com/containers/virtcontainers/pull/340.

Correction, blocked on:

https://github.com/clearcontainers/runtime/pull/434/
https://github.com/clearcontainers/packaging/issues/38

@GabyCT @jodh-intel
The rpms are in the staging repo (ready to be tested)
http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3-staging/RHEL_7/x86_64/
Remember that in rhel, centos and sles qemu-lite is not building. So it needs to be build by hand.

Hi @GabyCT - could you give these a test?

@jodh-intel , this happens when I am running the script
Loaded plugins: product-id
adding repo from: http://download.opensuse.org/repositories/home:/clearcontainer                                                                                s:/clear-containers-3/RHEL_7/home:clearcontainers:clear-containers-3.repo
grabbing file http://download.opensuse.org/repositories/home:/clearcontainers:/c                                                                                lear-containers-3/RHEL_7/home:clearcontainers:clear-containers-3.repo to /etc/yu                                                                                m.repos.d/home:clearcontainers:clear-containers-3.repo
repo saved to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
Loaded plugins: product-id, search-disabled-repos, subscription-manager
No package cc-runtime available.
Resolving Dependencies
--> Running transaction check
---> Package cc-proxy.x86_64 0:3.0.0beta.1+git.817d71e-1.1 will be installed
--> Processing Dependency: clear-containers-selinux for package: cc-proxy-3.0.0b                                                                                eta.1+git.817d71e-1.1.x86_64
--> Processing Dependency: cc-proxy-config for package: cc-proxy-3.0.0beta.1+git                                                                                .817d71e-1.1.x86_64
--> Processing Dependency: cc-proxy-bin for package: cc-proxy-3.0.0beta.1+git.81                                                                                7d71e-1.1.x86_64
---> Package cc-shim.x86_64 0:3.0.0alpha.4+git.ab14648-2.1 will be installed
--> Processing Dependency: cc-shim-bin for package: cc-shim-3.0.0alpha.4+git.ab1                                                                                4648-2.1.x86_64
--> Running transaction check
---> Package cc-proxy-bin.x86_64 0:3.0.0beta.1+git.817d71e-1.1 will be installed
---> Package cc-proxy-config.x86_64 0:3.0.0beta.1+git.817d71e-1.1 will be instal                                                                                led
---> Package cc-shim-bin.x86_64 0:3.0.0alpha.4+git.ab14648-2.1 will be installed
---> Package clear-containers-selinux.noarch 0:0.1-3.1 will be installed
--> Processing Dependency: selinux-policy-targeted >= 3.13.1-128.6.fc22 for pack                                                                                age: clear-containers-selinux-0.1-3.1.noarch
--> Processing Dependency: selinux-policy-base >= 3.13.1-128.6.fc22 for package:                                                                                clear-containers-selinux-0.1-3.1.noarch
--> Finished Dependency Resolution
Error: Package: clear-containers-selinux-0.1-3.1.noarch (home_clearcontainers_cl                                                                                ear-containers-3)
Requires: selinux-policy-base >= 3.13.1-128.6.fc22
Installed: selinux-policy-targeted-3.13.1-102.el7.noarch (@anaconda/7                                                                                .3)
selinux-policy-base = 3.13.1-102.el7
Available: selinux-policy-minimum-3.13.1-102.el7.noarch (RHEL-7-serve                                                                                r-highavailability-partners)
selinux-policy-base = 3.13.1-102.el7
Available: selinux-policy-mls-3.13.1-102.el7.noarch (RHEL-7-server-hi                                                                                ghavailability-partners)
selinux-policy-base = 3.13.1-102.el7
Error: Package: clear-containers-selinux-0.1-3.1.noarch (home_clearcontainers_cl                                                                                ear-containers-3)
Requires: selinux-policy-targeted >= 3.13.1-128.6.fc22
Installed: selinux-policy-targeted-3.13.1-102.el7.noarch (@anaconda/7                                                                                .3)
selinux-policy-targeted = 3.13.1-102.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
sed: can't read /etc/clear-containers/configuration.toml: No such file or direct                                                                                ory
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -D --add-runtime cc-runtime=/usr/bin/cc-runtime --def                                                                                ault-runtime=cc-runtime
Failed to execute operation: Access denied
Failed to start cc-proxy.socket: Unit not found.

@jodh-intel and @gorozco1 changing to the staging repository, I have the following error
adding repo from: http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3-staging/RHEL_7/home:clearcontainers:clear-containers-3-staging.repo
grabbing file http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3-staging/RHEL_7/home:clearcontainers:clear-containers-3-staging.repo to /etc/yum.repos.d/home:clearcontainers:clear-containers-3-staging.repo
repo saved to /etc/yum.repos.d/home:clearcontainers:clear-containers-3-staging.repo
Loaded plugins: product-id, search-disabled-repos, subscription-manager
home_clearcontainers_clear-containers-3-staging                                                                                | 1.3 kB  00:00:00
home_clearcontainers_clear-containers-3-staging/primary                                                                                | 3.8 kB  00:00:00
home_clearcontainers_clear-containers-3-staging                                                                                22/22
Resolving Dependencies
--> Running transaction check
---> Package cc-proxy.x86_64 0:17a4dd8+git.d7a4dd8-22.1 will be installed
--> Processing Dependency: clear-containers-selinux for package: cc-proxy-17a4dd8+git.d7a4dd8-22.1.x86_64
--> Processing Dependency: cc-proxy-config for package: cc-proxy-17a4dd8+git.d7a4dd8-22.1.x86_64
--> Processing Dependency: cc-proxy-bin for package: cc-proxy-17a4dd8+git.d7a4dd8-22.1.x86_64
---> Package cc-runtime.x86_64 0:8f4f4c2+git.8f4f4c2-73.1 will be installed
--> Processing Dependency: cc-runtime-config for package: cc-runtime-8f4f4c2+git.8f4f4c2-73.1.x86_64
--> Processing Dependency: cc-runtime-bin for package: cc-runtime-8f4f4c2+git.8f4f4c2-73.1.x86_64
---> Package cc-shim.x86_64 0:3.0.0alpha.4+git.ab14648-13.1 will be installed
--> Processing Dependency: cc-shim-bin for package: cc-shim-3.0.0alpha.4+git.ab14648-13.1.x86_64
--> Running transaction check
---> Package cc-proxy-bin.x86_64 0:17a4dd8+git.d7a4dd8-22.1 will be installed
---> Package cc-proxy-config.x86_64 0:17a4dd8+git.d7a4dd8-22.1 will be installed
---> Package cc-runtime-bin.x86_64 0:8f4f4c2+git.8f4f4c2-73.1 will be installed
---> Package cc-runtime-config.x86_64 0:8f4f4c2+git.8f4f4c2-73.1 will be installed
---> Package cc-shim-bin.x86_64 0:3.0.0alpha.4+git.ab14648-13.1 will be installed
---> Package clear-containers-selinux.noarch 0:0.1-1.1 will be installed
--> Processing Dependency: selinux-policy-targeted >= 3.13.1-128.6.fc22 for package: clear-containers-selinux-0.1-1.1.noarch
--> Processing Dependency: selinux-policy-base >= 3.13.1-128.6.fc22 for package: clear-containers-selinux-0.1-1.1.noarch
--> Finished Dependency Resolution
Error: Package: clear-containers-selinux-0.1-1.1.noarch (home_clearcontainers_clear-containers-3-staging)
Requires: selinux-policy-targeted >= 3.13.1-128.6.fc22
Installed: selinux-policy-targeted-3.13.1-102.el7.noarch (@anaconda/7.3)
selinux-policy-targeted = 3.13.1-102.el7
Error: Package: clear-containers-selinux-0.1-1.1.noarch (home_clearcontainers_clear-containers-3-staging)
Requires: selinux-policy-base >= 3.13.1-128.6.fc22
Installed: selinux-policy-targeted-3.13.1-102.el7.noarch (@anaconda/7.3)
selinux-policy-base = 3.13.1-102.el7
Available: selinux-policy-minimum-3.13.1-102.el7.noarch (RHEL-7-server-highavailability-partners)
selinux-policy-base = 3.13.1-102.el7
Available: selinux-policy-mls-3.13.1-102.el7.noarch (RHEL-7-server-highavailability-partners)
selinux-policy-base = 3.13.1-102.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
sed: can't read /etc/clear-containers/configuration.toml: No such file or directory
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -D --add-runtime cc-runtime=/usr/bin/cc-runtime --default-runtime=cc-runtime
Failed to execute operation: Access denied
Failed to start cc-proxy.socket: Unit not found.

Thanks @GabyCT for reporting this, regarding to that I open an issue and a pr in packaging repo:
https://github.com/clearcontainers/packaging/issues/70
https://github.com/clearcontainers/packaging/pull/71
A new selinux package for rhel has been build based on PR https://github.com/clearcontainers/packaging/pull/71
http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3-staging/RHEL_7/noarch/

Per discussion with @jodh-intel and @gorozco1 , it makes more sense to separate out the RHEL and centos scripts.  Let's plan on updating the PR to be centos specific and raise another issue to track RHEL script implementation.

This PR should be only talk about CentOS and RHEL should be solved in a different PR to fix issue #463

I folks - all - just a note about the 'metrics' messages that are flooding the repo(s) right now.... the messaging part is/was not meant to be enabled yet, as we are still beta testing and data gathering in the CI system - let me see if I can go disable that (if not, I will turn the CI bot off until we have fixed it)
So, sorry for the noise, and thanks for your patience - fingers crossed the bot doesn't have another spray-the-world panic attack :-)

Oh, and meant to say, the reason we are getting multiple posts on many PRs is that I believe every time we re-start the CI service (bot) it re-scans all open PRs from scratch. Ho hum.

Coverage remained the same at 66.1% when pulling 0ca731ef98bc2f6a3b8b56f486c55b989765bcf7 on jodh-intel:add-centos-install-doc into 438daca920e443168c57834feca7fd451b131026 on clearcontainers:master.

I've reworked this branch for CentOS only but am seeing the same errors @GabyCT saw in https://github.com/clearcontainers/runtime/pull/372#issuecomment-324365181:
adding repo from: http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/CentOS_7/home:clearcontainers:clear-containers-3.repo
grabbing file http://download.opensuse.org/repositories/home:/clearcontainers:/clear-containers-3/CentOS_7/home:clearcontainers:clear-containers-3.repo to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
repo saved to /etc/yum.repos.d/home:clearcontainers:clear-containers-3.repo
Modules complémentaires chargés : fastestmirror
home_clearcontainers_clear-containers-3                                                                                | 1.3 kB  00:00:00
home_clearcontainers_clear-containers-3/primary                                                                                | 3.1 kB  00:00:00
Loading mirror speeds from cached hostfile
 * base: mirror.freethought-internet.co.uk
 * extras: mirror.as29550.net
 * updates: mirror.freethought-internet.co.uk
home_clearcontainers_clear-containers-3: [#######                                                                                ] 1/18home_clearcontainers_clear-containers-3: [###############                                                                                ] 2/18home_clearcontainers_clear-containers-3: [#######################                                                                                ] 3/18home_clearcontainers_clear-containers-3: [###############################                                                                                ] 4/18home_clearcontainers_clear-containers-3: [#######################################                                                                                ] 5/18home_clearcontainers_clear-containers-3: [###############################################                                                                                ] 6/18home_clearcontainers_clear-containers-3: [#######################################################                                                                                ] 7/18home_clearcontainers_clear-containers-3: [###############################################################                                                                               ] 8/18home_clearcontainers_clear-containers-3: [#######################################################################                                                                       ] 9/18home_clearcontainers_clear-containers-3: [##############################################################################                                                               ] 10/18home_clearcontainers_clear-containers-3: [######################################################################################                                                       ] 11/18home_clearcontainers_clear-containers-3: [##############################################################################################                                               ] 12/18home_clearcontainers_clear-containers-3: [#####################################################################################################                                        ] 13/18home_clearcontainers_clear-containers-3: [#############################################################################################################                                ] 14/18home_clearcontainers_clear-containers-3: [#####################################################################################################################                        ] 15/18home_clearcontainers_clear-containers-3: [#############################################################################################################################                ] 16/18home_clearcontainers_clear-containers-3: [#####################################################################################################################################        ] 17/18home_clearcontainers_clear-containers-3                                                                                18/18
Résolution des dépendances
--> Lancement de la transaction de test
---> Le paquet cc-proxy.x86_64 0:3.0.0beta.1+git.817d71e-1.1 sera installé
--> Traitement de la dépendance : clear-containers-selinux pour le paquet : cc-proxy-3.0.0beta.1+git.817d71e-1.1.x86_64
--> Traitement de la dépendance : cc-proxy-config pour le paquet : cc-proxy-3.0.0beta.1+git.817d71e-1.1.x86_64
--> Traitement de la dépendance : cc-proxy-bin pour le paquet : cc-proxy-3.0.0beta.1+git.817d71e-1.1.x86_64
---> Le paquet cc-runtime.x86_64 0:3.0.0beta.1+git.7bde8a9-3.1 sera installé
--> Traitement de la dépendance : linux-container >= 4.9.35-66.1 pour le paquet : cc-runtime-3.0.0beta.1+git.7bde8a9-3.1.x86_64
--> Traitement de la dépendance : clear-containers-image >= 16910-33.1 pour le paquet : cc-runtime-3.0.0beta.1+git.7bde8a9-3.1.x86_64
--> Traitement de la dépendance : cc-runtime-config pour le paquet : cc-runtime-3.0.0beta.1+git.7bde8a9-3.1.x86_64
--> Traitement de la dépendance : cc-runtime-bin pour le paquet : cc-runtime-3.0.0beta.1+git.7bde8a9-3.1.x86_64
---> Le paquet cc-shim.x86_64 0:3.0.0alpha.4+git.ab14648-2.1 sera installé
--> Traitement de la dépendance : cc-shim-bin pour le paquet : cc-shim-3.0.0alpha.4+git.ab14648-2.1.x86_64
--> Lancement de la transaction de test
---> Le paquet cc-proxy-bin.x86_64 0:3.0.0beta.1+git.817d71e-1.1 sera installé
---> Le paquet cc-proxy-config.x86_64 0:3.0.0beta.1+git.817d71e-1.1 sera installé
---> Le paquet cc-runtime-bin.x86_64 0:3.0.0beta.1+git.7bde8a9-3.1 sera installé
---> Le paquet cc-runtime-config.x86_64 0:3.0.0beta.1+git.7bde8a9-3.1 sera installé
---> Le paquet cc-shim-bin.x86_64 0:3.0.0alpha.4+git.ab14648-2.1 sera installé
---> Le paquet clear-containers-image.x86_64 0:16910-33.1 sera installé
---> Le paquet clear-containers-selinux.noarch 0:0.1-3.1 sera installé
--> Traitement de la dépendance : selinux-policy-targeted >= 3.13.1-128.6.fc22 pour le paquet : clear-containers-selinux-0.1-3.1.noarch
--> Traitement de la dépendance : selinux-policy-base >= 3.13.1-128.6.fc22 pour le paquet : clear-containers-selinux-0.1-3.1.noarch
---> Le paquet linux-container.x86_64 0:4.9.35-66.1 sera installé
--> Résolution des dépendances terminée
Erreur : Paquet : clear-containers-selinux-0.1-3.1.noarch (home_clearcontainers_clear-containers-3)
             Requiert : selinux-policy-targeted >= 3.13.1-128.6.fc22
             Installé  : selinux-policy-targeted-3.13.1-102.el7_3.16.noarch (@updates)
                 selinux-policy-targeted = 3.13.1-102.el7_3.16
             Disponible : selinux-policy-targeted-3.13.1-102.el7.noarch (base)
                 selinux-policy-targeted = 3.13.1-102.el7
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.4.noarch (updates)
                 selinux-policy-targeted = 3.13.1-102.el7_3.4
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.7.noarch (updates)
                 selinux-policy-targeted = 3.13.1-102.el7_3.7
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.13.noarch (updates)
                 selinux-policy-targeted = 3.13.1-102.el7_3.13
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.15.noarch (updates)
                 selinux-policy-targeted = 3.13.1-102.el7_3.15
Erreur : Paquet : clear-containers-selinux-0.1-3.1.noarch (home_clearcontainers_clear-containers-3)
             Requiert : selinux-policy-base >= 3.13.1-128.6.fc22
             Installé  : selinux-policy-targeted-3.13.1-102.el7_3.16.noarch (@updates)
                 selinux-policy-base = 3.13.1-102.el7_3.16
             Disponible : selinux-policy-minimum-3.13.1-102.el7.noarch (base)
                 selinux-policy-base = 3.13.1-102.el7
             Disponible : selinux-policy-minimum-3.13.1-102.el7_3.4.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.4
             Disponible : selinux-policy-minimum-3.13.1-102.el7_3.7.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.7
             Disponible : selinux-policy-minimum-3.13.1-102.el7_3.13.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.13
             Disponible : selinux-policy-minimum-3.13.1-102.el7_3.15.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.15
             Disponible : selinux-policy-minimum-3.13.1-102.el7_3.16.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.16
             Disponible : selinux-policy-mls-3.13.1-102.el7.noarch (base)
                 selinux-policy-base = 3.13.1-102.el7
             Disponible : selinux-policy-mls-3.13.1-102.el7_3.4.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.4
             Disponible : selinux-policy-mls-3.13.1-102.el7_3.7.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.7
             Disponible : selinux-policy-mls-3.13.1-102.el7_3.13.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.13
             Disponible : selinux-policy-mls-3.13.1-102.el7_3.15.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.15
             Disponible : selinux-policy-mls-3.13.1-102.el7_3.16.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.16
             Disponible : selinux-policy-targeted-3.13.1-102.el7.noarch (base)
                 selinux-policy-base = 3.13.1-102.el7
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.4.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.4
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.7.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.7
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.13.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.13
             Disponible : selinux-policy-targeted-3.13.1-102.el7_3.15.noarch (updates)
                 selinux-policy-base = 3.13.1-102.el7_3.15
 Vous pouvez essayer d'utiliser --skip-broken pour contourner le problème
 Vous pouvez essayer d'exécuter : rpm -Va --nofiles --nodigest

The problem seems to be the dependencies on cc-runtime and cc-proxy are now pulling in the SELinux packages (I can install cc-shim and clear-containers-image manually with no problems). The scripts on this PR have only been lightly modified to remove RHEL-specific code and this used to work. Hence, it appears the packaging has changed/broken since these scripts were written.

@jodh-intel the problem is with the version of selinux in rhel/centos which is being fixed.
The packages are ready to be tested in the staging repo, and the scripts are using the official repo.
I am trying them now with the staging repo

Hi @gorozco1 - branch updated and re-tested under CentOS. Please could you re-test on RHEL by following the instructions in docs/centos+rhel-installation-guide.md but using this branch rather than master.

Coverage remained the same at 81.68% when pulling 3654a6a5d6fc158610dcffc0de15ebe27d28f698 on jodh-intel:add-centos-install-doc into 8a21d77e75884d3094244618db812fd01cadad07 on clearcontainers:master.

Coverage remained the same at 82.582% when pulling ada58c7e509a1408628a85fb62d4ea431bdb70c5 on jodh-intel:add-centos-install-doc into 55849b738faff3d4f92e2489879c9784ac59518d on clearcontainers:master.

@sboeuf - please can you re-run the jenkins build on this PR so that it is not incorrectly marked as failed.

Hi @iphutch, whilst we continue to test this PR, could you take a look at the document changes?

@jodh-intel it is kind of complicated because it's not completely operational. Just ignore it, that's fine. As I told you on the other PR, as long as it's not marked as Required, it won't prevent you from merging the PR.

@sboeuf - not ideal, but "ok". How about we disable jenkins for this repo and in fact only test it for one of the less heavily used ones? Once it's fully working, we can enable it for them all?

@jodh-intel please rename the files to centos-rhel-setup

@gorozco1 - I can rename, but if the script gets renamed, I think the doc should also to reflect the change. What's the reason for needing the rename?

@jodh-intel oh sorry for not clarify, well It's easier to read, and get inserted in a script with cur

Is this ready to be validated?

@jodh-intel are we moving these to be just for CentOS?

@gorozco1 - yes, I think that's what we decided? I'm currently testing yet again, so will post a coment once it's ready to be re-reviewed. Adding do-not-merge label for now...

Tested fine for me on CentOS 7.
@iphutch - please can you re-review?
@eadamsintel - this is ready to be validated on CentOS 7.

Coverage remained the same at 89.402% when pulling bdfd5ab13f54dbb7d162476e69d2ac866ac9ed72 on jodh-intel:add-centos-install-doc into 2b2602d93c7aad1fef1166abff085d2685745c95 on clearcontainers:master.

I asked Tom to try this out and the following step failed. When doing the git clone this centos-setup.sh is not there. How can I get the centos-setup.sh script?
script -efc ./installation/centos-setup.sh
[stack@otc-tme-cleartest clearcontainers]$ cd runtime
[stack@otc-tme-cleartest runtime]$ script -efc ./installation/centos-setup.sh
Script started, file is typescript
bash: ./installation/centos-setup.sh: No such file or directory
Script done, file is typescript

Hi @eadamsintel, this PR contains files that only exist in my branch (until it is merged into master). But the docs on this PR must assume they have already been merged into master.
Hence, to allow Tom to test this, he will have to follow the instructions but rather than running these commands:
$ cd $HOME/go/src/github/clearcontainers
$ git clone https://github.com/clearcontainers/runtime
$ cd runtime

... he must run:
$ cd $HOME/go/src/github/clearcontainers
$ git clone https://github.com/jodh-intel/runtime
$ cd runtime
$ git checkout add-centos-install-doc

Feedback from Tom "That workaround worked.   The script is running. Had some proxy issues i had to work around. also the nopassword variable for sudo isn't working properly, been using root instead."

Hi @eadamsintel - I think proxies are out of scope of the document. Could tom comment on exactly what the problem with the sudo setup was (what is his github username?)?
I've just re-checked the sudo instructions and they are working for me.

Coverage remained the same at 97.04% when pulling 64ace3a8ae7cc53ae1488a5287b696fa6d08985b on jodh-intel:add-centos-install-doc into 1fe09bbaa225d9da7fc8442da4a852b66023fe83 on clearcontainers:master.

Coverage remained the same at 97.04% when pulling 155f374180ca38f8a938cb6e44e28095874ca356 on jodh-intel:add-centos-install-doc into 1fe09bbaa225d9da7fc8442da4a852b66023fe83 on clearcontainers:master.

Hi @gorozco1 - good call on https urls! Fixed, re-tested and branch updated.

I finally got a github account - I was able to get the script to run as a user - there appears to be an issue with the gobject version:
configure: error: Package requirements (gobject-2.0 >= 2.37.6 gio-2.0) were not met:
Requested 'gobject-2.0 >= 2.37.6' but version of GObject is 2.36.3
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables JSON_CFLAGS
and JSON_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Script done, file is typescript
[root@otc-tme-cleartest runtime]#
--Tom

Hi @tcthorn-intel - thanks for testing. I am confused though: there shouldn't be any version issues since we explicitly pin the builds to particular versions of libraries: gobject, gio and glib should all be at the same version - the one the script downloads.
Please can you attach your typescript file which might give us some more clues.

@jodh-intel can we merge this now?

@devimc @grahamwhaley @mcastelino  could you review/approve this PR?

Hi @jodh-intel  Not a problem, I've attached the logfile.
typescript.txt

Hi @tcthorn-intel - I can't be sure, but your typescript suggests you were running on a RHEL system. If so, that's the problem - this PR is only for CentOS 7.

@gorozco1 - I'd love this to be merged as this PR has been open waaaaaaaay too long imho. We need atleast 1 independent test of it though. Do you want to give it a go?

Hi @jodh-intel - The system was built with Centos 7.0.  I rebuilt it prior to submitting my findings to make sure it wasn't something I had done.

@jodh-intel I just tried the last bits of this PR and it works as expected. lgtm

Hi @tcthorn-intel - ok. Although it isn't stipulated in the doc, there is a tacit assumption that this be run on a fully-updated system. The script does update all packages with yum, but maybe the problems you are seeing somehow result from starting with a 7.0 system (rather than a more recent 7.3 one) without a reboot?
@gorozco1 - thanks for the ack. Just need one more from an approver...

LGTM

Hi @jodh-intel - I can retry with 7.3 if you'd like.  However, not to be a pain or anything - if that's the cause of the issue I saw, I would recommend stating somewhere near the top the exact release that it has been tested on.  At present it just says "CentOS version 7", and that implies that it works either only on 7.0, or all of the 7 series (which would include 7.0)..  Having spent time in both validation and customer support groups - if it's left undefined, someone will try it with the random 7.x install they have just laying around and fully patch it to the latest CentOS packages available for that release (per instructions), which may or may not work.
That's just my $.02 though.

It was tested in CentOS Linux release 7.3.1611

@gorozco1 Thanks!


python312Packages.python-socketio: 5.11.1 -> 5.11.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python312Packages.python-socketio is: Python Socket.IO server and client
meta.homepage for python312Packages.python-socketio is: https://github.com/miguelgrinberg/python-socketio/
meta.changelog for python312Packages.python-socketio is: https://github.com/miguelgrinberg/python-socketio/blob/v5.11.2/CHANGES.md
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 5.11.2 with grep in /nix/store/l84kqdgsf56ry6zc8zb928zxgd4bim57-python3.12-python-socketio-5.11.2
found 5.11.2 in filename of file in /nix/store/l84kqdgsf56ry6zc8zb928zxgd4bim57-python3.12-python-socketio-5.11.2

Rebuild report (if merged into master) (click to expand)

29 total rebuild path(s)

29 package rebuild(s)

First fifty rebuilds by attrpath
appdaemon
faraday-agent-dispatcher
gdbgui
home-assistant-component-tests.ambient_station
home-assistant-component-tests.control4
onionshare
onionshare-gui
pgadmin4
pgadmin4-desktopmode
powerhub
python311Packages.aioambient
python311Packages.flask-socketio
python311Packages.pycontrol4
python311Packages.python-socketio
python311Packages.ripe-atlas-cousteau
python311Packages.sisyphus-control
python311Packages.tago
python311Packages.tagoio-sdk
python311Packages.uptime-kuma-api
python312Packages.aioambient
python312Packages.flask-socketio
python312Packages.pycontrol4
python312Packages.python-socketio
python312Packages.ripe-atlas-cousteau
python312Packages.sisyphus-control
python312Packages.tago
python312Packages.tagoio-sdk
python312Packages.uptime-kuma-api
ripe-atlas-tools

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/l84kqdgsf56ry6zc8zb928zxgd4bim57-python3.12-python-socketio-5.11.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python312Packages.python-socketio https://github.com/r-ryantm/nixpkgs/archive/d1c6b13aee7c8b5261bb2aeb6efe36ee266469df.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/d1c6b13aee7c8b5261bb2aeb6efe36ee266469df#python312Packages.python-socketio

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/l84kqdgsf56ry6zc8zb928zxgd4bim57-python3.12-python-socketio-5.11.2
ls -la /nix/store/l84kqdgsf56ry6zc8zb928zxgd4bim57-python3.12-python-socketio-5.11.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

56 packages built:

appdaemon
appdaemon.dist
faraday-agent-dispatcher
faraday-agent-dispatcher.dist
gdbgui
gdbgui.dist
home-assistant-component-tests.ambient_station
home-assistant-component-tests.control4
onionshare
onionshare-gui
onionshare-gui.dist
onionshare.dist
pgadmin4
pgadmin4-desktopmode
pgadmin4-desktopmode.dist
pgadmin4.dist
powerhub
powerhub.dist
python311Packages.aioambient
python311Packages.aioambient.dist
python311Packages.flask-socketio
python311Packages.flask-socketio.dist
python311Packages.pycontrol4
python311Packages.pycontrol4.dist
python311Packages.python-socketio
python311Packages.python-socketio.dist
python311Packages.ripe-atlas-cousteau
python311Packages.ripe-atlas-cousteau.dist
python311Packages.sisyphus-control
python311Packages.sisyphus-control.dist
python311Packages.tago
python311Packages.tago.dist
python311Packages.tagoio-sdk
python311Packages.tagoio-sdk.dist
python311Packages.uptime-kuma-api
python311Packages.uptime-kuma-api.dist
python312Packages.aioambient
python312Packages.aioambient.dist
python312Packages.flask-socketio
python312Packages.flask-socketio.dist
python312Packages.pycontrol4
python312Packages.pycontrol4.dist
python312Packages.python-socketio
python312Packages.python-socketio.dist
python312Packages.ripe-atlas-cousteau
python312Packages.ripe-atlas-cousteau.dist
python312Packages.sisyphus-control
python312Packages.sisyphus-control.dist
python312Packages.tago
python312Packages.tago.dist
python312Packages.tagoio-sdk
python312Packages.tagoio-sdk.dist
python312Packages.uptime-kuma-api
python312Packages.uptime-kuma-api.dist
ripe-atlas-tools
ripe-atlas-tools.dist

Maintainer pings
cc @Mic92 for testing.

Done in #300782.


Test and fix bug in execute(String sql)

Right now, if execute(String) fails when a transaction is open, then you aren't able to ever roll back the transaction and start again. Replacing "execute" with "executeUpdate" makes the problem go away.
I'm not 100% convinced my fix is right here, but it does make the test pass!

Actually the problem affected prepared statements as well: I've pushed a fix to that too

Looks good. Thanks for the fix!


gnomeExtensions.EasyScreenCast: fix build

It needs intltool-extract.
Description of changes

Things done

Built on platform(s)

[X] 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/)
23.05 Release Notes (or backporting 22.11 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

[X] Fits CONTRIBUTING.md.

I'm surprised this extension is still useful - Gnome's screenshot tool is capable of screen recording nowadays.

I do not use it. Just notice it fails to build in my pr to bump mutter. https://github.com/NixOS/nixpkgs/pull/223106#issuecomment-1484038775

Thanks.


Allow condition in GILStatNode

@scoder
Implementation for issue 2579.
Allowing statements such as:
with nogil(numeric is int):
  <some code>

which will either run inside a nogil block if condition is True, or will run without a nogil block if the condition is False.
Original form still works the same (with nogil: ...).
Still missing: errors tests.

For error tests, look at the ones in tests/errors/. They use # mode: error and list their compiler error messages in a string constant (which is actually parsed as text lines and not evaluated). Just write broken code in there, let Cython report the error messages, and copy them into the file to "fix" the test.

BTW, there is apparently a Py2 distutils problem in the test runner that I just fixed in master. If you merge that back (or rebase your branch), then the tests should be ok.

@scoder rebased on latest master.

@scoder
I'm writing the errors tests.
One of the tests involves calling a function in the condition (e.g. with nogil(foo(x)): ...) so that the condition is not constant.
I get the following exception:
Traceback (most recent call last):
  File "/home/noam/dev/cython/Cython/Compiler/Visitor.py", line 180, in _visit
    return handler_method(obj)
  File "/home/noam/dev/cython/Cython/Compiler/Visitor.py", line 514, in visit_SimpleCallNode
    if function.type.is_pyobject:
AttributeError: 'NoneType' object has no attribute 'is_pyobject'

It seems that during the CythonTransform, the condition of the GilStatNode which is a SimpleCallNode is visited. For some reason the type of the function is missing.
I am guessing that cython expects the condition of the GilStatNode to already be without a gil so that a functioned called in this scope should be a cdef / cpdef thus having a type.
I defined foo as a normal python function without a return type.
Does my analysis make sense?
What could be a solution?
(note that we still want the compiler to raise an error in this case, but a different error - Non-constant condition for GilStatNode error)

I believe the same thing happens with with nogil(x < 10): ... but in PrimaryCmpNode with a PrimaryCmpNode.
Traceback (most recent call last):
  File "/home/noam/dev/cython/Cython/Compiler/Visitor.py", line 180, in _visit
    return handler_method(obj)
  File "/home/noam/dev/cython/Cython/Compiler/Optimize.py", line 1262, in visit_PrimaryCmpNode
    None, node, True)
  File "/home/noam/dev/cython/Cython/Compiler/Optimize.py", line 1154, in extract_common_conditions
    not_in, var, conditions = self.extract_conditions(condition, allow_not_in)
  File "/home/noam/dev/cython/Cython/Compiler/Optimize.py", line 1104, in extract_conditions
    elif not cond.is_python_comparison():
  File "/home/noam/dev/cython/Cython/Compiler/ExprNodes.py", line 12342, in is_python_comparison
    and (self.has_python_operands()
  File "/home/noam/dev/cython/Cython/Compiler/ExprNodes.py", line 12697, in has_python_operands
    return (self.operand1.type.is_pyobject
AttributeError: 'NoneType' object has no attribute 'is_pyobject'

Ah, right. You have to call self.condition.analyse_declarations(env) in GILStatNode.analyse_declarations(), and self.condition = self.condition.analyse_expressions(env) in GILStatNode.analyse_expressions(), before the base class upcall (I'd say). Those two methods are needed by the respective declarations/expression analysis transforms and use explicit tree traversal since they often need to do special things with their child nodes.

See? Good to have error tests. :)

Where exactly should self.condition = self.condition.analyse_expressions(env) go?
Because we probably want it to be evaluated before the GilStatNode changes the state of the GIL.
Is this okay?
    def analyse_expressions(self, env):
        env.use_utility_code(
            UtilityCode.load_cached("ForceInitThreads", "ModuleSetupCode.c"))
        self.condition = self.condition.analyse_expressions(env)  # <<<<<<<
        was_nogil = env.nogil
        env.nogil = self.state == 'nogil'
        node = TryFinallyStatNode.analyse_expressions(self, env)
        env.nogil = was_nogil
        return node

Yes, exactly. It's the first child of the node that gets evaluated, before the nodes changes the GIL state. (That's also a reason for it to appear first in child_attrs, which is traversed in order.)

I've added some documentation about the AST to the HackerGuide in the wiki:
https://github.com/cython/cython/wiki/HackerGuide#the-parse-tree-ast
Updates, comments etc. welcome (although not in this ticket :) ).

Documentation looks good, very clear.
What about documentation for Cython users regarding the conditional with gil/nogil statement?
Should I do that as part of this PR or will it be done for all the features of Cython 3.0.0 before it is released?

I'm yet to see a case where documentation magically appears out of thin air when we announce a release date. ;o)
It would be great if you could add a feature description to the nogil docs.

Should examples involving fused types be documented in the nogil docs or in the fused types docs?

Excellent question, the fused types docs. Mentioning them elsewhere would just be confusing (pun half-intended).

The error tests look good, BTW. I think this is ready to be merged when the docs are done.

Thx.
Do you think I should add a test in which the condition is a compile-time definition?

Shouldn't make a difference, but well, it's a use case, so why not have it covered. Feel free to swap some of the True/False constants with a FREE_GIL constant or so. Shouldn't be more than that.

@scoder how can I compile the docs into html (or something else) to check that my ref annotations work?

@scoder waiting for your input. I think everything should be covered now.

how can I compile the docs into html

If you have Sphinx installed, you can run make -C docs html.

Very nice feature, thanks!


Article page layout

The current line length we have in place is too narrow, I'm currently measuring it at 590 pixels (on my desktop browser).
The line length on Medium is 670 pixels and on Wired its 620 pixels.
We probably should be aiming for 670 but bear in mind that our page layout / style is closer to Wired than Medium.
https://www.wired.co.uk/article/bamboo-architecture

how about this

Let's lean on the Tailwind blog layout and the Tailwind Typography plugin to resolve this issue.

Make the paragraph text 30 pixels wider by adding to the left hand side...

Make this content narrower so that it fits within 900 pixels. It's okay if there is a tiny bit of text overlapping the image...

This section can be a tiny bit wider occupying 1040 pixels...

Article-list and Notes-list can occupy 700 pixels to make it consistent with the paragraph text within articles...

I think it would be nice to have both the header section and footer section 600 pixels high...

besides the height of the footer and header ( I could make it 600px without breaking the entire layout) everything else should be fixed , width is around 700px for article , articles list and notes list

The only thing outstanding here is the height of the header and footer...
https://github.com/kelvinlockwood/kelvinlockw.xyz/issues/22#issuecomment-808894168


Add description and icon to environment cards (#2109)

Pull request opened by the merge tool on behalf of #2109

Merged in 9bd92a8946d80c2bea1f90cb14d1585835587ed8


Fix for --rebase failing on repositories with a lot of branches

A repository I'm migrating has enough branches where git branch displays them in multiple columns, which seems to break svn2git --rebase. Adding the --no-column flag ensures there will be just one branch listed per line, which fixed the issue for me locally.

Sorry. I completely missed this. Is the fix no longer appropriate? Or did you just get tired of it being open for so long? :-/

I closed it because I figured it wasn't going to be merged and I was cleaning out old forks / PRs, but I can resubmit it if you'd like. GitHub won't let me simply reopen it seems because the fork doesn't exist anymore.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


How to disable usage of vcr/cassetes

Hello!
This question seems silly I think but I can't find any documentation on the matter.  How does one then disable or turn off usage of vcr/cassettes without modifying the code?  I sort of get the usage and purpose of VCRpy but still wonder, "then what?".
Ultimately I want my HTTP REST API tests to test the actual REST API.  So once I've sprinkled in some decorators and sped up the running of my tests (or 1 test in my case :) ), then what?  I don't know about ya'll but I don't code that fast to worry about being throttled or blocked.  So clearly I am missing some understanding.
How do I tell VCRpy (config?), "Okay, now for real, stop using the cassettes and really hit the actual API."
I've really enjoyed learning about VCRpy so please, advise?  Thank you in advance.

Seems that you need to set the VCR mode all, see the documentation here : https://vcrpy.readthedocs.io/en/latest/usage.html#record-modes
Although, the aim of this project is to build tests that interact with the network but in a reliable and deterministic way.  With vcrpy, your tests will always be deterministic after the first run and prevent regression, for instance updating a request body by mistake. Hope it answers your question ☺

Hi,
Personally I use vcrpy in conjunction with a pytest plugin.

https://github.com/ktosiek/pytest-vcr
https://github.com/kiwicom/pytest-recording

In the case of the first one:
# Cache cassettes once
pytest --vcr-record=once

# Turn off network and use only recorded cassettes
# Add this as a default in your tox.ini, setup.cfg or pytest.ini
pytest --vcr-record=none

# Disable cassettes and use normal network
pytest --disable-vcr

As Arthur mentioned, there is the benefit of faster tests, and checking for regressions in how your requests are composed. Or detecting new requests firing off that shouldn't.
I can also see the point of disabling vcrpy and to be honest I also do a full run of pytest --disable-vcr during my lunch break every now and then as well.
I'm going to close this issue as resolved but please feel free to comment again if there are more questions.

My apologies for not replying sooner.  Thank you both for the insights!  I guess I misunderstood the purpose of VCRpy.  It seems that VCRpy is to speed up the execution of your REST API tests, if you don't want to hit the real/actual API endpoints.  But also to buffer yourself from others' or 3rd party/external API endpoints that may not really be relevant as part of your company's API endpoints?
So create VCRpy cassettes for some API endpoints but not all if the goal is to test your own/company's endpoints?
I appreciate the comments and agree with closing this ticket.  Thank you!
-Humberto

is there a combination of   --disable-vcr and --block-network that can be offered? To test that the test fails when network is not available and it's not using vcr?


Readme documentation updated

Here comes our documentation proposal for your project.
This work has been done by Julien Moulin, Stéphane Mangin, Robin Collet and Maxime Meunier, as part of our MIAGE software development project.
This work  has been supervised by Mathieu Asher.
We think it could help to better understand your work on the PCM project.
Best regards,

Hi,
I integrated some of your modifications in the main Readme.md file. For the other contributions, I copied them in the Wiki which I think is a better place for such detailed documentation.
The support of redirection in Wikipedia pages is a really nice idea. Thanks for that.

It's a pleasure to see our work beeing approved ;)
By the way, you probably saw that the redirect fonctionnality isn't efficient enough in my opinion (regex analysis followed by replace calls). Time was missing to have a better approach at this moment. I'll try to give a new proposal when possible.
Concerning the documentation, we could provide the main file which has be done in LaTeX if you want. The markdown was just converted from it.
If you have any question about our work, please ask.

For the regex, a possible solution is to access the inner group (.*?) instead of taking the entire matching string.
Can you create an issue for this optimization? I may work on that and it would be better to synchronize our effort.


Dbms docs sec 3 4 5 added

Related Issue
Fixed : #709
i have added following section under DBMS tutorials

using

add diagram using mermaid

add table according to topic more readable to user

rule with example and Diagram never exist before

add algebra like professionals

_category.json according to folder

Description
[Please include a brief description of the changes or features added]
Type of PR

[ ] Bug fix
[x] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / Videos (if applicable)

Checklist

[x] I have performed a self-review of my code.
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

Additional Context
[Include any additional information or context that might be helpful for reviewers.]
Resources for Guidance
Here are some resources that may be helpful as you contribute to CodeHarborHub:

Code Harbor Hub Community Features
Docusaurus Documentation
React.js Documentation
Markdown Guide
MDX Documentation
Mermaid Documentation

Resources for DSA Features on Our Site:

Tabs: Switch Languages
Line Numbering
Math Equations

hey @Ajay-Dhangar , i have added sec 3 -4 to DBMS tutorials please make it level 3
using

add diagram using mermaid

add table according to topic more readable to user

rule with example and Diagram never exist before

add algebra like professionals

_category.json according to folder


Upload interface

This PR redesigns the dataset and project management dialog boxes.
This redesign includes the ability to upload datasets to the user's Private directory in girder, and manage its privacy (similar to how we could manage projects in Girder before).
Fixes #162 and #285

Current coverage is 60.39% (diff: 100%)

Merging #328 into master will not change coverage

@@             master       #328   diff @@
==========================================
  Files            25         25
  Lines           654        654
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            395        395
  Misses          259        259
  Partials          0          0

Powered by Codecov. Last update 49270dc...edaab7a

LGTM!

Closes #328

Closes #285

Closes #162


fix(kit): use break-all for LineClamp

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows Conventional Commits
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

What is the current behavior?
Closes #2233

Is it expected for multi-line text ? (it breaks word "Name")

Or should we make break-all only for single-line text ?

Only for single line

@waterplea @nsbarsukov sorry, fixed


Run tests with our own default strategy

Between 4 and 16 threads. (Or more, on a huge box.)
All daemon threads for clean exit
Core threads timeout so we don't leak between tests
Remove DefaultStrategy in IoSpec

Nope.  This approach isn't going to let us clean up schedulers.


Light Sensor

Adds a light sensor everywhere.
Also improves the LiveGraph, though I'm open to suggestions for changes. It's not perfect.
TODO:

v1 implementation (identical?)
Update examples (again)

I'll leave you with this, but with the updates to the live data classes we need to have all of the corresponding labels changed throughout the rest of the program, which is causing the build errors currently.


[WC-2516]: Popup menu overflow issue

Pull request type

Description

Although, you made changes for tooltip too, that will need a release.


Update Cosenary Instagram-PHP-API version?

Right now, it's still ~2.0, while the master branch of Cosenary Instagram-PHP-API has some nice updates like getRateLimit()

We're using the latest version of @cosenary's Instagram package already. ~2.0 means it will take all version up to 3.0. The latest version of @cosenary's Instagram package is 2.3.

So the latest update in @cosenary's Instagram package master branch not included until he releases version 2.4 or 3.0?

Yes, that is correct. Hopefully it will be soon since Instagram has updated their API recently.


aapt2 for arm64(android)

Hi, do you have a clue how to build an aapt2 for arm64 arch?

Hi @Barterio , looking at the build script for aapt2 (below), the process seems to be similar to how I did the original aapt.
https://android.googlesource.com/platform/frameworks/base/+/android-9.0.0_r33/tools/aapt2/Android.bp
Here is the patch file I created for aapt.
https://github.com/thejunkjon/android-tools/blob/master/patch/android-9.0.0_r33/frameworks/base/%2B/tools/aapt/Android.bp.patch
If I have time, I'll try to post the binaries for aapt2 as well.

Hi @Barterio, I was able to build aapt2 for arm64.
https://github.com/thejunkjon/android-tools/blob/master/build/android-9.0.0_r33/aapt2/arm64/bin/aapt2
Please give this a try.

Hi @thejunkjon, Thanks for your time and attention for my request.
I will test it and tell you about results.
Can I contribute somehow to this process?

Hi @Barterio, I was able to build aapt2 for arm64.
https://github.com/thejunkjon/android-tools/blob/master/build/android-9.0.0_r33/aapt2/arm64/bin/aapt2
Please give this a try.

Hi, I am also interested in aapt2 for arm64, I am running android studios on ARM-Linux. Can this binary be run on arm linux?

Hi @JonForShort, i want some help, because projects with newer buildTools version needs a new version of aapt2 and i just found android 9 and 11 aapt2 builded por aarch64/arm64. could you help me?
I`m trying to use my cellphone to setup a Android Development Enviroment on a Snapdragon 8 Gen 1. I sucessuly run Android Studio and Visual Studio Code Server, but i get some problem when using a new version ok build Tools,

Can't believe I stumble upon this 🙏 Thank you so much @JonForShort JonForShort
How do ya'll tell Gradle to use the customize downloaded aapt2 binary? I saw this SO post
but looks like android.aapt2FromMavenOverride=path to custom aapt2 binary is deprecated.

You can also use qemu to emulate x86_64 binaries on aarch64. If you use binfmt, compiling an app just works, even with aapt2 from maven.
Just register qemu as interpreter for x86_64 binaries like this: https://github.com/tonistiigi/binfmt?tab=readme-ov-file#installing-emulators


New Provider: FirstEnergy and subsidiaries

FirstEnergy and it's subsidiaries are using opower. Creating this issue to support the addition of FirstEnergy.
I've done some of the initial work to support this. Will continue over the course of the next few days
login page - https://www.firstenergycorp.com/content/customer/log_in.html
or
https://www.firstenergycorp.com/log_in.fecorplogin.html
https://www.firstenergycorp.com/my_account/analyze-usage.html
First Energy: Ohio Edison uses feoe.opower.com
Others appear to be: (need verified)
(?) https://fepa.opower.com/
MetEd(?) - https://feme.opower.com/
PennPower (?) - https://fepp.opower.com/
(?) - https://fepn.opower.com/
ToledoEdison (?) - https://fete.opower.com/

I think it's returned as an oauth bearer token? (not a webdev)
POST to https://www.firstenergycorp.com/log_in.fecorplogin.html
login:<USERNAME>
password:<PASSWORD>

Response from https://www.firstenergycorp.com/my_account/analyze-usage.html?cache=no
<script>
var currentWidgetOpco = 'FEOE';

window.addEventListener('opower:unauthorized', function(event) {
  var authorize = event.detail.authorize;
  var authorization = {
   accessToken: '<TOKEN>'
  }
  authorize(null, authorization); // Do not call if user is logged out
});

Used with GET
authorization: Bearer <TOKEN>
opower-selected-entities: ["urn:opower:customer:uuid:<UUID>"]

If I POST the login and passwd to the log_in.html page, I should just be able to GET the analyze-usage.html page to pull the bearer token after some specified waiting period for processing, right?
I'm mostly stumbling in the dark here.
Done some python, but never any web stuff, particularly with async/await threading.


Why did you come to this conclusion?


370 implement writing nexus files for rotation scans

Fixes #370
Implements writing of nexus file for rotation scans
Requires GDA changes: current_energy parameter renamed to current_energy_ev
To test:

Run tests

Could you rebase this once https://github.com/DiamondLightSource/python-artemis/pull/696 is merged so that we can see the woods through the trees. Issues from that PR that are fixed in this:

Refactor the two create_gonio functions in write_nexus to be share a common function
_get_data_shape_for_vds can probably be generic between each writer
It would be nicer to have an abstract function to get the gonio that each subclass needs to implement. It's more explicitly obvious it's needed then

closing in favour of https://github.com/DiamondLightSource/python-artemis/pull/736


Can't use module with my nuxt 3 project getting error

Hello,
I have trying to use this eslint module my nuxt 3 project, but getting error mentioned in the screenshot.
I have eslint and @nuxtjs/eslint-module installed using npm, and added to the nuxt.config.ts file but still getting this error.

I had the same problem with nuxt 3.3.3
I hope it gets fixed soon

Hi @sarwan920, @huynvebisolvn
Are you using eslint-module version 4?

I had to create an eslint config file (like .eslintrc) to make it work.

To solve this issue, you need to create ESLint config file in your root. Here is an example:
File name: .eslintrc
{
  "root": true,
  "extends": ["@nuxtjs/eslint-config-typescript"],
  "rules": {
    "vue/multi-word-component-names": false
  }
}

It is necessary to create the eslint configuration file
https://eslint.org/docs/latest/use/configure/configuration-files

@ricardogobbosouza @tanerijun I am having a different error.
.eslintrc
{
    "root": true,
    "extends": ["@nuxtjs/eslint-config-typescript"],
    "rules": {
      "vue/multi-word-component-names": false
    }
}

package.json

nuxt.config.ts

ERROR

Hi @whimsicaldreamer
Have you tried reinstalling the dependencies?
rm -rf node_modules package-lock.json yarn.lock pnpm-lock.yaml

npm install
# yarn install
# pnpm install

Yes @ricardogobbosouza, multiple times


Error 3003: Not a mix-integer problem

I get a error that my optimization formulation is not a mix-integer problem but it is solved anyways. Here is a simple example showing it.
m = Model(solver = CplexSolver())

@variable(m, 0 <= x <= 2 )
@objective(m, Min, (x-1)^2 + 10)
status = solve(m)

println("Objective value: ", getobjectivevalue(m))
println("x = ", getvalue(x))

And the output is:
julia> :Min

julia> Tried aggregator 1 time.
QP Presolve eliminated 0 rows and 1 columns.
All rows and columns eliminated.
Presolve time = 0.00 sec. (0.00 ticks)
Barrier time = 0.00 sec. (0.00 ticks)

Total time on 8 threads = 0.00 sec. (0.00 ticks)
CPLEX Error  3003: Not a mixed-integer problem.
:Optimal

julia>
julia> Objective value: 10.0

julia> x = 1.0

I can reproduce this. As you observe, this doesn't really affect anything, but we should fix anyway. It's likely occurring when we query the solver for solution information after it terminates.

Error seems to be occurring here: https://github.com/JuliaOpt/JuMP.jl/blob/3e261f8ba7318a83292a2374ce317864ac1ea1a8/src/solvers.jl#L251

Closing since we won't be fixing this in the MPB wrapper. The MOI wrapper now calls the objective bound for MIP problems, or the objective value for linear problems.


change "protein localization to cell division site after cytokinesis"

I requested this term.
GO:0098841	protein localization to cell division site after cytokinesis
but I would like to change it.
The "localization" is involved in "cell separation after cytokinesis" but I am not sure if the protein is localized there before during or after cytokinesis takes place.
The term would be better as
protein localization to cell division site involved in cell separation after cytokinesis
Could the term be changed (it has no annotations yet and this was the intended meaning).
Once that is  done I will request the regulation terms using  the TG template

Hi Val, You should be able to make this with the TermGenie inolved in (BP BP) template.  I'll then merge the resulting term with the old term.
Cheers,
David

OK, I did this


webhooks: move to admissionregistration.k8s.io/v1

With controller-gen 0.4.0, admissionregistration defaults to v1 API.
Fixes: #364
Note: I've manually tweaked make generate  output so keeping this in draft still.
Signed-off-by: Mikko Ylinen<EMAIL_ADDRESS>

Codecov Report

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

@@           Coverage Diff           @@
##           master     #445   +/-   ##
=======================================
  Coverage   58.36%   58.36%
=======================================
  Files          27       27
  Lines        2337     2337
=======================================
  Hits         1364     1364
  Misses        916      916
  Partials       57       57

Impacted Files
Coverage Δ

pkg/fpgacontroller/patcher/patchermanager.go
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 9bdf3a4...fe2cf2b. Read the comment docs.

This looks good. For OLM I had to remove CA injection for the /convert webhooks too as they are not enabled at the moment.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #445   +/-   ##
=======================================
  Coverage   58.30%   58.30%
=======================================
  Files          30       30
  Lines        2094     2094
=======================================
  Hits         1221     1221
  Misses        808      808
  Partials       65       65

Impacted Files
Coverage Δ

pkg/fpgacontroller/patcher/patchermanager.go
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 bda8285...f0a6302. Read the comment docs.


Harmonize the help output

What have you changed? (mandatory)
Tried to harmonize the --help output of all tools and use a common style/tense
What are the type of the changes? (mandatory)

Improvement (non-breaking change which is an improvement to an existing feature)

How has this PR been tested? (mandatory)
CI
Does this PR affect documentation (docs) update? (mandatory)
Nope
Does this PR affect tidb-ansible update? (mandatory)
Nope
Refer to a related PR or issue link (optional)
Benchmark result if necessary (optional)
Add a few positive/negative examples (optional)

/run-integration-tests

@hicqu PTAL

/test


Changes for executing app-build-suite in CI

Towards giantswarm/giantswarm#14279
Tested with giantswarm/giantswarm-todo-app#22 and also related changes in giantswarm/architect-orb#203
Changes:

added a destination configuration option to specify the --destination flag of helm package
changes made to Chart.yaml are now restored after running except keep-chart-changes config option is specified
annotation url generation depending on catalog-base-url config
annotation copying to Chart.yaml and ...-meta/main.yaml
copying of files into the ...-meta directory

@piontec could you take another look? The changes in this PR now include (updated also the initial comment)

added a destination configuration option to specify the --destination flag of helm package
changes made to Chart.yaml are now restored after running except keep-chart-changes config option is specified
annotation url generation depending on catalog-base-url config
annotation copying to Chart.yaml and ...-meta/main.yaml
copying of files into the ...-meta directory


feat - integrated translation

Ionic version:  (check one with "x")
[ ] 1.x
[x] 2.x
I'm submitting a ...  (check one with "x")
[ ] bug report
[ ] feature request
[x] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
Ionic is in English.
Lets say I have a searchbar, looking like:

The search placeholder would be needed to change from view every time
Or lets say I wanna do one of those:
let alert = this.alertCtrl.create({
	title: "New Friend!",
	subTitle: "Your friend, Obi wan Kenobi, just accepted your friend request!",
	buttons: ["OK"]
});

let loader = this.loadingCtrl.create({
	content: "Please wait...",
	duration: 3000
});

let toast = this.toastCtrl.create({
	message: "User was added successfully",
	duration: 3000
});

Here is how I would do the first one:
let alert = this.alertCtrl.create();
let lock = 3;
let unlock = () => {
	lock = lock--;
	if(lock == 0)
		alert.present();
};

this.translate.get("myPage.alert.newFriend").subscribe(res => {
	alert.setTitle(res.title);
	unlock();
});

this.translate.get("myPage.alert.subTitle").subscribe(res => {
	alert.setSubTitle(res.title);
	unlock();
});

this.translate.get("ionic.alert.buttons.ok").subscribe(res => {
	alert.addButton({
		text: res,
		handler: this.close.bind(this)
	});
});

Or write that as it's own method, and do:
const around = {
    title: "myPage.alert.newFriend",
    subTitle: "myPage.alert.subTitle",
    button: "ionic.alert.buttons.ok"
};

this.translateMultiple(around, (res) => {
    let alert = this.alertCtrl.create();
    alert.setTitle(res.title);

    alert.addButton({
        text: res.button,
        handler: this.close.bind(this)
    });

    alert.present();
});

Which is uglier (and more errors prone) than:
let alert = this.alertCtrl.create({
	title: "myPage.alert.newFriend",
	subTitle: "myPage.alert.subTitle",
	buttons: ["ionic.alert.buttons.ok"]
});

I believe ionic should have it's own i18n folder, and it should (on build) merge it's i18n with the user's i18n if any.
So the user can still override words, all of the iOS/Android saved words are regulated, less hassle, and if a user writes a title or whatever that does not show on translation, it would just return the word they wrote. No harm.
I went over all of the ionic components just to see if it's gonna be a major hassle, and I think it is not.
You can inject the translation service on demand, and use it wherever and however you want. This regulates application globalisation and makes languages easier to make.
And another reason to have this, is that all of the apps will feel the same. same translations, same words. and the community can help a lot, translating to languages they know.
Also, by going over the ionic major components, here is what I have as an ionic i18n english file:
{
	"ionic": {
		"globals": {
			"cancel": "Cancel",
			"share": "Share"
		},
		"alert": {
			"buttons": {
				"OK": "Ok",
				"save": "Save"
			}
		},
		"loader": {
			"loading": "Please wait"
		},
		"ionSearchbar": {
			"search": "Search"
		}
	}
}

It would be a great step for ionic to take imo, and it is not even difficult or complicated.

Hello! Thanks for the feature request. I'm going to move this issue over to our internal list of feature requests for evaluation. We are continually prioritizing all requests that we receive with outstanding issues. We are extremely grateful for your feedback, but it may not always be our next priority. I'll copy the issue back to this repository when we have begun implementation. Thanks!

This issue was moved to driftyco/ionic-feature-requests#136


Fix the bug of releasing the segment when there are still threads working on it

Issue:
When we execute a query, the main thread holds the segment reference,
and avoid the segment getting released during the query execution.
When the query timed out, the main thread will return the exception
and release the segment reference without waiting for all the worker
threads finish the work. This can cause severe issue when segment get
released due to segment deletion/refresh while worker threads are
still accessing it, even JVM crash.
Solution:
Use a Phaser for the query execution to ensure when the main thread
returns the result, all the worker threads are not accessing the
segment (not scheduled or done). To shorten the period of waiting,
check the interrupt flag when the operator starts processing the next
block, and interrupt the execution if the thread is interrupted.
Applied the solution to both planning phase and execution phase, and
also added tests to check the behavior.

Codecov Report

Merging #4764 into master will increase coverage by 7.85%.
The diff coverage is 74.07%.

@@             Coverage Diff             @@
##             master   #4764      +/-   ##
===========================================
+ Coverage     49.95%   57.8%   +7.85%
  Complexity        4       4
===========================================
  Files          1209    1209
  Lines         64938   64964      +26
  Branches       9458    9463       +5
===========================================
+ Hits          32437   37551    +5114
+ Misses        29942   24556    -5386
- Partials       2559    2857     +298

Impacted Files
Coverage Δ
Complexity Δ

...a/org/apache/pinot/core/operator/BaseOperator.java
21.42% <0%> (-3.58%)
0 <0> (ø)

...rg/apache/pinot/core/operator/CombineOperator.java
69.44% <66.66%> (+8.83%)
0 <0> (ø)
:arrow_down:

...he/pinot/core/operator/CombineGroupByOperator.java
83.69% <77.77%> (+7.83%)
0 <0> (ø)
:arrow_down:

...t/core/operator/CombineGroupByOrderByOperator.java
79.8% <77.77%> (+7.08%)
0 <0> (ø)
:arrow_down:

...va/org/apache/pinot/core/plan/CombinePlanNode.java
78.68% <87.5%> (+1.9%)
0 <0> (ø)
:arrow_down:

...inot/transport/netty/NettyTCPClientConnection.java
81.45% <0%> (-3.32%)
0% <0%> (ø)

.../helix/core/realtime/SegmentCompletionManager.java
70.42% <0%> (+0.63%)
0% <0%> (ø)
:arrow_down:

...ment/creator/impl/SegmentColumnarIndexCreator.java
88.8% <0%> (+0.72%)
0% <0%> (ø)
:arrow_down:

...t/creator/impl/SegmentIndexCreationDriverImpl.java
89.71% <0%> (+0.82%)
0% <0%> (ø)
:arrow_down:

...e/io/writer/impl/MutableOffHeapByteArrayStore.java
85.71% <0%> (+1.09%)
0% <0%> (ø)
:arrow_down:

... and 292 more

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 5439e77...36e603d. Read the comment docs.


href and isActive not set until attached()

I'm submitting a bug report

Library Version:
1.4.0

Please tell us about your environment:

Operating System:
all

Node Version:
all

NPM Version:
all

JSPM OR Webpack AND Version
all

Browser:
all

Language:
all

Current behavior:
Currently, the href and isActive properties of elements of the navigation array are not set until the attached() callback. This is no problem when you use two-way binding in the view because as soon as the href and isActive is set the view is updated. But when using one-time binding the href property stays undefined.
Because in SSR scenario's the two-way and one-way binding modes are replaced with one-time bindings, it's now an issue because the HTML that is returned from the server contains a navbar where the <a href="undefined">.
Related issue: https://github.com/aurelia/templating-router/issues/46#issuecomment-263903556
Gist.run: https://gist.run/?id=ad9271e0d60516e0d160d7ce47f18fef
notice that the links have href's of undefined, which is because href.one-time is used instead of href.bind

What is the expected behavior?
href and isActive should be set earlier

What is the motivation / use case for changing the behavior?
SSR only uses one-time bindings

I've tried the latest bits but it seems that the navigation array is empty when the one time bind happens. Could you reopen this issue or should I open a new one?


Assertion failed: CaptureThread == nullptr on CapturableSoundWave->ToggleMute(false)

Hello again,
I am experiencing an issue with the CapturableSoundWave->ToggleMute(false). If I set it to mute (CapturableSoundWave->ToggleMute(true)) it works just fine, but when I try to unmute it it crashes with a failed assertion of a Windows library.
I was able to pin it down to the call AudioCapture.StartStream() in Plugins/RuntimeAudioImporter/Source/RuntimeAudioImporter/Private/Sound/CapturableSoundWave.cpp line 282. (Crash logs below).
Can you replicate the behavior? Is this specific to my setup?
I'm using the plugin from the commit https://github.com/gtreshchev/RuntimeSpeechRecognizer/commit/47481b5a6b9f836f4e542b61c56adb380a71d091, also I'm on Windows 11 and using Unreal Engine 5.3.
PS: My current solution is to stop and restart the capture, like this:
CapturableSoundWave->StopCapture();
CapturableSoundWave->StartCapture(DeviceId);

Crash Logs

Assertion failed: CaptureThread == nullptr [File:D:\build\++UE5\Sync\Engine\Source\Runtime\AudioCaptureImplementations\Windows\AudioCaputureWasapi\Private\WasapiCaptureThread.cpp] [Line: 67]

UnrealEditor_RuntimeAudioImporter!UCapturableSoundWave::ToggleMute() [C:\P4\ricardo_mrkite-ricardo_TDY-RD_main_5595\Plugins\RuntimeAudioImporter\Source\RuntimeAudioImporter\Private\Sound\CapturableSoundWave.cpp:282]
UnrealEditor_Dreamia!UDreamiaCharacterComponent::SetAudioSessionMute() [C:\P4\ricardo_mrkite-ricardo_TDY-RD_main_5595\Plugins\Dreamia\Source\Dreamia\Private\DreamiaCharacterComponent.cpp:302]
UnrealEditor_Dreamia!UDreamiaCharacterComponent::execSetAudioSessionMute() [C:\P4\ricardo_mrkite-ricardo_TDY-RD_main_5595\Plugins\Dreamia\Intermediate\Build\Win64\UnrealEditor\Inc\Dreamia\UHT\DreamiaCharacterComponent.gen.cpp:211]
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_CoreUObject
UnrealEditor_UMG
UnrealEditor_UMG
UnrealEditor_UMG
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_Slate
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
UnrealEditor_ApplicationCore
user32
user32
UnrealEditor_ApplicationCore
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
UnrealEditor
kernel32
ntdll

Hi, can you please update the RuntimeAudioImporter plugin to the latest version? There was a fix about a month ago that addressed that issue: https://github.com/gtreshchev/RuntimeAudioImporter/commit/08fdb6dffb6140b72b5c96c753af6852643bd314

Resolved in https://github.com/gtreshchev/RuntimeAudioImporter/commit/08fdb6dffb6140b72b5c96c753af6852643bd314

Sorry to come back so late. I'll update you when I can. Thank you for the heads up.

Hey, just got the time to update the plugins. All is well! Great work.


Fixed the mapNumbers require call

Since mapNumber.js is a file, we should prefix it with "./", otherwise an error is thrown. :balloon:

Looks good to me, thanks!


Why not 3.2 branch

Is it possible to patch to 3.2 branch as well?

Everything is self contained, doing a port should be easy. However, I don't have the time to also maintain the 3.2 version, but if someone is willing to do it, I'm all for it.

Everything is self contained, doing a port should be easy. However, I don't have the time to also maintain the 3.2 version, but if someone is willing to do it, I'm all for it.

Just looking from the top, I see different conflicts and requirements that are tied to version 4, hope someone with good knowledge about the engine and time to backport this awesome job.

Just looking from the top, I see different conflicts and requirements that are tied to version 4, hope someone with good knowledge about the engine and time to backport this awesome job.


Small improvements

Hi @jexp ,
in this PR you will find the following small improvements:

Added Kafka Embedded for the tests
Externalized the configuration

@jexp ping :)

Ups sorry, didn't see your PR initially.


Temporary dict does not merge (overwrite) duplicated keys, resulting passing the same keyword multiple times.

The following code works fine at Python (CPython), but get error at Cython (v0.29.21) with Python 3.6.9.
def print_dict(**kwargs):
    print(kwargs)

def call():
    d1 = {"1": 1, "2": 2}
    d2 = {"1": -1, "3": -3}

    # This is OK
    cdef dict d = {**d1,**d2}
    # cdef d = {**d1,**d2}  # OK, too
    # d = {**d1,**d2} # OK, too
    print_dict(**d)

    # This got error -> TypeError: function() got multiple values for keyword argument '1'
    print_dict(**{**d1,**d2})

It seems that cython version does not merge (overwrite) duplicated keys of temporary dict before unpacked by ** operator.
Is this an intentional behavior or bug?
This code itself does not need cython features, but this kind of code is used inside my cython (.pyx) code.

It works for me on the current master branch but not on the latest 0.29 release.
This looks like a bug. It looks like it's getting (incorrectly) converted to print_dict(**d1, **d2).

Relevant commit is 0919f3e12f9e63add4b063d4ddb67ef0165e7ff9

@da-woods
Thanks for your reply.
I tested by myself and confirmed it is fixed at the master branch of version 3.0a5.
It seems this issue is duplicated with #2963, and will be fixed at the next major version 3.0, so that I close this issue.
Thank you for your support.

It seems this issue is duplicated with #2963, and will be fixed at the
next major version 3.0, so that I close this issue.

It looks like something that we could backport to 0.29.x, though.


Answer SIP call

Hi there, I'd like to know how can I answer a SIP call using the sdk...
what I'd like to do is attach a "controller" to a room created by a SIP call, and listen to room events and then do some stuff, but I'm facing the problem that the call isn't answered.
this is some code, which I hope provides more context:
### main.py
from livekit.agents import AutoSubscribe, JobContext, WorkerOptions, cli

async def entrypoint(ctx: JobContext):

    # Connect to the LiveKit room
    # indicating that the agent will only subscribe to audio tracks
    await ctx.connect(auto_subscribe=AutoSubscribe.AUDIO_ONLY)

    agent = TestAgent()

    await asyncio.sleep(1)

    agent.start(ctx.room)

if __name__ == "__main__":
    cli.run_app(WorkerOptions(entrypoint_fnc=entrypoint))

### TestAgent.py

class TestAgent:

    def start(self, room: rtc.Room):
        print("Room: ", room)

        @room.on("participant_connected")
        def on_participant_connected(participant: RemoteParticipant):
            self._on_participant_connected(participant)

        @room.on("sip_dtmf_received")
        def on_sip_dtmf(dtmf: rtc.SipDTMF):
            self._on_sip_dtmf(dtmf)

Thanks in advance for any help.

what do you mean by answer a SIP call using the sdk? for inbound calls, the agent gets dispatched automatically into the caller's room.

Yes, according to the logs in the console, both of the participants are connected to the room, but, in the practice the call keeps ringing, here's a diagram that shows what I mean:

and these are the logs:


Remove Java SDK

The Java SDK will be maintained independently from sawtooth-core. It is being
relocated to https://github.com/hyperledger/sawtooth-sdk-java
Signed-off-by: Ryan Beck-Buysse<EMAIL_ADDRESS>

Is there a PR in the new repo yet?


Update tensroflow cloud usage guide

Thank you for the review feedback. I updated the PR accordingly. Kindly let me know if any additional changes are required.

/hold

I was having difficulty generating assets with a place holder name for the users GCS bucket. To work around that I have commented out the code that tries to read the model from Google Cloud Storage, kindly let me know if that is an acceptable solution.  The user will have to uncomment the following to run it.
# trained_model = tf.keras.models.load_model(SAVED_MODEL_DIR)
# trained_model.summary()

The user will have to uncomment the following to run it.

That seems fine. The alternative would be to use a code block inside markdown (non-runnable). Both are fine. Thanks for the update!


Add a test to verify if the generated codes are up-to-date.

This test checks if the generated codes are up-to-date every time during cargo test.
I have confirmed that the test works by manually editing the grammar.ron file.
Closes #126
Thanks!

I have addressed those comments. Any more to do?
Thanks!

@matklad Will you do another review, please?


Initialize Sphinx docs

First step towards addressing #26.

Adds configuration & boilerplate for Sphinx documentation
Begins user guide based on @AlbertDeFusco's amazing description on #22

Note: Run with make -C docs live from project root
TODO

[ ] Add some dev information in repo for how to build the docs
[ ] Expand user guide to cover currently-implemented features

I've based this branch on lockfile and will revert to main once #22 is merged.

Codecov Report

Merging #30 (4f9622e) into lockfile (9fb45bc) will increase coverage by 0.20%.
The diff coverage is n/a.

:exclamation: Current head 4f9622e differs from pull request most recent head 5eb145b. Consider uploading reports for the commit 5eb145b to get more accurate results

@@              Coverage Diff              @@
##           lockfile       #30      +/-   ##
=============================================
+ Coverage     99.79%   100.00%   +0.20%
=============================================
  Files             8         6       -2
  Lines           480       115     -365
=============================================
- Hits            479       115     -364
+ Misses            1         0       -1

Impacted Files
Coverage Δ

conda_project/conda.py
100.00% <0.00%> (ø)

conda_project/cli/main.py
100.00% <0.00%> (ø)

conda_project/cli/commands.py
100.00% <0.00%> (ø)

conda_project/utils.py

conda_project/project_file.py

conda_project/project.py
100.00% <0.00%> (+0.44%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Update discord.md to add "subtext" and reflect linking changes.

Added support for newline "subtext" (not to be confused with inline subscript). The entry uses a custom style attribute to somewhat mimic the way the official Discord clients render the element in dark and light modes.
Marked linking as fully supported as the linked issue is closed and is no longer reproducible on a current official Discord client version. Though may want to consider marking it as partial support as linking doesn't work with emojis, which is intended behavior, likely due to how clicking on emojis already has a behavior assigned to it.

Thank you!


~sortcat sorting algorithm

Splitting from #184
~sortcat currently uses a somewhat naive sorting algorithm I believe. Either insertion or bubble sort.
For discord, every operation is basically an insertion, and this is by far the costliest part of the process. So an algorithm of "least edits" might be simpler?

Alternatively... Consider removing ~sortcat altogether


[utils] Force subprocess output to be read in text mode

In Python 3, subprocess output is read as binary data by default, which isn’t what we want.
Instead of reading process output as byte strings, then manually decoding them into strings, simply pass text=True to functions in the subprocess module, so that we get properly decoded strings right out the box.
This fixes places that forget to do the decoding step — most especially, the update-checkout script. That script prints Git output as byte strings, which leads to unreadable results.
Additionally, in shell.run, use the same pipe for capturing both stdout and stderr. The distinction is pretty pointless in this use case; however, keeping the two channels separate means that we lose the original ordering of printed messages, which does matter.

@swift-ci test

Ah, I didn't know Python 2.7 was still a thing on the Linux bots 😬
  File "/usr/lib/python2.7/subprocess.py", line 216, in check_output
    process = Popen(stdout=PIPE, *popenargs, **kwargs)

@swift-ci test

@swift-ci test

Before:
Updating '/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts'
/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts
b"Your branch is up to date with 'origin/main'.\n"b"Already on 'main'\n"
/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts

/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts
b'HEAD is now at cee3f49 Merge pull request #77 from apple/add-support-for-version-dir\n'

After:
Updating '/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts'
Updating '/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts'
/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts
Already on 'main'
Your branch is up to date with 'origin/main'.

/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts

/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts
HEAD is now at cee3f49 Merge pull request #77 from apple/add-support-for-version-dir

Stdout and stderr are still garbled; I think the process pool isn't opening new pipes for each process.

@swift-ci test

@swift-ci test

@swift-ci test

@swift-ci test

And now it looks like this:
[swift-installer-scripts]               Updating '/Users/ec2-user/jenkins/workspace/swift-PR-macos/branch-main/swift-installer-scripts'
[swift-installer-scripts]               + git checkout main
[swift-installer-scripts]               Already on 'main'
[swift-installer-scripts]               Your branch is up to date with 'origin/main'.

Thanks @lorentey!

It would be also nice if we stop printing all env variable with command line output.

@shahmishal Fix at https://github.com/apple/swift/pull/41778


Update *.lfcla.com console landing pages

Update *.lfcla.com console landing pages
Issue : https://github.com/communitybridge/easycla/issues/366

LGTM, @WillsonHG please take a look as well.


get_url_parameter does not work for small parameters that are included in other params

Describe the bug
The get_url_parameter generally works for long parameters, but if it's a small param that could be included in other parameters, it will not work properly.  While UTMs are the most common types of URL parameters, I've worked with companies that those &c, &e, and other tiny parameters in them that doesn't work with this macro.
Steps to reproduce
Use get_url_parameter on a URL where the characters of one parameter is also inside another parameter, such as:
select {{ dbt_utils.get_url_parameter(field='page_url', url_parameter='ce') }}
where page_url = 'https://www.dbt.com?utm_source=github'
Expected results
In the above example, I would expect the macro to not return a parameter, because it doesn't have &ce or ?ce in it.
Actual results
The macro would return github as the 'ce' parameter.
Screenshots and log output

System information
The contents of your packages.yml file:
Which database are you using dbt with?

[ ] postgres
[ ] redshift
[X] bigquery
[ ] snowflake
[ ] other (specify: ____________)

The output of dbt --version:
<output goes here>

Additional context

Are you interested in contributing the fix?

The solution I ended up using was to coalesce a split part of ?param= and a split part of &param= together.  That way it works for either of those situations, but it's not triggered by the param being at the end of another param.
I can submit a PR for that if everyone likes that solution?  It's ugly, but it works for all the use cases I deal with.

Thanks for raising this issue @Stephen986!
If you raise a PR with the solution you used, I can take a look at it.


Performance suggestion [2]

Hello
The second major problem with performance while fetching a large set of resource is that the _element search argument is applied after having fetch the whole result.
This means many fields are retrieved and then removed from the result.
Is there any way to remove them from the jdbc query ? For example by being able to get the _elements when building the query  ?
(I am speaking about server mode -> don't know how jpa works)
Thanks

Hi,
In case someone is interested, there is a way to get the _elements in the *Provider .
@Elements String theElements

Then this is easy to generate a SQL query to fetch only the needed elements


chore: upgrade projen

This PR upgrades projen to the latest version

Codecov Report

Merging #2 (3ba5f85) into master (b1cff76) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #2   +/-   ##
=======================================
  Coverage   97.26%   97.26%
=======================================
  Files           3        3
  Lines          73       73
  Branches       14       14
=======================================
  Hits           71       71
  Misses          2        2

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 356b916...3ba5f85. Read the comment docs.

Codecov Report

Merging #2 (3ba5f85) into master (b1cff76) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #2   +/-   ##
=======================================
  Coverage   97.26%   97.26%
=======================================
  Files           3        3
  Lines          73       73
  Branches       14       14
=======================================
  Hits           71       71
  Misses          2        2

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 356b916...3ba5f85. Read the comment docs.


fix(OAuth): client identity matching

YouTube seems to have changed their Auth script which breaks  OAuth#getClientIdentity(). The Client Identity regex used to match against the body of the script is bound to fail. The result is blocking of the entire process while the regex tries futilely to find a match.
This PR fixes the Client Identity matching part. From what I see, the request payload for device code also seems to have changed. Instead of model_name, it's now device_model:

So I have included this change in the PR too.

If it really is the regex itself that was causing the process to lock up, then moving it to worker threads is not solving the actual core problem, it's just working around the issue.
You need to rewrite the regex so that it doesn't suffer from catastrophic backtracking.
Moving it to worker threads is like building elaborate traps in your house to stop burglars, instead of just closing the front door that is unlocked and wide open.

I was just thinking of guarding against unforeseeable cases where catastrophic backtracking may occur, but you are right that the regex itself should be worked on instead.
So would you mind reviewing the modified regex to see if it is foolproof enough to handle future YT changes, as in not locking up the process when no match is possible? My knowledge of this is rather limited so would appreciate some help here..

I can confirm indeed regex and or model_name was causing my app to stop responding.

I'll merge this PR right now and publish a new version as this is quite urgent. I plan on doing a small refactor in this portion of the code soon, so I can look into fixing the unsafe regular exp, but anyone feel free to contribute if you can.
Thanks Patrick!


fix(FormGroup): remove inputId if the input is a fieldset

🔗 Linked issue
#906
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This removes the auto-generated ID on the FormGroup element for Inputs containing a fieldset (e.g. RadioGroup) since they introduce their own labels and don't bind to the one provided by the FormGroup.
📝 Checklist

[x] I have linked an issue or discussion.
[x] I have updated the documentation accordingly.

Thanks @romhml! Does this close #906 or is there still something to do for the Textarea?

This only fixes the issue with the RadioGroup, the issue with the Textarea is related to something else.