<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/kernel/src, branch OTP-17.2</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Merge branch 'nox/filelib-wildcard-broken-link' into maint-17</title>
<updated>2014-07-10T08:45:13+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2014-07-10T08:45:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=b376a4b8dd21a943be3226bb696a1622537edf86'/>
<id>b376a4b8dd21a943be3226bb696a1622537edf86</id>
<content type='text'>
* nox/filelib-wildcard-broken-link:
  Update stdlib appup file
  Update runtime dependencies
  Update preloaded
  Add tests of filelib and symlinks
  Fix handling of broken symlinks in filelib

Conflicts:
	erts/preloaded/ebin/erl_prim_loader.beam
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* nox/filelib-wildcard-broken-link:
  Update stdlib appup file
  Update runtime dependencies
  Update preloaded
  Add tests of filelib and symlinks
  Fix handling of broken symlinks in filelib

Conflicts:
	erts/preloaded/ebin/erl_prim_loader.beam
</pre>
</div>
</content>
</entry>
<entry>
<title>Update runtime dependencies</title>
<updated>2014-07-09T13:15:48+00:00</updated>
<author>
<name>Siri Hansen</name>
<email>siri@erlang.org</email>
</author>
<published>2014-07-09T13:15:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=4182a479c2ae47d097c2b4f18a6a2a47020a5bca'/>
<id>4182a479c2ae47d097c2b4f18a6a2a47020a5bca</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix handling of broken symlinks in filelib</title>
<updated>2014-07-09T12:57:11+00:00</updated>
<author>
<name>Anthony Ramine</name>
<email>n.oxyde@gmail.com</email>
</author>
<published>2014-06-30T22:58:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=de2fb97f15ac98aa1d1c5533aacca378334f4778'/>
<id>de2fb97f15ac98aa1d1c5533aacca378334f4778</id>
<content type='text'>
This fixes a bug introduced in f11aabdc9fec593c31e6c4f3fa25c1707e9c35df where
filelib:eval_read_file_info/2 was made to use file:read_link_info/1 to never
follow symlinks. This fixed wildcard/1 but broke every other function using
eval_read_file_info/2.

Reported-by: Louis-Philippe Gauthier
Reported-by: Danil Zagoskin
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes a bug introduced in f11aabdc9fec593c31e6c4f3fa25c1707e9c35df where
filelib:eval_read_file_info/2 was made to use file:read_link_info/1 to never
follow symlinks. This fixed wildcard/1 but broke every other function using
eval_read_file_info/2.

Reported-by: Louis-Philippe Gauthier
Reported-by: Danil Zagoskin
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'bjorn/kernel/remove-file_info-vestiges/OTP-11982' into maint</title>
<updated>2014-06-17T08:40:23+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2014-06-17T08:40:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=2ad1bf818447c8a7ff380e93f43a7a6105a77d6f'/>
<id>2ad1bf818447c8a7ff380e93f43a7a6105a77d6f</id>
<content type='text'>
* bjorn/kernel/remove-file_info-vestiges/OTP-11982:
  Remove documentation and stub for non-exist file:file_info/1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* bjorn/kernel/remove-file_info-vestiges/OTP-11982:
  Remove documentation and stub for non-exist file:file_info/1
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove documentation and stub for non-exist file:file_info/1</title>
<updated>2014-06-13T10:31:08+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2014-06-13T10:31:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=708430b92ff48faa5e0c821dfca520968551a71f'/>
<id>708430b92ff48faa5e0c821dfca520968551a71f</id>
<content type='text'>
file:file_info/1 was removed a long time ago, but its
documentation was not removed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
file:file_info/1 was removed a long time ago, but its
documentation was not removed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow unsticking pre-loaded modules</title>
<updated>2014-06-12T10:06:09+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2014-06-11T13:48:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=9eccead7d89673648318815716b73f6d50ec068b'/>
<id>9eccead7d89673648318815716b73f6d50ec068b</id>
<content type='text'>
Commit ed06dd12ea74018b902a2c4c7924313d23cedb75 made pre-loaded
modules (such as erlang) sticky, and also made it impossible to
unstick them to prevent them from ever be reloaded.

It turns out that there are tools that may want to instrument
the erlang module (such as concuerror), so making it
impossible to unstick modules is harsh. Therefore, revert the
part of the commit that prevented unsticking the pre-loaded
modules.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commit ed06dd12ea74018b902a2c4c7924313d23cedb75 made pre-loaded
modules (such as erlang) sticky, and also made it impossible to
unstick them to prevent them from ever be reloaded.

