180 Commits

Author SHA1 Message Date
Ben Sturmfels
136efabd3b
Simplify packaging of static assets. 2021-04-07 23:39:51 +10:00
Ben Sturmfels
1b747cb526
Include static assets in setuptools package. 2021-04-07 23:25:54 +10:00
Ben Sturmfels
c290900f17 Document setup.py data_files. 2021-04-06 20:59:44 +10:00
Ben Sturmfels
3d72ccf4df Include env.py in Python package. 2021-04-06 20:24:27 +10:00
Ben Sturmfels
cf2261022c Now in the 0.12.0 development cycle. 2021-04-05 22:13:01 +10:00
Ben Sturmfels
d5720a0507 fixup! Pin werkzeug to fix breaking tests. 2021-04-04 22:05:10 +10:00
Ben Sturmfels
74c74fdb14 Pin werkzeug to fix breaking tests. 2021-04-04 21:40:03 +10:00
Ben Sturmfels
fc13221045 Fix extras_require. 2021-04-04 15:39:43 +10:00
Ben Sturmfels
39effee4f0 Move WebTest requirement to "extras_require". 2021-04-02 09:30:12 +11:00
Ben Sturmfels
0ef1e2b1d4 Remove implicit dependency on PasteDeploy.
This is installed by PasteScript.
2021-04-02 09:10:40 +11:00
Ben Sturmfels
8681ec288c Sort the dependencies in setup.py for easy comparison with guix-env.scm. 2021-04-01 23:13:47 +11:00
Ben Sturmfels
39cc2055ca Fix pytest issues in Guix.
Key here was removing pytest-xdist from setup.py's "install_requires" list.
Otherwise running the test suite under Guix would fail with something like:

pkg_resources.ContextualVersionConflict: (pytest 5.3.5 (/gnu/store/9clwgf5svincpw3fbjcijdlw9mylyzn3-profile/lib/python3.8/site-packages), Requirement.parse('pytest>=6.0.0'), {'pytest-xdist'})
2021-03-30 22:40:47 +11:00
Ben Sturmfels
43b7d88400 Fix audio and submission tests under Guix.
Have temporarily included libsndfile and python-soundfile until these changes
get merged into Guix upstream.

Identified that Guix's older python-wtforms 2.1 is not compatible with the test
suite.
2021-03-30 13:19:26 +11:00
Ben Sturmfels
799449bf46 Add "feedgenerator" requirement to setup.py. 2021-03-29 16:56:41 +11:00
Ben Sturmfels
2d941d21e1 Convert atom feeds to use feedgenerator library.
Issue is that Werkzeug > 1.0.0 has removed werkzeug.contrib.atom.AtomFeed,
making it difficult to use a distribution-packaged version of werkzeug. To solve
this, I've replaced use of werkzeug.contrib.atom.AtomFeed with
feedgenerator.Atom1Feed.

After the change, the only major difference between the feeds before and after is
that they use <summary> instead of <content>. Minor differences include no longer
adding 'type="text/html"' on some <link> elements and no "xml:base" attribute on
<entry> elements. I don't think these differences will have any noticable
effect.

