Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
413 commits
Select commit Hold shift + click to select a range
af45e89
refactor(storage): embed connection id in intermediates
shanoaice Dec 1, 2021
2ad2f9c
refactor(storage): auto open mappings
shanoaice Dec 1, 2021
1b01163
feature(storage): fold configurations
shanoaice Dec 1, 2021
0c7a4d5
feature(storage): update server configuration
shanoaice Dec 1, 2021
03a2af3
feature(storage): select server config by name & id
shanoaice Dec 1, 2021
36a08fa
refactor(micro): remove Aurum.Micro project
shanoaice Dec 1, 2021
2efccd1
chore(readme): separate GUI project
shanoaice Dec 1, 2021
118d051
fix(storage): correctly select result in query
shanoaice Dec 1, 2021
6ac35b6
wip(optics): optics for tcp/kcp/ws types
shanoaice Dec 2, 2021
69d26e7
feature(optics): optics for all transport types
shanoaice Dec 2, 2021
046fd7d
fix(transport): use Union for QUIC security option
shanoaice Dec 2, 2021
6b1e2db
refactor(storage): merge DNS and Routing intermediate
shanoaice Dec 3, 2021
2129c92
feature(storage): directly modify entry in record form
shanoaice Dec 3, 2021
2fe51a6
wip(storage): generic conf handler - insertion
shanoaice Dec 3, 2021
6d2d142
fix(share): correctly parse QUIC security parameter
shanoaice Dec 3, 2021
6993c29
wip(handler): retrieve Routing and DNS config
shanoaice Dec 6, 2021
f9446df
fix(storage): foldGeneric should invoke mapGeneric
shanoaice Dec 6, 2021
e623e4d
feature(storage): update generic conf entries
shanoaice Dec 6, 2021
7d3eac3
fix(mapping): don't mark string primary key as AutoIncrement
shanoaice Dec 6, 2021
e7144dc
fix(mapping): set bigger maxlength for configuration columns
shanoaice Dec 6, 2021
81801a0
refactor(mapping): store connections of a group in a separate table
shanoaice Dec 6, 2021
5b8c4f8
fix(storage-actions): correctly construct mapping before updating entry
shanoaice Dec 6, 2021
68d922a
feature(storage-mapping): lenses for group object
shanoaice Dec 6, 2021
339c2c5
feature(storage-action): actions for group object
shanoaice Dec 6, 2021
09735fb
refactor(storage): rename Intermediate to Records
shanoaice Dec 7, 2021
b005a04
chore(style): remove unnecessary type annotations
shanoaice Dec 7, 2021
00badc3
refactor(storage-mapping): use connId as ConnGroup Primary Key
shanoaice Dec 8, 2021
1acdacb
feature(storage-handler): CRUD for Groups
shanoaice Dec 8, 2021
2382f26
refactor(storage-handler): return list instead of seq (IEnumerable)
shanoaice Dec 8, 2021
83e7bf0
refactor(storage-handler): ignore return values of _db methods
shanoaice Dec 8, 2021
88ae4bf
chore(comment): mark Tags table as preserved
shanoaice Dec 8, 2021
fc68624
style(dedup): remove unnecessary prefixes and suffixes
shanoaice Dec 8, 2021
5859fb2
chore(ignore): ignore generated nuget files
shanoaice Dec 8, 2021
e8bbbe4
chore(publish): paket templates for nuget packages
shanoaice Dec 8, 2021
0d473ee
chore(publish): publish to github packages
shanoaice Dec 8, 2021
a4305bb
fix(workflow): use .NET 6.0 SDK
shanoaice Dec 8, 2021
ff370de
fix(workflow): push with --no-symbols flag
shanoaice Dec 9, 2021
c3a57b7
fix(nupkg): add RepositoryType Attribute
shanoaice Dec 9, 2021
8685e2c
fix(workflow): specify api key in nuget push command
shanoaice Dec 9, 2021
213d70e
chore(workflow): Publish development packages to MyGet
shanoaice Dec 9, 2021
9c9ac24
fix(workflow): provide MyGet API Key when setup
shanoaice Dec 9, 2021
611232d
fix(workflow): specify source and API Key separately
shanoaice Dec 9, 2021
2d159dc
fix(workflow): specify api key in short form
shanoaice Dec 9, 2021
20d0e26
chore(workflow): try debug
shanoaice Dec 9, 2021
fed0027
fix(workflow): use direct v2 api
shanoaice Dec 9, 2021
50cee44
fix(workflow): use nuget.config
shanoaice Dec 9, 2021
51eaaf1
fix(nuget): fix default publish url
shanoaice Dec 9, 2021
6128725
fix(workflow): correctly construct publish command
shanoaice Dec 9, 2021
b789e09
fix(workflow): verbose push
shanoaice Dec 9, 2021
74b23c5
chore(workflow): try debug
shanoaice Dec 9, 2021
f7a2a9f
chore(workflow): try debug
shanoaice Dec 9, 2021
19f9c6c
chore(workflow): try debug
shanoaice Dec 9, 2021
c308e64
chore(workflow): try debug
shanoaice Dec 9, 2021
9621c39
fix(workflow): don't specify sources in command
shanoaice Dec 9, 2021
b4dc943
chore(sln): add nuget.config to sln
shanoaice Dec 9, 2021
5688fea
chore(deps): remove unused Avalonia.FuncUI deps
shanoaice Dec 9, 2021
2eb7251
chore(deps): add F#+
shanoaice Dec 10, 2021
53f3ac8
refactor(storage-mapping): put connection configuration in a separate…
shanoaice Dec 10, 2021
8d29f54
feature(storage-handler): retrieve separate server config
shanoaice Dec 10, 2021
17f5b3b
chore(readme): add information about the development package feed
shanoaice Dec 10, 2021
ddf6610
chore(deps): configure deps for Aurum.AssetManagement project
shanoaice Dec 10, 2021
bcf0745
feature(configuration): generate RoutingObject
shanoaice Dec 10, 2021
5a135d8
fix(configuration): correctly construct routing intermediate
shanoaice Dec 10, 2021
4258f3c
style(format): reformat code
shanoaice Dec 10, 2021
799979d
chore(rename): Aurum.AssetManagement -> Aurum.Filesystem
shanoaice Dec 10, 2021
1976615
feature(configuration): Record for top-level JSON configuration
shanoaice Dec 12, 2021
bd7945e
chore(package): bump Aurum.Configuration pkg version
shanoaice Dec 13, 2021
f96a715
refactor(helper): reimplement getDataDir
shanoaice Dec 14, 2021
02dc92b
refactor(helper): clarify code using Option.defaultValue
shanoaice Dec 14, 2021
f905eb8
fix(storage-handler): create data directory before opening/creating d…
shanoaice Dec 14, 2021
033ef8c
refactor(conf-toplevel): use string types for top-level conf fields
shanoaice Dec 14, 2021
93a7a67
feature(conf-toplevel): lens for LogObject
shanoaice Dec 15, 2021
e07dc80
fix(conf-outbound): mark all field of GoOutboundConfigurationObject o…
shanoaice Dec 15, 2021
c4a59e5
fix(conf-outbound): more generic GetServerInfo method
shanoaice Dec 15, 2021
7455a15
fix(conf-outbound): mark SendThrough as optional
shanoaice Dec 15, 2021
0a3852a
fix(conf-intermediate): correctly call `GetServerInfo` method
shanoaice Dec 15, 2021
74ad60e
fix(conf-outbound): correctly sanitize sendThrough field in constructor
shanoaice Dec 15, 2021
697ec18
fix(storage-handler): typo
shanoaice Dec 15, 2021
d6da185
feature(conf-outbound): optics for outbound types
shanoaice Dec 15, 2021
ce1eef6
feature(filesystem): flush configurations to filesystem
shanoaice Dec 20, 2021
714b1b8
chore(rel): bump Aurum.Configuration version
shanoaice Mar 5, 2022
ef679e2
chore(rel): bump Aurum.Filesystem version
shanoaice Mar 5, 2022
8c7cc04
feature(config): added shadowsocks 2022 methods
shanoaice May 21, 2022
b56045e
style(config): reformat files
shanoaice May 21, 2022
9a610d9
chore(deps): update tools
shanoaice Apr 19, 2023
7153e4c
chore(deps): add FSharp.SystemTextJson
shanoaice Apr 19, 2023
1edcea3
refactor(Aurum.Configuration): merge with sing-configuration-generator
shanoaice Apr 19, 2023
cfbe8f2
refactor(configuration): uses FSharp.SystemTextJson
shanoaice Apr 19, 2023
f35dcce
refactor(storage): discard original SQLite solution
shanoaice Apr 19, 2023
021b1d5
chore(README): update project status
shanoaice Apr 19, 2023
ecfdd7f
fix(build): update .NET SDK version
shanoaice Apr 19, 2023
e1e2aca
license(edit): re-license this library under LGPL-3.0-only
shanoaice Apr 21, 2023
b37c356
chore(deps): add Akka.NET packages
shanoaice Apr 25, 2023
09bff52
fix(deps): Messerli.ChangeCase
shanoaice Apr 26, 2023
cc1a6de
refactor(config): split common transports into new module
shanoaice Apr 26, 2023
d862b0e
refactor(config): provide separate snake-casing and camelCasing jsonO…
shanoaice Apr 26, 2023
cfc9655
fix(config): missing imports
shanoaice Apr 26, 2023
6defb3f
fix(config): missing JSON.Serialization imports
shanoaice Apr 26, 2023
099d29b
refactor(fs): remove obsolete fs code
shanoaice Apr 26, 2023
10a49da
fix(config): fix all merge compile error
shanoaice Apr 26, 2023
01b2058
chore(README): fix build status badges
shanoaice Apr 26, 2023
6c1e038
refactor(config): consistent naming
shanoaice Apr 26, 2023
63412e0
fix(config/v2fly): typo in module name
shanoaice Apr 26, 2023
4192d12
refactor(config/sub): extract subscription config
shanoaice Apr 26, 2023
79c316a
refactor(config/naming): distinguish v2ray/sing base config object
shanoaice Apr 26, 2023
f51ac85
feature(config/base): unified backend identifier
shanoaice Apr 26, 2023
50da1bd
refactor(config/v2fly): module namespace prefix
shanoaice Apr 26, 2023
dfb4c72
refactor(base/helpers): base64, json
shanoaice Apr 26, 2023
4ee5da1
chore(readme): include license in README
shanoaice Apr 26, 2023
7fc4cce
chore(editorconfig): indent size
shanoaice Apr 28, 2023
b87b9f1
refactor(wip-config): reorganize modules
shanoaice Apr 28, 2023
fefd9df
refactor(config/v2fly): split out VMessOutboundSetting and update to …
shanoaice Apr 28, 2023
ac3290a
license(packages): package template license identifier
shanoaice Apr 28, 2023
8fc6dbe
refactor(helpers): make option field skippable in JSON
shanoaice Apr 28, 2023
2875812
refactor(config/sing): remove redundant Skippable guard
shanoaice Apr 28, 2023
0dc177a
fix(config/shared/v2fly): remove KCP headers
shanoaice Apr 30, 2023
be066ae
refactor(config/v2fly/base): remove redundant RequireQualifiedAccess
shanoaice Apr 30, 2023
0f5ff9b
feature(config/v2fly/outbound): Union tag serialization workaround
shanoaice Apr 30, 2023
86d5e24
refactor(config/v2fly/outbounds): use generic downcast operator
shanoaice Apr 30, 2023
f23793b
fix(config/v2fly/outbound): handle unexpected protocol
shanoaice Apr 30, 2023
ec90249
chore(solution): include docs in solution items
shanoaice Apr 30, 2023
3268efd
docs(sharelinks): state Xray and legacy sharelink support status
shanoaice Apr 30, 2023
0cd9a1a
chore(sdks): disallow preview .NET SDKs
shanoaice May 1, 2023
8cae19e
chore(deps): update all
shanoaice May 9, 2023
c259c1a
fix(config/sub): fix VMess subscription generator
shanoaice May 9, 2023
d7a687b
feature(config/shared): shadowsocks object
shanoaice May 9, 2023
0592fd1
feature(config/shared): Universal Protocol Adapter Union
shanoaice May 9, 2023
0ab5297
refactor(config/shared): move TFO to shared config
shanoaice May 10, 2023
7688f51
refactor(config/shared/v2fly): remove non-universal disableSystemRoot
shanoaice May 10, 2023
25a2595
refactor(config/shared/v2fly): remove obsolete gRPC mode field
shanoaice May 10, 2023
748ba2e
fix(config/v2fly): missing QUIC outbound deconstruct
shanoaice May 11, 2023
7724d54
refactor(config/shared/v2fly): remove static Create method
shanoaice May 11, 2023
a286d67
refactor(config/shared/ss): embed password in encryption type
shanoaice May 11, 2023
a837ca7
feature(config/shared/v2fly): VMess Security type
shanoaice May 11, 2023
b06dd35
refactor(config/shared/v2fly): removed obsolete Tproxy types
shanoaice May 11, 2023
43e6d1d
fix(config/subscription): adapt new Shadowsocks Encryption/Password U…
shanoaice May 11, 2023
56da1c6
feature(config/subscription): parse Shadowsocks SIP002 links
shanoaice May 11, 2023
a28ed4f
fix(workflow): update .NET SDK version for publish task
shanoaice May 11, 2023
245b3f9
feature(config/subscription): shadowsocks share link parsing in unive…
shanoaice May 11, 2023
904e32f
refactor(config/subscription/OOCv1): move token type
shanoaice May 12, 2023
fc4edef
feature(config/subscription): shadowsocks SIP003 plugin support
shanoaice May 13, 2023
195f8af
chore(deps): update fantomas formatter
shanoaice May 13, 2023
88f53fc
fix(config/subscription): handle ill-formed SIP002 userinfo
shanoaice May 13, 2023
4124a29
chore(docs/sharelinks): mark simple-obfs support obsolete
shanoaice May 13, 2023
eddd5c0
refactor(config/subscription): embed description in ConfigurationEntr…
shanoaice May 13, 2023
c785ace
fix(config/subscription): catchall case for ill-formed SIP002 plugin …
shanoaice May 13, 2023
4808f5a
refactor(config): re-organize module hierarchy
shanoaice May 14, 2023
19a741b
fix(config/v2ray/inbound): typo
shanoaice May 14, 2023
a872748
feature(config): shared routing rules generator
shanoaice May 15, 2023
fe3519d
refactor(config/shared/routing): remove extra type annotation
shanoaice May 16, 2023
17a6129
refactor(config/shared/routing): remove useless JsonName attribute
shanoaice May 16, 2023
a95ba92
feature(config): fine-grained routing DomainType
shanoaice May 16, 2023
4b050a0
refactor(config/v2fly): remove old general routing logic
shanoaice May 16, 2023
f51e753
fix(config): routing module name clash
shanoaice May 16, 2023
baff27f
Add renovate.json
renovate[bot] May 16, 2023
45b7f84
chore(deps): update actions/cache action to v3 (#8)
renovate[bot] May 16, 2023
1168812
chore(deps): update dependency fantomas to v6.0.3 (#7)
renovate[bot] May 16, 2023
e971058
chore(deps): update actions/checkout action to v3
renovate[bot] May 16, 2023
8227312
chore(deps): update actions/setup-dotnet action to v3
renovate[bot] May 16, 2023
63c1679
Merge pull request #11 from Shadowsocks-NET/renovate/actions-setup-do…
shanoaice May 16, 2023
5c89e32
Merge pull request #10 from Shadowsocks-NET/renovate/actions-checkout…
shanoaice May 16, 2023
88b0ed1
chore(project): reorder build
shanoaice May 16, 2023
0b3d0e6
refactor(config/routing): remove bittorrent protocol matcher
shanoaice May 16, 2023
0845fd5
Merge branch 'main' of github.com:Shadowsocks-NET/Aurum
shanoaice May 16, 2023
92d4408
feature(config/routing): inboundTag for RuleObject
shanoaice May 17, 2023
fe31599
feature(config/v2fly/routing): v2fly v5 routing format
shanoaice May 17, 2023
d746cec
refactor(config/v2ray/routing): unifrom GeoDataObject
shanoaice May 17, 2023
4206e09
feature(config/routing): fine-grained universal domain matching type
shanoaice May 17, 2023
14e9f12
refactor(config/routing): remove obsolete Greatfire preset
shanoaice May 17, 2023
b7e78ed
feature(config/v2fly/routing): transform genericRuleObject
shanoaice May 18, 2023
ef823d7
style(fix): reformat all files
shanoaice May 18, 2023
269b31c
refactor(config/v2fly): remove useless outbound lens
shanoaice May 18, 2023
32b1016
chore(encoding): strip BOM mark
shanoaice May 18, 2023
2c395fe
chore(readme): add fossa license scan badge
shanoaice May 18, 2023
f144704
chore(deps): remove unused Shadowsocks.OnlineConfig
shanoaice May 18, 2023
a8893e0
chore(deps): update packages
shanoaice May 18, 2023
5596bde
feature(config/v2fly): prelim transform genericOutboundObject
shanoaice May 19, 2023
f065827
fix(config/shared/v2fly): remove useless TLS disableSystemRoot
shanoaice May 19, 2023
85bc4b6
feature(config/v2fly): parse shadowsocks SIP003 plugin option
shanoaice May 19, 2023
e1a9360
fix(config/sharelinks): removed parameters
shanoaice May 19, 2023
582fec5
feature(config/v2fly): parse plugin when transforming
shanoaice May 19, 2023
e297e6d
refactor(config): remove v2ray-core DNS support
shanoaice May 19, 2023
036ce6c
refactor(config/v2fly): use static method for transformation
shanoaice May 19, 2023
fbaf2ab
feature(config/sing): transform routing ruleObject
shanoaice May 19, 2023
6e012e7
fix(config/v2fly): routing RuleObject inbound tag type
shanoaice May 19, 2023
bd3e273
refactor(config/routing): use generic RuleMatchNetwork
shanoaice May 19, 2023
20d0c48
chore(deps): update dependency fantomas to v6.0.4
renovate[bot] Jun 2, 2023
9e9d456
Merge pull request #12 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Jun 3, 2023
b8a54e0
chore(deps): update dependency fantomas to v6.0.7
renovate[bot] Jun 20, 2023
f4f213d
Merge pull request #13 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Jun 20, 2023
1cb899c
chore(deps): update dependency fantomas to v6.1.0
renovate[bot] Jun 28, 2023
39e4ed5
Merge pull request #14 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Jun 28, 2023
d26e88b
feature(config/sing/dns): map sing dns settings
shanoaice Jul 10, 2023
62cf6ee
Merge branch 'main' of github.com:Shadowsocks-NET/Aurum
shanoaice Jul 10, 2023
dabd43e
chore(deps): update dependency fantomas to v6.2.0
renovate[bot] Aug 29, 2023
d37af9d
feature(config/sing/inbound): add mixed and tun inbound
shanoaice Sep 4, 2023
4a1b7b4
chore(deps): update actions/checkout action to v4
renovate[bot] Sep 4, 2023
43fe86b
Merge pull request #16 from Shadowsocks-NET/renovate/actions-checkout…
shanoaice Sep 4, 2023
9cf28df
Merge pull request #15 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Sep 4, 2023
8870bcd
fix(config/sing/outbound): added missing VMess outbound union type
shanoaice Sep 6, 2023
348b744
refactor(config): more functional approach
shanoaice Sep 6, 2023
0614d93
Merge branch 'main' of github.com:Shadowsocks-NET/Aurum
shanoaice Sep 6, 2023
539b011
docs(sharelink): update docs to represent current functionality
shanoaice Sep 8, 2023
f772de5
feature(config/sing/inbound): lenses for all records
shanoaice Sep 8, 2023
26753ad
chore(workflow): update dotnet sdk to 7.0.400
shanoaice Sep 8, 2023
7673291
feature(config/sing/outbound): lenses
shanoaice Sep 8, 2023
9a00d8c
feature(config/sing/routing): lenses
shanoaice Sep 8, 2023
1859008
fix(interop/process): correctly set value using <-
shanoaice Sep 9, 2023
65db8a3
docs(docfx): preliminary config
shanoaice Sep 9, 2023
3f18b5c
fix(config/sing/outbound): use FSharpPlus.Lens
shanoaice Sep 9, 2023
6f68a5a
chore(ignore): ignore fsdocs files
shanoaice Sep 10, 2023
1670439
chore(ignore): ignore fsdocs output
shanoaice Sep 10, 2023
b9d74d7
chore(docs): logo image
shanoaice Sep 10, 2023
148f284
chore(deps): add fsdocs
shanoaice Sep 10, 2023
12f703a
feature(config/shared): optics for all types
shanoaice Sep 12, 2023
f4f2753
fix(config/shared/sub): fix parameter binding
shanoaice Sep 12, 2023
a65176f
refactor(config/sharelinks): remove unused structures
shanoaice Sep 13, 2023
c129a5e
chore(deps): update workflow .NET version
shanoaice Sep 13, 2023
0a345b4
chore(version): bump version
shanoaice Sep 13, 2023
e5cfde1
chore(deps): update dependency fsdocs-tool to v19.1.0
renovate[bot] Sep 15, 2023
67ee3ac
Merge pull request #17 from Shadowsocks-NET/renovate/fsdocs-tool-19.x
shanoaice Sep 16, 2023
62c2ce0
chore(workflow): use repository-defined .NET SDK version
shanoaice Sep 16, 2023
8ba71f5
chore(workflow): use Github provided workflow token
shanoaice Sep 16, 2023
78edf45
chore(workflow): specify github source URL
shanoaice Sep 16, 2023
585a076
chore(workflow): specify MyGet source URL
shanoaice Sep 16, 2023
b8739ce
chore(nuget): remove nuget default push source
shanoaice Sep 16, 2023
b629572
chore(release): bump version
shanoaice Sep 16, 2023
6e3e64e
chore(deps): update dependency fantomas to v6.2.1
renovate[bot] Sep 18, 2023
2a0475f
refactor(config-shared): use Result to handle errors
shanoaice Sep 18, 2023
3657c11
fix(config-shared): fix sequencing by inlining type annotations
shanoaice Sep 18, 2023
6519864
fix(config-sing): module indentation
shanoaice Sep 20, 2023
976e998
refactor(config-v2fly): use Results for error handling
shanoaice Sep 20, 2023
1c7c225
fix(helpers): does not unwrap fieldless union for JSON
shanoaice Sep 20, 2023
2817a81
styling(format): reformat file
shanoaice Sep 20, 2023
20d48e9
refactor(helpers): allow JsonFSharpConverterAttribute to override opt…
shanoaice Sep 20, 2023
30f7242
feature(config-sing): add multiplex and transport for outbounds
shanoaice Sep 20, 2023
3b6c85d
chore(deps): cache paket deps
shanoaice Sep 20, 2023
6cfe653
Merge pull request #18 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Sep 20, 2023
ab60aa7
refactor(config-shared): merge tcp and http transport
shanoaice Sep 21, 2023
cbfab7d
refactor(config-shared): curryify create* functions
shanoaice Sep 21, 2023
1cddc54
style(format): reformat all files
shanoaice Sep 21, 2023
b68a96c
chore(deps): update all deps
shanoaice Sep 21, 2023
d10baa9
chore(deps): update dependency fsdocs-tool to v19.1.1
renovate[bot] Oct 10, 2023
4fcc80a
chore(deps): update dependency fantomas to v6.2.3
renovate[bot] Nov 2, 2023
647f14b
chore(deps): update dependency paket to v8
renovate[bot] Nov 14, 2023
4daf3b7
chore(deps): update actions/setup-dotnet action to v4
renovate[bot] Dec 4, 2023
885b4a9
chore(merge): pr #22 from renovate/actions-setup-dotnet-4.x
shanoaice Dec 5, 2023
9da7351
chore(merge): pr#21 from Shadowsocks-NET/renovate/paket-8.x
shanoaice Dec 5, 2023
89d2472
chore(merge):pr#19 from Shadowsocks-NET/renovate/fsdocs-tool-19.x
shanoaice Dec 5, 2023
9de083d
chore(merge): pr#20 from Shadowsocks-NET/renovate/fantomas-6.x
shanoaice Dec 5, 2023
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
30 changes: 30 additions & 0 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"version": 1,
"isRoot": true,
"tools": {
"paket": {
"version": "8.0.0",
"commands": [
"paket"
]
},
"fake-cli": {
"version": "6.0.0",
"commands": [
"fake"
]
},
"fantomas": {
"version": "6.2.3",
"commands": [
"fantomas"
]
},
"fsdocs-tool": {
"version": "19.1.1",
"commands": [
"fsdocs"
]
}
}
}
15 changes: 15 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# EditorConfig is awesome: https://EditorConfig.org

# top-most EditorConfig file
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = crlf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.{yml,yaml,fs,fsx}]
indent_size = 2
45 changes: 45 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: build

