Mark Thom
2bd998e82f
Merge pull request #660 from triska/shorter_crypto
...
Shorten and improve implementation of several cryptographic routines
2020-08-08 12:23:40 -03:00
Markus Triska
c55cc3c472
ensure proper lengths of key and initialization vector
...
This avoids crashes when using unsuitable lengths.
2020-08-06 23:27:49 +02:00
Markus Triska
674483a4c6
remove entailed constraint
2020-08-06 23:17:08 +02:00
Markus Triska
a16f84560d
use self.deref(...) (see #653 )
2020-08-06 20:12:57 +02:00
Markus Triska
1b4500339e
use atom_argument_to_string
2020-08-06 20:12:23 +02:00
notoria
3143468751
Fixed some conversion issues
2020-08-06 11:39:55 +02:00
Mark Thom
f627b32355
fix crash in CryptoPasswordHash ( #653 ), conversion of Rational integers in number_chars/2 ( #655 )
2020-08-06 00:17:55 -06:00
Mark Thom
10ba6fb773
Merge pull request #654 from triska/aad
...
ADDED: library(crypto): Support for additional authenticated data (AAD).
2020-08-06 02:40:51 -03:00
Markus Triska
2d3f1e51ec
shorten, and increase readability
2020-08-05 21:49:46 +02:00
Markus Triska
1c23336cff
use "octet" as a string literal, reducing the number of arguments
2020-08-05 20:21:46 +02:00
Markus Triska
a622ffddfe
ADDED: library(crypto): Support for additional authenticated data (AAD).
...
Additional authenticated data can now be specified with the new
aad(Chars) option for encryption and decryption. It is authenticated,
but not encrypted.
2020-08-05 20:09:07 +02:00
Mark Thom
79cf0c63c4
update prolog_parser to 0.8.67 ( #648 )
2020-08-04 23:35:10 -06:00
Mark Thom
d57a592273
unify '[]' with proper [] in atom_chars/2 ( #569 )
2020-08-03 19:29:53 -06:00
Mark Thom
4f15802fbc
reconcile '[]' and [] ( #644 ), solve remaining conformity issues ( #648 ), move (-->) from dcgs.pl to builtins.pl ( #649 )
2020-08-02 23:35:53 -06:00
Mark Thom
357ae7a8aa
Merge pull request #647 from notoria/newline
...
Improved readline
2020-07-31 18:19:12 -03:00
notoria
ac00ae4daf
Improved readline
2020-07-31 21:16:33 +02:00
Mark Thom
249f034a38
Merge pull request #645 from triska/curve25519
...
ADDED: library(crypto): ECDH key exchange over Curve25519 (X25519)
2020-07-30 10:29:20 -03:00
Markus Triska
32c612b747
ADDED: library(crypto): ECDH key exchange over Curve25519 (X25519)
2020-07-29 23:51:11 +02:00
Mark Thom
386f7cf65d
the indexer now categorizes partial strings only as lists ( #623 , #642 )
2020-07-27 16:43:43 -06:00
Mark Thom
8dc07882b6
try to build strings from list as potential matches in SwitchOnConstant ( #623 )
2020-07-26 19:16:05 -06:00
Mark Thom
320802633f
Merge pull request #639 from triska/flush_output
...
ENHANCED: flush output for impure I/O (format/[2,3], portray_clause/1 etc.)
2020-07-25 13:20:45 -03:00
Markus Triska
dcc4b91b35
ENHANCED: flush output for impure I/O (format/[2,3], portray_clause/1 etc.)
...
Without this, we do not get a (timely) prompt in cases like:
?- format("press a key: ", []), get_single_char(C).
whereas for example write/1 already works in such cases:
?- write('press a key: '), get_single_char(C).
press a key:
2020-07-25 09:49:02 +02:00
Mark Thom
e7c27ed999
Merge pull request #638 from triska/base64
...
ADDED: chars_base64/3 for efficient bidirectional Base64 conversion.
2020-07-23 19:49:12 -03:00
Markus Triska
928c9c9aad
throw an error if a character cannot be encoded
2020-07-23 00:35:23 +02:00
Markus Triska
4a90f13dee
better error handling for options
2020-07-23 00:27:31 +02:00
Markus Triska
61dddcee3f
use newly available chars_base64/3
2020-07-22 20:35:48 +02:00
Markus Triska
4c510001ce
ADDED: chars_base64/3 for efficient bidirectional Base64 conversion.
2020-07-22 20:35:48 +02:00
Mark Thom
82dfa690d2
Merge pull request #636 from triska/path_segments
...
ADDED: path_segments/2 for portable reasoning about path components.
2020-07-19 13:16:27 -03:00
Markus Triska
2768beec4c
ADDED: path_segments/2 for portable reasoning about path components.
...
The platform-specific directory separator is taken into account.
The clean representation of segments as a list simplifies reasoning.
2020-07-19 12:32:01 +02:00
Mark Thom
bd0aa16322
Merge pull request #633 from triska/file_time
...
ADDED: file_creation_time/2 and file_access_time/2.
2020-07-18 12:40:53 -03:00
Mark Thom
a1746a5bf1
Merge pull request #631 from cduret/lib_csv
...
add write_csv & change skip_header to with_header option
2020-07-18 12:40:28 -03:00
Mark Thom
fb502fb66b
Merge pull request #635 from triska/more_links
...
DOC: add more links to libraries, and include iso_ext in the enumeration
2020-07-18 12:40:09 -03:00
Markus Triska
c9a69263b6
DOC: add more links to libraries, and include iso_ext in the enumeration
2020-07-18 08:12:26 +02:00
Mark Thom
f0c8056334
look up operator precedence when arity does not match what the atom records, don't print brackets around outermost '+' ( #629 )
2020-07-17 11:02:58 -06:00
Markus Triska
17dd9239b6
ADDED: file_creation_time/2 and file_access_time/2.
...
The code can be simplified once if- and while-let-chains are available:
https://github.com/rust-lang/rust/issues/53667
2020-07-17 18:48:39 +02:00
Mark Thom
6c691d9223
Merge pull request #632 from triska/path_canonical
...
ADDED: path_canonical/2, obtaining the canonical absolute path.
2020-07-16 21:03:13 -03:00
Cyrille Duret
920644afaf
set domain_error exception & use format/3 with setup_call_cleanup/3 for stream writing
2020-07-17 01:21:40 +02:00
Markus Triska
8668aee7fd
ENHANCED: Reorder fields in time stamps so that (@<)/2 is meaningful.
2020-07-16 23:40:03 +02:00
Markus Triska
4f386b3e5e
ADDED: file_modification_time/2, obtaining a time stamp.
...
This addresses a remaining aspect of #511 .
2020-07-16 23:40:03 +02:00
Markus Triska
0f4667d942
ADDED: path_canonical/2, obtaining the canonical absolute path.
...
This addresses a remaining aspect of #511 .
2020-07-15 20:43:34 +02:00
Cyrille Duret
5705c42820
set throw() to follow ISO recommendations
2020-07-15 18:26:57 +02:00
794404
f5f0d00a75
add write_csv & change skip_header to with_header option
2020-07-15 13:02:30 +02:00
Mark Thom
ec75e21898
Merge pull request #630 from triska/delete_file
...
ADDED: delete_file/1, addressing a remaining aspect of #511
2020-07-14 20:26:51 -03:00
Markus Triska
94e9e17c79
ADDED: working_directory/2, addressing a remaining aspect of #511
2020-07-14 23:05:29 +02:00
Markus Triska
5134e64cae
ADDED: delete_file/1, addressing a remaining aspect of #511
2020-07-14 22:21:46 +02:00
Mark Thom
53d39ccb4b
Merge pull request #626 from triska/compact_crypto
...
ENHANCED: library(crypto): Retain the compact representation of strings.
2020-07-12 12:17:58 -03:00
Markus Triska
b227e160f0
mention symmetric encryption and ChaCha20-Poly1305
2020-07-12 11:59:34 +02:00
Markus Triska
88a2b82f7e
ENHANCED: library(crypto): Retain the compact representation of strings.
...
This avoids the costly (in terms of space requirements!) conversion of
compact lists of characters to lists of integers, making hashing, HKDF,
encryption, decryption, signing and signature verification an order of
magnitude more efficient (primarily in terms of space, also in time).
This makes library(crypto) suitable to process also very large files.
2020-07-12 11:54:37 +02:00
Mark Thom
0016365446
Merge pull request #625 from triska/os
...
ADDED: library(os), reasoning about environment variables.
2020-07-11 23:50:01 -03:00
Markus Triska
0fa8feb475
use newly available character type in must_be/2
2020-07-11 21:00:25 +02:00