Jake Ireland
baaaf6db9a
Merge pull request #35 from Smaug123/str-rotate-optimise
...
Rotating functions optimise
2021-05-03 18:56:12 +12:00
Jake W. Ireland
ed8d568a93
Added more tests for code coverage goal
2021-05-03 18:50:47 +12:00
Jake W. Ireland
f1022d54b4
Rotating functions optimise
...
The two rotating functions that we have (for strings and for arrays) are not optimal, and I didn't quite pick up on this in [`b3acd44`](b3acd440f1
). This commit optimises them:
```julia
julia> using Benchmarktools, Random
julia> A = rand(1000);
julia> @btime rotate_right_old(A, 3);
4.059 μs (1 allocation: 7.94 KiB)
julia> @btime rotate_right_new(A, 3);
622.573 ns (1 allocation: 7.94 KiB)
julia> rotate_right_old(A, 3) == rotate_right_new(A, 3)
true
julia> @btime rotate_left_old(A, 3);
4.042 μs (1 allocation: 7.94 KiB)
julia> @btime rotate_left_new(A, 3);
639.320 ns (1 allocation: 7.94 KiB)
julia> rotate_left_old(A, 3) == rotate_left_new(A, 3)
true
julia> S = randstring(1000);
julia> @btime rotate_left_str_old(S, 3);
30.889 μs (13 allocations: 10.55 KiB)
julia> @btime rotate_left(S, 3);
883.661 ns (3 allocations: 2.16 KiB)
julia> rotate_left_str_old(S, 3) == rotate_left(S, 3)
true
julia> @btime rotate_right_str_old(S, 3);
30.821 μs (13 allocations: 10.55 KiB)
julia> @btime rotate_right(S, 3);
885.314 ns (3 allocations: 2.16 KiB)
julia> rotate_right_str_old(S, 3) == rotate_right(S, 3)
true
```
2021-04-30 11:38:39 +12:00
Jake Ireland
d1a41bf721
Merge pull request #34 from Smaug123/monoalphabetic-io
...
Default chatty to io = stdout in crack_monoalphabetic; suppress chatty printing in tests (closes #31 )
2021-04-30 10:50:18 +12:00
Jake W. Ireland
925b8de686
Default chatty to io = stdout in crack_monoalphabetic; suppress chatty printing in tests
2021-04-29 11:42:15 +12:00
Jake Ireland
2d922ca2ea
Merge pull request #29 from Smaug123/bug-monoalphabetic
...
Type-error bug fix for monoalphabetic (fixes #28 )
v2.1.1
2021-03-10 11:42:28 +13:00
Jake W. Ireland
cc144fa165
Added chatty crack_monoalphabetic test for code coverage goal
2021-03-10 11:32:57 +13:00
Jake W. Ireland
48b986af11
Updated version number
2021-03-10 11:28:08 +13:00
Jake Ireland
08086b9248
Merge pull request #30 from Smaug123/rem-x86
...
Remove x86 workflow
2021-03-10 11:26:27 +13:00
Smaug123
e419823c47
Remove x86 workflow
2021-03-09 19:25:01 +00:00
Jake W. Ireland
2431d3c0f7
Fixed syntax error
2021-03-09 13:33:24 +13:00
Jake W. Ireland
2ae0efd513
Type-error bug fix for monoalphabetic ( fixes #28 )
2021-03-09 13:18:01 +13:00
Jake Ireland
2ae8bc6bab
Updated compat entry for julia
v2.1.0
2021-01-16 10:36:17 +13:00
Jake Ireland
ace12580e6
Merge pull request #26 from Smaug123/version-update
...
Updated version number
2021-01-16 10:29:30 +13:00
Jake Ireland
9859fd86c0
Updated version number
...
Additions:
- Ciphers:
- Rail Fence
- Atbash (special case for monoalphabetic substitution cipher)
- Performance considerations
- Docstrings
2021-01-15 14:00:03 +13:00
Jake Ireland
96091758fd
Merge pull request #24 from jakewilliami/master
...
Some performance considerations, code style cleanup, added rail fence implementation (see #23 ), updated caesar method for shift fallback, added atbash cipher implementation, and added documentation
2021-01-13 02:11:48 +13:00
Jake W. Ireland
fd47cff503
Renamed Travis in order to migrate to GH Actions (a token-free system)
2021-01-13 02:11:00 +13:00
Jake W. Ireland
c715c190bf
Removed un-needed comment
2021-01-13 02:05:35 +13:00
Jake W. Ireland
938d326ce6
Merged substitution.jl with monoalphabetic.jl, updating documentation accordingly
2021-01-13 02:05:01 +13:00
Jake W. Ireland
e23f905f3e
Ensure tests don't have multiple imports (the base runtests file already imports ClassicalCiphers)
2021-01-13 02:04:01 +13:00
Jake W. Ireland
40feeb4844
Fixed typo
2021-01-13 00:57:57 +13:00
Jake W. Ireland
3495d47080
Fixed bug in CI
2021-01-13 00:53:01 +13:00
Jake W. Ireland
6b9a54fdd9
Refined docstrings and added documentation
2021-01-13 00:39:37 +13:00
Jake W. Ireland
46cf9ca9fa
rectified incorrect test in substitution
2021-01-12 23:49:48 +13:00
Jake W. Ireland
55183d284c
Added substitution cipher
2021-01-11 19:31:53 +13:00
Jake W. Ireland
29ebc22cd2
Updated Caesar method to fall back to traditionally used shift, and changed one test case for a more accurate test statement...
2021-01-11 17:30:40 +13:00
Jake W. Ireland
8c467f6c89
Updated README.md for Rail Fence cipher
2021-01-08 04:54:10 +13:00
Jake W. Ireland
9cb4f1306c
Added Rail Fence Cipher implementation (addresses #23 )
...
This is only my attempt at an implementation. @r0cketr1kky can still have another attempt, or refine my solution, but it is here now for people to use.
TODO: add better docstrings.
2021-01-08 04:48:00 +13:00
Jake W. Ireland
09f71792f3
Refined code style to be more in line with Blue Code Style guide
2021-01-08 02:48:44 +13:00
Jake W. Ireland
b3acd440f1
Performance considerations and addition of union of types
...
- Performance considerations, including better typing where possible; and
- Addition of un-exported `AbstractPair` type for more general use of `playfair` functions
2021-01-08 02:03:06 +13:00
Patrick Stevens
c4ebe4c0dc
Bump version to 2.0.1 ( #22 )
v2.0.1
2019-09-12 21:09:10 +01:00
Patrick Stevens
e385968a42
Bump to actual release 2.0 ( #21 )
2019-09-12 21:07:10 +01:00
Patrick Stevens
abc8d090c5
Issue a version ( #19 )
1.0.1
2.0.0
2019-09-12 19:23:12 +01:00
Patrick Stevens
2a0eb5c630
Move to Project.toml, bump to Julia v1 ( #18 )
2019-09-12 19:18:28 +01:00
Smaug123
3196694bc1
Merge pull request #16 from staticfloat/updated_ci_url
...
Update CI URLs to point to new caching infrastructure
v0.3.1
2017-05-17 07:30:57 +01:00
Elliot Saba
3ff235bbff
Update CI URLs to point to new caching infrastructure
2017-05-16 16:56:02 -07:00
Smaug123
6ff2628c15
Merge pull request #15 from tkelman/patch-1
...
use specific version numbers for Travis tests; retire julia 0.4 support
v0.3.0
2017-05-04 22:17:54 +01:00
Tony Kelman
2d99024201
Drop Julia 0.4 support
...
set minimum version to 0.5 in REQUIRE
2017-05-04 11:50:22 -07:00
Smaug123
f0b990436d
Remove Julia 0.4 from Travis tests
...
… since Julia 0.4 is no longer supported for ClassicalCiphers.jl.
2017-05-04 19:33:14 +01:00
Tony Kelman
4402a19f6e
use specific version numbers for Travis tests
...
since 0.4 is still supported according to REQUIRE,
but release is 0.5 at the moment and will be 0.6 soon
2017-05-04 11:26:05 -07:00
Smaug123
e8f8172957
Merge pull request #14 from Smaug123/tidyup/remove-comment
...
Remove commented include from solitaire
2017-04-30 09:44:31 +01:00
Smaug123
b03a7a2996
Remove commented include from solitaire
2017-04-28 18:40:43 +01:00
Smaug123
bc4ad4cb3f
Merge pull request #13 from cormullion/myfork
...
Updates for v0.5 and v0.6
2017-04-28 18:38:14 +01:00
cormullion
ed2e4ef899
add Compat to see if it keeps Travis happier
2017-04-28 15:40:59 +01:00
cormullion
a3da67ce7e
updates for 0.6
2017-04-28 11:18:49 +01:00
cormullion
8c3a152225
some fixes for v0.5
2017-04-28 11:06:03 +01:00
Smaug123
4e02a36b07
Fix some incorrect documentation in README
2016-11-08 19:57:54 +00:00
Smaug123
ce30c83132
Merge pull request #12 from Smaug123/pull-request/d3b54be6
...
Make crack_cipher outputs consistent for different ciphers
2016-01-16 22:01:00 +00:00
Smaug123
d3b54be6ed
Make crack_cipher outputs consistent for different ciphers
2016-01-16 21:45:40 +00:00
Smaug123
aebd353646
More Lint-related changes
v0.2.0
v1.0.0
2016-01-13 18:56:20 +00:00