ice_iix
db02f9e790
Update try!() to new ? syntax for Rust 2018 edition
...
Not automatically updated, see https://users.rust-lang.org/t/why-does-cargo-fix-replace-try-with-r-try-instead-of/21972/3
There are other tools to replace it, btu this is what I used:
find src -name '*.rs' -exec perl -MRegexp::Common -0777 -pe'$bp=$RE{balanced}{-parens=>"()"}; s/try\!($bp)/substr($1, 1, length($1) - 2) . "?"/ges' -i {} \;
2018-11-04 11:48:51 -08:00
ice_iix
fc18e9836f
Remove anonymous trait parameters, name _ for Rust 2018
...
https://rust-lang-nursery.github.io/edition-guide/rust-2018/trait-system/no-anon-params.html
2018-11-04 11:48:34 -08:00
ice_iix
f6a56f5b86
Use non-colliding variable name dynamic_texture instead of dyn (now a keyword)
2018-11-04 11:31:28 -08:00
iceiix
1589a29685
Remove use of OpenSSL for RSA PKCS1 encryption ( #12 ). Closes #2
...
* Add handwritten RSA PKCS1 encryption using num-bigint and simple_asn1
* Add more logging to compare OpenSSL with/without side-by-side
* Log message and ciphertext in hex
* Print N and e as hexadecimal integers
* Fix bad encryption caused by zeros in PKCS1 padding
PS field in https://tools.ietf.org/html/rfc8017#section-7.2.1
Must be nonzero
* Use rand fill instead of rand_bytes
* Remove OpenSSL!
* Update CI scripts and docs to not install OpenSSL
* Remove copying OpenSSL DLLs (libeay and ssleay) in AppVeyor script
* Change rsa_public_encrypt_pkcs1 to return a Result<Vec<u8>, String>
* Add error checking, returning Err<String> on failure; RFC comments
* Add the required message representative range checking
* Use expect() instead of unwrap() on from_der
* Map the ASN.1 error to a String to return it from rsa_public_encrypt_pkcs1() instead of panicking
* Move RSA to a new crate, rsa_public_encrypt_pkcs1
https://github.com/iceiix/rsa_public_encrypt_pkcs1
* Update to rsa_public_encrypt_pkcs1 with simple_asn 0.1.0
https://github.com/iceiix/rsa_public_encrypt_pkcs1/issues/1
* Update to published version of rsa_public_encrypt_pkcs1, 0.1.0
* Remove unnecessarily added blank line
* Remove libssl-dev from .travis.yml
2018-11-04 09:40:51 -08:00
iceiix
90aaeaf16a
Support beta Rust release. Closes #8 ( #11 )
...
* Remove seemingly unneeded const on MetadataKey<T> new
* Change biome temperature/moisture to integer, x100 to remove floating-point so can use within stable 'const fn'
* Remove unstable const_fn feature, now using stable const fn: see https://www.reddit.com/r/rust/comments/9msqfn/const_fn_soon_on_stable_rust/
* Test on Rust beta (awaiting 1.31 release for stable)
* Update readme for beta Rust support
2018-11-02 16:57:23 -07:00
iceiix
6d88ce23ec
Switch to RustCrypto for Cfb8 symmetric crypto, instead of OpenSSL ( #10 ) ( #2 )
...
* Encrypt with both RustCrypto cfb8 and OpenSSL
* Switch to RustCrypto for decrypting
* Show encryption for both RustCrypto and OpenSSL, for comparison...
* Correct off-by-one error in encryption, cfb8 doesn't need extra byte
* Remove OpenSSL for symmetric crypto
* Update Cargo.lock
2018-11-01 20:46:21 -07:00
ice_iix
432ce59238
Update Travis-CI to my branch
2018-10-31 19:27:30 -07:00
iceiix
24f71cf959
Add Appveyor for Windows continuous integration ( #9 )
...
* Add appveyor based on https://users.rust-lang.org/t/rust-appveyor-windows-ci-scripts/4437/2
* Add build script in a separate file, based on https://github.com/briansmith/ring/blob/master/mk/appveyor.bat
* Add pacman installation packages from https://github.com/Thinkofname/steven/wiki/Compiling-and-or-running#compiling-on-windows
* Run msys2_shell from https://github.com/appveyor/ci/issues/352
* Set msys64 and mingw PATH
f000540506
* Add --noconfirm option to pacman
https://unix.stackexchange.com/questions/52277/pacman-option-to-assume-yes-to-every-question#52278
* Try installing OpenSSL using vcpkg
https://www.appveyor.com/docs/lang/cpp/#vc-packaging-tool
* Attempt to install OpenSSL using rust-openssl's appveyor.yml
https://github.com/sfackler/rust-openssl/blob/master/appveyor.yml
* Revert "Attempt to install OpenSSL using rust-openssl's appveyor.yml"
This reverts commit 50106089798615f5a6576651fe9ca88af9a43a0d.
* Set OPENSSL_DIR to C:\OpenSSL
* List contents of C:\OpenSSL
* List C:\OpenSSL after installation
* No such directory
* Use appveyor script from thinkofname
https://github.com/Thinkofname/steven/issues/72#issuecomment-433889692
* Enable echo in appveyor.bat
* Add exported build script, merge working with existing
* Remove environment matrix, nightly-2018-10-24 vs nightly
* Remove debug/release because it builds both in one go
* Echo the platform variable before forcing it
* Set platforms to x86 (not Win32) and x64
* Build x64 first
* Only install the proper platform for OpenSSL, not both
2018-10-31 19:22:16 -07:00
ice_iix
c36d0706ac
Remove obsolete comment
2018-10-29 17:10:08 -07:00
ice_iix
56a1cb2b76
Fix logging with set_boxed_logger, add std feature to dep
...
https://github.com/rust-lang-nursery/log/issues/303
2018-10-28 19:45:57 -07:00
ice_iix
c477fa0089
Travis-CI: cache the cargo dependencies, so they are only recompiled when updated
2018-10-28 10:06:59 -07:00
ice_iix
541d8c22b8
Travis-CI: allow nightly to fail without error since it is often broken
...
https://docs.travis-ci.com/user/languages/rust/#stq=&stp=0
2018-10-28 10:04:56 -07:00
ice_iix
3f67d8477c
Try adding mesa dev packages for Linux Travis-CI script
...
https://travis-ci.org/iceiix/steven/jobs/447445632
The following packages have unmet dependencies:
libsdl2-dev : Depends: libegl1-mesa-dev
Depends: libgles2-mesa-dev
2018-10-28 09:46:22 -07:00
ice_iix
bf0159209c
Update Travis-CI to test against known good nightly
2018-10-28 09:40:21 -07:00
ice_iix
51a5e3ed5c
Update to rust-openssl 0.10.15 (from 0.7.8)
...
Major API change, the last of the outdated dependencies
Closes https://github.com/iceiix/steven/issues/4
Note: would still like to replace the last usages of the OpenSSL crate
https://github.com/iceiix/steven/issues/2 but it is needed for CFB8
until a replacement is available (maybe https://github.com/RustCrypto/stream-ciphers/issues/4 )
2018-10-27 19:56:34 -07:00
ice_iix
6a41539896
Update to khronos_api 2.2.0
...
https://github.com/iceiix/steven/issues/4
2018-10-27 18:15:51 -07:00
ice_iix
80c740c1c5
Update to cgmath 0.16.1, collision 0.18.0
...
https://github.com/iceiix/steven/issues/4
2018-10-27 18:11:26 -07:00
ice_iix
5ce9bf3fa3
Update to lazy_static 1.1.0 in blocks/Cargo.toml
...
https://github.com/iceiix/steven/issues/4
2018-10-27 17:21:57 -07:00
iceiix
b17f296ab4
Replace hyper with reqwest ( #7 )
...
An old version of hyper was used before (0.8.0), in the process of updating to hyper 0.12.11, found this higher-level replacement/wrapper, reqwest 0.9.4 which is simpler to use than the latest hyper and serves the purpose of a simple HTTP client well
* Begin updating to hyper 0.12.11
https://github.com/iceiix/steven/issues/4#issuecomment-425759778
* Use type variables for hyper::Client
* Fix setting header syntax, Content-Type: application/json, 17->13
* Parse strings into URLs with url.parse::<hyper::Uri>().unwrap()
b20971cb4e/examples/client.rs (L25)
* Use hyper::Request::post() then client.request() since client.post() removed
* wait() on the ResponseFuture to get the Result
* try! to unwrap the Result
* status() is now a method
* Concatenate body chunks unwrap into bytes, then parse JSON from byte slice, instead of from_reader which didn't compile
* Replace send() with wait() on ResponseFuture
* Parse HeaderValue to u64
* Slices implement std::io::Read trait
* Read into_bytes() instead of read_to_end()
* Disable boxed logger for now to workaround 'expected function, found macro'
* Remove unnecessary mutability, warnings
* Hack to parse twice to avoid double move
* Use hyper-rustls pure Rust implementation for TLS for HTTPS in hyper
* Start converting to reqwest: add Protocol::Error and reqwest::Error conversion
* Use reqwest, replacing hyper, in protocol
* Convert resources to use reqwest instead of hyper
* Convert skin download to reqwest, instead of hyper
* Remove hyper
* Revert unnecessary variable name change req/body to reduce diff
* Revert unnecessary whitespace change to reduce diff, align indentation on .
* Fix authenticating to server, wrong method and join URL
* Update Cargo.lock
2018-10-27 17:03:34 -07:00
iceiix
de6cd2044e
Update to serde_json 1.0 ( #6 )
...
* Replace find() with get()
* Update for renamed as_string->as_str and as_boolean->as_bool
https://github.com/serde-rs/json/releases/tag/v0.8.0
Value::as_string() has been renamed to as_str() and Value::as_boolean() has been renamed to as_bool() to improve consistency
https://github.com/serde-rs/json/issues/126
* No serde_json::Value::I64/U64/F64 anymore, only Number
* Update from lookup() to pointer(), using JSON pointer syntax
https://github.com/iceiix/steven/pull/6#issuecomment-432472123
* Remove unused and removed ObjectBuilder import
* Use into_iter().collect() to convert BTreeMap to serde_json::Map
* Change parse_rules to accept serde_json::Map instead of BTreeMap
* Remove unused serde_json macro_use
* Update Cargo.lock
2018-10-23 18:47:21 -07:00
ice_iix
edbed5e319
Check glGetError() in rendering loop
...
For investigating https://github.com/iceiix/steven/issues/5
No errors seen
2018-10-07 13:53:50 -07:00
ice_iix
ed5d48f136
Clamp NUM_SAMPLES glTexImage2DMultisample at GL_MAX_SAMPLES, since not all systems support >1 see https://github.com/iceiix/steven/issues/5#issuecomment-427669426
2018-10-07 10:08:24 -07:00
iceiix
cceb1768b1
Panic on incomplete framebuffer so can see where it was called with RUST_BACKTRACE=1
2018-10-07 09:43:00 -07:00
ice_iix
7731117e4f
Check framebuffer statuses before rendering and unbinding
...
No errors, so not the cause of https://github.com/iceiix/steven/issues/5
2018-10-07 08:00:07 -07:00
ice_iix
84c682b177
Check framebuffer status later not immediately after binding
...
No errors https://github.com/iceiix/steven/issues/5
2018-10-06 13:58:16 -07:00
ice_iix
3a32710b17
Check framebuffer status after each bind
...
For https://github.com/iceiix/steven/issues/5
GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
2018-10-06 13:28:19 -07:00
ice_iix
7503b90667
Use the RustCrypto sha-1 crate instead of sha1
...
For https://github.com/iceiix/steven/issues/2#issuecomment-425769562
2018-10-03 18:28:05 -07:00
ice_iix
9997174fae
Update to serde 1.0.79 for https://github.com/iceiix/steven/issues/4
2018-09-30 19:42:13 -07:00
ice_iix
d2b59fbd10
Update to rand 0.5.5 for https://github.com/iceiix/steven/issues/4
...
Useful guide: https://github.com/rust-random/rand/blob/master/UPDATING.md
2018-09-30 19:05:20 -07:00
ice_iix
c688836a16
Use hex module for hex decoding, removing deprecated rustc-serialize for https://github.com/iceiix/steven/issues/4
2018-09-30 18:14:36 -07:00
ice_iix
e988c64376
Use base64 crate for base64 instead of deprecated rustc-serialize, for https://github.com/iceiix/steven/issues/4
2018-09-30 17:58:40 -07:00
ice_iix
fe99910550
Update to image 0.20.0
2018-09-30 17:21:05 -07:00
ice_iix
9f49d10eb3
Update to lazy_static 1.1.0
...
https://github.com/iceiix/steven/issues/4
2018-09-30 17:11:22 -07:00
ice_iix
43f6565fa5
Update to log 0.4.5
...
https://github.com/iceiix/steven/issues/4
2018-09-30 16:36:00 -07:00
ice_iix
a25eaf1476
Update to zip 0.4.2
...
https://github.com/iceiix/steven/issues/4
2018-09-30 16:20:33 -07:00
ice_iix
fd2c51eac4
Update to flate2 1.0.2
...
https://github.com/iceiix/steven/issues/4
2018-09-30 16:19:24 -07:00
ice_iix
51a88ab95b
Update to byteorder 1.2.6
...
https://github.com/iceiix/steven/issues/4
2018-09-30 13:53:22 -07:00
ice_iix
562ab9dbc4
Remove unused username field in Server. Closes https://github.com/iceiix/steven/issues/1
2018-09-30 00:25:07 -07:00
ice_iix
8ca41dfcda
Update gl-generator, fixes hundreds of non_upper_case_globals warnings
...
Resolves most of https://github.com/iceiix/steven/issues/1
2018-09-30 00:21:33 -07:00
ice_iix
be46377842
Remove unused macros and imports to appease compiler warnings
...
https://github.com/iceiix/steven/issues/1
2018-09-29 23:52:47 -07:00
ice_iix
d6fa1d0a0b
Fix warning: unnecessary parentheses around function argument, new in nightly-2018-02-15
2018-09-29 23:28:38 -07:00
ice_iix
cb1d282381
Update to rustc-serialize 0.3.24, for nightly-2018-01-04 compatibility
...
Allows upgrading from nightly-2017-10-12 to nightly-2018-01-04 which is
aligned with Rust version 1.23.0 https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1230-2018-01-04
See https://github.com/iceiix/steven/issues/3#issuecomment-425688203
2018-09-29 23:20:43 -07:00
ice_iix
6eaf1688f4
Remove time crate in favor of std::time, removing last usage in main
...
Combined with these changes, which also convert to std::time:
47aeb83da2
logo text
2f861f815a
light updates
9677f8ae9c
server ping
2018-09-29 23:11:47 -07:00
ice_iix
9677f8ae9c
Use std::time for server ping, getting closer to eliminating use of 'time' crate, https://github.com/iceiix/steven/issues/3
2018-09-29 22:57:55 -07:00
ice_iix
2f861f815a
Use std::time for 5ms light updates instead of time crate
...
More progress on https://github.com/iceiix/steven/issues/3
2018-09-29 22:36:55 -07:00
ice_iix
163556fbf1
Use sha1 module for hashing instead of openssl, part of https://github.com/iceiix/steven/issues/2
2018-09-29 22:23:48 -07:00
ice_iix
47aeb83da2
Use std::time instead of time crate for logo text, progress on https://github.com/iceiix/steven/issues/3
2018-09-29 20:01:13 -07:00
ice_iix
fbd71ea8ce
Fix warning: variable does not need to be mutable, in nightly-2017-08-31
...
https://github.com/iceiix/steven/issues/3
2018-09-29 18:42:13 -07:00
ice_iix
d704edaf81
Comment out dead code to avoid warning, for https://github.com/iceiix/steven/issues/1
2018-09-29 17:53:01 -07:00
ice_iix
84cbc3d00e
Fix illegal use of floating point in pattern, https://github.com/iceiix/steven/issues/1 https://github.com/rust-lang/rust/issues/41620
2018-09-29 17:50:02 -07:00
ice_iix
fa8f7bb9b9
Increase sample count to 2 to fix/workaround rendering issue #74 https://github.com/Thinkofname/steven/issues/74
2018-09-29 17:31:16 -07:00
iceiix
b399b74adb
Update to rust-sdl2 0.31.0
2018-09-29 13:56:52 -07:00
iceiix
743aaac4cd
Enable SDL hint to workaround SDL_SetRelativeMouseMode broken on Linux
...
Fixes https://github.com/Thinkofname/steven/issues/73
See https://bugzilla.libsdl.org/show_bug.cgi?id=2150
2018-09-29 13:39:20 -07:00
Matthew Collins
2e99712cc8
Update rust-sdl to fix a bug ( Fixes #69 )
2017-05-14 10:04:34 +01:00
satoshinm
2f950a749c
Fix use of deprecated Rc:would_unwrap
2017-05-14 09:58:34 +01:00
Kevin Sillerud
a9cb7654e4
Use a old mirror for collision-rs ( Fixes #66 )
2017-03-16 10:43:42 +01:00
Techcable
1e8c3582ed
Update to Minecraft 1.11 ( Fixes #63 )
2016-12-09 14:32:02 +00:00
llogiq
5e0c041a71
Fixed another batch of clippy warnings
...
Those are mostly readability-related. Also did a cargo update.
2016-09-15 15:15:52 +01:00
Techcable
555b646696
Update to minecraft 1.10.2
2016-07-10 12:23:59 +01:00
Leo Schwarz
e96ec620fb
Use absolute paths when including resources. ( Fixes #53 )
2016-07-02 14:15:10 +01:00
Kyle Wood
8d95965d40
Enable paste in textboxes
2016-04-26 00:50:16 +01:00
Thinkofname
6e33c3cc36
Fix the text boxes in the server edit screen not being focusable
2016-04-26 00:31:47 +01:00
Thinkofname
2e3d9a0a4b
Fix skins reverting to default on reload
2016-04-25 13:45:13 +01:00
Thinkofname
61829c055a
Fix a crash caused by trying to load a skin whilst missing vanilla resources
2016-04-25 13:31:24 +01:00
Thinkofname
4436736dce
Download vanilla assets (sounds/locales) and load as a pack
2016-04-25 13:21:30 +01:00
Thinkofname
3b7d2cb8ee
Fix default textures being replaced with the missing texture on reload
2016-04-25 12:05:57 +01:00
Thinkofname
f23c16bff2
Update client url and add an in-game progress bar for the download ( Fixes #22 )
2016-04-24 23:22:10 +01:00
Thinkofname
f8be801eac
Improve biome color handling
2016-04-24 20:09:24 +01:00
Thinkofname
d5acb0588d
Update README
2016-04-24 18:48:22 +01:00
Thinkofname
c03db28b58
Try setting up travis
2016-04-24 16:50:21 +01:00
Thinkofname
88d43c615a
Move the disconnected message to the foreground
2016-04-24 14:05:21 +01:00
Thinkofname
a7caa50b6f
Rewrite the UI system ( Closes #12 )
2016-04-24 12:29:25 +01:00
Thinkofname
b0c54a3561
Don't leak the block targeting model when disconnecting from a server
2016-04-22 00:01:38 +01:00
Thinkofname
5f725a843b
Teleport entities when they are far from their target position
2016-04-21 23:24:01 +01:00
Thinkofname
2cc00f086b
Implement collisions for stairs
2016-04-21 22:39:34 +01:00
Thinkofname
287867dbcd
Add a collidable flag to Material
2016-04-21 21:47:39 +01:00
Thinkofname
3038596b27
Simplify chunk loading
2016-04-21 21:20:28 +01:00
Thinkofname
1c898b594e
Fix door collisions
2016-04-21 20:57:50 +01:00
Thinkofname
9c816c7ea1
Implement interaction with blocks
2016-04-21 20:25:58 +01:00
Thinkofname
98422678a3
Add block targeting
2016-04-21 19:53:47 +01:00
Thinkofname
d719e117ad
Work around a block mapping bug
2016-04-21 13:38:49 +01:00
Thinkofname
df37ec283d
Handle errors when fetching skins better
2016-04-21 13:09:20 +01:00
Thinkofname
feb7ea1630
Fix a crash caused by duplicate block mappings
2016-04-21 12:55:42 +01:00
Thinkofname
f8f60b98be
Update the screenshot in the README
2016-04-21 12:01:20 +01:00
Thinkofname
a28152eaa2
Link to the master branch for downloads
...
The previous link would show PRs as well.
2016-04-21 11:52:04 +01:00
Thinkofname
50ded118f3
Remove a leftover comment
2016-04-21 11:43:42 +01:00
Thinkofname
edf6f34a0b
Separate the console and console vars. Removes the need to lock on the console to read vars
2016-04-21 11:40:50 +01:00
Thinkofname
380a844272
Implement a background for the option menus
2016-04-21 11:00:05 +01:00
Thinkofname
ebc11224e7
Fix the player's body glitching when moving
2016-04-20 22:16:40 +01:00
Thinkofname
bb5032fd30
Remove the steven_id system
2016-04-20 21:52:04 +01:00
Thinkofname
23e779c0d7
Make BlockSnapshots use BlockStorage
2016-04-20 21:52:04 +01:00
Thinkofname
94bfc1493b
Make the storage system used for chunk sections reusable
2016-04-20 21:52:04 +01:00
Scetch
7588b20bd0
Block fixes and some cleanup.
2016-04-20 14:54:32 -04:00
Thinkofname
b25b565b8a
Default vsync to disabled
2016-04-16 21:57:38 +01:00
Thinkofname
380f549454
Fix a large number of warnings
2016-04-16 21:44:05 +01:00
Thinkofname
cc481d55bb
Fix multiple skin rendering issues ( Fixes #43 )
2016-04-16 21:44:05 +01:00
Jamie Mansfield
011abebfba
Fix steven-go link in README
2016-04-14 22:13:32 +01:00
Scetch
dab2c3fc89
Default block material to solid.
2016-04-13 10:50:08 -04:00
TheUnnamedDude
f349d516f2
Implement frame limit and configurable vsync ( Fixes #29 )
2016-04-10 22:05:05 +01:00
Thinkofname
75fb828a89
Simplify model rendering
2016-04-09 21:49:39 +01:00