Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I/O polling #3240

Open
wants to merge 86 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
65e8dec
Bump to CE 3.5-4f9e57b
armanbilge Dec 17, 2022
073723b
Sketch `FdPollingSocket`
armanbilge Dec 17, 2022
ce77f22
Better error-handling in `ResizableBuffer`
armanbilge Dec 17, 2022
3bc1410
Impl socket close, add native util
armanbilge Dec 17, 2022
862ae58
Tidy unused type param
armanbilge Dec 17, 2022
9e475e8
Add socket address helpers
armanbilge Dec 17, 2022
f93c662
Implement `endOfInput`, `endOfOutput`
armanbilge Dec 17, 2022
06c0fe7
Wip socket reading
armanbilge Dec 17, 2022
a75a5ab
Take address as ctor args
armanbilge Dec 18, 2022
c104cd7
Implement reading
armanbilge Dec 18, 2022
c8e2316
Address warnings
armanbilge Dec 18, 2022
f0fd81d
Bikeshed
armanbilge Dec 18, 2022
86ceb06
Implement writing
armanbilge Dec 18, 2022
3eb0e18
Bump CE snapshot, adopt new fd polling api
armanbilge Dec 21, 2022
8889e05
First attempt at unix sockets
armanbilge Dec 22, 2022
5c62bc2
Cross-compile unixsockets tests
armanbilge Dec 22, 2022
adba432
Workaround another borked method
armanbilge Dec 22, 2022
0aa9260
Bump base version
armanbilge Dec 22, 2022
64d7a76
Implement non-blocking std{in,out,err}
armanbilge Dec 22, 2022
c27e03d
Fix unix socket error handling
armanbilge Dec 22, 2022
ebc0ca5
Simplify unix socket connect
armanbilge Dec 22, 2022
43b0c06
Fix simplified unix socket connect
armanbilge Dec 22, 2022
6e25eab
stackalloc `sockaddr_un` ftw
armanbilge Dec 22, 2022
1cf0db4
Add more socket option helpers
armanbilge Dec 22, 2022
74b80f9
`accept4` is a linux thing
armanbilge Dec 22, 2022
84fc9b1
First attempt at fd polling socket group
armanbilge Dec 22, 2022
1678d52
`raiseSocketError` -> `checkSocketError`
armanbilge Dec 22, 2022
b5b3a04
Expose new polling system `Network`
armanbilge Dec 22, 2022
e682a37
Fix exceptions, tweak test
armanbilge Dec 22, 2022
220f6bc
Add forgotten `guard`s
armanbilge Dec 22, 2022
ef299db
Workaround BSD `sa_family` quirk
armanbilge Dec 22, 2022
f6ecd2b
Unused import
armanbilge Dec 22, 2022
830564a
Fixing+debugging
armanbilge Dec 22, 2022
0ece5fc
Revert "Workaround BSD `sa_family` quirk"
armanbilge Dec 22, 2022
26a4e4f
Explicitly track if ipv4/ipv6 socket
armanbilge Dec 23, 2022
b0f71fe
Fix Scala 3 compile
armanbilge Dec 23, 2022
8c21312
Implement `SelectorPollingSocket`
armanbilge Dec 26, 2022
283eda4
Implement `SelectorPollingSocketGroup`
armanbilge Dec 26, 2022
f66cd37
Expose polling-based `Network`
armanbilge Dec 26, 2022
c4e0046
Coalesce `evalTap` / `evalMap`
armanbilge Dec 26, 2022
2b40f46
Fix accept cancelation
armanbilge Dec 26, 2022
ab235db
Fix `remoteAddress`
armanbilge Dec 26, 2022
1dbbdca
Ignore invalid test
armanbilge Dec 26, 2022
a02a2ed
Bump ce
armanbilge Dec 28, 2022
ac5c657
Bump base version
armanbilge Dec 28, 2022
93f8128
Merge remote-tracking branch 'upstream/main' into feature/jvm-polling…
armanbilge Apr 21, 2023
e1a3444
Bump CE snapshot
armanbilge Apr 27, 2023
51345a9
Bump CE snapshot
armanbilge Apr 28, 2023
e96c4e9
Merge branch 'feature/jvm-polling-system' into feature/polling
armanbilge Jun 14, 2023
2e815d6
Merge branch 'feature/native-polling-system' into feature/polling
armanbilge Jun 14, 2023
33d9f0c
Update to latest CE snapshot
armanbilge Jun 14, 2023
eb52f5e
Optimizations
armanbilge Jun 14, 2023
897ce2f
Set `SO_REUSEADDR=true` by default
armanbilge Jun 14, 2023
ab663db
Set socket options on accepted sockets
armanbilge Jun 14, 2023
5385c29
Fix method name
armanbilge Jun 14, 2023
97b3cdf
Remove flaky test
armanbilge Jun 14, 2023
1580d81
Fix Scala 3 compile
armanbilge Jun 14, 2023
895ea67
Fix connect error handling
armanbilge Jun 15, 2023
75a2246
Fix test
armanbilge Jun 15, 2023
3d9ccbb
Use Cirrus for testing ARM and macOS
armanbilge Jun 15, 2023
1400219
Fix ci task name
armanbilge Jun 15, 2023
02797f7
Fix Cirrus Dockerfile
armanbilge Jun 15, 2023
5072dd3
Install cmake in Dockerfile
armanbilge Jun 15, 2023
e358dce
Remove stray debug println
armanbilge Jun 15, 2023
1af22dd
Fix socket close leak
armanbilge Jun 15, 2023
21d7c00
Poke ci
armanbilge Jun 15, 2023
caed90f
Use custom docker image
armanbilge Jun 19, 2023
f0ef5da
Fix accept loop
armanbilge Jun 19, 2023
4b17c53
Install git in docker
armanbilge Jun 19, 2023
2a6cc31
Revert "Use custom docker image"
armanbilge Jun 22, 2023
21a9bfe
Install zlib
armanbilge Jun 22, 2023
80804cc
Install Node.js
armanbilge Jun 22, 2023
40241c8
Remove epollcat dep
armanbilge Jun 29, 2023
9f78bdd
Merge branch 'main' into feature/polling
armanbilge Aug 25, 2023
441eaa0
Ignore `ENOTCONN` on socket shutdown
armanbilge Aug 25, 2023
e4ffdd4
Merge remote-tracking branch 'upstream/main' into feature/polling
armanbilge Sep 5, 2023
500e545
Use `atUnsafe`
armanbilge Sep 5, 2023
1e8d405
Add nowarn
armanbilge Sep 5, 2023
30afaf4
Merge remote-tracking branch 'upstream/main' into feature/polling
armanbilge Sep 15, 2023
4b5f50b
Bump base version
armanbilge Sep 15, 2023
7515c87
Merge remote-tracking branch 'upstream/main' into feature/polling
armanbilge Oct 3, 2023
4ae0e16
Merge remote-tracking branch 'upstream/main' into feature/polling
armanbilge Jan 8, 2024
365636d
Bump CE
armanbilge Jan 8, 2024
17767c3
Merge branch 'main' into feature/polling
armanbilge Dec 27, 2024
518efae
No more Fs2IoSuite
armanbilge Dec 27, 2024
1a076cd
Delete .cirrus/Dockerfile
armanbilge Dec 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Install git in docker
  • Loading branch information
armanbilge committed Jun 19, 2023
commit 4b17c53cc98cd28cf61013bfd5407c23ae31568b
2 changes: 1 addition & 1 deletion .cirrus/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM eclipse-temurin:17

RUN apt-get update && apt-get install -y build-essential clang cmake libssl-dev
RUN apt-get update && apt-get install -y build-essential clang cmake git libssl-dev
RUN wget -q https://github.com/sbt/sbt/releases/download/v1.9.0/sbt-1.9.0.tgz && tar xvfz sbt-1.9.0.tgz

RUN git clone https://github.com/aws/s2n-tls.git && cd s2n-tls && cmake -S . -B build && cmake --build build && cmake --install build
Expand Down