on:
push:
pull_request:
branches: [main]
paths:
- "**.fs"
- "**.fsproj"

env:
DOTNET_VERSION: ${{ vars.DOTNET_VERSION }} # The .NET SDK version to use

jobs:
build:
name: build-${{matrix.os}}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]

steps:
- uses: actions/checkout@v4

- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Cache dependencies
uses: actions/cache@v3
with:
path: paket-cache
key: ${{ runner.os }}-paket-${{ hashFiles('paket.lock') }}
restore-keys: |
${{ runner.os }}-paket-

- name: Install buildtools
run: dotnet tool restore

- name: Install dependencies
run: dotnet paket restore && dotnet restore

- name: Build
run: dotnet build --configuration Release --no-restore
40 changes: 40 additions & 0 deletions .github/workflows/publish-github.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Publish Github Packages

on:
push:
tags:
- 'github-v*'

permissions:
packages: write

env:
DOTNET_VERSION: ${{ vars.DOTNET_VERSION }}

jobs:
publish_upload:
name: Publish Github Packages
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
source-url: https://nuget.pkg.github.com/Shadowsocks-NET/index.json
env:
NUGET_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Install buildtools
run: dotnet tool restore

- name: Install dependencies
run: dotnet paket restore

- name: Pack and upload NuGet package
run: |
dotnet pack -c Release
dotnet nuget push Aurum/bin/Release/*.nupkg --skip-duplicate --no-symbols --api-key ${{ secrets.HUB_PACKAGE_PAT }} --source https://nuget.pkg.github.com/Shadowsocks-NET/index.json
dotnet nuget push Aurum.*/bin/Release/*.nupkg --skip-duplicate --no-symbols --api-key ${{ secrets.HUB_PACKAGE_PAT }} --source https://nuget.pkg.github.com/Shadowsocks-NET/index.json
34 changes: 34 additions & 0 deletions .github/workflows/publish-myget.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Publish MyGet Packages

on:
push:
tags:
- 'myget-v*'

env:
DOTNET_VERSION: ${{ vars.DOTNET_VERSION }}

jobs:
publish_upload:
name: Publish MyGet Packages
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Install buildtools
run: dotnet tool restore

- name: Install dependencies
run: dotnet paket restore

- name: Pack and upload NuGet package
run: |
dotnet pack -c Release
dotnet nuget push Aurum/bin/Release/*.nupkg --skip-duplicate --no-symbols -s https://www.myget.org/F/aurum/api/v3/index.json -k ${{ secrets.MYGET_API_KEY }}
dotnet nuget push Aurum.*/bin/Release/*.nupkg --skip-duplicate --no-symbols -s https://www.myget.org/F/aurum/api/v3/index.json -k ${{ secrets.MYGET_API_KEY }}
18 changes: 18 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,22 @@ obj/
riderModule.iml
/_ReSharper.Caches/
.vs
.vscode
.idea

.fake
.ionide

#Paket dependency manager
.paket/
paket-files/
paket-cache/

#nuget files
nuget/**/*
!.gitkeep

