Skip to content

v0.47.0

Pre-release
Pre-release

Choose a tag to compare

@gazerro gazerro released this 25 Aug 07:50

Most relevant commits:

all

  • all: require 1.16 as minimum Go version
  • all: make 'compiler' package internal
  • all: make 'runtime' package internal
  • all: rename the 'types' package to 'native' and move some type into it

ast

  • scriggo/ast: fix and improve documentation

cmd/scriggo

  • cmd/scriggo: don't prefix error message with 'scriggo: '
  • cmd/scriggo: rename the 'run.Scriggofile' file to 'Scriggofile'
  • cmd/scriggo: use 'native' instead of 'predefined' in help
  • cmd/scriggo: better document struct type limitations

compiler

  • compiler/checker: consistently use the same error for redeclared names
  • compiler/checker: fix unreported errors in type switch
  • compiler: allow special case of call for 'print' and 'println'
  • compiler/checker: add support for blank return parameters
  • compiler/checker: fix imported and not used error enabling package cache
  • compiler/emitter: fix position for dummy functions
  • compiler/checker: fix a panic checking an invalid function call
  • compiler/checker: fix a panic checking explicit conversion to interface
  • compiler/checker: fix constant conversion from string to slice
  • compiler/types: revise 'AssignableTo', 'ConvertibleTo' and 'Implements'
  • compiler/checker: fix variadic call to 'append'
  • compiler/lexer: fix parsing general comments
  • compiler/lexer: disallow BOM if it is not the first Unicode code point
  • compiler/checker: fix break sets too many statements to terminating
  • compiler/checker: fix 'break' and 'continue' not in breakable statement
  • compiler/parser: allow to omit a semicolon before a closing %%}
  • compiler/parser: fix parsing empty label statements
  • compiler/parser: support modules parsing programs
  • compiler/checker: fix label, goto, break and continue statements
  • compiler/checker: differentiate error messages in type declaration loops
  • compiler/disassembler: fix panic disassembling 'Select' operation
  • compiler/types: fix creation of defined types
  • compiler/checker: add missing builtins to 'go' and 'defer' statements
  • compiler/parser: fix error message if identifier name starts with digit
  • compiler/parser: return better error message on interfaces with methods
  • compiler/parser: fix automatically inserted semicolon
  • compiler/parser: fix error message on unexpected token after 'else'
  • compiler/emitter: call 'types.PtrTo' instead of 'reflect.PtrTo'
  • compiler/checker: fix very slow printing of float constants
  • compiler/checker: fix 'duplicate field _' error
  • compiler/checker: fix checking of struct fields
  • compiler/checker: don't panic is not first embedded type has methods
  • compiler/types: implement 'structType.FieldByIndex' method
  • compiler/checker: fix implicit assignment of unexported fields
  • compiler/checker: rewrite checking of composite struct literal
  • compiler/emitter: fix slicing
  • compiler/emitter: fix invalid behavior in assignment
  • compiler/checker: fix ambiguous selector error
  • compiler/checker: fix corner cases in field selector

native

  • native: make 'MapPackage' methods with pointer receivers
  • native: make 'PackageLoader.Load' method returns only native packages
  • native: rename the 'MapPackage' type to 'DeclarationsPackage'
  • native, runtime: remove 'Exited' and 'ExitFunc' methods of 'Env'
  • native: document that 'Exit' and 'Fatal' do not terminate goroutines

playground

  • playground: remove 'wasm_exec.js' file and document how to copy the file
  • playground: use '-v -o' to generate 'packages.go' in README
  • playground: remove 'packages.go' from the repository

runtime

  • runtime: fix error returned deleting a map key with an unhashable type

scriggo

  • scriggo: change 'Build' function to get a file system
  • scriggo, templates: merge 'templates' package into the 'scriggo' package
  • scriggo: remove the 'PrintFunc' function
  • scriggo: rename 'RunOptions.PrintFuc' to 'Print'
  • scriggo, scripts: rename 'Panic' types to 'PanicError'
  • scriggo, scripts: make 'Run' methods return an ExitError instead of code
  • scriggo: merge 'BuildTemplateOptions' into 'BuildOptions'
  • scriggo, scripts: make 'go' statement disabled by default

scripts

  • scripts: document that scripts are experimental
  • scripts: replace 'reflect.PrintFunc' type with 'scriggo.PrintFunc' type
  • scripts: rename 'RunOptions.PrintFunc' to 'Print'
  • scripts: improve documentation