Module

File

Changes by version

Elixir 1.19.4

· 1 change

Bugfix Tool: Elixir

Ensure File.cp_r/3 reports non-existing destination properly (instead of source)

Elixir 1.19.0

· 3 changes

Bugfix Tool: Elixir

Properly handle permissions errors cascading from parent in File.mkdir_p/1

Hard Deprecation Tool: Elixir

Passing a callback as third argument to File.cp/3 is deprecated, pass it as a on_conflict: callback option instead

Hard Deprecation Tool: Elixir

Passing a callback as third argument to File.cp_r/3 is deprecated, pass it as a on_conflict: callback option instead

Elixir 1.16.0

· 2 changes

Enhancement Tool: Elixir

Add :offset option to File.stream!/2

Enhancement Tool: Elixir

Deprecate File.stream!(file, options, line_or_bytes) in favor of keeping the options as last argument, as in File.stream!(file, line_or_bytes, options)

Elixir 1.15.0

· 4 changes

Enhancement Tool: Elixir

Support distributed File.Stream

Bugfix Tool: Elixir

Do not raise if there are file system race conditions in File.cp/2

Bugfix Tool: Elixir

Do not raise when deleting write-only empty directories on File.rm_rf/1

Enhancement Tool: Elixir

File.cp/3 and File.cp_r/3 with a function as third argument

Elixir 1.14.0

· 2 changes

Enhancement Tool: Elixir

Support dereference_symlinks: true in File.cp/3 and File.cp_r/3

Enhancement Tool: Elixir

Passing a callback as third argument to File.cp/3 and File.cp_r/3 is deprecated.

Elixir 1.9.0

· 1 change

Enhancement Tool: Elixir

Add File.rename!/2

Elixir 1.8.0

· 2 changes

Enhancement Tool: Elixir

Allow :raw option in File.exists?/2, File.regular?/2, and File.dir?/2

Enhancement Tool: Elixir

Allow POSIX time as an integer in File.touch/2 and File.touch!/2

Elixir 1.7.0

· 1 change

Bugfix Tool: Elixir

Allow the :trim_bom option to be used with :encoding

Elixir 1.5.0

· 4 changes

Enhancement Tool: Elixir

Add File.read_link/1 and File.read_link!/1

Enhancement Tool: Elixir

Introduce :trim_bom option for File.stream!/2

Bugfix Tool: Elixir

Ensure recursive file operations raise on paths with null bytes (security issue reported by Griffin Byatt)

Bugfix Tool: Elixir

Support :ram/:raw files in File.copy/2

Elixir 1.3.0

· 1 change

Enhancement Tool: Elixir

Support IO devices in File.copy/3

Elixir 1.1.0

· 3 changes

Enhancement Tool: Elixir

Add File.lstat/1 and File.lstat/1 that works like File.stat/1 but is able to return symlink information (i.e. it does not traverse symlinks)

Enhancement Tool: Elixir

Add File.rename/2

Bugfix Tool: Elixir

Ensure File.touch/2 and File.stat/2 receive and return universal times. Previously they would work with local times which are not monotonically increasing, which could present issues on scripts. If the times are being shown to the user, time: :local can be given as argument

Elixir 0.14.0

· 1 change

Enhancement Tool: Elixir

File.rm now consistently deletes read-only across operating systems

Elixir 0.13.2

· 1 change

Enhancement Tool: Elixir

Add File.ln_s/1

Elixir 0.12.5

· 1 change

Enhancement Tool: Elixir

File.stream_to!/3 is deprecated

Elixir 0.12.3

· 1 change

Enhancement Tool: Elixir

File.cp/3 and File.cp_r/3 no longer carry Unix semantics where the function behaves differently if the destination is an existing previous directory or not. It now always copies source to destination, doing it recursively in the latter

Elixir 0.12.0

· 2 changes

Enhancement Tool: Elixir

Add File.stream_to!/3

Enhancement Tool: Elixir

File.binstream!/3 is deprecated. Simply use File.stream!/3 which is able to figure out if stream or binstream operations should be used

Elixir 0.10.2

· 1 change

Enhancement Tool: Elixir

Fix a bug where File.touch(file, datetime) was not setting the proper datetime when the file did not exist

Elixir 0.10.0

· 2 changes

Enhancement Tool: Elixir

File.iterator/1 and File.biniterator/1 are deprecated in favor of IO.stream/1 and IO.binstream/1

Enhancement Tool: Elixir

File.iterator!/2 and File.biniterator!/2 are deprecated in favor of File.stream!/2 and File.binstream!/2