profile
viewpoint
Jari (LotU) MrLotU @wehkamp The Netherlands https://jarict.com Swift Developer | WWDC 2017 & 2019 Scholarship winner | Server Side Swift team @raywenderlich | Data Engineer @wehkamp

autimatisering/DeclarativeVapor 1

Declarative Programming in Vapor APIs

MrLotU/LearningJournalTH 1

Project 5 of the Treehouse Python Techdegree

MrLotU/AdventOfCode2018 0

Advent Of Code 2018 submissions

MrLotU/AdventOfCode2020 0

https://adventofcode.com 2020

MrLotU/articles 0

Articles for NSHipster.com

MrLotU/auth-template 0

A starting point for Vapor applications using the auth provider.

MrLotU/bot-zero 0

An "empty" Hubot project that can be used to build your own Slack bot.

issue commentvapor/vapor

How to run Vapor on macOS App ?

This looks like an Xcode/network or proxy issue. Can you clone the repo from the command line?

CloseServer

comment created time in a day

issue openedvapor/vapor

How to run Vapor on macOS App ?

I want to go through the Mac OS app package.swift To add vapor, but Zong always fails. Is there any other good solution?

image

created time in a day

PR opened wwdc/2019

i'm extremely late lmao (add submission for 2019)
+1 -0

0 comment

1 changed file

pr created time in 2 days

fork ktoso/alchemy

Elegant, batteries included web framework for Swift.

fork in 3 days

startedalchemy-swift/alchemy

started time in 3 days

MemberEvent

startedMrLotU/SwiftPrometheus

started time in 3 days

issue openedvapor/vapor

Template demo feature todos NOT working

I don't really know what to say about template demo NOT working. It's totally NOT friend for newer.

MacOS Bigsur

vapor new helloworld use fluent & mysql

run succeed and see It works, but the demo feature todos is NOT working & don't know what happen.

further more if u select fluent & mysql & leaf, u will find db config code is missing

created time in 3 days

PR opened vapor/vapor

DRAFT: Separate multipart from vapor into multipart-kit

This PR separates multipart from the vapor repo into multipart-kit a standalone which only has nio as a dependency. This is still a work in progress as it needs a tag/merge of vapor/multipart-kit#50

+5 -1719

0 comment

13 changed files

pr created time in 4 days

create barnchvapor/vapor

branch : make-multipart-standalone

created branch time in 4 days

issue closedvapor/vapor

Real world pricing/load metrics for production/qa environment

Hello. I’m very interested in mastering swift on a server, everything is brilliant until it’s come to deploy on for QA/prod environment. In a lot of articles, the deployment process described very roughly and with the words “it’s a very broad topic and depends on your use case”. Well, this is true but can someone share success stories with metrics that describe in detail ~ load, infrastructure coast for that load, and real-word process of qa/prod deployment.

What I checked so far:

While there is some really good info about possible deployments (AWS, DIGItalOcean, Heroku), after reading all of this I have more questions than answers :)

My main questions are:

  • Should I use some dedicated database instances from the start, Amazon RDS, managed databases from the DigitalOcean? Is it ok to use the same server for QA/Prod purposes?

  • Is it ok to use EC2/DigitalOcean droplet instance with docker-compose and handle App/DB/Nginx from the same machine? Can it handle 100/500/1000 visitors per day? So if I have 10$/month EC2 or DigitalOcean droplet can it handle 100/200/300 visitors per day for some simple blog app?

  • How server-side people manage DB refresh from Production to QA? Are there some best practices or real-world success stories?

So basically I’m looking for some general propose metrics like:

For 500-2000 visitors per day, you can go with a single droplet/EC2 for 5$ a month for the QA environment, and for production, you can use the bigger machine maybe 10$/moth. Total 15$/month for QA/PROD and 500-2000 users.

OR

Go with AWS Fargate/ECR and managed DB - you will pay X$ for the small app which can handle ~Y requests but can easily scale if needed. What are X and Y in this case? :)

So can someone share some statistics from a real application (a type of application, ~requests/day, infrastructure coast, and your deployment method) and maybe describe processes that work for your use case (QA/PROD/Db refresh and so on). Thanks in advance!

closed time in 5 days

3a4oT

issue commentvapor/vapor

Real world pricing/load metrics for production/qa environment

There is a lot to unpack here and as you mention that Vapor mention's it's a broad topic! You might find some answers in Discord in the various channels for AWS, DO, Heroku, docker and ci-cd. That I think is probably the best place to get some good help even if it's not all the answers at once. But at least you can put your use case across and people will chime in 😊.

Going to close this for now, but please reopen if you feel this is wrong.

