text:
### 09-12-2019 release version 4.12.0

hadolint 1.17.2
inspec 4.16.0
docker 19.03.2-r0

### 08-28-2019 release version 4.11.0

FROM quay.io/feedyard/circleci-remote-docker:5.3.1

pip==19.2.3
setuptools==41.2.0
INSPEC_VERSION=4.12.0
INVOKE_VERSION=1.3.0
PYLINT_VERSION=2.3.1
YAMLLINT_VERSION=1.17.0
RUBOCOP_VERSION=0.74.0
HADOLINT_VERSION=1.17.1

http://dl-cdn.alpinelinux.org/alpine/v3.8/main
jq=1.6_rc1-r1

http://dl-cdn.alpinelinux.org/alpine/v3.10/main
bash=5.0.0-r0
openrc=0.41.2-r1
curl=7.65.1-r0
wget=1.20.3-r0
ruby=2.5.5-r0
ruby-bundler=2.0.2-r0
ruby-bigdecimal=2.5.5-r0
ruby-webrick=2.5.5-r0
gnupg=2.2.16-r0
openssl=1.1.1c-r0

http://dl-cdn.alpinelinux.org/alpine/edge/main
python3=3.7.4-r0

http://dl-cdn.alpinelinux.org/alpine/edge/community
docker=19.03.1-r2

### 06-19-2019 add and update packages

Installing openssl (1.1.1b-r1)
yamllint==1.16.0
installed inspec-4.6.4

### 06-07-2019 base image and package updates

feedyard/circleci-remote-docker:5.1.0
inspec-bin 4.3.2

### 06-03-2019 security patched package for jq

Installing jq (1.6_rc1-r1)

### 05-18-2019 package updates

wget=1.20.3-r0
ruby 2.5.5-r0
python3=3.6.8-r2

in removed build packages
ruby-dev=2.5.5-r0
gcc 2.3.0-r0
g++ 2.3.0-r0
python3-dev=3.6.8-r2

### 04-05-2019 publish version 4.5.0

(1/50) Installing readline (7.0.003-r1)
(2/50) Installing bash (4.4.19-r1)
(3/50) Installing curl (7.64.0-r1)
(4/50) Installing libseccomp (2.3.3-r1)
(5/50) Installing runc (1.0.0_rc6-r1)
(6/50) Installing containerd (1.2.2-r0)
(7/50) Installing libmnl (1.0.4-r0)
(8/50) Installing jansson (2.11-r0)
(9/50) Installing libnftnl-libs (1.1.1-r0)
(10/50) Installing iptables (1.6.2-r1)
(11/50) Installing tini-static (0.18.0-r0)
(12/50) Installing device-mapper-libs (2.02.182-r0)
(13/50) Installing libltdl (2.4.6-r5)
(14/50) Installing docker (18.09.1-r0)
(15/50) Installing libgpg-error (1.33-r0)
(16/50) Installing libassuan (2.5.1-r0)
(17/50) Installing libcap (2.26-r0)
(18/50) Installing pinentry (1.1.0-r0)
(19/50) Installing libbz2 (1.0.6-r6)
(20/50) Installing libgcrypt (1.8.4-r0)
(21/50) Installing gmp (6.1.2-r1)
(22/50) Installing nettle (3.4.1-r0)
(23/50) Installing libffi (3.2.1-r6)
(24/50) Installing p11-kit (0.23.14-r0)
(25/50) Installing libtasn1 (4.13-r0)
(26/50) Installing libunistring (0.9.10-r0)
(27/50) Installing gnutls (3.6.4-r0)
(28/50) Installing libksba (1.3.5-r0)
(29/50) Installing db (5.3.28-r1)
(30/50) Installing libsasl (2.1.27-r1)
(31/50) Installing libldap (2.4.47-r2)
(32/50) Installing npth (1.6-r0)
(33/50) Installing sqlite-libs (3.26.0-r3)
(34/50) Installing gnupg (2.2.12-r0)
(35/50) Installing oniguruma (6.9.1-r0)
(36/50) Installing jq (1.6-r0)
(37/50) Installing openrc (0.39.2-r3)
(38/50) Installing docker-openrc (18.09.1-r0)
(39/50) Installing gdbm (1.13-r1)
(40/50) Installing xz-libs (5.2.4-r0)
(41/50) Installing python3 (3.6.8-r1)
(42/50) Installing yaml (0.2.1-r0)
(43/50) Installing ruby-libs (2.5.3-r1)
(44/50) Installing ruby (2.5.3-r1)
(45/50) Installing ruby-bigdecimal (2.5.3-r1)
(46/50) Installing ruby-etc (2.5.3-r1)
(47/50) Installing ruby-io-console (2.5.3-r1)
(48/50) Installing ruby-bundler (1.17.1-r0)
(49/50) Installing ruby-webrick (2.5.3-r1)
(50/50) Installing wget (1.20.1-r0)

(1/25) Installing binutils (2.31.1-r2)
(2/25) Installing libmagic (5.35-r0)
(3/25) Installing file (5.35-r0)
(4/25) Installing isl (0.18-r0)
(5/25) Installing libgomp (8.2.0-r2)
(6/25) Installing libatomic (8.2.0-r2)
(7/25) Installing libgcc (8.2.0-r2)
(8/25) Installing mpfr3 (3.1.5-r1)
(9/25) Installing mpc1 (1.0.3-r1)
(10/25) Installing libstdc++ (8.2.0-r2)
(11/25) Installing gcc (8.2.0-r2)
(12/25) Installing musl-dev (1.1.20-r4)
(13/25) Installing libc-dev (0.7.1-r0)
(14/25) Installing g++ (8.2.0-r2)
(15/25) Installing make (4.2.1-r2)
(16/25) Installing fortify-headers (1.0-r0)
(17/25) Installing build-base (0.5-r1)
(18/25) Installing pkgconf (1.6.0-r0)
(19/25) Installing python3-dev (3.6.8-r1)
(20/25) Installing libgmpxx (6.1.2-r1)
(21/25) Installing gmp-dev (6.1.2-r1)
(22/25) Installing ruby-dev (2.5.3-r1)
(23/25) Installing linux-headers (4.18.13-r1)
(24/25) Installing libffi-dev (3.2.1-r6)
(25/25) Installing build-dependencies (0)

Successfully installed
pip-19.0.3
setuptools-41.0.0
astroid-2.2.5
invoke-1.2.0
isort-4.3.16
lazy-object-proxy-1.3.1
mccabe-0.6.1
pathspec-0.5.9
pylint-2.3.1
pyyaml-5.1
six-1.12.0
typed-ast-1.3.1
wrapt-1.11.1
yamllint-1.15.0

Successfully installed json-2.2.0
Successfully installed mixlib-shellout-2.4.4
Successfully installed net-ssh-5.2.0
Successfully installed net-scp-1.2.1
Successfully installed builder-3.2.3
Successfully installed erubis-2.7.0
Successfully installed ffi-1.10.0
Successfully installed gssapi-1.2.0
Successfully installed gyoku-1.3.1
Successfully installed httpclient-2.8.3
Successfully installed multi_json-1.13.1
Successfully installed little-plugger-1.1.4
Successfully installed logging-2.2.2
Successfully installed nori-2.6.0
Successfully installed rubyntlm-0.6.2
Successfully installed winrm-2.3.1
Successfully installed rubyzip-1.2.2
Successfully installed winrm-fs-1.3.2
Successfully installed excon-0.62.0
Successfully installed docker-api-1.34.2
Successfully installed jmespath-1.4.0
Successfully installed aws-eventstream-1.0.2
Successfully installed aws-sigv4-1.1.0
Successfully installed aws-sdk-core-2.11.256
Successfully installed aws-sdk-resources-2.11.256
Successfully installed aws-sdk-2.11.256
Successfully installed concurrent-ruby-1.1.5
Successfully installed multipart-post-2.0.0
Successfully installed faraday-0.15.4
Successfully installed unf_ext-<IP_ADDRESS>
Successfully installed unf-0.1.4
Successfully installed domain_name-0.5.20180417
Successfully installed http-cookie-1.0.3
Successfully installed faraday-cookie_jar-0.0.6
Successfully installed timeliness-0.4.0
Successfully installed ms_rest-0.7.3
Successfully installed ms_rest_azure-0.11.0
Successfully installed azure_mgmt_resources-0.17.3
Successfully installed azure_graph_rbac-0.17.1
Successfully installed azure_mgmt_key_vault-0.17.3
Successfully installed jwt-2.1.0
Successfully installed public_suffix-3.0.3
Successfully installed addressable-2.6.0
Successfully installed signet-0.11.0
Successfully installed os-1.0.0
Successfully installed memoist-0.16.0
Successfully installed googleauth-0.6.7
Successfully installed mime-types-data-3.2019.0331
Successfully installed mime-types-3.2.2
Successfully installed retriable-3.1.2
Successfully installed declarative-option-0.1.0
Successfully installed declarative-0.0.10
Successfully installed uber-0.1.0
Successfully installed representable-3.0.4
Successfully installed google-api-client-0.23.9
Successfully installed inifile-3.0.0
Successfully installed train-1.7.6
Successfully installed train-habitat-0.1.1
Successfully installed thor-0.20.3
Successfully installed method_source-0.9.2
Successfully installed diff-lcs-1.3
Successfully installed rspec-support-3.8.0
Successfully installed rspec-mocks-3.8.0
Successfully installed rspec-expectations-3.8.2
Successfully installed rspec-core-3.8.0
Successfully installed rspec-3.8.0
Successfully installed rspec-its-1.2.0
Successfully installed coderay-1.1.2
Successfully installed pry-0.12.2
Successfully installed hashie-3.6.0
Successfully installed mixlib-log-3.0.1
Successfully installed sslshake-1.3.0
Successfully installed parallel-1.17.0
Successfully installed equatable-0.5.0
Successfully installed necromancer-0.4.0
Successfully installed tty-color-0.4.3
Successfully installed pastel-0.7.2
Successfully installed tty-screen-0.6.5
Successfully installed strings-ansi-0.1.0
Successfully installed unicode_utils-1.4.0
Successfully installed unicode-display_width-1.5.0
Successfully installed strings-0.1.5
Successfully installed tty-table-0.10.0
Successfully installed timers-4.3.0
Successfully installed tty-cursor-0.6.1
Successfully installed wisper-2.0.0
Successfully installed tty-reader-0.5.0
Successfully installed tty-prompt-0.18.1
Successfully installed faraday_middleware-0.12.2
Successfully installed tomlrb-1.2.8
Successfully installed parslet-1.8.2
Successfully installed semverse-3.0.0
Successfully installed htmlentities-4.3.4
Successfully installed tins-1.20.2
Successfully installed term-ansicolor-1.7.1
Successfully installed inspec-3.9.0
Successfully installed jaro_winkler-1.5.2
Successfully installed ast-2.4.0
Successfully installed parser-<IP_ADDRESS>
Successfully installed psych-3.1.0
Successfully installed rainbow-3.0.0
Successfully installed ruby-progressbar-1.10.0

### 03-14-2019 alpine:3.9.2 and current packages

