Maxime Delporte
|
7de9ef89b7
|
Adding 'Addictional Information for Rate Limiting' sub section.
|
2025-11-16 19:35:28 +01:00 |
|
Maxime Delporte
|
116cdb099f
|
Updating rateLimit middleware with IP-based Rate Limiting
|
2025-11-16 10:48:55 +01:00 |
|
Maxime Delporte
|
5517aa29f9
|
Adding 'IP-based Rate Limiting' sub section.
|
2025-11-16 10:37:09 +01:00 |
|
Maxime Delporte
|
8b0c51123f
|
Enforcing a global rate limit.
|
2025-11-16 10:36:36 +01:00 |
|
Maxime Delporte
|
e93375d441
|
Returning pagination metadata.
Deploy Greenlight API / deploy (push) Successful in 2m48s
|
2025-11-15 16:51:13 +01:00 |
|
Maxime Delporte
|
28b25fed6e
|
Returning empty array instead of null if we don't have any movies to return.
|
2025-11-15 16:37:08 +01:00 |
|
Maxime Delporte
|
6fc5e725e6
|
Paginating Lists
|
2025-11-15 16:34:40 +01:00 |
|
Maxime Delporte
|
fc2e401f6f
|
Adding sorting lists.
Deploy Greenlight API / deploy (push) Successful in 58s
|
2025-11-14 17:31:29 +01:00 |
|
Maxime Delporte
|
6b3a6ee4f5
|
Adding indexes migration.
|
2025-11-14 16:46:21 +01:00 |
|
Maxime Delporte
|
a17a49e814
|
Adding 'Indexes' sub section.
Deploy Greenlight API / deploy (push) Successful in 1m25s
|
2025-11-13 18:57:24 +01:00 |
|
Maxime Delporte
|
0d1062d995
|
Adding full-text search.
|
2025-11-13 18:52:59 +01:00 |
|
Maxime Delporte
|
1b71a1a8ad
|
Creating GetAll MovieModel method to retrieve all movies. Updating the listMovieHandler to use the new GetAll MovieModel's method.
Deploy Greenlight API / deploy (push) Successful in 59s
|
2025-11-13 15:25:00 +01:00 |
|
Maxime Delporte
|
95d9de60b4
|
Adding ValidateFilters method in filters.go and use it in our listMoviesHandler
|
2025-11-12 11:09:57 +01:00 |
|
Maxime Delporte
|
bf7c53e565
|
Creating Filters struct and using it inside our listMoviesHandler
|
2025-11-11 10:47:25 +01:00 |
|
Maxime Delporte
|
041d302a79
|
Creating listMoviesHandler and adding /v1/movies GET endpoint to use it.
|
2025-11-11 10:43:34 +01:00 |
|
Maxime Delporte
|
b77d3adb55
|
Adding readString, readInt and readCSV helper functions
|
2025-11-11 10:29:15 +01:00 |
|
Maxime Delporte
|
0ba997475b
|
Updating database model with 3-second timeout deadline for all our operations.
Deploy Greenlight API / deploy (push) Successful in 58s
|
2025-11-10 17:00:06 +01:00 |
|
Maxime Delporte
|
5413312875
|
Adding a query timeout.
|
2025-11-10 16:45:42 +01:00 |
|
Maxime Delporte
|
fd3bca1226
|
Adding a check on the X-Expected-Version header field.
Deploy Greenlight API / deploy (push) Successful in 1m0s
|
2025-11-10 10:21:14 +01:00 |
|
Maxime Delporte
|
f8f78c3eec
|
Adding concurrency control in our updateMovieHandler and documenting it.
Deploy Greenlight API / deploy (push) Successful in 57s
|
2025-11-08 10:41:44 +01:00 |
|
Maxime Delporte
|
b76496e096
|
Updating updateMovieHandler to be able to update only some fields (patch instead of put). Update routes with the correct verb.
Deploy Greenlight API / deploy (push) Successful in 1m20s
|
2025-11-07 11:57:04 +01:00 |
|
Maxime Delporte
|
1270a3bda6
|
Updating MovieModel's Delete method from internal/data/movies.go file. Create the deleteMovieHandler function inside cmd/api/movies.go. Adding the route into routes.go to delete a movie.
|
2025-11-07 11:37:19 +01:00 |
|
Maxime Delporte
|
69651c58b7
|
Updating MovieModel's method from internal/data/movies.go file. Create the updateMovieHandler function inside cmd/api/movies.go. Adding the route into routes.go to update a movie.
|
2025-11-07 11:27:45 +01:00 |
|
Maxime Delporte
|
490c3174ca
|
Adding 'Why not use an unsigned integer for the movie ID?' sub-section.
|
2025-11-07 11:06:35 +01:00 |
|
Maxime Delporte
|
0824a127b9
|
Updating internal/data/movies.go to Get a movie from the database. Updating cmd/api/movies.go showMovieHandler method to fetch a movie from a request (using the MovieModel's Get method).
|
2025-11-07 10:58:58 +01:00 |
|
Maxime Delporte
|
0653a46101
|
Adding ' notation' and 'Executing multiple statements' sub-sections.
|
2025-11-07 10:47:15 +01:00 |
|
Maxime Delporte
|
19a844ea2e
|
Updating Insert MovieModel's method inserting a new record in the movies table. Updating createMovieHandler to use Insert MovieModel's method.
Deploy Greenlight API / deploy (push) Successful in 1m0s
|
2025-11-06 17:10:33 +01:00 |
|
Maxime Delporte
|
1a658d3063
|
Updating movies.go with MovieModel: this struct is the gateway between our app and the database. Adding CRUD methods alongside for the Movie object. Creating models.go: this file holds a Models struct wrapping all of our Models. This way, we are able to use in our application struct in our main.go.
|
2025-11-06 10:41:12 +01:00 |
|
Maxime Delporte
|
0874a6aac4
|
Adding 'Remote migration files' sub-section.
|
2025-11-06 10:17:12 +01:00 |
|
Maxime Delporte
|
6997490335
|
Adding 'Fixing errors in SQL migrations' sub-section.
|
2025-11-06 10:14:02 +01:00 |
|
Maxime Delporte
|
ece88f7e71
|
Creating 'Migrating to a specific version' and 'Executing down migrations' sub sections.
Deploy Greenlight API / deploy (push) Successful in 1m0s
|
2025-11-03 17:57:51 +01:00 |
|
Maxime Delporte
|
4b42c5edfc
|
Updating 'Executing the migrations' sub-section.
Deploy Greenlight API / deploy (push) Successful in 1m16s
|
2025-11-03 17:39:46 +01:00 |
|
Maxime Delporte
|
a5025cd98e
|
Updating CI.
Deploy Greenlight API / deploy (push) Successful in 55s
|
2025-10-31 12:12:57 +01:00 |
|
Maxime Delporte
|
72508f9bdb
|
Fix typo.
Deploy Greenlight API / deploy (push) Successful in 56s
|
2025-10-31 12:07:27 +01:00 |
|
Maxime Delporte
|
10ea699625
|
Adding 'Executing the migrations' subsection into README.md. Adding log messages on deploy.yml.
Deploy Greenlight API / deploy (push) Successful in 55s
|
2025-10-31 12:05:53 +01:00 |
|
Maxime Delporte
|
80800b214c
|
Updating CI.
Deploy Greenlight API / deploy (push) Successful in 54s
|
2025-10-31 10:49:50 +01:00 |
|
Maxime Delporte
|
ab17b9f8f1
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 41s
|
2025-10-31 10:48:34 +01:00 |
|
Maxime Delporte
|
8f047f2b4a
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 40s
|
2025-10-31 10:46:18 +01:00 |
|
Maxime Delporte
|
17a69b32be
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 38s
|
2025-10-31 10:42:17 +01:00 |
|
Maxime Delporte
|
eb0a0bb221
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 38s
|
2025-10-31 10:40:08 +01:00 |
|
Maxime Delporte
|
3476d82ada
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 39s
|
2025-10-31 10:35:33 +01:00 |
|
Maxime Delporte
|
9fdd6c117f
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 38s
|
2025-10-31 10:33:07 +01:00 |
|
Maxime Delporte
|
1c7977fd73
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 39s
|
2025-10-31 10:30:30 +01:00 |
|
Maxime Delporte
|
42461ef8fb
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 40s
|
2025-10-31 10:18:37 +01:00 |
|
Maxime Delporte
|
4f31716a22
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 40s
|
2025-10-31 10:17:20 +01:00 |
|
Maxime Delporte
|
0229af2932
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 41s
|
2025-10-31 10:14:05 +01:00 |
|
Maxime Delporte
|
e639e44d72
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 41s
|
2025-10-30 15:36:45 +01:00 |
|
Maxime Delporte
|
6e4b4c6ca4
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 38s
|
2025-10-30 15:35:21 +01:00 |
|
Maxime Delporte
|
dd259e608e
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 38s
|
2025-10-30 15:33:57 +01:00 |
|
Maxime Delporte
|
93a328c0ef
|
Updating CI.
Deploy Greenlight API / deploy (push) Failing after 40s
|
2025-10-30 15:32:05 +01:00 |
|