Verup, new stdlib dir discovery procedure, remove oracles
Some checks failed
Sophia Tests / tests (push) Failing after 47m0s

This commit is contained in:
Craig Everett 2025-02-25 15:58:55 +09:00
parent a7ca22c209
commit 203c08447f
24 changed files with 28 additions and 58 deletions

View File

@ -11,6 +11,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
### Removed ### Removed
## [9.0.0]
### Changed
- The stdlib is now discovered relative to the location of the currently loaded Sophia modules.
### Removed
- Oracles
## [8.0.1] ## [8.0.1]
### Changed ### Changed
- Upgrade aebytecode to v3.4.1 to fix C warnings - Upgrade aebytecode to v3.4.1 to fix C warnings

View File

@ -1,25 +0,0 @@
%% -*- mode: erlang; indent-tabs-mode: nil -*-
{erl_opts, [debug_info]}.
{deps, [ {gmbytecode,
{git, "https://git.qpq.swiss/QPQ-AG/gmbytecode.git",
{ref, "97cea33be8f3a35d26055664da7aa59531ff5537"}}}
, {eblake2, "1.0.0"}
, {jsx, {git, "https://github.com/talentdeficit/jsx.git", {tag, "2.8.0"}}}
]}.
{dialyzer, [
{warnings, [unknown]},
{plt_apps, all_deps},
{base_plt_apps, [erts, kernel, stdlib, crypto, mnesia]}
]}.
{relx, [{release, {sophia, "8.0.1"},
[sophia, gmbytecode]},
{dev_mode, true},
{include_erts, false},
{extended_start_script, true}]}.

View File

@ -1,30 +0,0 @@
{"1.2.0",
[{<<"gmbytecode">>,
{git,"https://git.qpq.swiss/QPQ-AG/gmbytecode.git",
{ref, "97cea33be8f3a35d26055664da7aa59531ff5537"}},
0},
{<<"gmserialization">>,
{git,"https://git.qpq.swiss/QPQ-AG/gmserialization.git",
{ref,"ac64e01b0f675c1a34c70a827062f381920742db"}},
1},
{<<"base58">>,
{git,"https://git.qpq.swiss/QPQ-AG/erl-base58.git",
{ref,"e6aa62eeae3d4388311401f06e4b939bf4e94b9c"}},
2},
{<<"eblake2">>,
{git,"https://git.qpq.swiss/QPQ-AG/eblake2.git",
{ref,"b29d585b8760746142014884007eb8441a3b6a14"}},
0},
{<<"enacl">>,
{git,"https://git.qpq.swiss/QPQ-AG/enacl.git",
{ref,"4eb7ec70084ba7c87b1af8797c4c4e90c84f95a2"}},
2},
{<<"getopt">>,
{git,"https://git.qpq.swiss/QPQ-AG/getopt.git",
{ref,"dbab6262a2430809430deda9d8650f58f9d80898"}},
1},
{<<"jsx">>,
{git,"https://github.com/talentdeficit/jsx.git",
{ref,"3074d4865b3385a050badf7828ad31490d860df5"}},
0}]}.

BIN
rebar3

Binary file not shown.

View File

