Skip to content

Commit 9fd5dc2

Browse files
authored
Merge pull request #177 from AllenInstitute/develop
Develop
2 parents bcfaed8 + 9d742cf commit 9fd5dc2

File tree

15 files changed

+236
-149
lines changed

15 files changed

+236
-149
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ htmlcov/
1515
.pytest_cache
1616
.vscode
1717
.idea/
18-
*.iml
18+
*.iml
19+
.pixi/

integration_tests/test_stack_integrated.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ def render():
3232

3333
@pytest.fixture
3434
def simpletilespec():
35-
mml = renderapi.image_pyramid.MipMapLevel(0, '/not/a/path.jpg')
35+
mm = renderapi.image_pyramid.MipMap(imageUrl='file://not/a/path.jpg')
36+
ip = renderapi.image_pyramid.ImagePyramid({0: mm})
3637
tform = renderapi.transform.AffineModel(labels=['simple'])
3738
layout = renderapi.tilespec.Layout(sectionId="section0",
3839
scopeId="testscope",
@@ -45,7 +46,7 @@ def simpletilespec():
4546
ts = renderapi.tilespec.TileSpec(tileId="1000",
4647
width=2048,
4748
height=2048,
48-
mipMapLevels=[mml],
49+
imagePyramid=ip,
4950
z=0,
5051
tforms=[tform],
5152
layout=layout)

pyproject.toml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
[project]
2+
name = "render-python"
3+
description = "python API client to interact with render databases (see https://github.com/saalfeldlab/render)"
4+
readme = "README.rst"
5+
license = {file = "LICENSE"}
6+
authors = [
7+
{name = "Forrest Collman"},
8+
{name = "Russel Torres"},
9+
{name = "Eric Perlman"},
10+
{name = "Sharmi Seshamani"}
11+
]
12+
maintainers = [
13+
{name = "Russel Torres"}
14+
]
15+
requires-python = ">3.8,<3.12"
16+
dynamic = ["version"]
17+
dependencies = [
18+
"requests",
19+
"scipy",
20+
"numpy",
21+
"pillow",
22+
"sphinxcontrib-napoleon",
23+
"decorator",
24+
"six"
25+
]
26+
27+
[project.urls]
28+
Repository = "https://github.com/AllenInstitute/render-python.git"
29+
30+
[project.optional-dependencies]
31+
test = [
32+
"coverage>=4.1",
33+
"mock>=2.0.0",
34+
"pep8>=1.7.0",
35+
# "pytest>4.6,<5.0",
36+
"pytest",
37+
"pytest-cov>=2.2.1",
38+
"pytest-pep8>=1.0.6",
39+
"pytest-xdist>=1.14",
40+
"flake8>=3.0.4",
41+
"pylint>=1.5.4",
42+
"jinja2",
43+
"ujson"
44+
]
45+
pypi-build = [
46+
"build",
47+
"twine"
48+
]
49+
50+
[build-system]
51+
requires = ["setuptools>=64", "setuptools_scm>=8"]
52+
build-backend = "setuptools.build_meta"
53+
54+
[tool.setuptools]
55+
py-modules = [
56+
"renderapi"
57+
]
58+
59+
[tool.setuptools_scm]
60+
version_file = "renderapi/_version.py"
61+
62+
# some downgrades from pixi's expectations
63+
[tool.pixi.system-requirements]
64+
linux = "5.0.0"
65+
libc = "2.27"
66+
67+
[tool.pixi.project]
68+
channels = ["conda-forge"]
69+
platforms = ["linux-64"]
70+
71+
[tool.pixi.pypi-dependencies]
72+
render-python = { path = ".", editable = true }
73+
74+
# conda-enabled features
75+
[tool.pixi.feature.pixi-base.dependencies]
76+
numpy = "*"
77+
scipy = "*"
78+
79+
[tool.pixi.environments]
80+
test = ["test"]
81+
conda = ["pixi-base"]
82+
conda-test = ["pixi-base", "test"]
83+
build = ["pypi-build"]
84+
85+
[tool.coverage.run]
86+
omit = ["integration_tests/*", "test/*"]
87+
88+
[tool.pixi.feature.test.tasks]
89+
test = "pytest --cov --cov-report=xml --junitxml=test-reports/test.xml"
90+
91+
[tool.pixi.feature.pypi-build.tasks]
92+
pypi-build = "python -m build"
93+
pypi-test-upload = "python -m twine upload --repository testpypi dist/*"
94+
pypi-test-deploy = "python -m build && python -m twine upload --repository testpypi dist/*"

renderapi/coordinate.py

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
from .utils import NullHandler, renderdumps, renderdump, get_json
77
from .client import coordinateClient
88
from .errors import RenderError
9-
import requests
109
import json
1110
import numpy as np
1211
import logging
@@ -20,7 +19,7 @@
2019
@renderaccess
2120
def world_to_local_coordinates(stack, z, x, y, host=None,
2221
port=None, owner=None, project=None,
23-
session=requests.session(),
22+
session=None,
2423
render=None, **kwargs):
2524
"""maps an world x,y,z coordinate in stack to a local coordinate
2625
Parameters
@@ -64,7 +63,7 @@ def world_to_local_coordinates(stack, z, x, y, host=None,
6463
@renderaccess
6564
def local_to_world_coordinates(stack, tileId, x, y,
6665
host=None, port=None, owner=None, project=None,
67-
session=requests.session(),
66+
session=None,
6867
render=None, **kwargs):
6968
"""convert coordinate from local to world with webservice request
7069
@@ -110,7 +109,7 @@ def local_to_world_coordinates(stack, tileId, x, y,
110109
def world_to_local_coordinates_batch(stack, d, z, host=None,
111110
port=None, owner=None, project=None,
112111
execute_local=False,
113-
session=requests.session(),
112+
session=None,
114113
render=None, **kwargs):
115114

116115
"""convert coordinate parameters from world to local
@@ -174,7 +173,7 @@ def world_to_local_coordinates_batch(stack, d, z, host=None,
174173
@renderaccess
175174
def local_to_world_coordinates_batch(stack, d, z, host=None,
176175
port=None, owner=None, project=None,
177-
session=requests.session(),
176+
session=None,
178177
render=None, **kwargs):
179178
"""convert coordinate parameters from local to world
180179
@@ -302,7 +301,7 @@ def unpackage_world_to_local_point_match_from_json(json_answer, tileId):
302301
# def old_world_to_local_coordinates_array(stack, dataarray, tileId, z=0,
303302
# host=None, port=None,
304303
# owner=None, project=None,
305-
# session=requests.session(),
304+
# session=None,
306305
# render=None, **kwargs):
307306
# ''''''
308307

@@ -359,7 +358,7 @@ def world_to_local_coordinates_array(stack, dataarray, tileId, z,
359358
owner=None, project=None,
360359
client_script=None,
361360
doClientSide=False, number_of_threads=20,
362-
session=requests.session(), **kwargs):
361+
session=None, **kwargs):
363362
"""map world to local coordinates using numpy array
364363
365364
Parameters
@@ -403,7 +402,7 @@ def world_to_local_coordinates_array(stack, dataarray, tileId, z,
403402
# def old_local_to_world_coordinates_array(stack, dataarray, tileId, z=0,
404403
# host=None, port=None,
405404
# owner=None, project=None,
406-
# session=requests.session(),
405+
# session=None,
407406
# render=None, **kwargs):
408407
# ''''''
409408
# request_url = format_preamble(
@@ -439,7 +438,7 @@ def local_to_world_coordinates_array(stack, dataarray, tileId, z,
439438
owner=None, project=None,
440439
client_script=None,
441440
doClientSide=False, number_of_threads=20,
442-
session=requests.session(), **kwargs):
441+
session=None, **kwargs):
443442
"""map local to world coordinates using numpy array
444443
445444
Parameters

renderapi/image.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
#!/usr/bin/env python
22

33
import io
4-
import requests
54
from PIL import Image
65
import numpy as np
76
import logging
@@ -36,7 +35,7 @@ def get_bb_renderparams(stack, z, x, y, width, height, scale=1.0,
3635
binaryMask=None, filter=None, filterListName=None,
3736
convertToGray=None, excludeMask=None,
3837
host=None, port=None, owner=None,
39-
project=None, session=requests.session(),
38+
project=None, session=None,
4039
render=None, **kwargs):
4140

4241
request_url = format_preamble(
@@ -63,7 +62,7 @@ def get_bb_image(stack, z, x, y, width, height, scale=1.0,
6362
minIntensity=None, maxIntensity=None, binaryMask=None,
6463
filter=None, maxTileSpecsToRender=None,
6564
host=None, port=None, owner=None, project=None,
66-
img_format=None, session=requests.session(),
65+
img_format=None, session=None,
6766
render=None, **kwargs):
6867
"""render image from a bounding box defined in xy and return numpy array:
6968
@@ -150,7 +149,7 @@ def get_tile_renderparams(
150149
filter=None, filterListName=None, excludeMask=None, convertToGray=None,
151150
binaryMask=None, host=None, port=None, owner=None,
152151
project=None, img_format=None,
153-
session=requests.session(), render=None, **kwargs):
152+
session=None, render=None, **kwargs):
154153
request_url = format_preamble(
155154
host, port, owner, project, stack) + \
156155
"/tile/%s/render-parameters" % (
@@ -182,7 +181,7 @@ def get_tile_image_data(stack, tileId, channel=None, normalizeForMatching=True,
182181
minIntensity=None, maxIntensity=None,
183182
filter=None, host=None, port=None, owner=None,
184183
project=None, img_format=None,
185-
session=requests.session(), render=None, **kwargs):
184+
session=None, render=None, **kwargs):
186185
"""render image from a tile with all transforms and return numpy array
187186
188187
:func:`renderapi.render.renderaccess` decorated function
@@ -273,7 +272,7 @@ def get_section_renderparams(stack, z, binaryMask=None, channel=None,
273272
filterListName=None, minIntensity=None,
274273
maxIntensity=None, scale=None,
275274
host=None, port=None, owner=None, project=None,
276-
session=requests.session(),
275+
session=None,
277276
render=None, **kwargs):
278277
request_url = format_preamble(
279278
host, port, owner, project, stack) + "/z/{}/render-parameters".format(
@@ -299,7 +298,7 @@ def get_section_image(stack, z, scale=1.0, channel=None,
299298
filter=False,
300299
maxTileSpecsToRender=None, img_format=None,
301300
host=None, port=None, owner=None, project=None,
302-
session=requests.session(),
301+
session=None,
303302
render=None, **kwargs):
304303
"""render an section of image
305304
@@ -371,7 +370,7 @@ def get_section_image(stack, z, scale=1.0, channel=None,
371370
@renderaccess
372371
def get_renderparameters_image(renderparams, img_format=None,
373372
host=None, port=None, owner=None,
374-
session=requests.session(),
373+
session=None,
375374
render=None, **kwargs):
376375
try:
377376
image_ext = IMAGE_FORMATS[img_format]

0 commit comments

Comments
 (0)