Elixir v0.13.3

Home Forums Elixir Elixir v0.13.3

This topic contains 0 replies, has 1 voice, and was last updated by  admin 12 months ago.

Viewing 1 post (of 1 total)
  • Author
    Posts
  • #36187

    admin
    Keymaster

    Enhancements

    [OptionParser] Add :strict option that only parses known switches
    [OptionParser] Add next/2 useful for manual parsing of options
    [Macro] Add Macro.prewalk/2/3 and Macro.postwalk/2/3
    [Kernel] GenEvent, GenServer, Supervisor, Agent and Task modules added
    [Kernel] Make deprecations compiler warnings to avoid the same deprecation being printed multiple times

    Bug fixes

    [Enum] Fix Enum.join/2 and Enum.map_join/3 for empty binaries at the beginning of the collection
    [ExUnit] Ensure the formatter doesn’t error when printing :EXITs
    [Kernel] Rename ELIXIR_ERL_OPTS to ELIXIR_ERL_OPTIONS for consistency with ERL_COMPILER_OPTIONS
    [OptionParser] Parse – as a plain argument
    [OptionParser] — is always removed from argument list on parse/2 and when it is the leading entry on parse_head/2
    [Regex] Properly escape regex (previously regex controls were double escaped)

    Soft deprecations (no warnings emitted)

    [Dict] Dict.Behaviour is deprecated in favor of Dict
    [Kernel] Application.Behaviour, GenEvent.Behaviour, GenServer.Behaviour and Supervisor.Behaviour are deprecated in favor of Application, GenEvent, GenServer and Supervisor
    [Kernel] defexception/3 is deprecated in favor of defexception/1
    [Kernel] raise/3 is deprecated in favor of reraise/2
    [Kernel] set_elem/3 is deprecated in favor of put_elem/3

    Soft deprecations for conversions (no warnings emitted)

    [Kernel] atom_to_binary/1 and atom_to_list/1 are deprecated in favor of Atom.to_string/1 and Atom.to_char_list/1
    [Kernel] bitstring_to_list/1 and list_to_bitstring/1 are deprecated in favor of the :erlang ones
    [Kernel] binary_to_atom/1, binary_to_existing_atom/1, binary_to_float/1, binary_to_integer/1 and binary_to_integer/2 are deprecated in favor of conversion functions in String
    [Kernel] float_to_binary/* and float_to_list/* are deprecated in favor of Float.to_string/* and Float.to_char_list/*
    [Kernel] integer_to_binary/* and integer_to_list/* are deprecated in favor of Integer.to_string/* and Integer.to_char_list/*
    [Kernel] iodata_to_binary/1 and iodata_length/1 are deprecated IO.iodata_to_binary/1 and IO.iodata_length/1
    [Kernel] list_to_atom/1, list_to_existing_atom/1, list_to_float/1, list_to_integer/1, list_to_integer/2 and list_to_tuple/1 are deprecated in favor of conversion functions in List
    [Kernel] tuple_to_list/1 is deprecated in favor of Tuple.to_list/1
    [List] List.from_char_data/1 and List.from_char_data!/1 deprecated in favor of String.to_char_list/1
    [String] String.from_char_data/1 and String.from_char_data!/1 deprecated in favor of List.to_string/1

    Deprecations

    [Kernel] is_exception/1, is_record/1 and is_record/2 are deprecated in favor of Exception.exception?1, Record.record?/1 and Record.record?/2
    [Kernel] defrecord/3 is deprecated in favor of structs
    [Kernel] :hygiene in quote is deprecated
    [Mix] Mix.project/0 is deprecated in favor of Mix.Project.config/0
    [Process] Process.spawn/1, Process.spawn/3, Process.spawn_link/1, Process.spawn_link/3, Process.spawn_monitor/1, Process.spawn_monitor/3, Process.send/2 and Process.self/0 are deprecated in favor of the ones in Kernel

    Backwards incompatible changes

    [Exception] Exceptions now generate structs instead of records
    [OptionParser] Errors on parsing returns the switch and value as binaries (unparsed)
    [String] String.to_char_list/1 (previously deprecated) no longer returns a tuple but the char list only and raises in case of failure

Viewing 1 post (of 1 total)

You must be logged in to reply to this topic.