Alex Shelkovnykov
ac1a0ffdee
Change JSON parser arms to match |base16:html
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
28ed583d29
Fix bug in .en-json:html (missing escaped char)
...
The backspace character was not being escaped like other invisible
characters.
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
3537ef56c3
Fix JSON parser decoding for UTF8
...
JSON supports Unicode as both UTF8 sequences and escaped UTF16. UTF8 is
encoded as between 2 and 4 bytes, the first byte of which governs the
length. The JSON parser was previously accepting any non-ASCII bytes as
UTF8 in any order.
See:
- https://www.crockford.com/mckeeman.html
- https://www.json.org/json-en.html
- https://en.wikipedia.org/wiki/UTF-8#Encoding
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
1472dadf4d
Add validation functions for UTF8
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
3d93e9f527
Fix JSON parser decoding for escaped unicode
...
JSON supports Unicode as both UTF8 sequences and escaped UTF16. Unicode
points U+10000 to U+10FFFF are encoded as two consecutive escaped UTF16
units known as a surrogate pair. The JSON decoder was previously
treating surrogate pairs as two individual escaped UTF16 units. In
addition, the JSON standard allows hexadecimal letters to be either
uppercase or lowercase, which the parser was not respecting.
See:
- https://www.crockford.com/mckeeman.html
- https://www.json.org/json-en.html
- https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF
Git issue: #1776
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
e4ddd6994c
Fix JSON parser decoding for ASCII in strings
...
The JSON standard rejects all un-escaped, un-printable characters EXCEPT
for the delete character (ID 127, i.e. 0x7F).
See: https://www.crockford.com/mckeeman.html
Via: https://www.json.org/json-en.html
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
2580dfbce3
Fix JSON parser decoding for numbers
...
\#1775
2023-04-11 14:59:15 -06:00
Alex Shelkovnykov
345c4a8ae5
Refactor unit tests for JSON decoding/encoding
...
The unit tests for de-json:html and en-json:html in zuse.hoon were
copied from the JSON Test Suite (https://github.com/nst/JSONTestSuite ).
While a good test suite if usable as-is, it has a lot of problems with
it, namely: inconsistent test names; repeated tests; and mixing tests
for multiple cases into one file. Since the tests need to be manually
added to Urbit anyway, this commit uses the opportunity to clean up the
test suite by making the following changes:
- Renaming tests to use a consistent naming scheme
- Removing repetetive test cases
- Splitting multi-case tests into multiple single-purpose tests
2023-04-11 14:59:15 -06:00
Ted Blackman
365a1d5af9
Merge pull request #6447 from urbit/jb/drip-hurl
...
behn: propagate errors in deferred moves
2023-04-11 11:28:20 -04:00
Pyry Kovanen
6b5a836f8f
Merge pull request #6458 from urbit/ted/fix-vats
...
+vats: fix crash on nonexistent desks
2023-04-11 17:18:42 +03:00
Ted Blackman
cd161a5492
+vats: fix crash on nonexistent desks
2023-04-07 15:19:24 -04:00
Josh Lehman
af3ad860e7
Merge pull request #6454 from urbit/ted/arvo-bout
...
arvo: print module compilation times
2023-04-07 08:38:08 -07:00
Josh Lehman
59567b9e51
Merge pull request #6449 from urbit/ted/ames-ping-2
...
ames: ping faster to sponsors
2023-04-07 08:36:05 -07:00
Ted Blackman
b273f3091b
arvo: print module compilation times
2023-04-06 23:52:53 -04:00
Joe Bryan
d2eda084ac
Merge branch 'develop' into ted/ames-ping-2
2023-04-06 15:07:38 -04:00
Ted Blackman
eddbe86d69
ames: fix syntax error
2023-04-06 11:58:34 -04:00
Ted Blackman
0223cf9f59
Merge pull request #6452 from urbit/i/6444/lesser-dill-call-trace
...
dill: exclude wrapped-task from most +call traces
2023-04-06 11:39:10 -04:00
fang
e300fa2d6b
dill: exclude wrapped-task from most +call traces
...
Instead of including wrapped-task as-is in most call traces, we now only
include it in traces for crashing (harden task) calls. For everything
else, we include only the tag of the resulting $task.
Closes #6444 .
2023-04-06 15:58:12 +02:00
Ted Blackman
056ff35b89
app/ping: lower timeout to ~s25
2023-04-05 12:04:14 -04:00
Ted Blackman
66678acd3e
ames: ping faster to sponsors
2023-04-05 11:59:06 -04:00
Josh Lehman
c1ce41e494
Merge pull request #6445 from urbit/master
...
Merge master back to develop after urbit-os-v2.136 release
2023-04-05 08:13:50 -07:00
Josh Lehman
938319ea87
Merge pull request #6443 from midden-fabler/i/6442/ames-add-last-contact-scry
...
ames: add last-contact scry endpoint
2023-04-05 08:11:58 -07:00
Joe Bryan
b6194711c3
behn: hurl errors on %drip %crud
2023-04-04 15:07:27 -04:00
Joe Bryan
9ae28a985c
clay: %pass %drip with context, expect and handle errors in +take
2023-04-04 15:06:51 -04:00
Pyry Kovanen
88406f9aab
Merge pull request #6428 from urbit/release/urbit-os-v2.136
...
Release urbit-os-v2.136
2023-04-04 19:09:16 +03:00
Pyry Kovanen
a4888fd444
Merge branch 'master' into release/urbit-os-v2.136
2023-04-04 18:35:55 +03:00
midden-fabler
d8ad34f0fc
update scry path listing
2023-04-04 03:06:22 -04:00
midden-fabler
bacbfd71ac
add last-contact scry endpoint
2023-04-04 02:50:09 -04:00
Ted Blackman
90970469d0
Merge pull request #6427 from playfulpachyderm/i/6426/expand-new-desk
...
arvo: add more files to |new-desk generator
2023-04-03 12:09:26 -04:00
Ted Blackman
726cda9d26
Merge pull request #6425 from urbit/i/6409/sss-unsubscribe
...
sss: Unsubscribing and permissions
2023-03-31 12:50:28 -04:00
Ted Blackman
dca3713a26
Merge pull request #6395 from hoclun-rigsep/i/6297/vats
...
+vats options
2023-03-31 11:31:24 -04:00
Alessio
38ace43ca0
arvo: change |new-desk to be minimal by default
2023-03-29 14:20:23 -03:00
Josh Lehman
fab329799f
Merge branch 'develop' into i/6297/vats
2023-03-29 08:43:07 -07:00
Pyry Kovanen
bddd73d9dc
Merge pull request #6431 from urbit/hotfix/fix-clay-rebuild-loop
...
hotfix clay rebuild loop
2023-03-28 21:02:13 +03:00
Philip Monk
2c262e1fd0
clay: stop failed kelvin upgrades from retrying immediately
...
We were retrying failed kelvin upgrades as many times as we had apps
that needed to be suspended, because suspending an app triggers an
attempt to run the next kelvin upgrade. This suspends all those apps in
one batch move, and then tries the next kelvin upgrade only once at the
end.
Fixes #6407
Partially addresses #6285
2023-03-28 11:52:33 -04:00
Pyry Kovanen
bcbd746b7a
Merge branch 'master' into release/urbit-os-v2.136
2023-03-28 14:41:07 +03:00
James D. Amberger
821f99a351
hood: options for +vats generator
...
This commit refactors `sur/hood.hoon` and changes the signature of the
`+vats` generator thus:
```hoon
|= $: [now=@da eny=@uvJ bec=beak]
$@(~ [?(%suspended %running %blocking %nonexistent) ~])
$: verb=?
show-suspended=?
show-running=?
show-blocking=?
show-nonexistent=?
==
==
```
Called with a single positional argument, `+vats` will show only those
desks fitting the description given, while keyword parameters allow
finer-grained control over which desks are described. The `verb`
parameter determines whether the full load of desk information be shown,
or a subset thereof.
Resolves #6297 .
2023-03-27 23:09:41 -04:00
Alessio
00b7ace08d
arvo: add more files to |new-desk generator
2023-03-27 23:58:19 -03:00
~wicrum-wicrun
4516ecfaa3
sss: Simplify +block:du
and +allow:du
2023-03-27 22:03:24 +02:00
~wicrum-wicrun
d2e6c7e8a1
Unsubscribing and permissions
2023-03-27 19:21:19 +02:00
Pyry Kovanen
6d80191aef
Merge pull request #6417 from urbit/release/urbit-os-v2.136
...
Merge urbit-os-v2.136-rc2 back to develop
2023-03-24 21:51:17 +02:00
Pyry Kovanen
cb819b2091
Merge pull request #6413 from urbit/i/6407/zeal
...
clay: stop failed kelvin upgrades from retrying immediately
2023-03-24 18:36:09 +02:00
Philip Monk
89500460f7
clay: stop failed kelvin upgrades from retrying immediately
...
We were retrying failed kelvin upgrades as many times as we had apps
that needed to be suspended, because suspending an app triggers an
attempt to run the next kelvin upgrade. This suspends all those apps in
one batch move, and then tries the next kelvin upgrade only once at the
end.
Fixes #6407
Partially addresses #6285
2023-03-24 18:19:48 +02:00
Josh Lehman
e365a58a98
Merge pull request #6405 from urbit/i/6404/next-kelvin-ci
...
ci: use corresponding `vere` builds on CI for `next/kelvin/*` branches
2023-03-23 08:54:58 -07:00
Matthew LeVan
d8af103d2f
ci: add next
parameter
2023-03-23 11:28:40 -04:00
Josh Lehman
cfb92b31ce
Merge pull request #6394 from silnem2/pill-lists
...
lib, gen: remove folder whitelist from lib/pill, add option to remove folders
2023-03-23 08:23:35 -07:00
Matthew LeVan
2dd21004bd
Merge branch 'develop' into i/6404/next-kelvin-ci
2023-03-23 10:22:20 -04:00
Matthew LeVan
f7eb15e161
ci: syntax clarity
2023-03-23 10:16:29 -04:00
Ted Blackman
0b95645134
Merge pull request #6408 from urbit/hm/landscape-414
...
meta: update for kelvin
2023-03-22 12:53:26 -04:00
Hunter Miller
8e5b9763b4
meta: update for kelvin
2023-03-22 10:39:15 -05:00