v3.13.0
Version 3.13.0
Commits
- [c3b2735] client: parallel update_contributions, make_public/private
- [cec535f] testing on dev branch not needed
- [a78498c] Merge pull request #693 from materialsproject/dev
- [373c740] bump kernels and client
- [cb02183] client: add workshop-contribs valid URL
- [d3fa3bb] client: docstring notes
- [50025fb] testing workflow fix
- [1988a00] run test on dev too
- [244baa5] update github actions
- [b06fd97] portal: fix sort request
- [5b355e8] portal: cleaning up, some feature additions
- [6e6ba73] portal: bugfixes for landingpages
- [c2165cc] portal: rm intro dep
- [e68569d] portal: row hover on landingpages
- [ecc2d4b] portal: browse page works well now
- [f4c80ef] api: add endpoint for atlas search on projects
- [0f13d37] portal: more improvements to browse page
- [6d8d413] portal: row hover
- [828db63] portal: much simpler browse page (handsontable)
- [3cd7382] portal: moved browse message to s3 mpcontribs.org
- [e6eae0e] add mpcontribs.org index for s3
- [7bcad1a] portal: start browse revamp with simple table
- [34a6272] portal: remove images
- [a50046d] api: enable filter on attrs for tables
- [203874a] api: define all filters in root document
- [96e5de2] api: get_filter_params in get_specs
- [232015b] api: fix copies for editable installs
- [376096f] update dependencies
- [a45bed2] api: use core FILTERS definition
- [2cbb6ba] api: separate copies for dev subdirs
- [59d9598] client: remove print statement
- [f9c3031] replace _order_by/order with _sort
- [570ed43] client: better regex expansion for param loading
- [33cbfe9] api: support for all operators in swagger specs
- [2229f2a] api: always write swagger specs
- [0154a61] api: consisten filter definitions
- [b78ed04] api: make update stats resilient against OperationFailure
- [c9a6441] api: add stats to project
- [b2a8ab4] api: use dict func to init default
- [b8244a8] api: don't parse quantity if indicated as string in project.columns
- [d679246] client: improve init_columns docstring
- [a154302] default to NWORKERS 2
- [13477db] api: add rq dashboard
- [763451d] add open_catalyst_project NB
- [b205a16] review example notebooks
- [f4db465] bump client, rm implicit deps
- [d69280a] client: use pymongo dep
- [9f7c386] client: bson -> pybson
- [be17028] api: MAX_COLUMNS; protect against inconsistent columns update
- [c745896] bump python image 3.96.3
- [f64a3e6] api: lots of optimizations for speed/efficiency
- [4a3b010] bump client
- [fdc3cd1] client bugfix: make sure cids is list
- [32d7e67] api: use atomic update to save notebook
- [dfd5136] api: revert websocket management
- [60a3d3c] api: restart kernels
- [7a47248] portal: fix code padding
- [78fd975] api: only start dozer for NWORKERS=1
- [d869f09] api: enable dashboard/dozer for prod
- [79bed83] api: add Dozer
- [8f75fa0] nb build: also log error
- [e9e017c] build(deps): bump scipy from 1.7.0 to 1.7.1 in /mpcontribs-portal
- [0d9870d] more dependabot PRs
- [03d8ae4] dependabot PRs
- [4d683cb] api: add dashboard.cfg
- [735878d] api: flask dashboard not connecting in prod
- [44decc2] api: add flask monitoring dashboard
- [bec5fc9] api: only start rq if kernel gateway available
- [d21a14b] add MAX_REQUESTS/JITTER
- [f90af1c] api: try different supervisord.conf dir
- [7d6be7e] api: default job results response for cronjob
- [b11e392] api: dedicated schedulers/queues for each deployment
- [ac0ccff] api: minor logging improvements
- [3ad99c1] api: check number of available kernels
- [44f209d] reserve kernels for each deployment
- [98e8d17] api nb.build: fix client host, close session
- [0c5bea3] bump client
- [6cdbab4] remove supercronic
- [3fced4d] api: use supervisord and flask-rq for NB builds
- [91e2bf1] another citation update
- [4b902e4] update citation file
- [91458f2] add CITATION.cff
- [8174763] raise MAX_BYTES to 1200
- [e08685b] needs_build field
- [f70e50d] api nb.build: reload on demand, fixed timeout
- [f182adc] bump client
- [13d1a4a] enable ml/ls services in docker stack
- [45eec10] rm docker-compose
- [0657fe3] check timestamp on manual build
- [34019db] api: fix gentime check in notebook build
- [d1df686] bump python image 3.96.2
- [aacd74f] kernel-gateway: install ipywidgets
- [512e09d] api: no need to close client in kernel-gateway
- [6d47f1e] dependabot PRs
- [85e115c] nb build force flag
- [ae68b04] client with context
- [372399d] save carrier_transport NB
- [9594439] portal: don't need per_page for get_totals
- [0558baf] api: rebuild NBs by timestamp
- [b559458] api: remove nb pre_delete
- [8b121ec] bump client
- [5ec351d] minor README cleanup
- [7ef748c] client: minor codestyle fix
- [a5e21eb] client: rename per_request param
- [425d4ae] client: no query kwarg necessary
- [0bbdabc] client: use _get_future for deletion
- [d5080db] client: catch closed sessions
- [df34760] client: bugfix _split_query
- [6ce3783] client: cancel requests if not resp.ok; rm while futures
- [aed0a58] client: chunks -> grouper
- [f66bb11] client: use adapater_kwargs for session
- [fc2fd83] client: minor docstring update
- [3e1661f] client: catch/retry rate limited requests
- [c5d0c0f] portal: fix some npm deps
- [04dec57] portal: czmore from npm
- [0940fa2] more dependabot PRs
- [fce9941] portal: noopener noreferrer
- [ab639dd] dependabot PRs
- [4247632] Create codeql-analysis.yml
- [22745ac] client: use assert in test
- [c91bf46] client: use context in tests
- [4d185e5] save carrier_transport notebook
- [a5b13e3] client: codestyle fixes
- [8e9e855] client: return per_page not needed anymore
- [92815b9] client: only retrieve existing contribs if needed
- [79c8a6e] client: _split_query, context manager
- [651a90a] bump client
- [933189a] api: enable and deal with exact operator
- [5b6c4ee] bump client
- [f16c99e] client: save a couple of chars
- [d5c8f8f] client: sets/map format for get_all_ids
- [91f1159] portal: carrier_transport NB update
- [43572f5] portal: carrier_transport NB bugfix
- [6daff4e] portal: save 2dmatpedia NB
- [2e47fde] bump client
- [5543021] client: data_id_field for get_all_ids
- [3fe13de] bump client
- [1811e21] portal: minor detail page css fixes
- [bf0f89b] client: init_columns bug fixes
- [ecc9a78] portal: update transparent_conductors NB
- [dc30863] portal: email on landingpage; cc/subject for mailto
- [45abecb] portal: generate new download version if needed
- [319dcdc] portal: improve external links
- [ca28da3] portal: transparent_conductors NB
- [c31a77c] portal: minor intro text change
- [07bdf18] portal: small notification for empty project on browse
- [c538af3] portal: improve instructions for empty project
- [a638c25] dependabot PRs
- [93d3d01] dependabot PRs
- [a6f9edc] remove code tab, add quick start, use highlight.js
- [9f6afd3] add genesis_efrc_minipipes nb
- [95635b2] portal: warning for data n/a
- [2c3e724] portal: only show download button if data available
- [1ac07db] api: fix bugs innotebook build
- [7458a41] api: projects param and minor fixes for notebook build
- [33edcb6] api: fix approve/deny project
- [ff82dbf] fix URL to code examples
- [a496264] revert kaleido bump
- [5239382] dependabot PRs
- [489361c] bump supercronic
- [b873c79] dependabot supercronic
- [b4fcea0] bump client
- [85e237e] api: improve notebook build
- [1abebd6] client: catch Table display exception
- [d579cb2] remove orca
- [02bd286] bump mpcontribs-client
- [33a4cbb] api: fix notebook builds
- [0bf6397] api: use pid for msgid to avoid duplicate message error
- [76e3616] use kaleido instead of orca
- [eb7199a] pip in-tree-build
- [0d58215] bump python image 3.96.0
- [0db0d8c] client: only forward allowed attrs to Table
- [2b11d88] More dependabot PRs
- [4e850cc] dependabot PRs
- [4f29daf] portal: revert nbconvert; build multiple nbs at once
- [4485278] bump client
- [cfc4263] portal: update notebook
- [8f49cf7] client: bugfix existing dict
- [0b4f450] api: account for custom queryset in project lazyref
- [148f29c] dependabot PRs
- [f56e9bc] client: fix bug with existing in submit_contributions
- [bf5f1c8] client: fix download files count
- [a2004de] client: catch invalid timeout value
- [7976eee] client/portal: support json and csv
- [92eeaac] api: json/csv for all components
- [1b588cb] dependabot PRs
- [e8f412a] portal: downloads on browse page
- [9ab89f3] portal: table download buttons
- [3318b21] portal: final downloads testing
- [50c3e01] yay downloads
- [5d586a0] api: change contributions limits
- [72ceb48] client: cumulative timeout for download
- [42b7dc6] client: _get_per_page_default_max
- [d6b279a] dependabot PRs
- [e0cb98d] client: also remove ratelimit from setup.py
- [7a50780] client: minor flake fixes
- [1e59abe] client: timeout, _run_futures hook
- [329e2f6] client: get_session()
- [23cc9f0] client: remove ratelimit
- [8bd0280] api: only calc total_data_pages if total_data_rows set
- [e5a069c] portal: some landingpage cleanup
- [16a4957] dependabot PRs
- [890f8cc] portal: make sure landing page title fits
- [0b38c57] portal: keep project in download query
- [e36084b] portal: multiline browse page; add download buttons
- [adf08f8] api: account for custom queryset manager in bulma_* fields
- [d4c25d2] client: add bson dep to setup.py
- [3c2eb49] portal: add project download button
- [31bda69] portal: minor fix in cards nb
- [c64ac4e] portal: _zip_download
- [32e864f] MORE_PIP_FLAGS
- [c0048dd] portal: finally a download_project view
- [c30d30c] client: also check host on client re-init
- [736559c] client: add content-type to tests
- [028fbd9] client: fix tests
- [8faf5ac] api: paginate projects
- [b3b22ad] client: test and improve download_contributions()
- [4b249a7] dependabot PRs
- [3c9125a] client: parallel download requests
- [b5d896c] more dependabot PRs
- [b9b3761] dependabot PRs
- [69b333b] client: remove max_workers kwarg
- [5a56331] api/client: better per_page handling
- [c7ebfee] client: overhaul for download_contributions()
- [276bdc1] portal: update download_contribution
- [4ca743e] bump mpcontribs-client
- [ff14edc] portal: fix nb related resource
- [3a59909] client: include kwarg to control components download
- [35c59af] client: download_contribution()
- [fde937d] enable downloading components
- [556b95b] bump apispec and tqdm
- [2f28c73] bump boto3
- [0f747f3] dependabot PRs
- [65cbd88] add cards notebook
- [2d53bed] api: queryset_manager for only fields; notebook Ref
- [8eee5c1] api: fix flask-mongorest branch
- [ac72b70] bump client
- [7ff0369] client: flake8 bugfix
- [a750011] client: validate payload, update_contributions(), publish()
- [5c04b40] bump python image 3.95.1
- [dc2b64c] last dependabot PRs for today
- [098e392] more dependabot PRs
- [27cfd31] dependabot PRs
- [5da9a89] client: use get_model for field definitions
- [34f6e9b] client: docstrings and dir for autocomplete
- [3548033] bump client
- [a26108f] client: fix flake8 error
- [3dcb83a] client: Attachment.from_data()
- [6ef5a86] portal: component modals
- [670b42b] bump client
- [f8c4e8d] client: use tqdm.auto import
- [4ad0705] client: check ipython in component display
- [cf7418f] portal: adjust to new client
- [6d1ac44] bump client
- [d9d6d7c] client: minor docstring additions
- [b3bc3b5] client: uniform component functions
- [2943441] client: Structure -> PmgStructure
- [34c2312] portal: only link ObjectIds in id field
- [593b13b] portal: minor landing page layout fixes
- [1fb1041] bump python image 3.95.0
- [f653150] dependabot PRs
- [2727a09] moar dependabot PRs
- [bdf0b89] dependabot PRs
- [d0f0919] client: README fix
- [c561c93] bump client
- [0d918f9] notebook updates
- [bf0fc0d] client: propagate table attrs
- [1e1e725] client: inf_as_na; pd.to_numeric, fillna empty strings
- [221ca7e] api: fix format_cell for empty strings, use nominal_value
- [d39c090] api: catch nan's in tables
- [ff9f1e3] client README typo fix
- [d26be9d] bump client
- [bf3a64c] client: bravado fork in README
- [328f575] update lightsources get_started NB
- [b7a1b3b] api: new client display, add attachments
- [758254d] adjust notebooks to client display
- [ed7f2e4] bump client
- [0c9a957] client: display/info for components
- [b82ad55] client: initial_total not needed
- [380c9da] fix component duplicate checks and referencing
- [f3d0975] api: attachment contents must be str
- [5281ccb] client: bugfix to keep duplicates for submission
- [bf58b37] client: bugfix id2project for updates
- [ad6b42e] api: null=True for all component updates
- [b52ae48] client: use last_modified to calc updated total
- [221c9e0] api: move last_modified to pre save
- [7a08a0a] bump python image 3.94.2
- [90e697d] api: use Before/After op for last_modified
- [bf356b6] api/client: update contribution components
- [5c298e5] boto3 bump
- [a3dcd03] dependabot PRs
- [524996d] bump client
- [7ba5d88] client: fail safes for init_columns; allow reordering
- [8c12581] api: include field in unit warning
- [1cda80e] bump python image 3.94.1
- [cb6b316] dependabot PRs
- [d0ffe56] bump client
- [d727a6f] client: include some sanity checks for init_columns
- [44b650f] api: set sensible bulk_update_limit for contributions
- [e45239f] bump client
- [4f21b8f] bump orca
- [8ad55b2] api: fix notebook builds
- [3c9e60c] client.init_columns: add dimensionless quantity example
- [81fa8f5] bump client
- [50f031f] fix code style errors
- [45c0ff0] client: higher limit for error msg cutoff
- [e1e0cf8] api: add attachment name to S3 metadata
- [c18ccea] api: only retrieve S3 attachments when needed
- [94bb8d4] api: marshmallow-mongoengine 0.30.2
- [a398950] client: better print errors
- [5e402ad] bump python image
- [0c1e65e] build(deps): bump jupyter-client in /mpcontribs-portal
- [0fbb83b] dependabot PRs
- [1bb99b2] api: use API_CNAME for attachment keys in S3
- [07ee45a] portal: show errors in overview table
- [ab130a0] client: better docstrings/messages; multiple projects in submit_contributions; unflatten data
- [f8d8488] client: Client/init_columns docstrings
- [5ce1556] client: clean up order in init_columns
- [94c0928] portal: raw/without_components downloads
- [5c34625] build(deps): bump django from 3.1.7 to 3.1.8 in /mpcontribs-portal
- [0c389d1] bump python image
- [1159b57] client: bump bravado commit
- [ea5a252] dependabot PRs
- [b592a8b] client: fix code style errors
- [31399b6] portal: add attachments to search
- [70abf0a] portal: implement attachments
- [a5ab539] client: get_attachment convenience function
- [83f9ac9] api: validate base64 encoding for attachment content
- [6de74a2] api: avoid getting attachment from S3 unless content requested
- [158b1dc] api: supported file types for attachments
- [f46a5b8] client: add support for attachments
- [aaa7982] api: implement attachments
- [2b43a87] client: add localhost.*.materialsproject.org as valid urls
- [bbb8458] bump python image
- [209e867] bump client
- [67bb9a6] dependabot PRs
- [2cf3ee2] bump client
- [44a3398] client: fix allowed ports
- [e2fec46] portal: fix login href
- [d8f3513] pymatgen bump
- [1288bc5] dependabot PRs
- [a8e582a] bump client
- [72726a5] client: minor README formatting
- [38c03ef] client: another shot at getting test working
- [e12587f] client: fix env export in windows
- [5b3e16b] client: SSL_CERT_FILE is passed on automatically
- [cabbb74] client: try export SSL_CERT_FILE explicitly for windows
- [1c28995] client: allow externals for ubuntu/windows testing
- [4b05785] client: add troubleshoot section to README
- [d1edfa5] client: set SSL_CERT_FILE for tests
- [8c0d91b] client: bump twisted and bravado
- [c3de277] client: update tests
- [3fc860b] client: check valid URLs
- [a82bbae] dependabot PRs
- [c902624] bump client
- [01c16d0] dependabot PRs
- [111a264] remove pymatgen root-level imports
- [f7cb1fd] dependabot PRs
- [5ed71b2] devops:python-3.92.0
- [003781a] build(deps): bump boto3 from 1.17.12 to 1.17.13 in /mpcontribs-api
- [7eccfe6] dependabot PRs
- [6862b75] perovskites_diffusion notebook
- [b6d9a05] bioi_defects notebook
- [2898d08] bump client
- [1acadf4] client: fix protocol criterium
- [1ae00e3] portal: only dropdown at navbar-end
- [ac5a46f] portal: include profile info (auto-redirect in grant
- [9276144] portal: add intro text to browse page
- [9ca4e5d] work -> code; apply -> contribute
- [c033efb] portal: hyperlink login in alert message
- [9c0bc2a] docker docs to devops
- [cc45e54] redirect root to browse
- [b445a67] docs.mpcontribs.org
- [59df520] api: strip whitespace in groups
- [5e8931e] api: fixed has_read_permissions
- [2c3686c] dependabot PRs
- [cad8534] api: progress on fixing read access
- [46ae58d] portal: catch not found exceptions
- [4122599] oauth -> profile
- [4bebe8a] bump client
- [4811d6f] client: ensure only single colon in username
- [d2fcc88] api: register ProviderEmailField, add Validator
- [37219de] api: include kernels in healthcheck only for prod
- [aa06f64] portal: don't use look-aheads
- [69d1def] api health: include app.kernels check
- [9e79384] portal: switch to sass
- [70eec96] portal: trying to fix download notification
- [3460aa4] portal: switch to yarn for node packages
- [fea3834] dependabot PRs
- [616c104] portal: done with anonymous responses
- [b32f988] portal: anonymous download response
- [b889c7b] bump pymatgen in /mpcontribs-sidecars/kernel_gateway
- [87107f8] bump client
- [adb0378] portal: working on anonymous responses
- [39cca14] client: use colon to decide on protocol
- [7bb1bdf] api/portal: allow access to public projects for anonymous
- [55f79e8] dependabot PRs
- [740794c] api: catch empty strings in groups
- [c505831] bump client
- [c43cffd] api: ProviderEmailField for project owner
- [4f17080] client: decide protocol by localhost in host
- [397dfc0] portal: add explicit redirects for old project names
- [6ebad2b] portal: Login/Profile button
- [9895256] rm console log and profile info
- [b3a3fdf] portal: contribs-web allowed host and referrer policy
- [441ac12] portal: OAUTH_URL; minor header_footer stuff
- [50116bd] portal: upgrade to webpack5 and latest dependencies
- [9ff5975] client: fix email/username validation
- [8130433] api: fix SNS client endpoint/email
- [6cc5842] api: remove login route
- [b06505d] make better decisions based on CNAME
- [e13d20d] bump devops/python
- [dfc3045] dependabot PRs
- [a62e3a9] portal: mjs bugfix, few version bumps
- [97baf43] move prep.sh out of the way
- [520db9b] bump client
- [f84ef6a] client.reqs: pin commits, add twisted
- [9ee0c41] client: flake fix, remove py36
- [a83aca9] client: tox add py36
- [b3e6090] client: add live client test
- [e2f2da2] client: include macos/windows in tests
- [3ed2207] client: use bravado fork with threading.TIMEOUT_MAX
- [e721ad5] bump client
- [c63854b] dependabot PRs
- [4168e55] bump client
- [5ca868b] portal: screening_inorganic_pv NB ok
- [9280311] client: get table by tid or md5
- [57c0c4e] dependabot: only run on mpcontribs-client path
- [0f4783d] bump client
- [ea07c70] client: retry flag, submit docstring
- [9ae6a16] portal: target blank for login
- [548d8a1] update screening_inorganic_pv notebook
- [c5bf699] portal: copy from python3.9
- [e8e699e] remove api key clipboard button
- [3f34472] api: bugfix schema2jsonschema
- [165a21f] dependabot PRs
- [211d30a] deployments: fix api host
- [96d47b9] api: bump reqs, rm npm, py39
- [7a6cbde] api dockerignore
- [e39995c] gh action: fetch-depth to retrieve all tags
- [f806ec3] gh action: build package in publish job
- [8c7a4b6] gh action: separate publish job
- [7481fda] gh action: test multiple python versions
- [8ccaf22] kernel-gateway py39
- [3b6077c] bump mpcontribs-client
- [b139320] compose: moving to devops repo
- [28f826e] portal: add screening_inorganic_pv notebook
- [6a25615] save TODOs
- [31457ad] bump orca
- [643b36a] docs: add link to workshop lesson
- [b73145d] api: use flasgger repo
- [b54f022] tox: add py39
- [695841a] devops/python 3.90.10
- [5dc99b2] bump client
- [f81cb09] more dependabot PRs
- [3ca6034] dependabot PRs
- [944bb52] bump client
- [3b030d9] dependabot PRs
- [2a2c2cc] remove logout button
- [4da9e3b] portal: update login/profile link; add groups and logout
- [2150828] bump client
- [5a03968] mpcontribs.org -> contribs.materialsproject.org
- [5afe58c] portal: oauth login and profile
- [cc392a7] also user X-Consumer-Groups
- [383e793] build(deps): bump boto3 from 1.16.35 to 1.16.36 in /mpcontribs-api
- [f95cef3] dependabot PRs
- [1dbcd20] adjust headers for kong-proxy-oauth
- [6ad948b] bump client
- [f447416] more dependabot PRs
- [f73a5e1] dependabot PRs
- [58d5535] api nb.build: estimated_doc_count; unset missing NBs
- [78f7cca] bump client
- [17892d3] dependabot PRs
- [64a4fb3] portal: can't comment things out in JSON
- [fdd04aa] build(deps): bump boto3 from 1.16.23 to 1.16.24 in /mpcontribs-api
- [0923ea7] dependabot PRs
- [aaf6118] portal: mathjs not needed rn
- [c2b42ad] bump client
- [b75fa3a] client: allow empty string as unit for dimensionless
- [d5f8966] bump client
- [000d75a] client: allow name to be set for structures
- [551a345] build(deps): bump boto3 from 1.16.13 to 1.16.16 in /mpcontribs-api
- [d1c8bec] client: don't resubmit if unique_identifiers=False
- [bc5a08e] dependabot PRs
- [b66072c] api: allow to be used w/o SNS and Kernel Gateway
- [b7314b3] dependabot PRs
- [487d8cd] cloudformation moved to devops
- [05f0129] cfn: kong session secret
- [e32b544] portal: save 2dmatpedia NB
- [8f2a0e0] bump client
- [59abc01] client: only use index for component name if necessary
- [327caf7] api: fix notebook deletion for lazy reference
- [a88b76d] portal: note on spam folder during apply
- [c63c53b] portal: revert to node 14; sort package.json
- [96fbb77] dependabot PRs
- [dbe9c39] cfn: adjust NUM_WORKERS for MP
- [d364b26] portal-ls: update get_started notebook
- [7c50572] bump client
- [427012d] client.get_contribution: don't return notebook field
- [bdf50f5] api: only check dangling NBs if necessary