It turns out that there are tools that may want to instrument
the erlang module (such as concuerror), so making it
impossible to unstick modules is harsh. Therefore, revert the
part of the commit that prevented unsticking the pre-loaded
modules.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make pre-loaded modules permanently sticky</title>
<updated>2014-06-04T14:43:17+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2014-05-09T10:35:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=ed06dd12ea74018b902a2c4c7924313d23cedb75'/>
<id>ed06dd12ea74018b902a2c4c7924313d23cedb75</id>
<content type='text'>
Modules in the kernel, stdlib, and compiler applications are by
default "sticky", meaning that the code server will refuse to
re-load them.

The pre-loaded modules (those that are part of the run-time system
itself, such as 'erlang') are, however, not sticky. They used to be
sticky a long time ago when the pre-loaded modules were part of
the kernel application. Now they are part of the erts application.

Since re-loading a pre-loaded module can be catastrophic (especially
re-loading the 'erlang' module), the pre-loaded modules must be
sticky. Furthermore, it should not be allowed to unstick them.

The sticky_dir/1 test case in code_SUITE is never actually run and
is broken. Rewrite it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Modules in the kernel, stdlib, and compiler applications are by
default "sticky", meaning that the code server will refuse to
re-load them.

The pre-loaded modules (those that are part of the run-time system
itself, such as 'erlang') are, however, not sticky. They used to be
sticky a long time ago when the pre-loaded modules were part of
the kernel application. Now they are part of the erts application.

Since re-loading a pre-loaded module can be catastrophic (especially
re-loading the 'erlang' module), the pre-loaded modules must be
sticky. Furthermore, it should not be allowed to unstick them.

The sticky_dir/1 test case in code_SUITE is never actually run and
is broken. Rewrite it.
</pre>
</div>
</content>
</entry>
<entry>
<title>Teach code:del_path/1 to ignore superfluous slashes</title>
<updated>2014-05-26T13:54:12+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2014-05-26T13:15:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=d8fa3de932d97db3a93520ac30f60045e8a9cef4'/>
<id>d8fa3de932d97db3a93520ac30f60045e8a9cef4</id>
<content type='text'>
The following sequence will NOT leave the code path unchanged:

  code:add_path("/some/app/"),
  .
  .
  .
  code:del_path("/some/app/")

The reason is that code:add_path/1 will normalize the path name
(removing the trailing slash), while code:del_path/1 does not
normalize the path before searching for it in the code path.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following sequence will NOT leave the code path unchanged:

  code:add_path("/some/app/"),
  .
  .
  .
  code:del_path("/some/app/")

The reason is that code:add_path/1 will normalize the path name
(removing the trailing slash), while code:del_path/1 does not
normalize the path before searching for it in the code path.
</pre>
</div>
</content>
</entry>
<entry>
<title>kernel: Fix erts_debug:size/1 to handle Map sizes</title>
<updated>2014-04-30T13:38:02+00:00</updated>
<author>
<name>Björn-Egil Dahlberg</name>
<email>egil@erlang.org</email>
</author>
<published>2014-04-30T13:38:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=ec4111dbef676eba1f9ea8f3d7089e064c14684f'/>
<id>ec4111dbef676eba1f9ea8f3d7089e064c14684f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Store expanded config in application_controller:change_application_data</title>
<updated>2014-04-11T15:29:33+00:00</updated>
<author>
<name>Siri Hansen</name>
<email>siri@erlang.org</email>
</author>
<published>2014-04-11T15:24:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=ef6a9b9b7f7a7c829f524d3f51448d3501c36652'/>
<id>ef6a9b9b7f7a7c829f524d3f51448d3501c36652</id>
<content type='text'>
If the Config given to application_controller:change_application_data
included other config files, it was only expanded for already existing
(loaded) applications. If an upgrade added a new application which had
config data in an included config file, the new application did not
get correct config data.

This is now changed so config data will be expanded for all
applications.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the Config given to application_controller:change_application_data
included other config files, it was only expanded for already existing
(loaded) applications. If an upgrade added a new application which had
config data in an included config file, the new application did not
get correct config data.

This is now changed so config data will be expanded for all
applications.
</pre>
</div>
</content>
</entry>
</feed>
