~singpolyma/dhall-ruby

ref: 0.2.0 dhall-ruby/test d---------
Customizable cache

Caches implemented in this commit:

StandardFileCache - cache conforming to dhall-lang
RamCache - stores in a hash, meant for single-load caching
NoCache - when you want to be sure
Default max import depth of 50

So even without a timeout, there is a limit on bonkers cases.

Standard resolver defaults to INIFINTY since the standard does not
define a depth limit.
Timeout mechanism

Sets timeouts in HTTP readers, checks for deadline exceeded before each
resolution step, and uses Timeout::timeout for pure-ruby computations.
Document Dhall::Coder
Dhall::Coder

Full "to basic ruby types" deserializing, set up as a drop-in for
ActiveRecord::Base#serialize
Encoding binary string as List Natural

Certainly better than an error, and gives the dhall side access to the
individual bytes.
Update handling of builtins

Always parse to a special value and not to variables.
Encode seperately.
largeExpression works now, but is slow

So only run in CI
as_dhall for Symbol
Parse expression from ENV var import

Instead of the path-only support from before.
Fail fast when encoding is bad
Speed up tests by not resolving when not needed
Test everything the README says
Add as_dhall refinement
Test typechecker edge cases
Run all dhal-lang typecheck tests
Run all dhall-last tests for cache_key
Run all dhall-lang tests for normalization
Next