Commit Graph

285 Commits

Author SHA1 Message Date
Arik Fraimovich
153c0139cd Dynamic organization settings support. 2018-01-02 10:48:22 +02:00
Hao Jiang
6e2e2e2060 Fix: unicode handling at query result 2017-12-16 09:55:15 +09:00
ariarijp
93aa28cdf7 Handling whitespace characters in Query Results data source 2017-11-23 21:46:10 +09:00
Arik Fraimovich
9de3e975eb
Merge pull request #1985 from miketheman/miketheman/user-email-case-insensitive
Ensure email is case-insensitive
2017-11-22 18:11:07 +02:00
Arik Fraimovich
1cbf09cbbe Add: data source to run queries on top of query results. 2017-11-01 16:10:04 +02:00
Arik Fraimovich
4e4a3e13ab Fix #1824: allow only user API key to be used with query refresh API. 2017-11-01 15:05:55 +02:00
Arik Fraimovich
2bc3885977 Fix: require full access to the data source to fork a query.
Ref #1825.
2017-11-01 14:46:29 +02:00
Arik Fraimovich
97217f56c1 Remove unused variables 2017-11-01 13:52:41 +02:00
Arik Fraimovich
ba36f7395d Fix #1979: API key of one query could be used to get results of another one 2017-11-01 13:51:09 +02:00
Mike Fiedler
be232543d6
Use a custom EmailType/CaseInsensitiveComparator
sqlalchemy doesn't appear to have a case sensitive column, so we craft a
type that can have the semantics of case insensitive comparison.

Ref http://docs.sqlalchemy.org/en/rel_1_1/orm/extensions/hybrid.html#building-custom-comparators

Signed-off-by: Mike Fiedler <miketheman@gmail.com>
2017-10-10 18:32:00 -04:00
Mike Fiedler
9076715d84
Ensure email is case-insensitive
While RFC 5321 alows for the username/mailbox art of the address to be
case-sensitive, it is hightly discouraged.

    The local-part of a mailbox MUST BE treated as case
    sensitive. Therefore, SMTP implementations MUST take care to
    preserve the case of mailbox local-parts. In particular, for
    some hosts, the user "smith" is different from the user
    "Smith". However, exploiting the case sensitivity of mailbox
    local-parts impedes interoperability and is discouraged.
    Mailbox domains follow normal DNS rules and are hence not
    case sensitive.
    -- https://tools.ietf.org/rfc/rfc5321.txt

Signed-off-by: Mike Fiedler <miketheman@gmail.com>
2017-10-10 17:49:50 -04:00
Mehmet Emin INAC
6d2337b332
Revoke permission should respect to given grantee and access type.
The issue is, if you try to revoke the permission of a user from an
object, all the permissions on this object get removed. The fix is
assigning filtered query object to it's own reference.

According to SQLAlchemy documentation, `filter` method applies to
the **copy** of the query object which means calling filter doesn't
affect the object receiving filter call. For more information;
http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.filter
2017-10-06 12:52:35 +02:00
Arik Fraimovich
3cadd6731c Fix: tests entering endless loop, due to bad input. 2017-10-01 14:26:04 +03:00
Arik Fraimovich
47fc6612bf Allow collaborators to create, delete and edit visualizations. 2017-09-03 14:28:34 +03:00
Arik Fraimovich
42116abcb3 Fix: when setting rearm on a new alert, it wasn't persisted. 2017-06-28 16:34:50 +03:00
Arik Fraimovich
24ba110965 Fix: alert destination details were not updating.
Closes #1842.
2017-06-28 16:01:54 +03:00
Arik Fraimovich
1d749a83e1 Fix: /api/session API call wasn't working when multi tenancy enabled 2017-06-14 12:06:18 +03:00
Arik Fraimovich
6f72d456d2 Remove unused code 2017-06-14 12:05:49 +03:00
Arik Fraimovich
a8246471f4 Fix: clear null values from options dictionary 2017-06-13 09:42:20 +03:00
Arik Fraimovich
1fad874dee Change: redirect to / when org not found 2017-06-12 09:47:08 +03:00
Arik Fraimovich
fbd3b92ba0 Fix: delete data source doesn't work when query results referenced by queries. 2017-06-02 18:11:34 +03:00
Arik Fraimovich
beb29c66c2 Scheduled queries improvements:
* Schedule queries with parameters using the default value.
* Keep track of last execution (including failed ones) for scheduling purposes.
2017-05-18 15:10:19 +03:00
Arik Fraimovich
3807510bfe Split refresh schemas into separate tasks and add a timeout. 2017-05-18 13:39:34 +03:00
Arik Fraimovich
75f90c190b Update test for new path 2017-05-04 11:49:10 +03:00
Arik Fraimovich
903463972b Fix: handle the case when a scheduled query wasn't run before 2017-04-02 15:20:45 +03:00
Arik Fraimovich
d8a0885953 Fix: tests were using old method signature 2017-03-06 21:22:29 +02:00
Arik Fraimovich
83e6b6f50c Tests use the same session as the tested code, and we can't use the same
objects after the tested code calls commit() without disabling expire
on commit.

