Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DM-35150: Implement GitHub Checks for notebook execution #41

Merged
merged 9 commits into from
Jul 4, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
Change log
==========

Unreleased
----------
0.5.0 (2022-07-04)
------------------

Times Square now implements two GitHub check runs for pull requests on notebook repositories:

- The "YAML config" check validates the structure of YAML configuration files, specifically the ``times-square.yaml`` repository settings as well as the YAML sidecar files that describe each notebook.
- The "Notebook execution" check actually runs notebooks (given their default parameters) with Noteburst, and ensures that they return without error.

Times Square now implements GitHub Checks for pull requests for notebook repositories.
Initially, Times Square validates the structure of YAML configuration files, specifically the ``times-square.yaml`` repository settings as well as the YAML sidecar files that describe each notebook.
Together, these features will help contributors to Times Square notebook repositories ensure that their contributions work before they merge pull requests.

0.4.0 (2022-05-14)
------------------
Expand Down
138 changes: 73 additions & 65 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,20 @@ anyio==3.6.1 \
# via
# -c requirements/main.txt
# httpcore
# watchgod
# watchfiles
asgi-lifespan==1.0.1 \
--hash=sha256:9a33e7da2073c4764bc79bd6136501d6c42f60e3d2168ba71235e84122eadb7f \
--hash=sha256:9ea969dc5eb5cf08e52c08dce6f61afcadd28112e72d81c972b1d8eb8691ab53
# via -r requirements/dev.in
asgiref==3.5.2 \
--hash=sha256:1d2880b792ae8757289136f1db2b7b99100ce959b2aa57fd69dab783d05afac4 \
--hash=sha256:4a29362a6acebe09bf1d6640db38c1dc3d9217c68e6f9f6204d72667fc19a424
# via
# -c requirements/main.txt
# uvicorn
attrs==21.4.0 \
--hash=sha256:2d27e3784d7a565d36ab851fe94887c5eccd6a463168875832a1be79c82828b4 \
--hash=sha256:626ba8234211db98e869df76230a137c4c40a12d72445c45d5f5b716f076e2fd
# via
# -c requirements/main.txt
# pytest
certifi==2022.5.18.1 \
--hash=sha256:9c5705e395cd70084351dd8ad5c41e65655e08ce46f2ec9cf6c2c08390f71eb7 \
--hash=sha256:f1d53542ee8cbedbe2118b5686372fb33c297fcd6379b050cca0ef13a597382a
certifi==2022.6.15 \
--hash=sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d \
--hash=sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412
# via
# -c requirements/main.txt
# httpcore
Expand Down Expand Up @@ -264,9 +258,9 @@ mypy-extensions==0.4.3 \
--hash=sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d \
--hash=sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8
# via mypy
nodeenv==1.6.0 \
--hash=sha256:3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b \
--hash=sha256:621e6b7076565ddcacd2db0294c0381e01fd28945ab36bcf00f41c5daf63bef7
nodeenv==1.7.0 \
--hash=sha256:27083a7b96a25f2f5e1d8cb4b6317ee8aeda3bdd121394e5ac54e498028a042e \
--hash=sha256:e0e7f7dfb85fc5394c6fe1e8fa98131a2473e04311a45afb6508f7cf1836fa2b
# via pre-commit
packaging==21.3 \
--hash=sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb \
Expand Down Expand Up @@ -381,49 +375,49 @@ sniffio==1.2.0 \
# asgi-lifespan
# httpcore
# httpx
sqlalchemy[asyncio,mypy]==1.4.37 \
--hash=sha256:06ec11a5e6a4b6428167d3ce33b5bd455c020c867dabe3e6951fa98836e0741d \
--hash=sha256:0e7fd52e48e933771f177c2a1a484b06ea03774fc7741651ebdf19985a34037c \
--hash=sha256:139c50b9384e6d32a74fc4dcd0e9717f343ed38f95dbacf832c782c68e3862f3 \
--hash=sha256:17417327b87a0f703c9a20180f75e953315207d048159aff51822052f3e33e69 \
--hash=sha256:29a742c29fea12259f1d2a9ee2eb7fe4694a85d904a4ac66d15e01177b17ad7f \
--hash=sha256:2aac2a685feb9882d09f457f4e5586c885d578af4e97a2b759e91e8c457cbce5 \
--hash=sha256:3197441772dc3b1c6419f13304402f2418a18d7fe78000aa5a026e7100836739 \
--hash=sha256:3688f92c62db6c5df268e2264891078f17ecb91e3141b400f2e28d0f75796dea \
--hash=sha256:3862a069a24f354145e01a76c7c720c263d62405fe5bed038c46a7ce900f5dd6 \
--hash=sha256:4a17c1a1152ca4c29d992714aa9df3054da3af1598e02134f2e7314a32ef69d8 \
--hash=sha256:4c1d9fb3931e27d59166bb5c4dcc911400fee51082cfba66ceb19ac954ade068 \
--hash=sha256:4e8706919829d455a9fa687c6bbd1b048e36fec3919a59f2d366247c2bfdbd9c \
--hash=sha256:50c8eaf44c3fed5ba6758d375de25f163e46137c39fda3a72b9ee1d1bb327dfc \
--hash=sha256:5e4e517ce72fad35cce364a01aff165f524449e9c959f1837dc71088afa2824c \
--hash=sha256:6629c79967a6c92e33fad811599adf9bc5cee6e504a1027bbf9cc1b6fb2d276d \
--hash=sha256:78363f400fbda80f866e8e91d37d36fe6313ff847ded08674e272873c1377ea5 \
--hash=sha256:7a44683cf97744a405103ef8fdd31199e9d7fc41b4a67e9044523b29541662b0 \
--hash=sha256:7e579d6e281cc937bdb59917017ab98e618502067e04efb1d24ac168925e1d2a \
--hash=sha256:7ee34c85cbda7779d66abac392c306ec78c13f5c73a1f01b8b767916d4895d23 \
--hash=sha256:8b38e088659b30c2ca0af63e5d139fad1779a7925d75075a08717a21c406c0f6 \
--hash=sha256:9785d6f962d2c925aeb06a7539ac9d16608877da6aeaaf341984b3693ae80a02 \
--hash=sha256:a91d0668cada27352432f15b92ac3d43e34d8f30973fa8b86f5e9fddee928f3b \
--hash=sha256:a940c551cfbd2e1e646ceea2777944425f5c3edff914bc808fe734d9e66f8d71 \
--hash=sha256:aaa0e90e527066409c2ea5676282cf4afb4a40bb9dce0f56c8ec2768bff22a6e \
--hash=sha256:b4c92823889cf9846b972ee6db30c0e3a92c0ddfc76c6060a6cda467aa5fb694 \
--hash=sha256:b55932fd0e81b43f4aff397c8ad0b3c038f540af37930423ab8f47a20b117e4c \
--hash=sha256:c37885f83b59e248bebe2b35beabfbea398cb40960cdc6d3a76eac863d4e1938 \
--hash=sha256:caca6acf3f90893d7712ae2c6616ecfeac3581b4cc677c928a330ce6fbad4319 \
--hash=sha256:cffc67cdd07f0e109a1fc83e333972ae423ea5ad414585b63275b66b870ea62b \
--hash=sha256:d4c3b009c9220ae6e33f17b45f43fb46b9a1d281d76118405af13e26376f2e11 \
--hash=sha256:d58f2d9d1a4b1459e8956a0153a4119da80f54ee5a9ea623cd568e99459a3ef1 \
--hash=sha256:d6927c9e3965b194acf75c8e0fb270b4d54512db171f65faae15ef418721996e \
--hash=sha256:d9050b0c4a7f5538650c74aaba5c80cd64450e41c206f43ea6d194ae6d060ff9 \
--hash=sha256:eec39a17bab3f69c44c9df4e0ed87c7306f2d2bf1eca3070af644927ec4199fa \
--hash=sha256:f9940528bf9c4df9e3c3872d23078b6b2da6431c19565637c09f1b88a427a684 \
--hash=sha256:ffe487570f47536b96eff5ef2b84034a8ba4e19aab5ab7647e677d94a119ea55
sqlalchemy[asyncio,mypy]==1.4.39 \
--hash=sha256:047ef5ccd8860f6147b8ac6c45a4bc573d4e030267b45d9a1c47b55962ff0e6f \
--hash=sha256:05a05771617bfa723ba4cef58d5b25ac028b0d68f28f403edebed5b8243b3a87 \
--hash=sha256:0ec54460475f0c42512895c99c63d90dd2d9cbd0c13491a184182e85074b04c5 \
--hash=sha256:107df519eb33d7f8e0d0d052128af2f25066c1a0f6b648fd1a9612ab66800b86 \
--hash=sha256:14ea8ff2d33c48f8e6c3c472111d893b9e356284d1482102da9678195e5a8eac \
--hash=sha256:1745987ada1890b0e7978abdb22c133eca2e89ab98dc17939042240063e1ef21 \
--hash=sha256:1962dfee37b7fb17d3d4889bf84c4ea08b1c36707194c578f61e6e06d12ab90f \
--hash=sha256:20bf65bcce65c538e68d5df27402b39341fabeecf01de7e0e72b9d9836c13c52 \
--hash=sha256:26146c59576dfe9c546c9f45397a7c7c4a90c25679492ff610a7500afc7d03a6 \
--hash=sha256:365b75938049ae31cf2176efd3d598213ddb9eb883fbc82086efa019a5f649df \
--hash=sha256:4770eb3ba69ec5fa41c681a75e53e0e342ac24c1f9220d883458b5596888e43a \
--hash=sha256:50e7569637e2e02253295527ff34666706dbb2bc5f6c61a5a7f44b9610c9bb09 \
--hash=sha256:5c2d19bfb33262bf987ef0062345efd0f54c4189c2d95159c72995457bf4a359 \
--hash=sha256:621f050e72cc7dfd9ad4594ff0abeaad954d6e4a2891545e8f1a53dcdfbef445 \
--hash=sha256:6d81de54e45f1d756785405c9d06cd17918c2eecc2d4262dc2d276ca612c2f61 \
--hash=sha256:6f95706da857e6e79b54c33c1214f5467aab10600aa508ddd1239d5df271986e \
--hash=sha256:752ef2e8dbaa3c5d419f322e3632f00ba6b1c3230f65bc97c2ff5c5c6c08f441 \
--hash=sha256:7b2785dd2a0c044a36836857ac27310dc7a99166253551ee8f5408930958cc60 \
--hash=sha256:7f13644b15665f7322f9e0635129e0ef2098409484df67fcd225d954c5861559 \
--hash=sha256:8194896038753b46b08a0b0ae89a5d80c897fb601dd51e243ed5720f1f155d27 \
--hash=sha256:864d4f89f054819cb95e93100b7d251e4d114d1c60bc7576db07b046432af280 \
--hash=sha256:8b773c9974c272aae0fa7e95b576d98d17ee65f69d8644f9b6ffc90ee96b4d19 \
--hash=sha256:8f901be74f00a13bf375241a778455ee864c2c21c79154aad196b7a994e1144f \
--hash=sha256:91d2b89bb0c302f89e753bea008936acfa4e18c156fb264fe41eb6bbb2bbcdeb \
--hash=sha256:b0538b66f959771c56ff996d828081908a6a52a47c5548faed4a3d0a027a5368 \
--hash=sha256:b30e70f1594ee3c8902978fd71900d7312453922827c4ce0012fa6a8278d6df4 \
--hash=sha256:b71be98ef6e180217d1797185c75507060a57ab9cd835653e0112db16a710f0d \
--hash=sha256:c6d00cb9da8d0cbfaba18cad046e94b06de6d4d0ffd9d4095a3ad1838af22528 \
--hash=sha256:d1f665e50592caf4cad3caed3ed86f93227bffe0680218ccbb293bd5a6734ca8 \
--hash=sha256:e6e2c8581c6620136b9530137954a8376efffd57fe19802182c7561b0ab48b48 \
--hash=sha256:e7a7667d928ba6ee361a3176e1bef6847c1062b37726b33505cc84136f657e0d \
--hash=sha256:ec3985c883d6d217cf2013028afc6e3c82b8907192ba6195d6e49885bfc4b19d \
--hash=sha256:ede13a472caa85a13abe5095e71676af985d7690eaa8461aeac5c74f6600b6c0 \
--hash=sha256:f24d4d6ec301688c59b0c4bb1c1c94c5d0bff4ecad33bb8f5d9efdfb8d8bc925 \
--hash=sha256:f2a42acc01568b9701665e85562bbff78ec3e21981c7d51d56717c22e5d3d58b \
--hash=sha256:fbc076f79d830ae4c9d49926180a1140b49fa675d0f0d555b44c9a15b29f4c80
# via
# -c requirements/main.txt
# -r requirements/dev.in
sqlalchemy2-stubs==0.0.2a23 \
--hash=sha256:6011d2219365d4e51f3e9d83ffeb5b904964ef1d143dc1298d8a70ce8641014d \
--hash=sha256:a13d94e23b5b0da8ee21986ef8890788a1f2eb26c2a9f39424cc933e4e7e87ff
sqlalchemy2-stubs==0.0.2a24 \
--hash=sha256:e15c45302eafe196ed516f979ef017135fd619d2c62d02de9a5c5f2e59a600c4 \
--hash=sha256:f2399251d3d8f00a88659d711a449c855a0d4e977c7a9134e414f1459b9acc11
# via sqlalchemy
toml==0.10.2 \
--hash=sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b \
Expand All @@ -437,9 +431,9 @@ tomli==2.0.1 \
# coverage
# mypy
# pytest
types-pyyaml==6.0.8 \
--hash=sha256:56a7b0e8109602785f942a11ebfbd16e97d5d0e79f5fbb077ec4e6a0004837ff \
--hash=sha256:d9495d377bb4f9c5387ac278776403eb3b4bb376851025d913eea4c22b4c6438
types-pyyaml==6.0.9 \
--hash=sha256:33ae75c84b8f61fddf0c63e9c7e557db9db1694ad3c2ee8628ec5efebb5a5e9b \
--hash=sha256:b738e9ef120da0af8c235ba49d3b72510f56ef9bcc308fc8e7357100ff122284
# via -r requirements/dev.in
typing-extensions==4.2.0 \
--hash=sha256:6657594ee297170d19f67d55c05852a874e7eb634f4f753dbd667855e07c1708 \
Expand All @@ -448,9 +442,9 @@ typing-extensions==4.2.0 \
# -c requirements/main.txt
# mypy
# sqlalchemy2-stubs
uvicorn[standard]==0.17.6 \
--hash=sha256:19e2a0e96c9ac5581c01eb1a79a7d2f72bb479691acd2b8921fce48ed5b961a6 \
--hash=sha256:5180f9d059611747d841a4a4c4ab675edf54c8489e97f96d0583ee90ac3bfc23
uvicorn[standard]==0.18.1 \
--hash=sha256:013c4ea0787cc2dc456ef4368e18c01982e6be57903e4d3183218e543eb889b7 \
--hash=sha256:35703e6518105cfe53f16a5a9435db3e2e227d0784f1fd8fbc1214b1fdc108df
# via
# -c requirements/main.txt
# -r requirements/dev.in
Expand All @@ -474,13 +468,23 @@ uvloop==0.16.0 \
# via
# -c requirements/main.txt
# uvicorn
virtualenv==20.14.1 \
--hash=sha256:e617f16e25b42eb4f6e74096b9c9e37713cf10bf30168fb4a739f3fa8f898a3a \
--hash=sha256:ef589a79795589aada0c1c5b319486797c03b67ac3984c48c669c0e4f50df3a5
virtualenv==20.15.0 \
--hash=sha256:4c44b1d77ca81f8368e2d7414f9b20c428ad16b343ac6d226206c5b84e2b4fcc \
--hash=sha256:804cce4de5b8a322f099897e308eecc8f6e2951f1a8e7e2b3598dff865f01336
# via pre-commit
watchgod==0.8.2 \
--hash=sha256:2f3e8137d98f493ff58af54ea00f4d1433a6afe2ed08ab331a657df468c6bfce \
--hash=sha256:cb11ff66657befba94d828e3b622d5fb76f22fbda1376f355f3e6e51e97d9450
watchfiles==0.15.0 \
--hash=sha256:56abed43e645d1f2d6def83e35999cc5758b051aff54ca1065cbfcaea15b3389 \
--hash=sha256:65ca99a94fcab29d00aa406526eb29cf198c0661854d59a315596064fed02141 \
--hash=sha256:67d4c66e46a564059df4aeedab78f09cba0b697bf36cc77566b0a7015dfb7f5d \
--hash=sha256:6e0e8829d32b05151e6009570449f44f891e05f518e495d25f960e0d0b2d0064 \
--hash=sha256:715733c2ac9da67b2790788657ff6f8b3797eb31565bfc592289b523ae907ca2 \
--hash=sha256:7b81c6e404b2aa62482a719eb778e4a16d01728302dce1f1512c1e5354a73fda \
--hash=sha256:82238d08d8a49f1a1ba254278cd4329a154f6100b028393059722ebeddd2ff3d \
--hash=sha256:955e8f840e1996a8a41be57de4c03af7b1515a685b7fb6abe222f859e413a907 \
--hash=sha256:cab62510f990d195986302aa6a48ed636d685b099927049120d520c96069fa49 \
--hash=sha256:d1f9de6b776b3aff17898a4cf5ac5a2d0a16212ea7aad2bbe0ef6aa3e79a96af \
--hash=sha256:d4f45acd1143db6d3ee77a4ff12d3239bc8083108133e6174e9dcce59c1f9902 \
--hash=sha256:f7f71012e096e11256fae3b37617a9777980f281e18deb2e789e85cd5b113935
# via
# -c requirements/main.txt
# uvicorn
Expand Down Expand Up @@ -536,3 +540,7 @@ websockets==10.3 \
# via
# -c requirements/main.txt
# uvicorn

# WARNING: The following packages were not pinned, but pip requires them to be
# pinned when the requirements file includes hashes. Consider using the --allow-unsafe flag.
# setuptools
Loading