5 Commits

Author SHA1 Message Date
davidskrundz 800916c111 Update contributing 2026-05-31 17:09:20 -06:00
davidskrundz b8f25b635d Make Seconds Copy 2026-05-29 21:40:22 -06:00
davidskrundz e066509031 Update sea-orm to rc38 2026-04-18 19:36:59 -06:00
davidskrundz 0a585c09e5 Simplify Id requirements 2026-01-07 20:59:25 -07:00
davidskrundz 5d9f14d8b3 Migrate to Zed and update sea-orm 2026-01-04 17:41:33 -07:00
12 changed files with 1622 additions and 390 deletions
-9
View File
@@ -1,9 +0,0 @@
{
"recommendations": [
"vadimcn.vscode-lldb",
"barbosshack.crates-io",
"usernamehw.errorlens",
"tamasfe.even-better-toml",
"rust-lang.rust-analyzer",
]
}
-33
View File
@@ -1,33 +0,0 @@
{
// VSCode
"editor.detectIndentation": false,
"editor.insertSpaces": false,
"editor.tabSize": 4,
"files.exclude": {
"**/target": true,
"**/Cargo.lock": true,
},
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
"files.trimTrailingWhitespace": true,
"files.watcherExclude": {
"**/.git/**": true,
"**/target/**": true,
},
// Extensions
"crates.listPreReleases": true,
"evenBetterToml.formatter.alignComments": true,
"evenBetterToml.formatter.alignEntries": false,
"evenBetterToml.formatter.allowedBlankLines": 1,
"evenBetterToml.formatter.arrayAutoExpand": true,
"evenBetterToml.formatter.arrayTrailingComma": true,
"evenBetterToml.formatter.columnWidth": 80,
"evenBetterToml.formatter.reorderKeys": true,
"evenBetterToml.formatter.trailingNewline": true,
"rust-analyzer.imports.granularity.enforce": true,
"rust-analyzer.imports.granularity.group": "module",
"rust-analyzer.imports.group.enable": true,
"rust-analyzer.imports.merge.glob": false,
"rust-analyzer.imports.preferNoStd": true,
"rust-analyzer.showUnlinkedFileNotification": false,
}
+25
View File
@@ -0,0 +1,25 @@
{
"languages": {
"TOML": {
"format_on_save": "on",
"formatter": { "language_server": { "name": "tombi" } },
},
},
"lsp": {
"rust-analyzer": {
"initialization_options": {
"imports": {
"granularity": { "enforce": true, "group": "module" },
"group": { "enable": true },
"merge": { "glob": false },
"preferNoStd": true,
},
"server": {
"extraEnv": {
"RUSTUP_TOOLCHAIN": "stable",
},
},
},
},
},
}
+2 -1
View File
@@ -3,4 +3,5 @@ How to Contribute
We'd love to accept your patches and contributions to this project. We'd love to accept your patches and contributions to this project.
We just need you to follow the Contributor License Agreement outlined We just need you to follow the Contributor License Agreement outlined
in the latest v0.0.x of https://github.com/Skrunix/license in the latest v0.0.x of https://git.skrundz.dev/skrunix/license
(mirrored to https://github.com/skrunix/license)
Generated
+1543 -308
View File
File diff suppressed because it is too large Load Diff
+23 -21
View File
@@ -1,18 +1,22 @@
[workspace] [workspace]
members = ["seamantic"]
resolver = "2" resolver = "2"
members = ["seamantic"]
[workspace.package] [workspace.package]
authors = []
edition = "2024"
license-file = "LICENSE.md" license-file = "LICENSE.md"
rust-version = "1.85.0"
[workspace.lints.rust] edition = "2024"
arithmetic_overflow = "forbid" rust-version = "1.88.0"
missing_docs = "forbid"
unsafe_code = "forbid" [workspace.dependencies]
unused_doc_comments = "forbid" seamantic = { path = "seamantic", version = "=0.0.14", default-features = false }
sea-orm = { version = "=2.0.0-rc.38", default-features = false }
sea-orm-migration = { version = "=2.0.0-rc.38", default-features = false }
serde = { version = "^1", default-features = false }
serde_test = { version = "^1", default-features = false }
tokio = { version = "^1", default-features = false }
[workspace.lints.clippy] [workspace.lints.clippy]
arithmetic_side_effects = "forbid" arithmetic_side_effects = "forbid"
@@ -24,20 +28,18 @@ indexing_slicing = "forbid"
integer_division = "forbid" integer_division = "forbid"
integer_division_remainder_used = "forbid" integer_division_remainder_used = "forbid"
transmute_undefined_repr = "forbid" transmute_undefined_repr = "forbid"
unchecked_duration_subtraction = "forbid" unchecked_time_subtraction = "forbid"
unwrap_used = "forbid" unwrap_used = "forbid"
[workspace.lints.rust]
arithmetic_overflow = "forbid"
missing_docs = "forbid"
unsafe_code = "forbid"
unused_doc_comments = "forbid"
[profile.release] [profile.release]
codegen-units = 1
lto = "fat"
opt-level = 3 opt-level = 3
overflow-checks = true
strip = "debuginfo" strip = "debuginfo"
overflow-checks = true
[workspace.dependencies] lto = "fat"
sea-orm = { version = "2.0.0-rc.17", default-features = false } codegen-units = 1
sea-orm-migration = { version = "2.0.0-rc.17", default-features = false }
serde = { version = "^1", default-features = false }
serde_test = { version = "^1", default-features = false }
tokio = { version = "^1", default-features = false }
+1 -1
View File
@@ -9,7 +9,7 @@ A library to enhance SeaORM
- build: `cargo hack --feature-powerset build` - build: `cargo hack --feature-powerset build`
- clippy: `cargo hack --feature-powerset clippy -- -D warnings` - clippy: `cargo hack --feature-powerset clippy -- -D warnings`
- test: `cargo hack --feature-powerset test` - test: `cargo hack --feature-powerset test`
- test old: `cargo +1.85 hack --feature-powerset test` - test old: `cargo +1.88 hack --feature-powerset test`
- example: `cargo run --example=migrations --features=sqlite` - example: `cargo run --example=migrations --features=sqlite`
- fmt: `cargo fmt --check` - fmt: `cargo fmt --check`
- docs: `RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --all-features` - docs: `RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --all-features`
+12 -14
View File
@@ -1,41 +1,39 @@
[package] [package]
name = "seamantic" name = "seamantic"
version = "0.0.10" version = "0.0.14"
license-file.workspace = true
categories = []
description = "A library to enhance SeaORM" description = "A library to enhance SeaORM"
repository = "https://github.com/QuantumShade/seamantic" repository = "https://github.com/QuantumShade/seamantic"
categories = []
authors.workspace = true
edition.workspace = true edition.workspace = true
license-file.workspace = true
rust-version.workspace = true rust-version.workspace = true
[package.metadata.docs.rs] [package.metadata.docs.rs]
all-features = true all-features = true
rustdoc-args = ["--cfg", "docsrs"] rustdoc-args = ["--cfg", "docsrs"]
[lints]
workspace = true
[[example]] [[example]]
name = "migrations" name = "migrations"
path = "examples/migrations/main.rs" path = "examples/migrations/main.rs"
required-features = ["sqlite"] required-features = ["sqlite"]
[features]
default = []
serde = ["dep:serde"]
sqlite = ["sea-orm-migration/sqlx-sqlite"]
[dependencies] [dependencies]
sea-orm = { workspace = true } sea-orm = { workspace = true }
sea-orm-migration = { workspace = true } sea-orm-migration = { workspace = true }
serde = { workspace = true, features = ["derive", "std"], optional = true } serde = { workspace = true, features = ["derive", "std"], optional = true }
[dev-dependencies] [dev-dependencies]
sea-orm = { workspace = true, features = ["entity-registry", "schema-sync"] } sea-orm = { workspace = true, features = ["entity-registry", "schema-sync"] }
sea-orm-migration = { workspace = true, features = ["runtime-tokio-rustls"] } sea-orm-migration = { workspace = true, features = ["runtime-tokio-rustls"] }
serde_test = { workspace = true } serde_test = { workspace = true }
tokio = { workspace = true, features = ["rt", "macros"] } tokio = { workspace = true, features = ["macros", "rt"] }
[features]
default = []
serde = ["dep:serde"]
sqlite = ["sea-orm-migration/sqlx-sqlite"]
[lints]
workspace = true
+1 -1
View File
@@ -13,7 +13,7 @@ type DurationRepr = u64;
/// ///
/// ### Warning: /// ### Warning:
/// Sub-second precision will be lost /// Sub-second precision will be lost
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Default)] #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[cfg_attr(feature = "serde", serde(transparent))] #[cfg_attr(feature = "serde", serde(transparent))]
#[repr(transparent)] #[repr(transparent)]
+2
View File
@@ -12,6 +12,8 @@ use sea_orm::{ColIdx, ColumnType, DbErr, QueryResult, TryFromU64, TryGetError, T
pub type SeaOrmRepr = i64; pub type SeaOrmRepr = i64;
/// An opaque type representing a row ID /// An opaque type representing a row ID
///
/// IDs should be tagged with `#[sea_orm(primary_key, auto_increment = false)]`
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))] #[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[cfg_attr(feature = "serde", serde(transparent))] #[cfg_attr(feature = "serde", serde(transparent))]
#[repr(transparent)] #[repr(transparent)]
+2 -2
View File
@@ -21,7 +21,7 @@ use sea_orm_migration::sea_query::{ColumnDef, IntoIden};
/// #[derive(Debug, Clone, DeriveEntityModel)] /// #[derive(Debug, Clone, DeriveEntityModel)]
/// #[sea_orm(table_name = "rowid_test")] /// #[sea_orm(table_name = "rowid_test")]
/// pub struct Model { /// pub struct Model {
/// #[sea_orm(column_type = "Integer", primary_key, nullable, auto_increment = false)] /// #[sea_orm(primary_key, auto_increment = false)]
/// id: Id<Model>, /// id: Id<Model>,
/// } /// }
/// impl ActiveModelBehavior for ActiveModel {} /// impl ActiveModelBehavior for ActiveModel {}
@@ -77,7 +77,7 @@ mod entity_tests {
#[derive(Debug, Clone, DeriveEntityModel)] #[derive(Debug, Clone, DeriveEntityModel)]
#[sea_orm(table_name = "rowid_test")] #[sea_orm(table_name = "rowid_test")]
pub struct Model { pub struct Model {
#[sea_orm(column_type = "Integer", primary_key, nullable, auto_increment = false)] #[sea_orm(primary_key, auto_increment = false)]
id: Id<Model>, id: Id<Model>,
} }
impl ActiveModelBehavior for ActiveModel {} impl ActiveModelBehavior for ActiveModel {}
+11
View File
@@ -0,0 +1,11 @@
toml-version = "v1.0.0"
[format.rules]
indent-style = "tab"
indent-width = 4
# Required for rust <1.94
[[schemas]]
toml-version = "v1.0.0"
path = "tombi://www.schemastore.org/cargo.json"
include = ["Cargo.toml"]