@ -8,6 +8,7 @@
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_aci). -module(so_aci).
-vsn("9.0.0").
-export([ file/2 -export([ file/2
, file/3 , file/3

View File

@ -1,4 +1,5 @@
-module(so_ast). -module(so_ast).
-vsn("9.0.0").
-export([int/2, -export([int/2,
line/1, line/1,

View File

@ -12,6 +12,7 @@
%%% instances of the compiler to be run in parallel. %%% instances of the compiler to be run in parallel.
-module(so_ast_infer_types). -module(so_ast_infer_types).
-vsn("9.0.0").
-export([ infer/1 -export([ infer/1
, infer/2 , infer/2

View File

@ -7,6 +7,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_ast_to_fcode). -module(so_ast_to_fcode).
-vsn("9.0.0").
-export([ast_to_fcode/2, format_fexpr/1]). -export([ast_to_fcode/2, format_fexpr/1]).
-export_type([fcode/0, fexpr/0, fun_def/0]). -export_type([fcode/0, fexpr/0, fun_def/0]).

View File

@ -7,6 +7,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_compiler). -module(so_compiler).
-vsn("9.0.0").
-export([ file/1 -export([ file/1
, file/2 , file/2

View File

@ -7,6 +7,7 @@
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_errors). -module(so_errors).
-vsn("9.0.0").
-type src_file() :: no_file | iolist(). -type src_file() :: no_file | iolist().

View File

@ -7,6 +7,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_fcode_to_fate). -module(so_fcode_to_fate).
-vsn("9.0.0").
-export([compile/3, compile/4, term_to_fate/1, term_to_fate/2]). -export([compile/3, compile/4, term_to_fate/1, term_to_fate/2]).

View File

@ -8,6 +8,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_parse_lib). -module(so_parse_lib).
-vsn("9.0.0").
-export([parse/2, -export([parse/2,
return/1, fail/0, fail/1, fail/2, map/2, bind/2, return/1, fail/0, fail/1, fail/2, map/2, bind/2,

View File

@ -3,6 +3,7 @@
%%% Description : %%% Description :
%%% Created : 1 Mar 2018 by Ulf Norell %%% Created : 1 Mar 2018 by Ulf Norell
-module(so_parser). -module(so_parser).
-vsn("9.0.0").
-compile({no_auto_import,[map_get/2]}). -compile({no_auto_import,[map_get/2]}).
-export([string/1, -export([string/1,

View File

@ -7,6 +7,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_pretty). -module(so_pretty).
-vsn("9.0.0").
-import(prettypr, [text/1, sep/1, above/2, beside/2, nest/2, empty/0]). -import(prettypr, [text/1, sep/1, above/2, beside/2, nest/2, empty/0]).

View File

@ -7,6 +7,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_scan). -module(so_scan).
-vsn("9.0.0").
-export([scan/1, utf8_encode/1]). -export([scan/1, utf8_encode/1]).

View File

@ -6,6 +6,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_scan_lib). -module(so_scan_lib).
-vsn("9.0.0").
-export([compile/1, string/3, -export([compile/1, string/3,
token/1, token/2, symbol/0, skip/0, token/1, token/2, symbol/0, skip/0,

View File

@ -8,6 +8,7 @@
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_stdlib). -module(so_stdlib).
-vsn("9.0.0").
-export([stdlib_include_path/0]). -export([stdlib_include_path/0]).

View File

@ -8,6 +8,7 @@
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_syntax). -module(so_syntax).
-vsn("9.0.0").
-export([get_ann/1, get_ann/2, get_ann/3, set_ann/2, qualify/2]). -export([get_ann/1, get_ann/2, get_ann/3, set_ann/2, qualify/2]).

View File

@ -6,6 +6,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_syntax_utils). -module(so_syntax_utils).
-vsn("9.0.0").
-export([used_ids/1, used_ids/2, used_types/2, used/1]). -export([used_ids/1, used_ids/2, used_types/2, used/1]).

View File

@ -6,6 +6,7 @@
%%% @end %%% @end
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_utils). -module(so_utils).
-vsn("9.0.0").
-export([scc/1, canonical_dir/1]). -export([scc/1, canonical_dir/1]).

View File

@ -6,6 +6,7 @@
%%%------------------------------------------------------------------- %%%-------------------------------------------------------------------
-module(so_vm_decode). -module(so_vm_decode).
-vsn("9.0.0").
-export([ from_fate/2 ]). -export([ from_fate/2 ]).

View File

@ -1,4 +1,5 @@
-module(so_warnings). -module(so_warnings).
-vsn("9.0.0").
-record(warn, { pos :: so_errors:pos() -record(warn, { pos :: so_errors:pos()
, message :: iolist() , message :: iolist()

View File

@ -1,6 +1,6 @@
{application, sophia, {application, sophia,
[{description, "Compiler for Sophia language"}, [{description, "Compiler for Sophia language"},
{vsn, "8.0.1"}, {vsn, "9.0.0"},
{registered, []}, {registered, []},
{applications, {applications,
[kernel, [kernel,

View File

@ -2,9 +2,9 @@
{type,lib}. {type,lib}.
{modules,[]}. {modules,[]}.
{prefix,none}. {prefix,none}.
{desc,"The Sophia smart contract language for the FATE VM"}.
{author,"QPQ AG"}. {author,"QPQ AG"}.
{package_id,{"otpr","sophia",{8,0,1}}}. {desc,"The Sophia smart contract language for the FATE VM"}.
{package_id,{"otpr","sophia",{9,0,0}}}.
{deps,[{"otpr","gmbytecode",{3,4,1}}, {deps,[{"otpr","gmbytecode",{3,4,1}},
{"otpr","getopt",{1,0,2}}, {"otpr","getopt",{1,0,2}},
{"otpr","eblake2",{1,0,0}}, {"otpr","eblake2",{1,0,0}},