3a4oT

comment created time in 5 days

issue openedvapor/vapor

vapor build fails with clang-10 error

<!-- 🚀 Thank you for contributing! --->

Describe the bug

A downloaded vapor and built it with swift build, and it fails, due to clang-10 error, no such file or directory.


swift build --verbose /usr/bin/xcrun --sdk macosx --show-sdk-platform-path /usr/bin/xcrun --sdk macosx --find xctest /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -print-target-info xcrun --sdk macosx --show-sdk-platform-path xcrun vtool -show-build /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks/XCTest.framework/XCTest xcrun --sdk iphoneos --show-sdk-platform-path xcrun vtool -show-build /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework/XCTest xcrun --sdk appletvos --show-sdk-platform-path xcrun vtool -show-build /Applications/Xcode.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks/XCTest.framework/XCTest xcrun --sdk watchos --show-sdk-platform-path xcrun vtool -show-build /Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks/XCTest.framework/XCTest /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_server.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls13_server.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_server.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSLShims -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSLShims/include -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodule-map-file=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/module.modulemap -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSLShims.build/shims.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSLShims/shims.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSLShims.build/shims.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOLinux -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOLinux/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOLinux.build/shim.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOLinux/shim.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOLinux.build/shim.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOSHA1 -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOSHA1/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOSHA1.build/c_nio_sha1.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOSHA1/c_nio_sha1.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOSHA1.build/c_nio_sha1.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls_method.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls_method.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls_method.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_enc.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls13_enc.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_enc.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOWindows -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOWindows/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOWindows.build/shim.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOWindows/shim.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOWindows.build/shim.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOWindows -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOWindows/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOWindows.build/WSAStartup.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOWindows/WSAStartup.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOWindows.build/WSAStartup.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOHTTPParser -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOHTTPParser/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOHTTPParser.build/c_nio_http_parser.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIOHTTPParser/c_nio_http_parser.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOHTTPParser.build/c_nio_http_parser.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIODarwin -I /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIODarwin/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIODarwin.build/shim.c.d -c /Users/hottelet/vapor/.build/checkouts/swift-nio/Sources/CNIODarwin/shim.c -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIODarwin.build/shim.c.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_client.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls13_client.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_client.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_both.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls13_both.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls13_both.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls_record.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/tls_record.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/tls_record.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/t1_lib.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/t1_lib.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/t1_lib.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/t1_enc.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/t1_enc.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/t1_enc.cc.o /Users/hottelet/miniconda3/bin/x86_64-apple-darwin13.4.0-clang -fobjc-arc -target x86_64-apple-macosx10.10 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.1.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -g -O0 -DSWIFT_PACKAGE=1 -DDEBUG=1 -fblocks -index-store-path /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store -fmodules -fmodule-name=CNIOBoringSSL -I /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/include -fmodules-cache-path=/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/ModuleCache -MD -MT dependencies -MF /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/ssl_x509.cc.d -std=c++14 -c /Users/hottelet/vapor/.build/checkouts/swift-nio-ssl/Sources/CNIOBoringSSL/ssl/ssl_x509.cc -o /Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/CNIOBoringSSL.build/ssl/ssl_x509.cc.o clang-10: error: unknown argument: '-index-store-path' clang-10: error: unknown argument: '-index-store-path' clang-10: error: unknown argument: '-index-store-path' clang-10: error: unknown argument: '-index-store-path' clang-10: error: no such file or directory: '/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store' clang-10: error: no such file or directory: '/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store' clang-10: error: no such file or directory: '/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store' clang-10: error: no such file or directory: '/Users/hottelet/vapor/.build/x86_64-apple-macosx/debug/index/store' clang-10: error: unknown argument: '-index-store-path'

Additional context

Add any other context about the problem here.

created time in 5 days

issue openedvapor/vapor

Real world pricing/load metrics for production/qa environment

Hello. I’m very interested in mastering swift on a server, everything is brilliant until it’s come to deploy on for QA/prod environment. In a lot of articles, the deployment process described very roughly and with the words “it’s a very broad topic and depends on your use case”. Well, this is true but can someone share success stories with metrics that describe in detail ~ load, infrastructure coast for that load, and real-word process of qa/prod deployment.

What I checked so far:

While there is some really good info about possible deployments (AWS, DIGItalOcean, Heroku), after reading all of this I have more questions than answers :)

