-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor(appengine): exandra queries for device #1055
base: master
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1055 +/- ##
==========================================
+ Coverage 69.23% 71.93% +2.70%
==========================================
Files 275 235 -40
Lines 7193 5277 -1916
==========================================
- Hits 4980 3796 -1184
+ Misses 2213 1481 -732 ☔ View full report in Codecov by Sentry. |
b219689
to
c3a11ea
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, very good! However, I would wait for the changes on astarte_data_access on which this is dependent are merged
@@ -1,4 +1,4 @@ | |||
[ | |||
import_deps: [:phoenix, :ecto, :skogsra, :stream_data], | |||
import_deps: [:phoenix, :ecto, :skogsra], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not keeping the :stream_data
formatter? See the changes in apps/astarte_appengine_api/test/astarte_appengine_api_web/controllers/groups_controller_test.exs
and apps/astarte_appengine_api/test/astarte_appengine_api_web/plug/group_name_decoder_test.exs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was getting an error running mix format
and I missed that it was messing with the formatting of some test files.
I've added stream_data
back to the formatter deps while also making it available in dev so that mix format
does work correctly
this allows calling `mix format` in dev Signed-off-by: Francesco Noacco <francesco.noacco@secomind.com>
77b2303
to
12e0234
Compare
The first installment in the effort of refactoring the device module. The change can be made little by little as exandra and cqex queries can coexist. This change ports a few queries to exandra, without making any big logic refactor, but we can see the future direction of this refactor: Astarte.AppEngine.API.Device.Queries becomes a module to expose _queries_ and not data from the database directly. For this iteration, this is enough to elegantly use the queries in the Device module, but more complex queries may require a more in-depth refactor. The following queries have been ported: - `retrieve_interfaces_list` - `retrieve_all_endpoints_for_interface!` - `retrieve_mapping` - `prepare_value_type_query` / `execute_value_type_query` Signed-off-by: Francesco Noacco <francesco.noacco@secomind.com>
12e0234
to
cd6ceb3
Compare
The first installment in the effort of refactoring the device module.
The change can be made little by little as exandra and cqex queries can coexist.
This change ports a few queries to exandra, without making any big logic refactor, but we can see the future direction of this refactor: Astarte.AppEngine.API.Device.Queries becomes a module to expose queries and not data from the database directly.
For this iteration, this is enough to elegantly use the queries in the Device module, but more complex queries may require a more in-depth refactor.
The following queries have been ported:
retrieve_interfaces_list
retrieve_all_endpoints_for_interface!
retrieve_mapping
prepare_value_type_query
/execute_value_type_query
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?
Additional documentation e.g. usage docs, diagrams, etc.: