Panic less and with better messages #281

Sammanfogat
Plume_migration_agent sammanfogade 2 incheckningar från panic-refactor in i master 6 år sedan
Ägare

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 (Migrerad från github.com) godkände dessa ändringar 6 år sedan
elegaanz (Migrerad från github.com) lämnade en kommentar

Thanks a lot!

Thanks a lot!
elegaanz kommenterad 6 år sedan (Migrerad från 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.
Skapare
Ägare

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 kommenterad 6 år sedan (Migrerad från 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…
Skapare
Ägare

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

Granskare

Pull-förfrågan har sammanfogats som 879fde81ba.
You can also view command line instructions.

Step 1:

From your project repository, check out a new branch and test the changes.
git checkout -b panic-refactor master
git pull origin panic-refactor

Step 2:

Merge the changes and update on Forgejo.
git checkout master
git merge --no-ff panic-refactor
git push origin master
Logga in för att delta i denna konversation.
Inga granskare
Ingen Milsten
Ingen tilldelad
2 Deltagare
Notiser
Förfallodatum
Förfallodatumet är ogiltigt eller utanför gränserna. Använd formatet 'åååå-mm-dd'.

Inget förfallodatum satt.

Beroenden

No dependencies set.

Reference: Plume/Plume#281
Laddar…
Det finns inget innehåll än.