Close Menu
  • Home
  • AI
  • Big Data
  • Cloud Computing
  • iOS Development
  • IoT
  • IT/ Cybersecurity
  • Tech
    • Nanotechnology
    • Green Technology
    • Apple
    • Software Development
    • Software Engineering

Subscribe to Updates

Get the latest technology news from Bigteetechhub about IT, Cybersecurity and Big Data.

    What's Hot

    Resolving the spin of sound – Physics World

    March 9, 2026

    Celebrate Data Privacy Day by Applying These Best Practices

    March 9, 2026

    The Satellite IoT Module That Puts Satellite, Cellular, and GNSS in One Tiny Package

    March 9, 2026
    Facebook X (Twitter) Instagram
    Facebook X (Twitter) Instagram
    Big Tee Tech Hub
    • Home
    • AI
    • Big Data
    • Cloud Computing
    • iOS Development
    • IoT
    • IT/ Cybersecurity
    • Tech
      • Nanotechnology
      • Green Technology
      • Apple
      • Software Development
      • Software Engineering
    Big Tee Tech Hub
    Home»iOS Development»Future Updates | Cocoanetics
    iOS Development

    Future Updates | Cocoanetics

    big tee tech hubBy big tee tech hubMarch 9, 2026009 Mins Read
    Share Facebook Twitter Pinterest Copy Link LinkedIn Tumblr Email Telegram WhatsApp
    Follow Us
    Google News Flipboard
    Future Updates | Cocoanetics
    Share
    Facebook Twitter LinkedIn Pinterest Email Copy Link


    Instead of writing blog posts about individual package updates, I think I’ll be changing things up a bit. My agents do a better job than me in summarizing the changes for individual releases, so I will from now on group them together, referencing the release notes on GitHub.

    I am working a lot on a private project for a client at this moment where I am making MCP for all communication. Previously I would have hand-rolled REST API calls with URL sessions and JSON decoding for talking to Google Drive or Parse platform.

    SwiftMCP

    But for this new project I figured I wanted to up the game and use MCP wherever possible. The main advantage is that you have static types and also a back channel that allows me to stream notifications and log events to clients. Also as I explained earlier since I am owning both sides of the MCP communication, all I need to do is to seat up my @MCPServer properly, and the client part gets automatically generated for me.

    Long story short, this forced me to address a couple of shortcomings in SwiftMCP. One such problem was how the Bojour+TCP transport would resolve the server. This was only looking for _mcp._tcp and while I had only a single one that was fine. But then I started having multiple MCP servers on my local machine – my client project daemon as well as the Post daemon – and suddenly my mail room stopped being able to trash processed emails.

    Then I realized that it was connecting to the wrong server. So I enhanced the bonjour advertising to include the server name as well.

    There was another shortcoming of Linux. The only way how I can know if my components would work on Linux are the GitHub actions that compile them for this platform. SwiftMCP on Linux was missing SSE communication for the client side. That’s now been remedied. I’m looking for a time when I will be able to actually deploy my Swift code on Linux platforms.

    And I needed to broadcast log events to all connected MCP clients. So we fixed a problem where each session needed to be made current so that the sending wouldn’t crash with a precondition failure. See the full SwiftMCP 1.1.0 change log for details.

    SwiftMail

    SwiftMail seems to have sparked more interest as I can see from fixes and enhancements being contributed. This component has seen a lot of use on my part as well because it is the core enabler for my Post CLI, which my mail-room agent is using to keep abreast my emails.

    We had completed the capability matrix for the major email servers Gmail, iCloud, Exchange, and Dovecot. And on the software side NIOIMAP and SwiftMail. The features which were in NIOIMAP and most servers, but not yet in SwiftMail very obvious candidates for inclusion.

    A lot of tinkering went into figuring out to observe mail servers over a long time and deal with server-side disconnects and other ways how the postd might crash. Unresolved promises and what not. Thanks to other people’s testing we found quite a few places that needed stabilizing.

    The latest change was to use the primary connection for IDLE and to spin up – and connect – a new connection when a new email comes in. It turns out that establishing such ephermeral connections is actually quick and pain less anyway. See the full SwiftMail 1.2.0 change log for details.

    SwiftText

    One of the functions of SwiftText is the ability to generate HTML and PDFs from markdown. This is also exposed via the swifttest CLI via the render subcommand. HTML is not really editable for humans and PDFs are essentially static printouts also net meant to be edited by mere mortals. Lately I’ve been warming to DOCX – vulgo “Word format”.

    When communicating editable documents with the non-Apple world it is very beneficial to do so with DOCX files. Behind the scenes those are like a strict XML dialect with many parallels to HTML. Because of this I implemented conversion of DOCX to markdown a while ago.

    In the latest version I closed the loop and now you can turn markdown back into DOCX. The ideas is that if you have markdown output from an agent, you can just run it through swifttext and you have a format that the “outside world” can reuse and edit.

    There remains a small area where Linux is behind the world of Apple: the use of WebKit. I am using WebKit to read web pages that have some JavaScript loading or rendering, to wait until the final DOM has been created and then I can pull the HTML and convert it to markdown.

    Another area is that for some invoices that I get by email – looking at you Apple! – I need to save the email as PDF for my accountant. WebKit has a function to “print” a web page into PDF. So there are some availability gates around this code so that SwiftText still builds on Linux.

    The good news for DTCoreText – which is stuck in ancient Objective-C history – is that my agents were able to figure out how to build for Linux and use libxml2 for parsing HTML. With the help of a contributor this part is now fully Swift. It now becomes possible to finally upgrade DTCoreText to full Swift as well. SwiftText has a HTML parser using libxml2 to build a DOM which then is converted to markdown.

    DTCoreText works somewhat differently though. It keeps a stack of elements, but flushes pieces of NSAttributedString into a mutable attributed string. And modern code might want to generated SwiftUI AttributedString from HTML. So would I add this functionality to SwiftText and gate it for Apple platforms? Or would I make a DTCoreText 2 branch that implements those?

    I am leaning towards the latter. The advantage might be that we can migrate the great number of unit tests we have in DTCoreText to Swift Testing and then replacing all with Swift should be an easy exercise … for an agent.

    See the full SwiftText 1.1.0 change log for details.

    Post

    As I have alluded to above the second big driver for updates is my refining and enhacing of Post. For a few days now I am enjoying a more or less Inbox Zero with the mail-room skill I am working on. This archives markdown version of all newsletters I get, marks spam emails that were missed by my server-side spam filter and sorts out invoices for my business or private.

    The emails from GitLab or GitHub concerning certain projects of mine get reported to Discord threads of the same name. So if a CI action on GitHub fails, I see it in the main thread about it. Same goes for comments to PRs and all other kinds of notifications.

    Received a comment on a SwiftMail PR in the #SwiftMail Discord thread

    The main function that enables this is that Post can call a script whenever a new mail arrives. This script gets a JSON representation of the most important meta info about the email as well as a markdown representation…. I’ll stop myself here from revealing too much more, because this warrants a blog post of its own when I am ready to release the OpenClaw skill to the public.

    Back to Post now. My accountant managed to crash Post by sending me an email that had a single

    containing 157 more levels, which produced a stack overflow trying to convert it to markdown. So I addressed that by flattening such ludicrious hierarchies. Then there were some issues with quoted printable decoding and passing the wrong charset into libxml2 causing messed up german special characters.

    Agents are able to create draft emails from markdown. Post turns the markdown into nice HTML for the main body and keeps the markdown as the plain text version. That needed some improvements. There’s also support for replying to – and quoting – a message. That’s been there for a while but it’s maturing nicely. Soon you will be able to say: “draft a reply to this new email from x, comment on the individual points and attach the latest PR as PDF”

    And finally, most of the changes were ease-of-use improvements. Like for example I wanted to store invoice with a certain format like Apple_123123123123_20260513.pdf. Previously I had to download the file with its original name to a temp folder, find the file and then rename it. Now uniformly you can use the --output option for specifying a folder or file name. In the former case the original file name is used, in the latter the specified file name.

    Read more in the full Post 1.2.0 release notes.

    Conclusion

    Me and my agent team are very busy these days, but – honestly – the greatest reward is to get questions, bug reports or even full pull requests from people who like to build on my OSS. It feels incredibly validating to feel some interest for a labor of love.

    On the OpenClaw front, I have nothing new to report, Peter Steinberger stubbornly ignored an X DM, a personal email, my email to the OpenClaw contributor address, another X DM and me publicly venting. This level of ignoring me can no longer be accidental. What have I done wrong to not even get any response?

    A little pick-me-up came – how would have ever expected that – via LinkedIn…

    image 9

    Their loss is your gain! So on a positive note, I have a lot to do these days anyways, and OpenClaw doesn’t want my help, then I’ll put my energy into more rewarding areas, like the ones I mentioned in this here article.

    Like this:

    Like Loading...

    Related


    Tagged as: Post, SwiftMail, SwiftMCP, SwiftText

    Categories: Updates




    Source link

    Cocoanetics Future Updates
    Follow on Google News Follow on Flipboard
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Copy Link
    tonirufai
    big tee tech hub
    • Website

    Related Posts

    iOS framework build fails with google_maps_flutter ^2.14.2 when running flutter build ios-framework

    March 8, 2026

    ios – Putting 2 existing pdf pages side by side (half size) in a new pdf without loosing resolution

    March 7, 2026

    iOS 26 Chrome bottom gap issue: position: fixed overlay doesn’t cover full height during WooCommerce AJAX add to cart (Flatsome Theme)

    March 6, 2026
    Add A Comment
    Leave A Reply Cancel Reply

    Editors Picks

    Resolving the spin of sound – Physics World

    March 9, 2026

    Celebrate Data Privacy Day by Applying These Best Practices

    March 9, 2026

    The Satellite IoT Module That Puts Satellite, Cellular, and GNSS in One Tiny Package

    March 9, 2026

    The “Data Center Rebellion” Is Here – O’Reilly

    March 9, 2026
    About Us
    About Us

    Welcome To big tee tech hub. Big tee tech hub is a Professional seo tools Platform. Here we will provide you only interesting content, which you will like very much. We’re dedicated to providing you the best of seo tools, with a focus on dependability and tools. We’re working to turn our passion for seo tools into a booming online website. We hope you enjoy our seo tools as much as we enjoy offering them to you.

    Don't Miss!

    Resolving the spin of sound – Physics World

    March 9, 2026

    Celebrate Data Privacy Day by Applying These Best Practices

    March 9, 2026

    Subscribe to Updates

    Get the latest technology news from Bigteetechhub about IT, Cybersecurity and Big Data.

      • About Us
      • Contact Us
      • Disclaimer
      • Privacy Policy
      • Terms and Conditions
      © 2026 bigteetechhub.All Right Reserved

      Type above and press Enter to search. Press Esc to cancel.