My main questions are:

  • Should I use some dedicated database instances from the start, Amazon RDS, managed databases from the DigitalOcean? Is it ok to use the same server for QA/Prod purposes?

  • Is it ok to use EC2/DigitalOcean droplet instance with docker-compose and handle App/DB/Nginx from the same machine? Can it handle 100/500/1000 visitors per day? So if I have 10$/month EC2 or DigitalOcean droplet can it handle 100/200/300 visitors per day for some simple blog app?

  • How server-side people manage DB refresh from Production to QA? Are there some best practices or real-world success stories?

So basically I’m looking for some general propose metrics like:

For 500-2000 visitors per day, you can go with a single droplet/EC2 for 5$ a month for the QA environment, and for production, you can use the bigger machine maybe 10$/moth. Total 15$/month for QA/PROD and 500-2000 users.

OR

Go with AWS Fargate/ECR and managed DB - you will pay X$ for the small app which can handle ~Y requests but can easily scale if needed. What are X and Y in this case? :)

So can someone share some statistics from a real application (a type of application, ~requests/day, infrastructure coast, and your deployment method) and maybe describe processes that work for your use case (QA/PROD/Db refresh and so on). Thanks in advance!

created time in 5 days

push eventvapor/vapor

Tim

commit sha d5170699f60dacd430438d4505e61a4e81fa34e3

Update sponspors links

view details

push time in 6 days

fork ktoso/swift-source-compat-suite

The infrastructure and project index comprising the Swift source compatibility suite.

fork in 7 days

startedapple/swift-source-compat-suite

started time in 7 days

issue openedvapor/vapor

Let user specify TLS private key type

https://github.com/vapor/vapor/blob/53d15b27ad59b4c91f6ea5fa401b891bd998e202/Sources/Vapor/HTTP/Server/HTTPServer.swift#L142

// Enable TLS.
try app.http.server.configuration.tlsConfiguration = .forServer(
    certificateChain: [
        .certificate(.init(
            file: "/path/to/cert.pem",
            format: .pem
        ))
    ],
    privateKey: .file("/path/to/key.pem")
)

Let's Encrypt sometimes generates PEM file with extension .key, that will cause [ codes.vapor.application ] [ ERROR ] Could not configure TLS: failedToLoadPrivateKey (Vapor/HTTP/Server/HTTPServer.swift:333).

As @Lukasa has mentioned, there is another initializer: public convenience init(file: String, format: NIOSSLSerializationFormats) throws {.

We may need to expose NIOSSLSerializationFormats so that users won't need to import SwiftNIO by themselves.

created time in 7 days

startedMrLotU/SwiftPrometheus

started time in 7 days

startedTokamakUI/TokamakVapor

started time in 9 days

startedSDGGiesbrecht/SDGSwift

started time in 9 days

startedLloople/vapor-maker-commands

started time in 9 days

PublicEvent

issue closedvapor/vapor

Crash in Vapor or NIO

<!-- 🚀 Thank you for contributing! --->

Describe the bug

Hello! I am lately having my Vapor app crash rather frequently but not always. I cannot pinpoint when exactly this happens but it seems to be when I make too many requests at the same time. Attached the backtrace Backtrace.txt

To Reproduce

I am not able to consistently reproduce the crash. it seems to occur when I am making many requests at the same time but I can't be sure.

Environment

I am attaching my Package.resolved

Package.resolved.txt

closed time in 9 days

coaoac

issue commentvapor/vapor

Crash in Vapor or NIO

The crash did not happen consistently so it was hard to identify which portion of my code triggered it. It just seemed to happen when I am doing many requests at the same time. But that could be jus my because it increased the probability of it happening. now I am not able to make the app crash anymore after the last Vapor update.
I can close this for now and come back it it happens again.

coaoac

comment created time in 9 days

pull request commentvapor/vapor

BUG FIX: Multipart/form-data crashed if data was missing

These changes are now available in 4.37.1

TheInkedEngineer

comment created time in 10 days

created tagvapor/vapor

tag4.37.1

💧 A server-side Swift web framework.

created time in 10 days

push eventvapor/vapor

TheInkedEngineer

commit sha 53d15b27ad59b4c91f6ea5fa401b891bd998e202

BUG FIX: Multipart/form-data crashed if data was missing (#2548) * Add code to avoid crash + test * Add missing part * Apply suggestions from code review Co-authored-by: Tim Condon <0xTim@users.noreply.github.com> Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>

view details

push time in 10 days

release vapor/vapor

4.37.1

released time in 10 days

PR merged vapor/vapor

BUG FIX: Multipart/form-data crashed if data was missing semver-patch

Fix a crash in FormDataDecoderContext when the offset doesn't exist when parsing multipart form data (#2548)

+28 -1

2 comments

2 changed files

TheInkedEngineer

pr closed time in 10 days

more