Skip to content

Commit 2e49dd3

Browse files
gfrngithub-actions[bot]DiamondLightSource-build-server
authored
Bump schema version from v4.9.0 to v4.11.0 (#242)
* Bump schema version from v4.9.0 to v4.11.0 * Update ISPyB ORM schema to database schema v4.11.0 (#243) Generated with sqlacodegen 3.0.0rc5 SQLAlchemy 2.0.45 Co-authored-by: ISPyB-API Azure build <[email protected]> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: ISPyB-API Azure build <[email protected]>
1 parent 8b710a4 commit 2e49dd3

File tree

3 files changed

+168
-3
lines changed

3 files changed

+168
-3
lines changed

.github/workflows/test-and-publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
push:
55

66
env:
7-
DATABASE_SCHEMA: 4.9.0
7+
DATABASE_SCHEMA: 4.11.0
88

99
permissions:
1010
contents: read

HISTORY.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ History
55
Unreleased / main
66
-------------------
77

8+
11.1.1 (2026-01-13)
9+
-------------------
10+
11+
* Update database schema to v4.11.0
12+
813
11.1.0 (2025-10-02)
914
-------------------
1015

src/ispyb/sqlalchemy/_auto_db_schema.py

Lines changed: 162 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
__schema_version__ = "4.8.0"
1+
__schema_version__ = "4.11.0"
22
import datetime
33
import decimal
44
from typing import List, Optional
@@ -2235,6 +2235,12 @@ class Proposal(Base):
22352235
state: Mapped[Optional[str]] = mapped_column(
22362236
Enum("Open", "Closed", "Cancelled"), server_default=text("'Open'")
22372237
)
2238+
startDate: Mapped[Optional[datetime.datetime]] = mapped_column(
2239+
DateTime, comment="Start of the allocation period"
2240+
)
2241+
endDate: Mapped[Optional[datetime.datetime]] = mapped_column(
2242+
DateTime, comment="End of the allocation period"
2243+
)
22382244

22392245
Person: Mapped["Person"] = relationship("Person", back_populates="Proposal")
22402246
BLSampleGroup: Mapped[List["BLSampleGroup"]] = relationship(
@@ -4507,6 +4513,10 @@ class Container(Base):
45074513
source: Mapped[Optional[str]] = mapped_column(
45084514
String(50), server_default=text("current_user()")
45094515
)
4516+
parentContainerLocation: Mapped[Optional[int]] = mapped_column(
4517+
INTEGER(10),
4518+
comment="Indicates where inside the parent container this container is located",
4519+
)
45104520

45114521
ContainerRegistry: Mapped["ContainerRegistry"] = relationship(
45124522
"ContainerRegistry", back_populates="Container"
@@ -5348,7 +5358,7 @@ class RobotAction(Base):
53485358
)
53495359
blsampleId: Mapped[Optional[int]] = mapped_column(INTEGER(11))
53505360
actionType: Mapped[Optional[str]] = mapped_column(
5351-
Enum("LOAD", "UNLOAD", "DISPOSE", "STORE", "WASH", "ANNEAL", "MOSAIC")
5361+
Enum("LOAD", "UNLOAD", "DISPOSE", "STORE", "WASH", "ANNEAL", "MOSAIC", "LASER")
53525362
)
53535363
status: Mapped[Optional[str]] = mapped_column(
53545364
Enum("SUCCESS", "ERROR", "CRITICAL", "WARNING", "EPICSFAIL", "COMMANDNOTSENT")
@@ -5366,6 +5376,9 @@ class RobotAction(Base):
53665376
BLSession: Mapped["BLSession"] = relationship(
53675377
"BLSession", back_populates="RobotAction"
53685378
)
5379+
LaserParameters: Mapped[List["LaserParameters"]] = relationship(
5380+
"LaserParameters", back_populates="RobotAction"
5381+
)
53695382

53705383

53715384
class SampleComposition(Base):
@@ -5471,6 +5484,39 @@ class Atlas(Base):
54715484
atlasImage: Mapped[str] = mapped_column(String(255), comment="path to atlas image")
54725485
pixelSize: Mapped[float] = mapped_column(Float, comment="pixel size of atlas image")
54735486
cassetteSlot: Mapped[Optional[int]] = mapped_column(INTEGER(10))
5487+
hasRed: Mapped[Optional[int]] = mapped_column(
5488+
TINYINT(1), server_default=text("0"), comment="Whether atlas has red channel"
5489+
)
5490+
hasBlue: Mapped[Optional[int]] = mapped_column(
5491+
TINYINT(1), server_default=text("0"), comment="Whether atlas has blue channel"
5492+
)
5493+
hasGreen: Mapped[Optional[int]] = mapped_column(
5494+
TINYINT(1), server_default=text("0"), comment="Whether atlas has green channel"
5495+
)
5496+
hasYellow: Mapped[Optional[int]] = mapped_column(
5497+
TINYINT(1), server_default=text("0"), comment="Whether atlas has yellow channel"
5498+
)
5499+
hasCyan: Mapped[Optional[int]] = mapped_column(
5500+
TINYINT(1), server_default=text("0"), comment="Whether atlas has cyan channel"
5501+
)
5502+
hasMagenta: Mapped[Optional[int]] = mapped_column(
5503+
TINYINT(1),
5504+
server_default=text("0"),
5505+
comment="Whether atlas has magenta channel",
5506+
)
5507+
hasGrey: Mapped[Optional[int]] = mapped_column(
5508+
TINYINT(1), server_default=text("0"), comment="Whether atlas has grey channel"
5509+
)
5510+
mode: Mapped[Optional[str]] = mapped_column(
5511+
Enum(
5512+
"Bright Field and Fluorescent",
5513+
"Bright Field",
5514+
"Fluorescent",
5515+
"Tomography",
5516+
"Single Particle",
5517+
),
5518+
comment="Collection mode",
5519+
)
54745520

54755521
DataCollectionGroup: Mapped["DataCollectionGroup"] = relationship(
54765522
"DataCollectionGroup", back_populates="Atlas"
@@ -5714,6 +5760,47 @@ class BLSubSample(Base):
57145760
)
57155761

57165762

5763+
class LaserParameters(Base):
5764+
__tablename__ = "LaserParameters"
5765+
__table_args__ = (
5766+
ForeignKeyConstraint(
5767+
["robotActionId"],
5768+
["RobotAction.robotActionId"],
5769+
ondelete="CASCADE",
5770+
onupdate="CASCADE",
5771+
name="LaserParameters_fk_robotActionId",
5772+
),
5773+
Index("LaserParameters_fk_robotActionId", "robotActionId"),
5774+
{"comment": "Laser parameters"},
5775+
)
5776+
5777+
laserParametersId: Mapped[int] = mapped_column(INTEGER(11), primary_key=True)
5778+
robotActionId: Mapped[Optional[int]] = mapped_column(INTEGER(11))
5779+
laserRepetitionRate: Mapped[Optional[float]] = mapped_column(
5780+
Float, comment="Laser repetition rate, in kHz"
5781+
)
5782+
scanheadMoveSpeed: Mapped[Optional[float]] = mapped_column(
5783+
Float, comment="Scanhead move speed, in m/s"
5784+
)
5785+
laserTransmission: Mapped[Optional[float]] = mapped_column(
5786+
Float, comment="Laser transmission, in %"
5787+
)
5788+
numberOfPasses: Mapped[Optional[int]] = mapped_column(INTEGER(10))
5789+
gonioRotationSpeed: Mapped[Optional[int]] = mapped_column(
5790+
INTEGER(10), comment="Goniometer rotation speed, in deg/s"
5791+
)
5792+
totalMarkingTime: Mapped[Optional[float]] = mapped_column(
5793+
Float, comment="Total marking time, in s"
5794+
)
5795+
5796+
RobotAction: Mapped["RobotAction"] = relationship(
5797+
"RobotAction", back_populates="LaserParameters"
5798+
)
5799+
LaserPoint: Mapped[List["LaserPoint"]] = relationship(
5800+
"LaserPoint", back_populates="LaserParameters"
5801+
)
5802+
5803+
57175804
t_Project_has_DCGroup = Table(
57185805
"Project_has_DCGroup",
57195806
Base.metadata,
@@ -6286,6 +6373,41 @@ class GridSquare(Base):
62866373
pixelSize: Mapped[Optional[float]] = mapped_column(
62876374
Float, comment="pixel size of grid square image"
62886375
)
6376+
hasRed: Mapped[Optional[int]] = mapped_column(
6377+
TINYINT(1), server_default=text("0"), comment="Whether region has red channel"
6378+
)
6379+
hasBlue: Mapped[Optional[int]] = mapped_column(
6380+
TINYINT(1), server_default=text("0"), comment="Whether region has blue channel"
6381+
)
6382+
hasGreen: Mapped[Optional[int]] = mapped_column(
6383+
TINYINT(1), server_default=text("0"), comment="Whether region has green channel"
6384+
)
6385+
hasYellow: Mapped[Optional[int]] = mapped_column(
6386+
TINYINT(1),
6387+
server_default=text("0"),
6388+
comment="Whether region has yellow channel",
6389+
)
6390+
hasCyan: Mapped[Optional[int]] = mapped_column(
6391+
TINYINT(1), server_default=text("0"), comment="Whether region has cyan channel"
6392+
)
6393+
hasMagenta: Mapped[Optional[int]] = mapped_column(
6394+
TINYINT(1),
6395+
server_default=text("0"),
6396+
comment="Whether region has magenta channel",
6397+
)
6398+
hasGrey: Mapped[Optional[int]] = mapped_column(
6399+
TINYINT(1), server_default=text("0"), comment="Whether region has grey channel"
6400+
)
6401+
mode: Mapped[Optional[str]] = mapped_column(
6402+
Enum(
6403+
"Bright Field and Fluorescent",
6404+
"Bright Field",
6405+
"Fluorescent",
6406+
"Tomography",
6407+
"Single Particle",
6408+
),
6409+
comment="Collection mode",
6410+
)
62896411

62906412
Atlas: Mapped["Atlas"] = relationship("Atlas", back_populates="GridSquare")
62916413
FoilHole: Mapped[List["FoilHole"]] = relationship(
@@ -6296,6 +6418,41 @@ class GridSquare(Base):
62966418
)
62976419

62986420

6421+
class LaserPoint(Base):
6422+
__tablename__ = "LaserPoint"
6423+
__table_args__ = (
6424+
ForeignKeyConstraint(
6425+
["laserParametersId"],
6426+
["LaserParameters.laserParametersId"],
6427+
ondelete="CASCADE",
6428+
onupdate="CASCADE",
6429+
name="LaserPoint_fk_laserParametersId",
6430+
),
6431+
Index("LaserPoint_fk_laserParametersId", "laserParametersId"),
6432+
{"comment": "Laser points"},
6433+
)
6434+
6435+
laserPointId: Mapped[int] = mapped_column(INTEGER(11), primary_key=True)
6436+
x: Mapped[int] = mapped_column(
6437+
INTEGER(10), comment="X coordinate of point, in microns"
6438+
)
6439+
y: Mapped[int] = mapped_column(
6440+
INTEGER(10), comment="Y coordinate of point, in microns"
6441+
)
6442+
pointIndex: Mapped[int] = mapped_column(
6443+
INTEGER(10), comment="Index of point, expresses ordinality"
6444+
)
6445+
laserParametersId: Mapped[Optional[int]] = mapped_column(INTEGER(11))
6446+
radius: Mapped[Optional[int]] = mapped_column(
6447+
INTEGER(10), comment="Radius of point, in microns"
6448+
)
6449+
laserOn: Mapped[Optional[int]] = mapped_column(TINYINT(1), server_default=text("0"))
6450+
6451+
LaserParameters: Mapped["LaserParameters"] = relationship(
6452+
"LaserParameters", back_populates="LaserPoint"
6453+
)
6454+
6455+
62996456
class XFEFluorescenceSpectrum(Base):
63006457
__tablename__ = "XFEFluorescenceSpectrum"
63016458
__table_args__ = (
@@ -7957,6 +8114,9 @@ class CTF(Base):
79578114
String(255), comment="Full path to the jpg image of the simulated FFT"
79588115
)
79598116
comments: Mapped[Optional[str]] = mapped_column(String(255))
8117+
iceRingDensity: Mapped[Optional[float]] = mapped_column(
8118+
Float, comment="Summed intensity of ice ring in fourier space"
8119+
)
79608120

79618121
AutoProcProgram: Mapped["AutoProcProgram"] = relationship(
79628122
"AutoProcProgram", back_populates="CTF"

0 commit comments

Comments
 (0)