Skip to content

Commit

Permalink
Rotate release notes as part of the 0.51.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
ponylang-main committed May 29, 2022
1 parent 3e099b3 commit ff5e8c2
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 26 deletions.
26 changes: 26 additions & 0 deletions .release-notes/0.51.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
## Update glibc Linux Docker base image

Previously our glibc Linux Docker images where based on Ubuntu 20.04. They've been updated to use Ubuntu 22.04.

## Update to LLVM 14.0.3

We've updated the LLVM used to build Pony to 14.0.3.

## Don't include debug information in release versions of ponyc

At some point in the past, we turned on an option PONY_ALWAYS_ASSERT when building ponyc and the runtime. The result of this option was to not only turn on all debug assertions, but also, turn on almost all debug code in the runtime and the ponyc compiler.

The inclusion of assertions was great for error reports from users for compiler bugs. However, it was also including code that would make the compiler slower and use more memory. It was also including code that made the runtime slower for all compiled Pony programs.

We've turned off PONY_ALWAYS_ASSERT. Programs will be somewhat faster, the compiler will be a little faster, and the compiler will use a little less memory. In return, if you report a compiler bug, we'll definitely need a minimal reproduction to have any idea what is causing your bug.

## Add prebuilt ponyc binaries for MacOS on Apple Silicon

We've added prebuilt ponyc binaries specifically made to work MacOS Monterey on Apple Silicon. You can install them with ponyup that is now also available for MacOS on Apple Silicon.

## Disable incorrect runtime assert for ASIO thread shutdown.

In a rare race condition, a runtime assertion failure related to destruction of the runtime ASIO thread's message queue could be observed during program termination, causing a program crash instead of graceful termination.

This change removes the invalid runtime assertion for that case, because the invariant it was meant to ensure does not apply or hold for the specific case of terminating the runtime ASIO thread, even though it still holds and is still being tested for the more common case of individual actor terminator.

26 changes: 0 additions & 26 deletions .release-notes/next-release.md
Original file line number Diff line number Diff line change
@@ -1,26 +0,0 @@
## Update glibc Linux Docker base image

Previously our glibc Linux Docker images where based on Ubuntu 20.04. They've been updated to use Ubuntu 22.04.

## Update to LLVM 14.0.3

We've updated the LLVM used to build Pony to 14.0.3.

## Don't include debug information in release versions of ponyc

At some point in the past, we turned on an option PONY_ALWAYS_ASSERT when building ponyc and the runtime. The result of this option was to not only turn on all debug assertions, but also, turn on almost all debug code in the runtime and the ponyc compiler.

The inclusion of assertions was great for error reports from users for compiler bugs. However, it was also including code that would make the compiler slower and use more memory. It was also including code that made the runtime slower for all compiled Pony programs.

We've turned off PONY_ALWAYS_ASSERT. Programs will be somewhat faster, the compiler will be a little faster, and the compiler will use a little less memory. In return, if you report a compiler bug, we'll definitely need a minimal reproduction to have any idea what is causing your bug.

## Add prebuilt ponyc binaries for MacOS on Apple Silicon

We've added prebuilt ponyc binaries specifically made to work MacOS Monterey on Apple Silicon. You can install them with ponyup that is now also available for MacOS on Apple Silicon.

## Disable incorrect runtime assert for ASIO thread shutdown.

In a rare race condition, a runtime assertion failure related to destruction of the runtime ASIO thread's message queue could be observed during program termination, causing a program crash instead of graceful termination.

This change removes the invalid runtime assertion for that case, because the invariant it was meant to ensure does not apply or hold for the specific case of terminating the runtime ASIO thread, even though it still holds and is still being tested for the more common case of individual actor terminator.

0 comments on commit ff5e8c2

Please sign in to comment.