WIP: Preparando liberación de la versión 0.5 de PageTop #10

Draft
manuelcillero wants to merge 64 commits from preparing-release-zero-five into main

Revisión del código para preparar la liberación de la versión 0.5 de PageTop.

Revisión del código para preparar la liberación de la versión 0.5 de PageTop.
manuelcillero added 1 commit 2025-11-23 14:13:30 +01:00
manuelcillero added 1 commit 2025-11-23 14:35:44 +01:00
manuelcillero added 1 commit 2025-11-23 14:37:05 +01:00
manuelcillero changed title from WIP: 📝 Mejora documentación generada por builder_fn to WIP: 🔖 Preparando liberación de la versión 0.5 de PageTop 2025-11-23 14:38:24 +01:00
manuelcillero changed title from WIP: 🔖 Preparando liberación de la versión 0.5 de PageTop to WIP: Preparando liberación de la versión 0.5 de PageTop 2025-11-23 14:38:47 +01:00
manuelcillero changed target branch from improve-region-management to main 2025-11-23 18:45:23 +01:00
manuelcillero added 2 commits 2025-11-29 14:42:11 +01:00
manuelcillero added 2 commits 2025-11-30 00:17:04 +01:00
manuelcillero added 4 commits 2025-11-30 11:14:42 +01:00
manuelcillero added 1 commit 2025-11-30 11:42:07 +01:00
manuelcillero added 1 commit 2025-11-30 12:51:50 +01:00
manuelcillero force-pushed preparing-release-zero-five from 2152f39350 to 4944af073f 2025-11-30 12:56:47 +01:00 Compare
manuelcillero added 3 commits 2025-12-03 22:48:12 +01:00
manuelcillero added 2 commits 2025-12-03 22:56:09 +01:00
manuelcillero added 1 commit 2025-12-03 23:06:40 +01:00
manuelcillero added 2 commits 2025-12-07 11:55:36 +01:00
- Incorpora nuevo *crate* `pagetop-minimal` con macros básicas para
  operaciones con cadenas, bloques de texto o colecciones clave-valor.
- Refactoriza código para usar `util::join!` y `util::join_pair!` en la
  concatenación de cadenas.
- Normaliza la gestión de localización usando `util::kv!` para los
  argumentos con pares clave-valor.
- Actualizada documentación y archivos README para reflejar la nueva
  estructura y funcionalidades.
manuelcillero added 1 commit 2025-12-07 12:49:56 +01:00
manuelcillero added 1 commit 2025-12-10 15:19:07 +01:00
manuelcillero added 2 commits 2025-12-12 00:20:31 +01:00
manuelcillero added 1 commit 2025-12-14 14:33:46 +01:00
- Modulariza la lógica de localización.
- Actualiza la estructura de `Locale` para mejorar la resolución y
  gestión de idiomas.
- Introduce `RequestLocale` para manejar la negociación de idioma basada
  en las peticiones HTTP.
- Mejora `L10n` para ofrecer una gestión más flexible de traducciones
  con argumentos dinámicos.
- Actualiza la implementación de `LangId` en `Page` para garantizar una
  identificación de idioma coherente.
- Elimina código obsoleto y simplifica la gestión de identificadores de
  idioma.
