♻️ (pagetop): Migra de actix-web a Axum

Sustituye el módulo `service` por `web` y adapta toda la API al modelo
de Axum: router inmutable, extractores via `FromRequestParts` y
servicios Tower para archivos estáticos.

- `HttpRequest` pasa a ser un tipo propio, mínimo y clonable.
- `configure_services` pasa a `configure_routes`.
- `EmbeddedFilesService` pasa a `ServeEmbedded`.
- Elimina `session_lifetime` de `Server` (va a `pagetop-auth`).
- Actualiza tests y ejemplos a la nueva API.
This commit is contained in:
Manuel Cillero 2026-05-30 22:30:58 +02:00
parent 026448e511
commit 9c58d5e1d6
19 changed files with 612 additions and 390 deletions

View file

@ -1,7 +1,6 @@
[package]
name = "pagetop-build"
version = "0.3.2"
edition = "2021"
description = """
Prepara un conjunto de archivos estáticos o archivos SCSS compilados para ser incluidos en el
@ -12,9 +11,10 @@ keywords = ["pagetop", "build", "assets", "resources", "static"]
repository.workspace = true
homepage.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
[dependencies]
grass = "0.13"
grass.workspace = true
pagetop-statics.workspace = true

View file

@ -1,7 +1,6 @@
[package]
name = "pagetop-macros"
version = "0.3.0"
edition = "2021"
description = """
Una colección de macros que mejoran la experiencia de desarrollo con PageTop.
@ -11,6 +10,7 @@ keywords = ["pagetop", "macros", "proc-macros", "codegen"]
repository.workspace = true
homepage.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
@ -18,7 +18,7 @@ authors.workspace = true
proc-macro = true
[dependencies]
proc-macro2 = "1.0"
proc-macro2-diagnostics = { version = "0.10", default-features = false }
quote = "1.0"
syn = { version = "2.0", features = ["full", "extra-traits"] }
proc-macro2.workspace = true
proc-macro2-diagnostics.workspace = true
quote.workspace = true
syn.workspace = true

View file

@ -1,7 +1,6 @@
[package]
name = "pagetop-minimal"
version = "0.1.0"
edition = "2021"
description = """
Reúne un conjunto mínimo de macros para mejorar el formato y la eficiencia de operaciones
@ -12,10 +11,11 @@ keywords = ["pagetop", "build", "assets", "resources", "static"]
repository.workspace = true
homepage.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
[dependencies]
concat-string = "1.0"
indoc = "2.0"
pastey = "0.2"
concat-string.workspace = true
indoc.workspace = true
pastey.workspace = true

View file

@ -1,7 +1,6 @@
[package]
name = "pagetop-statics"
version = "0.1.3"
edition = "2021"
description = """
Librería para automatizar la recopilación de recursos estáticos en PageTop.
@ -11,6 +10,7 @@ keywords = ["pagetop", "build", "static", "resources", "file"]
repository.workspace = true
homepage.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
@ -19,15 +19,11 @@ default = ["change-detection"]
sort = []
[dependencies]
change-detection = { version = "1.2", optional = true }
mime_guess = "2.0"
path-slash = "0.2"
actix-web.workspace = true
derive_more = "0.99.17"
futures-util = { version = "0.3", default-features = false, features = ["std"] }
change-detection = { workspace = true, optional = true }
mime_guess.workspace = true
path-slash.workspace = true
[build-dependencies]
change-detection = { version = "1.2", optional = true }
mime_guess = "2.0"
path-slash = "0.2"
change-detection = { workspace = true, optional = true }
mime_guess.workspace = true
path-slash.workspace = true