Commit graph

480 commits

Author SHA1 Message Date
Marcin Kuzminski
77ccbcae5e markup: use cached version of http pattern for urlify_text. This
increases performance because we don't have to compile the pattern each time
we execute this commonly used function.
2017-09-14 11:26:46 +02:00
Marcin Kuzminski
fa3a86bbcb helpers: make sure request parameter is not rendered inside secure form. 2017-09-12 22:49:26 +02:00
Marcin Lulek
f42a5ca66b db: use LONGTEXT for mysql in user_logs. Fixes #5385, problem with mysql rejecting
insert because of too long json data.

- simple case of lots of users in user group can cause mysql to fail on insert
2017-09-12 13:35:35 +02:00
Marcin Kuzminski
a58bd2a9a6 pep8: cleanup code of lru_debug 2017-09-08 12:40:29 +02:00
Marcin Kuzminski
4e50794cfb auth: use consistent way of extracting came_from, and also sanitise it to remove
auth_token. This prevents a loop of redirection in case we get redirected to login
with this parameter.
2017-09-06 23:39:45 +02:00
Daniel Dourvaris
8f02ca668c diffs: use whole chunk diff to calculate if it's oversized or not.
- This fixes an issue if a file is added that has very large number of small lines.
In this case the time to detect if the diff should be limited was very very long and CPU intensive.
2017-09-01 15:56:50 +02:00
Marcin Kuzminski
3f0ff6b65b vcs: report 404 for shadow repos that are not existing anymore. Before we got 500 exception in this case. 2017-09-01 13:10:52 +02:00
Marcin Kuzminski
a8abeb0d1c user-groups: rewrote the app to pyramid
- added new event data with added/removed/changed permissions
- cleanup code and spelling
2017-08-31 12:47:19 +02:00
Marcin Kuzminski
48959fcd73 auth: don't double register the permission in case no inheritance is turned on 2017-08-28 12:56:04 +02:00
Marcin Kuzminski
c0899ff09d auth: expose a option to calculate how we end up having super-admin permission.
This is now used only for visual display. The old way is still faster for permissions
calculation.

- the extended way will be used in permission summary showing a much more detailed
permission summary for super-admins.
2017-08-27 19:30:42 +02:00
Marcin Kuzminski
54ad0eaea2 auth: use pesistent naming of keys in auth. Refactoring only. 2017-08-27 19:29:10 +02:00
Marcin Kuzminski
868ab0ed73 permissions: explicitly register all permissions set for user. Fixes #4217
- in order to get a proper inheritance chain of permissions we'll register each step.
This allows to get full inheritance chain. Final permissions will be the same becuase
the only thing we change is we register each step before permissions final value.
- Also display the permissions summary in a nicer way more explicitly stating what
permissions overwrites which.
2017-08-25 17:43:28 +02:00
Daniel Dourvaris
83e3196e55 initial-gravatars: fix case of dot beeing present before @domain. 2017-08-25 10:27:00 +02:00
Marcin Kuzminski
198094e646 mercurial: updated logging and function calls. 2017-08-24 18:49:20 +02:00
Marcin Kuzminski
bffc3ecda9 git: added identify command for checking the current checkout commit 2017-08-24 18:44:31 +02:00
Marcin Kuzminski
990994942d pull-requests: use close action with proper --close-commit solution.
- Mercurial settings are no long as LABS
- Unified some code between GIT and HG on rebase/close/delete feature branches
2017-08-24 22:36:34 +02:00
Mathieu Cantin
761e973359 mercurial: Add option to close a branch before merging 2017-08-08 13:46:42 -04:00
Marcin Kuzminski
dcedd44327 auth: added additional name filters to the acl helpers.
- helps narrowing the results based on if we use a search param or not.
2017-08-16 21:51:10 +02:00
Marcin Kuzminski
f539d88365 auth: added helpers to fetch IDs of repos/repo groups/user groups that
user have access to.

- this can be used to do filtering by IDs and do SQL based ACLs
2017-08-16 14:05:36 +02:00
Marcin Kuzminski
928129ed6c repositories: rewrote whole admin section to pyramid.
- fixed few small found problems
- code cleanups
2017-08-11 13:00:47 +02:00
Marcin Kuzminski
5286b2484f core: added two new commands rcsetup-app and rcupgrade-db that will
replace pserve equivalents.