It seems like a safe thing in our case.
2017-03-06 13:49:29 +02:00
Allen Short
2407b115e4 Exponential backoff for failing queries 2017-02-22 10:29:08 -06:00
Allen Short
ca3e125da8 Refactor outdated_queries/refresh_queries tests 2017-02-22 10:28:35 -06:00
Arik Fraimovich
907b33b5a0 Fix: tests failling because they run on different app contextes 2017-02-22 14:06:47 +02:00
Arik Fraimovich
3e23143910 Fix: alert subscriptions were not triggered 2017-02-18 12:30:02 +02:00
Arik Fraimovich
ad18128794 Fix test 2017-02-02 10:39:21 +02:00
Arik Fraimovich
6cf1c1cb70 Disable query version check in test (#1550) 2017-01-26 22:25:12 +02:00
Arik Fraimovich
7e43e54b9d Revise Query.by_user method 2017-01-25 18:08:29 +02:00
Arik Fraimovich
febe908e65 Revise drafts flow for queries:
* Draft queries are now called "Unpublished" -- felt like it better convey the feature.
* Unpublished queries won't be shown in "All Queries" for non owners, but will appear in
  search.
* You can't add unpublished queries to dashboards or alerts.
2017-01-25 16:55:39 +02:00
Arik Fraimovich
98757db3e3 Merge pull request #1508 from stefanseifert/feature/jql-custom-fields
[Jira JQL] Add: support custom JIRA fields and enhance value mapping
2017-01-24 12:32:21 +02:00
Arik Fraimovich
7cc97fafdb Add tests entry point to docker 2017-01-22 13:28:46 +02:00
sseifert
187b557eee adapt to new field mapping syntax and add unit tests 2017-01-09 14:40:27 +01:00
Arik Fraimovich
c900e83bd9 Fix #1499: queries search should be case insensitive 2017-01-02 11:28:23 +02:00
Arik Fraimovich
f5e8fc816c Fix: data source delete was broken 2016-12-27 14:02:59 +02:00
Arik Fraimovich
894da612f4 Improve data sources create test 2016-12-25 12:57:10 +02:00
Arik Fraimovich
d631171e81 Fix Query.recent tests 2016-12-11 15:54:13 +02:00
Arik Fraimovich
1978e07748 Use group ids instead of groups in Queries.search/recent 2016-12-11 15:11:30 +02:00
Arik Fraimovich
1d18109964 Fix tests that used Query.all_queries 2016-12-08 16:07:25 +02:00
Arik Fraimovich
c380596930 Fix cases where we used User.groups instead of User.group_ids 2016-12-08 16:02:51 +02:00
Allen Short
4945d0bec7 fix cleanup_query_results task 2016-12-07 19:59:48 -06:00
Allen Short
da31d983b7 Fix test_cli tests 2016-12-07 13:18:07 -06:00
Arik Fraimovich
74e6ef5c1d Fix users CLI tests 2016-12-07 15:54:08 +02:00
Arik Fraimovich
2b33963bee Add missing db.session.commit calls in CLI 2016-12-07 15:11:42 +02:00
Arik Fraimovich
a84c3e25f5 Move CLI logic into redash.cli and uses manager for tests.
Otherwise the Flask wasn't created and tests were failing.
2016-12-07 14:58:33 +02:00