<commit_before># CocoaUPnP

[![Build Status](https://travis-ci.org/arcam/CocoaUPnP.svg)](https://travis-ci.org/arcam/CocoaUPnP)
[![Coverage Status](https://coveralls.io/repos/arcam/CocoaUPnP/badge.svg)](https://coveralls.io/r/arcam/CocoaUPnP)
[![Pod Version](https://img.shields.io/cocoapods/v/CocoaUPnP.svg)](http://cocoadocs.org/docsets/CocoaUPnP/)

CocoaUPnP is a logical progression of [upnpx](https://github.com/fkuehne/upnpx) - designed to be easy, modern and block-based. It is written in Objective-C and is currently available iOS. Mac OS X compatibility is currently unknown, but we don't see a major reason why this wouldn't work.

## Why not Swift?

There are a few reasons why we didn't opt for Swift for the first version of this library. Firstly, the app we are using this in is entirely Objective-C. We need it written fast, so Objective-C was the way to go. Additionally, the app targets iOS 7, so we are unable to use dynamic libraries generated by [CocoaPods](http://blog.cocoapods.org/CocoaPods-0.36/). Additionally, there was some initial friction with early Swift versions that required a lot of maintenance.

It is highly likely that the library will be ported to Swift at some point, but I am unable to give a specific timeline.  If you want a UPnP library for your Swift project, I can recommend [UPnAtom](https://github.com/master-nevi/UPnAtom/).
<commit_msg>Show codecov badge in README<commit_after># CocoaUPnP

[![Build Status](https://travis-ci.org/arcam/CocoaUPnP.svg)](https://travis-ci.org/arcam/CocoaUPnP)
[![Coverage Status](https://img.shields.io/codecov/c/github/arcam/CocoaUPnP.svg?maxAge=2592000)]()
[![Pod Version](https://img.shields.io/cocoapods/v/CocoaUPnP.svg)](http://cocoadocs.org/docsets/CocoaUPnP/)

CocoaUPnP is a logical progression of [upnpx](https://github.com/fkuehne/upnpx) - designed to be easy, modern and block-based. It is written in Objective-C and is currently available iOS. Mac OS X compatibility is currently unknown, but we don't see a major reason why this wouldn't work.

## Why not Swift?

There are a few reasons why we didn't opt for Swift for the first version of this library. Firstly, the app we are using this in is entirely Objective-C. We need it written fast, so Objective-C was the way to go. Additionally, the app targets iOS 7, so we are unable to use dynamic libraries generated by [CocoaPods](http://blog.cocoapods.org/CocoaPods-0.36/). Additionally, there was some initial friction with early Swift versions that required a lot of maintenance.

It is highly likely that the library will be ported to Swift at some point, but I am unable to give a specific timeline.  If you want a UPnP library for your Swift project, I can recommend [UPnAtom](https://github.com/master-nevi/UPnAtom/).

{'fraction_non_alphanumeric': 0.10227683411637152, 'fraction_numerical': 0.005421033610408385, 'mean_word_length': 4.547094188376754, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 13, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '159476', 'n_tokens_mistral': 933, 'n_tokens_neox': 875, 'n_words': 334}