mirror of
https://github.com/nushell/nushell.git
synced 2025-07-01 15:11:52 +02:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
a660720b68 | |||
265ee1281d | |||
cdc8e67d61 | |||
4e8e03867c | |||
49e8af8ea5 | |||
d5d61d14b3 | |||
f562a4526c | |||
e6c09f2dfc | |||
73a68954c4 | |||
476d543dee | |||
398502b0d6 |
@ -1,165 +0,0 @@
|
||||
# CircleCI 2.0 configuration file
|
||||
#
|
||||
# Check https://circleci.com/docs/2.0/configuration-reference/ for more details
|
||||
# See https://circleci.com/docs/2.0/config-intro/#section=configuration for spec
|
||||
#
|
||||
version: 2.1
|
||||
|
||||
# Commands
|
||||
|
||||
commands:
|
||||
|
||||
pull_cache:
|
||||
description: Pulls Quay.io docker images (latest) for our cache
|
||||
parameters:
|
||||
tag:
|
||||
type: string
|
||||
default: "devel"
|
||||
steps:
|
||||
- run: echo "Tag is << parameters.tag >>"
|
||||
- run: docker pull quay.io/nushell/nu:<< parameters.tag >>
|
||||
- run: docker pull quay.io/nushell/nu-base:<< parameters.tag >>
|
||||
|
||||
orbs:
|
||||
# https://circleci.com/orbs/registry/orb/circleci/docker
|
||||
docker: circleci/docker@0.5.13
|
||||
|
||||
workflows:
|
||||
version: 2.0
|
||||
|
||||
# This builds on all pull requests to test, and ignores main
|
||||
build_without_deploy:
|
||||
jobs:
|
||||
- docker/publish:
|
||||
deploy: false
|
||||
image: nushell/nu-base
|
||||
tag: latest
|
||||
dockerfile: docker/Dockerfile.nu-base
|
||||
extra_build_args: --cache-from=quay.io/nushell/nu-base:devel
|
||||
filters:
|
||||
branches:
|
||||
ignore:
|
||||
- main
|
||||
before_build:
|
||||
- pull_cache
|
||||
after_build:
|
||||
- run:
|
||||
name: Build Multistage (smaller) container
|
||||
command: |
|
||||
docker build -f docker/Dockerfile -t quay.io/nushell/nu .
|
||||
- run:
|
||||
name: Preview Docker Tag for Nushell Build
|
||||
command: |
|
||||
DOCKER_TAG=$(docker run quay.io/nushell/nu --version | cut -d' ' -f2)
|
||||
echo "Version that would be used for Docker tag is v${DOCKER_TAG}"
|
||||
- run:
|
||||
name: Test Executable
|
||||
command: |
|
||||
docker run --rm quay.io/nushell/nu-base --help
|
||||
docker run --rm quay.io/nushell/nu --help
|
||||
|
||||
# workflow publishes to Docker Hub, with each job having different triggers
|
||||
build_with_deploy:
|
||||
jobs:
|
||||
|
||||
# Deploy versioned and latest images on tags (releases) only - builds --release.
|
||||
- docker/publish:
|
||||
image: nushell/nu-base
|
||||
registry: quay.io
|
||||
tag: latest
|
||||
dockerfile: docker/Dockerfile.nu-base
|
||||
extra_build_args: --cache-from=quay.io/nushell/nu-base:latest,quay.io/nushell/nu:latest --build-arg RELEASE=true
|
||||
filters:
|
||||
branches:
|
||||
ignore: /.*/
|
||||
tags:
|
||||
only: /^\d+\.\d+\.\d+$/
|
||||
before_build:
|
||||
- run: docker pull quay.io/nushell/nu:latest
|
||||
- run: docker pull quay.io/nushell/nu-base:latest
|
||||
after_build:
|
||||
- run:
|
||||
name: Build Multistage (smaller) container
|
||||
command: |
|
||||
docker build -f docker/Dockerfile -t quay.io/nushell/nu .
|
||||
- run:
|
||||
name: Test Executable
|
||||
command: |
|
||||
docker run --rm quay.io/nushell/nu --help
|
||||
docker run --rm quay.io/nushell/nu-base --help
|
||||
- run:
|
||||
name: Publish Docker Tag with Nushell Version
|
||||
command: |
|
||||
DOCKER_TAG=$(docker run quay.io/nushell/nu --version | cut -d' ' -f2)
|
||||
echo "Version for Docker tag is ${DOCKER_TAG}"
|
||||
docker tag quay.io/nushell/nu-base:latest quay.io/nushell/nu-base:${DOCKER_TAG}
|
||||
docker tag quay.io/nushell/nu:latest quay.io/nushell/nu:${DOCKER_TAG}
|
||||
docker push quay.io/nushell/nu-base
|
||||
docker push quay.io/nushell/nu
|
||||
|
||||
|
||||
# publish devel to Docker Hub on merge to main (doesn't build --release)
|
||||
build_with_deploy_devel:
|
||||
jobs:
|
||||
|
||||
# Deploy devel tag on merge to main
|
||||
- docker/publish:
|
||||
image: nushell/nu-base
|
||||
registry: quay.io
|
||||
tag: devel
|
||||
dockerfile: docker/Dockerfile.nu-base
|
||||
extra_build_args: --cache-from=quay.io/nushell/nu-base:devel
|
||||
before_build:
|
||||
- pull_cache
|
||||
filters:
|
||||
branches:
|
||||
only: main
|
||||
after_build:
|
||||
- run:
|
||||
name: Build Multistage (smaller) container
|
||||
command: |
|
||||
docker build --build-arg FROMTAG=devel -f docker/Dockerfile -t quay.io/nushell/nu:devel .
|
||||
- run:
|
||||
name: Test Executable
|
||||
command: |
|
||||
docker run --rm quay.io/nushell/nu:devel --help
|
||||
docker run --rm quay.io/nushell/nu-base:devel --help
|
||||
- run:
|
||||
name: Publish Development Docker Tags
|
||||
command: |
|
||||
docker push quay.io/nushell/nu-base:devel
|
||||
docker push quay.io/nushell/nu:devel
|
||||
|
||||
nightly:
|
||||
triggers:
|
||||
- schedule:
|
||||
cron: "0 0 * * *"
|
||||
filters:
|
||||
branches:
|
||||
only:
|
||||
- main
|
||||
jobs:
|
||||
- docker/publish:
|
||||
image: nushell/nu-base
|
||||
registry: quay.io
|
||||
tag: nightly
|
||||
dockerfile: docker/Dockerfile.nu-base
|
||||
extra_build_args: --cache-from=quay.io/nushell/nu-base:nightly --build-arg RELEASE=true
|
||||
before_build:
|
||||
- run: docker pull quay.io/nushell/nu:nightly
|
||||
- run: docker pull quay.io/nushell/nu-base:nightly
|
||||
after_build:
|
||||
- run:
|
||||
name: Build Multistage (smaller) container
|
||||
command: |
|
||||
docker build -f docker/Dockerfile -t quay.io/nushell/nu:nightly .
|
||||
- run:
|
||||
name: Test Executable
|
||||
command: |
|
||||
docker run --rm quay.io/nushell/nu:nightly --help
|
||||
docker run --rm quay.io/nushell/nu-base:nightly --help
|
||||
- run:
|
||||
name: Publish Nightly Nushell Containers
|
||||
command: |
|
||||
docker push quay.io/nushell/nu-base:nightly
|
||||
docker push quay.io/nushell/nu:nightly
|
@ -1 +0,0 @@
|
||||
target
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@ -215,7 +215,7 @@ jobs:
|
||||
uses: actions-rs/cargo@v1
|
||||
with:
|
||||
command: install
|
||||
args: cargo-wix
|
||||
args: cargo-wix --version 0.3.1
|
||||
|
||||
- name: Build
|
||||
uses: actions-rs/cargo@v1
|
||||
|
18
.gitpod.Dockerfile
vendored
18
.gitpod.Dockerfile
vendored
@ -1,18 +0,0 @@
|
||||
FROM gitpod/workspace-full
|
||||
|
||||
# Gitpod will not rebuild Nushell's dev image unless *some* change is made to this Dockerfile.
|
||||
# To force a rebuild, simply increase this counter:
|
||||
ENV TRIGGER_REBUILD 2
|
||||
|
||||
USER gitpod
|
||||
|
||||
RUN sudo apt-get update && \
|
||||
sudo apt-get install -y \
|
||||
libssl-dev \
|
||||
libxcb-composite0-dev \
|
||||
pkg-config \
|
||||
libpython3.6 \
|
||||
rust-lldb \
|
||||
&& sudo rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV RUST_LLDB=/usr/bin/lldb-11
|
25
.gitpod.yml
25
.gitpod.yml
@ -1,25 +0,0 @@
|
||||
image:
|
||||
file: .gitpod.Dockerfile
|
||||
tasks:
|
||||
- name: Clippy
|
||||
init: cargo clippy --all --features=stable -- -D clippy::result_unwrap_used -D clippy::option_unwrap_used
|
||||
- name: Testing
|
||||
init: cargo test --all --features=stable
|
||||
- name: Build
|
||||
init: cargo build --features=stable
|
||||
- name: Nu
|
||||
init: cargo install --path . --features=stable
|
||||
command: nu
|
||||
github:
|
||||
prebuilds:
|
||||
branches: true
|
||||
pullRequestsFromForks: true
|
||||
addLabel: prebuilt-in-gitpod
|
||||
vscode:
|
||||
extensions:
|
||||
- hbenl.vscode-test-explorer@2.15.0:koqDUMWDPJzELp/hdS/lWw==
|
||||
- Swellaby.vscode-rust-test-adapter@0.11.0:Xg+YeZZQiVpVUsIkH+uiiw==
|
||||
- serayuzgur.crates@0.4.7:HMkoguLcXp9M3ud7ac3eIw==
|
||||
- belfz.search-crates-io@1.2.1:kSLnyrOhXtYPjQpKnMr4eQ==
|
||||
- bungcip.better-toml@0.3.2:3QfgGxxYtGHfJKQU7H0nEw==
|
||||
- webfreak.debug@0.24.0:1zVcRsAhewYEX3/A9xjMNw==
|
@ -1,14 +0,0 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"type": "gdb",
|
||||
"request": "launch",
|
||||
"name": "Debug Rust Code",
|
||||
"preLaunchTask": "cargo",
|
||||
"target": "${workspaceFolder}/target/debug/nu",
|
||||
"cwd": "${workspaceFolder}",
|
||||
"valuesFormatting": "parseText"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
{
|
||||
"tasks": [
|
||||
{
|
||||
"command": "cargo",
|
||||
"args": [
|
||||
"build"
|
||||
],
|
||||
"type": "process",
|
||||
"label": "cargo",
|
||||
}
|
||||
],
|
||||
}
|
80
Cargo.lock
generated
80
Cargo.lock
generated
@ -1890,9 +1890,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.108"
|
||||
version = "0.2.112"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8521a1b57e76b1ec69af7599e75e38e7b7fad6610f037db8c79b127201b5d119"
|
||||
checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125"
|
||||
|
||||
[[package]]
|
||||
name = "libgit2-sys"
|
||||
@ -2252,7 +2252,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"ctrlc",
|
||||
"futures 0.3.18",
|
||||
@ -2292,7 +2292,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-ansi-term"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"doc-comment",
|
||||
"overload",
|
||||
@ -2304,7 +2304,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-cli"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"ctrlc",
|
||||
"indexmap",
|
||||
@ -2331,7 +2331,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-command"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"base64",
|
||||
"bigdecimal",
|
||||
@ -2418,7 +2418,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-completion"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"is_executable",
|
||||
@ -2434,7 +2434,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-data"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"byte-unit",
|
||||
@ -2464,7 +2464,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-engine"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"bytes 1.1.0",
|
||||
@ -2509,7 +2509,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-errors"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"codespan-reporting",
|
||||
@ -2528,7 +2528,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-json"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"lazy_static",
|
||||
"linked-hash-map",
|
||||
@ -2542,7 +2542,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-parser"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"derive-new",
|
||||
@ -2561,7 +2561,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-path"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"dirs-next",
|
||||
"dunce",
|
||||
@ -2569,7 +2569,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-plugin"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"nu-errors",
|
||||
@ -2583,7 +2583,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-pretty-hex"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"heapless",
|
||||
"nu-ansi-term",
|
||||
@ -2592,7 +2592,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-protocol"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"byte-unit",
|
||||
@ -2614,7 +2614,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-serde"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"insta",
|
||||
@ -2626,7 +2626,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-source"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"derive-new",
|
||||
"getset",
|
||||
@ -2637,7 +2637,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-stream"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"nu-errors",
|
||||
"nu-protocol",
|
||||
@ -2646,7 +2646,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-table"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"atty",
|
||||
"nu-ansi-term",
|
||||
@ -2657,7 +2657,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-test-support"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"chrono",
|
||||
@ -2675,7 +2675,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu-value-ext"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"itertools",
|
||||
@ -2687,7 +2687,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_binaryview"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"crossterm",
|
||||
"image",
|
||||
@ -2703,7 +2703,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_chart"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"crossterm",
|
||||
"nu-data",
|
||||
@ -2717,7 +2717,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_from_bson"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"bson",
|
||||
@ -2729,7 +2729,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_from_mp4"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"mp4",
|
||||
"nu-errors",
|
||||
@ -2741,7 +2741,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_from_sqlite"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"nu-errors",
|
||||
@ -2754,7 +2754,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_inc"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"nu-errors",
|
||||
"nu-plugin",
|
||||
@ -2767,7 +2767,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_match"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"nu-errors",
|
||||
"nu-plugin",
|
||||
@ -2777,7 +2777,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_query_json"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"gjson",
|
||||
"nu-errors",
|
||||
@ -2788,7 +2788,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_s3"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"futures 0.3.18",
|
||||
"nu-errors",
|
||||
@ -2800,7 +2800,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_selector"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"nu-errors",
|
||||
@ -2812,7 +2812,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_start"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"glob",
|
||||
"nu-errors",
|
||||
@ -2826,7 +2826,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_textview"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bat",
|
||||
"nu-data",
|
||||
@ -2840,7 +2840,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_to_bson"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bson",
|
||||
"nu-errors",
|
||||
@ -2852,7 +2852,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_to_sqlite"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"hex",
|
||||
"nu-errors",
|
||||
@ -2865,7 +2865,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_tree"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"derive-new",
|
||||
"nu-errors",
|
||||
@ -2876,7 +2876,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "nu_plugin_xpath"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
dependencies = [
|
||||
"bigdecimal",
|
||||
"indexmap",
|
||||
@ -4570,9 +4570,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "sysinfo"
|
||||
version = "0.21.2"
|
||||
version = "0.23.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8f88d66f3341b688163d3585037954ff276cf24a234d015b30025318a3e3449a"
|
||||
checksum = "9e757000a4bed2b1be9be65a3f418b9696adf30bb419214c73997422de73a591"
|
||||
dependencies = [
|
||||
"cfg-if 1.0.0",
|
||||
"core-foundation-sys",
|
||||
|
58
Cargo.toml
58
Cargo.toml
@ -10,7 +10,7 @@ license = "MIT"
|
||||
name = "nu"
|
||||
readme = "README.md"
|
||||
repository = "https://github.com/nushell/nushell"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[workspace]
|
||||
members = ["crates/*/"]
|
||||
@ -18,34 +18,34 @@ members = ["crates/*/"]
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
nu-cli = { version = "0.42.0", path="./crates/nu-cli", default-features=false }
|
||||
nu-command = { version = "0.42.0", path="./crates/nu-command" }
|
||||
nu-completion = { version = "0.42.0", path="./crates/nu-completion" }
|
||||
nu-data = { version = "0.42.0", path="./crates/nu-data" }
|
||||
nu-engine = { version = "0.42.0", path="./crates/nu-engine" }
|
||||
nu-errors = { version = "0.42.0", path="./crates/nu-errors" }
|
||||
nu-parser = { version = "0.42.0", path="./crates/nu-parser" }
|
||||
nu-path = { version = "0.42.0", path="./crates/nu-path" }
|
||||
nu-plugin = { version = "0.42.0", path="./crates/nu-plugin" }
|
||||
nu-protocol = { version = "0.42.0", path="./crates/nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="./crates/nu-source" }
|
||||
nu-value-ext = { version = "0.42.0", path="./crates/nu-value-ext" }
|
||||
nu-cli = { version = "0.44.0", path="./crates/nu-cli", default-features=false }
|
||||
nu-command = { version = "0.44.0", path="./crates/nu-command" }
|
||||
nu-completion = { version = "0.44.0", path="./crates/nu-completion" }
|
||||
nu-data = { version = "0.44.0", path="./crates/nu-data" }
|
||||
nu-engine = { version = "0.44.0", path="./crates/nu-engine" }
|
||||
nu-errors = { version = "0.44.0", path="./crates/nu-errors" }
|
||||
nu-parser = { version = "0.44.0", path="./crates/nu-parser" }
|
||||
nu-path = { version = "0.44.0", path="./crates/nu-path" }
|
||||
nu-plugin = { version = "0.44.0", path="./crates/nu-plugin" }
|
||||
nu-protocol = { version = "0.44.0", path="./crates/nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="./crates/nu-source" }
|
||||
nu-value-ext = { version = "0.44.0", path="./crates/nu-value-ext" }
|
||||
|
||||
nu_plugin_binaryview = { version = "0.42.0", path="./crates/nu_plugin_binaryview", optional=true }
|
||||
nu_plugin_chart = { version = "0.42.0", path="./crates/nu_plugin_chart", optional=true }
|
||||
nu_plugin_from_bson = { version = "0.42.0", path="./crates/nu_plugin_from_bson", optional=true }
|
||||
nu_plugin_from_sqlite = { version = "0.42.0", path="./crates/nu_plugin_from_sqlite", optional=true }
|
||||
nu_plugin_inc = { version = "0.42.0", path="./crates/nu_plugin_inc", optional=true }
|
||||
nu_plugin_match = { version = "0.42.0", path="./crates/nu_plugin_match", optional=true }
|
||||
nu_plugin_query_json = { version = "0.42.0", path="./crates/nu_plugin_query_json", optional=true }
|
||||
nu_plugin_s3 = { version = "0.42.0", path="./crates/nu_plugin_s3", optional=true }
|
||||
nu_plugin_selector = { version = "0.42.0", path="./crates/nu_plugin_selector", optional=true }
|
||||
nu_plugin_start = { version = "0.42.0", path="./crates/nu_plugin_start", optional=true }
|
||||
nu_plugin_textview = { version = "0.42.0", path="./crates/nu_plugin_textview", optional=true }
|
||||
nu_plugin_to_bson = { version = "0.42.0", path="./crates/nu_plugin_to_bson", optional=true }
|
||||
nu_plugin_to_sqlite = { version = "0.42.0", path="./crates/nu_plugin_to_sqlite", optional=true }
|
||||
nu_plugin_tree = { version = "0.42.0", path="./crates/nu_plugin_tree", optional=true }
|
||||
nu_plugin_xpath = { version = "0.42.0", path="./crates/nu_plugin_xpath", optional=true }
|
||||
nu_plugin_binaryview = { version = "0.44.0", path="./crates/nu_plugin_binaryview", optional=true }
|
||||
nu_plugin_chart = { version = "0.44.0", path="./crates/nu_plugin_chart", optional=true }
|
||||
nu_plugin_from_bson = { version = "0.44.0", path="./crates/nu_plugin_from_bson", optional=true }
|
||||
nu_plugin_from_sqlite = { version = "0.44.0", path="./crates/nu_plugin_from_sqlite", optional=true }
|
||||
nu_plugin_inc = { version = "0.44.0", path="./crates/nu_plugin_inc", optional=true }
|
||||
nu_plugin_match = { version = "0.44.0", path="./crates/nu_plugin_match", optional=true }
|
||||
nu_plugin_query_json = { version = "0.44.0", path="./crates/nu_plugin_query_json", optional=true }
|
||||
nu_plugin_s3 = { version = "0.44.0", path="./crates/nu_plugin_s3", optional=true }
|
||||
nu_plugin_selector = { version = "0.44.0", path="./crates/nu_plugin_selector", optional=true }
|
||||
nu_plugin_start = { version = "0.44.0", path="./crates/nu_plugin_start", optional=true }
|
||||
nu_plugin_textview = { version = "0.44.0", path="./crates/nu_plugin_textview", optional=true }
|
||||
nu_plugin_to_bson = { version = "0.44.0", path="./crates/nu_plugin_to_bson", optional=true }
|
||||
nu_plugin_to_sqlite = { version = "0.44.0", path="./crates/nu_plugin_to_sqlite", optional=true }
|
||||
nu_plugin_tree = { version = "0.44.0", path="./crates/nu_plugin_tree", optional=true }
|
||||
nu_plugin_xpath = { version = "0.44.0", path="./crates/nu_plugin_xpath", optional=true }
|
||||
|
||||
# Required to bootstrap the main binary
|
||||
ctrlc = { version="3.1.7", optional=true }
|
||||
@ -53,7 +53,7 @@ futures = { version="0.3.12", features=["compat", "io-compat"] }
|
||||
itertools = "0.10.0"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { version = "0.42.0", path="./crates/nu-test-support" }
|
||||
nu-test-support = { version = "0.44.0", path="./crates/nu-test-support" }
|
||||
serial_test = "0.5.1"
|
||||
hamcrest2 = "0.3.0"
|
||||
rstest = "0.10.0"
|
||||
|
15
README.md
15
README.md
@ -37,10 +37,6 @@ We also have an active [Discord](https://discord.gg/NtAbbGn) and [Twitter](https
|
||||
|
||||
You can also find information on more specific topics in our [cookbook](https://www.nushell.sh/cookbook/).
|
||||
|
||||
Try it in Gitpod.
|
||||
|
||||
[](https://gitpod.io/#https://github.com/nushell/nushell)
|
||||
|
||||
## Installation
|
||||
|
||||
### Local
|
||||
@ -113,12 +109,11 @@ Commands are separated by the pipe symbol (`|`) to denote a pipeline flowing lef
|
||||
0 │ assets │ Dir │ 128 B │ 5 months ago
|
||||
1 │ crates │ Dir │ 704 B │ 50 mins ago
|
||||
2 │ debian │ Dir │ 352 B │ 5 months ago
|
||||
3 │ docker │ Dir │ 288 B │ 3 months ago
|
||||
4 │ docs │ Dir │ 192 B │ 50 mins ago
|
||||
5 │ images │ Dir │ 160 B │ 5 months ago
|
||||
6 │ src │ Dir │ 128 B │ 1 day ago
|
||||
7 │ target │ Dir │ 160 B │ 5 days ago
|
||||
8 │ tests │ Dir │ 192 B │ 3 months ago
|
||||
3 │ docs │ Dir │ 192 B │ 50 mins ago
|
||||
4 │ images │ Dir │ 160 B │ 5 months ago
|
||||
5 │ src │ Dir │ 128 B │ 1 day ago
|
||||
6 │ target │ Dir │ 160 B │ 5 days ago
|
||||
7 │ tests │ Dir │ 192 B │ 3 months ago
|
||||
───┴────────┴──────┴───────┴──────────────
|
||||
```
|
||||
|
||||
|
@ -9,7 +9,7 @@ description = "Library for ANSI terminal colors and styles (bold, underline)"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-ansi-term"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
@ -231,7 +231,6 @@
|
||||
|
||||
#![crate_name = "nu_ansi_term"]
|
||||
#![crate_type = "rlib"]
|
||||
#![crate_type = "dylib"]
|
||||
#![warn(missing_copy_implementations)]
|
||||
// #![warn(missing_docs)]
|
||||
#![warn(trivial_casts, trivial_numeric_casts)]
|
||||
|
@ -4,24 +4,24 @@ description = "CLI for nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-cli"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
build = "build.rs"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-completion = { version = "0.42.0", path="../nu-completion" }
|
||||
nu-command = { version = "0.42.0", path="../nu-command" }
|
||||
nu-data = { version = "0.42.0", path="../nu-data" }
|
||||
nu-engine = { version = "0.42.0", path="../nu-engine" }
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-parser = { version = "0.42.0", path="../nu-parser" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.42.0", path="../nu-stream" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-completion = { version = "0.44.0", path="../nu-completion" }
|
||||
nu-command = { version = "0.44.0", path="../nu-command" }
|
||||
nu-data = { version = "0.44.0", path="../nu-data" }
|
||||
nu-engine = { version = "0.44.0", path="../nu-engine" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-parser = { version = "0.44.0", path="../nu-parser" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.44.0", path="../nu-stream" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
|
||||
indexmap ="1.6.1"
|
||||
log = "0.4.14"
|
||||
|
@ -91,10 +91,10 @@ pub fn run_script_file(
|
||||
fn default_prompt_string(cwd: &str) -> String {
|
||||
format!(
|
||||
"{}{}{}{}{}{}> ",
|
||||
Color::Green.bold().prefix().to_string(),
|
||||
Color::Green.bold().prefix(),
|
||||
cwd,
|
||||
nu_ansi_term::ansi::RESET,
|
||||
Color::Cyan.bold().prefix().to_string(),
|
||||
Color::Cyan.bold().prefix(),
|
||||
current_branch(),
|
||||
nu_ansi_term::ansi::RESET
|
||||
)
|
||||
|
@ -1,32 +1,32 @@
|
||||
[package]
|
||||
authors = ["The Nu Project Contributors"]
|
||||
build = "build.rs"
|
||||
description = "CLI for nushell"
|
||||
description = "Commands for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-command"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-data = { version = "0.42.0", path="../nu-data" }
|
||||
nu-engine = { version = "0.42.0", path="../nu-engine" }
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-json = { version = "0.42.0", path="../nu-json" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-parser = { version = "0.42.0", path="../nu-parser" }
|
||||
nu-plugin = { version = "0.42.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-serde = { version = "0.42.0", path="../nu-serde" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.42.0", path="../nu-stream" }
|
||||
nu-table = { version = "0.42.0", path="../nu-table" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-value-ext = { version = "0.42.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-pretty-hex = { version = "0.42.0", path="../nu-pretty-hex" }
|
||||
nu-data = { version = "0.44.0", path="../nu-data" }
|
||||
nu-engine = { version = "0.44.0", path="../nu-engine" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-json = { version = "0.44.0", path="../nu-json" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-parser = { version = "0.44.0", path="../nu-parser" }
|
||||
nu-plugin = { version = "0.44.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-serde = { version = "0.44.0", path="../nu-serde" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.44.0", path="../nu-stream" }
|
||||
nu-table = { version = "0.44.0", path="../nu-table" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
nu-value-ext = { version = "0.44.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
nu-pretty-hex = { version = "0.44.0", path="../nu-pretty-hex" }
|
||||
|
||||
url = "2.2.1"
|
||||
mime = "0.3.16"
|
||||
@ -73,7 +73,7 @@ serde_urlencoded = "0.7.0"
|
||||
serde_yaml = "0.8.16"
|
||||
sha2 = "0.9.3"
|
||||
strip-ansi-escapes = "0.1.0"
|
||||
sysinfo = { version = "0.21.2", optional = true }
|
||||
sysinfo = { version = "0.23.0", optional = true }
|
||||
thiserror = "1.0.26"
|
||||
term = { version="0.7.0", optional=true }
|
||||
term_size = "0.3.2"
|
||||
|
@ -93,7 +93,7 @@ pub fn source(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
|
||||
let path = canonicalize(source_file).map_err(|e| {
|
||||
ShellError::labeled_error(
|
||||
format!("Can't load source file. Reason: {}", e.to_string()),
|
||||
format!("Can't load source file. Reason: {}", e),
|
||||
"Can't load this file",
|
||||
filename.span(),
|
||||
)
|
||||
@ -112,7 +112,7 @@ pub fn source(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
}
|
||||
Err(e) => {
|
||||
ctx.error(ShellError::labeled_error(
|
||||
format!("Can't load source file. Reason: {}", e.to_string()),
|
||||
format!("Can't load source file. Reason: {}", e),
|
||||
"Can't load this file",
|
||||
filename.span(),
|
||||
));
|
||||
|
@ -81,6 +81,7 @@ fn tutor(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
vec!["var", "vars", "variable", "variables"],
|
||||
variable_tutor(),
|
||||
),
|
||||
(vec!["engine-q", "e-q"], engineq_tutor()),
|
||||
(vec!["block", "blocks"], block_tutor()),
|
||||
(vec!["shorthand", "shorthands"], shorthand_tutor()),
|
||||
];
|
||||
@ -370,6 +371,29 @@ same value using:
|
||||
"#
|
||||
}
|
||||
|
||||
fn engineq_tutor() -> &'static str {
|
||||
r#"
|
||||
Engine-q is the upcoming engine for Nushell. Build for speed and correctness,
|
||||
it also comes with a set of changes from Nushell versions prior to 0.60. To
|
||||
get ready for engine-q look for some of these changes that might impact your
|
||||
current scripts:
|
||||
|
||||
* Engine-q now uses a few new data structures, including a record syntax
|
||||
that allows you to model key-value pairs similar to JSON objects.
|
||||
* Environment variables can now contain more than just strings. Structured
|
||||
values are converted to strings for external commands using converters.
|
||||
* `if` will now use an `else` keyword before the else block.
|
||||
* We're moving from "config.toml" to "config.nu". This means startup will
|
||||
now be a script file.
|
||||
* `config` and its subcommands are being replaced by a record that you can
|
||||
update in the shell which contains all the settings under the variable
|
||||
`$config`.
|
||||
* bigint/bigdecimal values are now machine i64 and f64 values
|
||||
* And more, you can read more about upcoming changes in the up-to-date list
|
||||
at: https://github.com/nushell/engine-q/issues/522
|
||||
"#
|
||||
}
|
||||
|
||||
fn display(tag: Tag, scope: &Scope, help: &str) -> OutputStream {
|
||||
let help = help.split('`');
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
use crate::prelude::*;
|
||||
use nu_engine::WholeStreamCommand;
|
||||
use itertools::Either;
|
||||
use nu_engine::{FromValue, WholeStreamCommand};
|
||||
use nu_errors::ShellError;
|
||||
use nu_protocol::{Signature, SyntaxShape, Value};
|
||||
use nu_protocol::{Range, Signature, SpannedTypeName, SyntaxShape, Value};
|
||||
use nu_source::Tagged;
|
||||
|
||||
pub struct SubCommand;
|
||||
@ -14,11 +15,16 @@ impl WholeStreamCommand for SubCommand {
|
||||
fn signature(&self) -> Signature {
|
||||
Signature::build("drop nth")
|
||||
.required(
|
||||
"row number",
|
||||
SyntaxShape::Int,
|
||||
"the number of the row to drop",
|
||||
"row number or row range",
|
||||
// FIXME: we can make this accept either Int or Range when we can compose SyntaxShapes
|
||||
SyntaxShape::Any,
|
||||
"the number of the row to drop or a range to drop consecutive rows",
|
||||
)
|
||||
.rest(
|
||||
"rest",
|
||||
SyntaxShape::Any,
|
||||
"Optionally drop more rows (Ignored if first argument is a range)",
|
||||
)
|
||||
.rest("rest", SyntaxShape::Any, "Optionally drop more rows")
|
||||
}
|
||||
|
||||
fn usage(&self) -> &str {
|
||||
@ -41,18 +47,46 @@ impl WholeStreamCommand for SubCommand {
|
||||
example: "echo [first second third] | drop nth 0 2",
|
||||
result: Some(vec![Value::from("second")]),
|
||||
},
|
||||
Example {
|
||||
description: "Drop range rows from second to fourth",
|
||||
example: "echo [first second third fourth fifth] | drop nth (1..3)",
|
||||
result: Some(vec![Value::from("first"), Value::from("fifth")]),
|
||||
},
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
fn drop(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
let row_number: Tagged<u64> = args.req(0)?;
|
||||
let and_rows: Vec<Tagged<u64>> = args.rest(1)?;
|
||||
let input = args.input;
|
||||
fn extract_int_or_range(args: &CommandArgs) -> Result<Either<u64, Range>, ShellError> {
|
||||
let value = args.req::<Value>(0)?;
|
||||
|
||||
let mut rows: Vec<_> = and_rows.into_iter().map(|x| x.item as usize).collect();
|
||||
rows.push(row_number.item as usize);
|
||||
rows.sort_unstable();
|
||||
let int_opt = value.as_u64().map(Either::Left).ok();
|
||||
let range_opt = FromValue::from_value(&value).map(Either::Right).ok();
|
||||
|
||||
int_opt
|
||||
.or(range_opt)
|
||||
.ok_or_else(|| ShellError::type_error("int or range", value.spanned_type_name()))
|
||||
}
|
||||
|
||||
fn drop(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
let number_or_range = extract_int_or_range(&args)?;
|
||||
let rows = match number_or_range {
|
||||
Either::Left(row_number) => {
|
||||
let and_rows: Vec<Tagged<u64>> = args.rest(1)?;
|
||||
|
||||
let mut rows: Vec<_> = and_rows.into_iter().map(|x| x.item as usize).collect();
|
||||
rows.push(row_number as usize);
|
||||
rows.sort_unstable();
|
||||
rows
|
||||
}
|
||||
Either::Right(row_range) => {
|
||||
let from = row_range.min_u64()? as usize;
|
||||
let to = row_range.max_u64()? as usize;
|
||||
|
||||
(from..=to).collect()
|
||||
}
|
||||
};
|
||||
|
||||
let input = args.input;
|
||||
|
||||
Ok(DropNthIterator {
|
||||
input,
|
||||
|
@ -197,7 +197,7 @@ fn process_row(
|
||||
} else {
|
||||
let mut obj = input.clone();
|
||||
|
||||
for column in column_paths.clone() {
|
||||
for column in column_paths {
|
||||
let path = UntaggedValue::Primitive(Primitive::ColumnPath(column.clone()))
|
||||
.into_value(tag);
|
||||
let data = r.get_data(&as_string(&path)?).borrow().clone();
|
||||
|
@ -112,9 +112,7 @@ fn process_row(
|
||||
};
|
||||
|
||||
match input {
|
||||
obj
|
||||
@
|
||||
Value {
|
||||
obj @ Value {
|
||||
value: UntaggedValue::Row(_),
|
||||
..
|
||||
} => match obj.insert_data_at_column_path(&field, result) {
|
||||
|
@ -117,9 +117,7 @@ fn process_row(
|
||||
};
|
||||
|
||||
match input {
|
||||
obj
|
||||
@
|
||||
Value {
|
||||
obj @ Value {
|
||||
value: UntaggedValue::Row(_),
|
||||
..
|
||||
} => match obj.replace_data_at_column_path(&field, result) {
|
||||
|
@ -86,16 +86,11 @@ fn zip<'a>(
|
||||
) -> Result<Box<dyn Iterator<Item = Value> + 'a + Sync + Send>, ShellError> {
|
||||
Ok(Box::new(l.zip(r?).map(move |(s1, s2)| match (s1, s2) {
|
||||
(
|
||||
left_row
|
||||
@
|
||||
Value {
|
||||
left_row @ Value {
|
||||
value: UntaggedValue::Row(_),
|
||||
..
|
||||
},
|
||||
mut
|
||||
right_row
|
||||
@
|
||||
Value {
|
||||
mut right_row @ Value {
|
||||
value: UntaggedValue::Row(_),
|
||||
..
|
||||
},
|
||||
|
@ -104,7 +104,7 @@ fn kill(args: CommandArgs) -> Result<ActionStream, ShellError> {
|
||||
}
|
||||
cmd.arg("-9");
|
||||
} else if let Some(signal_value) = signal {
|
||||
cmd.arg(format!("-{}", signal_value.item().to_string()));
|
||||
cmd.arg(format!("-{}", signal_value.item()));
|
||||
}
|
||||
|
||||
cmd.arg(pid.item().to_string());
|
||||
|
@ -1,7 +1,7 @@
|
||||
use crate::prelude::*;
|
||||
use nu_errors::ShellError;
|
||||
use nu_protocol::{Signature, TaggedDictBuilder, UntaggedValue};
|
||||
use sysinfo::{ProcessExt, System, SystemExt};
|
||||
use sysinfo::{PidExt, ProcessExt, System, SystemExt};
|
||||
|
||||
pub struct Command;
|
||||
|
||||
@ -50,7 +50,7 @@ fn run_ps(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
for pid in result {
|
||||
if let Some(result) = sys.process(pid) {
|
||||
let mut dict = TaggedDictBuilder::new(args.name_tag());
|
||||
dict.insert_untagged("pid", UntaggedValue::int(pid as i64));
|
||||
dict.insert_untagged("pid", UntaggedValue::int(pid.as_u32() as i64));
|
||||
dict.insert_untagged("name", UntaggedValue::string(result.name()));
|
||||
dict.insert_untagged(
|
||||
"status",
|
||||
@ -68,7 +68,7 @@ fn run_ps(args: CommandArgs) -> Result<OutputStream, ShellError> {
|
||||
|
||||
if long {
|
||||
if let Some(parent) = result.parent() {
|
||||
dict.insert_untagged("parent", UntaggedValue::int(parent as i64));
|
||||
dict.insert_untagged("parent", UntaggedValue::int(parent.as_u32() as i64));
|
||||
} else {
|
||||
dict.insert_untagged("parent", UntaggedValue::nothing());
|
||||
}
|
||||
|
@ -66,3 +66,25 @@ fn more_rows_than_table_has() {
|
||||
|
||||
assert_eq!(actual.out, "0");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn nth_range_inclusive() {
|
||||
let actual = nu!(cwd: ".", "echo 10..15 | drop nth (2..3) | to json");
|
||||
|
||||
assert_eq!(actual.out, "[10,11,14,15]");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn nth_range_exclusive() {
|
||||
let actual = nu!(cwd: ".", "echo 10..15 | drop nth (1..<3) | to json");
|
||||
|
||||
assert_eq!(actual.out, "[10,13,14,15]");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn nth_missing_first_argument() {
|
||||
let actual = nu!(cwd: ".", "echo 10..15 | drop nth \"\"");
|
||||
|
||||
assert!(actual.err.contains("Expected int or range"));
|
||||
assert!(actual.err.contains("found string"));
|
||||
}
|
||||
|
@ -4,19 +4,19 @@ description = "Completions for nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-completion"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-engine = { version = "0.42.0", path="../nu-engine" }
|
||||
nu-data = { version = "0.42.0", path="../nu-data" }
|
||||
nu-parser = { version = "0.42.0", path="../nu-parser" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-engine = { version = "0.44.0", path="../nu-engine" }
|
||||
nu-data = { version = "0.44.0", path="../nu-data" }
|
||||
nu-parser = { version = "0.44.0", path="../nu-parser" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
indexmap = { version="1.6.1", features=["serde-1"] }
|
||||
|
||||
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
||||
|
@ -1,10 +1,10 @@
|
||||
[package]
|
||||
authors = ["The Nu Project Contributors"]
|
||||
description = "CLI for nushell"
|
||||
description = "Data for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-data"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
@ -27,14 +27,14 @@ sha2 = "0.9.3"
|
||||
sys-locale = "0.1.0"
|
||||
toml = "0.5.8"
|
||||
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-table = { version = "0.42.0", path="../nu-table" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-value-ext = { version = "0.42.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-table = { version = "0.44.0", path="../nu-table" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
nu-value-ext = { version = "0.44.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
|
||||
[features]
|
||||
dataframe = ["nu-protocol/dataframe"]
|
||||
|
@ -4,20 +4,20 @@ description = "Core commands for nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-engine"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[dependencies]
|
||||
nu-data = { version = "0.42.0", path="../nu-data" }
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-parser = { version = "0.42.0", path="../nu-parser" }
|
||||
nu-plugin = { version = "0.42.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.42.0", path="../nu-stream" }
|
||||
nu-value-ext = { version = "0.42.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-data = { version = "0.44.0", path="../nu-data" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-parser = { version = "0.44.0", path="../nu-parser" }
|
||||
nu-plugin = { version = "0.44.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-stream = { version = "0.44.0", path="../nu-stream" }
|
||||
nu-value-ext = { version = "0.44.0", path="../nu-value-ext" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
|
||||
trash = { version = "2.0.2", optional = true }
|
||||
which = { version="4.0.2", optional=true }
|
||||
@ -50,7 +50,7 @@ umask = "1.0.0"
|
||||
users = "0.11.0"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
hamcrest2 = "0.3.0"
|
||||
|
||||
[features]
|
||||
|
@ -970,7 +970,7 @@ fn move_item(from: &Path, from_tag: &Tag, to: &Path) -> Result<(), ShellError> {
|
||||
} {
|
||||
Ok(_) => Ok(()),
|
||||
Err(e) => Err(ShellError::labeled_error(
|
||||
format!("Could not move {:?} to {:?}. {:}", from, to, e.to_string()),
|
||||
format!("Could not move {:?} to {:?}. {:}", from, to, e),
|
||||
"could not move",
|
||||
from_tag,
|
||||
)),
|
||||
|
@ -147,7 +147,7 @@ pub fn process_script(
|
||||
{
|
||||
val.to_string()
|
||||
} else {
|
||||
format!("{}\\", name.to_string())
|
||||
format!("{}\\", name)
|
||||
}
|
||||
} else {
|
||||
name.to_string()
|
||||
|
@ -4,14 +4,14 @@ description = "Core error subsystem for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-errors"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
codespan-reporting = { version="0.11.0", features=["serialization"] }
|
||||
|
@ -4,7 +4,7 @@ description = "Fork of serde-hjson"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-json"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
@ -20,6 +20,6 @@ lazy_static = "1"
|
||||
linked-hash-map = { version="0.5", optional=true }
|
||||
|
||||
[dev-dependencies]
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
serde_json = "1.0.39"
|
||||
|
@ -4,7 +4,7 @@ description = "Nushell parser"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-parser"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[dependencies]
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
@ -15,12 +15,12 @@ num-bigint = { version="0.4.3", features=["serde"] }
|
||||
itertools = "0.10.0"
|
||||
smart-default = "0.6.0"
|
||||
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-data = { version = "0.42.0", path="../nu-data" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-test-support = { version = "0.42.0", path="../nu-test-support" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-data = { version = "0.44.0", path="../nu-data" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
nu-test-support = { version = "0.44.0", path="../nu-test-support" }
|
||||
|
||||
[features]
|
||||
stable = []
|
||||
|
@ -75,7 +75,7 @@ fn find_source_file(
|
||||
|
||||
let path = canonicalize(&file).map_err(|e| {
|
||||
ParseError::general_error(
|
||||
format!("Can't load source file. Reason: {}", e.to_string()),
|
||||
format!("Can't load source file. Reason: {}", e),
|
||||
"Can't load this file".spanned(file_span),
|
||||
)
|
||||
})?;
|
||||
@ -85,7 +85,7 @@ fn find_source_file(
|
||||
match contents {
|
||||
Ok(contents) => parse(&contents, 0, scope),
|
||||
Err(e) => Err(ParseError::general_error(
|
||||
format!("Can't load source file. Reason: {}", e.to_string()),
|
||||
format!("Can't load source file. Reason: {}", e),
|
||||
"Can't load this file".spanned(file_span),
|
||||
)),
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ description = "Path handling library for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-path"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[dependencies]
|
||||
dirs-next = "2.0.0"
|
||||
|
@ -4,17 +4,17 @@ description = "Nushell Plugin"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-plugin"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-test-support = { path="../nu-test-support", version = "0.42.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
nu-test-support = { path="../nu-test-support", version = "0.44.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.44.0" }
|
||||
indexmap = { version="1.6.1", features=["serde-1"] }
|
||||
serde = { version="1.0", features=["derive"] }
|
||||
serde_json = "1.0"
|
||||
|
@ -4,7 +4,7 @@ description = "Pretty hex dump of bytes slice in the common style."
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-pretty-hex"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
@ -16,7 +16,7 @@ name = "nu_pretty_hex"
|
||||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
nu-ansi-term = { path="../nu-ansi-term", version = "0.42.0" }
|
||||
nu-ansi-term = { path="../nu-ansi-term", version = "0.44.0" }
|
||||
rand = "0.8.3"
|
||||
|
||||
[dev-dependencies]
|
||||
|
@ -4,7 +4,7 @@ description = "Core values and protocols for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-protocol"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
@ -18,8 +18,8 @@ derive-new = "0.5.8"
|
||||
getset = "0.1.1"
|
||||
indexmap = { version="1.6.1", features=["serde-1"] }
|
||||
log = "0.4.14"
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
num-bigint = { version = "0.4.3", features = ["serde"] }
|
||||
num-integer = "0.1.44"
|
||||
num-traits = "0.2.14"
|
||||
|
@ -573,9 +573,7 @@ impl Value {
|
||||
value: UntaggedValue::Table(rows),
|
||||
..
|
||||
} => rows.is_empty(),
|
||||
r
|
||||
@
|
||||
Value {
|
||||
r @ Value {
|
||||
value: UntaggedValue::Row(_),
|
||||
..
|
||||
} => r.row_entries().all(|(_, value)| value.is_empty()),
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "nu-serde"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
edition = "2018"
|
||||
authors = ["The Nu Project Contributors"]
|
||||
description = "Turn any value into a nu-protocol::Value with serde"
|
||||
@ -10,8 +10,8 @@ documentation = "https://docs.rs/nu-serde"
|
||||
|
||||
[dependencies]
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
nu-protocol = { version = "0.42.0", path = "../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path = "../nu-source" }
|
||||
nu-protocol = { version = "0.44.0", path = "../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path = "../nu-source" }
|
||||
serde = "1"
|
||||
thiserror = "1"
|
||||
|
||||
|
@ -4,7 +4,7 @@ description = "A source string characterizer for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-source"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
@ -4,12 +4,12 @@ description = "Nushell stream"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-stream"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
|
||||
[features]
|
||||
stable = []
|
||||
|
@ -4,7 +4,7 @@ description = "Nushell table printing"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-table"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
[[bin]]
|
||||
@ -13,7 +13,7 @@ path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
atty = "0.2.14"
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
|
||||
regex = "1.4"
|
||||
strip-ansi-escapes = "0.1.1"
|
||||
|
@ -4,16 +4,16 @@ description = "Support for writing Nushell tests"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-test-support"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-path = { version = "0.42.0", path="../nu-path" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-path = { version = "0.44.0", path="../nu-path" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
chrono = "0.4.19"
|
||||
|
@ -97,7 +97,7 @@ impl Executable for Director {
|
||||
.spawn()
|
||||
{
|
||||
Ok(child) => child,
|
||||
Err(why) => panic!("Can't run test {}", why.to_string()),
|
||||
Err(why) => panic!("Can't run test {}", why),
|
||||
};
|
||||
|
||||
if let Some(pipelines) = &self.pipeline {
|
||||
|
@ -4,15 +4,15 @@ description = "Extension traits for values in Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu-value-ext"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
|
||||
indexmap = { version="1.6.1", features=["serde-1"] }
|
||||
itertools = "0.10.0"
|
||||
|
@ -4,7 +4,7 @@ description = "A binary viewer plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_binaryview"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
@ -13,12 +13,12 @@ doctest = false
|
||||
crossterm = "0.19"
|
||||
image = { version = "0.23.14", default_features = false, features = ["png", "jpeg"] }
|
||||
neso = "0.5.0"
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-ansi-term = { version = "0.42.0", path="../nu-ansi-term" }
|
||||
nu-pretty-hex = { version = "0.42.0", path="../nu-pretty-hex" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
nu-ansi-term = { version = "0.44.0", path="../nu-ansi-term" }
|
||||
nu-pretty-hex = { version = "0.44.0", path="../nu-pretty-hex" }
|
||||
rawkey = "0.1.3"
|
||||
|
||||
[build-dependencies]
|
||||
|
@ -4,18 +4,18 @@ description = "A plugin to display charts"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_chart"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-data = { path="../nu-data", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.42.0" }
|
||||
nu-data = { path="../nu-data", version = "0.44.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.44.0" }
|
||||
|
||||
crossterm = "0.19.0"
|
||||
tui = { version="0.15.0", default-features=false, features=["crossterm"] }
|
||||
|
@ -4,7 +4,7 @@ description = "A converter plugin to the bson format for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_from_bson"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
@ -12,9 +12,9 @@ doctest = false
|
||||
[dependencies]
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
bson = { version = "2.0.1", features = [ "chrono-0_4" ] }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
|
||||
[build-dependencies]
|
||||
|
@ -4,16 +4,16 @@ description = "A converter plugin to the mp4 format for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_from_mp4"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
tempfile = "3.2.0"
|
||||
mp4 = "0.9.0"
|
||||
|
||||
|
@ -4,17 +4,17 @@ description = "A converter plugin to the bson format for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_from_sqlite"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
tempfile = "3.2.0"
|
||||
|
||||
[dependencies.rusqlite]
|
||||
|
@ -4,18 +4,18 @@ description = "A version incrementer plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_inc"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-test-support = { path="../nu-test-support", version = "0.42.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
nu-test-support = { path="../nu-test-support", version = "0.44.0" }
|
||||
nu-value-ext = { path="../nu-value-ext", version = "0.44.0" }
|
||||
|
||||
semver = "0.11.0"
|
||||
|
||||
|
@ -49,9 +49,7 @@ impl Plugin for Inc {
|
||||
if let Some(args) = call_info.args.positional {
|
||||
for arg in args {
|
||||
match arg {
|
||||
table
|
||||
@
|
||||
Value {
|
||||
table @ Value {
|
||||
value: UntaggedValue::Primitive(Primitive::ColumnPath(_)),
|
||||
..
|
||||
} => {
|
||||
|
@ -4,15 +4,15 @@ description = "A regex match plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_match"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
regex = "1.4.3"
|
||||
|
||||
[build-dependencies]
|
||||
|
@ -4,14 +4,14 @@ description = "query json files with gjson"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_query_json"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
gjson = "0.8.0"
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-plugin = { version = "0.42.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-plugin = { version = "0.44.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
|
@ -4,17 +4,17 @@ description = "An S3 plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_s3"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
futures = { version="0.3.12", features=["compat", "io-compat"] }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
s3handler = "0.7.5"
|
||||
|
||||
[build-dependencies]
|
||||
|
@ -4,17 +4,17 @@ description = "web scraping using css selector"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_selector"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
scraper = "0.12.0"
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-plugin = { version = "0.42.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-plugin = { version = "0.44.0", path="../nu-plugin" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
|
||||
[dev-dependencies]
|
||||
indexmap = { version="1.7", features=["serde-1"] }
|
||||
|
@ -4,17 +4,17 @@ description = "A plugin to open files/URLs directly from Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_start"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
glob = "0.3.0"
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
url = "2.2.0"
|
||||
webbrowser = "0.5.5"
|
||||
|
||||
@ -22,5 +22,5 @@ webbrowser = "0.5.5"
|
||||
open = "1.4.0"
|
||||
|
||||
[build-dependencies]
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
|
@ -4,17 +4,17 @@ description = "Text viewer plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_textview"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-data = { path="../nu-data", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-data = { path="../nu-data", version = "0.44.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
|
||||
bat = { version="0.18", default-features = false, features=["regex-onig", "paging", "git"] }
|
||||
term_size = "0.3.2"
|
||||
|
@ -4,17 +4,17 @@ description = "A converter plugin to the bson format for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_to_bson"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
bson = { version = "2.0.1", features = [ "chrono-0_4" ] }
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
num-traits = "0.2.14"
|
||||
|
||||
[features]
|
||||
|
@ -4,17 +4,17 @@ description = "A converter plugin to the SQLite format for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_to_sqlite"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
hex = "0.4.2"
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-source = { path="../nu-source", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
nu-source = { path="../nu-source", version = "0.44.0" }
|
||||
tempfile = "3.2.0"
|
||||
|
||||
[dependencies.rusqlite]
|
||||
|
@ -4,16 +4,16 @@ description = "Tree viewer plugin for Nushell"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_tree"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
derive-new = "0.5.8"
|
||||
nu-errors = { path="../nu-errors", version = "0.42.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.42.0" }
|
||||
nu-errors = { path="../nu-errors", version = "0.44.0" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { path="../nu-protocol", version = "0.44.0" }
|
||||
ptree = { version = "0.4.0", default-features = false }
|
||||
|
||||
|
||||
|
@ -4,16 +4,16 @@ description = "Traverses xml"
|
||||
edition = "2018"
|
||||
license = "MIT"
|
||||
name = "nu_plugin_xpath"
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[lib]
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
nu-errors = { version = "0.42.0", path="../nu-errors" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.42.0" }
|
||||
nu-protocol = { version = "0.42.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.42.0", path="../nu-source" }
|
||||
nu-errors = { version = "0.44.0", path="../nu-errors" }
|
||||
nu-plugin = { path="../nu-plugin", version = "0.44.0" }
|
||||
nu-protocol = { version = "0.44.0", path="../nu-protocol" }
|
||||
nu-source = { version = "0.44.0", path="../nu-source" }
|
||||
|
||||
bigdecimal = { package = "bigdecimal", version = "0.3.0", features = ["serde"] }
|
||||
indexmap = { version="1.6.1", features=["serde-1"] }
|
||||
@ -21,4 +21,4 @@ sxd-document = "0.3.2"
|
||||
sxd-xpath = "0.4.2"
|
||||
|
||||
[dev-dependencies]
|
||||
nu-test-support = { path="../nu-test-support", version = "0.42.0" }
|
||||
nu-test-support = { path="../nu-test-support", version = "0.44.0" }
|
||||
|
5
debian/changelog
vendored
5
debian/changelog
vendored
@ -1,5 +0,0 @@
|
||||
nu (0.2.0-1) unstable; urgency=low
|
||||
|
||||
* Initial release
|
||||
|
||||
-- Jan Koprowski <jan.koprowski@gmail.com> Wed, 04 Sep 2019 21:38:44 +0200
|
1
debian/compat
vendored
1
debian/compat
vendored
@ -1 +0,0 @@
|
||||
10
|
18
debian/control
vendored
18
debian/control
vendored
@ -1,18 +0,0 @@
|
||||
Source: nu
|
||||
Section: shells
|
||||
Priority: optional
|
||||
Maintainer: Jan Koprowski <jan.koprowski@gmail.com>
|
||||
Build-Depends: debhelper (>= 10)
|
||||
Standards-Version: 4.1.2
|
||||
Homepage: https://github.com/nushell/nushell
|
||||
Vcs-Git: https://github.com/nushell/nushell.git
|
||||
Vcs-Browser: https://github.com/nushell/nushell
|
||||
|
||||
Package: nu
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Description: A modern shell for the GitHub era
|
||||
The goal of this project is to take the Unix
|
||||
philosophy of shells, where pipes connect simple
|
||||
commands together, and bring it to the modern
|
||||
style of development.
|
32
debian/copyright
vendored
32
debian/copyright
vendored
@ -1,32 +0,0 @@
|
||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: nu
|
||||
Source: https://github.com/nushell/nushell
|
||||
|
||||
Files: *
|
||||
Copyright: 2019 Yehuda Katz
|
||||
2019 Jonathan Turner
|
||||
License: MIT
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2019 Yehuda Katz
|
||||
2019 Jonathan Turner
|
||||
License: MIT
|
||||
|
||||
License: MIT
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
to deal in the Software without restriction, including without limitation
|
||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
11
debian/install
vendored
11
debian/install
vendored
@ -1,11 +0,0 @@
|
||||
target/release/nu usr/bin
|
||||
target/release/nu_plugin_binaryview usr/bin
|
||||
target/release/nu_plugin_edit usr/bin
|
||||
target/release/nu_plugin_inc usr/bin
|
||||
target/release/nu_plugin_skip usr/bin
|
||||
target/release/nu_plugin_str usr/bin
|
||||
target/release/nu_plugin_sum usr/bin
|
||||
target/release/nu_plugin_sys usr/bin
|
||||
target/release/nu_plugin_textview usr/bin
|
||||
target/release/nu_plugin_tree usr/bin
|
||||
target/release/nu_plugin_docker usr/bin
|
8
debian/postinst
vendored
8
debian/postinst
vendored
@ -1,8 +0,0 @@
|
||||
#! /bin/bash
|
||||
|
||||
if [ "$1" = configure ] && which add-shell >/dev/null
|
||||
then
|
||||
add-shell /usr/bin/nu
|
||||
fi
|
||||
|
||||
exit 0
|
17
debian/postrm
vendored
17
debian/postrm
vendored
@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
case "$1" in
|
||||
upgrade|failed-upgrade|abort-install|abort-upgrade)
|
||||
;;
|
||||
remove|purge|disappear)
|
||||
if which remove-shell >/dev/null && [ -f /etc/shells ]; then
|
||||
remove-shell /usr/bin/nu
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "postrm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
25
debian/rules
vendored
25
debian/rules
vendored
@ -1,25 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
# See debhelper(7) (uncomment to enable)
|
||||
# output every command that modifies files on the build system.
|
||||
#export DH_VERBOSE = 1
|
||||
|
||||
|
||||
# see FEATURE AREAS in dpkg-buildflags(1)
|
||||
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
|
||||
# see ENVIRONMENT in dpkg-buildflags(1)
|
||||
# package maintainers to append CFLAGS
|
||||
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
|
||||
# package maintainers to append LDFLAGS
|
||||
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
||||
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
|
||||
# dh_make generated override targets
|
||||
# This is example for Cmake (See https://bugs.debian.org/641051 )
|
||||
#override_dh_auto_configure:
|
||||
# dh_auto_configure -- # -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)
|
||||
|
1
debian/source/format
vendored
1
debian/source/format
vendored
@ -1 +0,0 @@
|
||||
3.0 (quilt)
|
@ -1,11 +0,0 @@
|
||||
ARG FROMTAG=latest
|
||||
FROM quay.io/nushell/nu-base:${FROMTAG} as base
|
||||
FROM ubuntu:18.04
|
||||
COPY --from=base /usr/local/bin/nu /usr/local/bin/nu
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y libssl-dev pkg-config \
|
||||
&& apt-get clean \
|
||||
&& rm -fr /var/lib/apt/lists/*
|
||||
ENTRYPOINT ["nu"]
|
||||
CMD ["-l", "info"]
|
@ -1,26 +0,0 @@
|
||||
FROM ubuntu:18.04
|
||||
|
||||
# docker build -f docker/Dockerfile.nu-base -t nushell/nu-base .
|
||||
# docker run -it nushell/nu-base
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
RUN apt-get update && apt-get install -y libssl-dev \
|
||||
libxcb-composite0-dev \
|
||||
pkg-config \
|
||||
libx11-dev \
|
||||
curl
|
||||
|
||||
ARG RELEASE=false
|
||||
WORKDIR /code
|
||||
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --no-modify-path --default-toolchain "stable"
|
||||
ENV PATH=/root/.cargo/bin:$PATH
|
||||
RUN rustup update
|
||||
COPY . /code
|
||||
RUN echo "##vso[task.prependpath]/root/.cargo/bin" && \
|
||||
rustc -Vv && \
|
||||
if $RELEASE; then cargo build --release; \
|
||||
cp target/release/nu /usr/local/bin; \
|
||||
else cargo build; \
|
||||
cp target/debug/nu /usr/local/bin; fi;
|
||||
ENTRYPOINT ["nu"]
|
||||
CMD ["-l", "info"]
|
@ -1,7 +0,0 @@
|
||||
ARG base
|
||||
FROM ${base}
|
||||
|
||||
ARG artifact
|
||||
COPY ${artifact} /bin/
|
||||
|
||||
ENTRYPOINT ["/bin/nu"]
|
@ -1,15 +0,0 @@
|
||||
ARG base
|
||||
FROM debian:stable-slim AS patch
|
||||
FROM ${base}
|
||||
|
||||
ARG artifact
|
||||
COPY ${artifact} /bin/
|
||||
|
||||
COPY --from=patch \
|
||||
/lib/x86_64-linux-gnu/libz.so.1 \
|
||||
/lib/x86_64-linux-gnu/libdl.so.2 \
|
||||
/lib/x86_64-linux-gnu/librt.so.1 \
|
||||
/lib/x86_64-linux-gnu/libgcc_s.so.1 \
|
||||
/lib/x86_64-linux-gnu/
|
||||
|
||||
ENTRYPOINT ["/bin/nu"]
|
@ -1,12 +0,0 @@
|
||||
ARG base
|
||||
FROM debian:stable-slim AS patch
|
||||
FROM ${base}
|
||||
|
||||
ARG artifact
|
||||
COPY ${artifact} /bin/
|
||||
|
||||
COPY --from=patch \
|
||||
/lib/x86_64-linux-gnu/libz.so.1 \
|
||||
/lib/x86_64-linux-gnu/
|
||||
|
||||
ENTRYPOINT ["/bin/nu"]
|
@ -1,11 +0,0 @@
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
nushell:
|
||||
image: ${DOCKER_REGISTRY}/nu:${DOCKER_TAG}
|
||||
build:
|
||||
context: ..
|
||||
dockerfile: docker/Package${PATCH}.Dockerfile
|
||||
args:
|
||||
base: ${BASE_IMAGE}
|
||||
artifact: ${NU_BINS}
|
@ -1,17 +0,0 @@
|
||||
# docker build -f docker/packaging/Dockerfile.ubuntu-bionic .
|
||||
|
||||
ARG FROMTAG=latest
|
||||
FROM quay.io/nushell/nu-base:${FROMTAG}
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
devscripts \
|
||||
debhelper
|
||||
|
||||
COPY debian /code/debian
|
||||
|
||||
RUN rustc -Vv && cargo build --release && \
|
||||
cp README.md debian/README.Debian && \
|
||||
debuild -b -us -uc -i && \
|
||||
dpkg -i ../nu_0.2.0-1_amd64.deb && \
|
||||
chsh -s /usr/bin/nu && \
|
||||
echo 'ls | get name ' | /usr/bin/nu
|
@ -1,55 +0,0 @@
|
||||
# Packaging
|
||||
|
||||
This directory contains docker images used for creating packages for different distribution.
|
||||
|
||||
## How to use this docker files
|
||||
|
||||
Start with:
|
||||
|
||||
```bash
|
||||
docker build -f docker/packaging/Dockerfile.ubuntu-bionic -t nushell/package:ubuntu-bionic .
|
||||
```
|
||||
|
||||
after building the image please run container:
|
||||
|
||||
```bash
|
||||
docker run -td --rm --name nushell_package_ubuntu_bionic nushell/package:ubuntu-bionic
|
||||
```
|
||||
|
||||
and copy deb package from inside:
|
||||
|
||||
```bash
|
||||
docker cp nushell_package_ubuntu_bionic:/nu_0.2.0-1_amd64.deb .
|
||||
```
|
||||
|
||||
or shell inside, and test install:
|
||||
|
||||
```bash
|
||||
docker exec -it nushell_package_ubuntu_bionic bash
|
||||
dpkg -i /nu_0.2.0-1_amd64.deb
|
||||
|
||||
(Reading database ... 25656 files and directories currently installed.)
|
||||
Preparing to unpack /nu_0.2.0-1_amd64.deb ...
|
||||
Unpacking nu (0.2.0-1) over (0.2.0-1) ...
|
||||
Setting up nu (0.2.0-1) ...
|
||||
```
|
||||
|
||||
When you are finished, exit and stop the container. It will be removed since we
|
||||
used `--rm`.
|
||||
|
||||
```bash
|
||||
docker stop nushell_package_ubuntu_bionic
|
||||
```
|
||||
|
||||
## What should be done
|
||||
|
||||
* We should run sbuild command to create chroot and then install dpkg.
|
||||
For two reasons. First: we want to use the same tools as Ubuntu package builders
|
||||
to handle the cornercases. Second: we want to test dpkg requirements.
|
||||
<https://github.com/nushell/nushell/issues/681>
|
||||
|
||||
* File debian/changelog file should be generated based on git history.
|
||||
<https://github.com/nushell/nushell/issues/682>
|
||||
|
||||
* Building package and nu version should be parametrized.
|
||||
<https://github.com/nushell/nushell/issues/683>
|
@ -86,7 +86,7 @@ version = "0.4.6"
|
||||
[dependencies.cursive]
|
||||
default-features = false
|
||||
features = ["pancurses-backend"]
|
||||
version = "0.42.0"
|
||||
version = "0.44.0"
|
||||
|
||||
[dependencies.futures-preview]
|
||||
features = ["compat", "io-compat"]
|
||||
|
@ -14,7 +14,11 @@ pivot_mode = "auto" # auto, always, never
|
||||
ctrlc_exit = false
|
||||
complete_from_path = true
|
||||
rm_always_trash = true
|
||||
prompt = "build-string (ansi gb) (pwd) (ansi reset) '(' (ansi cb) (do -i { git rev-parse --abbrev-ref HEAD } | str trim ) (ansi reset) ')' (char newline) (ansi yb) (date format '%m/%d/%Y %I:%M:%S%.3f %p') (ansi reset) '> ' "
|
||||
|
||||
[env]
|
||||
# nu now reads PROMPT_COMMAND env var instead of "prompt" config parameter
|
||||
# and if fails to parse it, it silently ignores it and uses default prompt
|
||||
PROMPT_COMMAND = "build-string (ansi gb) (pwd) (ansi reset) '(' (ansi cb) (do -i { git rev-parse --abbrev-ref HEAD } | str trim ) (ansi reset) ')' (char newline) (ansi yb) (date format '%m/%d/%Y %I:%M:%S%.3f %p') (ansi reset) '> ' "
|
||||
|
||||
# for each of the options in the color_config section, you are able to set
|
||||
# the color alone or with one of the following attributes.
|
||||
|
6
samples/wasm/package-lock.json
generated
6
samples/wasm/package-lock.json
generated
@ -45,9 +45,9 @@
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
|
||||
},
|
||||
"follow-redirects": {
|
||||
"version": "1.14.4",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.4.tgz",
|
||||
"integrity": "sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g=="
|
||||
"version": "1.14.7",
|
||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz",
|
||||
"integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ=="
|
||||
},
|
||||
"fs-minipass": {
|
||||
"version": "2.1.0",
|
||||
|
@ -12,9 +12,9 @@ pub mod support {
|
||||
pub fn in_path(dirs: &Dirs, block: impl FnOnce() -> Outcome) -> Outcome {
|
||||
let for_env_manifest = dirs.test().to_string_lossy();
|
||||
|
||||
nu!(cwd: dirs.root(), format!("autoenv trust \"{}\"", for_env_manifest.to_string()));
|
||||
nu!(cwd: dirs.root(), format!("autoenv trust \"{}\"", for_env_manifest));
|
||||
let out = block();
|
||||
nu!(cwd: dirs.root(), format!("autoenv untrust \"{}\"", for_env_manifest.to_string()));
|
||||
nu!(cwd: dirs.root(), format!("autoenv untrust \"{}\"", for_env_manifest));
|
||||
|
||||
out
|
||||
}
|
||||
|
Reference in New Issue
Block a user