jsonc_tools 0.0.1

jsonc_tools: Tools to deal with `jsonc` files. See, [JSON with Comments](https://code.visualstudio.com/docs/languages/json#_json-with-comments) and [jsonc](https://komkom.github.io/) (A Json like file format with comments). See, [User and Workspace Settings](https://code.visualstudio.com/docs/getstarted/settings) and [Settings - vscode](https://vscode.readthedocs.io/en/latest/getstarted/settings/) for example files.
Documentation
# Examples:
# * https://github.com/rust-lang/cargo/blob/master/.github/workflows/main.yml
name: rust_stable_beta_nightly_1_45_2
on:
  - push
  - pull_request
# on:
#   push:
#     branches: [ master ]
#   pull_request:
#     branches: [ master ]
jobs:
  continuous_integration:
    env:
      RUSTUP_COMPONENTS: 'cargo,clippy,rustfmt,rustfmt-preview'
      RUSTUP_PROFILE: 'minimal'
      CARGO_TERM_COLOR: always
      CARGO_TERM_VERBOSE: 1
      RUSTUP_COMPONENTS_TEST: ${{ 'cargo,clippy,rustfmt,rustfmt-preview' }}
    continue-on-error: true
    strategy:
      max-parallel: 32
      fail-fast: false
      matrix:
        rust:
          - 1.45.2
          # - nightly
          # - beta
          # - stable
        os:
          - ubuntu-20.04
    runs-on: ${{ matrix.os }}
    name: ${{ github.event.repository.name }}_${{ matrix.os }}_${{ matrix.rust }}
    steps:
      - name: environment_details - ${{ matrix.os }}_${{ matrix.rust }}
        continue-on-error: true
        shell: bash
        run: |
          echo "'uname -a'=$(uname -a)"
          echo "'uname -s'=$(uname -s)"

      - name: install lld and lld-10 - ${{ matrix.os }}_${{ matrix.rust }}
        continue-on-error: false
        run: |
          sudo apt-get install lld
          sudo apt-get install lld-10
          find /usr/bin/ -iname '*lld*' -or -iname '*ld-10*'
          find /usr/bin/ -iname '*lld*' -or -iname '*ld-10*' | wc -l

      - name: find lld and lld-10 - ${{ matrix.os }}_${{ matrix.rust }}
        continue-on-error: true
        run: |
          linkers=$(find /usr/bin -iname '*lld*' -o -iname '*ld-10*')
          echo "linkers=${linkers//$'\n'/,}"
          echo "total=$(echo "${linkers}" | wc -l)"

      - uses: actions/checkout@v2
        continue-on-error: false

      - name: install toolchain profile=${{ env.RUSTUP_PROFILE }}, rust@${{ matrix.rust }}, components=${{ env.RUSTUP_COMPONENTS }}  - ${{ matrix.os }}_${{ matrix.rust }}
        uses: actions-rs/toolchain@v1
        continue-on-error: false
        with:
          override: true
          profile: ${{ env.RUSTUP_PROFILE }}
          components: ${{ env.RUSTUP_COMPONENTS }}
          toolchain: ${{ matrix.rust }}
          # target: ${{ matrix.target }}

      - name: test - ${{ matrix.os }}_${{ matrix.rust }}
        uses: actions-rs/cargo@v1
        continue-on-error: true
        with:
          command: test
          args: |
            --workspace --release --no-fail-fast -- --test-threads=32 --nocapture --show-output

      # --target=${{ matrix.target }}
      - name: build - ${{ matrix.os }}_${{ matrix.rust }}
        uses: actions-rs/cargo@v1
        continue-on-error: false
        with:
          command: build
          args: |
            --workspace --release --jobs=32 --all-features

      - name: cargo run -- --help - ${{ matrix.os }}_${{ matrix.rust }}
        continue-on-error: true
        run: |
          cargo run -- --help

# - name: check - ${{ matrix.os }}_${{ matrix.rust }}
#   uses: actions-rs/cargo@v1
#   continue-on-error: true
#   with:
#     command: check
#     args: |
#       --
# - name: lint - ${{ matrix.os }}_${{ matrix.rust }}
#   uses: actions-rs/cargo@v1
#   continue-on-error: true
#   with:
#     command: clippy
#     args: |
#       --
# - name: fmt - ${{ matrix.os }}_${{ matrix.rust }}
#   uses: actions-rs/cargo@v1
#   continue-on-error: true
#   with:
#     command: fmt
#     args: |
#       --all -- --check

# env:
#   RUSTUP_COMPONENTS: cargo,clippy,rustfmt,rustfmt-preview
#   RUSTUP_PROFILE: minimal
#   CARGO_TERM_COLOR: always
#   CARGO_TERM_VERBOSE: 1
#   # CARGO_INCREMENTAL: 1
#   # RUSTFLAGS: "-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests"

# os:
#   - ubuntu-20.04
#   # - ubuntu-16.04
#   # - ubuntu-18.04
#   # - ubuntu-latest
#   # - macos-10.15
#   # - macos-latest
# # target:
# #   - armv7-unknown-linux-gnueabihf
# #   - powerpc64-unknown-linux-gnu
# #   - nightly-x86_64-unknown-linux-gnu
# #   - stable-x86_64-unknown-linux-gnu

# # [[ -z "$TERM" ]] && export TERM=dumb           # Set a dummy terminal type if none set
# # [[ ! -t 1 ]] && export TERM=dumb               # Set a dummy terminal type unless a tty
# [[ -z "$TERM" ]] && export TERM="xterm-256color" # Set a xterm-256color terminal type if none set
# [[ ! -t 1 ]] && export TERM="xterm-256color"     # Set a xterm-256color terminal type if none set
# export text="environment_details=${{ matrix.os }}_${{ matrix.rust }}"
# printf "%b" $(
#   tput bold
#   tput setaf 7
#   tput setab 5
# ) "${text}:" $() "  " $() $(printf -- '-%.0s' $(seq 1 $(expr $(tput cols) - "${#text}" - 3))) $(tput sgr0) "\n"
# echo ${RUSTUP_PROFILE} || true
# echo ${RUSTUP_COMPONENTS} || true
# echo ${RUSTUP_COMPONENTS_TEST} || true

# name: jsonc_tools.rs_${{ github.event.repository.name }}_${{ github.repository }}_${{ matrix.os }}_${{ matrix.rust }}
# steps:
#   - name: Dump GitHub context
#     env:
#       GITHUB_CONTEXT: ${{ toJson(github) }}
#     run: echo "$GITHUB_CONTEXT"
#   - name: Dump job context
#     env:
#       JOB_CONTEXT: ${{ toJson(job) }}
#     run: echo "$JOB_CONTEXT"
#   - name: Dump steps context
#     env:
#       STEPS_CONTEXT: ${{ toJson(steps) }}
#     run: echo "$STEPS_CONTEXT"
#   - name: Dump runner context
#     env:
#       RUNNER_CONTEXT: ${{ toJson(runner) }}
#     run: echo "$RUNNER_CONTEXT"
#   - name: Dump strategy context
#     env:
#       STRATEGY_CONTEXT: ${{ toJson(strategy) }}
#     run: echo "$STRATEGY_CONTEXT"
#   - name: Dump matrix context
#     env:
#       MATRIX_CONTEXT: ${{ toJson(matrix) }}
#     run: echo "$MATRIX_CONTEXT"