(1/32) Installing curl (7.64.0-r1)
(2/32) Installing libseccomp (2.3.3-r1)
(3/32) Installing runc (1.0.0_rc6-r1)
(4/32) Installing containerd (1.2.2-r0)
(5/32) Installing libmnl (1.0.4-r0)
(6/32) Installing jansson (2.11-r0)
(7/32) Installing libnftnl-libs (1.1.1-r0)
(8/32) Installing iptables (1.6.2-r1)
(9/32) Installing tini-static (0.18.0-r0)
(10/32) Installing device-mapper-libs (2.02.182-r0)
(11/32) Installing libltdl (2.4.6-r5)
(12/32) Installing docker (18.09.1-r0)
Executing docker-18.09.1-r0.pre-install
(13/32) Installing oniguruma (6.9.1-r0)
(14/32) Installing jq (1.6-r0)
(15/32) Installing openrc (0.39.2-r3)
Executing openrc-0.39.2-r3.post-install
(16/32) Installing docker-openrc (18.09.1-r0)
(17/32) Installing libbz2 (1.0.6-r6)
(18/32) Installing libffi (3.2.1-r6)
(19/32) Installing gdbm (1.13-r1)
(20/32) Installing xz-libs (5.2.4-r0)
(21/32) Installing sqlite-libs (3.26.0-r3)
(22/32) Installing python3 (3.6.8-r1)
(23/32) Installing gmp (6.1.2-r1)
(24/32) Installing yaml (0.2.1-r0)
(25/32) Installing ruby-libs (2.5.3-r1)
(26/32) Installing ruby (2.5.3-r1)
(27/32) Installing ruby-bigdecimal (2.5.3-r1)
(28/32) Installing ruby-etc (2.5.3-r1)
(29/32) Installing ruby-io-console (2.5.3-r1)
(30/32) Installing ruby-bundler (1.17.1-r0)
(31/32) Installing ruby-webrick (2.5.3-r1)
(32/32) Installing wget (1.20.1-r0)
Executing busybox-1.29.3-r10.trigger
OK: 363 MiB in 68 packages
(1/25) Installing binutils (2.31.1-r2)
(2/25) Installing libmagic (5.35-r0)
(3/25) Installing file (5.35-r0)
(4/25) Installing isl (0.18-r0)
(5/25) Installing libgomp (8.2.0-r2)
(6/25) Installing libatomic (8.2.0-r2)
(7/25) Installing libgcc (8.2.0-r2)
(8/25) Installing mpfr3 (3.1.5-r1)
(9/25) Installing mpc1 (1.0.3-r1)
(10/25) Installing libstdc++ (8.2.0-r2)
(11/25) Installing gcc (8.2.0-r2)
(12/25) Installing musl-dev (1.1.20-r3)
(13/25) Installing libc-dev (0.7.1-r0)
(14/25) Installing g++ (8.2.0-r2)
(15/25) Installing make (4.2.1-r2)
(16/25) Installing fortify-headers (1.0-r0)
(17/25) Installing build-base (0.5-r1)
(18/25) Installing pkgconf (1.6.0-r0)
(19/25) Installing python3-dev (3.6.8-r1)
(20/25) Installing libgmpxx (6.1.2-r1)
(21/25) Installing gmp-dev (6.1.2-r1)
(22/25) Installing ruby-dev (2.5.3-r1)
(23/25) Installing linux-headers (4.18.13-r1)
(24/25) Installing libffi-dev (3.2.1-r6)
(25/25) Installing build-dependencies (0)

Successfully installed pip-19.0.3 setuptools-40.8.0

INSPEC_VERSION=3.7.1
INVOKE_VERSION=1.2.0
PYLINT_VERSION=2.3.1
YAMLLINT_VERSION=1.15.0
RUBOCOP_VERSION=0.65.0
HADOLINT_VERSION=1.16.0

### 01-25-2019 patch and package additions

add hadolint
update yamllint 1.14

### 01-11-2019

add pkg ruby-bigdecimal
Installing wget (1.20.0-r0)

### 01-05-2019 Add ruby-webrick, remove build packages

Cleaning up installed gems...
Clean up complete
WARNING: Ignoring APKINDEX.adfa7ceb.tar.gz: No such file or directory
WARNING: Ignoring APKINDEX.efaa1f73.tar.gz: No such file or directory
(1/24) Purging build-dependencies (0)
(2/24) Purging build-base (0.5-r1)
(3/24) Purging file (5.32-r0)
(4/24) Purging fortify-headers (0.9-r0)
(5/24) Purging python3-dev (3.6.6-r0)
(6/24) Purging ruby-dev (2.5.2-r0)
(7/24) Purging gmp-dev (6.1.2-r1)
(8/24) Purging libgmpxx (6.1.2-r1)
(9/24) Purging libffi-dev (3.2.1-r4)
(10/24) Purging g++ (6.4.0-r9)
(11/24) Purging libc-dev (0.7.1-r0)
(12/24) Purging musl-dev (1.1.19-r10)
(13/24) Purging gcc (6.4.0-r9)
(14/24) Purging binutils (2.30-r5)
(15/24) Purging libatomic (6.4.0-r9)
(16/24) Purging libgomp (6.4.0-r9)
(17/24) Purging make (4.2.1-r2)
(18/24) Purging libmagic (5.32-r0)
(19/24) Purging isl (0.18-r0)
(20/24) Purging pkgconf (1.5.3-r0)
(21/24) Purging libstdc++ (6.4.0-r9)
(22/24) Purging libgcc (6.4.0-r9)
(23/24) Purging mpc1 (1.0.3-r1)
(24/24) Purging mpfr3 (3.1.5-r1)

### 01-02-2019 Add pylint, yamllint, rubocop

Installing pylint (2.2.2)
Installing yamllint (1.13.0)

Successfully installed rubocop-0.61.1
Successfully installed inspec-3.2.6

### 12-11-2018 Patch build, update pipeline process for use of orbs

(1/46) Installing curl (7.61.1-r1)
(2/46) Installing libmnl (1.0.4-r0)
(3/46) Installing jansson (2.11-r0)
(4/46) Installing libnftnl-libs (1.1.1-r0)
(5/46) Installing iptables (1.6.2-r0)
(6/46) Installing device-mapper-libs (2.02.178-r0)
(7/46) Installing libltdl (2.4.6-r5)
(8/46) Installing libseccomp (2.3.3-r1)
(9/46) Installing docker (18.06.1-r0)
(10/46) Installing docker-bash-completion (18.06.1-r0)
(11/46) Installing libgcc (6.4.0-r9)
(12/46) Installing libstdc++ (6.4.0-r9)
(13/46) Installing binutils (2.30-r5)
(14/46) Installing gmp (6.1.2-r1)
(15/46) Installing isl (0.18-r0)
(16/46) Installing libgomp (6.4.0-r9)
(17/46) Installing libatomic (6.4.0-r9)
(18/46) Installing pkgconf (1.5.3-r0)
(19/46) Installing mpfr3 (3.1.5-r1)
(20/46) Installing mpc1 (1.0.3-r1)
(21/46) Installing gcc (6.4.0-r9)
(22/46) Installing musl-dev (1.1.19-r10)
(23/46) Installing libc-dev (0.7.1-r0)
(24/46) Installing g++ (6.4.0-r9)
(25/46) Installing oniguruma (6.8.2-r0)
(26/46) Installing jq (1.6_rc1-r1)
(27/46) Installing libffi (3.2.1-r4)
(28/46) Installing libffi-dev (3.2.1-r4)
(29/46) Installing make (4.2.1-r2)
(30/46) Installing openrc (0.35.5-r5)
(31/46) Installing docker-openrc (18.06.1-r0)
(32/46) Installing libbz2 (1.0.6-r6)
(33/46) Installing gdbm (1.13-r1)
(34/46) Installing xz-libs (5.2.4-r0)
(35/46) Installing sqlite-libs (3.24.0-r0)
(36/46) Installing python3 (3.6.6-r0)
(37/46) Installing yaml (0.1.7-r0)
(38/46) Installing ruby-libs (2.5.2-r0)
(39/46) Installing ruby (2.5.2-r0)
(40/46) Installing ruby-etc (2.5.2-r0)
(41/46) Installing ruby-io-console (2.5.2-r0)
(42/46) Installing ruby-bundler (1.16.2-r1)
(43/46) Installing libgmpxx (6.1.2-r1)
(44/46) Installing gmp-dev (6.1.2-r1)
(45/46) Installing ruby-dev (2.5.2-r0)
(46/46) Installing wget (1.19.5-r0)

Successfully installed json-2.1.0
Successfully installed mixlib-shellout-2.4.2
Successfully installed net-ssh-5.0.2
Successfully installed net-scp-1.2.1
Successfully installed builder-3.2.3
Successfully installed erubis-2.7.0
Successfully installed ffi-1.9.25
Successfully installed gssapi-1.2.0
Successfully installed gyoku-1.3.1
Successfully installed httpclient-2.8.3
Successfully installed little-plugger-1.1.4
Successfully installed multi_json-1.13.1
Successfully installed logging-2.2.2
Successfully installed nori-2.6.0
Successfully installed rubyntlm-0.6.2
Successfully installed winrm-2.3.0
Successfully installed rubyzip-1.2.2
Successfully installed winrm-fs-1.3.1
Successfully installed excon-0.62.0
Successfully installed docker-api-1.34.2
Successfully installed jmespath-1.4.0
Successfully installed aws-sigv4-1.0.3
Successfully installed aws-sdk-core-2.11.189
Successfully installed aws-sdk-resources-2.11.189
Successfully installed aws-sdk-2.11.189
Successfully installed concurrent-ruby-1.1.3
Successfully installed multipart-post-2.0.0
Successfully installed faraday-0.15.4
Successfully installed unf_ext-<IP_ADDRESS>
Successfully installed unf-0.1.4
Successfully installed domain_name-0.5.20180417
Successfully installed http-cookie-1.0.3
Successfully installed faraday-cookie_jar-0.0.6
Successfully installed timeliness-0.3.8
Successfully installed ms_rest-0.7.3
Successfully installed ms_rest_azure-0.11.0
Successfully installed azure_mgmt_resources-0.17.2
Successfully installed azure_graph_rbac-0.17.0
Successfully installed azure_mgmt_key_vault-0.17.2
Successfully installed uber-0.1.0
Successfully installed declarative-0.0.10
Successfully installed declarative-option-0.1.0
Successfully installed representable-3.0.4
Successfully installed retriable-3.1.2
Successfully installed public_suffix-3.0.3
Successfully installed addressable-2.5.2
Successfully installed mime-types-data-3.2018.0812
Successfully installed mime-types-3.2.2
Successfully installed jwt-2.1.0
Successfully installed signet-0.11.0
Successfully installed memoist-0.16.0
Successfully installed os-1.0.0
Successfully installed googleauth-0.6.7
Successfully installed google-api-client-0.23.9
Successfully installed inifile-3.0.0
Successfully installed train-1.5.11
Successfully installed thor-0.20.3
Successfully installed method_source-0.9.2
Successfully installed rspec-support-3.8.0
Successfully installed rspec-core-3.8.0
Successfully installed diff-lcs-1.3
Successfully installed rspec-expectations-3.8.2
Successfully installed rspec-mocks-3.8.0
Successfully installed rspec-3.8.0
Successfully installed rspec-its-1.2.0
Successfully installed coderay-1.1.2
Successfully installed pry-0.12.2
Successfully installed hashie-3.6.0
Successfully installed mixlib-log-2.0.4
Successfully installed sslshake-1.2.0
Successfully installed parallel-1.12.1
Successfully installed faraday_middleware-0.12.2
Successfully installed tomlrb-1.2.7
Successfully installed parslet-1.8.2
Successfully installed semverse-3.0.0
Successfully installed htmlentities-4.3.4
Successfully installed tins-1.20.2
Successfully installed term-ansicolor-1.7.0
Successfully installed inspec-3.0.64

### 10-22-2018 package and patch update

inspec

Successfully installed ms_rest_azure-0.11.0
Successfully installed azure_mgmt_resources-0.17.2
Successfully installed azure_graph_rbac-0.17.0
Successfully installed azure_mgmt_key_vault-0.17.2
Successfully installed signet-0.11.0
Successfully installed googleauth-0.6.7
Successfully installed google-api-client-0.23.9
Successfully installed train-1.5.4
Successfully installed inspec-3.0.9

### 10-22-2018 package and patch update

inspec

Successfully installed ms_rest_azure-0.11.0
Successfully installed azure_mgmt_resources-0.17.2
Successfully installed azure_graph_rbac-0.17.0
Successfully installed azure_mgmt_key_vault-0.17.2
Successfully installed signet-0.11.0
Successfully installed googleauth-0.6.7
Successfully installed google-api-client-0.23.9
Successfully installed train-1.5.4
Successfully installed inspec-3.0.9

### 09-14-2018 initial commit

FROM quay.io/feedyard/circleci-remote-docker:3.8.81

