Panic less and with better messages #281

Fusionado
Plume_migration_agent fusionados 2 commits de panic-refactor en master hace 6 años
Propietario

Fix #21
Change most unwrap to expect, and don't panic when it can be avoided. Also return better http codes, i.e. 400 and 404, when appropriate.
The trait rocker::request::FromParam should probably be implemented for Post, Blog, Media, User and Tag. Then we wouldn't need to return Options whenever an entity does not exist, and just let Rocket do the work for us

Fix #21 Change most unwrap to expect, and don't panic when it can be avoided. Also return better http codes, i.e. 400 and 404, when appropriate. The trait `rocker::request::FromParam` should probably be implemented for Post, Blog, Media, User and Tag. Then we wouldn't need to return `Option`s whenever an entity does not exist, and just let Rocket do the work for us
elegaanz (Migrado desde github.com) aprobado estos cambios hace 6 años
elegaanz (Migrado desde github.com) dejó un comentario

Thanks a lot!

Thanks a lot!
elegaanz comentado hace 6 años (Migrado desde github.com)

And yes, implementing FromParams for these types would be a good idea.

And yes, implementing FromParams for these types would be a good idea.
Autor
Propietario

After trying to, I guess it might not be possible, because we need a db connection, and I don't think there is a way to access managed state from from_param (it only takes a &RawStr as parameters). Nonetheless I'll ask on Matrix

After trying to, I guess it might not be possible, because we need a db connection, and I don't think there is a way to access managed state from from_param (it only takes a &RawStr as parameters). Nonetheless I'll ask on Matrix
elegaanz comentado hace 6 años (Migrado desde github.com)

Maybe with with FromRequest and Request::get_param then? But it may force us to duplicate parameters in the routes signatures…

Maybe with with `FromRequest` and `Request::get_param` then? But it may force us to duplicate parameters in the routes signatures…
Autor
Propietario

If we end up doing manual routing it may reduce code duplication a bit, but it will add a lot of complexity, and we won't be able to use rocket's code generation if we do so. I'll see what answer I get from Matrix, but what I said earlier might very well be a false good idea

If we end up doing manual routing it may reduce code duplication a bit, but it will add a lot of complexity, and we won't be able to use rocket's code generation if we do so. I'll see what answer I get from Matrix, but what I said earlier might very well be a false good idea

Revisores

El Pull Request se ha fusionado como 879fde81ba.

Paso 1:

Desde el repositorio de su proyecto, revisa una nueva rama y prueba los cambios.
git checkout -b panic-refactor master
git pull origin panic-refactor

Paso 2:

Combine los cambios y actualice en Forgejo.
git checkout master
git merge --no-ff panic-refactor
git push origin master
Inicie sesión para unirse a esta conversación.
No hay revisores
Sin Milestone
No asignados
2 participantes
Notificaciones
Fecha de vencimiento
La fecha de vencimiento es inválida o está fuera de rango. Por favor utilice el formato 'aaaa-mm-dd'.

Sin fecha de vencimiento.

Dependencias

No se han establecido dependencias.

Referencia: Plume/Plume#281
Cargando…
Aún no existe contenido.