├── .gitattributes ├── .gitignore ├── .travis.yml ├── AUTHORS ├── Cronet.podspec ├── Example ├── Cronet.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── Cronet-Example.xcscheme ├── Cronet.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist ├── Cronet │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── CNAppDelegate.h │ ├── CNAppDelegate.m │ ├── CNViewController.h │ ├── CNViewController.m │ ├── Cronet-Info.plist │ ├── Cronet-Prefix.pch │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m ├── Podfile ├── Podfile.lock └── Tests │ ├── Tests-Info.plist │ ├── Tests-Prefix.pch │ ├── Tests.m │ └── en.lproj │ └── InfoPlist.strings ├── Frameworks └── .gitkeep ├── LICENSE ├── README.md ├── VERSION ├── _Pods.xcodeproj ├── build_framework.sh ├── create_all_current_releases.sh └── create_release.sh /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/akshetpandey/Cronet.framework/775e766ecd089296b1647c42f317348873b48e89/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata/ 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # Add this line if you want to avoid checking in source code from Carthage dependencies. 26 | # Carthage/Checkouts 27 | 28 | Carthage/Build 29 | 30 | # We recommend against adding the Pods directory to your .gitignore. However 31 | # you should judge for yourself, the pros and cons are mentioned at: 32 | # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 33 | # 34 | # Note: if you ignore the Pods directory, make sure to uncomment 35 | # `pod install` in .travis.yml 36 | # 37 | Pods/ 38 | 39 | # Temorary build artifacts go here 40 | tmp 41 | current_chrome_versions.json 42 | Cronet-Static.framework.tar.bz2 43 | Cronet-dynamic.framework.tar.bz2 44 | Cronet.framework.dSYM.tar.bz2 -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * https://www.objc.io/issues/6-build-tools/travis-ci/ 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | os: osx 6 | osx_image: xcode10.3 7 | language: objective-c 8 | cache: cocoapods 9 | podfile: Example/Podfile 10 | before_install: 11 | - brew install git-lfs 12 | - gem install cocoapods # Since Travis is not always on latest version 13 | - pod install --project-directory=Example 14 | before_script: 15 | - git lfs pull 16 | script: 17 | - set -o pipefail && xcodebuild test -enableCodeCoverage YES -workspace Example/Cronet.xcworkspace -scheme Cronet-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty 18 | - pod lib lint 19 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | # Names should be added to this file with this pattern: 2 | # 3 | # For individuals: 4 | # Name 5 | # 6 | # For organizations: 7 | # Organization 8 | # 9 | # See python fnmatch module documentation for more information. 10 | 11 | Aaron Boushley 12 | Aaron Jacobs 13 | Aaron Leventhal 14 | Aaron Randolph 15 | Aaryaman Vasishta 16 | Abdu Ameen 17 | Abhijeet Kandalkar 18 | Abhishek Agarwal 19 | Abhishek Kanike 20 | Abhishek Singh 21 | Adam Bonner 22 | Adam Bujalski 23 | Adam Kallai 24 | Adam Roben 25 | Adam Treat 26 | Adam Yi 27 | Addanki Gandhi Kishor 28 | Adenilson Cavalcanti 29 | Aditya Bhargava 30 | Adrian Belgun 31 | Ahmet Emir Ercin 32 | Ajay Berwal 33 | Ajay Berwal 34 | Ajith Kumar V 35 | Aku Kotkavuo 36 | Aldo Culquicondor 37 | Aleksandar Stojiljkovic 38 | Alex Gabriel 39 | Alex Gartrell 40 | Alex Henrie 41 | Alex Scheele 42 | Alexander Douglas 43 | Alexander Guettler 44 | Alexander Shalamov 45 | Alexander Sulfrian 46 | Alexandre Abreu 47 | Alexandru Chiculita 48 | Alexey Korepanov 49 | Alexey Kuts 50 | Alexey Kuzmin 51 | Alexey Kuznetsov 52 | Alexis Brenon 53 | Alexis La Goutte 54 | Alexis Menard 55 | Alfredo Hernandez 56 | Ali Vathi 57 | Allan Sandfeld Jensen 58 | Alper Çakan 59 | Ambarish Rapte 60 | Amey Jahagirdar 61 | Amit Sarkar 62 | Amogh Bihani 63 | Amos Lim 64 | Amos Lim 65 | Amruth Raj 66 | Amruth Raj 67 | Anand Ratn 68 | Anastasios Cassiotis 69 | anatoly techtonik 70 | Ancil George 71 | Andra Paraschiv 72 | Andrei Borza 73 | Andrei Parvu 74 | Andrei Parvu 75 | Andrew Boyarshin 76 | Andrew Brampton 77 | Andrew Hung 78 | Andrew Jorgensen 79 | Andrew MacPherson 80 | Andrew Tulloch 81 | Anish Patankar 82 | Ankit Kumar 83 | Ankur Verma 84 | Anna Henningsen 85 | Anne Kao 86 | Anssi Hannula 87 | Anthony Halliday 88 | Anton Obzhirov 89 | Antonin Hildebrand 90 | Antonio Gomes 91 | Anuj Kumar Sharma 92 | Arjun Karthik 93 | Arman Ghotb 94 | Armin Burgmeier 95 | Arnaud Mandy 96 | Arnaud Renevier 97 | Arpita Bahuguna 98 | Arthur Lussos 99 | Arun Kulkarni 100 | Arun Kumar 101 | Arun Mankuzhi 102 | Arunoday Sarkar 103 | Arunprasad Rajkumar 104 | Arunprasad Rajkumar 105 | Asami Doi 106 | Ashish Kumar Gupta 107 | Ashlin Joseph 108 | Asish Singh 109 | Attila Dusnoki 110 | Avinaash Doreswamy 111 | Ayush Khandelwal 112 | Azhar Shaikh 113 | Balazs Kelemen 114 | Baul Eun 115 | Behara Mani Shyam Patro 116 | Bem Jones-Bey 117 | Bem Jones-Bey 118 | Ben Coe 119 | Ben Fiola 120 | Ben Karel 121 | Ben Noordhuis 122 | Benedek Heilig 123 | Benjamin Dupont 124 | Benjamin Jemlich 125 | Bernard Cafarelli 126 | Bernhard M. Wiedemann 127 | Bert Belder 128 | Bhagirathi Satpathy 129 | Bhanukrushana Rout 130 | Biljith Jayan 131 | Boaz Sender 132 | Bobby Powers 133 | Branden Archer 134 | Brendan Kirby 135 | Brendan Long 136 | Brian G. Merrell 137 | Brian Konzman, SJ 138 | Brian Luft 139 | Brian Merrell, Novell Inc. 140 | Brian Yip 141 | Bruno Calvignac 142 | Bruno de Oliveira Abinader 143 | Bruno Roy 144 | Bryan Donlan 145 | Bryce Thomas 146 | Burton 147 | Byounghoon Yoon 148 | Byoungkwon Ko 149 | Byungwoo Lee 150 | Caesar Wang 151 | Caio Marcelo de Oliveira Filho 152 | Caitlin Potter 153 | Calvin Mei 154 | Cameron Gutman 155 | Catalin Badea 156 | Cathie Chen 157 | Cem Kocagil 158 | Chakshu Ahuja 159 | Chamal De Silva 160 | Chandan Padhi 161 | Chandra Shekar Vallala 162 | Chandramouli Sanchi 163 | Chang Shu 164 | Changbin Shao 165 | Changjun Yang 166 | ChangSeok Oh 167 | Changwan Hong 168 | Changyeon Kim 169 | Chanho Park 170 | Chansik Yun 171 | Chaobin Zhang 172 | Charles Vaughn 173 | Choongwoo Han 174 | Chris Greene 175 | Chris Harrelson 176 | Chris Nardi 177 | Chris Szurgot 178 | Chris Tserng 179 | Chris Vasselli 180 | Christophe Dumez 181 | Christopher Dale 182 | Claudio DeSouza 183 | Clemens Fruhwirth 184 | Clement Scheelfeldt Skau 185 | Clinton Staley 186 | Connor Pearson 187 | Craig Schlenter 188 | Csaba Osztrogonác 189 | Daegyu Lee 190 | Dai Chunyang 191 | Daiwei Li 192 | Damien Marié 193 | Dan McCombs 194 | Daniel Bevenius 195 | Daniel Bomar 196 | Daniel Carvalho Liedke 197 | Daniel Charles 198 | Daniel Imms 199 | Daniel Johnson 200 | Daniel Lockyer 201 | Daniel Nishi 202 | Daniel Platz 203 | Daniel Shaulov 204 | Daniel Trebbien 205 | Daniel Waxweiler 206 | Dániel Bátyai 207 | Dániel Vince 208 | Darshini KN 209 | Dave Barker 210 | David Benjamin 211 | David Davidovic 212 | David Erceg 213 | David Fox 214 | David Futcher 215 | David Leen 216 | David McAllister 217 | David Michael Barr 218 | David Spellman 219 | David Valachovic 220 | Dax Kelson 221 | Debashish Samantaray 222 | Debug Wang 223 | Deepak Dilip Borade 224 | Deepak Mittal 225 | Deepak Sharma 226 | Deepak Singla 227 | Deokjin Kim 228 | Derek Halman 229 | Devlin Cronin 230 | Diana Suvorova 231 | Diego Ferreiro Val 232 | Dillon Sellars 233 | Divya Bansal 234 | Dominic Farolino 235 | Dominic Jodoin 236 | Dominik Röttsches 237 | Don Woodward 238 | Donghee Na 239 | Dong-hee Na 240 | Dongie Agnir 241 | Dongjun Kim 242 | Dongseong Hwang 243 | Dongwoo Joshua Im 244 | Dongyu Lin 245 | Donna Wu 246 | Douglas F. Turner 247 | Dustin Doloff 248 | Ebrahim Byagowi 249 | Ebrahim Byagowi 250 | Eden Wang 251 | Eduardo Lima (Etrunko) 252 | Eduardo Lima (Etrunko) 253 | Edward Baker 254 | Edward Crossman 255 | Eero Häkkinen 256 | Eero Häkkinen 257 | Egor Starkov 258 | Ehsan Akhgari 259 | Elan Ruusamäe 260 | Ergun Erdogmus 261 | Eric Ahn 262 | Eric Rescorla 263 | Erik Hill 264 | Erik Sjölund 265 | Eriq Augustine 266 | Ernesto Mudu 267 | Etienne Laurin 268 | Eugene Kim 269 | Eugene Sudin 270 | Eunseok Oh 271 | Evan Peterson 272 | Evan Wallace 273 | Evangelos Foutras 274 | Evgeniy Dushistov 275 | Evgeny Agafonchikov 276 | Fabien Tassin 277 | Felix H. Dahlke 278 | Fengrong Fang 279 | Fernando Jiménez Moreno 280 | Finbar Crago 281 | François Beaufort 282 | Francois Kritzinger 283 | Francois Rauch 284 | Frankie Dintino 285 | Franklin Ta 286 | Frédéric Jacob 287 | Frédéric Wang 288 | Fu Junwei 289 | Gabor Rapcsanyi 290 | Gaetano Mendola 291 | Gajendra N 292 | Gajendra Singh 293 | Ganesh Borle 294 | Gao Chun 295 | Gao Chun 296 | Gaurav Dhol 297 | Gautham Banasandra 298 | George Adams 299 | George Joseph 300 | George Liaskos 301 | Georgy Buranov 302 | Gergely Nagy 303 | Getulio Sánchez 304 | Gideon Pyzer 305 | Giovanni Panaro 306 | Girish Kumar M 307 | Gitanshu Mehndiratta 308 | Giuseppe Iuculano 309 | Gnanasekar Somanathan 310 | Gordana Cmiljanovic 311 | Goutham Jagannatha 312 | Graham Yoakum 313 | Greg Visser 314 | Gregory Davis 315 | Grzegorz Czajkowski 316 | Guangzhen Li 317 | Gurpreet Kaur 318 | Gustav Tiger 319 | Gyuyoung Kim 320 | Gzob Qq 321 | Habib Virji 322 | Haeun Kim 323 | Haeun Kim 324 | Haitao Feng 325 | Halley Zhao 326 | Halton Huo 327 | Halton Huo 328 | Hans Hillen 329 | Hao Li 330 | Haojian Wu 331 | Hari Singh 332 | Harpreet Singh Khurana 333 | Harshikesh Kumar 334 | Hassan Salehe Matar 335 | Hautio Kari 336 | Heejin R. Chung 337 | Heeyoun Lee 338 | Henrique Limas 339 | Himanshu Joshi 340 | Holger Kraus 341 | Hong Zheng 342 | Hongbo Min 343 | Horia Olaru 344 | Horia Olaru 345 | Hosung You 346 | Huapeng Li 347 | Huayong Xu 348 | Hugo Holgersson 349 | Hui Wang 350 | Huiwon Jo 351 | Huy Duong 352 | Hwanseung Lee 353 | Hwanseung Lee 354 | Hyemi Shin 355 | HyeockJin Kim 356 | Hyungchan Kim 357 | Hyungwook Lee 358 | Hyungwook Lee 359 | Hyunjun Shin 360 | Hyunjune Kim 361 | Hyunki Baik 362 | Ian Cullinan 363 | Ian Scott 364 | Ibrar Ahmed 365 | Ilia Demianenko 366 | Ilia K 367 | Ilya Konstantinov 368 | Imranur Rahman 369 | Ion Rosca 370 | Irmak Kavasoglu 371 | Isaac Murchie 372 | Isaac Reilly 373 | Ivan Naydonov 374 | Ivan Sham 375 | Jack Bates 376 | Jacob Clark 377 | Jacob Mandelson 378 | Jaehun Lim 379 | Jaehyun Lee 380 | Jaekyeom Kim 381 | Jaemin Seo 382 | Jaeseok Yoon 383 | Jaewon Choi 384 | Jaeyong Bae 385 | Jaime Soriano Pastor 386 | Jake Helfert 387 | Jake Hendy 388 | Jakob Weigert 389 | Jakub Machacek 390 | James Burton 391 | James Choi 392 | James Stanley 393 | James Vega 394 | James Wei 395 | James Willcox 396 | Jan Rucka 397 | Jan Sauer 398 | Janwar Dinata 399 | Jared Shumway 400 | Jared Sohn 401 | Jared Wein 402 | Jari Karppanen 403 | Jay Oster 404 | Jay Soffian 405 | Jeado Ko 406 | Jeffrey C 407 | Jeongeun Kim 408 | Jeongmin Kim 409 | Jeongwoo Park 410 | Jeremy Noring 411 | Jeremy Spiegel 412 | Jeroen Van den Berghe 413 | Jerry Lin 414 | Jesper Storm Bache 415 | Jesse Miller 416 | Jesus Sanchez-Palencia 417 | Jiadong Zhu 418 | Jiajia Qin 419 | Jiajie Hu 420 | Jianjun Zhu 421 | Jianneng Zhong 422 | Jiawei Shao 423 | Jie Chen 424 | Jihoon Chung 425 | Jihoon Chung 426 | Jihun Brent Kim 427 | Jihwan Marc Kim 428 | Jin Yang 429 | Jincheol Jo 430 | Jinfeng Ma 431 | Jing Zhao 432 | Jinglong Zuo 433 | Jingwei Liu 434 | Jingyi Wei 435 | Jinho Bang 436 | Jinsong Fan 437 | Jinwoo Song 438 | Jinyoung Hur 439 | Jitendra Kumar Sahoo 440 | Joachim Bauch 441 | Joachim Bauch 442 | Joanmarie Diggs 443 | Joe Knoll 444 | Joe Thomas 445 | Joel Stanley 446 | Johannes Rudolph 447 | John Kleinschmidt 448 | John Yani 449 | John Yoo 450 | Johnson Lin 451 | Jonathan Frazer 452 | Jonathan Garbee 453 | Jonathan Hacker 454 | Jongdeok Kim 455 | Jongheon Kim 456 | JongKwon Lee 457 | Jongsoo Lee 458 | Joone Hur 459 | Joonghun Park 460 | Jorge Villatoro 461 | Joseph Gentle 462 | Joseph Lolak 463 | Josh Triplett 464 | Josh Triplett 465 | Joshua Lock 466 | Joshua Roesslein 467 | Josué Ratelle 468 | Josyula Venkat Narasimham 469 | Juan Jose Lopez Jaimez 470 | Juhui Lee 471 | Julien Brianceau 472 | Julien Isorce 473 | Julien Racle 474 | Jun Fang 475 | Jun Jiang 476 | Junchao Han 477 | Junghoon Lee 478 | Junghyuk Yoo 479 | JungJik Lee 480 | Jungkee Song 481 | Junmin Zhu 482 | Justin Okamoto 483 | Justin Ribeiro 484 | Jüri Valdmann 485 | Kai Jiang 486 | Kai Köhne 487 | Kai Uwe Broulik 488 | Kal Conley 489 | Kalyan Kondapally 490 | Kamil Jiwa 491 | Kamil Rytarowski 492 | Kangil Han 493 | Kangyuan Shu 494 | Karan Thakkar 495 | Kartikey Bhatt 496 | Kaspar Brand 497 | Kaustubh Atrawalkar 498 | Kaustubh Atrawalkar 499 | Ke He 500 | Keene Pan 501 | Keita Yoshimoto 502 | Keith Chen 503 | Kenneth Rohde Christiansen 504 | Kenneth Strickland 505 | Kenneth Zhou 506 | Keonho Kim 507 | Ketan Goyal 508 | Kevin Gibbons 509 | Kevin Lee Helpingstine 510 | Kevin M. McCormick 511 | Khasim Syed Mohammed 512 | Kihong Kwon 513 | Kihoon Ko 514 | Kihwang Kim 515 | Kim Christensen 516 | Kimberly Hunter 517 | Kingshuk Jana 518 | Kirill Bobyrev 519 | Kirill Ovchinnikov 520 | Klemen Forstnerič 521 | Kodam Nagaraju 522 | Konrad Dzwinel 523 | Krishna Chaitanya 524 | Kristof Kosztyo 525 | Krzysztof Czech 526 | Krzysztof Wolanski 527 | Kui Tan 528 | Kunal Thakar 529 | Kushal Pisavadia 530 | Kwangho Shin 531 | Kyle Nahrgang 532 | Kyle Plumadore 533 | Kyounga Ra 534 | Kyoungdeok Kwon 535 | Kyung Yeol Kim 536 | Kyungtae Kim 537 | Kyungyoung Heo 538 | Lalit Chandivade 539 | Laszlo Gombos 540 | Laszlo Radanyi 541 | Lauren Yeun Kim 542 | Lauri Oherd 543 | Lavar Askew 544 | Legend Lee 545 | Leith Bade 546 | Lenny Khazan 547 | Leo Wolf 548 | Leon Han 549 | Leung Wing Chung 550 | Li Yin 551 | Lidwine Genevet 552 | Lin Sun 553 | Lingyun Cai 554 | Lionel Landwerlin 555 | Lizhi Fan 556 | Loo Rong Jie 557 | Lorenzo Stoakes 558 | Lu Guanqun 559 | Luca Di Domenico 560 | Lucie Brozkova 561 | Luiz Von Dentz 562 | Luka Dojcilovic 563 | Luke Inman-Semerau 564 | Luke Zarko 565 | Luoxi Pan 566 | Maarten Lankhorst 567 | Magnus Danielsson 568 | Mahesh Kulkarni 569 | Mahesh Machavolu 570 | Maksim Kolesin 571 | Maksim Sisov 572 | Malcolm Wang 573 | Mallikarjuna Rao V 574 | Manish Chhajer 575 | Manish Jethani 576 | Manojkumar Bhosale 577 | Manuel Braun 578 | Mao Yujie 579 | Mao Yujie 580 | Marc des Garets 581 | Marcin Wiacek 582 | Marco Rodrigues 583 | Mario Pistrich 584 | Mario Sanchez Prada 585 | Mariusz Mlynski 586 | Mark Hahnenberg 587 | Mark Seaborn 588 | Martijn Croonen 589 | Martin Bednorz 590 | Martin Rogalla 591 | Martina Kollarova 592 | Masahiro Yado 593 | Masaru Nishida 594 | Matej Knopp 595 | Matheus Bratfisch 596 | Mathias Bynens 597 | Mathieu Meisser 598 | Matt Arpidone 599 | Matt Strum 600 | Matt Zeunert 601 | Matthew Bauer 602 | Matthew Demarest 603 | Matthew Robertson 604 | Matthew Turk 605 | Matthew Willis 606 | Matthias Reitinger 607 | Matthieu Rigolot 608 | Max Perepelitsyn 609 | Max Vujovic 610 | Mayank Gupta 611 | Mayur Kankanwadi 612 | Md Abdullah Al Alamin 613 | Md. Hasanur Rashid 614 | Md Jobed Hossain 615 | Md Sami Uddin 616 | Michael Cirone 617 | Michael Gilbert 618 | Michael Lopez 619 | Michael Morrison 620 | Michael Müller 621 | Michael Schechter 622 | Michaël Zasso 623 | Michael Zugelder 624 | Michel Promonet 625 | Mihai Maerean 626 | Mihai Tica 627 | Mihai Tica 628 | Mike Pennisi 629 | Mike Tilburg 630 | Mikhail Pozdnyakov 631 | Milko Leporis 632 | Milton Chiang 633 | Minggang Wang 634 | Mingmin Xie 635 | Minjeong Lee 636 | Minseok Koo 637 | Minsoo Max Koo 638 | Miran Karic 639 | Mirela Budaes 640 | Mirela Budaes 641 | Miyoung Shin 642 | Mohamed I. Hammad 643 | Mohamed Mansour 644 | Mohammad Azam 645 | Mohammed Wajahat Ali Siddiqui 646 | Mohan Reddy 647 | Mohit Bhalla 648 | Momoko Hattori 649 | Mostafa Sedaghat joo 650 | Mrunal Kapade 651 | Myeongjin Cho 652 | Myles C. Maxfield 653 | Myung-jong Kim 654 | Nagarajan Narayanan 655 | Nagarjuna Atluri 656 | Naiem Shaik 657 | Naoki Takano 658 | Naveen Bobbili 659 | Naveen Bobbili 660 | Naveen Kumar Devaraj 661 | Naveen Kumar S G 662 | Nayan Kumar K 663 | Neal Gompa 664 | Ned Williamson 665 | Nedeljko Babic 666 | Nikhil Bansal 667 | Nikhil Sahni 668 | Nikita Ofitserov 669 | Niklas Hambüchen 670 | Niklas Schulze 671 | Nikola Kovacs 672 | Nils Schneider 673 | Nils Schneider 674 | Ningxin Hu 675 | Nitish Mehrotra 676 | Noj Vek 677 | Nolan Cao 678 | Oleksii Kadurin 679 | Oliver Dunk 680 | Olli Raula (Old name Olli Syrjälä) 681 | Omar Sandoval 682 | Pan Deng 683 | Parag Radke 684 | Paritosh Kumar 685 | Patrasciuc Sorin Cristian 686 | Patrick Chan 687 | Patrick Kettner 688 | Patrick Riordan 689 | Patrick Stein 690 | Patrik Ackland 691 | Paul Adolph 692 | Paul Kehrer 693 | Paul Lind 694 | Paul Nettleship 695 | Paul Robinson 696 | Paul Roskell 697 | Paul Sapunaru 698 | Paul Wicks 699 | Pavan Kumar Emani 700 | Pavel Golikov 701 | Pavel Ivanov 702 | Pawel Forysiuk 703 | Paweł Hajdan jr 704 | Payal Pandey 705 | Peng Hu 706 | Peng Jiang 707 | Peng Xinchao 708 | Peter Bright 709 | Peter Brophy 710 | Peter Collingbourne 711 | Peter Gal 712 | Peter Griffin 713 | Peter Molnar 714 | Peter Snyder 715 | Peter Wong 716 | Philip Hanson 717 | Philipp Hancke 718 | Philipp Hancke 719 | Philippe Beauchamp 720 | Philippe Beaudoin 721 | PhistucK 722 | Pierre Neter 723 | Pierre-Antoine LaFayette 724 | Po-Chun Chang 725 | Pramod Begur Srinath 726 | Pranay Kumar 727 | Pranjal Jumde 728 | Prashant Hiremath 729 | Prashant Nevase 730 | Prashant Patil 731 | Praveen Akkiraju 732 | Preeti Nayak 733 | Pritam Nikam 734 | Puttaraju R 735 | Qi Yang 736 | Qiankun Miao 737 | Qing Zhang 738 | Radu Stavila 739 | Radu Velea 740 | Rafael Antognolli 741 | Raghavendra Ghatage 742 | Raghu Ram Nagaraj 743 | Rahul Gupta 744 | Rajneesh Rana 745 | Raman Tenneti 746 | Ramkumar Gokarnesan 747 | Ramkumar Ramachandra 748 | Ramya Vadlamudi 749 | Randy Posynick 750 | Raphael Kubo da Costa 751 | Raul Tambre 752 | Raveendra Karu 753 | Ravi Nanjundappa 754 | Ravi Phaneendra Kasibhatla 755 | Ravi Phaneendra Kasibhatla 756 | Raviraj Sitaram 757 | Réda Housni Alaoui 758 | Refael Ackermann 759 | Renata Hodovan 760 | Rene Bolldorf 761 | Rene Ladan 762 | Richard Baranyi 763 | Richard Li 764 | Rijubrata Bhaumik 765 | Riku Voipio 766 | Rob Buis 767 | Rob Wu 768 | Robert Bear Travis 769 | Robert Bear Travis 770 | Robert Bradford 771 | Robert Goldberg 772 | Robert Hogan 773 | Robert Nagy 774 | Robert Sesek 775 | Roland Takacs 776 | Romain Pokrzywka 777 | Rosen Dash 778 | Rosen Dash 779 | Ross Kirsling 780 | ruben 781 | Ruben Bridgewater 782 | Ruben Terrazas 783 | Rufus Hamade 784 | Ruiyi Luo 785 | Ryan Ackley 786 | Ryan Norton 787 | Ryan Sleevi 788 | Ryan Yoakum 789 | Ryuan Choi 790 | Saikrishna Arcot 791 | Sajal Khandelwal 792 | Salvatore Iovene 793 | Sam Larison 794 | Sam McDonald 795 | Samuel Attard 796 | Sanggi Hong 797 | Sanghee Lee 798 | Sanghyun Park 799 | Sanghyup Lee 800 | Sangjoon Je 801 | Sangseok Jang 802 | Sangwoo Ko 803 | Sangwoo Ko 804 | Sanjoy Pal 805 | Sanjoy Pal 806 | Sanne Wouda 807 | Santosh Mahto 808 | Sarath Singapati 809 | Sarath Singapati 810 | Sarath Singapati 811 | Saravanan KR 812 | Sathish Kuppuswamy 813 | Satoshi Matsuzaki 814 | Satyajit Sahu 815 | Sayan Nayak 816 | Scott D Phillips 817 | Sean Bryant 818 | Sean DuBois 819 | Sebastian Amend 820 | Sebastian Krzyszkowiak 821 | Seo Sanghyeon 822 | Seokju Kwon 823 | SeongTae Jeong 824 | Sergey Kipet 825 | Sergey Putilin 826 | Sergey Shekyan 827 | Sergio Carlos Morales Angeles 828 | Sergiy Belozorov 829 | Seshadri Mahalingam 830 | Seungkyu Lee 831 | Sevan Janiyan 832 | Shahriar Rostami 833 | Shail Singhal 834 | Shane Hansen 835 | ShankarGanesh K 836 | Shanmuga Pandi M 837 | Shaobo Yan 838 | Shashi Kumar 839 | Shawn Anastasio 840 | Shelley Vohr 841 | Shen Yu 842 | Sherry Mou 843 | Shez Baig 844 | Shigeki Ohtsu 845 | Shiliu Wang 846 | Shiliu Wang 847 | Shilpa Shri 848 | Shirish S 849 | Shiva Kumar 850 | Shivakumar JM 851 | Shouqun Liu 852 | Shouqun Liu 853 | Shreeram Kushwaha 854 | Shreyas Gopal 855 | Shreyas VA 856 | Shubham Agrawal 857 | Siba Samal 858 | Siddharth Bagai 859 | Siddharth Shankar 860 | Simon Arlott 861 | Simon La Macchia 862 | Siva Kumar Gunturi 863 | Sohan Jyoti Ghosh 864 | Sohan Jyoti Ghosh 865 | Song YeWen 866 | Sooho Park 867 | Soojung Choi 868 | Soorya R 869 | Soren Dreijer 870 | Sreerenj Balachandran 871 | Srirama Chandra Sekhar Mogali 872 | Staphany Park 873 | Stephen Searles 874 | Steve Sanders 875 | Steven Pennington 876 | Steven Roussey 877 | Subrahmanya Praveen Munukutla 878 | Suchit Agrawal 879 | Sudarsana Babu Nagineni 880 | Sudarshan Parthasarathy 881 | Sujae Jo 882 | Sujith S S 883 | Sunchang Li 884 | Suneel Kota 885 | Sungguk Lim 886 | Sungmann Cho 887 | Sungmann Cho 888 | Sunil Ratnu 889 | Sunitha Srivatsa 890 | Suvanjan Mukherjee 891 | Suyambulingam R M 892 | Suyash Sengar 893 | Swarali Raut 894 | Swati Jaiswal 895 | Sylvain Zimmer 896 | Sylvestre Ledru 897 | Synthia Islam 898 | Szabolcs David 899 | Szymon Piechowicz 900 | Taeheon Kim 901 | Taehoon Lee 902 | Takashi Fujita 903 | Takeshi Kurosawa 904 | Tanay Chowdhury 905 | Tanvir Rizvi 906 | Tapu Kumar Ghose 907 | Taylor Price 908 | Ted Kim 909 | Ted Vessenes 910 | Teodora Novkovic 911 | Thiago Farina 912 | Thiago Marcos P. Santos 913 | Thomas Butter 914 | Thomas Conti 915 | Thomas White 916 | Tiago Vignatti 917 | Tibor Dusnoki 918 | Tim Ansell 919 | Tim Niederhausen 920 | Timo Gurr 921 | Timo Reimann 922 | Timo Witte 923 | Ting Shao 924 | Tom Callaway 925 | Tom Harwood 926 | Tomas Popela 927 | Torsten Kurbad 928 | Trent Willis 929 | Trevor Perrin 930 | Tripta Gupta 931 | U. Artie Eoff 932 | Umar Hansa 933 | Upendra Gowda 934 | Uzair Jaleel 935 | Vadim Gorbachev 936 | Vaibhav Agrawal 937 | Valentin Ilie 938 | Vamshikrishna Yellenki 939 | Vani Hegde 940 | Varun Chowdhary Paturi 941 | Vartul Katiyar 942 | Vedran Šajatović 943 | Vernon Tang 944 | Viatcheslav Ostapenko 945 | Victor Costan 946 | Viet-Trung Luu 947 | Vinay Anantharaman 948 | Vipul Bhasin 949 | Visa Putkinen 950 | Vishal Bhatnagar 951 | Vitaliy Kharin 952 | Vivek Galatage 953 | Volker Sorge 954 | Waihung Fu 955 | Wanming Lin 956 | Wei Li 957 | WenSheng He 958 | Wesley Lancel 959 | Wesley Wigham 960 | Will Hirsch 961 | Will Shackleton 962 | William Xie 963 | Xiang Long 964 | Xiangze Zhang 965 | Xiaofeng Zhang 966 | Xiaolei Yu 967 | Xiaoshu Zhang 968 | Xiaoyin Liu 969 | Xinchao He 970 | Xing Zhang 971 | Xinghua Cao 972 | Xu Samuel 973 | Xu Xing 974 | Xuefei Ren 975 | Xueqing Huang 976 | Xun Sun 977 | Xunran Ding 978 | Xunran Ding 979 | Yael Aharon 980 | Yan Wang 981 | Yang Gu 982 | Yannic Bonenberger 983 | Yarin Kaul 984 | Yash Vempati 985 | Ye Liu 986 | Yeol Park 987 | Yeonwoo Jo 988 | Yi Shen 989 | Yi Sun 990 | Yichen Jiang 991 | Yifei Yu 992 | Yizhou Jiang 993 | Yoav Weiss 994 | Yoav Zilberberg 995 | Yong Shin 996 | Yong Wang 997 | Yongha Lee 998 | Yongseok Choi 999 | Yongsheng Zhu 1000 | Yoonjae Cho 1001 | Yoshinori Sano 1002 | Youngho Seo 1003 | Youngjin Choi 1004 | YoungKi Hong 1005 | Youngmin Yoo 1006 | Youngsoo Choi 1007 | Youngsun Suh 1008 | Yuhong Sha 1009 | Yumikiyo Osanai 1010 | Yunchao He 1011 | Yupei Lin 1012 | Yupei Wang 1013 | Yura Yaroshevich 1014 | Yuri Gorobets 1015 | Yuriy Taraday 1016 | Yuvanesh Natarajan 1017 | Zeno Albisser 1018 | Zeqin Chen 1019 | Zhaoze Zhou 1020 | Zheda Chen 1021 | Zheng Chuang 1022 | Zhengkun Li 1023 | Zhenyu Liang 1024 | Zhenyu Shan 1025 | Zhifei Fang 1026 | Zhuoyu Qian 1027 | Ziran Sun 1028 | Zoltan Herczeg 1029 | Zoltan Kuscsik 1030 | Zsolt Borbely 1031 | 方觉 (Fang Jue) 1032 | Rajesh Mahindra 1033 | Yuan-Pin Yu 1034 | Vinoth Chandar 1035 | Zheng Xu 1036 | Junsong Li 1037 | 1038 | ACCESS CO., LTD. <*@access-company.com> 1039 | Akamai Inc. <*@akamai.com> 1040 | ARM Holdings <*@arm.com> 1041 | BlackBerry Limited <*@blackberry.com> 1042 | Bocoup <*@bocoup.com> 1043 | Canonical Limited <*@canonical.com> 1044 | Cloudflare, Inc. <*@cloudflare.com> 1045 | Code Aurora Forum <*@codeaurora.org> 1046 | Collabora Limited <*@collabora.com> 1047 | Comodo CA Limited 1048 | Cosium <*@cosium.com> 1049 | Duck Duck Go, Inc. <*@duckduckgo.com> 1050 | Endless Mobile, Inc. <*@endlessm.com> 1051 | Estimote, Inc. <*@estimote.com> 1052 | Facebook, Inc. <*@fb.com> 1053 | Facebook, Inc. <*@oculus.com> 1054 | Google Inc. <*@google.com> 1055 | Hewlett-Packard Development Company, L.P. <*@hp.com> 1056 | IBM Inc. <*@*.ibm.com> 1057 | IBM Inc. <*@ibm.com> 1058 | Igalia S.L. <*@igalia.com> 1059 | Imagination Technologies Limited <*@imagination.corp-partner.google.com> 1060 | Impossible Dreams Network <*@impossibledreams.net> 1061 | Intel Corporation <*@intel.com> 1062 | LG Electronics, Inc. <*@lge.com> 1063 | Loongson Technology Corporation Limited. <*@loongson.cn> 1064 | Macadamian <*@macadamian.com> 1065 | Mediatek <*@mediatek.com> 1066 | Microsoft <*@microsoft.com> 1067 | MIPS Technologies, Inc. <*@mips.com> 1068 | Mozilla Corporation <*@mozilla.com> 1069 | Neverware Inc. <*@neverware.com> 1070 | NIKE, Inc. <*@nike.com> 1071 | NVIDIA Corporation <*@nvidia.com> 1072 | Opera Software ASA <*@opera.com> 1073 | Optical Tone Ltd <*@opticaltone.com> 1074 | Pengutronix e.K. <*@pengutronix.de> 1075 | Rakuten Kobo Inc. <*@kobo.com> 1076 | Rakuten Kobo Inc. <*@rakuten.com> 1077 | Seznam.cz, a.s. <*@firma.seznam.cz> 1078 | Slack Technologies Inc. <*@slack-corp.com> 1079 | Spotify AB <*@spotify.com> 1080 | Tableau Software <*@tableau.com> 1081 | TeamSpeak Systems GmbH <*@teamspeak.com> 1082 | The Chromium Authors <*@chromium.org> 1083 | The MathWorks, Inc. 1084 | Torchmobile Inc. 1085 | Upwork <*@cloud.upwork.com> 1086 | Venture 3 Systems LLC <*@venture3systems.com> 1087 | Vewd Software AS <*@vewd.com> 1088 | Vivaldi Technologies AS <*@vivaldi.com> 1089 | Yandex LLC <*@yandex-team.ru> 1090 | Make Positive Provar Limited <*@provartesting.com> 1091 | -------------------------------------------------------------------------------- /Cronet.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = 'Cronet' 3 | s.version = 'MASTER_BRANCH' 4 | s.summary = 'Cronet is the networking stack of Chromium put into a library for use on mobile' 5 | 6 | s.description = <<-DESC 7 | Cronet is the networking stack of Chromium put into a library for use on mobile. 8 | This is the same networking stack that is used in the Chrome browser by over a billion people. 9 | It offers an easy-to-use, high performance, standards-compliant, and secure way to perform HTTP requests. 10 | Cronet has support for both Android and iOS 11 | DESC 12 | 13 | s.homepage = 'https://chromium.googlesource.com/chromium/src/+/master/components/cronet' 14 | s.license = { :type => 'BSD', :file => 'LICENSE' } 15 | s.authors = { 'akshetpandey' => 'akshet@pocketgems.com', 'Chromium Developers' => 'net-dev@chromium.org' } 16 | s.source = { :git => 'https://github.com/akshetpandey/Cronet.framework.git', :tag => "v#{s.version.to_s}" } 17 | s.platform = :ios, '9.0' 18 | s.requires_arc = true 19 | 20 | s.vendored_frameworks = 'Frameworks/Cronet.framework' 21 | s.frameworks = 'SystemConfiguration' 22 | end 23 | -------------------------------------------------------------------------------- /Example/Cronet.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 13DB1C1C414C28A789130488 /* Pods_Cronet_Example.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E00947C951AECA3AC458B3B4 /* Pods_Cronet_Example.framework */; }; 11 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 12 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; }; 13 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 14 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F596195388D20070C39A /* InfoPlist.strings */; }; 15 | 6003F59A195388D20070C39A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F599195388D20070C39A /* main.m */; }; 16 | 6003F59E195388D20070C39A /* CNAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F59D195388D20070C39A /* CNAppDelegate.m */; }; 17 | 6003F5A7195388D20070C39A /* CNViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5A6195388D20070C39A /* CNViewController.m */; }; 18 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A8195388D20070C39A /* Images.xcassets */; }; 19 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F5AF195388D20070C39A /* XCTest.framework */; }; 20 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 21 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 22 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; }; 23 | 6003F5BC195388D20070C39A /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5BB195388D20070C39A /* Tests.m */; }; 24 | 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */; }; 25 | 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 873B8AEA1B1F5CCA007FD442 /* Main.storyboard */; }; 26 | 8C520A4873E585A5D219A094 /* Pods_Cronet_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 14BD667FB5A8F9F3791069C0 /* Pods_Cronet_Tests.framework */; }; 27 | /* End PBXBuildFile section */ 28 | 29 | /* Begin PBXContainerItemProxy section */ 30 | 6003F5B3195388D20070C39A /* PBXContainerItemProxy */ = { 31 | isa = PBXContainerItemProxy; 32 | containerPortal = 6003F582195388D10070C39A /* Project object */; 33 | proxyType = 1; 34 | remoteGlobalIDString = 6003F589195388D20070C39A; 35 | remoteInfo = Cronet; 36 | }; 37 | /* End PBXContainerItemProxy section */ 38 | 39 | /* Begin PBXFileReference section */ 40 | 14BD667FB5A8F9F3791069C0 /* Pods_Cronet_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Cronet_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 41 | 37CA3DC2C03F4B523B1CFA2F /* Pods-Cronet_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Cronet_Example.debug.xcconfig"; path = "Target Support Files/Pods-Cronet_Example/Pods-Cronet_Example.debug.xcconfig"; sourceTree = ""; }; 42 | 4A29BD701DCC6EBB3CD3F0CB /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 43 | 6003F58A195388D20070C39A /* Cronet_Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Cronet_Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; 44 | 6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 45 | 6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 46 | 6003F591195388D20070C39A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 47 | 6003F595195388D20070C39A /* Cronet-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Cronet-Info.plist"; sourceTree = ""; }; 48 | 6003F597195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 49 | 6003F599195388D20070C39A /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 50 | 6003F59B195388D20070C39A /* Cronet-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Cronet-Prefix.pch"; sourceTree = ""; }; 51 | 6003F59C195388D20070C39A /* CNAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNAppDelegate.h; sourceTree = ""; }; 52 | 6003F59D195388D20070C39A /* CNAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNAppDelegate.m; sourceTree = ""; }; 53 | 6003F5A5195388D20070C39A /* CNViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CNViewController.h; sourceTree = ""; }; 54 | 6003F5A6195388D20070C39A /* CNViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CNViewController.m; sourceTree = ""; }; 55 | 6003F5A8195388D20070C39A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 56 | 6003F5AE195388D20070C39A /* Cronet_Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Cronet_Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 57 | 6003F5AF195388D20070C39A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 58 | 6003F5B7195388D20070C39A /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Tests-Info.plist"; sourceTree = ""; }; 59 | 6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 60 | 6003F5BB195388D20070C39A /* Tests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = ""; }; 61 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = ""; }; 62 | 61CCA22CD1A184BECABF422B /* Pods-Cronet_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Cronet_Example.release.xcconfig"; path = "Target Support Files/Pods-Cronet_Example/Pods-Cronet_Example.release.xcconfig"; sourceTree = ""; }; 63 | 7115649A55F1A292AA00D2BF /* Pods-Cronet_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Cronet_Tests.release.xcconfig"; path = "Target Support Files/Pods-Cronet_Tests/Pods-Cronet_Tests.release.xcconfig"; sourceTree = ""; }; 64 | 71719F9E1E33DC2100824A3D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 65 | 873B8AEA1B1F5CCA007FD442 /* Main.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = Main.storyboard; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 66 | AA3FC821047A4DDCB819FCCA /* Pods-Cronet_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Cronet_Tests.debug.xcconfig"; path = "Target Support Files/Pods-Cronet_Tests/Pods-Cronet_Tests.debug.xcconfig"; sourceTree = ""; }; 67 | DCDA42B2B58596322861C2E8 /* Cronet.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Cronet.podspec; path = ../Cronet.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 68 | E00947C951AECA3AC458B3B4 /* Pods_Cronet_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Cronet_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 69 | EAB41F05218985CBB022EDF9 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 70 | /* End PBXFileReference section */ 71 | 72 | /* Begin PBXFrameworksBuildPhase section */ 73 | 6003F587195388D20070C39A /* Frameworks */ = { 74 | isa = PBXFrameworksBuildPhase; 75 | buildActionMask = 2147483647; 76 | files = ( 77 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */, 78 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */, 79 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */, 80 | 13DB1C1C414C28A789130488 /* Pods_Cronet_Example.framework in Frameworks */, 81 | ); 82 | runOnlyForDeploymentPostprocessing = 0; 83 | }; 84 | 6003F5AB195388D20070C39A /* Frameworks */ = { 85 | isa = PBXFrameworksBuildPhase; 86 | buildActionMask = 2147483647; 87 | files = ( 88 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */, 89 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */, 90 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */, 91 | 8C520A4873E585A5D219A094 /* Pods_Cronet_Tests.framework in Frameworks */, 92 | ); 93 | runOnlyForDeploymentPostprocessing = 0; 94 | }; 95 | /* End PBXFrameworksBuildPhase section */ 96 | 97 | /* Begin PBXGroup section */ 98 | 6003F581195388D10070C39A = { 99 | isa = PBXGroup; 100 | children = ( 101 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */, 102 | 6003F593195388D20070C39A /* Example for Cronet */, 103 | 6003F5B5195388D20070C39A /* Tests */, 104 | 6003F58C195388D20070C39A /* Frameworks */, 105 | 6003F58B195388D20070C39A /* Products */, 106 | 9872631A449C3CCB3C605BB6 /* Pods */, 107 | ); 108 | sourceTree = ""; 109 | }; 110 | 6003F58B195388D20070C39A /* Products */ = { 111 | isa = PBXGroup; 112 | children = ( 113 | 6003F58A195388D20070C39A /* Cronet_Example.app */, 114 | 6003F5AE195388D20070C39A /* Cronet_Tests.xctest */, 115 | ); 116 | name = Products; 117 | sourceTree = ""; 118 | }; 119 | 6003F58C195388D20070C39A /* Frameworks */ = { 120 | isa = PBXGroup; 121 | children = ( 122 | 6003F58D195388D20070C39A /* Foundation.framework */, 123 | 6003F58F195388D20070C39A /* CoreGraphics.framework */, 124 | 6003F591195388D20070C39A /* UIKit.framework */, 125 | 6003F5AF195388D20070C39A /* XCTest.framework */, 126 | E00947C951AECA3AC458B3B4 /* Pods_Cronet_Example.framework */, 127 | 14BD667FB5A8F9F3791069C0 /* Pods_Cronet_Tests.framework */, 128 | ); 129 | name = Frameworks; 130 | sourceTree = ""; 131 | }; 132 | 6003F593195388D20070C39A /* Example for Cronet */ = { 133 | isa = PBXGroup; 134 | children = ( 135 | 6003F59C195388D20070C39A /* CNAppDelegate.h */, 136 | 6003F59D195388D20070C39A /* CNAppDelegate.m */, 137 | 873B8AEA1B1F5CCA007FD442 /* Main.storyboard */, 138 | 6003F5A5195388D20070C39A /* CNViewController.h */, 139 | 6003F5A6195388D20070C39A /* CNViewController.m */, 140 | 71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */, 141 | 6003F5A8195388D20070C39A /* Images.xcassets */, 142 | 6003F594195388D20070C39A /* Supporting Files */, 143 | ); 144 | name = "Example for Cronet"; 145 | path = Cronet; 146 | sourceTree = ""; 147 | }; 148 | 6003F594195388D20070C39A /* Supporting Files */ = { 149 | isa = PBXGroup; 150 | children = ( 151 | 6003F595195388D20070C39A /* Cronet-Info.plist */, 152 | 6003F596195388D20070C39A /* InfoPlist.strings */, 153 | 6003F599195388D20070C39A /* main.m */, 154 | 6003F59B195388D20070C39A /* Cronet-Prefix.pch */, 155 | ); 156 | name = "Supporting Files"; 157 | sourceTree = ""; 158 | }; 159 | 6003F5B5195388D20070C39A /* Tests */ = { 160 | isa = PBXGroup; 161 | children = ( 162 | 6003F5BB195388D20070C39A /* Tests.m */, 163 | 6003F5B6195388D20070C39A /* Supporting Files */, 164 | ); 165 | path = Tests; 166 | sourceTree = ""; 167 | }; 168 | 6003F5B6195388D20070C39A /* Supporting Files */ = { 169 | isa = PBXGroup; 170 | children = ( 171 | 6003F5B7195388D20070C39A /* Tests-Info.plist */, 172 | 6003F5B8195388D20070C39A /* InfoPlist.strings */, 173 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */, 174 | ); 175 | name = "Supporting Files"; 176 | sourceTree = ""; 177 | }; 178 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */ = { 179 | isa = PBXGroup; 180 | children = ( 181 | DCDA42B2B58596322861C2E8 /* Cronet.podspec */, 182 | EAB41F05218985CBB022EDF9 /* README.md */, 183 | 4A29BD701DCC6EBB3CD3F0CB /* LICENSE */, 184 | ); 185 | name = "Podspec Metadata"; 186 | sourceTree = ""; 187 | }; 188 | 9872631A449C3CCB3C605BB6 /* Pods */ = { 189 | isa = PBXGroup; 190 | children = ( 191 | 37CA3DC2C03F4B523B1CFA2F /* Pods-Cronet_Example.debug.xcconfig */, 192 | 61CCA22CD1A184BECABF422B /* Pods-Cronet_Example.release.xcconfig */, 193 | AA3FC821047A4DDCB819FCCA /* Pods-Cronet_Tests.debug.xcconfig */, 194 | 7115649A55F1A292AA00D2BF /* Pods-Cronet_Tests.release.xcconfig */, 195 | ); 196 | path = Pods; 197 | sourceTree = ""; 198 | }; 199 | /* End PBXGroup section */ 200 | 201 | /* Begin PBXNativeTarget section */ 202 | 6003F589195388D20070C39A /* Cronet_Example */ = { 203 | isa = PBXNativeTarget; 204 | buildConfigurationList = 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "Cronet_Example" */; 205 | buildPhases = ( 206 | 53B731B8839E5AC70B0FA290 /* [CP] Check Pods Manifest.lock */, 207 | 6003F586195388D20070C39A /* Sources */, 208 | 6003F587195388D20070C39A /* Frameworks */, 209 | 6003F588195388D20070C39A /* Resources */, 210 | 0AAE3C9051BD0FB8C3C8D6A2 /* [CP] Embed Pods Frameworks */, 211 | ); 212 | buildRules = ( 213 | ); 214 | dependencies = ( 215 | ); 216 | name = Cronet_Example; 217 | productName = Cronet; 218 | productReference = 6003F58A195388D20070C39A /* Cronet_Example.app */; 219 | productType = "com.apple.product-type.application"; 220 | }; 221 | 6003F5AD195388D20070C39A /* Cronet_Tests */ = { 222 | isa = PBXNativeTarget; 223 | buildConfigurationList = 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Cronet_Tests" */; 224 | buildPhases = ( 225 | 42A073A4CA8A52EF997BDA12 /* [CP] Check Pods Manifest.lock */, 226 | 6003F5AA195388D20070C39A /* Sources */, 227 | 6003F5AB195388D20070C39A /* Frameworks */, 228 | 6003F5AC195388D20070C39A /* Resources */, 229 | ); 230 | buildRules = ( 231 | ); 232 | dependencies = ( 233 | 6003F5B4195388D20070C39A /* PBXTargetDependency */, 234 | ); 235 | name = Cronet_Tests; 236 | productName = CronetTests; 237 | productReference = 6003F5AE195388D20070C39A /* Cronet_Tests.xctest */; 238 | productType = "com.apple.product-type.bundle.unit-test"; 239 | }; 240 | /* End PBXNativeTarget section */ 241 | 242 | /* Begin PBXProject section */ 243 | 6003F582195388D10070C39A /* Project object */ = { 244 | isa = PBXProject; 245 | attributes = { 246 | CLASSPREFIX = CN; 247 | LastUpgradeCheck = 1030; 248 | ORGANIZATIONNAME = akshetpandey; 249 | TargetAttributes = { 250 | 6003F5AD195388D20070C39A = { 251 | TestTargetID = 6003F589195388D20070C39A; 252 | }; 253 | }; 254 | }; 255 | buildConfigurationList = 6003F585195388D10070C39A /* Build configuration list for PBXProject "Cronet" */; 256 | compatibilityVersion = "Xcode 3.2"; 257 | developmentRegion = English; 258 | hasScannedForEncodings = 0; 259 | knownRegions = ( 260 | English, 261 | en, 262 | Base, 263 | ); 264 | mainGroup = 6003F581195388D10070C39A; 265 | productRefGroup = 6003F58B195388D20070C39A /* Products */; 266 | projectDirPath = ""; 267 | projectRoot = ""; 268 | targets = ( 269 | 6003F589195388D20070C39A /* Cronet_Example */, 270 | 6003F5AD195388D20070C39A /* Cronet_Tests */, 271 | ); 272 | }; 273 | /* End PBXProject section */ 274 | 275 | /* Begin PBXResourcesBuildPhase section */ 276 | 6003F588195388D20070C39A /* Resources */ = { 277 | isa = PBXResourcesBuildPhase; 278 | buildActionMask = 2147483647; 279 | files = ( 280 | 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */, 281 | 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */, 282 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 283 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 284 | ); 285 | runOnlyForDeploymentPostprocessing = 0; 286 | }; 287 | 6003F5AC195388D20070C39A /* Resources */ = { 288 | isa = PBXResourcesBuildPhase; 289 | buildActionMask = 2147483647; 290 | files = ( 291 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */, 292 | ); 293 | runOnlyForDeploymentPostprocessing = 0; 294 | }; 295 | /* End PBXResourcesBuildPhase section */ 296 | 297 | /* Begin PBXShellScriptBuildPhase section */ 298 | 0AAE3C9051BD0FB8C3C8D6A2 /* [CP] Embed Pods Frameworks */ = { 299 | isa = PBXShellScriptBuildPhase; 300 | buildActionMask = 2147483647; 301 | files = ( 302 | ); 303 | inputPaths = ( 304 | "${PODS_ROOT}/Target Support Files/Pods-Cronet_Example/Pods-Cronet_Example-frameworks.sh", 305 | "${PODS_ROOT}/../../Frameworks/Cronet.framework", 306 | ); 307 | name = "[CP] Embed Pods Frameworks"; 308 | outputPaths = ( 309 | "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Cronet.framework", 310 | ); 311 | runOnlyForDeploymentPostprocessing = 0; 312 | shellPath = /bin/sh; 313 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Cronet_Example/Pods-Cronet_Example-frameworks.sh\"\n"; 314 | showEnvVarsInLog = 0; 315 | }; 316 | 42A073A4CA8A52EF997BDA12 /* [CP] Check Pods Manifest.lock */ = { 317 | isa = PBXShellScriptBuildPhase; 318 | buildActionMask = 2147483647; 319 | files = ( 320 | ); 321 | inputFileListPaths = ( 322 | ); 323 | inputPaths = ( 324 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 325 | "${PODS_ROOT}/Manifest.lock", 326 | ); 327 | name = "[CP] Check Pods Manifest.lock"; 328 | outputFileListPaths = ( 329 | ); 330 | outputPaths = ( 331 | "$(DERIVED_FILE_DIR)/Pods-Cronet_Tests-checkManifestLockResult.txt", 332 | ); 333 | runOnlyForDeploymentPostprocessing = 0; 334 | shellPath = /bin/sh; 335 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 336 | showEnvVarsInLog = 0; 337 | }; 338 | 53B731B8839E5AC70B0FA290 /* [CP] Check Pods Manifest.lock */ = { 339 | isa = PBXShellScriptBuildPhase; 340 | buildActionMask = 2147483647; 341 | files = ( 342 | ); 343 | inputFileListPaths = ( 344 | ); 345 | inputPaths = ( 346 | "${PODS_PODFILE_DIR_PATH}/Podfile.lock", 347 | "${PODS_ROOT}/Manifest.lock", 348 | ); 349 | name = "[CP] Check Pods Manifest.lock"; 350 | outputFileListPaths = ( 351 | ); 352 | outputPaths = ( 353 | "$(DERIVED_FILE_DIR)/Pods-Cronet_Example-checkManifestLockResult.txt", 354 | ); 355 | runOnlyForDeploymentPostprocessing = 0; 356 | shellPath = /bin/sh; 357 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; 358 | showEnvVarsInLog = 0; 359 | }; 360 | /* End PBXShellScriptBuildPhase section */ 361 | 362 | /* Begin PBXSourcesBuildPhase section */ 363 | 6003F586195388D20070C39A /* Sources */ = { 364 | isa = PBXSourcesBuildPhase; 365 | buildActionMask = 2147483647; 366 | files = ( 367 | 6003F59E195388D20070C39A /* CNAppDelegate.m in Sources */, 368 | 6003F5A7195388D20070C39A /* CNViewController.m in Sources */, 369 | 6003F59A195388D20070C39A /* main.m in Sources */, 370 | ); 371 | runOnlyForDeploymentPostprocessing = 0; 372 | }; 373 | 6003F5AA195388D20070C39A /* Sources */ = { 374 | isa = PBXSourcesBuildPhase; 375 | buildActionMask = 2147483647; 376 | files = ( 377 | 6003F5BC195388D20070C39A /* Tests.m in Sources */, 378 | ); 379 | runOnlyForDeploymentPostprocessing = 0; 380 | }; 381 | /* End PBXSourcesBuildPhase section */ 382 | 383 | /* Begin PBXTargetDependency section */ 384 | 6003F5B4195388D20070C39A /* PBXTargetDependency */ = { 385 | isa = PBXTargetDependency; 386 | target = 6003F589195388D20070C39A /* Cronet_Example */; 387 | targetProxy = 6003F5B3195388D20070C39A /* PBXContainerItemProxy */; 388 | }; 389 | /* End PBXTargetDependency section */ 390 | 391 | /* Begin PBXVariantGroup section */ 392 | 6003F596195388D20070C39A /* InfoPlist.strings */ = { 393 | isa = PBXVariantGroup; 394 | children = ( 395 | 6003F597195388D20070C39A /* en */, 396 | ); 397 | name = InfoPlist.strings; 398 | sourceTree = ""; 399 | }; 400 | 6003F5B8195388D20070C39A /* InfoPlist.strings */ = { 401 | isa = PBXVariantGroup; 402 | children = ( 403 | 6003F5B9195388D20070C39A /* en */, 404 | ); 405 | name = InfoPlist.strings; 406 | sourceTree = ""; 407 | }; 408 | 71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */ = { 409 | isa = PBXVariantGroup; 410 | children = ( 411 | 71719F9E1E33DC2100824A3D /* Base */, 412 | ); 413 | name = LaunchScreen.storyboard; 414 | sourceTree = ""; 415 | }; 416 | /* End PBXVariantGroup section */ 417 | 418 | /* Begin XCBuildConfiguration section */ 419 | 6003F5BD195388D20070C39A /* Debug */ = { 420 | isa = XCBuildConfiguration; 421 | buildSettings = { 422 | ALWAYS_SEARCH_USER_PATHS = NO; 423 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 424 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 425 | CLANG_CXX_LIBRARY = "libc++"; 426 | CLANG_ENABLE_MODULES = YES; 427 | CLANG_ENABLE_OBJC_ARC = YES; 428 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 429 | CLANG_WARN_BOOL_CONVERSION = YES; 430 | CLANG_WARN_COMMA = YES; 431 | CLANG_WARN_CONSTANT_CONVERSION = YES; 432 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 433 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 434 | CLANG_WARN_EMPTY_BODY = YES; 435 | CLANG_WARN_ENUM_CONVERSION = YES; 436 | CLANG_WARN_INFINITE_RECURSION = YES; 437 | CLANG_WARN_INT_CONVERSION = YES; 438 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 439 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 440 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 441 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 442 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 443 | CLANG_WARN_STRICT_PROTOTYPES = YES; 444 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 445 | CLANG_WARN_UNREACHABLE_CODE = YES; 446 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 447 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 448 | COPY_PHASE_STRIP = NO; 449 | ENABLE_STRICT_OBJC_MSGSEND = YES; 450 | ENABLE_TESTABILITY = YES; 451 | GCC_C_LANGUAGE_STANDARD = gnu99; 452 | GCC_DYNAMIC_NO_PIC = NO; 453 | GCC_NO_COMMON_BLOCKS = YES; 454 | GCC_OPTIMIZATION_LEVEL = 0; 455 | GCC_PREPROCESSOR_DEFINITIONS = ( 456 | "DEBUG=1", 457 | "$(inherited)", 458 | ); 459 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 460 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 461 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 462 | GCC_WARN_UNDECLARED_SELECTOR = YES; 463 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 464 | GCC_WARN_UNUSED_FUNCTION = YES; 465 | GCC_WARN_UNUSED_VARIABLE = YES; 466 | IPHONEOS_DEPLOYMENT_TARGET = 9.3; 467 | ONLY_ACTIVE_ARCH = YES; 468 | SDKROOT = iphoneos; 469 | TARGETED_DEVICE_FAMILY = "1,2"; 470 | }; 471 | name = Debug; 472 | }; 473 | 6003F5BE195388D20070C39A /* Release */ = { 474 | isa = XCBuildConfiguration; 475 | buildSettings = { 476 | ALWAYS_SEARCH_USER_PATHS = NO; 477 | CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; 478 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 479 | CLANG_CXX_LIBRARY = "libc++"; 480 | CLANG_ENABLE_MODULES = YES; 481 | CLANG_ENABLE_OBJC_ARC = YES; 482 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 483 | CLANG_WARN_BOOL_CONVERSION = YES; 484 | CLANG_WARN_COMMA = YES; 485 | CLANG_WARN_CONSTANT_CONVERSION = YES; 486 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; 487 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 488 | CLANG_WARN_EMPTY_BODY = YES; 489 | CLANG_WARN_ENUM_CONVERSION = YES; 490 | CLANG_WARN_INFINITE_RECURSION = YES; 491 | CLANG_WARN_INT_CONVERSION = YES; 492 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 493 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; 494 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 495 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 496 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 497 | CLANG_WARN_STRICT_PROTOTYPES = YES; 498 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 499 | CLANG_WARN_UNREACHABLE_CODE = YES; 500 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 501 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 502 | COPY_PHASE_STRIP = YES; 503 | ENABLE_NS_ASSERTIONS = NO; 504 | ENABLE_STRICT_OBJC_MSGSEND = YES; 505 | GCC_C_LANGUAGE_STANDARD = gnu99; 506 | GCC_NO_COMMON_BLOCKS = YES; 507 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 508 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 509 | GCC_WARN_UNDECLARED_SELECTOR = YES; 510 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 511 | GCC_WARN_UNUSED_FUNCTION = YES; 512 | GCC_WARN_UNUSED_VARIABLE = YES; 513 | IPHONEOS_DEPLOYMENT_TARGET = 9.3; 514 | SDKROOT = iphoneos; 515 | TARGETED_DEVICE_FAMILY = "1,2"; 516 | VALIDATE_PRODUCT = YES; 517 | }; 518 | name = Release; 519 | }; 520 | 6003F5C0195388D20070C39A /* Debug */ = { 521 | isa = XCBuildConfiguration; 522 | baseConfigurationReference = 37CA3DC2C03F4B523B1CFA2F /* Pods-Cronet_Example.debug.xcconfig */; 523 | buildSettings = { 524 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 525 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 526 | GCC_PREFIX_HEADER = "Cronet/Cronet-Prefix.pch"; 527 | INFOPLIST_FILE = "Cronet/Cronet-Info.plist"; 528 | MODULE_NAME = ExampleApp; 529 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 530 | PRODUCT_NAME = "$(TARGET_NAME)"; 531 | SWIFT_VERSION = 4.0; 532 | WRAPPER_EXTENSION = app; 533 | }; 534 | name = Debug; 535 | }; 536 | 6003F5C1195388D20070C39A /* Release */ = { 537 | isa = XCBuildConfiguration; 538 | baseConfigurationReference = 61CCA22CD1A184BECABF422B /* Pods-Cronet_Example.release.xcconfig */; 539 | buildSettings = { 540 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 541 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 542 | GCC_PREFIX_HEADER = "Cronet/Cronet-Prefix.pch"; 543 | INFOPLIST_FILE = "Cronet/Cronet-Info.plist"; 544 | MODULE_NAME = ExampleApp; 545 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 546 | PRODUCT_NAME = "$(TARGET_NAME)"; 547 | SWIFT_VERSION = 4.0; 548 | WRAPPER_EXTENSION = app; 549 | }; 550 | name = Release; 551 | }; 552 | 6003F5C3195388D20070C39A /* Debug */ = { 553 | isa = XCBuildConfiguration; 554 | baseConfigurationReference = AA3FC821047A4DDCB819FCCA /* Pods-Cronet_Tests.debug.xcconfig */; 555 | buildSettings = { 556 | BUNDLE_LOADER = "$(TEST_HOST)"; 557 | FRAMEWORK_SEARCH_PATHS = ( 558 | "$(PLATFORM_DIR)/Developer/Library/Frameworks", 559 | "$(inherited)", 560 | "$(DEVELOPER_FRAMEWORKS_DIR)", 561 | ); 562 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 563 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 564 | GCC_PREPROCESSOR_DEFINITIONS = ( 565 | "DEBUG=1", 566 | "$(inherited)", 567 | ); 568 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 569 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 570 | PRODUCT_NAME = "$(TARGET_NAME)"; 571 | SWIFT_VERSION = 4.0; 572 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Cronet_Example.app/Cronet_Example"; 573 | WRAPPER_EXTENSION = xctest; 574 | }; 575 | name = Debug; 576 | }; 577 | 6003F5C4195388D20070C39A /* Release */ = { 578 | isa = XCBuildConfiguration; 579 | baseConfigurationReference = 7115649A55F1A292AA00D2BF /* Pods-Cronet_Tests.release.xcconfig */; 580 | buildSettings = { 581 | BUNDLE_LOADER = "$(TEST_HOST)"; 582 | FRAMEWORK_SEARCH_PATHS = ( 583 | "$(PLATFORM_DIR)/Developer/Library/Frameworks", 584 | "$(inherited)", 585 | "$(DEVELOPER_FRAMEWORKS_DIR)", 586 | ); 587 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 588 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 589 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 590 | PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier}"; 591 | PRODUCT_NAME = "$(TARGET_NAME)"; 592 | SWIFT_VERSION = 4.0; 593 | TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Cronet_Example.app/Cronet_Example"; 594 | WRAPPER_EXTENSION = xctest; 595 | }; 596 | name = Release; 597 | }; 598 | /* End XCBuildConfiguration section */ 599 | 600 | /* Begin XCConfigurationList section */ 601 | 6003F585195388D10070C39A /* Build configuration list for PBXProject "Cronet" */ = { 602 | isa = XCConfigurationList; 603 | buildConfigurations = ( 604 | 6003F5BD195388D20070C39A /* Debug */, 605 | 6003F5BE195388D20070C39A /* Release */, 606 | ); 607 | defaultConfigurationIsVisible = 0; 608 | defaultConfigurationName = Release; 609 | }; 610 | 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "Cronet_Example" */ = { 611 | isa = XCConfigurationList; 612 | buildConfigurations = ( 613 | 6003F5C0195388D20070C39A /* Debug */, 614 | 6003F5C1195388D20070C39A /* Release */, 615 | ); 616 | defaultConfigurationIsVisible = 0; 617 | defaultConfigurationName = Release; 618 | }; 619 | 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Cronet_Tests" */ = { 620 | isa = XCConfigurationList; 621 | buildConfigurations = ( 622 | 6003F5C3195388D20070C39A /* Debug */, 623 | 6003F5C4195388D20070C39A /* Release */, 624 | ); 625 | defaultConfigurationIsVisible = 0; 626 | defaultConfigurationName = Release; 627 | }; 628 | /* End XCConfigurationList section */ 629 | }; 630 | rootObject = 6003F582195388D10070C39A /* Project object */; 631 | } 632 | -------------------------------------------------------------------------------- /Example/Cronet.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Cronet.xcodeproj/xcshareddata/xcschemes/Cronet-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 64 | 66 | 72 | 73 | 74 | 75 | 76 | 77 | 83 | 85 | 91 | 92 | 93 | 94 | 96 | 97 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /Example/Cronet.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/Cronet.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/Cronet/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Example/Cronet/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Example/Cronet/CNAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // CNAppDelegate.h 3 | // Cronet 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | @import UIKit; 10 | 11 | @interface CNAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Cronet/CNAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // CNAppDelegate.m 3 | // Cronet 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | #import "CNAppDelegate.h" 10 | #import "Cronet/Cronet.h" 11 | 12 | @implementation CNAppDelegate { 13 | NSUInteger _counter; 14 | } 15 | 16 | // Returns a file name to save net internals logging. This method suffixes 17 | // the ivar |_counter| to the file name so a new name can be obtained by 18 | // modifying that. 19 | - (NSString*)currentNetLogFileName { 20 | return [NSString 21 | stringWithFormat:@"cronet-consumer-net-log%lu.json", (unsigned long)_counter]; 22 | } 23 | 24 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 25 | { 26 | // Override point for customization after application launch. 27 | [Cronet setHttp2Enabled:YES]; 28 | [Cronet setQuicEnabled:YES]; 29 | [Cronet setBrotliEnabled:YES]; 30 | [Cronet setAcceptLanguages:@"en-US,en"]; 31 | 32 | [Cronet setUserAgent:@"CronetTest/1.0.0.0" partial:NO]; 33 | [Cronet addQuicHint:@"www.chromium.org" port:443 altPort:443]; 34 | 35 | [Cronet setHttpCacheType:CRNHttpCacheTypeDisabled]; 36 | [Cronet setMetricsEnabled:YES]; 37 | 38 | [Cronet start]; 39 | 40 | [Cronet startNetLogToFile:[self currentNetLogFileName] logBytes:NO]; 41 | [Cronet registerHttpProtocolHandler]; 42 | 43 | return YES; 44 | } 45 | 46 | - (void)applicationWillResignActive:(UIApplication *)application 47 | { 48 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 49 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 50 | } 51 | 52 | - (void)applicationDidEnterBackground:(UIApplication *)application 53 | { 54 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 55 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 56 | [Cronet stopNetLog]; 57 | } 58 | 59 | - (void)applicationWillEnterForeground:(UIApplication *)application 60 | { 61 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 62 | _counter++; 63 | [Cronet startNetLogToFile:[self currentNetLogFileName] logBytes:NO]; 64 | } 65 | 66 | - (void)applicationDidBecomeActive:(UIApplication *)application 67 | { 68 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 69 | } 70 | 71 | - (void)applicationWillTerminate:(UIApplication *)application 72 | { 73 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 74 | } 75 | 76 | @end 77 | -------------------------------------------------------------------------------- /Example/Cronet/CNViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // CNViewController.h 3 | // Cronet 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | @import UIKit; 10 | 11 | @interface CNViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/Cronet/CNViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // CNViewController.m 3 | // Cronet 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | #import "CNViewController.h" 10 | 11 | @interface CNViewController () 12 | 13 | @end 14 | 15 | @implementation CNViewController 16 | #if !defined(__IPHONE_12_0) || __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_12_0 17 | { 18 | UIWebView* _webView; 19 | } 20 | 21 | - (void)viewDidLoad 22 | { 23 | [super viewDidLoad]; 24 | // Do any additional setup after loading the view, typically from a nib. 25 | 26 | self.view.backgroundColor = [UIColor whiteColor]; 27 | UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem]; 28 | [button setTitle:@"chromium.org" forState:UIControlStateNormal]; 29 | [button setFrame:CGRectMake(5, 0, 95, 50)]; 30 | [button addTarget:self 31 | action:@selector(loadChromium) 32 | forControlEvents:UIControlEventTouchUpInside]; 33 | [self.view addSubview:button]; 34 | _webView = [[UIWebView alloc] 35 | initWithFrame:CGRectMake(0, 52, self.view.bounds.size.width, 36 | self.view.bounds.size.height - 52)]; 37 | [self.view addSubview:_webView]; 38 | _webView.autoresizingMask = 39 | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 40 | // [self loadChromium]; 41 | } 42 | 43 | - (void)didReceiveMemoryWarning 44 | { 45 | [super didReceiveMemoryWarning]; 46 | // Dispose of any resources that can be recreated. 47 | } 48 | 49 | // Disable the status bar to sidestep all the iOS7 status bar issues. 50 | - (BOOL)prefersStatusBarHidden { 51 | return YES; 52 | } 53 | 54 | - (void)loadChromium { 55 | [_webView 56 | loadRequest:[NSURLRequest 57 | requestWithURL: 58 | [NSURL URLWithString:@"https://www.chromium.org"]]]; 59 | } 60 | #endif 61 | @end 62 | -------------------------------------------------------------------------------- /Example/Cronet/Cronet-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UILaunchStoryboardName 28 | LaunchScreen 29 | UIMainStoryboardFile 30 | Main 31 | UIRequiredDeviceCapabilities 32 | 33 | armv7 34 | 35 | UISupportedInterfaceOrientations 36 | 37 | UIInterfaceOrientationPortrait 38 | UIInterfaceOrientationLandscapeLeft 39 | UIInterfaceOrientationLandscapeRight 40 | 41 | UISupportedInterfaceOrientations~ipad 42 | 43 | UIInterfaceOrientationPortrait 44 | UIInterfaceOrientationPortraitUpsideDown 45 | UIInterfaceOrientationLandscapeLeft 46 | UIInterfaceOrientationLandscapeRight 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /Example/Cronet/Cronet-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | @import UIKit; 15 | @import Foundation; 16 | #endif 17 | -------------------------------------------------------------------------------- /Example/Cronet/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "20x20", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "20x20", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "29x29", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "29x29", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "40x40", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "40x40", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "iphone", 35 | "size" : "60x60", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "iphone", 40 | "size" : "60x60", 41 | "scale" : "3x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "20x20", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "20x20", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "29x29", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "29x29", 61 | "scale" : "2x" 62 | }, 63 | { 64 | "idiom" : "ipad", 65 | "size" : "40x40", 66 | "scale" : "1x" 67 | }, 68 | { 69 | "idiom" : "ipad", 70 | "size" : "40x40", 71 | "scale" : "2x" 72 | }, 73 | { 74 | "idiom" : "ipad", 75 | "size" : "76x76", 76 | "scale" : "1x" 77 | }, 78 | { 79 | "idiom" : "ipad", 80 | "size" : "76x76", 81 | "scale" : "2x" 82 | }, 83 | { 84 | "idiom" : "ipad", 85 | "size" : "83.5x83.5", 86 | "scale" : "2x" 87 | }, 88 | { 89 | "idiom" : "ios-marketing", 90 | "size" : "1024x1024", 91 | "scale" : "1x" 92 | } 93 | ], 94 | "info" : { 95 | "version" : 1, 96 | "author" : "xcode" 97 | } 98 | } 99 | -------------------------------------------------------------------------------- /Example/Cronet/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/Cronet/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Cronet 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | @import UIKit; 10 | #import "CNAppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) 13 | { 14 | @autoreleasepool { 15 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([CNAppDelegate class])); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | use_frameworks! 2 | 3 | platform :ios, '9.0' 4 | 5 | target 'Cronet_Example' do 6 | pod 'Cronet', :path => '../', :inhibit_warnings => true 7 | 8 | target 'Cronet_Tests' do 9 | inherit! :search_paths 10 | end 11 | end 12 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - Cronet (76.0.3809.123) 3 | 4 | DEPENDENCIES: 5 | - Cronet (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | Cronet: 9 | :path: "../" 10 | 11 | SPEC CHECKSUMS: 12 | Cronet: cdfe131a07fd329c4b109fb491e791c734b573c3 13 | 14 | PODFILE CHECKSUM: e3edf9b0e6ddd1d646debec577fa69baacfacf65 15 | 16 | COCOAPODS: 1.7.5 17 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // The contents of this file are implicitly included at the beginning of every test case source file. 2 | 3 | #ifdef __OBJC__ 4 | 5 | 6 | 7 | #endif 8 | -------------------------------------------------------------------------------- /Example/Tests/Tests.m: -------------------------------------------------------------------------------- 1 | // 2 | // CronetTests.m 3 | // CronetTests 4 | // 5 | // Created by akshetpandey on 08/20/2019. 6 | // Copyright (c) 2019 akshetpandey. All rights reserved. 7 | // 8 | 9 | @import XCTest; 10 | 11 | @interface Tests : XCTestCase 12 | 13 | @end 14 | 15 | @implementation Tests 16 | 17 | - (void)setUp 18 | { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown 24 | { 25 | // Put teardown code here. This method is called after the invocation of each test method in the class. 26 | [super tearDown]; 27 | } 28 | 29 | - (void)testExample 30 | { 31 | XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__); 32 | } 33 | 34 | @end 35 | 36 | -------------------------------------------------------------------------------- /Example/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Frameworks/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/akshetpandey/Cronet.framework/775e766ecd089296b1647c42f317348873b48e89/Frameworks/.gitkeep -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Chromium Authors. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the names of its 14 | // contributors may be used to endorse or promote products derived from 15 | // this software without specific prior written permission. 16 | // 17 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | 29 | -------------------- 30 | dynamic_annotations 31 | -------------------- 32 | /* Copyright (c) 2008-2009, Google Inc. 33 | * All rights reserved. 34 | * 35 | * Redistribution and use in source and binary forms, with or without 36 | * modification, are permitted provided that the following conditions are 37 | * met: 38 | * 39 | * * Redistributions of source code must retain the above copyright 40 | * notice, this list of conditions and the following disclaimer. 41 | * * Neither the name of Google Inc. nor the names of its 42 | * contributors may be used to endorse or promote products derived from 43 | * this software without specific prior written permission. 44 | * 45 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 46 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 47 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 48 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 49 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 50 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 51 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 52 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 53 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 54 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 55 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 56 | * 57 | * --- 58 | * Author: Kostya Serebryany 59 | */ 60 | 61 | -------------------- 62 | libevent 63 | -------------------- 64 | Libevent is available for use under the following license, commonly known 65 | as the 3-clause (or "modified") BSD license: 66 | 67 | ============================== 68 | Copyright (c) 2000-2007 Niels Provos 69 | Copyright (c) 2007-2010 Niels Provos and Nick Mathewson 70 | 71 | Redistribution and use in source and binary forms, with or without 72 | modification, are permitted provided that the following conditions 73 | are met: 74 | 1. Redistributions of source code must retain the above copyright 75 | notice, this list of conditions and the following disclaimer. 76 | 2. Redistributions in binary form must reproduce the above copyright 77 | notice, this list of conditions and the following disclaimer in the 78 | documentation and/or other materials provided with the distribution. 79 | 3. The name of the author may not be used to endorse or promote products 80 | derived from this software without specific prior written permission. 81 | 82 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 83 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 84 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 85 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 86 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 87 | NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 88 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 89 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 90 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 91 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 92 | ============================== 93 | 94 | Portions of Libevent are based on works by others, also made available by 95 | them under the three-clause BSD license above. The copyright notices are 96 | available in the corresponding source files; the license is as above. Here's 97 | a list: 98 | 99 | log.c: 100 | Copyright (c) 2000 Dug Song 101 | Copyright (c) 1993 The Regents of the University of California. 102 | 103 | strlcpy.c: 104 | Copyright (c) 1998 Todd C. Miller 105 | 106 | win32.c: 107 | Copyright (c) 2003 Michael A. Davis 108 | 109 | evport.c: 110 | Copyright (c) 2007 Sun Microsystems 111 | 112 | min_heap.h: 113 | Copyright (c) 2006 Maxim Yegorushkin 114 | 115 | tree.h: 116 | Copyright 2002 Niels Provos 117 | 118 | -------------------- 119 | boringssl 120 | -------------------- 121 | BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL 122 | licensing. Files that are completely new have a Google copyright and an ISC 123 | license. This license is reproduced at the bottom of this file. 124 | 125 | Contributors to BoringSSL are required to follow the CLA rules for Chromium: 126 | https://cla.developers.google.com/clas 127 | 128 | Files in third_party/ have their own licenses, as described therein. The MIT 129 | license, for third_party/fiat, which, unlike other third_party directories, is 130 | compiled into non-test libraries, is included below. 131 | 132 | The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the 133 | OpenSSL License and the original SSLeay license apply to the toolkit. See below 134 | for the actual license texts. Actually both licenses are BSD-style Open Source 135 | licenses. In case of any license issues related to OpenSSL please contact 136 | openssl-core@openssl.org. 137 | 138 | The following are Google-internal bug numbers where explicit permission from 139 | some authors is recorded for use of their work. (This is purely for our own 140 | record keeping.) 141 | 27287199 142 | 27287880 143 | 27287883 144 | 145 | OpenSSL License 146 | --------------- 147 | 148 | /* ==================================================================== 149 | * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. 150 | * 151 | * Redistribution and use in source and binary forms, with or without 152 | * modification, are permitted provided that the following conditions 153 | * are met: 154 | * 155 | * 1. Redistributions of source code must retain the above copyright 156 | * notice, this list of conditions and the following disclaimer. 157 | * 158 | * 2. Redistributions in binary form must reproduce the above copyright 159 | * notice, this list of conditions and the following disclaimer in 160 | * the documentation and/or other materials provided with the 161 | * distribution. 162 | * 163 | * 3. All advertising materials mentioning features or use of this 164 | * software must display the following acknowledgment: 165 | * "This product includes software developed by the OpenSSL Project 166 | * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" 167 | * 168 | * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 169 | * endorse or promote products derived from this software without 170 | * prior written permission. For written permission, please contact 171 | * openssl-core@openssl.org. 172 | * 173 | * 5. Products derived from this software may not be called "OpenSSL" 174 | * nor may "OpenSSL" appear in their names without prior written 175 | * permission of the OpenSSL Project. 176 | * 177 | * 6. Redistributions of any form whatsoever must retain the following 178 | * acknowledgment: 179 | * "This product includes software developed by the OpenSSL Project 180 | * for use in the OpenSSL Toolkit (http://www.openssl.org/)" 181 | * 182 | * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 183 | * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 184 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 185 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 186 | * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 187 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 188 | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 189 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 190 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 191 | * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 192 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 193 | * OF THE POSSIBILITY OF SUCH DAMAGE. 194 | * ==================================================================== 195 | * 196 | * This product includes cryptographic software written by Eric Young 197 | * (eay@cryptsoft.com). This product includes software written by Tim 198 | * Hudson (tjh@cryptsoft.com). 199 | * 200 | */ 201 | 202 | Original SSLeay License 203 | ----------------------- 204 | 205 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 206 | * All rights reserved. 207 | * 208 | * This package is an SSL implementation written 209 | * by Eric Young (eay@cryptsoft.com). 210 | * The implementation was written so as to conform with Netscapes SSL. 211 | * 212 | * This library is free for commercial and non-commercial use as long as 213 | * the following conditions are aheared to. The following conditions 214 | * apply to all code found in this distribution, be it the RC4, RSA, 215 | * lhash, DES, etc., code; not just the SSL code. The SSL documentation 216 | * included with this distribution is covered by the same copyright terms 217 | * except that the holder is Tim Hudson (tjh@cryptsoft.com). 218 | * 219 | * Copyright remains Eric Young's, and as such any Copyright notices in 220 | * the code are not to be removed. 221 | * If this package is used in a product, Eric Young should be given attribution 222 | * as the author of the parts of the library used. 223 | * This can be in the form of a textual message at program startup or 224 | * in documentation (online or textual) provided with the package. 225 | * 226 | * Redistribution and use in source and binary forms, with or without 227 | * modification, are permitted provided that the following conditions 228 | * are met: 229 | * 1. Redistributions of source code must retain the copyright 230 | * notice, this list of conditions and the following disclaimer. 231 | * 2. Redistributions in binary form must reproduce the above copyright 232 | * notice, this list of conditions and the following disclaimer in the 233 | * documentation and/or other materials provided with the distribution. 234 | * 3. All advertising materials mentioning features or use of this software 235 | * must display the following acknowledgement: 236 | * "This product includes cryptographic software written by 237 | * Eric Young (eay@cryptsoft.com)" 238 | * The word 'cryptographic' can be left out if the rouines from the library 239 | * being used are not cryptographic related :-). 240 | * 4. If you include any Windows specific code (or a derivative thereof) from 241 | * the apps directory (application code) you must include an acknowledgement: 242 | * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" 243 | * 244 | * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND 245 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 246 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 247 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 248 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 249 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 250 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 251 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 252 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 253 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 254 | * SUCH DAMAGE. 255 | * 256 | * The licence and distribution terms for any publically available version or 257 | * derivative of this code cannot be changed. i.e. this code cannot simply be 258 | * copied and put under another distribution licence 259 | * [including the GNU Public Licence.] 260 | */ 261 | 262 | 263 | ISC license used for completely new code in BoringSSL: 264 | 265 | /* Copyright (c) 2015, Google Inc. 266 | * 267 | * Permission to use, copy, modify, and/or distribute this software for any 268 | * purpose with or without fee is hereby granted, provided that the above 269 | * copyright notice and this permission notice appear in all copies. 270 | * 271 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 272 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 273 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 274 | * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 275 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 276 | * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 277 | * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ 278 | 279 | 280 | The code in third_party/fiat carries the MIT license: 281 | 282 | Copyright (c) 2015-2016 the fiat-crypto authors (see 283 | https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). 284 | 285 | Permission is hereby granted, free of charge, to any person obtaining a copy 286 | of this software and associated documentation files (the "Software"), to deal 287 | in the Software without restriction, including without limitation the rights 288 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 289 | copies of the Software, and to permit persons to whom the Software is 290 | furnished to do so, subject to the following conditions: 291 | 292 | The above copyright notice and this permission notice shall be included in all 293 | copies or substantial portions of the Software. 294 | 295 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 296 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 297 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 298 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 299 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 300 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 301 | SOFTWARE. 302 | 303 | 304 | The code in third_party/sike also carries the MIT license: 305 | 306 | Copyright (c) Microsoft Corporation. All rights reserved. 307 | 308 | Permission is hereby granted, free of charge, to any person obtaining a copy 309 | of this software and associated documentation files (the "Software"), to deal 310 | in the Software without restriction, including without limitation the rights 311 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 312 | copies of the Software, and to permit persons to whom the Software is 313 | furnished to do so, subject to the following conditions: 314 | 315 | The above copyright notice and this permission notice shall be included in all 316 | copies or substantial portions of the Software. 317 | 318 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 319 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 320 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 321 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 322 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 323 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 324 | SOFTWARE 325 | 326 | 327 | Licenses for support code 328 | ------------------------- 329 | 330 | Parts of the TLS test suite are under the Go license. This code is not included 331 | in BoringSSL (i.e. libcrypto and libssl) when compiled, however, so 332 | distributing code linked against BoringSSL does not trigger this license: 333 | 334 | Copyright (c) 2009 The Go Authors. All rights reserved. 335 | 336 | Redistribution and use in source and binary forms, with or without 337 | modification, are permitted provided that the following conditions are 338 | met: 339 | 340 | * Redistributions of source code must retain the above copyright 341 | notice, this list of conditions and the following disclaimer. 342 | * Redistributions in binary form must reproduce the above 343 | copyright notice, this list of conditions and the following disclaimer 344 | in the documentation and/or other materials provided with the 345 | distribution. 346 | * Neither the name of Google Inc. nor the names of its 347 | contributors may be used to endorse or promote products derived from 348 | this software without specific prior written permission. 349 | 350 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 351 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 352 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 353 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 354 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 355 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 356 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 357 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 358 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 359 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 360 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 361 | 362 | 363 | BoringSSL uses the Chromium test infrastructure to run a continuous build, 364 | trybots etc. The scripts which manage this, and the script for generating build 365 | metadata, are under the Chromium license. Distributing code linked against 366 | BoringSSL does not trigger this license. 367 | 368 | Copyright 2015 The Chromium Authors. All rights reserved. 369 | 370 | Redistribution and use in source and binary forms, with or without 371 | modification, are permitted provided that the following conditions are 372 | met: 373 | 374 | * Redistributions of source code must retain the above copyright 375 | notice, this list of conditions and the following disclaimer. 376 | * Redistributions in binary form must reproduce the above 377 | copyright notice, this list of conditions and the following disclaimer 378 | in the documentation and/or other materials provided with the 379 | distribution. 380 | * Neither the name of Google Inc. nor the names of its 381 | contributors may be used to endorse or promote products derived from 382 | this software without specific prior written permission. 383 | 384 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 385 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 386 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 387 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 388 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 389 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 390 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 391 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 392 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 393 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 394 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 395 | 396 | -------------------- 397 | fiat 398 | -------------------- 399 | The MIT License (MIT) 400 | 401 | Copyright (c) 2015-2016 the fiat-crypto authors (see 402 | https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). 403 | 404 | Permission is hereby granted, free of charge, to any person obtaining a copy 405 | of this software and associated documentation files (the "Software"), to deal 406 | in the Software without restriction, including without limitation the rights 407 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 408 | copies of the Software, and to permit persons to whom the Software is 409 | furnished to do so, subject to the following conditions: 410 | 411 | The above copyright notice and this permission notice shall be included in all 412 | copies or substantial portions of the Software. 413 | 414 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 415 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 416 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 417 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 418 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 419 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 420 | SOFTWARE. 421 | 422 | -------------------- 423 | brotli 424 | -------------------- 425 | Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. 426 | 427 | Permission is hereby granted, free of charge, to any person obtaining a copy 428 | of this software and associated documentation files (the "Software"), to deal 429 | in the Software without restriction, including without limitation the rights 430 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 431 | copies of the Software, and to permit persons to whom the Software is 432 | furnished to do so, subject to the following conditions: 433 | 434 | The above copyright notice and this permission notice shall be included in 435 | all copies or substantial portions of the Software. 436 | 437 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 438 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 439 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 440 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 441 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 442 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 443 | THE SOFTWARE. 444 | 445 | -------------------- 446 | ced 447 | -------------------- 448 | // Copyright (c) 2010 The Chromium Authors. All rights reserved. 449 | // 450 | // Redistribution and use in source and binary forms, with or without 451 | // modification, are permitted provided that the following conditions are 452 | // met: 453 | // 454 | // * Redistributions of source code must retain the above copyright 455 | // notice, this list of conditions and the following disclaimer. 456 | // * Redistributions in binary form must reproduce the above 457 | // copyright notice, this list of conditions and the following disclaimer 458 | // in the documentation and/or other materials provided with the 459 | // distribution. 460 | // * Neither the name of Google Inc. nor the names of its 461 | // contributors may be used to endorse or promote products derived from 462 | // this software without specific prior written permission. 463 | // 464 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 465 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 466 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 467 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 468 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 469 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 470 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 471 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 472 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 473 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 474 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 475 | 476 | -------------------- 477 | icu 478 | -------------------- 479 | COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) 480 | 481 | Copyright © 1991-2019 Unicode, Inc. All rights reserved. 482 | Distributed under the Terms of Use in https://www.unicode.org/copyright.html. 483 | 484 | Permission is hereby granted, free of charge, to any person obtaining 485 | a copy of the Unicode data files and any associated documentation 486 | (the "Data Files") or Unicode software and any associated documentation 487 | (the "Software") to deal in the Data Files or Software 488 | without restriction, including without limitation the rights to use, 489 | copy, modify, merge, publish, distribute, and/or sell copies of 490 | the Data Files or Software, and to permit persons to whom the Data Files 491 | or Software are furnished to do so, provided that either 492 | (a) this copyright and permission notice appear with all copies 493 | of the Data Files or Software, or 494 | (b) this copyright and permission notice appear in associated 495 | Documentation. 496 | 497 | THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF 498 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 499 | WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 500 | NONINFRINGEMENT OF THIRD PARTY RIGHTS. 501 | IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS 502 | NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL 503 | DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 504 | DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 505 | TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 506 | PERFORMANCE OF THE DATA FILES OR SOFTWARE. 507 | 508 | Except as contained in this notice, the name of a copyright holder 509 | shall not be used in advertising or otherwise to promote the sale, 510 | use or other dealings in these Data Files or Software without prior 511 | written authorization of the copyright holder. 512 | 513 | --------------------- 514 | 515 | Third-Party Software Licenses 516 | 517 | This section contains third-party software notices and/or additional 518 | terms for licensed third-party software components included within ICU 519 | libraries. 520 | 521 | 1. ICU License - ICU 1.8.1 to ICU 57.1 522 | 523 | COPYRIGHT AND PERMISSION NOTICE 524 | 525 | Copyright (c) 1995-2016 International Business Machines Corporation and others 526 | All rights reserved. 527 | 528 | Permission is hereby granted, free of charge, to any person obtaining 529 | a copy of this software and associated documentation files (the 530 | "Software"), to deal in the Software without restriction, including 531 | without limitation the rights to use, copy, modify, merge, publish, 532 | distribute, and/or sell copies of the Software, and to permit persons 533 | to whom the Software is furnished to do so, provided that the above 534 | copyright notice(s) and this permission notice appear in all copies of 535 | the Software and that both the above copyright notice(s) and this 536 | permission notice appear in supporting documentation. 537 | 538 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 539 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 540 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 541 | OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 542 | HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY 543 | SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER 544 | RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF 545 | CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 546 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 547 | 548 | Except as contained in this notice, the name of a copyright holder 549 | shall not be used in advertising or otherwise to promote the sale, use 550 | or other dealings in this Software without prior written authorization 551 | of the copyright holder. 552 | 553 | All trademarks and registered trademarks mentioned herein are the 554 | property of their respective owners. 555 | 556 | 2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt) 557 | 558 | # The Google Chrome software developed by Google is licensed under 559 | # the BSD license. Other software included in this distribution is 560 | # provided under other licenses, as set forth below. 561 | # 562 | # The BSD License 563 | # http://opensource.org/licenses/bsd-license.php 564 | # Copyright (C) 2006-2008, Google Inc. 565 | # 566 | # All rights reserved. 567 | # 568 | # Redistribution and use in source and binary forms, with or without 569 | # modification, are permitted provided that the following conditions are met: 570 | # 571 | # Redistributions of source code must retain the above copyright notice, 572 | # this list of conditions and the following disclaimer. 573 | # Redistributions in binary form must reproduce the above 574 | # copyright notice, this list of conditions and the following 575 | # disclaimer in the documentation and/or other materials provided with 576 | # the distribution. 577 | # Neither the name of Google Inc. nor the names of its 578 | # contributors may be used to endorse or promote products derived from 579 | # this software without specific prior written permission. 580 | # 581 | # 582 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 583 | # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 584 | # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 585 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 586 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 587 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 588 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 589 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 590 | # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 591 | # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 592 | # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 593 | # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 594 | # 595 | # 596 | # The word list in cjdict.txt are generated by combining three word lists 597 | # listed below with further processing for compound word breaking. The 598 | # frequency is generated with an iterative training against Google web 599 | # corpora. 600 | # 601 | # * Libtabe (Chinese) 602 | # - https://sourceforge.net/project/?group_id=1519 603 | # - Its license terms and conditions are shown below. 604 | # 605 | # * IPADIC (Japanese) 606 | # - http://chasen.aist-nara.ac.jp/chasen/distribution.html 607 | # - Its license terms and conditions are shown below. 608 | # 609 | # ---------COPYING.libtabe ---- BEGIN-------------------- 610 | # 611 | # /* 612 | # * Copyright (c) 1999 TaBE Project. 613 | # * Copyright (c) 1999 Pai-Hsiang Hsiao. 614 | # * All rights reserved. 615 | # * 616 | # * Redistribution and use in source and binary forms, with or without 617 | # * modification, are permitted provided that the following conditions 618 | # * are met: 619 | # * 620 | # * . Redistributions of source code must retain the above copyright 621 | # * notice, this list of conditions and the following disclaimer. 622 | # * . Redistributions in binary form must reproduce the above copyright 623 | # * notice, this list of conditions and the following disclaimer in 624 | # * the documentation and/or other materials provided with the 625 | # * distribution. 626 | # * . Neither the name of the TaBE Project nor the names of its 627 | # * contributors may be used to endorse or promote products derived 628 | # * from this software without specific prior written permission. 629 | # * 630 | # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 631 | # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 632 | # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 633 | # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 634 | # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 635 | # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 636 | # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 637 | # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 638 | # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 639 | # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 640 | # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 641 | # * OF THE POSSIBILITY OF SUCH DAMAGE. 642 | # */ 643 | # 644 | # /* 645 | # * Copyright (c) 1999 Computer Systems and Communication Lab, 646 | # * Institute of Information Science, Academia 647 | # * Sinica. All rights reserved. 648 | # * 649 | # * Redistribution and use in source and binary forms, with or without 650 | # * modification, are permitted provided that the following conditions 651 | # * are met: 652 | # * 653 | # * . Redistributions of source code must retain the above copyright 654 | # * notice, this list of conditions and the following disclaimer. 655 | # * . Redistributions in binary form must reproduce the above copyright 656 | # * notice, this list of conditions and the following disclaimer in 657 | # * the documentation and/or other materials provided with the 658 | # * distribution. 659 | # * . Neither the name of the Computer Systems and Communication Lab 660 | # * nor the names of its contributors may be used to endorse or 661 | # * promote products derived from this software without specific 662 | # * prior written permission. 663 | # * 664 | # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 665 | # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 666 | # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 667 | # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 668 | # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 669 | # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 670 | # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 671 | # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 672 | # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 673 | # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 674 | # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 675 | # * OF THE POSSIBILITY OF SUCH DAMAGE. 676 | # */ 677 | # 678 | # Copyright 1996 Chih-Hao Tsai @ Beckman Institute, 679 | # University of Illinois 680 | # c-tsai4@uiuc.edu http://casper.beckman.uiuc.edu/~c-tsai4 681 | # 682 | # ---------------COPYING.libtabe-----END-------------------------------- 683 | # 684 | # 685 | # ---------------COPYING.ipadic-----BEGIN------------------------------- 686 | # 687 | # Copyright 2000, 2001, 2002, 2003 Nara Institute of Science 688 | # and Technology. All Rights Reserved. 689 | # 690 | # Use, reproduction, and distribution of this software is permitted. 691 | # Any copy of this software, whether in its original form or modified, 692 | # must include both the above copyright notice and the following 693 | # paragraphs. 694 | # 695 | # Nara Institute of Science and Technology (NAIST), 696 | # the copyright holders, disclaims all warranties with regard to this 697 | # software, including all implied warranties of merchantability and 698 | # fitness, in no event shall NAIST be liable for 699 | # any special, indirect or consequential damages or any damages 700 | # whatsoever resulting from loss of use, data or profits, whether in an 701 | # action of contract, negligence or other tortuous action, arising out 702 | # of or in connection with the use or performance of this software. 703 | # 704 | # A large portion of the dictionary entries 705 | # originate from ICOT Free Software. The following conditions for ICOT 706 | # Free Software applies to the current dictionary as well. 707 | # 708 | # Each User may also freely distribute the Program, whether in its 709 | # original form or modified, to any third party or parties, PROVIDED 710 | # that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear 711 | # on, or be attached to, the Program, which is distributed substantially 712 | # in the same form as set out herein and that such intended 713 | # distribution, if actually made, will neither violate or otherwise 714 | # contravene any of the laws and regulations of the countries having 715 | # jurisdiction over the User or the intended distribution itself. 716 | # 717 | # NO WARRANTY 718 | # 719 | # The program was produced on an experimental basis in the course of the 720 | # research and development conducted during the project and is provided 721 | # to users as so produced on an experimental basis. Accordingly, the 722 | # program is provided without any warranty whatsoever, whether express, 723 | # implied, statutory or otherwise. The term "warranty" used herein 724 | # includes, but is not limited to, any warranty of the quality, 725 | # performance, merchantability and fitness for a particular purpose of 726 | # the program and the nonexistence of any infringement or violation of 727 | # any right of any third party. 728 | # 729 | # Each user of the program will agree and understand, and be deemed to 730 | # have agreed and understood, that there is no warranty whatsoever for 731 | # the program and, accordingly, the entire risk arising from or 732 | # otherwise connected with the program is assumed by the user. 733 | # 734 | # Therefore, neither ICOT, the copyright holder, or any other 735 | # organization that participated in or was otherwise related to the 736 | # development of the program and their respective officials, directors, 737 | # officers and other employees shall be held liable for any and all 738 | # damages, including, without limitation, general, special, incidental 739 | # and consequential damages, arising out of or otherwise in connection 740 | # with the use or inability to use the program or any product, material 741 | # or result produced or otherwise obtained by using the program, 742 | # regardless of whether they have been advised of, or otherwise had 743 | # knowledge of, the possibility of such damages at any time during the 744 | # project or thereafter. Each user will be deemed to have agreed to the 745 | # foregoing by his or her commencement of use of the program. The term 746 | # "use" as used herein includes, but is not limited to, the use, 747 | # modification, copying and distribution of the program and the 748 | # production of secondary products from the program. 749 | # 750 | # In the case where the program, whether in its original form or 751 | # modified, was distributed or delivered to or received by a user from 752 | # any person, organization or entity other than ICOT, unless it makes or 753 | # grants independently of ICOT any specific warranty to the user in 754 | # writing, such person, organization or entity, will also be exempted 755 | # from and not be held liable to the user for any such damages as noted 756 | # above as far as the program is concerned. 757 | # 758 | # ---------------COPYING.ipadic-----END---------------------------------- 759 | 760 | 3. Lao Word Break Dictionary Data (laodict.txt) 761 | 762 | # Copyright (c) 2013 International Business Machines Corporation 763 | # and others. All Rights Reserved. 764 | # 765 | # Project: http://code.google.com/p/lao-dictionary/ 766 | # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt 767 | # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt 768 | # (copied below) 769 | # 770 | # This file is derived from the above dictionary, with slight 771 | # modifications. 772 | # ---------------------------------------------------------------------- 773 | # Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. 774 | # All rights reserved. 775 | # 776 | # Redistribution and use in source and binary forms, with or without 777 | # modification, 778 | # are permitted provided that the following conditions are met: 779 | # 780 | # 781 | # Redistributions of source code must retain the above copyright notice, this 782 | # list of conditions and the following disclaimer. Redistributions in 783 | # binary form must reproduce the above copyright notice, this list of 784 | # conditions and the following disclaimer in the documentation and/or 785 | # other materials provided with the distribution. 786 | # 787 | # 788 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 789 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 790 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 791 | # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 792 | # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 793 | # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 794 | # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 795 | # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 796 | # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 797 | # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 798 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 799 | # OF THE POSSIBILITY OF SUCH DAMAGE. 800 | # -------------------------------------------------------------------------- 801 | 802 | 4. Burmese Word Break Dictionary Data (burmesedict.txt) 803 | 804 | # Copyright (c) 2014 International Business Machines Corporation 805 | # and others. All Rights Reserved. 806 | # 807 | # This list is part of a project hosted at: 808 | # github.com/kanyawtech/myanmar-karen-word-lists 809 | # 810 | # -------------------------------------------------------------------------- 811 | # Copyright (c) 2013, LeRoy Benjamin Sharon 812 | # All rights reserved. 813 | # 814 | # Redistribution and use in source and binary forms, with or without 815 | # modification, are permitted provided that the following conditions 816 | # are met: Redistributions of source code must retain the above 817 | # copyright notice, this list of conditions and the following 818 | # disclaimer. Redistributions in binary form must reproduce the 819 | # above copyright notice, this list of conditions and the following 820 | # disclaimer in the documentation and/or other materials provided 821 | # with the distribution. 822 | # 823 | # Neither the name Myanmar Karen Word Lists, nor the names of its 824 | # contributors may be used to endorse or promote products derived 825 | # from this software without specific prior written permission. 826 | # 827 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 828 | # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 829 | # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 830 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 831 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS 832 | # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 833 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED 834 | # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 835 | # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 836 | # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 837 | # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 838 | # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 839 | # SUCH DAMAGE. 840 | # -------------------------------------------------------------------------- 841 | 842 | 5. Time Zone Database 843 | 844 | ICU uses the public domain data and code derived from Time Zone 845 | Database for its time zone support. The ownership of the TZ database 846 | is explained in BCP 175: Procedure for Maintaining the Time Zone 847 | Database section 7. 848 | 849 | # 7. Database Ownership 850 | # 851 | # The TZ database itself is not an IETF Contribution or an IETF 852 | # document. Rather it is a pre-existing and regularly updated work 853 | # that is in the public domain, and is intended to remain in the 854 | # public domain. Therefore, BCPs 78 [RFC5378] and 79 [RFC3979] do 855 | # not apply to the TZ Database or contributions that individuals make 856 | # to it. Should any claims be made and substantiated against the TZ 857 | # Database, the organization that is providing the IANA 858 | # Considerations defined in this RFC, under the memorandum of 859 | # understanding with the IETF, currently ICANN, may act in accordance 860 | # with all competent court orders. No ownership claims will be made 861 | # by ICANN or the IETF Trust on the database or the code. Any person 862 | # making a contribution to the database or code waives all rights to 863 | # future claims in that contribution or in the TZ Database. 864 | 865 | 6. Google double-conversion 866 | 867 | Copyright 2006-2011, the V8 project authors. All rights reserved. 868 | Redistribution and use in source and binary forms, with or without 869 | modification, are permitted provided that the following conditions are 870 | met: 871 | 872 | * Redistributions of source code must retain the above copyright 873 | notice, this list of conditions and the following disclaimer. 874 | * Redistributions in binary form must reproduce the above 875 | copyright notice, this list of conditions and the following 876 | disclaimer in the documentation and/or other materials provided 877 | with the distribution. 878 | * Neither the name of Google Inc. nor the names of its 879 | contributors may be used to endorse or promote products derived 880 | from this software without specific prior written permission. 881 | 882 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 883 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 884 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 885 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 886 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 887 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 888 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 889 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 890 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 891 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 892 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 893 | 894 | -------------------- 895 | modp_b64 896 | -------------------- 897 | * MODP_B64 - High performance base64 encoder/decoder 898 | * Version 1.3 -- 17-Mar-2006 899 | * http://modp.com/release/base64 900 | * 901 | * Copyright (c) 2005, 2006 Nick Galbreath -- nickg [at] modp [dot] com 902 | * All rights reserved. 903 | * 904 | * Redistribution and use in source and binary forms, with or without 905 | * modification, are permitted provided that the following conditions are 906 | * met: 907 | * 908 | * Redistributions of source code must retain the above copyright 909 | * notice, this list of conditions and the following disclaimer. 910 | * 911 | * Redistributions in binary form must reproduce the above copyright 912 | * notice, this list of conditions and the following disclaimer in the 913 | * documentation and/or other materials provided with the distribution. 914 | * 915 | * Neither the name of the modp.com nor the names of its 916 | * contributors may be used to endorse or promote products derived from 917 | * this software without specific prior written permission. 918 | * 919 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 920 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 921 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 922 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 923 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 924 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 925 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 926 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 927 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 928 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 929 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 930 | 931 | -------------------- 932 | protobuf 933 | -------------------- 934 | Copyright 2008 Google Inc. All rights reserved. 935 | 936 | Redistribution and use in source and binary forms, with or without 937 | modification, are permitted provided that the following conditions are 938 | met: 939 | 940 | * Redistributions of source code must retain the above copyright 941 | notice, this list of conditions and the following disclaimer. 942 | * Redistributions in binary form must reproduce the above 943 | copyright notice, this list of conditions and the following disclaimer 944 | in the documentation and/or other materials provided with the 945 | distribution. 946 | * Neither the name of Google Inc. nor the names of its 947 | contributors may be used to endorse or promote products derived from 948 | this software without specific prior written permission. 949 | 950 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 951 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 952 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 953 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 954 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 955 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 956 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 957 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 958 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 959 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 960 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 961 | 962 | Code generated by the Protocol Buffer compiler is owned by the owner 963 | of the input file used when generating it. This code is not 964 | standalone and requires a support library to be linked with it. This 965 | support library is itself covered by the above license. 966 | 967 | -------------------- 968 | zlib 969 | -------------------- 970 | version 1.2.11, January 15th, 2017 971 | 972 | Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler 973 | 974 | This software is provided 'as-is', without any express or implied 975 | warranty. In no event will the authors be held liable for any damages 976 | arising from the use of this software. 977 | 978 | Permission is granted to anyone to use this software for any purpose, 979 | including commercial applications, and to alter it and redistribute it 980 | freely, subject to the following restrictions: 981 | 982 | 1. The origin of this software must not be misrepresented; you must not 983 | claim that you wrote the original software. If you use this software 984 | in a product, an acknowledgment in the product documentation would be 985 | appreciated but is not required. 986 | 2. Altered source versions must be plainly marked as such, and must not be 987 | misrepresented as being the original software. 988 | 3. This notice may not be removed or altered from any source distribution. 989 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Cronet: Chromium's networking stack for your iOS applications 2 | 3 | **Depreacted: This package was relevant when iOS didn't support QUIC/HTTP3. iOS15 onwards has native support.** 4 | 5 | [![Build Status](https://app.bitrise.io/app/d53aeedb8c8301c3/status.svg?token=Ru7JcjzoqI86H9vtHgTweQ&branch=master)](https://app.bitrise.io/app/d53aeedb8c8301c3) 6 | [![Version](https://img.shields.io/cocoapods/v/Cronet.svg?style=flat)](https://cocoapods.org/pods/Cronet) 7 | [![License](https://img.shields.io/cocoapods/l/Cronet.svg?style=flat)](https://cocoapods.org/pods/Cronet) 8 | [![Platform](https://img.shields.io/cocoapods/p/Cronet.svg?style=flat)](https://cocoapods.org/pods/Cronet) 9 | 10 | [Cronet](https://chromium.googlesource.com/chromium/src/+/master/components/cronet) is the [Chromium network stack](https://chromium.googlesource.com/chromium/src/+/master/net/docs/life-of-a-url-request.md) made available to iOS apps as a library. 11 | 12 | Cronet takes advantage of multiple technologies that reduce the latency and increase the throughput of the network requests that your app needs to work. 13 | 14 | This is the same networking stack that is used in the Chrome browser by over a billion people. 15 | Cronet has support for both [Android](https://developer.android.com/guide/topics/connectivity/cronet) and iOS. 16 | 17 | This package makes it easy to use Cronet in your iOS apps. 18 | 19 | **Note: You will have to disable bitcode on your target.** 20 | 21 | ## Table of contents 22 | 23 | * [Features](#features) 24 | * [What is this repo?](#what-is-this-repo) 25 | * [Installing](#installing) 26 | * [Using Cocoapods](#using-cocoapods) 27 | * [Manual Installataion](#manual-installataion) 28 | * [Usage](#usage) 29 | * [Known Issues](#known-issues) 30 | * [License](#license) 31 | 32 | 33 | ## Features 34 | * **Protocol support** 35 | 36 | Cronet natively supports the HTTP, HTTP/2, and [QUIC](https://www.chromium.org/quic) protocols. 37 | 38 | * **Request prioritization** 39 | 40 | The library allows you to set a priority tag for the requests. The server can use the priority tag to determine the order in which to handle the requests. 41 | 42 | * **Resource caching** 43 | 44 | Cronet can use an in-memory or disk cache to store resources retrieved in network requests. Subsequent requests are served from the cache automatically. 45 | 46 | * **Asynchronous requests** 47 | 48 | Network requests issued using the Cronet Library are asynchronous by default. Your worker threads aren't blocked while waiting for the request to come back. 49 | 50 | * **Data compression** 51 | 52 | Cronet supports data compression using the [Brotli Compressed Data Format](https://tools.ietf.org/html/rfc7932). 53 | 54 | ## What is this repo? 55 | 56 | You may be wondering, if Cronet is a chromium libary, what is this repo about? 57 | 58 | That is right, Cronet is a chromium library and this repo doesn't add or modify any chromium code. For that fact this repo doesn't even have any code. 59 | This repo is about making Cronet easier to use in your iOS app if you are not a google employee. 60 | 61 | As some one of HN succiently said: 62 | 63 | > Chromium is a fairly typical google project where the recommended first step to building it is to become a google employee but some alternative workarounds are also available if that's not practical. 64 | 65 | More precisely this repo: 66 | 67 | 1. Fetches unofficial [cronet build artificats](https://console.cloud.google.com/storage/browser/chromium-cronet/ios) that chromium publishes. 68 | 1. Merge the iphoneos and iphonesimulator frameworks together using `lipo` for both static and dynamic builds 69 | 1. Publishes a github release with the static, dymanic and dysm archives attached to the release on github 70 | 1. Publishes the static version of the module to cocoapods under [Cronet](https://cocoapods.org/pods/Cronet) 71 | 72 | ## Installing 73 | 74 | 1. **Make sure bitcode is disabled** on the target you want to link `Cronet` with. 75 | 1. Link `Cronet.framework` into your iOS app's workspace/project either using `cocoapods` or manually linking the framework. 76 | 77 | ### Using Cocoapods 78 | 79 | 1. Add `pod 'Cronet'` under your desired target in your `Podfile`: 80 | 1. Run `pod install` 81 | 82 | ### Manual Installataion 83 | 84 | 1. Download the appropriate archive that you want to use from the [latest release](https://github.com/akshetpandey/Cronet.framework/releases/latest) 85 | 1. Extarct the archive and copy the `Cronet.framewrok` folder into your project by dragging the folder into your project in **Xcode**. 86 | Make sure to select **Copy items if needed** in the dialog that pops up 87 | 1. In your `Target` -> `Build Phase` -> `Link Binary With Libraries` add `SystemConfiguration.framework` 88 | 1. In your `Target` -> `Build Settings` -> `Other Linker Flags` add `-lc++` 89 | 90 | 91 | ## Usage 92 | 93 | Initialize cronet somewhere in your app's start flow. For example, in: 94 | 95 | ```objc 96 | - (BOOL)application:... didFinishLaunchingWithOptions:... 97 | ``` 98 | 99 | Add: 100 | ```objc 101 | [Cronet setHttp2Enabled:YES]; 102 | [Cronet setQuicEnabled:YES]; 103 | [Cronet setBrotliEnabled:YES]; 104 | [Cronet start]; 105 | [Cronet registerHttpProtocolHandler]; 106 | ``` 107 | 108 | For a complete list of initilization options see [Cronet.h](https://chromium.googlesource.com/chromium/src/+/master/components/cronet/ios/Cronet.h) 109 | 110 | ## Known Issues 111 | 112 | 1. Cronet library is not available in a bitcode enabled version. So you **must disable bitcode** in your target to use it. 113 | 1. Some `NSURLSession*Delegate` callback's don't work when cronet is registered as a protocol handler in that session. 114 | 1. Dsym is only available for dynamic framework. 115 | 116 | ## License 117 | 118 | See the [LICENSE](https://github.com/akshetpandey/Cronet.framework/blob/master/LICENSE) file for more info. 119 | -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- 1 | MAJOR=78 2 | MINOR=0 3 | BUILD=3888 4 | PATCH=0 5 | -------------------------------------------------------------------------------- /_Pods.xcodeproj: -------------------------------------------------------------------------------- 1 | Example/Pods/Pods.xcodeproj -------------------------------------------------------------------------------- /build_framework.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | __dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" 4 | 5 | function build_static_framework() { 6 | cp -r "Release-iphoneos/cronet/Static/Cronet.framework" Cronet.framework 7 | cp "Release-iphoneos/cronet/Cronet.framework/Info.plist" Cronet.framework 8 | cp -r "Release-iphoneos/cronet/Cronet.framework/Modules" Cronet.framework 9 | 10 | lipo -create -output Cronet.framework/Cronet Release-iphoneos/cronet/Static/Cronet.framework/Cronet Release-iphonesimulator/cronet/Static/Cronet.framework/Cronet 11 | 12 | rm -f "$__dir/Cronet-Static.framework.tar.bz2" || true 13 | tar cjf Cronet-Static.framework.tar.bz2 Cronet.framework 14 | mv Cronet-Static.framework.tar.bz2 "$__dir" 15 | 16 | rm -rf Cronet.framework 17 | } 18 | 19 | function build_dynamic_framework() { 20 | cp -r "Release-iphoneos/cronet/Cronet.framework" Cronet.framework 21 | 22 | lipo -create -output Cronet.framework/Cronet Release-iphoneos/cronet/Cronet.framework/Cronet Release-iphonesimulator/cronet/Cronet.framework/Cronet 23 | 24 | rm -rf "$__dir/Frameworks/Cronet.framework" || true 25 | cp -r Cronet.framework "$__dir/Frameworks" 26 | 27 | rm -f "$__dir/Cronet-Dynamic.framework.tar.bz2" || true 28 | tar cjf Cronet-Dynamic.framework.tar.bz2 Cronet.framework 29 | mv Cronet-Dynamic.framework.tar.bz2 "$__dir" 30 | 31 | rm -rf Cronet.framework 32 | } 33 | 34 | function build_dsym() { 35 | cp "Release-iphoneos/cronet/Cronet.dSYM.tar.bz2" . 36 | tar xf Cronet.dSYM.tar.bz2 37 | mv Cronet.dSYM Cronet-iphoneos.dSYM 38 | 39 | cp "Release-iphonesimulator/cronet/Cronet.dSYM.tar.bz2" . 40 | tar xf Cronet.dSYM.tar.bz2 41 | mv Cronet.dSYM Cronet-iphonesimulator.dSYM 42 | 43 | cp -r Cronet-iphoneos.dSYM Cronet.framework.dSYM 44 | 45 | lipo -create -output Cronet.framework.dSYM/Contents/Resources/DWARF/Cronet Cronet-iphoneos.dSYM/Contents/Resources/DWARF/Cronet Cronet-iphonesimulator.dSYM/Contents/Resources/DWARF/Cronet 46 | 47 | rm -f "$__dir/Cronet.framework.dSYM.tar.bz2" || true 48 | tar cjf Cronet.framework.dSYM.tar.bz2 Cronet.framework.dSYM 49 | cp Cronet.framework.dSYM.tar.bz2 "$__dir" 50 | } 51 | 52 | function build_framework() { 53 | local CRONET_VERSION=$1 54 | if [ -z "$CRONET_VERSION" ]; then 55 | echo "Empty framework version. Check passed in argument" 56 | return 1 57 | fi 58 | 59 | if ! gsutil -q stat "gs://chromium-cronet/ios/${CRONET_VERSION}/Release-iphoneos/VERSION" ; then 60 | echo "Invalid framework version $CRONET_VERSION. Build Release-iphoneos build does not exist on gs://chromium-cronet" 61 | return 2 62 | fi 63 | 64 | if ! gsutil -q stat "gs://chromium-cronet/ios/${CRONET_VERSION}/Release-iphonesimulator/VERSION" ; then 65 | echo "Invalid framework version $CRONET_VERSION. Release-iphonesimulator build does not exist on gs://chromium-cronet" 66 | return 3 67 | fi 68 | 69 | local OLD_PWD=$PWD 70 | rm -rf "$__dir/tmp" || true 71 | mkdir -p "$__dir/tmp" 72 | cd "$__dir/tmp" 73 | 74 | gsutil -q -m cp -r "gs://chromium-cronet/ios/${CRONET_VERSION}/Release-*" . 75 | 76 | build_static_framework 77 | build_dynamic_framework 78 | build_dsym 79 | 80 | cd "$OLD_PWD" 81 | } 82 | 83 | if [ "${BASH_SOURCE[0]}" != "${0}" ]; then 84 | export -f build_framework 85 | else 86 | # Exit on error. Append "|| true" if you expect an error. 87 | set -o errexit 88 | # Exit on error inside any functions or subshells. 89 | set -o errtrace 90 | # Do not allow use of undefined vars. Use ${VAR:-} to use an undefined VAR 91 | set -o nounset 92 | # Catch the error in case mysqldump fails (but gzip succeeds) in `mysqldump |gzip` 93 | set -o pipefail 94 | # Turn on traces, useful while debugging but commented out by default 95 | # set -o xtrace 96 | 97 | build_framework "${@}" 98 | exit $? 99 | fi 100 | -------------------------------------------------------------------------------- /create_all_current_releases.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Exit on error. Append "|| true" if you expect an error. 4 | set -o errexit 5 | # Exit on error inside any functions or subshells. 6 | set -o errtrace 7 | # Do not allow use of undefined vars. Use ${VAR:-} to use an undefined VAR 8 | set -o nounset 9 | # Catch the error in case mysqldump fails (but gzip succeeds) in `mysqldump |gzip` 10 | set -o pipefail 11 | # Turn on traces, useful while debugging but commented out by default 12 | # set -o xtrace 13 | 14 | # shellcheck disable=SC1091 15 | source create_release.sh 16 | 17 | rm -f current_chrome_versions.json || true 18 | wget -q https://omahaproxy.appspot.com/all.json -O current_chrome_versions.json 19 | 20 | DEV_VERSION=$(jq -r ".[] | select(.os | contains(\"ios\")) | .versions[] | select(.channel | contains(\"dev\")) | .version" current_chrome_versions.json) 21 | BETA_VERSION=$(jq -r ".[] | select(.os | contains(\"ios\")) | .versions[] | select(.channel | contains(\"beta\")) | .version" current_chrome_versions.json) 22 | STABLE_VERSION=$(jq -r ".[] | select(.os | contains(\"ios\")) | .versions[] | select(.channel | contains(\"stable\")) | .version" current_chrome_versions.json) 23 | 24 | rm -f current_chrome_versions.json || true 25 | 26 | DEV_BRANCH="$DEV_VERSION-dev" 27 | BETA_BRANCH="$BETA_VERSION-beta" 28 | STABLE_BRANCH="$STABLE_VERSION" 29 | 30 | if ! git ls-remote --exit-code origin "$STABLE_BRANCH" ; then 31 | echo "BUILDING $STABLE_BRANCH" 32 | create_release "$STABLE_VERSION" "$STABLE_BRANCH" 33 | fi 34 | 35 | if ! git ls-remote --exit-code origin "$BETA_BRANCH" ; then 36 | echo "BUILDING $BETA_BRANCH" 37 | create_release "$BETA_VERSION" "$BETA_BRANCH" 38 | fi 39 | 40 | if ! git ls-remote --exit-code origin "$DEV_BRANCH" ; then 41 | echo "BUILDING $DEV_BRANCH" 42 | create_release "$DEV_VERSION" "$DEV_BRANCH" 43 | fi 44 | -------------------------------------------------------------------------------- /create_release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # shellcheck disable=SC1091 4 | source build_framework.sh 5 | 6 | function create_release() { 7 | local CRONET_VERSION=$1 8 | local BRANCH_NAME=$2 9 | 10 | if [ -z "$CRONET_VERSION" ]; then 11 | echo "Empty cronet version. Check passed in argument" 12 | return 1 13 | fi 14 | 15 | if [ -z "$BRANCH_NAME" ]; then 16 | echo "Empty branch name. Check passed in argument" 17 | return 1 18 | fi 19 | 20 | local CURRENT_BRANCH_NAME 21 | CURRENT_BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD) 22 | 23 | git checkout -b "$BRANCH_NAME" 24 | 25 | build_framework "$CRONET_VERSION" 26 | 27 | sed -i "" "s/MASTER_BRANCH/$BRANCH_NAME/" Cronet.podspec 28 | 29 | git add . 30 | git commit -m "Build $BRANCH_NAME" 31 | 32 | git tag "v$BRANCH_NAME" 33 | git push origin "$BRANCH_NAME" 34 | git push origin --tags 35 | 36 | if [[ $BRANCH_NAME == *"dev" || $BRANCH_NAME == *"beta" ]]; then 37 | hub release create --draft=false -p -a Cronet-Static.framework.tar.bz2 -a Cronet-Dynamic.framework.tar.bz2 -a Cronet.framework.dSYM.tar.bz2 -m "$BRANCH_NAME" "v$BRANCH_NAME" 38 | else 39 | hub release create --draft=false -a Cronet-Static.framework.tar.bz2 -a Cronet-Dynamic.framework.tar.bz2 -a Cronet.framework.dSYM.tar.bz2 -m "$BRANCH_NAME" "v$BRANCH_NAME" 40 | fi 41 | 42 | git checkout "$CURRENT_BRANCH_NAME" 43 | } 44 | 45 | if [ "${BASH_SOURCE[0]}" != "${0}" ]; then 46 | export -f create_release 47 | else 48 | # Exit on error. Append "|| true" if you expect an error. 49 | set -o errexit 50 | # Exit on error inside any functions or subshells. 51 | set -o errtrace 52 | # Do not allow use of undefined vars. Use ${VAR:-} to use an undefined VAR 53 | set -o nounset 54 | # Catch the error in case mysqldump fails (but gzip succeeds) in `mysqldump |gzip` 55 | set -o pipefail 56 | # Turn on traces, useful while debugging but commented out by default 57 | # set -o xtrace 58 | 59 | create_release "${@}" 60 | exit $? 61 | fi 62 | --------------------------------------------------------------------------------