Commit Graph

60 Commits

Author SHA1 Message Date
Umair Khan c24fbd28b2 Shift to python-gcm for Android push notifications.
Fixes #2650
2016-12-15 12:17:07 -08:00
Umair Khan efccefc386 Upgrade to the latest Django release, 1.10.4.
Most of the changes to support this were merged some time ago; what
remains are these changes:

* Update requirements.txt
* Django 1.10: Upgrade success-http-headers.txt file.

- We no longer get the absolute urls, see
  https://docs.djangoproject.com/en/1.10/releases/1.9/#http-redirects-no-longer-forced-to-absolute-uris
- The headers are capitalized, previously, they were in upper case.

* Bump PROVISON_VERSION to 3.0 since this is a disruptive change.

Fixes #3.
2016-12-14 22:43:20 -08:00
Umair Khan 9f5c961a1b Django 1.10: Use django-bitfield from Disqus.
Disqus is the upstream for django-bitfield and has now merged in the
support for Django 1.10 we were previously getting from another
repository.
2016-12-14 22:38:35 -08:00
Igor Tokarev c93f1d4eda Add oembed/Open Graph/Meta tags data retrieval from inline links.
This change adds support for displaying inline open graph previews for
links posted into Zulip.

It is designed to interact correctly with message editing.

This adds the new settings.INLINE_URL_EMBED_PREVIEW setting to control
whether this feature is enabled.

By default, this setting is currently disabled, so that we can burn it
in for a bit before it impacts users more broadly.

Eventually, we may want to make this manageable via a (set of?)
per-realm settings.  E.g. I can imagine a realm wanting to be able to
enable/disable it for certain URLs.
2016-12-07 17:40:18 -08:00
Chelsea Voss 32f5db16fb Add pytest-runner as a prereq to pip installing python-twitter.
While I was setting up the dev environment, pip failed to install
python-twitter: https://github.com/bear/python-twitter/issues/406

This was fixed by manually installing pytest-runner before trying to
install python-twitter, for both the python and python3 virtualenvs.
2016-11-20 13:06:41 -08:00
Umair Khan 47e8a56870 Django 1.10: Use compatible django guardian. 2016-11-14 16:09:12 -08:00
Umair Khan e89af4c470 Django 1.10: Fix django-bitfield.
SubfieldBase was deprecated in Django 1.10 so the version we use now
doesn't rely on that class.
2016-11-14 16:09:12 -08:00
paxapy 456e761294 lint: Add pep8 checker to the project.
We set this up initially with all of the rules that Zulip violates
disabled.

Also, the pep8 linter is substantially slower than the other Zulip
linters, so we've put it behind an option to `tools/lint-all`.
2016-11-09 15:17:49 -08:00
paxapy 93965a8e89 Add tools for dumping and comparing markdown renderings.
This adds a couple new tools that can be used to determine whether a
particular change in Zulip's backend markdown processor would impact
the rendering of historical messages, without a human actually looking
at the message content.  This is a useful way to verify whether a
change to our markdown syntax is likely to create problems.

