use curator v 3.x - we cannot use 4.x yet

looks like curator 4.0 was officially released to pypi - and it doesn't work with our code - drop back to 3.x for now.
@sosiouxme @ewolinetz PTAL

LGTM


Write scripts to set up development environments for Portable

As a corollary to PR# 475. There should exist a script which sets up the build environment (i.e. installs packages) for Portable also.

@tst-basilhuffman: The Docker setup scripts already set up the environment for Portable Server.  (The GEE Docker image, actually, already builds and installs Portable Server.)

Yes, I should have been more clear: this is for Windows and perhaps Mac, if the decision is ever made to officially support.


Specify commands to be executed when a session closes

Could be interesting to have a way to define additional commands to be executed when a session is killed.
It could be something like:

windows:
  - Minicom:
      layout: main-vertical
      panes:
        - bash:
            - cd /home/isidre/work/Kairos/iopath
        - minicom:
            - ln -s /home/isidre/work/Kairos/BJ/amp-shx/Enginyeria/Firmware/amp-shx-fw-mu01/AMP-SHX-FWMU01/json /home/isidre/work/Kairos/iopath/Download
            - ln -s /home/isidre/work/Kairos/BJ/amp-shx/Enginyeria/Firmware/amp-shx-fw-mu01/AMP-SHX-FWMU01/json /home/isidre/work/Kairos/iopath/Upload
            - ln -s /home/isidre/work/Kairos/BJ/amp-shx/Enginyeria/Firmware/amp-shx-fw-mu01/AMP-SHX-FWMU01/json /home/isidre/work/Kairos/iopath/Script
            - minicom

