Objective Development:
It shows you each and every Internet connection of all apps on your Mac. And if you don’t like what you see, you simply push the Stop-Button.
[…]
Choose from a curated collection of blocklists covering thousands of ad servers, tracking servers and much more. They are kept up-to-date automatically, for optimal protection of your privacy.
[…]
The network monitoring functionality, including the real-time connection list, traffic diagrams and the animated map view can be used for free!
The full feature set, including connection blocking, extended traffic history time ranges, advanced display and filtering options and more is available as an in-app purchase.
Great idea to make a simplified version of Little Snitch. It’s $13.49/year vs. $69.
Previously:
Update (2023-03-23): See also: Hacker News.
Nate Silva:
The new @littlesnitch Mini blocks and reports in the same way that the original Little Snitch did, but it does this by using blocklists. Like an ad blocker, but for the whole system. I guess that makes it like a proxy, but easier to set up and manage. So far, it’s great.
Would like to hear about the blocklists that people use. I think apps could use a blocklist that isn’t as focused on web browser privacy.
App Subscriptions Little Snitch Mac Mac App macOS 13 Ventura Networking Privacy
Karoy Lorentey (Mastodon):
This change will finally enable widespread use of atomic strong references in Swift code.
[…]
ManagedAtomic
will finally become conditionally Sendable
when its Value
is Sendable
. This has proved to be a constant pain point for users, especially when first trying out the package, or in the simplest production use cases.
[…]
Non-copiable types are quickly approaching, and they are an important step towards modeling synchronization primitives such as atomics as Swift native constructs.
[…]
I expect Swift Atomics 1.2 will introduce Atomic<Value>
soon after the language matures enough to support it, if and when that happens. (I also expect the Standard Library to start providing the same or (similar) construct at that point, eventually replacing the need for this package altogether.)
Previously:
Concurrency Language Design Open Source Programming Swift Concurrency Swift Programming Language
SE-0390:
All currently existing types in Swift are copyable, meaning it is possible
to create multiple identical, interchangeable representations of any value of
the type. However, copyable structs and enums are not a great model for
unique resources. Classes by contrast can represent a unique resource,
since an object has a unique identity once initialized, and only references to
that unique object get copied. However, because the references to the object are
still copyable, classes always demand shared ownership of the resource. This
imposes overhead in the form of heap allocation (since the overall lifetime of
the object is indefinite) and reference counting (to keep track of the number
of co-owners currently accessing the object), and shared access often
complicates or introduces unsafety or additional overhead into an object’s
APIs. Swift does not yet have a mechanism for defining types that
represent unique resources with unique ownership.
[…]
We propose to allow for struct
and enum
types to declare themselves as
noncopyable, using a new syntax for suppressing implied generic constraints,
~Copyable
. Values of noncopyable type always have unique ownership, and
can never be copied (at least, not using Swift’s implicit copy mechanism).
Since values of noncopyable structs and enums have unique identities, they can
also have deinit
declarations, like classes, which run automatically at the
end of the unique instance’s lifetime.
Previously:
Language Design Memory Management Optimization Programming Swift Programming Language