manuelcillero added 2 commits 2025-12-15 20:51:30 +01:00
manuelcillero added 1 commit 2025-12-16 09:06:57 +01:00
manuelcillero added 3 commits 2025-12-17 12:40:59 +01:00
manuelcillero added 1 commit 2025-12-19 11:15:55 +01:00
manuelcillero added 1 commit 2025-12-21 09:47:39 +01:00
manuelcillero force-pushed preparing-release-zero-five from f7023469e2 to fee6a23543 2025-12-21 10:10:21 +01:00 Compare
manuelcillero force-pushed preparing-release-zero-five from fee6a23543 to dd5cdb19cf 2025-12-21 12:35:29 +01:00 Compare
manuelcillero added 1 commit 2025-12-21 15:20:58 +01:00
manuelcillero added 3 commits 2025-12-28 14:57:29 +01:00
manuelcillero added 3 commits 2025-12-31 08:48:58 +01:00
manuelcillero added 2 commits 2026-01-04 19:14:58 +01:00
manuelcillero added 1 commit 2026-01-06 01:16:17 +01:00
manuelcillero added 2 commits 2026-01-06 01:18:50 +01:00
manuelcillero added 2 commits 2026-01-06 01:23:32 +01:00
manuelcillero added 6 commits 2026-03-21 13:26:16 +01:00
Elimina `PrepareMarkup` como tipo de retorno de prepare_component() y de
`FnPrepareRender`, sustituyéndolo directamente por `Markup`. Se elimina
una capa innecesaria, ya que html! {} y html! { ... } cubren todos los
casos que ofrecía `PrepareMarkup`.
El nombre anterior era ambiguo (podría referirse a cualquier operación
del contexto); `AssetsOp` describe exactamente lo que hace: operar sobre
los recursos del documento.
`prepare_component()` ahora devuelve `Result<Markup, ComponentError>` en
lugar de `Markup`, para que los componentes señalen fallos durante el
renderizado de forma explícita.

`ComponentError` encapsula un mensaje de error y un marcado HTML
alternativo opcional (`fallback`). Si se produce un error, el ciclo de
renderizado registra la traza y muestra el `fallback` en lugar del
componente fallido, sin interrumpir el resto de la página.

Lo mismo aplica a los errores devueltos por la acción `PrepareRender` de
los temas, que siguen el mismo mecanismo.
manuelcillero added 1 commit 2026-03-22 08:58:29 +01:00
Añade `Theme::parent()` para declarar jerarquías de herencia entre
temas. Sustituye la acción `PrepareRender<C>` por el método
`Theme::prepare_component()` y la macro `render_component!`.
manuelcillero added 1 commit 2026-03-22 09:03:36 +01:00
manuelcillero added 2 commits 2026-03-23 15:52:13 +01:00
Permite a las extensiones transformar el `Markup` final de un componente
mediante edición de texto. Se despacha como último paso del ciclo de
renderizado.
Elimina `action::theme` fusionando sus responsabilidades en
`action::component`. Renombra `AlterMarkup` a `TransformMarkup` y
`FnActionAlterMarkup` a `FnActionTransformMarkup`. Simplifica
`ActionKey` y mueve los tipos de función al módulo de componente.
manuelcillero added 4 commits 2026-03-29 13:32:48 +02:00
- Patrón prototipo en `InRegion`: cada petición recibe clones profundos.
- `ComponentClone` habilita clonar `dyn Component` de forma segura.
- `ChildTyped<C>` renombrado a `Slot<C>`, elimina `ChildTypedOp`.
- `Mutex` en lugar de `Arc<RwLock>` en `Child` y `Slot`.
- `is_renderable` y `setup_before_prepare` reciben `&Context`.
- Nuevos tests para `Children`, `ChildOp` y `Slot`.
- `From<T: Component> for ChildOp: with_child()` acepta componentes
  directamente sin envolverlos en `Child::with(...)`.
- `From<Child> for ChildOp` para completar las conversiones implícitas.
- Actualiza ejemplos y tests con la nueva API en bootsier y aliner.
manuelcillero added 2 commits 2026-03-30 19:40:38 +02:00
This pull request is marked as a work in progress.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin preparing-release-zero-five:preparing-release-zero-five
git checkout preparing-release-zero-five

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git checkout main
git merge --no-ff preparing-release-zero-five
git checkout preparing-release-zero-five
git rebase main
git checkout main
git merge --ff-only preparing-release-zero-five
git checkout preparing-release-zero-five
git rebase main
git checkout main
git merge --no-ff preparing-release-zero-five
git checkout main
git merge --squash preparing-release-zero-five
git checkout main
git merge --ff-only preparing-release-zero-five
git checkout main
git merge preparing-release-zero-five
git push origin main
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: manuelcillero/pagetop#10
No description provided.