cs-models 0.0.769__py3-none-any.whl → 0.0.771__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of cs-models might be problematic. Click here for more details.
- cs_models/resources/CoverPage13F/schemas.py +5 -4
- cs_models/resources/InfoTable13F/models.py +7 -3
- cs_models/resources/InfoTable13F/schemas.py +7 -6
- cs_models/resources/OtherManager13F/models.py +7 -3
- cs_models/resources/OtherManager13F/schemas.py +2 -1
- cs_models/resources/OtherManager213F/schemas.py +2 -1
- cs_models/resources/Signature13F/schemas.py +2 -1
- cs_models/resources/Submission13F/schemas.py +3 -2
- cs_models/utils/utils.py +27 -1
- {cs_models-0.0.769.dist-info → cs_models-0.0.771.dist-info}/METADATA +1 -1
- {cs_models-0.0.769.dist-info → cs_models-0.0.771.dist-info}/RECORD +13 -13
- {cs_models-0.0.769.dist-info → cs_models-0.0.771.dist-info}/WHEEL +0 -0
- {cs_models-0.0.769.dist-info → cs_models-0.0.771.dist-info}/top_level.txt +0 -0
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FDate, Safe13FInteger
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Coverpage13FSchema(Schema):
|
|
5
6
|
ACCESSION_NUMBER = fields.String(required=True)
|
|
6
|
-
REPORTCALENDARORQUARTER =
|
|
7
|
+
REPORTCALENDARORQUARTER = Safe13FDate(required=True)
|
|
7
8
|
ISAMENDMENT = fields.String()
|
|
8
|
-
AMENDMENTNO =
|
|
9
|
+
AMENDMENTNO = Safe13FInteger(allow_none=True)
|
|
9
10
|
AMENDMENTTYPE = fields.String()
|
|
10
11
|
CONFDENIEDEXPIRED = fields.String()
|
|
11
|
-
DATEDENIEDEXPIRED =
|
|
12
|
-
DATEREPORTED =
|
|
12
|
+
DATEDENIEDEXPIRED = Safe13FDate(allow_none=True)
|
|
13
|
+
DATEREPORTED = Safe13FDate(allow_none=True)
|
|
13
14
|
REASONFORNONCONFIDENTIALITY = fields.String()
|
|
14
15
|
FILINGMANAGER_NAME = fields.String(required=True)
|
|
15
16
|
FILINGMANAGER_STREET1 = fields.String()
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
from sqlalchemy import Column, Integer, String,
|
|
1
|
+
from sqlalchemy import Column, Integer, String, PrimaryKeyConstraint
|
|
2
2
|
from ...database import Base
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
class Infotable13FModel(Base):
|
|
6
6
|
__tablename__ = '13finfotable'
|
|
7
7
|
|
|
8
|
-
ACCESSION_NUMBER = Column(String(25)
|
|
9
|
-
INFOTABLE_SK = Column(Integer
|
|
8
|
+
ACCESSION_NUMBER = Column(String(25))
|
|
9
|
+
INFOTABLE_SK = Column(Integer)
|
|
10
10
|
NAMEOFISSUER = Column(String(200), nullable=False)
|
|
11
11
|
TITLEOFCLASS = Column(String(150), nullable=False)
|
|
12
12
|
CUSIP = Column(String(9), nullable=False)
|
|
@@ -20,3 +20,7 @@ class Infotable13FModel(Base):
|
|
|
20
20
|
VOTING_AUTH_SOLE = Column(Integer, nullable=False)
|
|
21
21
|
VOTING_AUTH_SHARED = Column(Integer, nullable=False)
|
|
22
22
|
VOTING_AUTH_NONE = Column(Integer, nullable=False)
|
|
23
|
+
|
|
24
|
+
__table_args__ = (
|
|
25
|
+
PrimaryKeyConstraint('ACCESSION_NUMBER', 'INFOTABLE_SK'),
|
|
26
|
+
)
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FInteger
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Infotable13FSchema(Schema):
|
|
5
6
|
ACCESSION_NUMBER = fields.String(required=True)
|
|
6
|
-
INFOTABLE_SK =
|
|
7
|
+
INFOTABLE_SK = Safe13FInteger(required=True)
|
|
7
8
|
NAMEOFISSUER = fields.String(required=True)
|
|
8
9
|
TITLEOFCLASS = fields.String(required=True)
|
|
9
10
|
CUSIP = fields.String(required=True)
|
|
10
11
|
FIGI = fields.String()
|
|
11
|
-
VALUE =
|
|
12
|
-
SSHPRNAMT =
|
|
12
|
+
VALUE = Safe13FInteger(required=True)
|
|
13
|
+
SSHPRNAMT = Safe13FInteger(required=True)
|
|
13
14
|
SSHPRNAMTTYPE = fields.String(required=True)
|
|
14
15
|
PUTCALL = fields.String()
|
|
15
16
|
INVESTMENTDISCRETION = fields.String(required=True)
|
|
16
17
|
OTHERMANAGER = fields.String()
|
|
17
|
-
VOTING_AUTH_SOLE =
|
|
18
|
-
VOTING_AUTH_SHARED =
|
|
19
|
-
VOTING_AUTH_NONE =
|
|
18
|
+
VOTING_AUTH_SOLE = Safe13FInteger(required=True)
|
|
19
|
+
VOTING_AUTH_SHARED = Safe13FInteger(required=True)
|
|
20
|
+
VOTING_AUTH_NONE = Safe13FInteger(required=True)
|
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
from sqlalchemy import Column, Integer, String,
|
|
1
|
+
from sqlalchemy import Column, Integer, String, PrimaryKeyConstraint
|
|
2
2
|
from ...database import Base
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
class Othermanager13FModel(Base):
|
|
6
6
|
__tablename__ = '13fothermanager'
|
|
7
7
|
|
|
8
|
-
ACCESSION_NUMBER = Column(String(25)
|
|
9
|
-
OTHERMANAGER_SK = Column(Integer
|
|
8
|
+
ACCESSION_NUMBER = Column(String(25))
|
|
9
|
+
OTHERMANAGER_SK = Column(Integer)
|
|
10
10
|
CIK = Column(String(10))
|
|
11
11
|
FORM13FFILENUMBER = Column(String(17))
|
|
12
12
|
CRDNUMBER = Column(String(9))
|
|
13
13
|
SECFILENUMBER = Column(String(17))
|
|
14
14
|
NAME = Column(String(150), nullable=False)
|
|
15
|
+
|
|
16
|
+
__table_args__ = (
|
|
17
|
+
PrimaryKeyConstraint('ACCESSION_NUMBER', 'OTHERMANAGER_SK'),
|
|
18
|
+
)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FInteger
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Othermanager13FSchema(Schema):
|
|
5
6
|
ACCESSION_NUMBER = fields.String(required=True)
|
|
6
|
-
OTHERMANAGER_SK =
|
|
7
|
+
OTHERMANAGER_SK = Safe13FInteger(required=True)
|
|
7
8
|
CIK = fields.String()
|
|
8
9
|
FORM13FFILENUMBER = fields.String()
|
|
9
10
|
CRDNUMBER = fields.String()
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FInteger
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Othermanager213FSchema(Schema):
|
|
5
6
|
ACCESSION_NUMBER = fields.String(required=True)
|
|
6
|
-
SEQUENCENUMBER =
|
|
7
|
+
SEQUENCENUMBER = Safe13FInteger(required=True)
|
|
7
8
|
CIK = fields.String()
|
|
8
9
|
FORM13FFILENUMBER = fields.String()
|
|
9
10
|
CRDNUMBER = fields.String()
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FDate
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Signature13FSchema(Schema):
|
|
@@ -9,4 +10,4 @@ class Signature13FSchema(Schema):
|
|
|
9
10
|
SIGNATURE = fields.String(required=True)
|
|
10
11
|
CITY = fields.String(required=True)
|
|
11
12
|
STATEORCOUNTRY = fields.String(required=True)
|
|
12
|
-
SIGNATUREDATE =
|
|
13
|
+
SIGNATUREDATE = Safe13FDate(required=True)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from marshmallow import Schema, fields
|
|
2
|
+
from ...utils.utils import Safe13FDate
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class Submission13FSchema(Schema):
|
|
5
6
|
ACCESSION_NUMBER = fields.String(required=True)
|
|
6
|
-
FILING_DATE =
|
|
7
|
+
FILING_DATE = Safe13FDate(required=True)
|
|
7
8
|
SUBMISSIONTYPE = fields.String(required=True)
|
|
8
9
|
CIK = fields.String(required=True)
|
|
9
|
-
PERIODOFREPORT =
|
|
10
|
+
PERIODOFREPORT = Safe13FDate(required=True)
|
cs_models/utils/utils.py
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import json
|
|
2
2
|
import pytz
|
|
3
3
|
from datetime import datetime
|
|
4
|
-
from marshmallow import ValidationError
|
|
4
|
+
from marshmallow import ValidationError, fields
|
|
5
5
|
from sqlalchemy.sql.expression import ClauseElement
|
|
6
6
|
|
|
7
7
|
|
|
@@ -144,6 +144,32 @@ def pre_load_date_fields(in_data, date_fields, date_format='%m-%d-%Y'):
|
|
|
144
144
|
return in_data
|
|
145
145
|
|
|
146
146
|
|
|
147
|
+
class Safe13FDate(fields.Date):
|
|
148
|
+
def __init__(self, format="%d-%b-%Y", **kwargs):
|
|
149
|
+
super().__init__(format=format, **kwargs)
|
|
150
|
+
|
|
151
|
+
def _deserialize(self, value, attr, data, **kwargs):
|
|
152
|
+
if value in (None, ""):
|
|
153
|
+
return None
|
|
154
|
+
try:
|
|
155
|
+
return datetime.strptime(value, self.format).date()
|
|
156
|
+
except (ValueError, TypeError):
|
|
157
|
+
raise ValidationError("Not a valid date.")
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
class Safe13FInteger(fields.Integer):
|
|
161
|
+
def __init__(self, **kwargs):
|
|
162
|
+
super().__init__(format=format, **kwargs)
|
|
163
|
+
|
|
164
|
+
def _deserialize(self, value, attr, data, **kwargs):
|
|
165
|
+
if value in (None, ""):
|
|
166
|
+
return None
|
|
167
|
+
try:
|
|
168
|
+
return int(value)
|
|
169
|
+
except (ValueError, TypeError):
|
|
170
|
+
raise ValidationError("Not a valid integer.")
|
|
171
|
+
|
|
172
|
+
|
|
147
173
|
if __name__ == '__main__':
|
|
148
174
|
from doctest import testmod
|
|
149
175
|
testmod()
|
|
@@ -222,7 +222,7 @@ cs_models/resources/Counsels/models.py,sha256=p8u93IonSVmPb5k0BlRv6HVW_PS9CY5xwF
|
|
|
222
222
|
cs_models/resources/Counsels/schemas.py,sha256=zO7ItcXvtDJgJFmtYCZm4wHFBPPhmj76TUc6VRwK0qI,423
|
|
223
223
|
cs_models/resources/CoverPage13F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
224
224
|
cs_models/resources/CoverPage13F/models.py,sha256=2e9q0RMgtTXu0QonnOvLA5rJJ5xXN8RWXQjJi-AxD2w,1127
|
|
225
|
-
cs_models/resources/CoverPage13F/schemas.py,sha256=
|
|
225
|
+
cs_models/resources/CoverPage13F/schemas.py,sha256=0rXY2BKDHNh1rSMBTE63g9WEKEJ_QVh4J5DSxCem5PU,1089
|
|
226
226
|
cs_models/resources/CrawlerLog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
227
227
|
cs_models/resources/CrawlerLog/models.py,sha256=neo5PRROx9GxvjQNnukwKvVMGTqnXrXhN_jG_HWwFSE,985
|
|
228
228
|
cs_models/resources/CrawlerLog/schemas.py,sha256=2hqlZuM787N2ah8tb-CTGCAGBFgjsDafKApVvPYvxM8,1554
|
|
@@ -403,8 +403,8 @@ cs_models/resources/IPOUnderwriter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
|
|
|
403
403
|
cs_models/resources/IPOUnderwriter/models.py,sha256=1SK9xEMx_CyM49Uf6mzKdL-dx8P2KVTRb0X9bVkQpTk,805
|
|
404
404
|
cs_models/resources/IPOUnderwriter/schemas.py,sha256=sSBN9Pf7YQIrGviaFyNMau4BOvGNpgkICg4EnbziQv8,401
|
|
405
405
|
cs_models/resources/InfoTable13F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
406
|
-
cs_models/resources/InfoTable13F/models.py,sha256=
|
|
407
|
-
cs_models/resources/InfoTable13F/schemas.py,sha256=
|
|
406
|
+
cs_models/resources/InfoTable13F/models.py,sha256=pRSl-EVjWy9sCf-9bjp4cx5nn76a_ygzcRoz2orjXP0,974
|
|
407
|
+
cs_models/resources/InfoTable13F/schemas.py,sha256=auQ1-NfXkDB_kMrv5poKkR57mEhaZIuu1YXsN_n1P2Q,801
|
|
408
408
|
cs_models/resources/InsightsQueue/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
409
409
|
cs_models/resources/InsightsQueue/models.py,sha256=s9yrfdbC_Iw9NGa9rCpgz2EdDqRDJVmw_LIXkwIoD84,976
|
|
410
410
|
cs_models/resources/InsightsQueue/schemas.py,sha256=eU-uzGW1L2lwtkAwuAUKxSnCkOY4DiABpWYfofu0M1g,653
|
|
@@ -744,11 +744,11 @@ cs_models/resources/OrangeBookProductSubsidiary/__init__.py,sha256=47DEQpj8HBSa-
|
|
|
744
744
|
cs_models/resources/OrangeBookProductSubsidiary/models.py,sha256=-vlsqjhqoQ_-DvWwA5aQ_nYIuvQPuo4CActyK2_Ybw8,808
|
|
745
745
|
cs_models/resources/OrangeBookProductSubsidiary/schemas.py,sha256=w6P8rDDZEzUoFyJGibhwqQT7HvYvqlRa_-7epF7AwGY,380
|
|
746
746
|
cs_models/resources/OtherManager13F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
747
|
-
cs_models/resources/OtherManager13F/models.py,sha256=
|
|
748
|
-
cs_models/resources/OtherManager13F/schemas.py,sha256=
|
|
747
|
+
cs_models/resources/OtherManager13F/models.py,sha256=tVW8rcK1UNuc2e8PwDmHxzDvob9lHDhl3YFtn0EP73c,544
|
|
748
|
+
cs_models/resources/OtherManager13F/schemas.py,sha256=uFfhZ_vlntCeZgTy948nlayDus5LZqPuHEtgSqcwH7Q,398
|
|
749
749
|
cs_models/resources/OtherManager213F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
750
750
|
cs_models/resources/OtherManager213F/models.py,sha256=C5W50ZsZq3ufW2bw3Iq26dDSdhdMsbgfE0V9-I3z_X0,464
|
|
751
|
-
cs_models/resources/OtherManager213F/schemas.py,sha256=
|
|
751
|
+
cs_models/resources/OtherManager213F/schemas.py,sha256=NQcdc_oENviW274zQ_buQ_VDEwEiwJnXcnqXYjQIqL0,398
|
|
752
752
|
cs_models/resources/PTAB2Decision/__init__.py,sha256=ypyxd9cWlb0Ikt_vCZUxym_ZEF-rqxP5b7RKmF-RgWs,4988
|
|
753
753
|
cs_models/resources/PTAB2Decision/models.py,sha256=JNc8Ub7B0c_gQW-iYho4o64Q77hetu9yr2jBDaLy2xQ,1909
|
|
754
754
|
cs_models/resources/PTAB2Decision/schemas.py,sha256=UNNE2PuK2l-onqHkx0pN8AlY2sSWcueWxVunz3wr4sg,5093
|
|
@@ -934,7 +934,7 @@ cs_models/resources/SearchLink/models.py,sha256=l1tPCSKHK7Wq1OUWFH72NYncEt6Q3bR0
|
|
|
934
934
|
cs_models/resources/SearchLink/schemas.py,sha256=A8Y6LRgw7MHs9bihf0gZPfqp6KDm0Z8k6PJSL9WVxsc,448
|
|
935
935
|
cs_models/resources/Signature13F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
936
936
|
cs_models/resources/Signature13F/models.py,sha256=E-n7Fz1Lz7XOeD6H6Ca0TIe6ixxRXao0hWGGZJkr4m8,538
|
|
937
|
-
cs_models/resources/Signature13F/schemas.py,sha256=
|
|
937
|
+
cs_models/resources/Signature13F/schemas.py,sha256=5I0yQ5amGPQg2yoklmtJJ4HiQe14kNpw7OCUXFmrm1o,457
|
|
938
938
|
cs_models/resources/SmartGrid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
939
939
|
cs_models/resources/SmartGrid/models.py,sha256=9weIkYbh-Y-My5vjjUP-N-ziSNV-AWww1UUltK8EIy0,1011
|
|
940
940
|
cs_models/resources/SmartGrid/schemas.py,sha256=v5iG5dsEDnRp8P3UKba7uN39ZD_hqPvfLWyX1ltKKjM,665
|
|
@@ -946,7 +946,7 @@ cs_models/resources/Stream/models.py,sha256=wXb7yOjW82ZqmLhRcDhjLPk6_WJ5FGmvKpOc
|
|
|
946
946
|
cs_models/resources/Stream/schemas.py,sha256=ZFsdEKINFGaSBUAcQQvilq5MKpYGliZseguQoc_opxk,3111
|
|
947
947
|
cs_models/resources/Submission13F/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
948
948
|
cs_models/resources/Submission13F/models.py,sha256=T5Eky-8itEcZRY18Gbx3X0XLGVVZ03aVUyLtUngEf9U,411
|
|
949
|
-
cs_models/resources/Submission13F/schemas.py,sha256=
|
|
949
|
+
cs_models/resources/Submission13F/schemas.py,sha256=0OKI8QdO2BGj_rNBtpQovzFEQ4OkF7Zu69XmYejJcg4,349
|
|
950
950
|
cs_models/resources/Subsidiary/__init__.py,sha256=VmclFNMwdFXNcE9RKe-Dvl_V-OmomBK8YxeyegHMbIY,3357
|
|
951
951
|
cs_models/resources/Subsidiary/models.py,sha256=C_DcgEhel41dNcq3YX4SI9uRmGt_MZZi10SNDpPdQmc,695
|
|
952
952
|
cs_models/resources/Subsidiary/schemas.py,sha256=DcAyO5t4KWD7fR3_D_zrc5AORkMgUbGs_Z_Q-pLWwLM,1288
|
|
@@ -1265,9 +1265,9 @@ cs_models/resources_mongo/DocumentTree/__init__.py,sha256=0dRx5h5Y2cKgNH0F0FyfoY
|
|
|
1265
1265
|
cs_models/resources_mongo/DocumentTree/schemas.py,sha256=gzKFDivnNKmUuLetsP6eBgrtD_JjFwIDSmBT9xtHRX4,416
|
|
1266
1266
|
cs_models/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1267
1267
|
cs_models/utils/alchemy.py,sha256=fhINGFn41owJ2DLXQKXAAtLqeZ1BRzD_qU0wPK_bsGQ,1598
|
|
1268
|
-
cs_models/utils/utils.py,sha256=
|
|
1268
|
+
cs_models/utils/utils.py,sha256=BzCDk3u1np7DoJQqCZIJN4f80JNHvJoWO4qEFgolN-8,4474
|
|
1269
1269
|
cs_models/utils/profiling/__init__.py,sha256=N-73vb0M92C975fxgXyBCBjCPELl8Oh21ZY_-tzDnns,569
|
|
1270
|
-
cs_models-0.0.
|
|
1271
|
-
cs_models-0.0.
|
|
1272
|
-
cs_models-0.0.
|
|
1273
|
-
cs_models-0.0.
|
|
1270
|
+
cs_models-0.0.771.dist-info/METADATA,sha256=fC8-t-ZFGcfyBnNuK6SpyGeD-R06fxX0nLLS0MzNsyg,751
|
|
1271
|
+
cs_models-0.0.771.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
1272
|
+
cs_models-0.0.771.dist-info/top_level.txt,sha256=M7CA8Nh5t0vRManQ9gHfphhO16uhMqIbfaxr1jPDg18,10
|
|
1273
|
+
cs_models-0.0.771.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|