ref:
- refs/tags/*
+ # using https://github.com/pksunkara/cargo-workspaces
+ - name: publish to crates.io
+ image: rust:1.51-slim-buster
+ commands:
+ - cargo install cargo-workspaces
+ - cp -r migrations crates/db_queries/
+ - cargo workspaces publish --no-git-commit --allow-branch main --yes custom "${DRONE_TAG}"
+ when:
+ ref:
+ - refs/tags/*
+
services:
- name: database
image: postgres:12-alpine
[[package]]
name = "lemmy_api"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix",
"actix-rt",
[[package]]
name = "lemmy_api_common"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix-web",
"chrono",
[[package]]
name = "lemmy_api_crud"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix",
"actix-rt",
[[package]]
name = "lemmy_apub"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"activitystreams",
"activitystreams-ext",
[[package]]
name = "lemmy_apub_lib"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"activitystreams",
"activitystreams-ext",
[[package]]
name = "lemmy_apub_lib_derive"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"proc-macro2 1.0.27",
"quote 1.0.9",
[[package]]
name = "lemmy_db_queries"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"bcrypt",
"chrono",
[[package]]
name = "lemmy_db_schema"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"chrono",
"diesel",
[[package]]
name = "lemmy_db_views"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"diesel",
"lemmy_db_queries",
[[package]]
name = "lemmy_db_views_actor"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"diesel",
"lemmy_db_queries",
[[package]]
name = "lemmy_db_views_moderator"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"diesel",
"lemmy_db_queries",
[[package]]
name = "lemmy_routes"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix",
"actix-web",
[[package]]
name = "lemmy_server"
-version = "0.0.1"
+version = "0.11.3"
dependencies = [
"activitystreams",
"actix",
[[package]]
name = "lemmy_utils"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix-rt",
"actix-web",
[[package]]
name = "lemmy_websocket"
-version = "0.1.0"
+version = "0.11.3"
dependencies = [
"actix",
"actix-web",
[package]
name = "lemmy_server"
-version = "0.0.1"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+homepage = "https://join-lemmy.org/"
+license = "AGPL-3.0"
+documentation = "https://join-lemmy.org/docs/en/index.html"
[lib]
doctest = false
]
[dependencies]
-lemmy_api = { path = "./crates/api" }
-lemmy_api_crud = { path = "./crates/api_crud" }
-lemmy_apub = { path = "./crates/apub" }
-lemmy_utils = { path = "./crates/utils" }
-lemmy_db_schema = { path = "./crates/db_schema" }
-lemmy_db_queries = { path = "./crates/db_queries" }
-lemmy_db_views = { path = "./crates/db_views" }
-lemmy_db_views_moderator = { path = "./crates/db_views_moderator" }
-lemmy_db_views_actor = { path = "./crates/db_views_actor" }
-lemmy_api_common = { path = "crates/api_common" }
-lemmy_websocket = { path = "./crates/websocket" }
-lemmy_routes = { path = "./crates/routes" }
+lemmy_api = { version = "=0.11.3", path = "./crates/api" }
+lemmy_api_crud = { version = "=0.11.3", path = "./crates/api_crud" }
+lemmy_apub = { version = "=0.11.3", path = "./crates/apub" }
+lemmy_utils = { version = "=0.11.3", path = "./crates/utils" }
+lemmy_db_schema = { version = "=0.11.3", path = "./crates/db_schema" }
+lemmy_db_queries = { version = "=0.11.3", path = "./crates/db_queries" }
+lemmy_db_views = { version = "=0.11.3", path = "./crates/db_views" }
+lemmy_db_views_moderator = { version = "=0.11.3", path = "./crates/db_views_moderator" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "./crates/db_views_actor" }
+lemmy_api_common = { version = "=0.11.3", path = "crates/api_common" }
+lemmy_websocket = { version = "=0.11.3", path = "./crates/websocket" }
+lemmy_routes = { version = "=0.11.3", path = "./crates/routes" }
diesel = "1.4.7"
diesel_migrations = "1.4.0"
chrono = { version = "0.4.19", features = ["serde"] }
[package]
name = "lemmy_api"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_api"
doctest = false
[dependencies]
-lemmy_apub = { path = "../apub" }
-lemmy_utils = { path = "../utils" }
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
-lemmy_db_views = { path = "../db_views" }
-lemmy_db_views_moderator = { path = "../db_views_moderator" }
-lemmy_db_views_actor = { path = "../db_views_actor" }
-lemmy_api_common = { path = "../api_common" }
-lemmy_websocket = { path = "../websocket" }
+lemmy_apub = { version = "=0.11.3", path = "../apub" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
+lemmy_db_views = { version = "=0.11.3", path = "../db_views" }
+lemmy_db_views_moderator = { version = "=0.11.3", path = "../db_views_moderator" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "../db_views_actor" }
+lemmy_api_common = { version = "=0.11.3", path = "../api_common" }
+lemmy_websocket = { version = "=0.11.3", path = "../websocket" }
diesel = "1.4.7"
bcrypt = "0.10.0"
chrono = { version = "0.4.19", features = ["serde"] }
[package]
name = "lemmy_api_common"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_api_common"
doctest = false
[dependencies]
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_views = { path = "../db_views" }
-lemmy_db_views_moderator = { path = "../db_views_moderator" }
-lemmy_db_views_actor = { path = "../db_views_actor" }
-lemmy_db_schema = { path = "../db_schema" }
-lemmy_utils = { path = "../utils" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_views = { version = "=0.11.3", path = "../db_views" }
+lemmy_db_views_moderator = { version = "=0.11.3", path = "../db_views_moderator" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "../db_views_actor" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
serde = { version = "1.0.126", features = ["derive"] }
log = "0.4.14"
diesel = "1.4.7"
[package]
name = "lemmy_api_crud"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[dependencies]
-lemmy_apub = { path = "../apub" }
-lemmy_utils = { path = "../utils" }
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
-lemmy_db_views = { path = "../db_views" }
-lemmy_db_views_moderator = { path = "../db_views_moderator" }
-lemmy_db_views_actor = { path = "../db_views_actor" }
-lemmy_api_common = { path = "../api_common" }
-lemmy_websocket = { path = "../websocket" }
+lemmy_apub = { version = "=0.11.3", path = "../apub" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
+lemmy_db_views = { version = "=0.11.3", path = "../db_views" }
+lemmy_db_views_moderator = { version = "=0.11.3", path = "../db_views_moderator" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "../db_views_actor" }
+lemmy_api_common = { version = "=0.11.3", path = "../api_common" }
+lemmy_websocket = { version = "=0.11.3", path = "../websocket" }
diesel = "1.4.7"
bcrypt = "0.10.0"
chrono = { version = "0.4.19", features = ["serde"] }
[package]
name = "lemmy_apub"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_apub"
doctest = false
[dependencies]
-lemmy_utils = { path = "../utils" }
-lemmy_apub_lib = { path = "../apub_lib" }
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
-lemmy_db_views = { path = "../db_views" }
-lemmy_db_views_actor = { path = "../db_views_actor" }
-lemmy_api_common = { path = "../api_common" }
-lemmy_websocket = { path = "../websocket" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_apub_lib = { version = "=0.11.3", path = "../apub_lib" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
+lemmy_db_views = { version = "=0.11.3", path = "../db_views" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "../db_views_actor" }
+lemmy_api_common = { version = "=0.11.3", path = "../api_common" }
+lemmy_websocket = { version = "=0.11.3", path = "../websocket" }
diesel = "1.4.7"
activitystreams = "0.7.0-alpha.11"
activitystreams-ext = "0.1.0-alpha.2"
[package]
name = "lemmy_apub_lib"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[dependencies]
-lemmy_utils = { path = "../utils" }
-lemmy_websocket = { path = "../websocket" }
-lemmy_apub_lib_derive = { path = "../apub_lib_derive" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_websocket = { version = "=0.11.3", path = "../websocket" }
+lemmy_apub_lib_derive = { version = "=0.11.3", path = "../apub_lib_derive" }
activitystreams = "0.7.0-alpha.11"
activitystreams-ext = "0.1.0-alpha.2"
serde = { version = "1.0.123", features = ["derive"] }
[package]
name = "lemmy_apub_lib_derive"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
proc-macro = true
[dependencies]
proc-macro2 = "1.0"
syn = "1.0"
-quote = "1.0"
\ No newline at end of file
+quote = "1.0"
[package]
name = "lemmy_db_queries"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_db_queries"
doctest = false
[dependencies]
-lemmy_utils = { path = "../utils" }
-lemmy_db_schema = { path = "../db_schema" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
diesel = { version = "1.4.7", features = ["postgres","chrono","r2d2","serde_json"] }
diesel_migrations = "1.4.0"
chrono = { version = "0.4.19", features = ["serde"] }
[package]
name = "lemmy_db_schema"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
doctest = false
[package]
name = "lemmy_db_views"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
doctest = false
[dependencies]
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
diesel = { version = "1.4.7", features = ["postgres","chrono","r2d2","serde_json"] }
serde = { version = "1.0.126", features = ["derive"] }
log = "0.4.14"
[package]
name = "lemmy_db_views_actor"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
doctest = false
[dependencies]
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
diesel = { version = "1.4.7", features = ["postgres","chrono","r2d2","serde_json"] }
serde = { version = "1.0.126", features = ["derive"] }
[package]
name = "lemmy_db_views_moderator"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
doctest = false
[dependencies]
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
diesel = { version = "1.4.7", features = ["postgres","chrono","r2d2","serde_json"] }
serde = { version = "1.0.126", features = ["derive"] }
[package]
name = "lemmy_routes"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
doctest = false
[dependencies]
-lemmy_utils = { path = "../utils" }
-lemmy_websocket = { path = "../websocket" }
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_views = { path = "../db_views" }
-lemmy_db_views_actor = { path = "../db_views_actor" }
-lemmy_db_schema = { path = "../db_schema" }
-lemmy_api_common = { path = "../api_common" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_websocket = { version = "=0.11.3", path = "../websocket" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_views = { version = "=0.11.3", path = "../db_views" }
+lemmy_db_views_actor = { version = "=0.11.3", path = "../db_views_actor" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
+lemmy_api_common = { version = "=0.11.3", path = "../api_common" }
diesel = "1.4.7"
actix = "0.12.0"
actix-web = { version = "4.0.0-beta.8", default-features = false, features = ["rustls"] }
[package]
name = "lemmy_utils"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_utils"
[package]
name = "lemmy_websocket"
-version = "0.1.0"
+version = "0.11.3"
edition = "2018"
+description = "A link aggregator for the fediverse"
+license = "AGPL-3.0"
[lib]
name = "lemmy_websocket"
doctest = false
[dependencies]
-lemmy_utils = { path = "../utils" }
-lemmy_api_common = { path = "../api_common" }
-lemmy_db_queries = { path = "../db_queries" }
-lemmy_db_schema = { path = "../db_schema" }
+lemmy_utils = { version = "=0.11.3", path = "../utils" }
+lemmy_api_common = { version = "=0.11.3", path = "../api_common" }
+lemmy_db_queries = { version = "=0.11.3", path = "../db_queries" }
+lemmy_db_schema = { version = "=0.11.3", path = "../db_schema" }
reqwest = { version = "0.11.4", features = ["json"] }
log = "0.4.14"
rand = "0.8.4"
#git checkout main
# Creating the new tag
+old_tag=$(cat "ansible/VERSION")
new_tag="$1"
third_semver=$(echo $new_tag | cut -d "." -f 3)
popd
fi
+# Update crate versions for crates.io
+for crate in crates/*; do
+ pushd $crate
+ # update version of the crate itself (only first occurence)
+ # https://stackoverflow.com/a/9453461
+ sed -i "0,/version = \"$old_tag\"/s//version = \"$new_tag\"/g" Cargo.toml
+ # update version of lemmy dependencies
+ sed -i "s/{ version = \"=$old_tag\", path/{ version = \"=$new_tag\", path/g" Cargo.toml
+ popd
+done
+# same as above, for the main cargo.toml
+sed -i "s/{ version = \"=$old_tag\", path/{ version = \"=$new_tag\", path/g" Cargo.toml
+sed -i "s/version = \"$old_tag\"/version = \"$new_tag\"/g" Cargo.toml
+
+
# The commit
git commit -m"Version $new_tag"
git tag $new_tag