@@ -32,7 +32,7 @@ class Date(OrdinalMixin[dt.date], Column):
3232 def __init__ (
3333 self ,
3434 * ,
35- nullable : bool = True ,
35+ nullable : bool | None = None ,
3636 primary_key : bool = False ,
3737 min : dt .date | None = None ,
3838 min_exclusive : dt .date | None = None ,
@@ -46,6 +46,9 @@ def __init__(
4646 """
4747 Args:
4848 nullable: Whether this column may contain null values.
49+ Explicitly set `nullable=True` if you want your column to be nullable.
50+ In a future release, `nullable=False` will be the default if `nullable`
51+ is not specified.
4952 primary_key: Whether this column is part of the primary key of the schema.
5053 If ``True``, ``nullable`` is automatically set to ``False``.
5154 min: The minimum date for dates in this column (inclusive).
@@ -142,7 +145,7 @@ class Time(OrdinalMixin[dt.time], Column):
142145 def __init__ (
143146 self ,
144147 * ,
145- nullable : bool = True ,
148+ nullable : bool | None = None ,
146149 primary_key : bool = False ,
147150 min : dt .time | None = None ,
148151 min_exclusive : dt .time | None = None ,
@@ -156,6 +159,9 @@ def __init__(
156159 """
157160 Args:
158161 nullable: Whether this column may contain null values.
162+ Explicitly set `nullable=True` if you want your column to be nullable.
163+ In a future release, `nullable=False` will be the default if `nullable`
164+ is not specified.
159165 primary_key: Whether this column is part of the primary key of the schema.
160166 If ``True``, ``nullable`` is automatically set to ``False``.
161167 min: The minimum time for times in this column (inclusive).
@@ -258,7 +264,7 @@ class Datetime(OrdinalMixin[dt.datetime], Column):
258264 def __init__ (
259265 self ,
260266 * ,
261- nullable : bool = True ,
267+ nullable : bool | None = None ,
262268 primary_key : bool = False ,
263269 min : dt .datetime | None = None ,
264270 min_exclusive : dt .datetime | None = None ,
@@ -272,6 +278,9 @@ def __init__(
272278 """
273279 Args:
274280 nullable: Whether this column may contain null values.
281+ Explicitly set `nullable=True` if you want your column to be nullable.
282+ In a future release, `nullable=False` will be the default if `nullable`
283+ is not specified.
275284 primary_key: Whether this column is part of the primary key of the schema.
276285 If ``True``, ``nullable`` is automatically set to ``False``.
277286 min: The minimum datetime for datetimes in this column (inclusive).
@@ -364,7 +373,7 @@ class Duration(OrdinalMixin[dt.timedelta], Column):
364373 def __init__ (
365374 self ,
366375 * ,
367- nullable : bool = True ,
376+ nullable : bool | None = None ,
368377 primary_key : bool = False ,
369378 min : dt .timedelta | None = None ,
370379 min_exclusive : dt .timedelta | None = None ,
@@ -378,6 +387,9 @@ def __init__(
378387 """
379388 Args:
380389 nullable: Whether this column may contain null values.
390+ Explicitly set `nullable=True` if you want your column to be nullable.
391+ In a future release, `nullable=False` will be the default if `nullable`
392+ is not specified.
381393 primary_key: Whether this column is part of the primary key of the schema.
382394 If ``True``, ``nullable`` is automatically set to ``False``.
383395 min: The minimum duration for durations in this column (inclusive).
0 commit comments