Assorted maintenance
This commit is contained in:
parent
ae049e4466
commit
06e0dfafff
6
.github/workflows/publish.yml
vendored
6
.github/workflows/publish.yml
vendored
@ -1,4 +1,4 @@
|
|||||||
name: Publish binaries
|
name: Publish builds
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@ -7,7 +7,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
publish:
|
publish:
|
||||||
name: Publish binaries for Windows
|
name: Publish build for Windows
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@ -21,7 +21,7 @@ jobs:
|
|||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
cargo build --release --locked
|
cargo build --release --locked
|
||||||
tar.exe -c -a -f mapeditr-windows.zip target/release/mapeditr.exe LICENSE.txt README.md Manual.md
|
tar.exe -c -a -f mapeditr-windows.zip LICENSE.txt README.md Manual.md -C target/release mapeditr.exe
|
||||||
|
|
||||||
- name: Upload artifacts to release
|
- name: Upload artifacts to release
|
||||||
uses: softprops/action-gh-release@v1
|
uses: softprops/action-gh-release@v1
|
||||||
|
23
.gitignore
vendored
23
.gitignore
vendored
@ -1,6 +1,21 @@
|
|||||||
/target
|
# Generated by Cargo
|
||||||
|
# will have compiled files and executables
|
||||||
|
debug/
|
||||||
|
target/
|
||||||
|
|
||||||
|
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
|
||||||
|
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
|
||||||
|
# Cargo.lock
|
||||||
|
|
||||||
|
# These are backup files generated by rustfmt
|
||||||
**/*.rs.bk
|
**/*.rs.bk
|
||||||
|
|
||||||
# VSCode stuff
|
# MSVC Windows builds of rustc generate these, which store debugging information
|
||||||
/.vscode
|
*.pdb
|
||||||
*.code_workspace
|
|
||||||
|
# VSCode files
|
||||||
|
.vscode/*
|
||||||
|
*.code-workspace
|
||||||
|
|
||||||
|
# Local History for Visual Studio Code
|
||||||
|
.history/
|
||||||
|
70
Cargo.lock
generated
70
Cargo.lock
generated
@ -2,9 +2,9 @@
|
|||||||
# It is not intended for manual editing.
|
# It is not intended for manual editing.
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "adler"
|
name = "adler"
|
||||||
version = "0.2.3"
|
version = "1.0.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e"
|
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ansi_term"
|
name = "ansi_term"
|
||||||
@ -17,9 +17,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "anyhow"
|
name = "anyhow"
|
||||||
version = "1.0.37"
|
version = "1.0.40"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "ee67c11feeac938fae061b232e38e0b6d94f97a9df10e6271319325ac4c56a86"
|
checksum = "28b2cd92db5cbd74e8e5028f7e27dd7aa3090e89e4f2a197cc7c8dfb69c7063b"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "atty"
|
name = "atty"
|
||||||
@ -46,15 +46,15 @@ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "byteorder"
|
name = "byteorder"
|
||||||
version = "1.3.4"
|
version = "1.4.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
|
checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cc"
|
name = "cc"
|
||||||
version = "1.0.66"
|
version = "1.0.68"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4c0496836a84f8d0495758516b8621a622beb77c0fed418570e50764093ced48"
|
checksum = "4a72c244c1ff497a746a7e1fb3d14bd08420ecda70c8f25c7112f2781652d787"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cfg-if"
|
name = "cfg-if"
|
||||||
@ -88,9 +88,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "flate2"
|
name = "flate2"
|
||||||
version = "1.0.19"
|
version = "1.0.20"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7411863d55df97a419aa64cb4d2f167103ea9d767e2c54a1868b7ac3f6b47129"
|
checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"crc32fast",
|
"crc32fast",
|
||||||
@ -100,22 +100,22 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hermit-abi"
|
name = "hermit-abi"
|
||||||
version = "0.1.17"
|
version = "0.1.18"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "5aca5565f760fb5b220e499d72710ed156fdb74e631659e99377d9ebfbd13ae8"
|
checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libc"
|
name = "libc"
|
||||||
version = "0.2.81"
|
version = "0.2.94"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1482821306169ec4d07f6aca392a4681f66c75c9918aa49641a2595db64053cb"
|
checksum = "18794a8ad5b29321f790b55d93dfba91e125cb1a9edbd4f8e3150acc771c1a5e"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "mapeditr"
|
name = "mapeditr"
|
||||||
version = "0.1.0"
|
version = "1.0.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"byteorder",
|
"byteorder",
|
||||||
@ -134,9 +134,9 @@ checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "miniz_oxide"
|
name = "miniz_oxide"
|
||||||
version = "0.4.3"
|
version = "0.4.4"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d"
|
checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"adler",
|
"adler",
|
||||||
"autocfg",
|
"autocfg",
|
||||||
@ -150,27 +150,27 @@ checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "proc-macro2"
|
name = "proc-macro2"
|
||||||
version = "1.0.24"
|
version = "1.0.27"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71"
|
checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"unicode-xid",
|
"unicode-xid",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quote"
|
name = "quote"
|
||||||
version = "1.0.8"
|
version = "1.0.9"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "991431c3519a3f36861882da93630ce66b52918dcf1b8e2fd66b397fc96f28df"
|
checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "sqlite"
|
name = "sqlite"
|
||||||
version = "0.25.3"
|
version = "0.26.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "35f759dc2e373e1edd0a27da87aa9136416360c5077a23643fcd6fcdc9cb9e31"
|
checksum = "3fb1a534c07ec276fbbe0e55a1c00814d8563da3a2f4d9d9d4c802bd1278db6a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"sqlite3-sys",
|
"sqlite3-sys",
|
||||||
@ -178,9 +178,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "sqlite3-src"
|
name = "sqlite3-src"
|
||||||
version = "0.2.12"
|
version = "0.3.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b8bb25e66d026488228a97e0ad21e3d15ec5998dcd9ad73c97cc277c56a6b314"
|
checksum = "a260b07ce75a0644c6f5891f34f46db9869e731838e95293469ab17999abcfa3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cc",
|
"cc",
|
||||||
"pkg-config",
|
"pkg-config",
|
||||||
@ -188,9 +188,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "sqlite3-sys"
|
name = "sqlite3-sys"
|
||||||
version = "0.12.0"
|
version = "0.13.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "71fec807a1534bd13eeaaec396175d67c79bdc68df55e18a452726ec62a8fb08"
|
checksum = "04d2f028faeb14352df7934b4771806f60d61ce61be1928ec92396d7492e2e54"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"sqlite3-src",
|
"sqlite3-src",
|
||||||
@ -204,9 +204,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "syn"
|
name = "syn"
|
||||||
version = "1.0.58"
|
version = "1.0.72"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "cc60a3d73ea6594cd712d830cc1f0390fd71542d8c8cd24e70cc54cdfd5e05d5"
|
checksum = "a1e8cdbefb79a9a5a65e0db8b47b723ee907b7c7f8496c76a1770b5c310bab82"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@ -224,18 +224,18 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror"
|
name = "thiserror"
|
||||||
version = "1.0.23"
|
version = "1.0.25"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "76cc616c6abf8c8928e2fdcc0dbfab37175edd8fb49a4641066ad1364fdab146"
|
checksum = "fa6f76457f59514c7eeb4e59d891395fab0b2fd1d40723ae737d64153392e9c6"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"thiserror-impl",
|
"thiserror-impl",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "thiserror-impl"
|
name = "thiserror-impl"
|
||||||
version = "1.0.23"
|
version = "1.0.25"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9be73a2caec27583d0046ef3796c3794f868a5bc813db689eed00c7631275cd1"
|
checksum = "8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@ -250,9 +250,9 @@ checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "unicode-xid"
|
name = "unicode-xid"
|
||||||
version = "0.2.1"
|
version = "0.2.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"
|
checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "vec_map"
|
name = "vec_map"
|
||||||
|
14
Cargo.toml
14
Cargo.toml
@ -1,14 +1,14 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "mapeditr"
|
name = "mapeditr"
|
||||||
version = "0.1.0"
|
version = "1.0.0"
|
||||||
authors = ["random-geek <35757396+random-geek@users.noreply.github.com>"]
|
authors = ["random-geek (github.com/random-geek)"]
|
||||||
edition = "2018"
|
edition = "2018"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
sqlite = "0.25"
|
|
||||||
flate2 = "1"
|
|
||||||
clap = "2"
|
|
||||||
byteorder = "1"
|
|
||||||
memmem = "0.1"
|
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
|
byteorder = "1"
|
||||||
|
clap = "2"
|
||||||
|
flate2 = "1"
|
||||||
|
memmem = "0.1"
|
||||||
|
sqlite = "0.26"
|
||||||
thiserror = "1"
|
thiserror = "1"
|
||||||
|
36
LICENSE.txt
36
LICENSE.txt
@ -1,4 +1,38 @@
|
|||||||
Copyright (c) 2021 random-geek
|
MapEditr copyright notice and MIT license terms
|
||||||
|
-----------------------------------------------
|
||||||
|
|
||||||
|
Copyright (c) 2021 random-geek (github.com/random-geek)
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
END OF MAPEDITR LICENSE TERMS
|
||||||
|
|
||||||
|
The following dependencies are included in builds of MapEditr and are licensed
|
||||||
|
under the terms of the MIT license, reproduced below.
|
||||||
|
|
||||||
|
anyhow
|
||||||
|
byteorder: Copyright (c) 2015 Andrew Gallant
|
||||||
|
clap: Copyright (c) 2015-2016 Kevin B. Knapp
|
||||||
|
flate2: Copyright (c) 2014 Alex Crichton
|
||||||
|
memmem: Copyright (c) 2014 The Rust Project Developers
|
||||||
|
sqlite: Copyright 2015–2021 The sqlite Developers
|
||||||
|
thiserror
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
50
README.md
50
README.md
@ -13,23 +13,40 @@ MapEditr was originally based on [MapEdit][2], except written in Rust rather
|
|||||||
than Python (hence the added "r"). Switching to a compiled language will make
|
than Python (hence the added "r"). Switching to a compiled language will make
|
||||||
MapEditr more robust and easier to maintain in the future.
|
MapEditr more robust and easier to maintain in the future.
|
||||||
|
|
||||||
[1]: https://github.com/Uberi/Minetest-WorldEdit
|
|
||||||
[2]: https://github.com/random-geek/MapEdit
|
|
||||||
|
|
||||||
## Compilation/Installation
|
## Compilation/Installation
|
||||||
|
|
||||||
TODO: Pre-built binaries
|
### Option 1: Pre-built releases
|
||||||
|
|
||||||
To compile from source, you must have Rust installed first, which can be
|
If you are using Windows and don't have Rust installed, you can download a
|
||||||
downloaded from [the Rust website][3]. Then, in the MapEditr directory, simply
|
build of the latest release of MapEditr from the [Releases page][3]. Only
|
||||||
run:
|
64-bit Windows builds are currently available.
|
||||||
|
|
||||||
|
To run the `mapeditr` command from anywhere, the path to the executable file
|
||||||
|
must be included in your system's Path variable. [Here is one article][4]
|
||||||
|
explaining how to edit the Path variable on Windows.
|
||||||
|
|
||||||
|
### Option 2: Install using Cargo
|
||||||
|
|
||||||
|
This method works on any operating system. To use Cargo, you must have Rust
|
||||||
|
installed first, which can be downloaded from [the Rust website][5]. Then,
|
||||||
|
simply run:
|
||||||
|
|
||||||
|
`cargo install --git https://github.com/random-geek/MapEditr.git`
|
||||||
|
|
||||||
|
This will download MapEditr and install it to `$HOME/.cargo/bin`. After
|
||||||
|
installing, you should be able to run MapEditr from anywhere with the
|
||||||
|
`mapeditr` command.
|
||||||
|
|
||||||
|
### Option 3: Build normally
|
||||||
|
|
||||||
|
If you don't wish to install MapEditr, you can build it normally using Cargo.
|
||||||
|
In the MapEditr directory, run:
|
||||||
|
|
||||||
`cargo build --release`
|
`cargo build --release`
|
||||||
|
|
||||||
The `--release` flag is important, as it produces an optimized executable which
|
The `--release` flag is important, as it produces an optimized executable which
|
||||||
runs much faster than the default, unoptimized version.
|
runs much faster than the default, unoptimized version. The compiled executable
|
||||||
|
will be in the `target/release` directory.
|
||||||
[3]: https://www.rust-lang.org
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
@ -53,15 +70,20 @@ project's readme or documentation.
|
|||||||
|
|
||||||
## Acknowledgments
|
## Acknowledgments
|
||||||
|
|
||||||
The [Minetest][4] project has been rather important for the making of
|
The [Minetest][6] project has been rather important for the making of
|
||||||
MapEdit/MapEditr, for obvious reasons.
|
MapEdit/MapEditr, for obvious reasons.
|
||||||
|
|
||||||
Some parts of the original MapEdit code were adapted from AndrejIT's
|
Some parts of the original MapEdit code were adapted from AndrejIT's
|
||||||
[map_unexplore][5] project. All due credit goes to the author(s) of that
|
[map_unexplore][7] project. All due credit goes to the author(s) of that
|
||||||
project.
|
project.
|
||||||
|
|
||||||
Thank you also to ExeterDad and the moderators of the late Hometown server, for
|
Thank you also to ExeterDad and the moderators of the late Hometown server, for
|
||||||
partially inspiring MapEdit/MapEditr.
|
partially inspiring MapEdit/MapEditr.
|
||||||
|
|
||||||
[4]: https://github.com/minetest/minetest
|
[1]: https://github.com/Uberi/Minetest-WorldEdit
|
||||||
[5]: https://github.com/AndrejIT/map_unexplore
|
[2]: https://github.com/random-geek/MapEdit
|
||||||
|
[3]: https://github.com/random-geek/MapEditr/releases
|
||||||
|
[4]: https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/
|
||||||
|
[5]: https://www.rust-lang.org
|
||||||
|
[6]: https://github.com/minetest/minetest
|
||||||
|
[7]: https://github.com/AndrejIT/map_unexplore
|
||||||
|
@ -267,12 +267,10 @@ fn verify_args(args: &InstArgs) -> anyhow::Result<()> {
|
|||||||
let mod_name = &name[..delim];
|
let mod_name = &name[..delim];
|
||||||
let item_name = &name[delim + 1..];
|
let item_name = &name[delim + 1..];
|
||||||
|
|
||||||
mod_name.find(|c: char|
|
mod_name.chars().all(|c: char|
|
||||||
!(c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_'))
|
c.is_ascii_lowercase() || c.is_ascii_digit() || c == '_')
|
||||||
.is_none()
|
&& item_name.chars().all(|c: char|
|
||||||
&& item_name.find(|c: char|
|
c.is_ascii_alphanumeric() || c == '_')
|
||||||
!(c.is_ascii_alphanumeric() || c == '_'))
|
|
||||||
.is_none()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,7 +136,6 @@ impl MapBlock {
|
|||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
use crate::spatial::Vec3;
|
use crate::spatial::Vec3;
|
||||||
// use crate::testing::debug_bytes; // TODO
|
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
|
|
||||||
fn read_test_file(filename: &str) -> anyhow::Result<Vec<u8>> {
|
fn read_test_file(filename: &str) -> anyhow::Result<Vec<u8>> {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user