You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by xu...@apache.org on 2023/12/19 04:57:56 UTC
(incubator-opendal) 01/01: feat: Add project layout for ofs
This is an automated email from the ASF dual-hosted git repository.
xuanwo pushed a commit to branch ofs-kickoff
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git
commit e3665efc358dc44b44e3443682c482b1eb04afee
Author: Xuanwo <gi...@xuanwo.io>
AuthorDate: Tue Dec 19 12:57:43 2023 +0800
feat: Add project layout for ofs
Signed-off-by: Xuanwo <gi...@xuanwo.io>
---
Cargo.lock | 7 ++
Cargo.toml | 1 +
bin/ofs/Cargo.toml | 33 ++++++
bin/ofs/DEPENDENCIES.md | 3 +
bin/ofs/DEPENDENCIES.rust.tsv | 239 ++++++++++++++++++++++++++++++++++++++++++
bin/ofs/README.md | 3 +
bin/ofs/src/lib.rs | 16 +++
scripts/dependencies.py | 4 +
8 files changed, 306 insertions(+)
diff --git a/Cargo.lock b/Cargo.lock
index 47be8ca84..a4d217e7c 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -4670,6 +4670,13 @@ dependencies = [
"cty",
]
+[[package]]
+name = "ofs"
+version = "0.0.1"
+dependencies = [
+ "opendal",
+]
+
[[package]]
name = "oli"
version = "0.43.0"
diff --git a/Cargo.toml b/Cargo.toml
index 1fbc54dc2..2cc77a875 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -38,6 +38,7 @@ members = [
"bin/oli",
"bin/oay",
+ "bin/ofs",
"integrations/object_store",
"integrations/dav-server",
diff --git a/bin/ofs/Cargo.toml b/bin/ofs/Cargo.toml
new file mode 100644
index 000000000..03becbfa5
--- /dev/null
+++ b/bin/ofs/Cargo.toml
@@ -0,0 +1,33 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+[package]
+categories = ["filesystem"]
+description = "OpenDAL File System"
+keywords = ["storage", "data", "s3", "fs", "azblob"]
+name = "ofs"
+version = "0.0.1"
+
+authors.workspace = true
+edition.workspace = true
+homepage.workspace = true
+license.workspace = true
+repository.workspace = true
+rust-version.workspace = true
+
+[dependencies]
+opendal.workspace = true
diff --git a/bin/ofs/DEPENDENCIES.md b/bin/ofs/DEPENDENCIES.md
new file mode 100644
index 000000000..249686f09
--- /dev/null
+++ b/bin/ofs/DEPENDENCIES.md
@@ -0,0 +1,3 @@
+# Dependencies
+
+Refer to [DEPENDENCIES.rust.tsv](DEPENDENCIES.rust.tsv) for full list.
diff --git a/bin/ofs/DEPENDENCIES.rust.tsv b/bin/ofs/DEPENDENCIES.rust.tsv
new file mode 100644
index 000000000..6ac59ea60
--- /dev/null
+++ b/bin/ofs/DEPENDENCIES.rust.tsv
@@ -0,0 +1,239 @@
+crate 0BSD Apache-2.0 Apache-2.0 WITH LLVM-exception BSD-2-Clause BSD-3-Clause BSL-1.0 CC0-1.0 ISC MIT MPL-2.0 OpenSSL Unicode-DFS-2016 Unlicense Zlib
+addr2line@0.21.0 X X
+adler@1.0.2 X X X
+ahash@0.8.6 X X
+allocator-api2@0.2.16 X X
+android-tzdata@0.1.1 X X
+android_system_properties@0.1.5 X X
+anyhow@1.0.75 X X
+arc-swap@1.6.0 X X
+async-compat@0.2.3 X X
+async-trait@0.1.74 X X
+autocfg@1.1.0 X X
+awaitable@0.4.0 X
+awaitable-error@0.1.0 X
+backon@0.4.1 X
+backtrace@0.3.69 X X
+base64@0.21.5 X X
+base64ct@1.6.0 X X
+bitflags@1.3.2 X X
+bitflags@2.4.1 X X
+block-buffer@0.10.4 X X
+bumpalo@3.14.0 X X
+byteorder@1.5.0 X X
+bytes@1.5.0 X
+cc@1.0.83 X X
+cfg-if@1.0.0 X X
+chrono@0.4.31 X X
+concurrent_arena@0.1.8 X
+const-oid@0.9.5 X X
+const-random@0.1.17 X X
+const-random-macro@0.1.16 X X
+core-foundation@0.9.3 X X
+core-foundation-sys@0.8.4 X X
+cpufeatures@0.2.11 X X
+crunchy@0.2.2 X
+crypto-common@0.1.6 X X
+der@0.7.8 X X
+deranged@0.3.9 X X
+derive_destructure2@0.1.2 X X
+digest@0.10.7 X X
+dirs@5.0.1 X X
+dirs-sys@0.4.1 X X
+dlv-list@0.5.2 X X
+dotenvy@0.15.7 X
+encoding_rs@0.8.33 X X X
+equivalent@1.0.1 X X
+fastrand@1.9.0 X X
+fastrand@2.0.1 X X
+flagset@0.4.4 X
+fnv@1.0.7 X X
+form_urlencoded@1.2.0 X X
+futures@0.3.29 X X
+futures-channel@0.3.29 X X
+futures-core@0.3.29 X X
+futures-executor@0.3.29 X X
+futures-io@0.3.29 X X
+futures-macro@0.3.29 X X
+futures-sink@0.3.29 X X
+futures-task@0.3.29 X X
+futures-util@0.3.29 X X
+generic-array@0.14.7 X
+getrandom@0.2.11 X X
+gimli@0.28.0 X X
+h2@0.3.22 X
+hashbrown@0.14.2 X X
+hermit-abi@0.3.3 X X
+hex@0.4.3 X X
+hmac@0.12.1 X X
+home@0.5.5 X X
+http@0.2.11 X X
+http-body@0.4.5 X
+httparse@1.8.0 X X
+httpdate@1.0.3 X X
+hyper@0.14.27 X
+hyper-rustls@0.24.2 X X X
+iana-time-zone@0.1.58 X X
+iana-time-zone-haiku@0.1.2 X X
+idna@0.4.0 X X
+indexmap@2.1.0 X X
+instant@0.1.12 X
+ipnet@2.9.0 X X
+itoa@1.0.9 X X
+jobserver@0.1.27 X X
+js-sys@0.3.65 X X
+jsonwebtoken@9.1.0 X
+lazy_static@1.4.0 X X
+libc@0.2.150 X X
+libm@0.2.8 X X
+libredox@0.0.1 X
+linux-raw-sys@0.4.11 X X X
+lock_api@0.4.11 X X
+log@0.4.20 X X
+md-5@0.10.6 X X
+memchr@2.6.4 X X
+mime@0.3.17 X X
+miniz_oxide@0.7.1 X X X
+mio@0.8.9 X
+num-bigint@0.4.4 X X
+num-bigint-dig@0.8.4 X X
+num-derive@0.3.3 X X
+num-integer@0.1.45 X X
+num-iter@0.1.43 X X
+num-traits@0.2.17 X X
+num_cpus@1.16.0 X X
+object@0.32.1 X X
+ofs@0.43.0 X
+once_cell@1.18.0 X X
+opendal@0.43.0 X
+openssh@0.10.1 X X
+openssh-sftp-client@0.14.1 X
+openssh-sftp-client-lowlevel@0.6.0 X
+openssh-sftp-error@0.4.0 X
+openssh-sftp-protocol@0.24.0 X
+openssh-sftp-protocol-error@0.1.0 X
+openssl-probe@0.1.5 X X
+option-ext@0.2.0 X
+ordered-multimap@0.7.0 X
+parking_lot@0.12.1 X X
+parking_lot_core@0.9.9 X X
+pem@3.0.2 X
+pem-rfc7468@0.7.0 X X
+percent-encoding@2.3.0 X X
+pin-project@1.1.3 X X
+pin-project-internal@1.1.3 X X
+pin-project-lite@0.2.13 X X
+pin-utils@0.1.0 X X
+pkcs1@0.7.5 X X
+pkcs8@0.10.2 X X
+powerfmt@0.2.0 X X
+ppv-lite86@0.2.17 X X
+proc-macro2@1.0.69 X X
+quick-xml@0.30.0 X
+quick-xml@0.31.0 X
+quote@1.0.33 X X
+rand@0.8.5 X X
+rand_chacha@0.3.1 X X
+rand_core@0.6.4 X X
+redox_syscall@0.4.1 X
+redox_users@0.4.4 X
+reqsign@0.14.4 X
+reqwest@0.11.22 X X
+ring@0.17.5 X
+rsa@0.9.4 X X
+rust-ini@0.20.0 X
+rustc-demangle@0.1.23 X X
+rustix@0.38.25 X X X
+rustls@0.21.9 X X X
+rustls-native-certs@0.6.3 X X X
+rustls-pemfile@1.0.4 X X X
+rustls-webpki@0.101.7 X
+ryu@1.0.15 X X
+schannel@0.1.22 X
+scopeguard@1.2.0 X X
+sct@0.7.1 X X X
+security-framework@2.9.2 X X
+security-framework-sys@2.9.1 X X
+serde@1.0.193 X X
+serde_derive@1.0.193 X X
+serde_json@1.0.108 X X
+serde_urlencoded@0.7.1 X X
+sha1@0.10.6 X X
+sha2@0.10.8 X X
+shell-escape@0.1.5 X X
+signal-hook-registry@1.4.1 X X
+signature@2.2.0 X X
+simple_asn1@0.6.2 X
+slab@0.4.9 X
+smallvec@1.11.2 X X
+socket2@0.4.10 X X
+socket2@0.5.5 X X
+spin@0.5.2 X
+spin@0.9.8 X
+spki@0.7.2 X X
+ssh_format@0.14.1 X
+ssh_format_error@0.1.0 X
+stable_deref_trait@1.2.0 X X
+subtle@2.5.0 X
+syn@1.0.109 X X
+syn@2.0.39 X X
+system-configuration@0.5.1 X X
+system-configuration-sys@0.5.0 X X
+tempfile@3.8.1 X X
+thin-vec@0.2.12 X X
+thiserror@1.0.50 X X
+thiserror-impl@1.0.50 X X
+time@0.3.30 X X
+time-core@0.1.2 X X
+time-macros@0.2.15 X X
+tiny-keccak@2.0.2 X
+tinyvec@1.6.0 X X X
+tinyvec_macros@0.1.1 X X X
+tokio@1.34.0 X
+tokio-io-utility@0.7.6 X
+tokio-macros@2.2.0 X
+tokio-pipe@0.2.12 X X
+tokio-rustls@0.24.1 X X
+tokio-util@0.7.10 X
+tower-service@0.3.2 X
+tracing@0.1.40 X
+tracing-attributes@0.1.27 X
+tracing-core@0.1.32 X
+triomphe@0.1.9 X X
+try-lock@0.2.4 X
+typenum@1.17.0 X X
+unicode-bidi@0.3.13 X X
+unicode-ident@1.0.12 X X X
+unicode-normalization@0.1.22 X X
+untrusted@0.9.0 X
+url@2.4.1 X X
+uuid@1.6.1 X X
+valuable@0.1.0 X
+vec-strings@0.4.8 X
+version_check@0.9.4 X X
+want@0.3.1 X
+wasi@0.11.0+wasi-snapshot-preview1 X X X
+wasm-bindgen@0.2.89 X X
+wasm-bindgen-backend@0.2.89 X X
+wasm-bindgen-futures@0.4.38 X X
+wasm-bindgen-macro@0.2.89 X X
+wasm-bindgen-macro-support@0.2.89 X X
+wasm-bindgen-shared@0.2.89 X X
+wasm-streams@0.3.0 X X
+web-sys@0.3.65 X X
+winapi@0.3.9 X X
+winapi-i686-pc-windows-gnu@0.4.0 X X
+winapi-x86_64-pc-windows-gnu@0.4.0 X X
+windows-core@0.51.1 X X
+windows-sys@0.48.0 X X
+windows-targets@0.48.5 X X
+windows_aarch64_gnullvm@0.48.5 X X
+windows_aarch64_msvc@0.48.5 X X
+windows_i686_gnu@0.48.5 X X
+windows_i686_msvc@0.48.5 X X
+windows_x86_64_gnu@0.48.5 X X
+windows_x86_64_gnullvm@0.48.5 X X
+windows_x86_64_msvc@0.48.5 X X
+winreg@0.50.0 X
+zerocopy@0.7.26 X X X
+zeroize@1.7.0 X X
diff --git a/bin/ofs/README.md b/bin/ofs/README.md
new file mode 100644
index 000000000..91c98092b
--- /dev/null
+++ b/bin/ofs/README.md
@@ -0,0 +1,3 @@
+# OpenDAL File System
+
+OpenDAL File System (ofs) is a userspace filesystem backing by OpenDAL.
diff --git a/bin/ofs/src/lib.rs b/bin/ofs/src/lib.rs
new file mode 100644
index 000000000..b248758bc
--- /dev/null
+++ b/bin/ofs/src/lib.rs
@@ -0,0 +1,16 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
diff --git a/scripts/dependencies.py b/scripts/dependencies.py
index 5aec06827..9833b036b 100644
--- a/scripts/dependencies.py
+++ b/scripts/dependencies.py
@@ -24,6 +24,10 @@ import os
DIRS = [
"core",
+ "bin/oli",
+ "bin/oay",
+ "bin/ofs",
+
"bindings/c",
"bindings/cpp",
"bindings/dotnet",