-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Description
Here's the Weekly Digest for getredash/redash:
ISSUES
Last week 34 issues were created.
Of these, 14 issues have been closed and 20 issues are still open.
OPEN ISSUES
💚 #4303 Reduce refresh_queries's memory usage, by rauchy
💚 #4302 Restarting rq-scheduler reschedules all periodics, by rauchy
💚 #4301 Adjust RQ job priorities, by rauchy
💚 #4299 Admin status page's current tab does not preserve, by rauchy
💚 #4298 Auto-refresh admin status page, by rauchy
💚 #4297 Black support for the Python codebase, by arikfr
💚 #4295 Fix: number based alerts evaluation isn't working, by arikfr
💚 #4294 Update caniuse-lite, by arikfr
💚 #4293 New Elasticsearch query runner, by arikfr
💚 #4292 Split Dockerfile for production, by koooge
💚 #4291 Scatter Plot doesn't honor data label format, by susodapop
💚 #4290 Occuring 'SSL Connection Error: ASN' if using rds-ca-2019, by ikenji
💚 #4289 Dashboard parameter mapping: can't map different dropdown lists, by susodapop
💚 #4287 Fix Redash 8 requirements..., by Jakdaw
💚 #4286 Make Cypress tests work with [email protected], by arikfr
💚 #4285 refreshing snowflake schema w/o waking cluster, by monicagangwar
💚 #4279 Number-based alerts are broken, by susodapop
💚 #4278 Migrate Map visualization to React, by kravets-levko
💚 #4276 New feature - Alert muting, by ranbena
💚 #4270 Migrate Cohort visualization to React, by kravets-levko
CLOSED ISSUES
❤️ #4300 Show more workers per page, by rauchy
❤️ #4296 CircleCI workflow improvements, by arikfr
❤️ #4288 Use rq_redis_connection instead of redis_connection, by rauchy
❤️ #4284 Pin Cypress version, by arikfr
❤️ #4283 Extend result_ttl for refresh_queries, by rauchy
❤️ #4282 All database error messages are identical, by susodapop
❤️ #4281 Python 3 RQ modifications, by rauchy
❤️ #4280 Fix get_next_path tests, by arikfr
❤️ #4277 Apply test, by nitch193
❤️ #4275 Reduce RQ status load time (Python 3), by rauchy
❤️ #4274 Minor alert bug fixes, by ranbena
❤️ #4273 Extracted alert menu button, by ranbena
❤️ #4272 Fix impala connection, by foxdalas
❤️ #4269 quarterly interval in cohort, by thuanbvv
LIKED ISSUE
👍 #4290 Occuring 'SSL Connection Error: ASN' if using rds-ca-2019, by ikenji
It received 👍 x2, 😄 x0, 🎉 x0 and ❤️ x0.
NOISY ISSUE
🔈 #4279 Number-based alerts are broken, by susodapop
It received 8 comments.
PULL REQUESTS
Last week, 43 pull requests were created, updated or merged.
UPDATED PULL REQUEST
Last week, 29 pull requests were updated.
💛 #4297 Black support for the Python codebase, by arikfr
💛 #4285 refreshing snowflake schema w/o waking cluster, by monicagangwar
💛 #4276 New feature - Alert muting, by ranbena
💛 #4270 Migrate Cohort visualization to React, by kravets-levko
💛 #4267 Migrate Funnel visualization to React, by kravets-levko
💛 #4264 Parameter input feedback, by ranbena
💛 #4228 Migrate Dashboard to React, by gabrieldutra
💛 #4203 Migrate Public Dashboard Page to React, by gabrieldutra
💛 #4139 Migrate Chart visualization to React Part 2: Editor, by kravets-levko
💛 #3614 Force saml auth scheme, by leosunmo
💛 #3605 Schema Viewer Drawer, by emtwo
💛 #3604 Fix time parameter and add time units for prometheus query runner, by veerkat
💛 #3558 Add global options for data sources., by emtwo
💛 #3527 Closes #3497: Show correct values on hover of scatterplot., by emtwo
💛 #3516 Fix Impala connection issue while enables LDAP, by DeanThompson
💛 #3454 Avoid reporting bad requests to Sentry, by rauchy
💛 #3443 “Add Widget” Dialog steps, by ranbena
💛 #3409 Show query execution status at page load if query is running, by washort
💛 #3401 Add a data source description as hover text, by emtwo
💛 #3303 add thrift version 0.9.3 to requirements, by alon710
💛 #3293 Allow queries to be associated with tables as samples, by emtwo
💛 #3292 Closes #3192: Add data source config options., by emtwo
💛 #3226 LDAP dynamic Bind DN, by 2union
💛 #3178 WIP: Query metadata and execution status as React components, by washort
💛 #3140 WIP: implement schema browser as a react component, by spasovski
💛 #2652 don't autoexecute query on changing datasource, by alison985
💛 #2538 MsSql query_runner: Commit the transaction for inserts & Updates, by mattdjones
💛 #2478 [WIP] Excel & CSV query runner, by deecay
💛 #1424 Added support for running MongoDB queries on secondary in replicaset mode, by erans
MERGED PULL REQUEST
Last week, 14 pull requests were merged.
💜 #4296 CircleCI workflow improvements, by arikfr
💜 #4288 Use rq_redis_connection instead of redis_connection, by rauchy
💜 #4284 Pin Cypress version, by arikfr
💜 #4283 Extend result_ttl for refresh_queries, by rauchy
💜 #4281 Python 3 RQ modifications, by rauchy
💜 #4280 Fix get_next_path tests, by arikfr
💜 #4274 Minor alert bug fixes, by ranbena
💜 #4273 Extracted alert menu button, by ranbena
💜 #4262 Show worker's current job, by rauchy
💜 #4257 Reduce RQ status load time, by rauchy
💜 #4256 Monitor general RQ queues (default, periodic and schemas), by rauchy
💜 #4251 Migrate the application to Python 3, by NicolasLM
💜 #4175 Migrate Table visualization to React Part 2: Editor, by kravets-levko
💜 #4049 Introduce inheritance to the Parameter structure, by gabrieldutra
COMMITS
Last week there were 12 commits.
🛠️ [CircleCI workflow improvements (#4296) * CircleCI workflow improvements
- Don't automatically build the Docker image.
- Make the Python lint step requirement for the follow up steps. When it fails it usually means there is a code error which will prevent the next steps anyway.
-
Fix YAML syntax error.
-
Add separate build Docker image step for master branch](88ae639) by arikfr
🛠️ use rq_redis_connection instead of redis_connection (#4288) by rauchy
🛠️ [Migrate Table visualization to React Part 2: Editor (Migrate Table visualization to React Part 2: Editor #4175) * Migrate table editor to React: skeleton, Grid tab -
Columns tab
-
Cleanup
-
Columns tab: DnD column sorting
-
Columns types should be JSX
-
New Columns tab UI/X
-
Use Sortable component on Columns tab
-
Tests: Grid Settings
-
Tests: Columns Settings
-
Tests: Editors for Text, Number, Boolean and Date/Time columns
-
Tests: Editors for Image and Link columns
-
Minor UI fix
-
Trigger build
-
Debounce inputs](7157244) by kravets-levko
🛠️ [Introduce inheritance to the Parameter structure (Introduce inheritance to the Parameter structure #4049) * Start draft for new Parameter structure -
Add the rest of the methods
-
EnumParameter
-
QueryBasedDropdownParameter
-
DateParameter
-
DateRangeParameter
-
Update Parameter usage on code
-
Merge dynamicValue into normalizedValue
-
Add updateLocals and omit unwanted props
-
Allow null NumberParameter and omit parentQueryId
-
Rename parameter getValue to getExecutionValue
-
Update $$value to normalizedValue + omit on save
-
Add a few comments
-
Remove ngModel property from Parameter
-
Use value directly in DateRangeParameter
-
Use simpler separator for DateRange url param
-
Add backward compatibility
-
Use normalizeValue null value for isEmpty
-
Start creating jest tests
-
Add more tests
-
Normalize null value for multi mode in Enum
-
Use saved value for param isEmpty](9f78446) by gabrieldutra
🛠️ [Migrate the application to Python 3 (Migrate the application to Python 3 #4251) * Make core app compatible with Python 3
No backward compatibility with Python 2.7 is kept.
This commit mostly contains changes made with 2to3 and manual
tweaking when necessary.
- Use Python 3.7 as base docker image
Since it is not possible to change redash/base:debian to Python 3
without breaking future relases, its Dockerfile is temporarly
copied here.
- Upgrade some requirements to newest versions
Some of the older versions were not compatible with Python 3.
-
Migrate tests to Python 3
-
Build frontend on Python 3
-
Make the HMAC sign function compatible with Python 3
In Python 3, HMAC only works with bytes so the strings and the
float used in the sign function need to be encoded.
Hopefully this is still backward compatible with already generated
signatures.
- Use assertCountEqual instead of assertItemsEqual
The latter is not available in Python 3.
See https://bugs.python.org/issue17866
-
Remove redundant encoding header for Python 3 modules
-
Remove redundant string encoding in CLI
-
Rename list() functions in CLI
These functions shadow the builtin list function which is
problematic since 2to3 adds a fair amount of calls to the builtin
list when it finds dict.keys() and dict.values().
Only the Python function is renamed, from the perspective of the
CLI nothing changes.
- Replace usage of Exception.message in CLI
message
is not available anymore, instead use the string
representation of the exception.
-
Adapt test handlers to Python 3
-
Fix test that relied on dict ordering
-
Make sure test results are always uploaded (Make sure test results are always uploaded #4215)
-
Support encoding memoryview to JSON
psycopg2 returns buffer
objects in Python 2.7 and memoryview
in Python 3. See #3156
-
Fix test relying on object address ordering
-
Decode bytes returned from Redis
-
Stop using e.message for most exceptions
Exception.message is not available in Python 3 anymore, except
for some exceptions defined by third-party libraries.
- Fix writing XLSX files in Python 3
The buffer for the file should be made of bytes and the actual
content written to it strings.
Note: I do not know why the diff is so large as it's only a two
lines change. Probably a white space or file encoding issue.
-
Fix test by comparing strings to strings
-
Fix another exception message unavailable in Python 3
-
Fix export to CSV in Python 3
The UnicodeWriter is not used anymore. In Python 3, the interface
provided by the CSV module only deals with strings, in and out.
The encoding of the output is left to the user, in our case
it is given to Flask via make_response
.
-
(Python 3) Use Redis' decode_responses=True option ((Python 3) Use Redis' decode_responses=True option #4232)
-
Fix test_outdated_queries_works_scheduled_queries_tracker (use utcnow)
-
Make sure Redis connection uses decoded_responses option
-
Remove unused imports.
-
Use Redis' decode_responses option
-
Remove cases of explicit Redis decoding
-
Rename helper function and make sure it doesn't apply twice.
-
Don't add decode_responses to Celery Redis connection URL
-
Fix displaying error while connecting to SQLite
The exception message is always a string in Python 3, so no
need to try to decode things.
-
Fix another missing exception message
-
Handle JSON encoding for datasources returning bytes
SimpleJSON assumes the bytes it receives contain text data, so it
tries to UTF-8 encode them. It is sometimes not true, for instance
the SQLite datasource returns bytes for BLOB types, which typically
do not contain text but truly binary data.
This commit disables SimpleJSON auto encoding of bytes to str and
instead uses the same method as for memoryviews: generating a
hex representation of the data.
-
Fix Python 3 compatibility with RQ
-
Revert some changes 2to3 tends to do (Revert some changes 2to3 tends to do #4261)
-
Revert some changes 2to3 tends to do when it errs on the side of caution regarding dict view objects.
-
Also fixed some naming issues with one character variables in list comprehensions.
-
Fix Flask warning.
-
Upgrade dependencies
-
Remove useless
iter
added by 2to3 -
Fix get_next_path tests (Fix get_next_path tests #4280)
-
Removed setting SERVER_NAME in tests setup to avoid a warning.
-
Change get_next_path to not return empty string in case of a domain only value.
-
Fix redirect tests:
Since version 0.15 of Werkzeug it uses full path for fixing the location header instead of the root path.
-
Remove explicit dependency for Werkzeug
-
Switched pytz and certifi to unbinded versions.
-
Switch to new library for getting country from IP
python-geoip-geolite2
is not compatible with Python 3, instead
use maxminddb-geolite2
which is very similar as it includes
the geolite2 database in the package .
-
Python 3 RQ modifications (Python 3 RQ modifications #4281)
-
show current worker job (alongside with minor cosmetic column tweaks)
-
avoid loading entire job data for queued jobs
-
track general RQ queues (default, periodic and schemas)
-
get all active RQ queues
-
call get_celery_queues in another place
-
merge dicts the Python 3 way
-
extend the result_ttl of refresh_queries to 600 seconds to allow it to continue running periodically even after longer executions
-
Remove legacy Python flake8 tests](246eca1) by NicolasLM
🛠️ Pin Cypress version (#4284) by arikfr
🛠️ extend the result_ttl of refresh_queries to 600 seconds to allow it to continue running periodically even after longer executions (#4283) by rauchy
🛠️ [Monitor general RQ queues (default, periodic and schemas) (Monitor general RQ queues (default, periodic and schemas) #4256) * track general RQ queues (default, periodic and schemas) -
get all active RQ queues
-
call get_celery_queues in another place](43b35b6) by rauchy
🛠️ avoid loading entire job data for queued jobs (#4257) by rauchy
🛠️ show current worker job (alongside with minor cosmetic column tweaks) (#4262) by rauchy
🛠️ Minor alert bug fixes (#4274) by ranbena
🛠️ Extracted alert menu button (#4273) by ranbena
CONTRIBUTORS
Last week there were 6 contributors.
👤 arikfr
👤 rauchy
👤 kravets-levko
👤 gabrieldutra
👤 NicolasLM
👤 ranbena
STARGAZERS
Last week there were 63 stagazers.
⭐ Cyyking
⭐ zclongpop123
⭐ masums
⭐ haymanyu
⭐ prabh-me
⭐ haugene
⭐ jf826916
⭐ ebongzzang
⭐ chideat
⭐ boldarli
⭐ Yun-xi
⭐ 1240288959
⭐ ryanrandell
⭐ ioniconline
⭐ gumiho-bai
⭐ abhinavs
⭐ vannn0512
⭐ tutuai
⭐ NETZkultur
⭐ fcschmidt
⭐ onoma2
⭐ PingjieTang
⭐ MFornander
⭐ vaniisgh
⭐ ladnack
⭐ chw2054
⭐ jstoobz
⭐ Fity
⭐ smodin
⭐ wangzaidali
⭐ niakki
⭐ phammanh029
⭐ AcidGo
⭐ rainbo
⭐ vrodic
⭐ jkkitakita
⭐ CLannadZSY
⭐ augiwan
⭐ itman209
⭐ roens
⭐ dyelton
⭐ oleggator
⭐ ybscypress
⭐ stanxia
⭐ donvito
⭐ naivefun
⭐ jsrpy
⭐ transwalle
⭐ neilcamilleri
⭐ viclyliu
⭐ clyhs
⭐ cryoz
⭐ strorch
⭐ taisukemino
⭐ idohurvitz
⭐ dmckeone
⭐ syshlang
⭐ mher
⭐ rivoobmab
⭐ jlgore
⭐ zhouxm
⭐ francolavayendev
⭐ Sys0MKNR
You all are the stars! 🌟
RELEASES
Last week there were no releases.
That's all for last week, please 👀 Watch and ⭐ Star the repository getredash/redash to receive next weekly updates. 😃
You can also view all Weekly Digests by clicking here.
Your Weekly Digest bot. 📆