#fsdocs
tmp
.fsdocs
output
41 changes: 41 additions & 0 deletions Aurum.Configuration/AdapterTypes/VMessLegacyShare.fs
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
module Aurum.Configuration.AdapterTypes.VMessLegacyShare

open System.Text.Json.Serialization

// this implementation disregards alterId, an obsolete feature
// the only *disguise* method supported is HTTP host

type VMessSecurity =
| [<JsonName "none">] None
| [<JsonName "zero">] Zero
| [<JsonName "auto">] Auto
| [<JsonName "aes-128-gcm">] AES
| [<JsonName "chacha20-poly1305">] ChaCha20

type VMessTransport =
| [<JsonName "tcp">] TCP
| [<JsonName "ws">] WebSocket
| [<JsonName "quic">] QUIC
| [<JsonName "grpc">] GRPC
| [<JsonName "mkcp">] MKCP // sing-box does not support this.

type TLSSetting =
| [<JsonName "none">] None
| [<JsonName "tls">] TLS

type DisguiseType =
| [<JsonName "none">] None
| [<JsonName "http">] HTTP

type ShareObject =
{ v: int
add: string
port: int
id: string
scy: VMessSecurity
net: VMessTransport
tls: TLSSetting
sni: string
[<JsonName "type">]
dType: DisguiseType
host: string }
41 changes: 41 additions & 0 deletions Aurum.Configuration/Aurum.Configuration.fsproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<PackageId>Aurum.Configuration</PackageId>
<Version>0.1.0-beta.1</Version>
<Authors>Shanoa Ice</Authors>
<PackageDescription>Configuration Component for the Aurum project.</PackageDescription>
<RepositoryType>git</RepositoryType>
<RepositoryUrl>https://github.com/Shadowsocks-NET/Aurum</RepositoryUrl>
<PackageLicenseExpression>LGPL-3.0-only</PackageLicenseExpression>
</PropertyGroup>
<ItemGroup>
<Compile Include="Shared\Shadowsocks.fs" />
<Compile Include="Shared\V2fly.fs" />
<Compile Include="Shared\Adapter.fs" />
<Compile Include="Shared\Routing.fs" />
<Compile Include="V2fly\Inbound.fs" />
<Compile Include="V2fly\Outbound.fs" />
<Compile Include="V2fly\Routing.fs" />
<Compile Include="V2fly\Base.fs" />
<Compile Include="Sing\Shared.fs" />
<Compile Include="Sing\Outbound.fs" />
<Compile Include="Sing\Inbound.fs" />
<Compile Include="Sing\Routing.fs" />
<Compile Include="Sing\DNS.fs" />
<Compile Include="Sing\Base.fs" />
<Compile Include="AdapterTypes\VMessLegacyShare.fs" />
<Compile Include="ShareLinks.fs" />
<Compile Include="SubscriptionAdapter\V2rayNBase64.fs" />
<Compile Include="SubscriptionAdapter\OOCv1.fs" />
<Compile Include="Shared\Subscription.fs" />
<Compile Include="Base.fs" />
<Content Include="paket.references" />
<Content Include="paket.template" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Aurum\Aurum.fsproj" />
</ItemGroup>
<Import Project="..\.paket\Paket.Restore.targets" />
</Project>
8 changes: 8 additions & 0 deletions Aurum.Configuration/Base.fs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
module Aurum.Configuration.Base

open Aurum.Configuration.Sing.Base
open Aurum.Configuration.V2fly.Base

type Backend =
| SingBox of SingBaseConfiguration
| V2fly of V2flyBaseConfiguration
Loading