- pserver uses some internals from pylons, and we want to remove this.
2017-08-04 15:42:14 +02:00
Marcin Kuzminski
c18fe82344 core: expose pshell as ipython with RhodeCode imports.
- will replace soon paster ishell
2017-08-04 15:15:43 +02:00
Marcin Kuzminski
68e8c23896 markup: make relative links pint to raw files for images and to standard files as links.
- allows building relative MD/RST links that go to rendered content
- still allows to embed images/video with relative paths
2017-08-04 10:54:33 +02:00
Marcin Kuzminski
ff01b29445 markup: allow better lxml import failure detection.
- in some conditions previous syntaxt could cause errors in first import.
2017-08-04 00:18:59 +02:00
Marcin Kuzminski
c56bb0da4b core: removed usage of global pylons config in base lib. 2017-08-03 21:59:49 +02:00
Marcin Kuzminski
905e6ea6e0 auth: XHRRequired decorator is no longer required.
- was replaced by xhr=True view config of pyramid
2017-08-03 21:39:48 +02:00
Marcin Kuzminski
d86be7d432 auth_white_list: translate from old style controllers to the new views. 2017-08-03 18:40:48 +02:00
Marcin Kuzminski
bb544cbad6 auth: allow binding the whitelist views to specific tokens 2017-08-03 18:54:52 +02:00
Marcin Kuzminski
35cefa9b2d users: added SSH key management for user admin pages 2017-08-03 16:35:13 +02:00
Marcin Kuzminski
2c11516c9b routing: optionally use explicit db object on route.
- makes it harder to integrate plugins
- makes it consistent on other places
- allows some plugins to use just the names
2017-08-01 22:59:15 +02:00
Marcin Kuzminski
05386904e7 forks: moved pylons code into pyramid. 2017-08-01 11:48:16 +02:00
Marcin Kuzminski
858b640885 http-app: adds some logging. 2017-07-28 02:42:52 +02:00
Marcin Kuzminski
42d56172a4 user-groups: moved the display of user group into a pyramid view 2017-07-27 18:56:31 +02:00
Daniel Dourvaris
247e063960 channelstream: log debug should be lazily evaulated. 2017-07-26 20:22:06 +02:00
Marcin Kuzminski
fa5dd62880 channelstream: push events with comments on single commits.
- use wrapper for posting to simplify the code.
2017-07-26 18:04:56 +02:00
Marcin Kuzminski
f1f84b5b64 channelstream: add simple method of posting message to notification channel. 2017-07-26 16:26:35 +02:00
Marcin Kuzminski
708f22ac87 db: use unicode for some of the defaults to reduce sqlalchemy warnings. 2017-07-26 12:14:56 +02:00
Marcin Kuzminski
1f94f0b6ca db: fix migration after sqlalchemy upgrade 2017-07-26 10:29:43 +02:00
Marcin Kuzminski
108d9c0ac0 audit-logs: use stricter limit on how much data the commits key can hold.
- we're limited by a smaller column size
- helps avoid mysql problems
- found after sqlalchemy update
2017-07-26 09:55:51 +02:00
Marcin Kuzminski
f83bfd0951 sqlalchemy: enabled connection ping.
- should fix potential issues with Mysql server has gone away issues
2017-07-25 16:54:10 +02:00
Marcin Kuzminski
c17e166f5f events: make sure we propagate our dummy request with proper application_url.
- handles proper proxy prefix
- handles https and reverse proxies
2017-07-26 16:19:06 +02:00
Marcin Kuzminski
2656338a0d events: ported pylons part to pyramid.
- fix lack of request context in VCS type events
  we now use a dummy request but it's sufficient for routes generation
- cleanup and re-organized some code
- removed all pylons stuff from the events code
2017-07-26 12:41:14 +02:00
Marcin Kuzminski
ab16b87482 http: ported old depracated retry format for http client. 2017-07-26 12:39:31 +02:00
Marcin Kuzminski
0c1f7e3306 auth: improve logging 2017-07-25 15:07:43 +02:00
Marcin Kuzminski
3f26df9f37 user: deprecated usage of api_keys.
- additionally we don't load secrets as they are never used (and are expensive to fetch)
- simplify fetching of details improves performance
2017-07-25 16:27:08 +02:00
Marcin Kuzminski
8efc4d92c5 repo-commits: ported changeset code into pyramid views.
- refactored part of naming to use commit_id instead of revision
- renamed some parts to repo_commits instead of changeset without breaking backward compat
- small improvements and fixes for tests
2017-07-24 17:04:14 +02:00
Marcin Kuzminski
67f8000683 core: use a custom filter for rendering all mako templates.
- brings old pylons function that converted None into a empty markup
2017-07-24 14:28:19 +02:00
Marcin Kuzminski
3b524b7875 renderer: remove usage of old non request PartialRenderer 2017-07-24 09:59:48 +02:00
Marcin Kuzminski
a9064c5007 translation: unified usage of pluralize function ungettext.
- now it's consistent _ungettext for pylons and pyramid
- will allow easier migration to full pyramid codebase
2017-07-24 10:00:06 +02:00
Marcin Kuzminski
4f16a9a411 repository-groups: introduce last change for repository groups. 2017-07-20 12:59:53 +02:00