SLXMPPFramework 4.0.4

SLXMPPFramework 4.0.4

TestsTested
LangLanguage Obj-CObjective C
License BSD
ReleasedLast Release Jun 2017
SwiftSwift Version 3.0

Maintained by SomnusLee1988.



 
Depends on:
CocoaLumberjack>= 0
CocoaAsyncSocket~> 7.6.0
KissXML~> 5.2.0
libidn~> 1.33.0
 

  • By
  • Robbie Hanson

XMPPFramework

An XMPP Framework in Objective-C for the Mac and iOS development community.

Abstract

XMPPFramework provides a core implementation of RFC-3920 (the XMPP standard), along with the tools needed to read & write XML. It comes with multiple popular extensions (XEP's), all built atop a modular architecture, allowing you to plug-in any code needed for the job. Additionally the framework is massively parallel and thread-safe. Structured using GCD, this framework performs well regardless of whether it's being run on an old iPhone, or on a 12-core Mac Pro. (And it won't block the main thread... at all)

Install

The minimum deployment target is iOS 8.0 / macOS 10.9 / tvOS 9.0.

Contributing

Pull requests are welcome! If you are planning a larger feature, please open an issue first for community input. Please use modern Objective-C syntax, including nullability annotations and generics. Here's some tips to make the process go more smoothly:

  • Make sure to add any new files to the iOS, macOS, and tvOS targets for XMPPFramework.framework in XMPPFramework.xcodeproj, and ensure any applicable header files are set to public.
  • Please try to write your code in a way that's testable. Using XMPPMockStream makes testing pretty easy. Look at examples in Testing-Shared for inspiration.
  • You will need both CocoaPods and Carthage to work on tests. Run carthage checkout in the root of the repository, and bundle install && bundle exec pod install in the Testing-iOS and Testing-macOS folders.
  • Create your test files to the Testing-Shared folder, and then add them to the iOS, macOS, and tvOS targets in Testing-Carthage/XMPPFrameworkTests.xcodeproj, Testing-macOS/XMPPFrameworkTests.xcworkspace and Testing-iOS/XMPPFrameworkTests.xcworkspace.

Looking to help but don't know where to start?

  • A large portion of the framework is not yet annotated for nullability and generics.
  • Adding more test coverage is always appreciated
  • Modernizing the old Examples projects

Security Issues

If you find a security problem, please do not open a public issue on GitHub. Instead, email one of the maintainers directly:

Wiki:

For more info please take a look at the wiki.

Can't find the answer to your question in any of the wiki articles? Try the mailing list.

Love the project? Wanna buy me a ☕️? (or a 🍺 😀):

donation-bitcoin donation-paypal