kill_session:
    - rm /home/isidre/work/Kairos/iopath/*

Have you tried using the following hooks?
# Run on project exit ( detaching from tmux session )
# on_project_exit: command

# Run on project stop
# on_project_stop: command

Have you tried using the following hooks?
# Run on project exit ( detaching from tmux session )
# on_project_exit: command

# Run on project stop
# on_project_stop: command


Package request: Vite

Project description
Frontend build tool that significantly improves the frontend development experience
Metadata

homepage URL: https://vitejs.dev/
source URL: https://github.com/vitejs/vite
license: mit
platforms: Node package

usually vite is installed locally in node_modules
nix-shell -p nodejs

node --version

npm i -g pnpm

pnpm --version

cd $(mktemp -d)

pnpm init

pnpm i -D vite

ls node_modules/vite/

npx vite --clearScreen=false

see also https://vitejs.dev/guide/#scaffolding-your-first-vite-project

yes ...
Node.js in the nixos wiki, and Javascript in the nixpkgs manual
are a bit "too much" for beginners, who just want to install and run some node project
feel free to add a Getting Started section to the wiki article

More recent versions of vite (>=5) now fail, even when installed with npm:
$ vite
/home/dnalor/y/node_modules/.pnpm/rollup@4.14.2/node_modules/rollup/dist/native.js:59
                throw new Error(
                      ^

Error: Cannot find module @rollup/rollup-linux-x64-musl. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.

See https://github.com/NixOS/nixpkgs/issues/294183


how to override the urls for each opeartion in yii2-user

how to override the urls for each opeartion in yii2-user?
for example:
register operation /user/registration/register
I wanna change it to /customer/register

Example (for use with pretty urls):
$config = [
...
    'modules' => [
        'user' => [
...
            'urlPrefix' => 'customer',
            'urlRules' => [
                '<action:(register|resend)>' => 'registration/<action>',
            ],
...
        ],
...
    ],
....

@jkmssoft is correct. You can override routes by using url manager.


Sm/sf-ify-plus-nuts-fix

What does this PR do?

fix the nuts problems (the NUTs test the CLI's install command, but plugin wasn't linked in one of the test sessions)
switch to sfCommand (no flag changes)
adds a 10s timeout for confirming unsigned plugin install

What issues does this PR fix or reference?
@W-12084477@

QA notes:
Functionality
Command
✅ successfully verify signature, defaults to npm registry if -r/--registry isn't specified.
DEBUG=*InstallationVerification* ./bin/dev plugins:trust:verify --npm @salesforce/plugin-user
✅ JSON output matches current sfdx:
./bin/dev plugins:trust:verify --npm @salesforce/plugin-user --json
❌ JSON output err name changed:
./bin/dev plugins:trust:verify --npm @mshanemc/sfdx-sos --json
err name: "name": "ShellExecError"
sfdx plugins:trust:verify --npm @mshanemc/sfdx-sos --json
err name: "name": "ShellExec"
✅ can set a custom registry with -r/--registry (logger shows used reg)
DEBUG=*InstallationVerification* ./bin/dev plugins:trust:verify --npm @salesforce/plugin-user -r https://registry.yarnpkg.com
✅ can check a specific pkg version using the [<@scope>/]<name>@<tag> format:
DEBUG=*InstallationVerification* ./bin/dev plugins:trust:verify --npm<EMAIL_ADDRESS>✅ warns if pkg isn't signed:
./bin/dev plugins:trust:verify --npm @mshanemc/sfdx-sosl
❌ plugins:trust:verify doesn't check if the plugin is in the allowlist:
cat $XDG_CONFIG_HOME/sfdx/unsignedPluginAllowList.json
[
  "@mshanemc/sfdx-sosl"
]

/bin/dev plugins:trust:verify --npm @mshanemc/sfdx-sosl
Checking for digital signature.
The plugin is not digitally signed.

sfdx plugins:trust:verify --npm @mshanemc/sfdx-sosl
Checking for digital signature.
The plugin [sfdx-sosl] is not digitally signed but it is allow-listed.

Verification hook
✅ plugins:install prompts for confirmation if a plugin isn't signed, defaults to N/no answer.
⚠ the prompt doesn't timeout and keeps waiting for an answer on stdin. Should this timeout after a few seconds?
When we were debugging the NUTs the job was timing out after an hour but that could have been avoided with a timeout in the prompt.
✅ Doesn't prompt for confirm if an unsigned plugin is in the allowlist.
Style
using sfdx v7.180.0 with the new help class for -h/--help
⚠ : The DESCRIPTION sections shows a duplicate msg
sfdx plugins:trust:verify --help

DESCRIPTION
  Validate a digital signature for a npm package.

  Validate a digital signature for a npm package.

✅ plugins:install prompts for confirmation if a plugin isn't signed, defaults to N/no answer.
⚠ the prompt doesn't timeout and keeps waiting for an answer on stdin. Should this timeout after a few seconds?
When we were debugging the NUTs the job was timing out after an hour but that could have been avoided with a timeout in the prompt.

⚠ the prompt times out after 10s, default answer is still no but the text msg changed, suggesting the default is y/yes:
sfdx latest-rc:
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? (y/N)
prompt from sf-plugins-core:
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? (Y/n)
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) sfdx plugins:install @mshanemc/sfdx-sosl
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? (Y/n)
    Error: Timed out after 10000 ms.
Installing plugin @mshanemc/sfdx-sosl... done

using sfdx v7.180.0 with the new help class for -h/--help
⚠ : The DESCRIPTION sections shows a duplicate msg

✅  summary and description aren't the same.

✅ signed plugin, confirm it's signed, no prompts.
✅ unsigned plugin, prompts for confirmation and times out after 30s:
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins:install @mshanemc/sfdx-sosl
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? (y/N)
    Error: Timed out after 30000 ms.
Installing plugin @mshanemc/sfdx-sosl... done
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ echo $?
2
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins
trust 2.1.0 (link) /Users/cdominguez/code/gh/sf/plugin-trust

✅ unsigned plugin, press enter for default answer, installation is canceled:
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins:install @mshanemc/sfdx-sosl
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? No
    InstallationCanceledError: The user canceled the plugin installation.
    Code: InstallationCanceledError
Installing plugin @mshanemc/sfdx-sosl... done
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins
trust 2.1.0 (link) /Users/cdominguez/code/gh/sf/plugin-trust

✅ unsiged plugin, answered no, installation is canceled:
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins:install @mshanemc/sfdx-sosl
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? No
    InstallationCanceledError: The user canceled the plugin installation.
    Code: InstallationCanceledError
Installing plugin @mshanemc/sfdx-sosl... done

✅ unsigned plugin, answered yes, installation starts:
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins:install @mshanemc/sfdx-sosl
? This plugin is not digitally signed and its authenticity cannot be verified. Continue installation? Yes
Finished digital signature check.
warning @mshanemc/sfdx-sosl > @salesforce/command > @salesforce/core > jsforce ><EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
warning @mshanemc/sfdx-sosl > @salesforce/command > @salesforce/core > jsforce > request ><EMAIL_ADDRESS>this library is no longer supported
warning @mshanemc/sfdx-sosl > @salesforce/command > @salesforce/core > jsforce > request ><EMAIL_ADDRESS>Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
warning @mshanemc/sfdx-sosl > @salesforce/command ><EMAIL_ADDRESS>Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
warning "@mshanemc/sfdx-sosl > @salesforce/command ><EMAIL_ADDRESS>has unmet peer dependency "@oclif/config@^1".
Installing plugin @mshanemc/sfdx-sosl... installed v1.1.0
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins
@mshanemc/sfdx-sosl 1.1.0
trust 2.1.0 (link) /Users/cdominguez/code/gh/sf/plugin-trust

✅ unsigned plugin but allowlisted, hooks recognizes allowlist and skips prompt:
➜  plugin-trust git:(sm/sf-ify-plus-nuts-fix) ✗ sfdx plugins:install @mshanemc/sfdx-sosl
The plugin [@mshanemc/sfdx-sosl] is not digitally signed but it is allow-listed.
Finished digital signature check.
Installing plugin @mshanemc/sfdx-sosl... ⣻ [1/4] Resolving packages...


Test

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-2.8%) to 50.451%

Totals

Change from base Build<PHONE_NUMBER>:
-2.8%

Covered Lines:
2916

Relevant Lines:
5588

💛  - Coveralls


Load hyperref before any \newtcolorbox

From the testfile one can see the previous hyperref target names like tcb<EMAIL_ADDRESS>are not unique throughout the document, for example the first pabox in section 1 and section 2 will use the same target name.
Loading hyperref before any \newtcolorbox and friends fixes this problem. Now the hyperref target are named like tcb<EMAIL_ADDRESS>(<box name>.<sec num>.<box num>), which reflect the setting number within=section.
See a related issue in https://github.com/T-F-S/tcolorbox/issues/135.
PS: Since \tcbuselibrary may load packages as well, just in case, loading of hyperref is moved after \tcbuselibrary.

Hi @muzimuzhi , thank you. And you're right of course. I also have the habit of keeping setup for a package close to the package call, but that sometimes bites us.  :-)
I'll merge, of course, and I'll take a look at the failing test, which considering your care in the PR is probably from the xetex engine. Btw, do you mind if, in the process, I drop the "section 2" in the test file? I usually keep the how-tos regression tests in sync with the actual How-to in the manual. I do get you were trying to make your point, and you did, but the effect of the change is already clear in the first section's anchors. WDYT?

Btw, do you mind if, in the process, I drop the "section 2" in the test file?

I'll delete it, update the testfiles and push a new commit.

Commits and changes are messed. Will tidy them.

Commits and changes are messed. Will tidy them.

done. Sorry it results in a force push.

Merged. And I'll cut a release because, though this is a small change, I have nothing lined up at the moment, and I also see no reason to hold this for an indefinite amount of time (and keep spreading a bad practice in the meantime).
Thank you very much @muzimuzhi !

BTW, a "section 2" test allows me to check the output by clicking links in the output PDF. :smile:

Well, yes, the proof of the pudding is in the eating.  :smile:
With time, I'm getting a little better at reading these logs, but whenever I create a new test file what I check first and foremost is the PDF. And I suspect I'll keep doing this for a long time. Sometimes, I'll create a dummy extra end page so that there's enough room to scroll, and I can "be sure the anchor is right". :wink:

Sometimes, I'll create a dummy extra end page so that there's enough room to scroll, and I can "be sure the anchor is right". 😉

+! 🎉


Unable to find credentials.conf file

Unable to find credentials.conf file location

credentials.conf must be created by you. By default our codebase is looking for it at the path prod_env/credentials.conf. The folder prod_env should also be created by you at the root of the repo.

@bhuvneshsaini I hope the previous suggestion worked for you. I am closing this issue due to inactivity. Feel free to reopen if you have further questions.


Corrected the check for cinder-volume install

The cinder-volume install wasn't working on vagrant centos with source install.

ok to test

retest

retest

LGTM


test installing R and RStudio with the scripts

The install_r script fails in the make part (which is part of the R source).
Created a dev branch where I am root in the docker image so I can test the script and figure out what is going on.
Update: Setting path temporarily fixes the problem. Here the PATH var is only for the RUN cmds.
  RUN PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin && \
    mkdir /rocker_scripts && \
    cp ${REPO_DIR}/scripts/install_R_source.sh /rocker_scripts/install_R_source.sh && \
    chmod +x /rocker_scripts/install_R_source.sh && \
    cd / && \
    /rocker_scripts/install_R_source.sh

Debug notes. Trying to get this to run
Start Codespace on py-rocket-2
docker run -d -p 8888:8888 --name test ghcr.io/nmfs-opensci/py-rocket-2:8e17b0058367
# run as root bash
docker exec -u root -it test /bin/bash

Then install stuff
cd /
source ${REPO_DIR}/rocker.sh # get env vars
# Read the Dockerfile and process each line
while IFS= read -r line; do
    # Check if the line starts with ENV or RUN
    if [[ "$line" == ENV* ]]; then
        # Export the environment variable from the ENV line
        eval $(echo "$line" | sed 's/^ENV //g')
    elif [[ "$line" == RUN* ]]; then
        # Run the command from the RUN line
        cmd=$(echo "$line" | sed 's/^RUN //g') || echo ${cmd}" encountered error. Continuing"
        echo "Executing: $cmd"
        eval "$cmd"
    fi
done < /rocker_scripts/r-ver_4.4.1.Dockerfile

Where I am at.

I forked rocker
Started codespace
ran docker build .  -f dockerfiles/r-ver_4.4.1.Dockerfile
build fine. takes 5 minutes or so

Here is the Dockerfile that repo2docker is making
FROM docker.io/library/buildpack-deps:jammy
  # Avoid prompts from apt
  ENV DEBIAN_FRONTEND=noninteractive
  # Set up locales properly
  RUN apt-get -qq update && \
      apt-get -qq install --yes --no-install-recommends locales > /dev/null && \
      apt-get -qq purge && \
      apt-get -qq clean && \
      rm -rf /var/lib/apt/lists/*
  RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
      locale-gen
  ENV LC_ALL=en_US.UTF-8 \
      LANG=en_US.UTF-8 \
      LANGUAGE=en_US.UTF-8
  # Use bash as default shell, rather than sh
  ENV SHELL=/bin/bash
  # Set up user
  ARG NB_USER
  ARG NB_UID
  ENV USER=${NB_USER} \
      HOME=/home/${NB_USER}
  RUN groupadd \
          --gid ${NB_UID} \
          ${NB_USER} && \
      useradd \
          --comment "Default user" \
          --create-home \
          --gid ${NB_UID} \
          --no-log-init \
          --shell /bin/bash \
          --uid ${NB_UID} \
          ${NB_USER}
  # Base package installs are not super interesting to users, so hide their outputs
  # If install fails for some reason, errors will still be printed
  RUN apt-get -qq update && \
      apt-get -qq install --yes --no-install-recommends \
         gettext-base \
         less \
         unzip \
         > /dev/null && \
      apt-get -qq purge && \
      apt-get -qq clean && \
      rm -rf /var/lib/apt/lists/*
  EXPOSE 8888
  # Environment variables required for build
  ENV APP_BASE=/srv
  ENV CONDA_DIR=${APP_BASE}/conda
  ENV NB_PYTHON_PREFIX=${CONDA_DIR}/envs/notebook
  ENV NPM_DIR=${APP_BASE}/npm
  ENV NPM_CONFIG_GLOBALCONFIG=${NPM_DIR}/npmrc
  ENV NB_ENVIRONMENT_FILE=/tmp/env/environment.lock
  ENV MAMBA_ROOT_PREFIX=${CONDA_DIR}
  ENV MAMBA_EXE=${CONDA_DIR}/bin/mamba
  ENV CONDA_PLATFORM=linux-64
  ENV KERNEL_PYTHON_PREFIX=${NB_PYTHON_PREFIX}
  # Special case PATH
  ENV PATH=${NB_PYTHON_PREFIX}/bin:${CONDA_DIR}/bin:${NPM_DIR}/bin:${PATH}
  # If scripts required during build are present, copy them
  COPY --chown=1000:1000 build_script_files/-2fopt-2fvenv-2flib-2fpython3-2e11-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2factivate-2dconda-2esh-e70a7b /etc/profile.d/activate-conda.sh
  COPY --chown=1000:1000 build_script_files/-2fopt-2fvenv-2flib-2fpython3-2e11-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2fenvironment-2epy-2d3-2e10-2dlinux-2d64-2elock-8fa955 /tmp/env/environment.lock
  COPY --chown=1000:1000 build_script_files/-2fopt-2fvenv-2flib-2fpython3-2e11-2fsite-2dpackages-2frepo2docker-2fbuildpacks-2fconda-2finstall-2dbase-2denv-2ebash-6a6072 /tmp/install-base-env.bash
  RUN TIMEFORMAT='time: %3R' \
  bash -c 'time /tmp/install-base-env.bash' && \
  rm -rf /tmp/install-base-env.bash /tmp/env
  RUN mkdir -p ${NPM_DIR} && \
  chown -R ${NB_USER}:${NB_USER} ${NPM_DIR}
  # ensure root user after build scripts
  USER root
  # Allow target path repo is cloned to be configurable
  ARG REPO_DIR=${HOME}
  ENV REPO_DIR=${REPO_DIR}
  # Create a folder and grant the user permissions if it doesn't exist
  RUN if [ ! -d "${REPO_DIR}" ]; then \
          /usr/bin/install -o ${NB_USER} -g ${NB_USER} -d "${REPO_DIR}"; \
      fi
  WORKDIR ${REPO_DIR}
  RUN chown ${NB_USER}:${NB_USER} ${REPO_DIR}
  # We want to allow two things:
  #   1. If there's a .local/bin directory in the repo, things there
  #      should automatically be in path
  #   2. postBuild and users should be able to install things into ~/.local/bin
  #      and have them be automatically in path
  #
  # The XDG standard suggests ~/.local/bin as the path for local user-specific
  # installs. See https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
  ENV PATH=${HOME}/.local/bin:${REPO_DIR}/.local/bin:${PATH}
  # The rest of the environment
  ENV CONDA_DEFAULT_ENV=${KERNEL_PYTHON_PREFIX}
  # Run pre-assemble scripts! These are instructions that depend on the content
  # of the repository but don't access any files in the repository. By executing
  # them before copying the repository itself we can cache these steps. For
  # example installing APT packages.
  # ensure root user after preassemble scripts
  USER root
  # Copy stuff.
  COPY --chown=1000:1000 src/ ${REPO_DIR}/
  # Run assemble scripts! These will actually turn the specification
  # in the repository into an image.
  # Container image Labels!
  # Put these at the end, since we don't want to rebuild everything
  # when these change!
  LABEL repo2docker.ref="refs/heads/dev2"
  LABEL repo2docker.repo="https://github.com/nmfs-opensci/py-rocket-2"
  LABEL repo2docker.version="[202](https://github.com/nmfs-opensci/py-rocket-2/actions/runs/11257663103/job/31302445744#step:5:205)4.07.0+28.g239c4f5"
  # We always want containers to run as non-root
  USER ${NB_USER}
  # Make sure that postBuild scripts are marked executable before executing them
  RUN chmod +x postBuild
  RUN ./postBuild
  # Add start script
  RUN chmod +x "${REPO_DIR}/start"
  ENV R2D_ENTRYPOINT="${REPO_DIR}/start"
  # Add entrypoint
  ENV PYTHONUNBUFFERED=1
  COPY /python3-login /usr/local/bin/python3-login
  COPY /repo2docker-entrypoint /usr/local/bin/repo2docker-entrypoint
  ENTRYPOINT ["/usr/local/bin/repo2docker-entrypoint"]
  # Specify the default command to run
  CMD ["jupyter", "notebook", "--ip", "<IP_ADDRESS>"]
  # Appendix:
  # Re-enable man pages disabled in Ubuntu 18 minimal image
  # https://wiki.ubuntu.com/Minimal
  USER root
  ENV R_VERSION="4.4.1"
  ENV R_HOME="/usr/local/lib/R"
  ENV TZ="Etc/UTC"
  RUN mkdir /rocker_scripts && \
    cp ${REPO_DIR}/install_R_source.sh /rocker_scripts/install_R_source.sh && \
    chmod +x /rocker_scripts/install_R_source.sh && \
    cd / && \
    /rocker_scripts/install_R_source.sh
  # Revert to default user
  USER ${NB_USER}

ok I was able to get myself out of libcurl header hell with
 ENV LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
 ENV PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig:$PKG_CONFIG_PATH
 ENV CURL_CONFIG=/usr/bin/curl-config

but this basic problem is the conda bins stuck in the path. Those ENV vars are telling it to ignore all the conda stuff.
/srv/conda/condabin:/home/codespace/.local/bin:/home/codespace/.local/bin:/srv/conda/envs/notebook/bin:/srv/conda/bin:/srv/npm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:

Setting the PATH temporarily back to what it was before micromamba was installed works and seems easiest.
  RUN PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin && \
    mkdir /rocker_scripts && \
    cp ${REPO_DIR}/scripts/install_R_source.sh /rocker_scripts/install_R_source.sh && \
    chmod +x /rocker_scripts/install_R_source.sh && \
    cd / && \
    /rocker_scripts/install_R_source.sh

Question is, it the conda stuff in the path in a repo2docker image generally going to cause a problem for R/RStudio.

Long journey but fixed #46 #45 #44 #44 #43 #42 #41 #40 #39 #38 and on and on
hard part was getting the ENV variables passed to the scripts.


PowerShell regions fold to next hash instead of to #endregion

VSCode Version: Code 1.14.2 (cb82febafda0c8c199b9201ad274e25d9a76874e, 2017-07-19T23:34:09.706Z)
OS Version: Windows_NT ia32 10.0.15063
Extensions:

Extension
Author (truncated)
Version

azuretoolsforvscode
bra
1.2.9

vscode-eslint
dba
1.2.11

azure-iot-toolkit
for
0.1.3

azure-functions-tools
joh
0.3.0

vscode-devskim
MS-
0.1.4

mssql
ms-
1.1.0

azurecli
ms-
0.1.0

csharp
ms-
1.11.0

js-atom-grammar
ms-
0.1.13

PowerShell
ms-
1.4.1

typescript-javascript-grammar
ms-
0.0.23

vscode-azureextensionpack
ms-
0.0.4

team
ms-
1.121.1

azurerm-vscode-tools
msa
0.3.6

vscode-docker
Pet
0.0.16

velocity
sod
0.1.0

usql-vscode-ext
usq
0.2.4

Steps to Reproduce:

Create PowerShell script section starting with #region string and ending with #endregion
Put a comment inside the region
Fold script at #region string
Result: vscode folds the region to the comment, and not to #endregion

Screenshots for clarification:

Reproduces without extensions: Yes

Looking at it further, it looks like there's a dependency on the indentation level.  If the comment was indented, it folds correctly:

It also appears that lines that shouldn't trigger a fold (no square brackets, curly braces, parenthesis, or hash) do:

Indentation currently is indentation based. Pls see #3422.


added emulators primarily focused on retro gaming: MAME, DosBox, Retr…

…oArch, PSP, Apple II/IIGS

Thank you for contributing to open-source-ios-apps 😉


test_classes: Provide path to test-backend for ease of copy/paste.

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

Looks reasonable, merged, thanks @alexmv!
I suppose there's no strong guarantee that . is the right path, but it's not like we can compute the CWD when this test-backend output may be in CI output anyway.


[feature] Preview-Diff Button in edit section

will be cool to have preview-diff  button in edit section .
its not very easy to check the difference of item when i need to exit from editing and then to search the item for view different.
i mean here :

I wish this was a thing as well, but it was removed in version <IP_ADDRESS>

I just click on the 'diff' button and open in a new tab. Then replace the diff text in the URL with preview and you get your preview. Just need to refresh after each save.
http://<IP_ADDRESS>:5005/preview/0c39070f-0073-4d15-bf1b-73a018a4b761#text

@Lord0fBytes hmmm

I wish this was a thing as well, but it was removed in version <IP_ADDRESS>

confusing, it never existed?
You can also use this link from 'diff'

You're right. I was mistaken about the button. For some reason I thought this was a separate preview button.


How to update to newest version?

I have version 3.6.2 installed on Windows but I really have no idea how to update to newest version 3.6.3 or even uninstall the current one.
I checked wiki and installation guide but it doesnt mention anything.
pip install anime-downloader[cloudflare] says - Requirement already satisfied for all of those lines.
I tried pip update if it maybe exists but it doesnt. :D
Could you add somewhere on wiki few lines about update & unistall?
Thank you for this amazing tool and for replying in advance. :D

pip install anime-downloader[cloudflare] -U


Global stubs are not thread-safe

We have specs that use VCR (hooking into webmock) to test some complex interactions. We stub a significant number (~1000) of requests per test, and the code under test is multi-threaded and processes work asynchronously and in parallel. We also run using JRuby.
In our most complex tests, we see a very rare failure mode where webmock returns a nil response for a request that should be stubbed, and then fails with the error:
[2020-10-07T15:45:07.492Z] [2020-10-07T15:45:07.460+00:00][709][2258][connectors][ERROR]: Exception: NoMethodError: undefined method `each_key' for nil:NilClass
[2020-10-07T15:45:07.492Z] /ci/ci_state/ruby_bundle/jruby/2.5.0/gems/webmock-3.8.1/lib/webmock/util/hash_validator.rb:10:in `validate_keys': undefined method `each_key' for nil:NilClass (NoMethodError)

After a lot of puts statements, I was able to track down the issue to this hash: https://github.com/bblimke/webmock/blob/master/lib/webmock/stub_registry.rb#L25. The global stubs that VCR registers use a hash that is not thread safe, and (in our case) shared between the VCR thread that is stubbing the request and the threads that are actually doing the work and under test. This results in (occasionally) a previously stubbed value being returned instead of the most recent. I can't quite understand the interaction, but somewhere in the VCR/webmock interoperability it seems that a nil value is always stubbed first, then the real value is stubbed almost immediately after. Due to the non-thread-safety though, the nil value is sometimes returned.
I believe this is rarely seen in the wild because MRI's "threading implementation" hides it. Note that we are using webmock 3.8.1 currently, but I did test with 3.9.1 and the behaviour was the same.
I have tested a fix locally and will open a PR, just wanted to get this issue in here for visibility.

Hi @adam-harwood
Thank you for the detailed description of the issue and the investigation you have done to trace it.
I look forward to seeing the PR 👍

it seems that a nil value is always stubbed first

Would you mind clarifying what you mean by nil value being stubbed? Do you mean the response is nil?

Would you mind clarifying what you mean by nil value being stubbed? Do you mean the response is nil?

Exactly. Specifically, the yield in register_global_stub is returning nil.


Disable animation looping

Hi there. Thanks for a very useful utility. I'm trying to add some recordings to a presentation, but can't figure out how to get the animation to simply stop once it reaches the end of the recording (instead of immediately looping back around). I tried poking around in the generated SVG but couldn't figure out how to get this to work (not very skilled at SMIL or SVG).
Deleting the anim_last.end+... hooks from all the begin attributes seemed to be what I'd need, but this simply makes everything disappear at the end of the animation rather than stopping at the final state of the screen.

@nbedos Do you think there's a way to change the SVG output that's getting interpolated into the templates in such a way that it's possible to recognize which elements are part of a single "frame"?

@masaeedu No, sorry, I'd rather not add more information in the SVG output. As of today the ouput of termtosvg is kind of messy and it needs to be reworked. I'll keep in mind that you're interested in getting an animation that does not loop.

I needed this non-looping behaviour for similar reasons, namely incorporating SVG animations in presentation.
It turns out that this is possible with an SVG template, by including Javascript which pauses (i.e. stops forever) the animation at the "end". This solution is definitely hacky, but it works without needing to modify termtosvg.
The script to include in the template is as follows:
    <script type="text/javascript">
        <![CDATA[
            var terminal = document.getElementById('terminal');
            var screen = terminal.getElementById('screen');
            var style = getComputedStyle(terminal);
            var animationDuration = parseInt(style.getPropertyValue('--animation-duration')) / 1000;

            function stop() {
                terminal.pauseAnimations();
                screen.pauseAnimations();
            }

            let now = screen.getCurrentTime();
            let remainingTime = animationDuration - now;

            setTimeout(stop, remainingTime * 1000);
        ]]>
    </script>

With c9a3ecb I've changed the way animations are created by termtosvg. This makes it possible to disable looping without using javascript.
See https://github.com/nbedos/termtosvg/blob/develop/man/termtosvg-templates.md#restricting-the-animation-to-a-single-loop

Feature included in version 0.9.0


Virtual WAN Metric Workbooks

Added virtual WAN metric workbooks.
Also added code owners for the workbook folder
PR Checklist

[ ] Explain your changes, so people looking at the PR know what and why, the code changes are the how.
[ ] if updating templates, it is helpful to post a screenshot of what the changes look like.
[ ] if updating templates, ensure that your parameters and steps have meaningful names.
[ ] if adding new templates, or changing items in a gallery, it's helpful to post a screenshot of what the gallery looks like now

@gardnerjr please approve since there is some change in Code owners file as well.


Get rid of tcp connections in RPCManager

RPCManager no longer needs to manage tcp connections as RDMA is now used to send P2P requests and replies. So we should either get rid of tcp_connections or move it to where it is used. Then we will not have to call get_socket in rpc_manager.cpp to get the socket to a node.

I already refactored tcp_connections out of RPCManager in commit 472f66116ab5cd8c6b44828945e71acf2601922f in my branch failure_restart_improvements. This will be fixed as soon as we can merge this branch back into master.

This has now been fixed in master, as of 5d36d09393b370c1be6559a97fd10d9c95b5158b


Fixed iframe markup

Loader is incompatible with XHTML because of invalid XML markup (missing quoes around attribute).

10x 👍


Export solution failing in Powershell 7

Using Xrm.Framework.CI.PowerShell.Cmdlets -version '<IP_ADDRESS>'
Using this command:
Export-XrmSolution -UniqueSolutionName $solutionName -Managed $false -OutputFolder $thisLocation -ConnectionString $unsecure
I get this error:
Could not load file or assembly 'Microsoft.Xrm.Tooling.Connector, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. Could not find or load a specific file. (0x80131621)
I can see the Xrm.Framework.CI.PowerShell.Cmdlets module in the same folder as for example the Az module, the version of the tooling connector shows as:

Doesn't work with <IP_ADDRESS> either.

@p-grace-tfl are you still facing this issue?

Hi, thanks for replying. I gave up with PS7 in the end, so yes it doesn’t work. It’s something to do the version of the nuget API I think.
You can close it, as I’m not going to retry PS7 any time soon.
Regards
Philip Grace | Senior Developer
Technology and Data
2nd Floor - Red - 2, 14 Pier Walk, London, SE10 0ES
Tel: 020 3054 5286 | Auto: 85286 | Email: philipgrace<EMAIL_ADDRESS>Upcoming leave: 14/12/2020 & 28/12/2020 - 03/01/2021
[identity]
From: WaelHamze<EMAIL_ADDRESS>Sent: 01 December 2020 08:27
To: WaelHamze/xrm-ci-framework<EMAIL_ADDRESS>Cc: Philip Grace<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [WaelHamze/xrm-ci-framework] Export solution failing in Powershell 7 (#293)
@p-grace-tflhttps://github.com/p-grace-tfl are you still facing this issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/WaelHamze/xrm-ci-framework/issues/293#issuecomment-736307484, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AD56KC3IJSI3JYK7RISQCTTSSSSERANCNFSM4TIPDHHQ.

The contents of this e-mail and any attached files are confidential. If you have received this email in error, please notify us immediately at<EMAIL_ADDRESS>and remove it from your system. If received in error, please do not use, disseminate, forward, print or copy this email or its content. Transport for London excludes any warranty and any liability as to the quality or accuracy of the contents of this email and any attached files.
Transport for London is a statutory corporation whose principal office is at 5 Endeavour Square, London, E20 1JN. Further information about Transport for London’s subsidiary companies can be found on the following link: http://www.tfl.gov.uk/corporate/about-tfl/
Although TfL have scanned this email (including attachments) for viruses, recipients are advised to carry out their own virus check before opening any attachments, as TfL accepts no liability for any loss, or damage which may be caused by viruses.


Confluent Invitation/Confluent User

Hi Team,
I'm exploring the idea of managing users, user roles & permissions in terraform as a single source of truth. I've seen couple of issues related to this confluent user/confluent invitation resource, but i've not success following them. I'd appreciate if the below questions could be clarified , thanks
Question 1 :
I'd like to create multiple role binding for multiple users, essential an email group or group of email ids.
E.g : If i'd to create 2 users , i'd have to follow the below structure

// Users

variable "users" {
  type = list(string)
  default = [
<EMAIL_ADDRESS><EMAIL_ADDRESS>  ]
}

resource "confluent_invitation" "invite" {
  for_each  = toset(var.users)
  email     = each.value
  auth_type   = "AUTH_TYPE_LOCAL"
}

resource "confluent_role_binding" "env-admin-user1-rb" {
   principal   = "User:${confluent_invitation.invite[0].id}"
   role_name   = "EnvironmentAdmin"
   crn_pattern = confluent_environment.env.resource_name
   depends_on = [ confluent_invitation.invite-1 ]
 }

resource "confluent_role_binding" "env-admin-user2-rb" {
   principal   = "User:${confluent_invitation.invite[1].id}"
   role_name   = "EnvironmentAdmin"
   crn_pattern = confluent_environment.env.resource_name
   depends_on = [ confluent_invitation.invite-2 ]
 }

I was going to ask if the below is possible for the role binding to bind group of users.
resource "confluent_role_binding" "env-admin-users-rb" {
   principal   = "Users:${confluent_invitation.invite[key].id}" ---> Can it take an array ??
   role_name   = "EnvironmentAdmin"
   crn_pattern = confluent_environment.env.resource_name
   depends_on = [ confluent_invitation.invite-2 ]
 }

Question 2 :
In the previous example let's say user 2 has accepted the invite but i'd to remove the user. I'd update the tf configs to remove the user , but i end with the error : unable to remove user with the error : 400 Bad Request: Bad Request. The invitation was already accepted. I've seen https://github.com/confluentinc/terraform-provider-confluent/issues/263 for similar issue but i'd like understand what is the way forward in these scenarios. Is the allow_deletion flag in use ?
Question 3 - Related to https://github.com/confluentinc/terraform-provider-confluent/issues/266
I've seen there was a request for documentation for confluent user & confluent invitation and the below link is shared. I'm unable to access the below link, I'd greatly appreciate it if it's possible to share the examples as comments. thanks
There's an example here -- https://confluent.slack.com/archives/CM04M1UF4/p1686329639663079?thread_ts=1679674587.247499&cid=CM04M1UF4

👋 , thanks for asking @harideveloper!
Question 1:
I was going to ask if the below is possible for the role binding to bind group of users.

resource "confluent_role_binding" "env-admin-users-rb" {
   principal   = "Users:${confluent_invitation.invite[key].id}" ---> Can it take an array ??
   role_name   = "EnvironmentAdmin"
   crn_pattern = confluent_environment.env.resource_name
   depends_on = [ confluent_invitation.invite-2 ]
 }

It is not possible at the moment.
Question 2 :
That flag wasn't added yet, you might want to leave a comment in #263 so we could prioritize that issue.
Question 3:
Updated the link 👌
Let us know if that helps!

Question 1 - Thanks for the feedback
Question 2 - Updated the comments in there, will follow on with comments on https://github.com/confluentinc/terraform-provider-confluent/issues/263
Question 3 - Thanks, Will follow up on issue: 266


Fix: get(force=True) fails for a file

Closes https://github.com/fastai/fastdownload/issues/28
Problem described in https://github.com/fastai/fastdownload/issues/28 goes into untar_dir() function in fastcore where removing of unpacked file/directory is done by shutil.rmtree() and it is expecting only directories.
I added modified version of untar_dir() function into fastdownload where shutil.rmtree() is used only with directories and unlink() is used with files.

Or support for files might be added directly into fastcore if it make sense for untar_dir() to handle also files.

Many thanks for the fix - I've put that directly in fastcore now.
BTW, best to at-mention me on PRs so I get notified.


Cicd enhancing unittest pipeline 02

Added a better CI/CD integration to the second test suite on unittest

Will end this iteration for now


Monitor events aren't aggregated for forwarded packets

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Steps to reproduce:

Create a cluster with at least 3 nodes
a. Set tunnel: geneve
Create 2 pods with iperf on node-1 and node-3
Create a NodePort Service
Run hubble observe on node-2
Connect my-shell-1 to port on node-2 (that will forward to pod on node-3)
Expect a monitor event generated approximately every monitor-aggregation-interval (default: 5s), instead get greeted with 205881 events in the span of 30 seconds

Results of hubble observe on node-2:
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK, PSH)
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK, PSH)
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:50:26.083: <IP_ADDRESS>:40290 (world) <> default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK, PSH)
[...]

Expected (what is on node with my-shell-1 or my-shell-2):
Dec  6 13:41:25.188: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: SYN, ACK)
Dec  6 13:41:25.190: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK, PSH)
Dec  6 13:41:30.912: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:41:36.914: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:41:42.913: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:41:48.912: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:41:54.912: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK)
Dec  6 13:41:55.208: default/my-shell-1:42844 (ID:6621434) <- default/my-shell-2:5001 (ID:6650522) to-overlay FORWARDED (TCP Flags: ACK, FIN)

Cilium Version
78950e2b6e4ab3f31f4fd3d94c5effad4febc83d (master from yesterday)
Kernel Version
5.10.133+
Kubernetes Version
v1.23.12-gke.100
Sysdump
No response
Relevant log output
No response
Anything else?
Initially reported as https://github.com/cilium/cilium/pull/22467
Code of Conduct

[X] I agree to follow this project's Code of Conduct

So from the title, I infer that those packets are requests from node-1 going to a backend on node-3 for the NodePort service you defined? And you only get this issue with the forward packets, not the replies (or maybe you are using DSR)?

Sorry I missed two important things: tunnel: geneve and connecting to port on node-2 (so that packets will need to be forwarded to pod on node-3. I updated the original description. Today I will work on providing some manifests to make it easier to reproduce

This mitigates the issue, but it also completely disables reporting.
--- a/bpf/bpf_host.c
+++ b/bpf/bpf_host.c
@@ -458,7 +458,7 @@ handle_ipv4(struct __ctx_buff *ctx, __u32 secctx,
 {
        struct trace_ctx __maybe_unused trace = {
                .reason = TRACE_REASON_UNKNOWN,
-               .monitor = TRACE_PAYLOAD_LEN,
+               .monitor = 0,
        };
        struct remote_endpoint_info *info = NULL;
        __u32 __maybe_unused remote_id = 0;

I'm guessing that if you enable host firewall, the issue disappears?

Yes, it works as it should (i.e. flows are aggregated):
Dec  8 11:34:29.730: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: SYN)
Dec  8 11:34:29.731: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)
Dec  8 11:34:29.731: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:29.742: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: SYN)
Dec  8 11:34:29.743: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)
Dec  8 11:34:29.743: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:35.460: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)
Dec  8 11:34:39.756: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:39.758: <IP_ADDRESS>:15735 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Dec  8 11:34:39.767: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK, FIN)
Dec  8 11:34:39.768: <IP_ADDRESS>:43270 (world) -> default/iperf-server:5201 (ID:6742010) to-endpoint FORWARDED (TCP Flags: ACK)

What is more interesting is that it is also enabled in the environment where I originally observed this issue. 🤔

What is more interesting is that it is also enabled in the environment where I originally observed this issue. thinking

I'm guessing that environment is a bit behind on Cilium versions and didn't include https://github.com/cilium/cilium/commit/b08b12943fbcb4e15f20f82c5ea93174d4914b73?

Yes you are right. I will patch it and verify.
As a side note, I made the same mistake again in the previous comment as I did in PR. I observed to-endpoint instead of to-overlay. If I change the node, I get to-network. I can't get to-overlay again no matter what node I use.

I'm guessing that environment is a bit behind on Cilium versions and didn't include b08b129?

Unfortunately cherry-picking isn't enough, but hopefully simply upgrading to 1.12.0 will solve the problem. Thank you


Make entities an optional property in config

Can anyone explain why the entities are mandatory here? When there is not node NRE is thrown.
In the test for RuntimeConfigLoaderJsonDeserializerTests the value  for is empty: ""entities"":{ }.
IMHO it should handle null entities node.
BTW: it would be nice to cover edge case - in this case it is the bare minimum global config file.
Originally posted by @kliszaq in https://github.com/Azure/data-api-builder/pull/1709#discussion_r1340291104

@Aniruddh25 thanks for considering this issue in the dev process. I would like to elaborate on the configuration in context of the multiple databases support. Let's consider two ways we can define the config. I would split the idea into two ways defining the configs:

Very clean separation of the config responsibilities: one global file and the database configuration files.
Mixed global with the auxiliary configs - it means "main" database connection in the global and also additional endpoints from other databases.

From my point of view the cleanest way to handle the configuration is to support option 1. In such case the global file would contain only data sources and the runtime sections:
dab-config.json
{
  "$schema": "https://github.com/Azure/data-api-builder/releases/download/0.10.0/dab.draft.schema.json",
  "runtime": {
    "rest": {
      "enabled": true,
      "path": "/api",
      "request-body-strict": true
    },
    "graphql": {
      "enabled": false,
      "path": "/graphql",
      "allow-introspection": true
    },
    "host": {
      "cors": {
        "allow-credentials": false
      },
      "authentication": {
        "provider": "StaticWebApps"
      },
      "mode": "Production"
    }
  },
  "data-source-files": [
    "dab-config.5.json",
    "dab-config.192.json"
  ]
}

while the "slave" configuration does not define the runtime section or is ignored during the file loading.
{
  "$schema": "https://github.com/Azure/data-api-builder/releases/download/0.10.0/dab.draft.schema.json",
  "data-source": {
    "database-type": "MSSQL",
    "connection-string": "***"
  },
  "entities": {
    "adv2012-sales-currencyrate": {
      "source": {
        "object": "[Sales].[CurrencyRate]",
        "type": "View",
        "key-fields": [
          "CurrencyRateID"
        ]
      },
      "graphql": {
        "enabled": false
      },
      "rest": {
        "methods": [
          "Get"
        ],
        "enabled": true
      },
      "permissions": [
        {
          "role": "anonymous",
          "actions": [
            {
              "action": "Read"
            }
          ]
        }
      ]
    }
  }
}

It means that some of the validation might be done on the JSON schema level, while the other validation needs to be performed during the config loading and the validation.

We should consider capturing this as a design detail/ requirement of #1638 (@jerrynixon)

hi @kliszaq,
I see your point about separation of responsibilities - e.g. keeping only the runtime section in the global configuration file.
The only problem in that approach is it would break the single datasource scenario, hence become backwards incompatible.
So, we chose option 2 - mixed global with auxiliary configs.
That said, we can certainly remove the restriction of providing data-source + entities in the global configuration if auxiliary configs are provided in the data-source-files property. If they are absent, we would require at least the data-source - we can make entities optional altogether.
I hope this makes sense - Let me know if you have further concerns.
Thanks,
Aniruddh.

Hi @Aniruddh25,
this makes sense.
Thanks,
Kamil

The biggest downside to doing this is the sheer complexity of the files now that we support more than one data-source. For example, it is completely valid (or will be) to do this:

.env
dab-config.json

dab-config1.json
dab-config2.json
dab-config3.json
dab-config4.json

If environment overrides, we it is completely valid to do this:

.env
dab-config.json
dab-config.development.json

dab-config1.json
dab-config1.development.json
dab-config2.json
dab-config2.development.json
dab-config3.json
dab-config3.development.json
dab-config4.json
dab-config4.development.json

This we add this idea and we could have:

.env
dab-config.json
dab-config-entities.json
dab-config.development.json

dab-config1.json
dab-config1-entities.json
dab-config1.development.json
dab-config2.json
dab-config2-entities.json
dab-config2.development.json
dab-config3.json
dab-config3-entities.json
dab-config3.development.json
dab-config4.json
dab-config4-entities.json
dab-config4.development.json

I realize this is doable. And I realize the point I am about to make is not a technical one. But in the interest of simplicity and approachability, I think we've already introduced considerable sophistication that, though it makes technical sense to do, has already made DAB harder and harder to approach and debug without understanding the ins and outs like a pro. The file structure we chose for multiple data sources was intentionally simplified for this reason, too.

@Aniruddh25
As for removing the restriction in the JSON schema, as we move into the validate task in this version, making entities optional is going to introduce yet another step to ensure that a "typical" developer can have a validation experience that is standard. The only thing I could imagine here is to include something like dab validate dab-config.json --entities-optional true so that it could be controlled by the consumer and not by the engine.

With the Configurator @Aniruddh25, this seems more relevant again.


"cheat sheet" should be "cheatsheet"

We agreed to do this for search engine reasons at https://www.rstudio.com/resources/cheatsheets/ so the PDFs should follow suit in the next iteration.

Done in afaa1fe


Student GUI

Allow specification of student classroom initialization through a popup GUI. Would show up on "Classroom" tab of existing GUI as a new popdown entry.
Use Case: Student attends lecture, selects from popdown list of current classes, enters in login code, and gives name to professor.
Desired Settings:

Dropdown menu of ongoing classes
Textbox to specify student's name
Textbox for student to enter classroom code

Teaching Suite delayed till next semester, marking as resolved


Add Examples/Getting Started

Hey,
I was wondering, now that we have the website up, people realise you can already build stuff with rust for the web and I'd like to foster that attitude. Yet, if you google for it, there isn't much coming up, so I was thinking, it might be cool if we added a Getting Started and/or Examples reading list. Just a Link-Collection if you want, but to give people pointers.
What do you think, @bashyHQ/awwy-curators ?

I don't know if it is a good example but https://github.com/PistonDevelopers/pluto is a working example of a iron web site.

So far I have:

http://clippy.bashy.io/docs/
https://auth0.com/blog/2015/11/30/build-an-api-in-rust-with-jwt-authentication-using-nickelrs/

And would mention in this section that people should ask questions at users.rust-lang.org/c/help


python310Packages.transmission-rpc: 4.1.3 -> 4.1.4

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.transmission-rpc is: Python module that implements the Transmission bittorent client RPC protocol
meta.homepage for python310Packages.transmission-rpc is: https://github.com/Trim21/transmission-rpc
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.1.4 with grep in /nix/store/35p5bwsqhv6qdwrcin8pgvmw1nz006hc-python3.10-transmission-rpc-4.1.4
found 4.1.4 in filename of file in /nix/store/35p5bwsqhv6qdwrcin8pgvmw1nz006hc-python3.10-transmission-rpc-4.1.4

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

4 total rebuild path(s)

4 package rebuild(s)

First fifty rebuilds by attrpath
flexget
home-assistant-component-tests.transmission
python310Packages.transmission-rpc
python311Packages.transmission-rpc

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/35p5bwsqhv6qdwrcin8pgvmw1nz006hc-python3.10-transmission-rpc-4.1.4 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/35p5bwsqhv6qdwrcin8pgvmw1nz006hc-python3.10-transmission-rpc-4.1.4
ls -la /nix/store/35p5bwsqhv6qdwrcin8pgvmw1nz006hc-python3.10-transmission-rpc-4.1.4/bin

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

4 packages built:

flexget
home-assistant-component-tests.transmission
python310Packages.transmission-rpc
python311Packages.transmission-rpc

Maintainer pings
cc @eyJhb for testing.

@ofborg build home-assistant-component-tests.transmission


Page loaded from local filesystem will not load resources

When a file from the local filesystem is loaded into PhantomJS using a file path (rather than a proper URI), the page content appears to load fine, but resources referenced in the page that are relative to the page (and thus on the local filesystem) will not be loaded.
This problem was experienced on Win7/64 with PhantomJS 1.9.0.
PhantomJS should either locate those resources correctly or it should fail fast - by refusing to load a file using a filesystem path (preferably with a message indicating that a proper URI is required). In the current lazy failure mode, a lot of time can be wasted by the user trying to determine why the page doesn't function correctly.

It now runs successfully with 2.0 version.


Unknown intent doesn't get triggered after Multi-choice User input

I'm developing a bot in Bot Framework Composer. On beginning a new conversation, the user gets greeted in the 'Greeting' trigger, and gets transferred to a Main_menu dialog, where they are prompted with a Multi-choice user input in the BeginDialog trigger.

If the user types in some gibberish at this point instead of selecting from the buttons, LUIS provides a 'None' intent, however, the 'Unknown intent' trigger doesn't seem to fire. If the user types in something else after that, it does fire however. I have set 'Max turn count' to zero in the Multi-choice input, and enabled interruptions.
Behaviour:

LUIS Trace:

As you can see from the trace, LUIS does recognize a 'None' intent, yet the conversation doesn't get transferred to the Unknown Intent trigger.
I've also tried adding an Unknown intent trigger to the Main_menu dialog, which never got triggered.
Also asked on Stackoverflow: SO Link
Is there any way to immediately trigger the 'Unknown intent' dialog for the first message, if the user's input is not recognized by LUIS or by the evaluation of the Multi-Choice? Thanks!

Hey @PeterPekanovics, I'm investigating this.

I managed to avoid this behavior by having a turn count and explicitly adding a default value -

      "recognizerResult": {
        "text": "qwerqwer",
        "intents": {
          "None": {
            "score": 0.88929456
          }
        },

Of course we should still understands what happens... when nothing happens to the None intent after the turn count is done.

Thank you for this information, @snobu. 🚀
@PeterPekanovics, could you please try @snobu's suggestion and let us know if this worked?

Hi @ramfattah , thanks for investigating this.
(As a sidenote, a changed the recognizer from LUIS to Regex, and the same behaviour occurs).
@snobu thanks for your answer. I tried it, and it works the same for me. However, it's not really a good solution in my case, as in the Unknown intent dialog, I'm sending the unknown message to an external resource (QnA Maker), as maybe it can understand the user's question.
It is a good basis of a workaround though. I can do the same processing in the default branch of the input handling, as I'm doing in the Unknown intent.
A second best option would be to transfer the conversation to the Unknown intent trigger (sorry for bad image 'editing'):

Is there any way to do that?
In any case, we should figure out, why this is happening, as it seems to contradict the documented behaviour of Composer.

Hi @ramfattah , thanks for checking.

@PeterPekanovics, do you have any condition set for the unknown intent?

No, I don't have a condition. Should I, and what should it be?

@PeterPekanovics,
Nope, I don't think you need a condition for it. Just wanted to make sure there wasn't any condition set.
We are still investigating this issue. Thank you for your patience.

@PeterPekanovics
looks like this is expected behavior.
The unknown (or None) intent is something generated by the language recognizer and is designed to accept input that matches the choices provided.

@ramfattah Thanks for the answer.
Is there any way to override this behaviour, and manually trigger the unknown intent flow when an unexpected asnwer is given by the user?

Hi @PeterPekanovics
I'm not sure of a way to override this behavior or if this is something we support.

If you are interested in diving more into this topic, the Microsoft Bot Framework team prefers that how to questions be submitted on Stack Overflow #botframework.
The official Bot Framework Github repos are the preferred platform for submitting bug fixes and feature requests.

Closing this one for now, as this is not a bug.

Same issue i am facing. I used prompt for text. Turn count is 1 and Allow Interruption is true.
When user types something other than the intent trigger that i created, then it is not going to Unknown intent. When User types once again then it fires Unknown intent. What i mean is Unknown intent is getting fire at the second user input and not at the first time


improve memory streams parsing

Add support of MemoryList stream type.
Add limited support of dumps without MemoryInfoList.

This implements parsing of some incomplete/synthetic dumps.
DRAKVUF minidump to check (added extra .zip extension to satisfy dumb github):

9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.001.zip
9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.003.zip
9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.002.zip

Woot, this looks awesome! Give me a week or so to take a look and try it
out 🙏
Cheers
On Sun, Feb 25, 2024 at 5:18 AM Roman @.***> wrote:

Add support of MemoryList stream type.
Add limited support of dumps without MemoryInfoList.

This implements parsing of some incomplete/synthetic dumps.
DRAKVUF minidump
https://github.com/tklengyel/drakvuf/blob/750a51f844b5b914051707e71f4444dbe95a7417/src/plugins/procdump/minidump.h#L673-L683
to check (added extra .zip extension to satisfy dumb github):

9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.001.zip
https://github.com/0vercl0k/udmp-parser/files/14396437/9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.001.zip
9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.003.zip
https://github.com/0vercl0k/udmp-parser/files/14396438/9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.003.zip
9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.002.zip
https://github.com/0vercl0k/udmp-parser/files/14396440/9f950b5ede3745ce9a40d17a6e83c34d52cbf3995bbce767448104db1d08e263.zip.002.zip

You can view, comment on, or merge this pull request online at:
https://github.com/0vercl0k/udmp-parser/pull/16
Commit Summary

b655a5d
https://github.com/0vercl0k/udmp-parser/pull/16/commits/b655a5d1dbc1d7d40ee9694c11ea7b89749c7cfc
implement MemoryList stream parsing, parse dumps without MemoryInfoList
stream

File Changes
(1 file https://github.com/0vercl0k/udmp-parser/pull/16/files)

M src/lib/udmp-parser.h
https://github.com/0vercl0k/udmp-parser/pull/16/files#diff-98aee139cd8fee86595b1f7876b920cd8bb2b1b120d7837dfef8401f2ff86c88
(132)

Patch Links:

https://github.com/0vercl0k/udmp-parser/pull/16.patch
https://github.com/0vercl0k/udmp-parser/pull/16.diff

—
Reply to this email directly, view it on GitHub
https://github.com/0vercl0k/udmp-parser/pull/16, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AALIORN3ZQIILB5UVQFIAL3YVM2ZZAVCNFSM6AAAAABDY3XWIKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGE2TENZWGIZDAMA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

All right sorry for the lag on this - looking now.

Ok so does this add support for the MemoryList stream but those dumps don't have a MemoryInfo? I am a bit confused about this code added?:
      //
      // If we don't find an existing entry, we can save the memory region here,
      // but the meta information will be invalid
      //

      auto It = Mem_.find(StartOfMemoryRange);
      if (It == Mem_.end()) {
        DbgPrintf("The memory region starting at %" PRIx64
                  " does not exist in the map, the meta information will be "
                  "invalid.\n",
                  StartOfMemoryRange);

        dmp::MemoryInfo_t MemInfo;
        MemInfo.BaseAddress = StartOfMemoryRange;
        MemInfo.RegionSize = DataSize;

        auto Emplace = Mem_.try_emplace(StartOfMemoryRange, MemInfo);
        if (!Emplace.second) {
          DbgPrintf("The region %" PRIx64 " is already in the memory map.\n",
                    CurrentData);
          return false;
        }

        It = Emplace.first;
      }

The issue with this, is that the end user has no way programmatically to know what is 'valid' or 'invalid' which isn't great. Also, it seems like 'regular' (created by Windows tools) wouldn't create a dump with memory list entries and no matching info list?
Cheers

Ok so does this add support for the MemoryList stream but those dumps don't have a MemoryInfo?

Yes exactly. Technically, the streams containing the memory layer (raw data) are "MemoryList" and "Memory64List", so minidumps without the "MemoryInfoList" stream still contain all the necessary information to access the memory blocks.
I don't really know the correct set of streams in the "correct" minidumps, but I see projects that use the minimum set to store data, and this patch adds the ability to work with such dumps.
I tried parsing minidumps of the DRAKVUF project (which I mentioned in the first post, see example code + minidump) and realized that this parser can parse data, but with this small patch.

The issue with this, is that the end user has no way programmatically to know what is 'valid' or 'invalid' which isn't great

I'm sure that DRAKVUF is not the only project with a non-standard minidump, so I think it's better to support it (and print warnings) than not to support it. Also truly bad/broken minidumps will be filtered by other checks.


DiffusingPlanner::extend segmentation fault fixed

Previously, no tests were done to check whether a NaN had appeared or if the streering method used inside extend failed, eventually leading to a segfault. Now, when such a thing happens, extend returns an empty path immediately.

I would rather track the origin of the NaN.
Otherwise std::isnan(x) is better that (x==x).


Sidecar-specific access log configuration

Describe the feature request
Currently, the access log file descriptor is defined mesh-wide, in MeshConfig.
These access logs are useful for debugging and troubleshooting, but in large meshes, the logging output can be excessive (and indirectly expensive when running in cloud-based environments).
Consider exposing the ability to tune both the access logging file descriptor as well as the logging format for each workload.
Sidecar seems like a decent place to put this, given that this could potentially be used as a "per-sidecar" configuration.
Describe alternatives you've considered
Our current workaround is editing the ConfigMap and performing a kubectl -n istio-system rollout restart deployment/pilot to pick up the change.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[X] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Adding tracing/logging config to sidecar was proposed before but got pushed back. @douglas-reid Would have more context. Anyway https://github.com/istio/istio/issues/24287 should cover this feature request and it is top of the list for 1.7. Would you mind to close this one and track there? thanks!

Thanks @bianpengyuan - I take it you're talking about this comment?

I'd expand your third option to at least include access logging (not only tracing).

If that's the case, then I'll close this now in favor of #24287.

Thanks! Yeah, it will for sure include both logging and tracing. Issue title also suggests that.


Probe

I'd like to review too before we merge but after checks pass :)

Will definitely lyk then :100:

after discussion, closing in favor of #1159


Please consider fixing issues detected by repository checker

Notification from ioBroker Check and Service Bot
Dear adapter developer,
I'm the ioBroker Check and Service Bot. I'm an automated tool processing routine tasks for the ioBroker infrastructure. I have recently checked the repository for your adapter vedirect for common errors and appropiate suggestions to keep this adapter up to date.
Please see the result of the check below.
ioBroker.vedirect
   -

ERRORS:

[ ] :heavy_exclamation_mark: [E026] "{'engines': {'node'>='16'}}" is required at package.json, "{'engines':{'node'>='18'}}" is recommened
[ ] :heavy_exclamation_mark: [E033] @iobroker/adapter-core 3.0.3 specified. 3.1.4 is required as minimum, 3.1.6 is recommended. Please update dependencies at package.json
[ ] :heavy_exclamation_mark: [E036] @iobroker/testing 4.1.0 specified. 4.1.3 is required as minimum,  4.1.3 is recommended. Please update devDependencies at package.json
[ ] :heavy_exclamation_mark: [E145] No "common.news" found for actual version 0.3.3 in io-package.json
[ ] :heavy_exclamation_mark: [E162] js-controller 1.4.2 listed as dependency but 4.0.24 is required as minimum, 5.0.19 is recommended. Please update dependency at io-package.json.
[ ] :heavy_exclamation_mark: [E204] Versions "0.3.2, 0.1.1, 0.0.9" listed at common.news at io-package.json do not exist at NPM. Please remove from news section.
[ ] :heavy_exclamation_mark: [E606] Current adapter version 0.3.3 not found in README.md

WARNINGS:

[ ] :eyes: [W040] "keywords" within package.json should contain "ioBroker"
[ ] :eyes: [W046] devDependency should not require a specific version. Use "~1.2.3" or "^1.2.3" syntax. Please update "typescript:5.1.6"
[ ] :eyes: [W105] Missing suggested translation into uk of "common.titleLang" in io-package.json.
[ ] :eyes: [W109] Missing suggested translation into uk of "common.desc" in io-package.json.
[ ] :eyes: [W115] "common.tier" is required in io-package.json. Please check https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/objectsschema.md#adapter.
[ ] :eyes: [W130] Many "common.news" found in io-package.json. Repositorybuilder will truncate at 7 news. Please remove old news.
[ ] :eyes: [W145] Missing suggested translation into uk of some "common.news" in io-package.json.
[ ] :eyes: [W181] "common.license" in io-package.json is deprecated. Please define object "common.licenseInformation"
[ ] :eyes: [W184] "common.main" is deprecated and ignored. Please remove from io-package.json. Use "main" at package.json instead.
[ ] :eyes: [W184] "common.materialize" is deprecated for admin >= 5 at io-package.json. Please use property "adminUI".
[ ] :eyes: [W184] "common.title" is deprecated and replaced by "common.titleLang". Please remove from io-package.json.
[ ] :eyes: [W202] Version of package.json (0.3.3) doesn't match latest version on NPM (0.3.0)
[ ] :eyes: [W513] "gulpfile.js" found in repo! Think about migrating to @iobroker/adapter-dev package
[ ] :eyes: [W522] Please consider migrating to admin 5 UI (jsonConfig).
[ ] :eyes: [W853] .npmignore found - consider using package.json object "files" instead.

Please review issues reported and consider fixing them as soon as appropiate.
Errors reported by repository checker should be fixed as soon as possible. Some of them require a new release to be considered as fixed. Please note that errors reported by checker might be considered as blocking point for future updates at stable repository.
Warnings reported by repository checker should be reviewed. While some warnings can be considered as a suggestion and be ignored due to good reasons or a dedicated decision of the developer, most warnings should be fixed as soon as appropiate.
Feel free to contact me (@iobroker-bot) if you have any questions or feel that an issue is incorrectly flagged.
And THANKS A LOT for maintaining this adapter from me and all users.
Let's work together for the best user experience.
your
ioBroker Check and Service Bot
@mcm1957 for evidence

This issue has been replaced by new isse #605
This issue can be closed.
your
ioBroker Check and Service Bot


chore: bump pydantic dependency to 2.9+

Bumping the dependency of pydantic so that we can use an updated version (v2.x) in the robusta code base.
There are 3 dependencies of pydantic in this repo, none of which have changed from pydantic 1.x to 2.x:

BaseModel
SecretStr
ValidationError

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


[WSL2] Encountered issues on OpenSSH at Ubuntu 20.04 LTS

Your Windows build number:  (Type ver at a Windows Command Prompt)

19624

What you're doing and what's happening:  (Copy&paste the full set of specific command-line steps necessary to reproduce the behavior, and their output. Include screen shots if that helps demonstrate the problem.)

At local WSL2 Ubuntu 20.04 LTS instance
# camber @ Camber-Laptop in ~ [15:49:22]
$ ssh -vvv<EMAIL_ADDRESS>OpenSSH_8.2p1 Ubuntu-4, OpenSSL 1.1.1f  31 Mar 2020
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: resolving "hikari.camber.moe" port 22
debug2: ssh_connect_direct
debug1: Connecting to hikari.camber.moe [<IP_ADDRESS>] port 22.
debug1: Connection established.
debug1: identity file /home/camber/.ssh/id_rsa type 0
debug1: identity file /home/camber/.ssh/id_rsa-cert type -1
debug1: identity file /home/camber/.ssh/id_dsa type -1
debug1: identity file /home/camber/.ssh/id_dsa-cert type -1
debug1: identity file /home/camber/.ssh/id_ecdsa type -1
debug1: identity file /home/camber/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/camber/.ssh/id_ecdsa_sk type -1
debug1: identity file /home/camber/.ssh/id_ecdsa_sk-cert type -1
debug1: identity file /home/camber/.ssh/id_ed25519 type -1
debug1: identity file /home/camber/.ssh/id_ed25519-cert type -1
debug1: identity file /home/camber/.ssh/id_ed25519_sk type -1
debug1: identity file /home/camber/.ssh/id_ed25519_sk-cert type -1
debug1: identity file /home/camber/.ssh/id_xmss type -1
debug1: identity file /home/camber/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.2p1 Ubuntu-4
debug1: Remote protocol version 2.0, remote software version OpenSSH_8.2p1 Ubuntu-4
debug1: match: OpenSSH_8.2p1 Ubuntu-4 pat OpenSSH* compat 0x04000000
debug2: fd 3 setting O_NONBLOCK
debug1: Authenticating to hikari.camber.moe:22 as 'root'
debug3: hostkeys_foreach: reading file "/home/camber/.ssh/known_hosts"
debug3: record_hostkey: found key type ECDSA in file /home/camber/.ssh/known_hosts:2
debug3: load_hostkeys: loaded 1 keys from hikari.camber.moe
debug3: order_hostkeyalgs: prefer hostkeyalgs: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
debug3: send packet: type 20
debug1: SSH2_MSG_KEXINIT sent
debug3: receive packet: type 20
debug1: SSH2_MSG_KEXINIT received
debug2: local client KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,ext-info-c
debug2: host key algorithms: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,ssh-ed25519-cert-v01@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,sk-ecdsa-sha2-nistp256@openssh.com,ssh-ed25519,sk-ssh-ed25519@openssh.com,rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com,zlib
debug2: compression stoc: none,zlib@openssh.com,zlib
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256
debug2: host key algorithms: rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos<EMAIL_ADDRESS>debug2: compression stoc<EMAIL_ADDRESS>debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher<EMAIL_ADDRESS>MAC: <implicit> compression: none
debug1: kex: client->server cipher<EMAIL_ADDRESS>MAC: <implicit> compression: none
debug3: send packet: type 30
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
Connection closed by <IP_ADDRESS> port 22

At remote Ubuntu 20.04 LTS (journalctl -e --unit=ssh.service)
sshd[7477]: error: kex_input_kexinit: discard proposal: string is too large [preauth]
sshd[7477]: ssh_dispatch_run_fatal: Connection from [MyIP] port 27510: string is too large [preauth]

What's wrong / what should be happening instead:

Referring to  #4208 , which is closed for a long time:

in wsl2 when I use ssh to login a remote server, the connection closed immediately

I encountered the exactly same issue.
It's weird because I don't have the issue on my other WSL2 instance, like debian, and neither does my friend's. As the previous issue is closed for a long time, and even i got my workaround, I think I should open this new issue with some detailed information to figure what's wrong.

Strace of the failing command, if applicable:  (If some_command is failing, then run strace -o some_command.strace -f some_command some_args, and link the contents of some_command.strace in a gist here).

I tried, but by running strace -o ssh.strace -f ssh -vvv<EMAIL_ADDRESS>it works without any errors, which is so weird.  See https://github.com/microsoft/WSL/issues/5244#issuecomment-635054447

Just to add another data point, ssh works for:

Ubuntu 18.04 (WSL 1 & 2)
SuSe Linux (WSL 1 & 2)
Debian 18.04 (WSL 1 & 2)
Ubuntu 20.04 (WSL 1 only)

At least in my particular case.

And since @CamberLoid couldn't get a trace, perhaps mine will work as a substitute (our debug output seems similar enough to assume we might be having the same issue):
Here's the gist

Just to add another data point, ssh works for:

Ubuntu 18.04 (WSL 1 & 2)
SuSe Linux (WSL 1 & 2)
Debian (WSL 1 & 2)
Ubuntu 20.04 (WSL 1 only)

At least in my particular case.
I also attempted to do a distribution upgrade from 18.04 to 20.04 using WSL2, and this also failed to work.

for my case it wont work on ubuntu 18.04(WSL 1 & 2) even Ubuntu 20.04(WSL 1& 2). cant do any SSH connection,

`danz@DESKTOP-HTRGUM3:~$ ssh -vv<EMAIL_ADDRESS>OpenSSH_8.2p1 Ubuntu-4, OpenSSL 1.1.1f  31 Mar 2020
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug2: resolving "sdf.org" port 22
debug2: ssh_connect_direct
debug1: Connecting to sdf.org [<IP_ADDRESS>] port 22.
debug1: Connection established.
debug1: identity file /home/danz/.ssh/id_rsa type -1
debug1: identity file /home/danz/.ssh/id_rsa-cert type -1
debug1: identity file /home/danz/.ssh/id_dsa type -1
debug1: identity file /home/danz/.ssh/id_dsa-cert type -1
debug1: identity file /home/danz/.ssh/id_ecdsa type -1
debug1: identity file /home/danz/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/danz/.ssh/id_ecdsa_sk type -1
debug1: identity file /home/danz/.ssh/id_ecdsa_sk-cert type -1
debug1: identity file /home/danz/.ssh/id_ed25519 type -1
debug1: identity file /home/danz/.ssh/id_ed25519-cert type -1
debug1: identity file /home/danz/.ssh/id_ed25519_sk type -1
debug1: identity file /home/danz/.ssh/id_ed25519_sk-cert type -1
debug1: identity file /home/danz/.ssh/id_xmss type -1
debug1: identity file /home/danz/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.2p1 Ubuntu-4
debug1: Remote protocol version 2.0, remote software version OpenSSH_8.0
debug1: match: OpenSSH_8.0 pat OpenSSH* compat 0x04000000
debug2: fd 3 setting O_NONBLOCK
debug1: Authenticating to sdf.org:22 as 'new'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: local client KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,ext-info-c
debug2: host key algorithms: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,ssh-ed25519-cert-v01@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256@openssh.com,ssh-ed25519,sk-ssh-ed25519@openssh.com,rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com,zlib
debug2: compression stoc: none,zlib@openssh.com,zlib
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1
debug2: host key algorithms: ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa,ssh-ed25519
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm<EMAIL_ADDRESS>debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos<EMAIL_ADDRESS>debug2: compression stoc<EMAIL_ADDRESS>debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ssh-ed25519
debug1: kex: server->client cipher<EMAIL_ADDRESS>MAC: <implicit> compression: none
debug1: kex: client->server cipher<EMAIL_ADDRESS>MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
Connection closed by <IP_ADDRESS> port 22

https://github.com/rescenic/autossh

https://github.com/rescenic/autossh

I don't believe this actually addresses the problem. If it does, could you explain how?

It's not WSL fault.
SSH works, if 'dmesg' error doesn't appear at the startup (it means in normal startup).
See your logs: debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
Try this solution from ServerFault:
https://serverfault.com/questions/210408/cannot-ssh-debug1-expecting-ssh2-msg-kex-dh-gex-reply
https://www.seei.biz/ssh-fails-to-connect-with-debug1-expecting-ssh2_msg_kex_ecdh_reply/
Ubuntu SSH to Windows:

The two address have pointed a possible point.
But I have tried before creating the issue and found it not working, meaning setting MTU might not be a solution.

Try this: https://superuser.com/questions/699530/git-pull-does-nothing-git-push-just-hangs-debug1-expecting-ssh2-msg-kex-ecd

Hi there I fix this problem by updating my wifi driver , it seems wsl 2 kinda have problem with old driver
I'm using killer Wifi , try to update your wifi driver guys

Please collect WSL logs and post the backlink to the feedback item here. Also please identify any third-party networking software that has been installed on Windows.

Sorry guys, Camber's here.
I'm feeling appreciated to hear responses from collaborator and same issue from other guys. However my previous device (Xiaomi Mi Gaming Laptop 2018) was broken and not able to use.
As it is out of warranty I'm planning to switch to ROG Zephyrus G15. So that I'm afraid I cannot reproduce anymore.
I will leave the issue open to see if any other fellows can help reproduce and upload the logs. Anyone helping this out will be much appreciated.
Stay safe. Camber out.

Thanks for the follow-up Chamber, it is very appreciated. Let's call this spiritually /dupe #4253. Some drivers do not seem to handle mismatched MTUs well. Or, at least that is a plausible working theory.
Anyone still seeing the OP fail "error: kex_input_kexinit: discard proposal: string is too large [preauth]" please submit a new issue following the template, including WSL logs.


NFT withdrawal stuck in processing

Describe the bug
Stuck TX on Withdrawal (conflicting)
UID 0xbf427cf6e9688fdbc8ee0e44e80e4cb827c693ba
Those are tx UID if something more is needed plz tell me
Both Munkii 2D tx UID
0x4e61993719c7ca8319fc618a7677f9695ed9ce54
0x9e50a15fd15c0d444c0c02a18c0d3161509eebe3
Munkii Believer tx UID
0x9b691291435168f8825420caacc0e5257891d063
https://explorer.iota.org/mainnet/search/0xbc50664accfba5df251ddc83e0f6068509dc29e91ccc3e9cf5e67cc21d69c086 (munkii 2D)
https://explorer.iota.org/mainnet/search/0xdfacb875861607f697589df673adf9bfd16fa6ed9f1bc0d65cb2325e83e44a24 (another munkii 2D)

related to https://github.com/soonaverse/app/issues/182


[Feature Request] Raw logging / more than two form outputs

I’d like to be able to log either the raw output or multiple form outputs past just email and username, to allow a longer form with many parts.

It would be helpful to be pointed toward what code deals with output parsing (that turns raw output into “u: p:”, to see if I could edit it to accept additional / custom form outputs.

I agree!!  I have created portals to gain more then just U: (username) & P: (Password) but the information is not output and printed and viewable from flipped


Calculate Net APY

Calculate the net APY users are getting on mrgnlend, netting their deposits and borrows

I'd like to work on this one

I see apy: number available in AccountSummary interface, calculated using computeNetApy.
Why not just add this snippet in AccountSummary.tsx
<AccountMetric
    label={"Net APY"}
    value={wallet.connected ? usdFormatter.format(accountSummary.apy) : "-"}
/>

heyo
are u still looking for someone to build this? I see that on the frontend it still says coming soon


[FEATURE] Relative imports

I want to add relative imports to Yuck, but I am not sure about how they would work exactly.
The usecase is simple. You want to import someone else's bar.  But the issue is that maybe you don't want their file structure (along side all the other widgets you already stole and will import) to take over your .config/eww/. So you place the files into deps/bar/. But now all the imports are broken because they are absolute (or relative to .config/eww/ at least).
So here's my issue: Currently all these work:
(include "file.yuck")
(include "/file.yuck")
(include "./file.yuck")
(include "../file.yuck")

And while ./ and ../ are quite obvious I am not sure what file and /file should do.
I think it is reasonable to restrict the user to their eww config dir. This means that /file.yuck would resolve to .config/eww/file.yuck, instead of <root of filesystem>/file.yuck.
However I can see how some might say that file.yuck should be relative and some may say that is absolute.
So I want to hear some more feedback on this feature.
TL;DR:
Relative imports should work this way:

file.yuck: Either relative or absolute, can't decide which one.
/file.yuck: Relative to the yuck config directory.
./file.yuck: Just like the shell (relative).
../: Just like the shell (relative).

Here's another issue: While implementing #986 I was trying to fix a stack overflow that is caused by recursive imports. Unfortunately the naive solution didnt really work. I tried to simply not load the file if it already exists in the FileDatabase, but that would disable hot reloading because a file database is not reset before a hot reload. I think it makes sense to make a separate issue to discuss a proposal of a new include system that should support more modularity (so you could import someone else's files without issues) and fix the recursive imports. But that proposal should be possible to implement into the current include system, it might break some Yuck tho... Either way #990


Build is failed

When I ran make command it shows the error
"rtmp-push/src/CRtmpStream.h:15:26: fatal error: librtmp/rtmp.h: No such file or directory"
How can we resolve it

@anaspa puth the librtmp source code to /deps/librtmp. It's empty now.

You mean "https://github.com/Akagi201/librtmp"?

@anaspa You may search the variables to find the definition.

I could  not see any definition on the source. Is it require any other libraries?

Sorry, maybe the code is missing.......

Can you check it?

We could successfully build the application


Customizable top-level definition indents

The way I indent top-level declarations is that I indent them with 4 spaces. Currently haskell-vim indents 2 spaces and it's not customizable. Adding this would be great.
Example:
topLevelDecl =<CR>
  |

| is the cursor.

I just made haskell-vim obey the shiftwidth setting.


[Feature request] Support for ordering styles that are not in plain object format

I am interested in having the ability to order styles which may include switch statements, as the project may want to use different styling for portrait and landscape orientation.
As far as I can tell, this may not be possible with the current eslint-plugin-react-native version. This could be a really nice feature to add?

#300
Added the initial support
Please approve


Task manager interrupting the text extractor feature

Microsoft PowerToys version
0.69.1
Installation method
Microsoft Store
Running as admin
No
Area(s) with issue?
TextExtractor
Steps to reproduce
open task manager and use the shortcut to enable the text extractor feature

✔ Expected Behavior
everything should be like the picture below but a bit grayed out to distinguish the place not covered by the selected area
❌ Actual Behavior
the task manager window still works even when the feature is being used and you can work with task manager and you have to minimize the window of task manager to use the feature without being interrupted .
i think its maybe because of task manager being a administrator app might cause this behavior
Other Software
No response

Some admin processes and core utilities of Windows will take priority over Text Extractor and there is no plan to fix these issues.


Add code for content based compare

This pull adds sha256 hash based content compare of duplicate classes/resources with the avability to control the build result - should it fail on duplicate but equal elements or fail only in case of content different elements.
Also add two simple ITs for testing.

No news?


Added logo maker site

Related Issue
Closes #862

Description
Added logo.com
Screenshots

Checklist

[x] My code adheres to the established style guidelines of the project.
[x] I have included comments in areas that may be difficult to understand.
[x] My changes have not introduced any new warnings.
[x] I have conducted a self-review of my code.

The PR title format you are using is causing an error in the workflow. Please follow the instructions in the README.md and change it accordingly.


Create Highlighted Line for Error's and Warnings

Hey, it will be great when a Error will be red Highlighted i mean the Linenumber and of course Warnings Too, sorry for the bad English :D

A nice idea, thanks.


Initialization

@chto We'll use this PR thread to discuss your solutions to the initialization problem #42, and merge it when we are happy that the SLTimer class does something useful in this regard. Assigning this to myself, for code review purposes.

Coverage decreased (-0.8%) to 15.978% when pulling 6116a83904e364cd59e2207caad525a07622f913 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.8%) to 15.978% when pulling 0052e4e8c91d2c388ed73e52a6994c94cd71e613 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.8%) to 16.0% when pulling 67574b372a9512883b28321d25e83e608d202b96 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.4%) to 16.377% when pulling 5a7cfe35561bbe706c3666cfa41a656df097cb89 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.7%) to 16.098% when pulling c5cfc39544a75b265407fce4c9b1622503e9007d on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.7%) to 16.145% when pulling 83d27314a81bd2f3a1dd37acdabdb12b1554f311 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.8%) to 15.99% when pulling 3deb18ed3e3f9bdd43d20e55f471ad0a6a4b456d on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.4%) to 16.468% when pulling 3deb18ed3e3f9bdd43d20e55f471ad0a6a4b456d on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.5%) to 16.351% when pulling d5fcd54b86f48711b1b65d6c57929dbe88fb7a9a on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.9%) to 15.919% when pulling 194aec02f8b54488ca978a8f8359235bff5ed78a on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.8%) to 16.0% when pulling 6f54a934f68285e046db75d86734cad45f975c02 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-1.0%) to 15.87% when pulling f7a4b77af4aca1bce67ca7b414ec779582d12cfb on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.9%) to 15.922% when pulling 01a3ee43f73ed0fe03c0ac7da17fa0656bcecb1a on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.9%) to 15.922% when pulling 1eae746696419adc7efa5dbc1c6584c22ec7af3f on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Coverage decreased (-0.9%) to 15.922% when pulling 9b09a9e34a38091ad6fd4ecffbadebea93797c03 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Hi @drphilmarshall,
I have uploaded the newest version of notebook ( SLTimer_TDC2_Analysis.ipynb). Please take a look.

Looks like you've got a bug, check out the travis report. Looking at the notebook now...

Coverage decreased (-0.9%) to 15.922% when pulling 69bed17b8426a18012d8897962371bfcf7936e60 on chto:issue/42/initialization into 51b204125c7a34f41f73eedb449b236ac1f3d6a6 on DarkEnergyScienceCollaboration:master.

Hi,
I didn't notice that, because the notebook runs well in my machine.
It's so strange. I re-run the notebook (without changing anything) and it passed.

Oops - looks like I can do the merge, as an admin. Here we go, than!

PS. After merging, I did some further clean-up of the notebook, to try and make our conclusions and queries clear for the PyCS developers. You can see the final (for now!) notebook here.