(1/35) Installing curl (7.61.1-r0)
(2/35) Installing libgcc (6.4.0-r8)
(3/35) Installing libstdc++ (6.4.0-r8)
(4/35) Installing binutils (2.30-r5)
(5/35) Installing gmp (6.1.2-r1)
(6/35) Installing isl (0.18-r0)
(7/35) Installing libgomp (6.4.0-r8)
(8/35) Installing libatomic (6.4.0-r8)
(9/35) Installing pkgconf (1.5.3-r0)
(10/35) Installing mpfr3 (3.1.5-r1)
(11/35) Installing mpc1 (1.0.3-r1)
(12/35) Installing gcc (6.4.0-r8)
(13/35) Installing musl-dev (1.1.19-r10)
(14/35) Installing libc-dev (0.7.1-r0)
(15/35) Installing g++ (6.4.0-r8)
(16/35) Installing oniguruma (6.8.2-r0)
(17/35) Installing jq (1.6_rc1-r1)
(18/35) Installing libffi (3.2.1-r4)
(19/35) Installing libffi-dev (3.2.1-r4)
(20/35) Installing make (4.2.1-r2)
(21/35) Installing libbz2 (1.0.6-r6)
(22/35) Installing gdbm (1.13-r1)
(23/35) Installing xz-libs (5.2.4-r0)
(24/35) Installing sqlite-libs (3.24.0-r0)
(25/35) Installing python3 (3.6.6-r0)
(26/35) Installing yaml (0.1.7-r0)
(27/35) Installing ruby-libs (2.5.1-r2)
(28/35) Installing ruby (2.5.1-r2)
(29/35) Installing ruby-etc (2.5.1-r2)
(30/35) Installing ruby-io-console (2.5.1-r2)
(31/35) Installing ruby-bundler (1.16.2-r1)
(32/35) Installing libgmpxx (6.1.2-r1)
(33/35) Installing gmp-dev (6.1.2-r1)
(34/35) Installing ruby-dev (2.5.1-r2)
(35/35) Installing wget (1.19.5-r0)

Successfully installed pip-18.0 setuptools-40.2.0
Successfully installed invoke-1.2.0

rubygems
Successfully installed json-2.1.0
Successfully installed mixlib-shellout-2.4.0
Successfully installed net-ssh-5.0.2
Successfully installed net-scp-1.2.1
Successfully installed ffi-1.9.25
Successfully installed gssapi-1.2.0
Successfully installed httpclient-2.8.3
Successfully installed rubyntlm-0.6.2
Successfully installed little-plugger-1.1.4
Successfully installed multi_json-1.13.1
Successfully installed logging-2.2.2
Successfully installed nori-2.6.0
Successfully installed builder-3.2.3
Successfully installed gyoku-1.3.1
Successfully installed erubis-2.7.0
Successfully installed winrm-2.2.3
Successfully installed rubyzip-1.2.2
Successfully installed winrm-fs-1.3.0
Successfully installed excon-0.62.0
Successfully installed docker-api-1.34.2
Successfully installed jmespath-1.4.0
Successfully installed aws-sigv4-1.0.3
Successfully installed aws-sdk-core-2.11.130
Successfully installed aws-sdk-resources-2.11.130
Successfully installed aws-sdk-2.11.130
Successfully installed concurrent-ruby-1.0.5
Successfully installed multipart-post-2.0.0
Successfully installed faraday-0.15.2
Successfully installed unf_ext-<IP_ADDRESS>
Successfully installed unf-0.1.4
Successfully installed domain_name-0.5.20180417
Successfully installed http-cookie-1.0.3
Successfully installed faraday-cookie_jar-0.0.6
Successfully installed timeliness-0.3.8
Successfully installed ms_rest-0.7.2
Successfully installed ms_rest_azure-0.11.0
Successfully installed azure_mgmt_resources-0.17.0
Successfully installed azure_graph_rbac-0.17.0
Successfully installed uber-0.1.0
Successfully installed declarative-0.0.10
Successfully installed declarative-option-0.1.0
Successfully installed representable-3.0.4
Successfully installed retriable-3.1.2
Successfully installed public_suffix-3.0.3
Successfully installed addressable-2.5.2
Successfully installed mime-types-data-3.2018.0812
Successfully installed mime-types-3.2.2
Successfully installed jwt-2.1.0
Successfully installed memoist-0.16.0
Successfully installed os-1.0.0
Successfully installed signet-0.9.2
Successfully installed googleauth-0.6.6
Successfully installed google-api-client-0.19.8
Successfully installed inifile-3.0.0
Successfully installed train-1.4.37
Successfully installed thor-0.20.0
Successfully installed method_source-0.9.0
Successfully installed rspec-support-3.8.0
Successfully installed rspec-core-3.8.0
Successfully installed diff-lcs-1.3
Successfully installed rspec-expectations-3.8.1
Successfully installed rspec-mocks-3.8.0
Successfully installed rspec-3.8.0
Successfully installed rspec-its-1.2.0
Successfully installed coderay-1.1.2
Successfully installed pry-0.11.3
Successfully installed hashie-3.6.0
Successfully installed mixlib-log-2.0.4
Successfully installed sslshake-1.2.0
Successfully installed parallel-1.12.1
Successfully installed faraday_middleware-0.12.2
Successfully installed tomlrb-1.2.7
Successfully installed parslet-1.8.2
Successfully installed semverse-2.0.0
Successfully installed htmlentities-4.3.4
Successfully installed inspec-2.2.101

repository: feedyard/circleci-base-agent

repo_name: feedyard/circleci-base-agent


text:
# FCMalloc: A Fast Memory Allocator for Fully Homomorphic Encryption
FCMalloc library enables to control local heaps to speed up
memory allocation and deallocation by adopting pseudo free technique.

## how to build
CMake, GNU make, GCC are required to build FCMalloc library.

```
$ cd fcmalloc
$ cmake .
$ make
```

## how to run
In order to use FCMalloc library, set environment variable `LD_PRELOAD`
to the path to `libfcmalloc.so`. For example, zsh uses FCMalloc library;
```
LD_PRELOAD=./libfcmalloc.so zsh
```

### options
* FCM_SIZE_LIST_FILE
    * memory size list file name (format must be csv)
* FCM_FORCE_EXTEND_MEM_FLAG
    * whether memory extension is forced (default: 1)
* FCM_MAIN_MEM_MAX
    * maximum memory size (GB) for main thread (default: 32)