[commit message and code tweaked by tabbott]
2016-11-07 07:49:56 -08:00
Tim Abbott 50382f153a requirements: Upgrade pillow to the latest version. 2016-11-06 20:52:04 -08:00
Tim Abbott be506d63f6 requirements: Upgrade a bunch of minor Python package versions.
These are all minor versions and thus shouldn't have any impact.
2016-11-05 09:13:28 -07:00
K.Kanakhin 09e17fbe17 run-dev: Use tornado for dev proxy server for HTTP requests.
- Use tornado as proxy server for development environment,
  replacing twisted (this doesn't support websockets).
- Upgrade tornado version to 4.4.1 (needs to be coupled to the
  above since neither change works without the other)
2016-11-01 20:35:31 -07:00
Tim Abbott 7a02ed42e7 requirements: Move fakeldap to dev.txt. 2016-10-28 11:04:08 -07:00
Umair Khan 50422e775b Add LDAP tests. 2016-10-28 09:27:55 -07:00
Tim Abbott 14e2540b2f requirements: Upgrade a bunch of dependencies.
These are all minor version upgrades that should be safe.
2016-10-16 01:13:50 -07:00
umkay c028815385 bugdown: Update python-markdown to version 2.6.7.
This updates Bugdown to reflect the changes in the updated
markdown. In particular, we now pass a default config object in the
__init__ for the Bugdown extension, update the make_md_engine function
to take kwargs as opposed to a config list, and have UListProcessor
inherit from ulist as opposed to olist (which no longer works).

We update the (forked from upstream) fenced_code extension's
makeExtension to take args and kwargs, and update
FencedBlockPreprocessor __init__ method with updated Codehilite
arguments.

We update the (forked from upstream) Codehilite extension to
mirror the logic with the latest upstream Codehilite:
	Add parse_hl_lines function
	update makeExtension to take args and kwarfs instead of config
	list
	Add regex for highlight lines
	use linenums instead of linenos
	use get_formatter_by_name instead of HtmlFormatter
	user get_lexer_by_name instead of TextLexer
	add hl_lines and use_pygments arguments to the codehlite
	constructor
2016-10-15 23:38:32 -07:00
umkay bfbf07fde2 Update pinned SQLAlchemy requirement to latest upstream version.
The prerequisite to this change is
278574a6ec
2016-10-14 14:45:43 -07:00
Tim Abbott a17a6a21c0 Upgrade Django to 1.8.15 with Zulip patches. 2016-09-27 20:29:08 -07:00
Umair Khan e3078b226a Optimize incremental virtualenv creation.
This adds a new system for copying packages from old virtualenvs that
are sufficiently similar to the new virtualenv required.

In practice, this results in a huge performance improvement for
re-provisioning Zulip development environments when the requirements
files have changed (which is the dominant performance problem with
provision today).

Fixes: #1507.
2016-09-19 22:35:32 -07:00
Tim Abbott 27e4ed126f requirements: Upgrade various Python dependencies. 2016-09-19 22:32:02 -07:00
umkay 82d03d603a Update Pygments to latest upstream version.
In HTML, the line break immediately following a start tag is ignored
(see: https://www.w3.org/TR/html4/appendix/notes.html#h-B.3.1). An
extra span tag has been introduced in the upstream Pygments
HtmlFormatter in order to preserve the first new line. The Bugdown
Tests as well as our fenced_code.js frontend markdown processor have
been updated to reflect this new behavior.
2016-09-12 21:58:25 -07:00
Tim Abbott 317e2a63b3 Remove tools/deprecated/review and associated files.
This hasn't been used since before Zulip was open source, and isn't
super reusable, so we can remove it.  It'll always be there in the
history if someone ends up wanting it.

While we're at it, we remove the GitPython dependency (only used for
this tool) and the example MSMTP config for the review tool.
2016-09-10 10:53:02 -07:00
Tim Abbott a4536cca1e emoji_dump: Generate a sprite sheet for the Zulip emoji. 2016-09-08 15:16:58 -07:00
Umair Khan 13159ab266 Provide versions through egg.
Giving version in the git urls will allow pip to compare the
installed version and skip the download if the installed
version is up to date.
2016-09-08 14:15:20 -07:00
ukhan 3c1027a584 Update sockjs-tornado to latest version. 2016-08-15 16:58:58 -07:00
ukhan a7607f843b Update Tornado to 3.2.2, which does not break tests 2016-08-15 16:57:19 -07:00
ukhan db81647b7b Update packages in requirements that won't break tests
upgrade moto, downgrade httpretty for compatibility

downgrade commonmark for compatibility
2016-08-12 17:56:23 -07:00
ukhan 180b438c44 Upgrade setuptools prior to updating mock 2016-08-12 17:56:23 -07:00
Umair Khan 2edb79776e Calculate translation percentages.
Fixes: #1397
2016-07-29 11:58:41 -07:00
Eklavya Sharma 80bb27570d Remove unneeded dependencies.
We install service-identity to prevent twisted from giving spammy
warnings.  However, we don't need the security features provided
by service-identity.  So we can remove most of its cryptographic
dependencies.
2016-07-28 14:52:09 -07:00
Eklavya Sharma 9922ecc7d6 Shift twisted to requirements/py2_dev.txt.
Since twisted is only used for running tools/run-dev.py, we only
need it in development.  Also twisted is not python 3 compatible.
So it should be shifter to requirements/py2_dev.txt.
2016-07-28 14:52:09 -07:00
Tim Abbott 65175ef15a Test upgrading Tornado to 3.1.1. 2016-07-27 13:47:34 -07:00
Eklavya Sharma 7c37316432 Upgrade pylibmc. 2016-07-27 13:03:31 -07:00
Eklavya Sharma a2a8b54f6e Upgrade pillow.
Update test images because pillow's resize algorithm has changed.
2016-07-26 16:36:07 +05:30
Eklavya Sharma 6ed5163795 Upgrade Jinja2. 2016-07-24 19:45:52 -07:00
Tim Abbott 5b583c7417 Fix django statsd packages. 2016-07-20 19:03:29 -07:00
Eklavya Sharma cfed816a52 tools/provision.py: Install a python2 venv with twisted.
Twisted is not python 3 compatible.  So for now create a python2
venv and install twisted in it when running provision.py in python3
mode and use twisted from the python2 venv.
2016-07-19 14:15:35 -07:00
Tim Abbott ef4d11e906 Upgrade Python RSA module. 2016-07-19 00:00:01 -07:00
Tim Abbott 40371422cd Upgrade to typing 3.5.2.2. 2016-07-19 00:00:01 -07:00
Tim Abbott fb86d91de2 Add missing django-statsd dependency.
This dependency is only needed if USING_STATSD is set, and so had
apparently been missed from our dependency list previously (since few
sites use that setting).
2016-07-18 11:01:13 -07:00
Eklavya Sharma fb1d00fc6c Upgrade python-twitter to latest version.
Fixes #1145.
2016-07-17 10:23:25 -07:00
Alex Gaynor a8a2e13096 Upgrade to the latest cryptography. 2016-07-15 12:25:48 -07:00
Umair Khan 395e053ce3 Revert "Revert "Extract reply from email.""
This reverts commit f1ba3ded42.
2016-07-13 11:24:18 -07:00
Umair Khan 0aae0eab49 Switch to PyAPNS for sending push notifications.
Switch to [PyAPNS](https://github.com/djacobs/PyAPNs).

Fixes #538.
2016-07-13 10:55:07 -07:00
Tim Abbott af8047967f Upgrade ujson to latest version (has indent option). 2016-07-12 22:39:06 -07:00
Eklavya Sharma f1ba3ded42 Revert "Extract reply from email."
This reverts commit f1f48f305e.

The use of sklearn unfortunately caused a substantial slowdown to the
Zulip provisioning process, which didn't seem worth it for a
relatively minor feature.
2016-07-10 11:30:30 -07:00
Umair Khan 043ae8ad65 Upgrade to Django-Pipeline==1.6.8. 2016-07-09 07:09:55 -07:00
Tim Abbott d5be9e8b2d Upgrade django-auth-ldap to 1.2.8.
The new version is needed for Python 3 support.

Fixes #1175.
2016-07-08 11:08:08 -07:00
Umair Khan f1f48f305e Extract reply from email. 2016-07-08 10:58:25 -07:00
Eklavya Sharma bf345a0b30 Move packages from common.txt to py2_common.txt. 2016-07-02 11:53:26 -07:00