Tested on Liferea feed reader.
2021-03-16 12:17:57 +11:00
Charlotte Koch
9fe970147c Pin sqlalchemy to a known good version.
The latest version is 1.4.0b1 which changes some internals a bit... internals
which unforuntately mediagoblin's DatabaseManager screw around with
(namely, _decl_class_registry)

Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
2021-03-06 22:45:10 +11:00
Ben Sturmfels
dec47c7102 Apply pyupgrade --py3-plus to remove Python 2 compatibility code. 2021-03-05 23:12:19 +11:00
Ben Sturmfels
5f3a782fef Remove six library. 2021-03-05 23:11:39 +11:00
Fernando Gutierrez
c2e93da0ce Reinstate audio spectrograms on Python 3 [#5610].
The `audiotospectrogram` module is a complete rewrite of the existing spectrogram
code with support for Python 3. This allows us to drop the bundled `freesound`
library and Python 2-only `audioprocessing` and `spectrogram` modules.

Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
2021-03-03 22:21:11 +11:00
Ben Sturmfels
83429a8658 Drop Python 2 installation support. 2021-03-03 21:40:10 +11:00
Ben Sturmfels
89cc69f772 Pin wtforms due to removal of ext module. 2021-03-03 20:49:30 +11:00
Ben Sturmfels
7e10cddee0
docs: Tweak the release notes and deployment docs following testing. 2020-05-04 13:10:24 +10:00
Ben Sturmfels
880b2584bb
Allow Python 2 minor version upgrades [#5595]. 2020-04-30 20:47:37 +10:00
Ben Sturmfels
66d861e6b1
Forcibly pin all Python 2 dependencies [#5595].
This is really horrible, but seems like the only way to stop Python 2 installs
breaking randomly in the future.
2020-04-30 16:54:55 +10:00
Ben Sturmfels
663d052c70
Fix Python 2 package dependencies and sub-dependencies [#5595].
This fixes the installation process *right now* on Python 2. The problem is that
packages are dropping Python 2 support all over the place and due to
our (deliberate) loose dependency version specifications and the loose
sub-dependency version specifications, it's one horrible mess. But it works
right now.

Next up I'll be pinning all the currently installed Python 2 packages and all
dependencies.
2020-04-30 16:45:42 +10:00
Ben Sturmfels
16fbe85247
Fix dependencies and tests for clean Python 2 & 3 test runs under Docker.
This change gives a clean test run in the Debian-based Python 2 and Python 3
docker images.
2020-04-28 18:23:24 +10:00
Ben Sturmfels
912e5d2b41
Fix "KeyError: 'No such transport: sqlite. Did you mean sqla?'" in tests.
This is caused by Celery dropping the "sqlite" transport alias from version
4.3.0, so I've pinned an upper limit.
2020-04-14 18:02:12 +10:00
Ben Sturmfels
72047cbe68
Require jinja2<3.0.0 due to use of f-strings. 2020-04-10 07:14:39 +10:00
Ben Sturmfels
5c77906947
Pin werkzeug < 1.0.0.
In 1.0.0, the werkzeug.contrib module was removed which was required for `werkzeug.contrib.atom.AtomFeed`.
2020-04-01 15:26:47 +11:00
Boris Bobrov
09cd88b033 require higher version of six due to installation problems 2018-08-13 10:53:52 +02:00
Boris Bobrov
f1e79d68e1 Revert "cap sqlalchemy"
This reverts commit d803f14361ec02878afe4f6b196ce917010a1e2f.
WTForms 2.2 was releases, see
https://issues.mediagoblin.org/ticket/5570#comment:6
2018-06-08 17:46:29 +02:00
Boris Bobrov
d803f14361 cap sqlalchemy
Closes #5557 and fixes some complaints in irc
2018-04-30 20:26:34 +02:00
Boris Bobrov
411ae185bf move exifread to other dependencies 2017-06-10 01:29:19 +03:00
Boris Bobrov
00d0bb714b Remove upper cap on celery kombu
Also remove kombu from requirements, because celery fetches it anyway
2017-06-10 01:24:29 +03:00
Andrew Browning
d37c6f622a Modify setup.py version syntax to address #5464
Some users report that even with version <4.0 specified in setup.py,
the 4.0-rc builds of kombu and celery were still being downloaded.
This patch uses a different version syntax as suggested in a Stack
Overflow thread.

https://stackoverflow.com/a/14405269
2016-08-26 11:34:18 -04:00
Boris Bobrov
474a56ce90 Cap kombu and celery
See issue 5464 for details
2016-07-25 05:23:16 +03:00
Christopher Allan Webber
af6b89eafe Remove old hack to support pre-0.7.5 Alembic versions
Thanks to Jessica Tallon for pointing out this TODO and its associated
hack could be removed.
2016-03-02 11:20:47 -08:00
Christopher Allan Webber
0c9c5cab62 Remove version caps on sqlalchemy and alembic.
Code seems to pass fine after the cap is removed.  Whatever dependency
issues we were running into before don't seem to be an issue now.
2016-03-02 11:20:47 -08:00
Christopher Allan Webber
062e37899d Oh, we don't need Paste, but we do need PasteScript! 2016-02-20 13:25:45 -08:00
Christopher Allan Webber
5c58b69e51 Removing python 2.6 junk: argparse and a 2.6 classifier 2016-02-19 10:22:48 -08:00
Christopher Allan Webber
d61778a489 Switch from Paste for serving to Waitress
Incredibly, it looks like none of our documentation has to change taking
this route...!
2016-02-19 10:22:14 -08:00
Boris Bobrov
149f46f7d5 Cleanup setup.py
Remove old comments and duplicate requirements from setup.py
2016-02-18 09:42:24 +03:00
Christopher Allan Webber
4f798a8a0c Removed deprecated comment about wsgi environ being borked 2016-02-17 15:52:24 -08:00
Boris Bobrov
7c1287b66c Upgrade sqlalchemy and sa-migrate
Our versions were too old. And not compatible with python3.
2016-02-11 10:40:50 -08:00
Boris Bobrov
6db9c5258c Uncap Paste
Paste was capped to 1.9.9 because 2.0 broke us. Now Paste 2.0.x was released
and it doesn't break us any more. Closes bug 5317.
2016-01-07 21:12:01 +03:00
Christopher Allan Webber
6557bab6f1 Switch to webtest >= 2.0.18 2015-11-05 15:32:51 -06:00
Ben Sturmfels
f51fd67a06 trac#665: Upgrade to WebTest 2.0.18 and fix broken test test_csrf_cookie_set.
Test was failing due to API change in WebTest around accessing cookies set in the test client. These are now in `test_app.cookies`.

While there are currently 48 other tests failing, I've verified that before and after this change that the same number fail. I've also checked that no other tests use the old API for accessing test client cookies.

I've pinned to version 2.0.18. My understanding is that it's generally a good idea to pin to a specific version where possible to avoid the "why has this suddenly broken" type bugs. This also seems appropriate since WebTest appears to be very stable.
2015-11-05 15:13:44 -06:00
Berker Peksag
e340879d3c Pin mock 1.0.1 in Python 2 for now.
mock recently dropped Python 2.6 support and then
re-introduced it in its latest release (however,
it's a bit unstable right now).

I think at this point, we can be more cautious
and just use mock==1.0.1.
2015-07-22 10:18:00 +03:00
Christopher Allan Webber
ab62a7c0d2 Paste 2.0 breaking wsgi 2015-04-24 21:10:25 -05:00
Jim Campbell
3252f73836 setup.py: Updated version requirement for 'requests'. Fixes 5313.
If we don't speficify a version for 'requests', Debian installs
v2.4.x, but there is an issue with urllib3 and pyopenssl in versions
prior to 2.6.0. This issue caused our installs to fail.

Updating our requirement to 2.6.0 or greater resolves this issue
and allows our installation processes to proceed normally.
`
2015-04-19 12:26:11 -05:00