* FCM_SUB_MEM_MAX
    * maximum memory size (GB) for each thread (default: 4 * #cores)
* FCM_LOG_OUTPUT
    * log file name for main thread (`stdout`, `stderr`, or `/dev/null` are also acceptable)
    * currently no log is output to `FCM_LOG_OUTPUT`
* FCM_LOG_PREFIX
    * log file name prefix, which is used for log file name for each core
         * log file name is `PREFIX_xxx.log` when FCM_LOG_PREFIX is `PREFIX`
* FCM_MEM_LOG_INTVL
    * memory log interval(default: 10000)
         * When the number of malloc/free reaches `FCM_MEM_LOG_INTVL`,
           #malloc and #free are output to the log file.
* FCM_POOL_BUFFER_SIZE
    * the number of memory pool buffer per core (default: 4)

## NOTE
* The following functions are unsupported.
    * pvalloc
    * mallopt
    * posix_memalign
* Memory allocated within libfcmalloc.so is not released
  unless the process is terminated.

## References
* TCMalloc
    * Google Inc., "gperftools: Fast, multi-threaded malloc() and nifty performance analysis tools ", http://code.google.com/p/gperftools/ accessed on 2017-03-15.
* JEmalloc
    * Evans, J., "A Scalable Concurrent malloc(3) Implementation for FreeBSD", Proc. of BSDCan, 2006.
* Supermalloc
    * Kuszmaul, B. C., "Supermalloc: A Super Fast Multithreaded Malloc for 64-bit Machines", Proc. of ISMM, pp. 41-55, 2015.
* FHE
    * Gentry, C., "A Fully Homomorphic Encryption Scheme", Ph.D. Thesis, Stanford University, 2009.
* HElib
    * http://shaih.github.io/HElib/

repository: yamanalab/FCMalloc

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: yamanalab/FCMalloc


text:
---
title: Change nessus user password
layout: post
permalink: /2013/03/24/change-nessus-user-password/
tags: [TechNotes, nmap]
---
Execute `nessus-chpasswd <username>` command from the /sbin folder as `root` (example with the default installation directory on OSx 10.8) :

{% highlight bash %}
cd /Library/Nessus/run/sbin
./nessus-chpasswd alice
Authentication (pass/cert) : [pass]
Login password :
Login password (again) :
{% endhighlight %}

license: MIT


text:
# PYTHON PANDA

## Summary

Notes on working with the panda package

## Resources

- [Getting Started](https://pandas.pydata.org/getting_started.html)

## Install

Install via pip

```console
pip install pandas
```

repository: evanharmon/eph-headspace

branch_name: refs/heads/main

repo_name: evanharmon/eph-headspace


text:
---
# Display name
name: Felix J.S. Bragman

# Username (this should match the folder name)
authors:
- admin

# Is this the primary user of the site?
superuser: true

# Role/position
role: Research Scientist

# Organizations/Affiliations
organizations:
- name: Babylon Health
  url: "https://www.babylonhealth.com/"

# Short bio (displayed in user profile at end of posts)
bio:

interests:
- Representation Learning
- Multi-task Learning
- Modular Neural Networks
- Generative Modelling

education:
  courses:
  - course: PhD in Medical Image Computing
    institution: University College London
    year: 2017
  - course: MSc in Biomedical Engineering
    institution: University of Oxford
    year: 2012
  - course: BEng in Mechanical Engineering
    institution: University College London
    year: 2011

# Social/Academic Networking
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
#   For an email link, use "fas" icon pack, "envelope" icon, and a link in the
#   form<EMAIL_ADDRESS>or "#contact" for contact widget.
social:
- icon: envelope
  icon_pack: fas
  link: '#contact'  # For a direct email link, use<EMAIL_ADDRESS>- icon: twitter
  icon_pack: fab
  link: https://twitter.com/FelixJSB
- icon: google-scholar
  icon_pack: ai
  link: https://scholar.google.com/citations?hl=en&user=0Qn2UvAAAAAJ&view_op=list_works&sortby=pubdate
- icon: github
  icon_pack: fab
  link: https://github.com/fbragman
# Link to a PDF of your resume/CV from the About widget.
# To enable, copy your resume/CV to `static/files/cv.pdf` and uncomment the lines below.
# - icon: cv
#   icon_pack: ai
#   link: files/cv.pdf

# Enter email to display Gravatar (if Gravatar enabled in Config)
email: ""

# Organizational groups that you belong to (for People widget)
#   Set this to `[]` or comment out if you are not using People widget.
user_groups:
- Researchers
- Visitors
---

Hey!!!!! My name is Felix and I am currently a research scientist in the AI Research Team at [Babylon Health](https://www.babylonhealth.com/ai/learn-more).

My current work is focused on researching machine learning models for AI-driven healthcare. I have been researching methods that learn fair representations to train unbiased predictive tools. I have also been researching methods for representation learning from electronic health records to improve our potential for precision medicine.

Before joining Babylon Health, I was a post-doc at UCL working with [M. Jorge Cardoso](https://www.kcl.ac.uk/people/jorge-cardoso) where I developed fundamental methods in deep learning and multi-task learning with applications in computer vision and medical image computing. I developed multiple learning schemes for multi-task learning, with oral presentations at MICCAI 2018 and ICCV 2019.

Previously, I was a PhD student under the supervision of [Prof. David Hawkes](https://iris.ucl.ac.uk/iris/browse/profile?upi=DJHAW78) at CMIC UCL and [Prof. John Hurst](https://iris.ucl.ac.uk/iris/browse/profile?upi=JHURS15) at the Royal Free Hospital. I developed numerous algorithms for the quantitative analysis of Chronic Obstructive Pulmonary Disease (COPD) from three-dimensional Computed Tomography scans.


text:
---
title: Logging and monitoring
---

Kf can use GKE's Google Cloud integrations
to send a log of events to your Cloud Monitoring and Cloud Logging project for observability. For more information, see
[Overview of GKE operations](https://cloud.google.com/monitoring/kubernetes-engine).

Kf deploys two server side components:

1. Controller
2. Webhook

To view the logs for these components, use the following Cloud Logging query:

```
resource.type="k8s_container"
resource.labels.project_id=<PROJECT ID>
resource.labels.location=<GCP ZONE>
resource.labels.cluster_name=<CLUSTER NAME>
resource.labels.namespace_name="kf"
labels.k8s-pod/app=<controller OR webhook>
```

{{< note >}} Replace the values inside the <> with the correct values.{{< /note >}}

repository: google/kf

gha_language: Go

repo_name: google/kf


text:
# Security Policy

## Supported Versions

Use this section to tell people about which versions of your project are
currently being supported with security updates.

| Version | Supported          |
| ------- | ------------------ |
| latest  | :white_check_mark: |
| <lates  | :x:                |

## Reporting a Vulnerability

Please open an issue to report any vulnerabilities.

repository: pluralcom/eslint-config-plural

gha_language: JavaScript

gha_license_id: MIT

repo_name: pluralcom/eslint-config-plural


text:
---
layout: post
title:  "DragonAutochess DES304 Dev Log 5"
date:   2020-10-26
excerpt: "The player units"
project: null
tag:
- des304
- game design
- dev log
- AutoDragonchess
comments: false
---
This week is all about making the base units.

The way I set it all up is:
- one prefab for __ALL__ player units
- one script to manage the unit (initializes it, manages the AI and the abilities)
- a scriptable object for the classes.

This way I can easily add and remove units from the shop (as it's only a list of the classes scriptable objects), and it's fast to make new units.
When the player buys a new unit, the prefab is spawned and the class variable is set to the one of the shop, then the initialization function is called to set all the variables and boom, the player has a new unit.

Now for the classes.

I decided to start with 12 classes, which are the Dungeons and Dragons classes:
- Fighter
- Barbarian
- Wizard
- Cleric
- Rogue
- Paladin
- Ranger
- Bard
- Warlock
- Monk
- Druid
- Sorcerer

Then I started thinking about the base roles of each class, I defined the base roles as the classing trinity in RPGs:
- Tank
- DPS
- Support (replaced Healer as a more Generalist role)

And I divided the classes into the roles

|Tank|DPS|Support|
|---|---|---|
|Fighter|Rogue|Wizard|
|Paladin|Ranger|Cleric|
|Barbarian|Warlock|Bard|
||Monk|Druid|
||Sorcerer||

After that, to make things more interesting and less binary, I started thinking about secondary roles and expanding the roles. As of now this is just written, to implement it I have to wait until the leveling system and ability system are both completed, but the general idea is this:

Tank:
- __Vanguard__: Pure tank, with defensive abilities
- __Disruptor__: High defensive stats, but focuses more on crowd control

DPS:
- __DPS__: pure Damage per second character
- __Blaster__: low dps, but has high spikes of burst damage

Support:
- __Healer__: Focuses on healing other units
- __Enchanter__: Focuses primarily on buffs and secondarily on crowd control

So, for now I stuck with the basic roles, made up some ranges of values for each role and assigned them to the various classes and... that's it for now.

After the ability system is implemented and working fine, I'll look into expand the leveling system like said in week 2, adding more abilities and defining more granular roles and sub-roles.

gha_language: HTML


text:
---
layout: post
title: "OsHDA706"
description: ""
category: genes
tags: [stress, salt, tolerance, nucleus, salt tolerance, salt stress, cytoplasm, stress response]
---

* **Information**
    + Symbol: OsHDA706
    + MSU: [LOC_Os06g37420](http://rice.uga.edu/cgi-bin/ORF_infopage.cgi?orf=LOC_Os06g37420)
    + RAPdb: [Os06g0571100](https://rapdb.dna.affrc.go.jp/locus/?name=Os06g0571100)

* **Publication**
    + [Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.](http://www.ncbi.nlm.nih.gov/pubmed?term=Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.%5BTitle%5D), 2023, J Integr Plant Biol.

* **Genbank accession number**

* **Key message**
    + In this study, we revealed that the histone deacetylase OsHDA706 epigenetically regulates the expression of salt stress response genes in rice (Oryza sativa L
    + OsHDA706 localizes to the nucleus and cytoplasm and OsHDA706 expression is significantly induced under salt stress
    + Moreover, oshda706 mutants showed a higher sensitivity to salt stress than the wild-type
    + We found that the expression of OsPP2C49 is induced in the oshda706 mutant under salt stress
    + Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.

* **Connection**
    + __OsHDA706__, __OsPP2C49__, [Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.](http://www.ncbi.nlm.nih.gov/pubmed?term=Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.%5BTitle%5D), Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.
    + __OsHDA706__, __OsPP2C49__, [Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.](http://www.ncbi.nlm.nih.gov/pubmed?term=Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.%5BTitle%5D),  We found that the expression of OsPP2C49 is induced in the oshda706 mutant under salt stress
    + __OsHDA706__, __OsPP2C49__, [Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.](http://www.ncbi.nlm.nih.gov/pubmed?term=Histone deacetylase OsHDA706 increases salt tolerance via H4K5/K8 deacetylation of OsPP2C49 in rice.%5BTitle%5D),  Taken together, our results indicate that OsHDA706, a histone H4 deacetylase, participates in the salt stress response by regulating the expression of OsPP2C49 via H4K5 and H4K8 deacetylation

[//]: # * **Key figures**


text:
## Exact v.s. Sealed

Exact means the object passed in here _must not_ contain extra fields ([link to doc](https://flow.org/en/docs/types/objects/#toc-exact-object-types)).

Sealed, on the other hand, means the object may contain other fields but you may not access them unless you annotate them. When we write an object type with some fields, it is by default _sealed_. Trying to access unannotated field of a sealed object will result in error, regardless of it being exact or not:

```js
type Sealed = { foo: string }

const sealed = {
  foo: 'foo',
}
sealed.bar = 'bar' // error
const { foo, bar } = sealed // error
```

Currently, objects are by default sealed and inexact. However, Flow is on [the roadmap of migrating to by default exact](https://medium.com/flow-type/on-the-roadmap-exact-objects-by-default-16b72933c5cf).

For functions that expect sealed objects, you can still pass in objects with extra props.

```js
function usingSealed(x: Sealed) {
  // does things
}
usingSealed({ foo: 'foo', bar: 'bar' }) // ok
```

Not so when the functions are expecting _exact_ objects:

```js
type Exact = {| foo: string |}

function usingExact(x: Exact) {
  // does things
}
usingExact({ foo: 'foo', bar: 'bar' }) // error
```

We may access the fields of function parameters by destructuring the object:

```js
// destructuring on function parameter
function goodUsingSealed({ foo }: Sealed) { // ok
  // does things
}
```

But since destructuring means accessing the object, we _should not_ be able to access extra props to sealed objects. This is fixed in 0.100:

```js
// fixed in 0.100
function badUsingSealed({ foo, bar }: Sealed) { // error after 0.100
  // does things
}
```

- [Try Flow](https://flow.org/try/#0C4TwDgpgBAyhCGAbCATKBeKBvKAzA9vgFxQDOwATgJYB2A5lAL4DcAUKJFAKIAe8AxsAzYAPnkIly1elBEtWrfvhrkyCZGkxZWUccSgByAvgOtGrUutQA6AEbwKwg-YoHmUAPQeoEChXwUisqqOMYANFAuTMKWSKjuXj5+AQq4AK40glTKUGmktHRwcSgAFDwkRRoAlNg6nt4o+BCkUMAAFgWkZqx5BZWoJaEShsYGES4kzg4GTFUJ3vgA1qkZWTm99LwCwGUkW4I12rqJjc2tHfRd5ht0+ztD+kaEY5EOky4zjHMAkIm+-oFWCdmpQ0oI0tIGDl0plgNkaFAwA54ABbCDAXysGFrBF0QgoACq+Xo-VKDyYFSsKEO9SgSzqJyaLXanTMbCB3lwVB4qCgtCgAAZrABGAUCrGrOE5eyE4mFKmDPTjBwU2BUml-ZKOeC4DGOIWi8XHBpM86s8xAA)

References
---
- [On the Roadmap: Exact Objects by Default](https://medium.com/flow-type/on-the-roadmap-exact-objects-by-default-16b72933c5cf)


text:
---
layout: layout.pug
navigationTitle:
excerpt:
title: Release Notes
menuWeight: 120
model: /services/cassandra/data.yml
render: mustache
---

# Version 2.2.0-3.0.16

## New Features
- Support for deploying the service in a remote region.

# Version 2.1.0-3.0.16

## New Features

- The Cassandra tasks no longer run inside a Docker container. This removes the requirement that on Centos based distributions the service must be run as root.
- Support for the automated provisioning of TLS artifacts to secure Cassandra communication.
- Automatic configuration of the system tables on initial deployment.
- Support for `Zone` placement constraints in DC/OS 1.11.
- Ability to pause a service pod for debugging and recovery purposes.

## Updates
- Major improvements to the stability and performance of service orchestration.
- The service now uses Cassandra v3.0.16.
- Upgrade JRE to 1.8u162.
- The service now uses the Mesos V1 API. The service can be set back to the V0 API using the service property `service.mesos_api_version`.

# Version 2.0.3-3.0.14

### Bug Fixes
* Uninstall now handles failed tasks correctly.

# Version 2.0.2-3.0.14

### Bug Fixes

* Further fixes to scheduler behavior during task status transitions.

### Improvements

* Updated JRE version to 8u144.
* Improved handling of error codes in service CLI.

# Version 2.0.1-3.0.14

## Bug Fixes
* Corrected closing brace in Cassandra mustache.
* Fixed restore-snapshot port rendering.
* Tasks will correctly bind on DC/OS 1.10.
* Fixed config generation.

### Documentation
* Updated post-install links for package.
* Updated `limitations.md`.
* Ensured previous `version-policy.md` content is present.
* Updated service user section

# Version 2.0.0-3.0.14

## Improvements
- Based on the latest stable release of the dcos-commons SDK, which provides numerous benefits:
  - Integration with DC/OS features such as virtual networking and integration with DC/OS access controls.
  - Orchestrated software and configuration update, enforcement of version upgrade paths, and ability to pause/resume updates.
  - Placement constraints for pods.
  - Uniform user experience across a variety of services.
- Upgrade to version 3.0.14 of Apache Cassandra.

## Breaking Changes
- This is a major release.  You cannot upgrade to 2.0.0-3.0.14 from a 1.0.x version of the package.  To upgrade, you must perform a fresh install and restore from a backup.

repository: ShaunDeng/dcos-docs-site

repo_name: ShaunDeng/dcos-docs-site


text:
### [CVE-2007-3323](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-3323)
![](https://img.shields.io/static/v1?label=Product&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=n%2Fa&color=brighgreen)

### Description

SQL injection vulnerability in comersus_optReviewReadExec.asp in Comersus Shop Cart 7.07 allows remote attackers to execute arbitrary SQL commands via the idProduct parameter.  NOTE: this might be the same as CVE-2005-2190.2.

### POC

#### Reference
- http://securityreason.com/securityalert/2819

#### Github
No PoCs found on GitHub currently.

repository: trickest/cve

repo_name: trickest/cve


text:
---
permalink:	/:categories/:year/:month/:day/:title/
layout:     post
title:      Hollywood on Bash on Ubuntu on Windows
date:       2016-08-05 23:30:00
author:     Raimund Rittnauer
description:    How to install Hollywood on Bash on Ubuntu on Windows
categories: tech
thumbnail:  code
comments: true
tags:
 - windows 10
 - bash
 - ubuntu
 - hollywood
---

Finally I got my [Bash on Ubuntu on Windows][1]{:target="_blank"} and the first thing I tried was [Hollywood][2]{:target="_blank"}. Bash with Hollywood][bash-hollywood]{:class="image-responsive"}

You just have to add a repository which contains the package for hollywood.

``
$ sudo apt-add-repository ppa:hollywood/ppa
``
<br>
``
$ sudo apt-get update
``

To run hollywood you need the package [byobu][3]{:target="_blank"} (a text based window manager and terminal multiplexer) and the package hollywood.

``
$ sudo apt-get install byobu hollywood
``

To start the magic you just have to run byobu and hollywood in your bash.
![Bash with Hollywood Animated][bash-hollywood-animated]{:class="image-responsive"}

To remove byobu and hollywood from your system just use apt-get remove.

``
$ sudo apt-get remove byobu hollywood
``

I simply <3 my new bash!

[1]: https://msdn.microsoft.com/en-us/commandline/wsl/about
[2]: https://github.com/dustinkirkland/hollywood
[3]: http://byobu.co/

[bash-hollywood]: {{ site.baseurl }}/assets/img/bash-hollywood.png "Bash with Hollywood"
[bash-hollywood-animated]: {{ site.baseurl }}/assets/img/bash-hollywood.gif "Bash with Hollywood Animated"


text:
The form component manages its own state for dirtiness and validity.
The form component allows a parent component to submit its data with a `onSubmit` callback.
The form component allows a parent component to listen to value changes with a `onChange` callback.

## Keyboard Support

| Key | Focused element | Function |
| --- | --------------- | -------- |
| Enter | Save button   | Submits the form |

## Label Support

| Focused element | Screen reader |
| --------------- | ------------- |
| Save button     | Save          |

## Examples

### Example with native inputs

```jsx
import Form from<EMAIL_ADDRESS>
const refs = [
  React.createRef(),
  React.createRef(),
];

<Form refs={refs} onSubmit={() => alert('Submitted the form!')}>
  {() => (
    <React.Fragment>
      <input defaultValue="Example for a persisted value" ref={refs[0]} />
      <input ref={refs[1]} />
    </React.Fragment>
  )}
</Form>
```

### Example with autoSave

The `autoSave` prop determines the frequency of calling `onSubmit`.
By default, the `onSubmit` callback only gets invoked when the form is submitted.
However, setting `autoSave` will invoke the callback when changes are detected.

Note: `autoSave` debounces its `props.onSubmit` callback to about 1/3 of a second.
This allows a user to keep typing without redundantly invoking the callback.
The debounced function is created on every `Form` render but it is memoized against the function reference.
If the parent component is create a new `props.onSubmit` callback on every render, it will negate the benefits of debounce.
In this case, the parent component _must_ memoize its own `onSubmit` callback against its appropriate dependencies.

```jsx
import Form from<EMAIL_ADDRESS>
const refs = [
  React.createRef(),
  React.createRef(),
];

function TestComponent() {
  const [count, setCount] = React.useState(0);
  const [data, setData] = React.useState({
    first: 'Example for a persisted value',
    second: '',
  });

  function onSubmit(event) {
    setCount(count + 1);
    setData({
      first: event.data.first.value,
      second: event.data.second.value,
    })
  }

  return (
    <React.Fragment>
      <span>Saved count: {count}</span>
      <Form autoSave refs={refs} onSubmit={onSubmit}>
        {() => (
          <React.Fragment>
            <input name="first" defaultValue={data.first} ref={refs[0]} />
            <input name="second" defaultValue={data.second} ref={refs[1]} />
          </React.Fragment>
        )}
      </Form>
    </React.Fragment>
  );
}

<TestComponent />
```

repository: mavenlink/design-system

repo_name: mavenlink/design-system


text:
# N64 Wasm
Thanks for checking out N64 Wasm! An N64 emulator that runs in the browser. It is a port of the excellent RetroArch ParaLLEl Core to WebAssembly. This project started because I wanted to have a well playing open-source N64 emulator designed for the web. I also wanted to learn OpenGL and this was a good way to dive in. Game compatibility is decent with a good portion of the 3D games playable and at full speed on a mid-range computer - Mario 64, Ocarina of Time etc... There is currently an issue with some 2D games such as Dr Mario 64 and Pokemon Puzzle League which I am still investigating. I also tested on the iPhone 13 Pro and Xbox Series X Browser and it works great.

Supports the following features -
- Gamepad Support (Xbox and PS4 Controller tested)
- Button and Keyboard Remapping
- Save States and SRAM
  - They save in your browser so you can close and come back later
- Import/Export Save Files (see settings.js)
- Zoom Controls
- Full Screen
- Audio Support
- Cloud Save States (Host your own server)
- Multiple Controller Support

You can try it here: https://www.neilb.net/n64wasm/

# Build Instructions
I used WSL on Windows but any Linux environment would work as well. First Install Emscripten version 2.0.7
- create a folder somewhere in your environment to install emscripten
- git clone https://github.com/emscripten-core/emsdk.git
- cd emsdk
- ./emsdk install 2.0.7
- ./emsdk activate 2.0.7
- source ./emsdk_env.sh
- navigate back to the code folder in the N64Wasm repo
- run `make`
- then copy these 2 files from the code\ folder into the dist\ folder
  - n64wasm.js
  - n64wasm.wasm

# Hosting
This emulator supports hosting the app yourself with your own rom list. Create a folder called `roms` in the dist\ folder and copy them there. Then go into `romlist.js` and uncomment the code and populate the paths and names of your roms.

```javascript

var ROMLIST = [
    {url:"roms/rom1.z64",title:"Game 1"},
    {url:"roms/rom2.v64",title:"Game 2"},
    {url:"roms/rom3.v64",title:"Game 3"},
];

```
This will then display a dropdown on the UI to select a game

![romlist](screenshots/romlist.PNG)

You can also enable Cloud Save States with some additional configuration. See this [README](server/README.md) for information on how to set that up.

# Windows Version
If you want to actually do debugging you will want to get the Windows version working on your machine. Debugging in WebAssembly is practically non-existant other than logging print statements. I did all of my debugging and testing using the Windows version with Visual Studio 2019 and then would compile the web version with Emscripten. Make sure you are on a computer that has a graphics card which supports OpenGL.

- To get it up and running open up the N64_Wasm.vcxproj file in notepad and update the paths
  - update all the paths for the includes and libraries to where these are on your machine
  - the ones referencing the code folders should be where your source code is
  - now you can open up N64_Wasm.vcxproj using Visual Studio 2019
- Get the Libraries and headers for the following
  - the actual versions could vary but these were the ones I used
  - SDL2 - version 2.0.14
  - SDL2 Image - version 2.0.5
  - SDL2 TTF - version 2.0.15
  - GLEW - version 2.2.0
- Copy a rom to your working directory
  - and replace the name of that rom in mymain.cpp
  - `sprintf(rom_name, "%s", "game.z64");`
- Note - running in Release mode runs much faster than in Debug though you won't be able to set breakpoints

![pcversion](screenshots/pcversion.png)

# Screenshots

![screenshot](screenshots/screenshot1.PNG)
![screenshot](screenshots/screenshot2.PNG)
![screenshot](screenshots/screenshot3.PNG)
![screenshot](screenshots/screenshot4.PNG)
![screenshot](screenshots/screenshot5.PNG)

# iPhone 13 Pro
![screenshot](screenshots/iphone.jpg)

# References
- ParaLLEl N64 Core https://github.com/libretro/parallel-n64


text:
2020-10-01_20:51:56

# Getting plugins

Adding a plugin into an Unreal Engine project means putting the plugin's folder into the `Plugins` folder of the project.

## Source releases

If the plugin is open source in a public repositor then it is often enough to checkout, clone, or whatever the source control system in question calls it, the repository into the `Plugins` directory.
An example using git:
```
~/UnrealProjects/MyProject/Plugins$ git clone https://github.com/ue4plugins/TextAsset
```

Regenerate project files using `GenerateProjectFiles.(bat|sh)`, close Unreal Editor,  build the project, and relaunch Unreal Editor to use the new plugin.

## Binary releases

[[Build systems]] [Build systems](./Build%20systems.md)

repository: ibbles/LearningUnrealEngine

path: /Getting plugins.md

filename: Getting plugins.md

gha_language: Shell

repo_name: ibbles/LearningUnrealEngine


text:
### [CVE-2010-3592](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3592)
![](https://img.shields.io/static/v1?label=Product&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=n%2Fa&color=brighgreen)

### Description

Unspecified vulnerability in the Oracle Document Capture component in Oracle Fusion Middleware <IP_ADDRESS> and <IP_ADDRESS> allows remote attackers to affect integrity and availability via unknown vectors related to Internal Operations.

### POC

#### Reference
- http://www.oracle.com/technetwork/topics/security/cpujan2011-194091.html

#### Github
No PoCs found on GitHub currently.


text:
# Build a Space Game Part VI: End and Restart

## [Pre-lecture quiz](.github/pre-lecture-quiz.md)

There are different ways to express and *end condition* in a game. It's up to you as the creator of the game to say why the game has ended. Here are some reasons, if we assume we are talking about the space game you have been building so far:

- **`N` Enemy ships have been destroyed**: It's quite common if you divide up a game into different levels that you need to destroy `N` Enemy ships to complete a level
- **Your ship has been destroyed**: There are definitely games where you lose the game if your ship is destroyed. Another common approach is that you have the concept of lives.  Once all lives have been lost then you lose the game.
- **You've collected `N` points**: Another common end condition is for you to collect points. How you get points is up to you but it's quite common to assign points to various activities like destroying an enemy ship or maybe collect items that items *drop* when they are destroyed.
- **Complete a level**: This might involve several conditions such as `X` enemy ships destroyed, `Y` points collected or maybe that a specific item has been collected.

## Restarting

If people enjoy your game they are likely to want to replay it. Once the game ends for whatever reason you should offer an alternative to restart.

✅ Think a bit about under what conditions you find a game ends, and then how you are prompted to restart

## What to build

You will be adding these rules to your game:

1. **Winning the game**. Once all enemy ships have been destroyed, you win the game. Additionally display some kind of victory message.
1. **Restart**. Once all your lives are lost or the game is won, you should offer a way to restart the game. Remember! You will need to reinitialize the game and the previous game state should be cleared.

## Recommended steps

Locate the files that have been created for you in the `your-work` sub folder. It should contain the following:

```bash
-| assets
  -| enemyShip.png
  -| player.png
  -| laserRed.png
  -| life.png
-| index.html
-| app.js
-| package.json
```

You start your project the `your_work` folder by typing:

```bash
cd your-work
npm start
```

The above will start a HTTP Server on address `http://localhost:5000`. Open up a browser and input that address. Your game should be in a playable state.

> tip: to avoid warnings in Visual Studio Code, edit the `window.onload` function to call `gameLoopId` as is (without `let`), and declare the gameLoopId at the top of the file, independently: `let gameLoopId;`

### Add code

1. **Track end condition**. Add code that keeps track of the number of enemies, or if the hero ship has been destroyedby adding these two functions:

    ```javascript
    function isHeroDead() {
      return hero.life <= 0;
    }

    function isEnemiesDead() {
      const enemies = gameObjects.filter((go) => go.type === "Enemy" && !go.dead);
      return enemies.length === 0;
    }
    ```

1. **Add logic to message handlers**. Edit the `eventEmitter` to handle these conditions:

    ```javascript
    eventEmitter.on(Messages.COLLISION_ENEMY_LASER, (_, { first, second }) => {
        first.dead = true;
        second.dead = true;
        hero.incrementPoints();

        if (isEnemiesDead()) {
          eventEmitter.emit(Messages.GAME_END_WIN);
        }
    });

    eventEmitter.on(Messages.COLLISION_ENEMY_HERO, (_, { enemy }) => {
        enemy.dead = true;
        hero.decrementLife();
        if (isHeroDead())  {
          eventEmitter.emit(Messages.GAME_END_LOSS);
          return; // loss before victory
        }
        if (isEnemiesDead()) {
          eventEmitter.emit(Messages.GAME_END_WIN);
        }
    });

    eventEmitter.on(Messages.GAME_END_WIN, () => {
        endGame(true);
    });

    eventEmitter.on(Messages.GAME_END_LOSS, () => {
      endGame(false);
    });
    ```

1. **Add new message types**. Add these Messages to the constants object:

    ```javascript
    GAME_END_LOSS: "GAME_END_LOSS",
    GAME_END_WIN: "GAME_END_WIN",
    ```

2. **Add restart code** code that restarts the game at the press of a selected button.

   1. **Listen to key press `Enter`**. Edit your window's eventListener to listen for this press:

    ```javascript
     else if(evt.key === "Enter") {
        eventEmitter.emit(Messages.KEY_EVENT_ENTER);
      }
    ```

   1. **Add restart message**. Add this Message to your Messages constant:

        ```javascript
        KEY_EVENT_ENTER: "KEY_EVENT_ENTER",
        ```

1. **Implement game rules**.  Implement the following game rules:

   1. **Player win condition**. When all enemy ships are destroyed, display a victory message.

      1. First, create a `displayMessage()` function:

        ```javascript
        function displayMessage(message, color = "red") {
          ctx.font = "30px Arial";
          ctx.fillStyle = color;
          ctx.textAlign = "center";
          ctx.fillText(message, canvas.width / 2, canvas.height / 2);
        }
        ```

      1. Create an `endGame()` function:

        ```javascript
        function endGame(win) {
          clearInterval(gameLoopId);

          // set a delay so we are sure any paints have finished
          setTimeout(() => {
            ctx.clearRect(0, 0, canvas.width, canvas.height);
            ctx.fillStyle = "black";
            ctx.fillRect(0, 0, canvas.width, canvas.height);
            if (win) {
              displayMessage(
                "Victory!!! Pew Pew... - Press [Enter] to start a new game Captain Pew Pew",
                "green"
              );
            } else {
              displayMessage(
                "You died !!! Press [Enter] to start a new game Captain Pew Pew"
              );
            }
          }, 200)
        }
        ```

   1. **Restart logic**. When all lives are lost or the player won the game, display that the game can be restarted. Additionally restart the game when the *restart* key is hit (you can decide what key should be mapped to restart).

      1. Create the `resetGame()` function:

        ```javascript
        function resetGame() {
          if (gameLoopId) {
            clearInterval(gameLoopId);
            eventEmitter.clear();
            initGame();
            gameLoopId = setInterval(() => {
              ctx.clearRect(0, 0, canvas.width, canvas.height);
              ctx.fillStyle = "black";
              ctx.fillRect(0, 0, canvas.width, canvas.height);
              drawPoints();
              drawLife();
              updateGameObjects();
              drawGameObjects(ctx);
            }, 100);
          }
        }
        ```

     1. Add a call to the `eventEmitter` to reset the game in `initGame()`:

        ```javascript
        eventEmitter.on(Messages.KEY_EVENT_ENTER, () => {
          resetGame();
        });
        ```

     1. Add a `clear()` function to the EventEmitter:

        ```javascript
        clear() {
          this.listeners = {};
        }
        ```

👽 💥 🚀 Congratulations, Captain! Your game is complete! Well done! 🚀 💥 👽

---

## 🚀 Challenge

Add a sound! Can you add a sound to enhance your game play, maybe when there's a laser hit, or the hero dies or wins? Have a look at this [sandbox](https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_audio_play) to learn how to play sound using JavaScript

## [Post-lecture quiz](.github/post-lecture-quiz.md)

## Review & Self Study

Your assignment is to create a fresh sample game, so explore some of the interesting games out there to see what type of game you might build.

## Assignment

[Build a Sample Game](assignment.md)


text:
<!-- dx-header -->
# purge_dups (DNAnexus Platform App)

purge_dups

This is the source code for an app that runs on the DNAnexus Platform.
For more information about how to run or modify it, see
https://wiki.dnanexus.com/.
<!-- /dx-header -->

<!-- Insert a description of your app here -->

<!--
TODO: This app directory was automatically generated by dx-app-wizard;
please edit this Readme.md file to include essential documentation about
your app that would be helpful to users. (Also see the
Readme.developer.md.) Once you're done, you can remove these TODO
comments.

For more info, see https://wiki.dnanexus.com/Developer-Portal.
-->

repository: VGP/vgp-assembly

gha_license_id: NOASSERTION

repo_name: VGP/vgp-assembly


text:
# About Us

We are a team based in the [School of Computing, National University of Singapore](http://www.comp.nus.edu.sg).
Our project is a Task Manager for Jim.

## Project Team

#### [Ong Li-Jen](https://github.com/lijen1994)

Role: Project Lead

Responsibilities: Code Quality

-----

#### [Anniya Baskaran](https://github.com/AnniyaB)

Role: Developer

Responsibilities: Integration

-----

#### [Muhammad Arif Bin Syed Nasser](https://github.com/Halo3fanz)

Role: Developer

Responsibilities: Documentation

-----

#### [Zhang Hao](https://github.com/e0008233)

Role: Developer

Responsibilities: Dev Ops

-----

## Project Mentor

#### [Pierce Anderson Fu]()

Phase C tutor

-----

gha_language: Java


text:
---
layout: default
---

# 1994-02-14 - Markoff on Cypherpunks

## Header Data

From: Duncan Frissell<EMAIL_ADDRESS>To<EMAIL_ADDRESS>Message Hash: 0046cee73c43771b6b392d00a91678250de57dec5fdceffe6fe84b0aafeb96fc

Message ID<EMAIL_ADDRESS>Reply To: _N/A_

UTC Datetime: 1994-02-14 20:11:31 UTC

Raw Date: Mon, 14 Feb 94 12:11:31 PST

## Raw message

```
{% raw  %}From: Duncan Frissell<EMAIL_ADDRESS>Date: Mon, 14 Feb 94 12:11:31 PST
To<EMAIL_ADDRESS>Subject: Markoff on Cypherpunks
Message-ID<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: text/plain

For personal use only...

Keyboarding by Lois Roth

NEW YORK TIMES

SUNDAY, FEBRUARY 13, 1994

Ideas & Trends

Cyberspace Under Lock And Key

By  John Markoff

SAN FRANCISCO

In Silicon Valley some of the country's best computer hackers are talking
about acts of civil disobedience in cyberspace.

Their target is a plan by the Federal Government to discourage a
proliferation of coding schemes that insure electronic conversations are
private -- from everyone including the authorities.  Under a plan being
pushed by the Clinton Administration, the computer industry would be
strongly encouraged to adopt a new data scrambling standard, embodied in
a device called the Clipper Chip, that would allow law enforcement
agencies, armed with court orders, to eavesdrop on electronic
communications.

Earlier this month, Vice President Al Gore said the proposed standard was
an important law and order issue for the Administration.  The danger, he
warned, is that unchecked computer coding technology will make it possible
for terrorists and criminals to have secret electronic conversations.

The White House is also pressing for legislation that would require
telephone networks, cable companies and wireless communications services
to install systems that allow law enforcers to listen in.

While the Clipper system is voluntary today, a coalition of Silicon Valley
business executives and civil liberties advocates argues that there is no
guarantee that it won't be made mandatory by a future Administration.
In the meantime, it could become a de facto standard as companies that
want to do Government business would have to install the chips in their
products.  Furthermore the Government could use existing export laws to
require Clipper chips in any computers shipped to other countries.

"They're asking us to ship millions of computers abroad with a chip
stamped J. Edgar Hoover inside," said John Gage, director of the science
office at Sun Microsystems Inc., a maker of computer work stations based
in Mountain View, Calif.  "We refuse to do it."

A Silicon Valley group called Cypherpunks, which wants to make free and
powerful cryptography available to the masses, has been discussing ways to
trick officials into thinking the keys to the Clipper code have been
stolen.  Others are considering violating export restriction laws by
sending thousands of copies of encoding software out of the country over
the Internet.

In fact, the ability to devise coding schemes -- unbreakable even by the
most powerful supercomputers -- is so widespread that trying to impose
a universal standard may be like trying to enforce Prohibition.  Home-
brew coding software can be easily exported by electronic rumrunners on
computer disks or instantly sent over electronic networks to any city in
the world.

With Clipper, which was developed by the National Security Agency,
communications are mathematically scrambled with an unbreakable code, but
an extra set of two keys -- actually long numbers -- would permit
authorized third parties to listen in, with the same restrictions that
now apply to wiretapping.

As a safeguard, both keys would be required to monitor conversations.  But
some opponents argue that the system could still be abused by Government
officials or clever hackers who are able to steal the code.

They also point out that despite claims that Clipper is necessary for
national security, no other foreign Government or foreign company has
indicated that it is willing to use a coding system that is breakable
by the United States spying agencies.  Even close allies like Canada
and Britain have said they are not willing to adopt Clipper.

Last week, Michael Nelson, an Administration official in charge of
technology policy, broadcast an electronic mail message over the Internet
to reassure computer users that the Government has no intention of
enforcing mandatory encryption.  But skeptics remain unpersuaded.  "They
are utterly transfixed with the horrible vision of the nuclear armed
terrorist," said John Perry Barlow, a founder of the Electronic Frontier
Foundation, a public interest computer group that is campaigning to stop
the Clipper chip.  "This is the last ditch effort of the old superpowers
trying to establish imperial control over  cyberspace."

Across the Internet, activists are discussing civil disobedience
strategies while mainstream groups like the Electronic Frontier Foundation
and the Computer Scientists for Social Responsibility are organizing a
lobbying attempt against Clipper.

But some hackers aren't waiting for the government to back down.  They're
pressing ahead with their networks.  A programmer named Philip Zimmerman
has written free software called Pretty Good Privacy for protecting
electronic mail messages.  The program touched off a Justice Department
investigation after it was sent overseas through international networks.

Now Mr. Zimmerman is working on another free program that will allow
personal computers, equipped with microphones, speakers and conventional
high-speed modems, to act as secure telephones, allowing their users to
have private conversations that can't be overheard.  This promises to be
about as popular with Clipper supporters as radar detectors are with the
highway patrol.

"They were angry about Pretty Good Privacy," said Mr. Zimmerman.  "They're
going to go ballistic over this."

--- WinQwk 2.0b#1165

{% endraw %}
```

## Thread

+ Return to [February 1994](/archive/1994/02)

+ Return to "[Duncan Frissell <frissell@panix.com>](/authors/duncan_frissell_frissell_at_panix_com_)"

+ 1994-02-14 (Mon, 14 Feb 94 12:11:31 PST) - Markoff on Cypherpunks - _Duncan Frissell<EMAIL_ADDRESS>


text:
# Brancho

Brancho is a tool which helps to create branches with a defined naming convention.

## Installation

`composer require --dev stereomon/brancho`

## Configuration

After the installation you will need to configure brancho. The default configuration file is named `.brancho`.

### Pattern

Here you describe how your branch name should look like. In the pattern you can use placeholders e.g. `{resolverName}` which are filled with the result of the configured resolvers.

### Resolvers

Resolvers are used to resolve values for your placeholders. The result of the resolver is than mapped into the configured pattern. A resolver can receive information from anywhere.
To build your own resolver you need to implement the `\Brancho\Resolver\ResolverInterface`. You will then have access to :

- `\Symfony\Component\Console\Input\InputInterface`
- `\Symfony\Component\Console\Output\OutputInterface`
- `\Brancho\Context\ContextInterface`

Symfony's interfaces can be used to retrieve input data or to ask for any user input. Read more about this in [Symfony's documentation](https://symfony.com/doc/current/components/console/helpers/questionhelper.html).

Through the `\Brancho\Context\ContextInterface` you get access to the configuration and to the configured filters.

### Filters

Filters are used to filter user input into a normalized format. Think of a user input which is copied from somewhere e.g. a Ticket name or a short description. Usually these contain whitespaces and capital letters which are not allowed in git branch names.

`vendor/bin/branch init`

repository: stereomon/brancho

repo_name: stereomon/brancho


text:
# ImageQA
Deep Learning Course, 2016

The aim of the project is to answer questions posed in natural language in the context of an image. We use LSTM nodes to encode the question along with ConvNets to encode the image, and apply a word-by-word attention mechanism to predict the single-word answer.

Datasets : VQA, COCO-QA

repository: liviust/ImageQA

repo_name: liviust/ImageQA


text:
 Feature Toggle Application

[![Open Source Love svg2](https://badges.frapsoft.com/os/v2/open-source.svg?v=103)](https://GitHub.com/guilhermeborgesbastos/feature-toggle/stargazers/) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/66d88b715cdb4127a80c358941c59683)](https://www.codacy.com?utm_source=github.com&utm_medium=referral&utm_content=guilhermeborgesbastos/feature-toggle&utm_campaign=Badge_Grade)

A Web application that allows users to manage feature toggles for their applications.

Other applications can then query this service to get active features for customers.

[![Watch the video](/markdown/preview.jpg)](https://featuretoggle.guilhermeborgesbastos.com/?source=github)

## What's the feature toggles concept?

If you are not familiar with the concept of feature toggles, you are welcome to read this excellent article:
[https://martinfowler.com/articles/feature-toggles.html](https://martinfowler.com/articles/feature-toggles.html)

## What's included?

* An Spring Boot RESTful API with authorization and authentication system using OAuth2 and JWT;
* An Angular application to manage Feature Toggles, Customers, and Users.
* Multiple authorization levels with SUPER_ADMIN, PRODUCT_OWNER, and CLIENT;
* A SQL Database schema to support data persistence;
* Source code verified by static code analyzers;

## RESTful API

The endpoins of the Spring Boot API can be easily imported into the [Insomnia](https://insomnia.rest/) ( the leading Open Source API Client) by clicking on the button below:

[![Run in Insomnia}](https://insomnia.rest/images/run.svg)](https://insomnia.rest/run/?label=Feature%20Toggle%20API&uri=https%3A%2F%2Fraw.githubusercontent.com%2Fguilhermeborgesbastos%2Ffeature-toggle%2Fmaster%2Fmarkdown%2FInsomnia-Feature-Toggle-API-2020-07-27.json%3Ftoken%3DABJRES7ZSO5WRMA42733HCS7D3ISC)

## Prerequisite

### On the front-end side

Follow the steps below to properly install the required dependencies for the front-end on your local environment.

1. It is required to have Node.js with version _12.18.0_ or higher. To see what version of Node.js is installed on your machine type the following command in the terminal:
```
node -v
```

2. If you haven't installed Node.js in your machine then go to [this link](https://nodejs.org/en/download/) in order to install node.

3. It is required to have NPM with version _6.14.0_ or higher. To see what version of NPM is installed on your machine type the following command in the terminal:
```
npm -v
```

4. If you haven't installed NPM in your machine then go to [this link](https://www.npmjs.com/get-npm) in order to install NPM.

### On the back-end side

Follow the steps below to properly install the required dependencies for the back-end on your local environment.

1. It is required to have JAVA with version _1.8_. To see what version of JAVA is installed on your machine type the following command in the terminal:
```
java -version
```

2. If you haven't installed JAVA in your machine then go to [this link](https://www.java.com/) in order to install it.

3. Install and configure the MySQL following [this link](https://dev.mysql.com/doc/mysql-installation-excerpt/5.7/en/).

4. Create a new database called `feature_toggle` as a local database.

5. Import the database schema from `/database/schema.sql` into the `feature_toggle` database.

6. Import the 'dump data' from the `/database/schema-dumb-data.sql` into the `feature_toggle` database.

## Installing and Executing locally

1. Fork this repository, by clicking the `Fork` button at the top-right on this page.
[![Learn how to fork GitHub projects](/markdown/fork.png)](https://guides.github.com/activities/forking/)

2. Clone the forked repository from your GitHub account.
```
git clone https://github.com/[replace-with-your-github-username]/feature-toggle.git
```

3. Edit the `/src/main/resources/application.properties` file with your local MySQL credentials.

4. Go to the cloned directory (e.g. `cd feature-toggle`).

5. Run `mvn clean install` to build the application.

6. Inner the `/target` folder of the built project, start the Spring Boot RESTful API:
```
cd /target
java -jar feature-toggle-0.0.1-SNAPSHOT.jar com.gbastos.featuretoggleapi.Application
```

7. Inner the `/src/main/resources/frontend` folder of the cloned project, start the Angular application:
```
ng serve --host <IP_ADDRESS>
```

8. After that, the command will start a server instance and listen on port `4200`. Open (http://localhost:4200/) in your browser. The **Feature Toggle** login will be displayed.

Use the default users below to access the application:

| Username | Password | Role |
| :---: | :---: | :---: |
|<EMAIL_ADDRESS>| A4Dc$%/** | SUPER_ADMIN |
|<EMAIL_ADDRESS>| 4d8Y%$#@ | PRODUCT_OWNER |
|<EMAIL_ADDRESS>| 145hJA87* | CLIENT |

## Credits

This project uses several open source packages:

- [Angular](https://github.com/angular)
- [Angular CLI](https://cli.angular.io)
- [Angular Material](https://material.angular.io/)
- [Spring Boot](https://spring.io/projects/spring-boot)
- [Apache Maven](https://maven.apache.org/)
- [JWT](https://jwt.io/)

---

> Site [featuretoggle.guilhermeborgesbastos.com](https://featuretoggle.guilhermeborgesbastos.com)

> LinkedIn [profile](https://www.linkedin.com/in/guilhermeborgesbastos)

> Facebook [profile](https://www.facebook.com/guilherme.borgesbastos)

## License

The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).

repository: guilhermeborgesbastos/feature-toggle

repo_name: guilhermeborgesbastos/feature-toggle


text:
# Versioning

Versioning for ElectionGuard as the Software Development Kit (SDK) may seem complex, particularly between the Specification, the code repositories, and the serialized files in the sample data. To attempt to reduce the complexity, the versioning for ElectionGuard will be as the whole SDK including the serialization, instead of individual components. This is to help the users of ElectionGuard identify the pieces and parts that function together. As an example, a verifier will need to support the same version(s) of ElectionGuard as the election system it is verifying.

## How It Works

- **SDK** version will line up with a specification post 1.0. This is to allow contributors to develop following the ElectionGuard Specification of the SDK and utilize the badge system to indicate what their code supports.

- **Major** versions will indicate this top level version consistently across the repositories starting in 1.0. The goal is to keep the Election Record and other serialized files consistent outside of major versions changes.

- **Minor** and smaller versions can differ to allow freedom within the code repositories. For example, the latest version python core could be v2.1.1 while the c++ core is at v2.48.0.

## Current

### ElectionGuard 1.0

| Part           | Link          |    Release  |
|:---------------|:--------------| ------------|
| Specification  |[PDF][specs]   |    1.1      |
| Sample Data    | _Unreleased_  |    1.0      |
| Python Core    | _Unreleased_  |    1.4      |
| C++ Core       | _Unreleased_  |    1.0      |
| Python API     | _Unreleased_  |    1.1      |
| React UI       | _Unreleased_  |    1.0      |

## Future

### ElectionGuard 2.0

| Part           | Link          |    Release  |
|:---------------|:--------------| ------------|
| Specification  | _Unreleased_  |    2.0      |
| Sample Data    | _Unreleased_  |    2.0      |
| Python Core    | _Unreleased_  |    2.0      |
| C++ Core       | _Unreleased_  |    2.0      |
| Python API     | _Unreleased_  |    2.0      |
| React UI       | _Unreleased_  |    2.0      |

## Previous

### ElectionGuard 0.95

| Part           | Link          |    Release  |
|:---------------|:--------------| ------------|
| Specification  |[PDF][specs]   |    0.95     |
| Sample Data    |[Source][95-1] |    0.95     |
| Python Core    |[Source][95-2] |    1.2.2    |
| C++ Core       |[Source][95-3] |    0.1.6    |

### ElectionGuard 0.85

| Part          | Link          |    Release  |
|:--------------|:--------------| ------------|
| Specification |[PDF][specs]   |    0.85     |
| C Core        |  _Deprecated_ |    1.0      |
| C# Core       |  _Deprecated_ |    1.0      |

<!--Links--->
[specs]: ../spec/index.md
[95-1]: https://github.com/microsoft/electionguard-python/tree/1.2.2/data
[95-2]: https://github.com/microsoft/electionguard-python/tree/1.2.2
[95-3]: https://github.com/microsoft/electionguard-cpp/tree/0.1.6

repository: microsoft/electionguard

gha_language: Python

repo_name: microsoft/electionguard


text:
# Iterplus
The best of Rust/Haskell/Python iterators in Javascript.

# Why Iterplus?
Javascript iterators are weak. Really weak. Like, the only method they have is to get the next value levels of weak. To make matters worse, non-Array containers in Javascript have little to no utility methods, making using them incredibly clunky. By adding powerful functionality to iterators, every single data container gains additional functionality. Also, iterators are lazy, which means they save memory and avoid unncessary calculations.

# Installation
Iterplus is available on npm! Just install it with:
```sh
npm install iterplus
```
It can also be bundled for the web, but you'll have to figure that out for now.

# Sample Code
Here are some Leetcode problems solved using iterplus (you can find these in `samples/`):
```ts
// https://leetcode.com/problems/longest-common-prefix/
import {iterplus} from "iterplus";

function longestCommonPrefix(strs: string[]): string {
    return iterplus(strs[0])
        .zip(...strs.slice(1))
        .takeWhile(x => x.every(v => v === x[0]))
        .map(x => x[0])
        .collect()
        .join("");
}

console.log(longestCommonPrefix(["flower","flow","flight"]) || "(nothing)"); // fl
console.log(longestCommonPrefix(["dog","racecar","car"]) || "(nothing)"); // (nothing)
```

```ts
// https://leetcode.com/problems/implement-strstr/
import {range} from "iterplus";

function strStr(haystack: string, needle: string): number {
    return range(haystack.length)
        .findIndex(i => haystack.substr(i, needle.length) === needle);
}

console.log(strStr("hello", "ll")); // 2
console.log(strStr("chicken", "c")); // 0
console.log(strStr("chicken", "d")); // -1
```

```ts
// https://leetcode.com/problems/search-insert-position/
import {iterplus} from "iterplus";

function searchInsert(nums: number[], target: number): number {
    return iterplus(nums)
        .concat([Infinity])
        .enumerate()
        .skipWhile(([_, v]) => v < target)
        .nextVal()![0];
}

console.log(searchInsert([1, 3, 5, 6], 5)); // 2
console.log(searchInsert([1, 3, 5, 6], 2)); // 1
console.log(searchInsert([1, 3, 5, 6], 7)); // 4
console.log(searchInsert([1, 3, 5, 6], 0)); // 0

```

# Usage

## Node

```ts
import {iterplus, range} from "iterplus";

console.log(iterplus([1,2,3,4,5,6,7]).sum())

for (const i of range(0, 13)) {
    console.log(i)
}
```

## Deno

```ts

import {iterplus, range} from "https://raw.githubusercontent.com/Aplet123/iterplus/master/deno_compat/index.ts";

console.log(iterplus([1,2,3,4,5,6,7]).sum())

for (const i of range(0, 13)) {
    console.log(i)
}
```

# Documentation
You can find the generated docs at [https://aplet123.github.io/iterplus/](https://aplet123.github.io/iterplus/).


text:
Testing [https://github.com/justadudewhohacks/face-api.js/](faceapi.js) implementation in react that also include the facedetection on livefeed video webcam.

To setup the images, please edit variable "labels" in "loadImages" function.

```javascript
    const loadImages = async () => {
      ...
      const labels = ['Adi Martha', 'Seno', 'Wendy'];
      ...
    };
```
Ensure to put all models from [https://github.com/justadudewhohacks/face-api.js/](faceapi.js) in the "public\models" folder.

At the end your public folder structure should be looks like this:

* public\images
* public\models

## Available Scripts

In the project directory, you can run:

### `yarn start`

This will run the NPM in HTTPS mode with certificate located on /ssl folder.

**Please ensure to already put your "server.crt" and "server.key" in the folder before run it.**

We need HTTPS as accessing webcam/video is needed to be done under secure-context, so it will be easier if we already setup the development process under secure-context (HTTPS).

Open [https://localhost:3000](https://localhost:3000) to view it in the browser.

The page will reload if you make edits.

You will also see any lint errors in the console.

### `yarn build`

Builds the app for production to the `build` folder.

It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.

Your app is ready to be deployed!

See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.

### `yarn eject`

**Note: this is a one-way operation. Once you `eject`, you can’t go back!**

If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.

 The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

### Code Splitting

This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting

### Analyzing the Bundle Size

This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size

### Making a Progressive Web App

This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app

### Advanced Configuration

This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration

### Deployment

This section has moved here: https://facebook.github.io/create-react-app/docs/deployment

### `yarn build` fails to minify

This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify

repository: billyinferno/test-faceapi

repo_name: billyinferno/test-faceapi


text:
## Conjugator

Conjugator helps Spanish learners practice verb conjugations. It's the perfect conjugation quiz!

## Features

- Practice conjugating verbs in 12 tenses.
- Track your learning progress for the week, month, or year with an interactive dashboard.
- Multiple difficulty settings for students of all levels.

repository: build-week-conjugator/marketing-page

gha_language: CSS

repo_name: build-week-conjugator/marketing-page


text:
RCloud-flavored Ace

RCloud's version of ace.js is the standard ace-builds distribution (`src` version), with the
following changes:

- we concatenate using grunt (see RCloud root Gruntfile.js)
- `ace/_begin.js` and `ace/_end.js` backup and restore some global variables; this may have a
  similar effect to the `src-noconflict` version
- we use the following files from `rstudio/ace-cpp-autoindent` - these appear to be the same sources
  that RStudio uses, but more accessible, since RStudio appears to be a huge, monolithic repo
  - `r.js` -> `mode-r.js`
  - `auto_brace_insert.js`
  - `r_code_model.js`
  - `r_highlight_rules.js`
  - `r_matching_brace_outdent.js`
  - `r_scope_tree.js`
  - `tex_highlight_rules.js`
- all `require` paths in those files must be prefixed with `ace/`
- the Ace API has changed a bit since those modes were published, and last I checked RStudio was
  using the old Ace. So there are a few minor patches needed to make these files work. Currently
  those changes are in commit ffab1b007b0445739eb269c64cf7afac71992fd7
- we add `\.` to the identifier regex so that autocomplete replaces whole R identifiers.
- `getCompletions` is defined synchronously in Ace, but we need it to be synchronous in order to
  call an R function
- there's a hack in `ext-language_tools.js` where we need to create an array from
  `selection.getRange()` instead of `selection.getAllRanges()` - unclear why the latter doesn't work
- ace-cpp-autoindent needs extra parameters for `mode.getNextLineIndent()` to work
- add call to rcloud.get_completions for python mode
- resize completion popup to fit contents in `ext-language_tools.js`

repository: att/rcloud

branch_name: refs/heads/develop

repo_name: att/rcloud


text:
# Hf-Api

A Ruby gem for easy integration of Hypofriend API

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'hf-api', git: 'https://github.com/uenyingwa/hf-api', branch: 'main'
```

And then execute:

    $ bundle install

Or install it yourself as:

    $ gem install hf-api

## Usage

### Instantiate Offer Object
```ruby
offer = Hf::Api.new
```

### Get Offer
```ruby
offer.new_offer(loan_amount: 350000, property_value: 350000, repayment: 1.0, years_fixed: 15)
```

If response is unsuccessful, a `Hf::Api::OfferError` error is thrown.

## Development

After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`.

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/uenyingwa/hf-api. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/uenyingwa/hf-api/blob/master/CODE_OF_CONDUCT.md).

## License

The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).

repository: uenyingwa/hf-api

repo_name: uenyingwa/hf-api


text:
# Attestation Library Tutorial

## Signing

The Signer generates Attestations using a private key. Before creating any Attestations, you must first create a Signer initialized with a private key. Then you can pass the Signer a payload, which the Signer signs and returns in an Attestation.

1. Create a Signer.

   Create a Signer by calling the appropriate `NewSigner` constructor based on the type of Attestation you wish to create. For example, if you want to create PGP Attestations, call `NewPgpSigner`.

   ### PGP
   For PGP, the signer is constructed by passing in an ASCII-armored PGP private key. If the private key is passphrase-encrypted, the passphrase should be passed through the `passphrase` argument. Otherwise, `passphrase` should be an empty string.
   ```
   privateKey := `-----BEGIN PGP PRIVATE KEY BLOCK-----
   ...
   `
   passphrase := "some-passphrase"
   signer, err := NewPgpSigner([]byte(privateKey), passphrase)
   ```

   ### Raw PKIX / JWT
   For PKIX and JWT, the signer is constructed by passing in the ASCII-armored private key and its SignatureAlgorithm (see [list of supported SignatureAlgorithms](https://github.com/grafeas/kritis/blob/master/pkg/attestlib/signature_algorithm.go#L24)), as well as the ID of the corresponding public key:

   #### PKIX
   ```
   privateKey := `-----BEGIN PRIVATE KEY-----
   ...
   `
   signer, err := NewPkixSigner([]byte(privateKey), "some-key-id", EcdsaP256Sha256)
   ```

   #### JWT
   ```
   privateKey := `-----BEGIN PRIVATE KEY-----
   ...
   `
   signer, err := NewJwtSigner([]byte(privateKey), "some-key-id", EcdsaP256Sha256)
   ```

2. Call CreateAttestation.

	Create an Attestation by calling the Signer’s `CreateAttestation` method, passing in the payload you wish to have signed as a byte array. The payload should contain the image name and digest.

    ```
    payload := `{
        "critical": {
            ...
    }`
    attestation, err := signer.CreateAttestation([]byte(payload))
    ```

   ### PGP
    For PGP, the `CreateAttestation` method creates an attached signature and stores it in the Attestation’s `Signature` field. (An attached signature contains both the signature and the signed payload).

   ### PKIX
    For PKIX, the `CreateAttestation` method creates a signature and stores it in the Attestation’s `Signature` field. The signed payload is stored in the Attestation’s `SerializedPayload` field.

   ### JWT
   The `CreateAttestation` method generates a JWT consisting of three parts: a header, payload, and signature. The following fields are populated in the header:
   ```
   {
       "typ": "JWT",
       "alg": signature_algorithm,
       "kid": public_key_id,
   }
   ```

   The payload containing the image digest is stored in the payload section. The signature is stored in the signature section. The JWT is serialized and stored in the Attestation’s `Signature` field.

## Verifying

The Verifier holds a set of PublicKeys. When given an Attestation, the Verifier checks if any of its PublicKeys can verify the Attestation. To verify an Attestation, you must create a Verifier, which is initialized with a set of PublicKeys.

1. Create a slice of PublicKeys.

   Create a PublicKey by calling the appropriate `NewPublicKey` constructor based on the type of Attestation that key should verify. For example, if you have a key that verifies PGP Attestations, call `NewPgpPublicKey`.

   ### PGP
   A PGP PublicKey can be created by passing in the raw key material:
   ```
   publicKey := `-----BEGIN PGP PUBLIC KEY BLOCK-----
   `
   key, err := NewPgpPublicKey([]byte(publicKey))
   ```

   ### Raw PKIX / JWT
   A PKIX or JWT PublicKey can be created by passing in the raw key material, a key ID, and the key’s SignatureAlgorithm (see [list of supported SignatureAlgorithms](https://github.com/grafeas/kritis/blob/master/pkg/attestlib/signature_algorithm.go#L24)). Note that if the key ID is left as an empty string, a key ID will be generated based on the DER of the key material.
   #### PKIX
   ```
   publicKey := `-----BEGIN PUBLIC KEY BLOCK-----
   `
   key, err := NewPkixPublicKey([]byte(publicKey), “some-key-id”, EcdsaP256Sha256)
   ```

   #### JWT
   ```
   publicKey := `-----BEGIN PUBLIC KEY BLOCK-----
   `
   key, err := NewJwtPublicKey([]byte(publicKey), “some-key-id”, EcdsaP256Sha256)
   ```

2. Create a Verifier.

   Create a Verifier using the `NewVerifier` constructor, passing in the image digest you are checking and a slice of PublicKeys.

   ```
   publicKeys := []PublicKey{ ... }
   image := "gcr.io/foo@sha256:bar"
   verifier := NewVerifier(image, publicKeys)
   ```

3. Call VerifyAttestation.

   Verify an Attestation by passing it to the Verifier’s `VerifyAttestation` method. The method will first check that the Verifier holds a public key that verifies the Attestation's signature. It then extracts data from the Attestation's payload, including the image name and digest. It checks that the image name and digest match the `image` you are verifying.

   If either step fails, the method returns an error:

   ```
   if err := verifier.VerifyAttestation(attestation); err != nil {
        // attestation could not be verified
   }
   ```

   ### JWT
   For JWT, the `VerifyAttestation` method additionally checks for the well-formedness of the JWT. In the header, it checks that the `crit` field is not populated; the `typ`, `kid`, and `alg` fields must be populated, but they are not used to verify the signature.

   The payload and signature are extracted from their respective sections of the JWT, and are used to cryptographically verify the signature.

repository: grafeas/kritis

repo_name: grafeas/kritis


text:
# Sick_Safetyscanners ROS2 Driver

A ROS2 Driver which reads the raw data from the SICK Safety Scanners and publishes the data as a laser_scan msg.

The ROS1 Driver can be found here: https://github.com/SICKAG/sick_safetyscanners

## Table of contents

- [Supported Hardware](#supported-hardware)
- [Getting started](#getting-started)
- [ROS API](#ros-api)
- [Creators](#creators)

## Supported Hardware

Supported are all microScan3, nanoScan3 and outdoorScan3 variants with Ethernet connection.

![ ](docs/images/safetyscanners.png  "Sick Safetyscanner Family")

## Getting started
In the future the ROS2 driver will be released as a debian package, currently only build from source
is supported.

### Prerequisites

* Linux
* Working ROS-Distro
* Correctly setup SICK Safety Scanner
* Connected SICK Safety Scanner and a correctly setup ethernet network. Both the host and the sensor have to be in the same network.

### Installation

#### Dependencies

Binary release is in progress. Currently they have to be in the colcon_ws.

* sick_safetyscanners_base (https://github.com/SICKAG/sick_safetyscanners_base)
* sick_safetyscanners2_interfaces (https://github.com/SICKAG/sick_safetyscanners2_interfaces)

#### From Source

```bash
source /opt/ros/<rosdistro>/setup.bash
mkdir -p ~/colcon_ws/src/
cd ~/colcon_ws/src/
git clone https://github.com/SICKAG/sick_safetyscanners2.git
cd ..
colcon build --symlink-install
source ~/colcon_ws/install/setup.sh
```

### Starting

To start the driver the launch file has to be started. For the driver to work correctly, the sensor ip and host ip have to be defined. These parameters can be passed to the sensor as arguments via launch file.

```
ros2 launch sick_safetyscanners2 sick_safetyscanners2_launch.py
```

This will start the driver with the in launch file defined parameters.

To visualize the data start rviz2 and subscribe to the ~/scan topic.
By default the frame_id is "scan" however this can be customized in the launch file

```
rviz2
```

### Troubleshooting

* Check if the sensor has power and is connected to the host.
* Check if both sensor and host are in the same subnet e.g. 192.168.1
* Check if the launch file is called with the correct parameters for IP-addresses and ports.

## ROS2 API

### Advertised ROS2 Topics

`
~/scan (type: sensor_msgs/msg/LaserScan)
`

Publishes a scan from the laserscanner

`
~/extended_laser_scan (type: sick_safetyscanners2_interfaces/msg/ExtendedLaserScan)
`

Extends the basic laser scan message by reflector data and intrusion data.

`
~/output_paths (type: sick_safetyscanners2_interfaces/msg/OutputPath)
`

Gives feedback of the current status of the output paths.

`
~/raw_data (type: sick_safetyscanners2_interfaces/msg/RawMicroScanData)
`

Publishes the raw data from the sensor as a ROS2 message.

### Advertised ROS2 Services

`
~/field_data
`

Returns all configured protective and warning fields for the sensor

### ROS2 parameters

| Parameter Name        | Type    | Default      | Required on startup | Information                                                                                |
| -------------         | ------  | -------      | ------------        | -------------                                                                                |
| sensor_ip             | String  | <IP_ADDRESS> | ✔                   | Sensor IP address. Can be passed as an argument to the launch file.                                                                                |
| host_ip               | String  | <IP_ADDRESS>  | ✔                   | Host IP address.  Can be passed as an argument to the launch file.                                                                                |
| interface_ip          | String  | <IP_ADDRESS>      |                     | Interface IP address of the receiving host computer, this needs to be set if the host IP is in the multicast IP range. The default is an undefined IP address and will return an error when multicast is used without a correct interface. |
| host_udp_port         | Integer | 0            |                     | Host UDP Port.  Can be passed as an argument to the launch file.  Zero allows system chosen port.                                                                                |
| frame_id              | String  | scan         |                     | The frame name of the sensor message                                                                                |
| skip                  | Integer | 0            |                     | The number of scans to skip between each measured scan.  For a 25Hz laser, setting 'skip' to 0 makes it publish at 25Hz, 'skip' to 1 makes it publish at 12.5Hz.                                                                           |
| angle_start           | Double  | 0.0          |                     | Start angle of scan in radians, if both start and end angle are equal, all angels are regarded.  0° is at the front of the scanner.                                                                                |
| angle_end             | Double  | 0.0          |                     | End angle of scan in radians, if both start and end angle are equal, all angels are regarded.  0° is at the front of the scanner.                                                                                |
| min_intensities       | Double  | 0.0          |                     | If this parameter is set, all points below the one set in the parameter are set to infinity                                                                                |
| channel_enabled       | Boolean | true         |                     | If the channel should be enabled                                                                                |
| general_system_state  | Boolean | true         |                     | If the general system state should be published                                                                                |
| derived_settings      | Boolean | true         |                     | If the derived settings should be published                                                                                |
| measurement_data      | Boolean | true         |                     | If the measurement data should be published                                                                                |
| intrusion_data        | Boolean | true         |                     | If the intrusion data should be published                                                                                |
| application_io_data   | Boolean | true         |                     | If the application IO data should be published                                                                                |
| use_persistent_config | Boolean | false        |                     | If this flag is set, the configured angles from the sensor are loaded and used and the ROS parameters *angle_start* and *angle_end* are disregarded                                                                                |

## Creators

**Lennart Puck**

FZI Forschungszentrum Informatik

- <http://www.fzi.de>

on behalf of SICK AG

- <http://www.sick.com>