{ "info": { "author": "Michael Medford", "author_email": "michaelmedford@berkeley.edu", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: MacOS", "Operating System :: POSIX", "Operating System :: Unix", "Programming Language :: Python :: 3.5", "Topic :: Scientific/Engineering :: Astronomy" ], "description": "# fringez\n\n## Getting Started\n\nZTF i-band images are contaminated with atmospheric fringes that significantly \neffect the photometric solution of sources within the image. ```fringez``` uses \nprincipal component analysis to generate a fringe model from these i-band \nimages. Each ZTF readout channel generates similar atmospheric fringe patterns \nand therefore requires its own fringe model. That fringe model can then be \nused to generate a fringe bias image for each contaminated i-band image which, \nwhen subtraction from the i-band image, removes the atmospheric fringes. \nThis results in a clean i-band image. \n\n**Diagram of fringez Scripts**\n![](https://raw.githubusercontent.com/MichaelMedford/fringez/master/fringez_diagram.jpeg)\n\n```fringez``` installs three executables.\n\n- ```fringez-download```: Downloads pre-generated fringe models from the NERSC \nweb portal\n- ```fringez-clean```: Cleans contaminated i-band images using fringe models\n- ```fringez-generate```: Generates new fringe models using contaminated i-band \nimages\n\n### Installation\n\nPreferred method is through pip:\n\n```\npip install fringez\n```\n\nLatest version can also be installed from github:\n```\ngit clone https://github.com/MichaelMedford/fringez.git\ncd fringez\npython setup.py install\n```\n\n### Downloading Fringe Models\nUsers must have fringe models on disk in order to clean i-band images with \natmospheric fringes. These fringe models are what generate a fringe bias \nimage for each contaminated i-band image which, when subtraction from the \ni-band image, removes the atmospheric fringes. This results in a clean i-band \nimage. \n\nPre-generated fringe models can be downloaded from the NERSC web portal \nwith the ```fringez-download``` executable. Select a ```-fringe-model-date``` \nfrom the below list to download a version of the pre-generated fringe models. \nThe script will also download the model lists, containing the list of images \nused to create the fringe model. \n\nCurrent model versions:\n* 20190907 (16 GB)\n\nFringe models can either be downloaded for all 64 readout channels with the \n```-all``` argument, or only a single fringe model can be downloaded with \nthe ```-single``` argument. If the ```-single``` argument is selected, then \nonly the model with the ```-fringe-model-id``` argument is downloaded. The \n```-fringe-model-id``` is the cid and the qid of the fringe model combined \nin the following syntax: c01_q1\n\nBy default the fringe models and fringe model lists will be downloaded to the \ncurrent directoy, but can also be sent a specific directory with the \n```-fringe-model-folder``` argument.\n\n### Generating Clean Images\nContaminated images can be cleaned with the ```fringez-clean``` executable.\n\nContaminated images can either be cleaned one at a time with the \n```-single-image``` argument, or all images in a folder can be cleaned with the \n```-all-images-in-folder``` argument. All clean images will have the same \nfilename as the science images, but with the extension ```sciimg.clean.fits```. \nTo save the fringe bias images to disk for debugging, select the ```-debug``` \nargument.\n\n#### Cleaning all contaminated images in a folder\n\nCleaning a folder of contaminated images requires specifying the folder where \nfringe models are located. ```fringez-clean``` will automatically pair the \ncorrect fringe model with each contaminated image.\n\nFrom within the directory where all of the science images are located, \nexecute ```fringez-clean -all-images-in-folder \n-fringe-model-folder={FRINGE_MODEL_FOLDER}```. The ```-fringe-model-folder``` \nargument must be set when ```-all-images-in-folder``` is selected.\n\nWhen cleaning all images, ```fringez-clean``` can either clean one image at a \ntime with the ```-serial``` argument, or clean images in parallel with the \n```-parallel``` argument. Images are cleaned in ```-serial``` by default. \nParallelization is executed with the mpi4py package and simply splits the list \nof images in the folder across the processes used to launch the \n```fringez-clean``` executable.\n\n#### Cleaning a single contaminated image\n\nCleaning a single contaminated image requires specifying a fringe model. This \nfringe model should match the readout channel ID of the contaminated image. \nThe image and the model will both be labelled with the same quadrant ID and \nccd ID. For example, if ```ztf_20190703184838_000481_zi_c02_o_q1_sciimg.fits```\nis the contaminated image, then \n```fringe_PCArandom_comp06.c02_q1.20190618.model``` would be the correct model \nbecause of the matching ``c02`` and ```q1``` parameters. \n\nFrom within the directory where the contaminated science image is located, \nexecute ```fringez-clean -single-image -image-name={IMAGE_NAME} \n-fringe-model-name={FRINGE_MODEL_NAME}```. The ```-image-name``` and \n```-fringe-model-name``` arguments must be set when ```-single-image``` is \nselected. \n\n### Generating Fringe Models\n*Note: Downloading pre-generated models using the fringez-download executable \nis recommended. Most users will not need to generate new fringe models*\n\nFringe models are generated with the ```fringez-generate``` executable.\n\nThe models which will be generated are listed in \n```$PATH_TO_FRINGEZ_DIR/model.py:return_estimators```. \nThe number of components in each model fit are set with the \n```-n-components``` argument. Plots of the eigenimages can be generated for \ndebugging with the ```-plots``` argument.\n\nTo generate fringe models:\n\n1) Place images containing fringes into a directory. **All images within the \ndirectory must have the same RCID. Models are made separately for each ZTF \nRCID.** Image names are expected to begin with **ztf** and end with \n```sciimg.fits```. \n2) From within this folder, execute ```fringez-generate```. By default the \nscript will choose six components and will not generate debugging plots. \n3) The current directory will now contain a model or models of the fringes, \nnamed **fringe\\_{MODEL_NAME}\\_comp{N_COMPONENTS}.c{CID}\\_q{QID}.{DATE}.model**. \nBy default the script will only generate **PCArandom** models, but more models \ncan be tested by editing the \n```$PATH_TO_FRINGEZ_DIR/model.py:return_estimators``` function. The current \ndirectory will also contain a ```*.model_list``` file for each model listing \nthe images that went into the creation of the model.\n\n## Requirements\n* Python 3.6\n\n## Authors\n\n* Michael Medford \n* Peter Nugent \n\n## Citation\n[![DOI](https://zenodo.org/badge/206685101.svg)](https://zenodo.org/badge/latestdoi/206685101)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/MichaelMedford/fringez/tarball/1.0.3", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/MichaelMedford/fringez", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "fringez", "package_url": "https://pypi.org/project/fringez/", "platform": "", "project_url": "https://pypi.org/project/fringez/", "project_urls": { "Download": "https://github.com/MichaelMedford/fringez/tarball/1.0.3", "Homepage": "https://github.com/MichaelMedford/fringez", "Models": "https://portal.nersc.gov/project/ptf/iband" }, "release_url": "https://pypi.org/project/fringez/1.0.3/", "requires_dist": [ "astropy", "joblib", "numpy", "matplotlib", "scikit-learn", "requests", "wget", "beautifulsoup4" ], "requires_python": ">=3.5", "summary": "Removing atmospheric fringes from ZTF i-band images", "version": "1.0.3" }, "last_serial": 5980319, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "9f6746704a939dbf225911159c69c04b", "sha256": "374ec9a63e549fb83f146337ce668e51c95e2c1d7a45c39aedd89de9f180cae9" }, "downloads": -1, "filename": "fringez-0.1.0-py3.6.egg", "has_sig": false, "md5_digest": "9f6746704a939dbf225911159c69c04b", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.5", "size": 18851, "upload_time": "2019-09-06T05:16:28", "url": "https://files.pythonhosted.org/packages/c2/28/2e1667d1d7abd0060cd019abf83946751f4b7f42bff090acb897ef172b78/fringez-0.1.0-py3.6.egg" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "29c3b27578e409e559ac4e190cc4508e", "sha256": "edc968a9f7126a7a89aea5e584009ce8a838cd9dfd1c5f6ae82ad6812baf8430" }, "downloads": -1, "filename": "fringez-0.2.0-py3.6.egg", "has_sig": false, "md5_digest": "29c3b27578e409e559ac4e190cc4508e", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.5", "size": 19400, "upload_time": "2019-09-06T05:16:30", "url": "https://files.pythonhosted.org/packages/c2/12/127c65065d68cdaba1aa44db55c8d35e1ad8ab1609dfb12c05ca70192b2b/fringez-0.2.0-py3.6.egg" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "157c13693a18df654b633e5a90481c0c", "sha256": "287153c507fea3fa9f6fb081975b5ab84d596add0ab4a5c0d340b0d3818dedfc" }, "downloads": -1, "filename": "fringez-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "157c13693a18df654b633e5a90481c0c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12625, "upload_time": "2019-09-06T05:16:25", "url": "https://files.pythonhosted.org/packages/48/40/273b8cf55595b30d0453c45cf217032f7e0b5f576d69934b2fcaf19f8413/fringez-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e0a3e25b22e3e6d051d48bb7bc01bda7", "sha256": "56f9351c1d3d405bb1c0fcb0313e5b7cbba0acd61fdac96c44b4b9dc9b401103" }, "downloads": -1, "filename": "fringez-0.3.0.tar.gz", "has_sig": false, "md5_digest": "e0a3e25b22e3e6d051d48bb7bc01bda7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9787, "upload_time": "2019-09-06T05:16:31", "url": "https://files.pythonhosted.org/packages/2e/3b/fb8c8e524c08740127397afa2e0d0f31bb49263981b6a1c7c148260f16d8/fringez-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "1d6a9b1f490fb59c73e186bb41668146", "sha256": "eb1a55433bc06a1ffae7ef6ae4e342f50c1c9c924a4b3bbf7217e0d28083a90c" }, "downloads": -1, "filename": "fringez-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1d6a9b1f490fb59c73e186bb41668146", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12624, "upload_time": "2019-09-06T06:26:27", "url": "https://files.pythonhosted.org/packages/3a/0a/68b98827446257d70295e17397b7bcf4825d68ef0031cf449df83a39a765/fringez-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "afa13090f6835fb73aa0c1fa93f1f6d6", "sha256": "5baf386360093014a32fc24ebca28cb6814003c7f8fe614152e33b0916c584fd" }, "downloads": -1, "filename": "fringez-0.3.1.tar.gz", "has_sig": false, "md5_digest": "afa13090f6835fb73aa0c1fa93f1f6d6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9801, "upload_time": "2019-09-06T06:26:31", "url": "https://files.pythonhosted.org/packages/4c/b2/04bae5e065f0d298016c117d5a024391ca021cab32a25935c20d10d924d7/fringez-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "1eeb4a7410e33e754d56fd05cc7533ec", "sha256": "bbfc6180fdffaf31d1c4a4c848b618a6bc1b8bac39cadf3085ed766dd2b48685" }, "downloads": -1, "filename": "fringez-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "1eeb4a7410e33e754d56fd05cc7533ec", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12626, "upload_time": "2019-09-06T06:34:30", "url": "https://files.pythonhosted.org/packages/4e/fb/7ffe071b042b1859992865794b0249b3395d29da62befbff97fd32e7b7b1/fringez-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7665da1e57ff1d88f9f6a92548490d4c", "sha256": "835924e329ea8f1bdca51d76ea32396df5c61882e3321458c9133ac4affbfae4" }, "downloads": -1, "filename": "fringez-0.3.2.tar.gz", "has_sig": false, "md5_digest": "7665da1e57ff1d88f9f6a92548490d4c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9805, "upload_time": "2019-09-06T06:34:34", "url": "https://files.pythonhosted.org/packages/cf/55/b41d9417f48b85cd0cd050a415e0d40db35111845ce94d51d463a64a21e7/fringez-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "6a217e7cd0b50ba54f349ce88a239f33", "sha256": "93d72d406f1810887b1d84c0a2b5fb902e3cebecaba53e2f583510207b9f342f" }, "downloads": -1, "filename": "fringez-0.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6a217e7cd0b50ba54f349ce88a239f33", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12671, "upload_time": "2019-09-06T06:53:45", "url": "https://files.pythonhosted.org/packages/5b/11/7f7af0ae0f75a52d3ab985367e902f346dbb90f52291b2fc76708b1decdd/fringez-0.3.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "af0cdda92305dfa77ed46ed6568a466f", "sha256": "efc3e56e46da3ee289f947969643de0d4f11daa3de68d438e94b865caf82dd84" }, "downloads": -1, "filename": "fringez-0.3.3.tar.gz", "has_sig": false, "md5_digest": "af0cdda92305dfa77ed46ed6568a466f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9851, "upload_time": "2019-09-06T06:53:51", "url": "https://files.pythonhosted.org/packages/31/96/f1be38444d1c90900c1f3f29b351b3330b873a8147625955c7cf70e3114b/fringez-0.3.3.tar.gz" } ], "0.3.3.1": [ { "comment_text": "", "digests": { "md5": "3d7fdea8f949405ed775f77082b772c4", "sha256": "3888607178defcd6e23acfaa641925f7db62018360f17c670521d6c904ea08b2" }, "downloads": -1, "filename": "fringez-0.3.3.1-py3.6.egg", "has_sig": false, "md5_digest": "3d7fdea8f949405ed775f77082b772c4", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.5", "size": 19281, "upload_time": "2019-09-06T07:20:33", "url": "https://files.pythonhosted.org/packages/e6/17/1134d898bbf57f3f9363fb854188016b3d7ed253c1f6f7876c3846293d9f/fringez-0.3.3.1-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "e75fa90577bdf4a94fbcd1d521b37fb8", "sha256": "77d5704d8277436c9ddbba9d71d82e8313a87156eca1ed39904fe016475fd34e" }, "downloads": -1, "filename": "fringez-0.3.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e75fa90577bdf4a94fbcd1d521b37fb8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12682, "upload_time": "2019-09-06T07:03:44", "url": "https://files.pythonhosted.org/packages/e7/57/7107d087b5760b257ff2e15047279df62c5a65f1e99a330e80060a6ed939/fringez-0.3.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6789d2de889966b9779add4d24aed1e3", "sha256": "55b9bc320eb7f89b191310f7b9bf32ac612713543fa01d05e7d2c858a731fc2a" }, "downloads": -1, "filename": "fringez-0.3.3.1.tar.gz", "has_sig": false, "md5_digest": "6789d2de889966b9779add4d24aed1e3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9826, "upload_time": "2019-09-06T07:03:46", "url": "https://files.pythonhosted.org/packages/f4/5a/9ae612be993029c369b9b24936165c37eb3a118fb8956d1af38764dd96e0/fringez-0.3.3.1.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "d7e74a70e1d3d228dfcc4d141aa57a57", "sha256": "23951ba858b27e6cdd8e6f18afcf3de2812b03ee23a95a105a9cb95efb583058" }, "downloads": -1, "filename": "fringez-0.3.4-py3.6.egg", "has_sig": false, "md5_digest": "d7e74a70e1d3d228dfcc4d141aa57a57", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.5", "size": 19279, "upload_time": "2019-09-06T07:20:35", "url": "https://files.pythonhosted.org/packages/ea/76/12ee3f793f30bd88e5d08b77ffdb530f99c5e7b68264b95c24f836d77763/fringez-0.3.4-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "9db5a09fe33d92736811289c157ce3f1", "sha256": "2dc1c22f692469ed85a82031847c08547e8c9e5a2888275fb33d753a4a8c54a8" }, "downloads": -1, "filename": "fringez-0.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9db5a09fe33d92736811289c157ce3f1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12642, "upload_time": "2019-09-06T07:20:31", "url": "https://files.pythonhosted.org/packages/1c/05/2b842590c8a2bf7df291fd2c19a8ae0d8056efcd656dfe8edca90a0091ad/fringez-0.3.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5642b8c60856034a3dd128944c92c1eb", "sha256": "e64ed2cbfa58e7d1bc4ad5e8798ed1b5b4ec1cc3a973829864ed76766aa96e94" }, "downloads": -1, "filename": "fringez-0.3.4.tar.gz", "has_sig": false, "md5_digest": "5642b8c60856034a3dd128944c92c1eb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 9819, "upload_time": "2019-09-06T07:20:37", "url": "https://files.pythonhosted.org/packages/71/aa/91fa9450f492df7168a9f96a4c1da5a8cbcf787c8f0656889d2e74dbee86/fringez-0.3.4.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "19ff324290362ced8d4ea1855f1aa9d9", "sha256": "f1c8e92abfd8119daab4caf1e693ffc045ff3cbd4f747831ff1eb4211308e5f0" }, "downloads": -1, "filename": "fringez-0.4.0-py3.6.egg", "has_sig": false, "md5_digest": "19ff324290362ced8d4ea1855f1aa9d9", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.5", "size": 19690, "upload_time": "2019-09-08T17:51:33", "url": "https://files.pythonhosted.org/packages/a5/d0/5ec3d510a60d7ac954a10be57faa71d9ea673981951dd840ad83123f7133/fringez-0.4.0-py3.6.egg" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "c84145869921e5ded9fe825b1d072827", "sha256": "21c4ca9e0986cb9a86e56ae321b9a75adeb88fe34f9614ebd68b6687a33b5aa5" }, "downloads": -1, "filename": "fringez-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c84145869921e5ded9fe825b1d072827", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 13758, "upload_time": "2019-09-08T17:51:31", "url": "https://files.pythonhosted.org/packages/1a/f3/d4ab542cca0c2ded15043a8fcc1daba9b2160da812140b1f3427075f489d/fringez-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c4337622d30807c8f05059cb6c4263f", "sha256": "c3a79bd3f12de11d23c363208c1e5c688bf73377eb3af6f3ec684a611f7faf60" }, "downloads": -1, "filename": "fringez-1.0.0.tar.gz", "has_sig": false, "md5_digest": "6c4337622d30807c8f05059cb6c4263f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 11316, "upload_time": "2019-09-08T17:51:35", "url": "https://files.pythonhosted.org/packages/3f/85/c428cff42aa16ec61f9da1a9445423a0ba8996b681d608df90c69e76fefb/fringez-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "0dc34be8b4bec98ebbfd5f90310a800c", "sha256": "bec261a6b62a3aefe720c3fcab1bd2c68209a3a42430f93d309d622e71d2d76a" }, "downloads": -1, "filename": "fringez-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0dc34be8b4bec98ebbfd5f90310a800c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 13967, "upload_time": "2019-09-08T20:05:39", "url": "https://files.pythonhosted.org/packages/fe/33/87ecd9776e21feceb771fc791528dcda02aa743131f457c4a72fcbf359d7/fringez-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f7fa0518c918ecf228ecb1336c48b353", "sha256": "0cb2d080ab32c68f86e58e1a264ac7bc082da0b006e1992c6e0d8ba2a81595a0" }, "downloads": -1, "filename": "fringez-1.0.1.tar.gz", "has_sig": false, "md5_digest": "f7fa0518c918ecf228ecb1336c48b353", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 11475, "upload_time": "2019-09-08T20:05:40", "url": "https://files.pythonhosted.org/packages/47/5b/3314863199a4b808fdbf02caa09af1ba69bed9bf56e3e37ac1f67fbe0d4b/fringez-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "61f273efc00cce8d40dfceafcdfc0308", "sha256": "51edd746f1fa50d8b27db09bc0303c9ebb0a11fe95418307cb88200a271b2e72" }, "downloads": -1, "filename": "fringez-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "61f273efc00cce8d40dfceafcdfc0308", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 14019, "upload_time": "2019-09-08T21:04:35", "url": "https://files.pythonhosted.org/packages/67/56/a924e1201688da623c7d5e594d3375d2e9e13ac0fceacf9b9d8e145d1466/fringez-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "789eb833d2c7e7813c35f9df9d930ac1", "sha256": "722208f9ba4b2c895fefcbd7efc7445d835c7caba687099c433eecdfd9153295" }, "downloads": -1, "filename": "fringez-1.0.2.tar.gz", "has_sig": false, "md5_digest": "789eb833d2c7e7813c35f9df9d930ac1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 11519, "upload_time": "2019-09-08T21:04:37", "url": "https://files.pythonhosted.org/packages/ab/7e/2408046d7f6227dc1bdea9c5f01455eb8b390706be00edf66982d63caa35/fringez-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "705133da2df0181aea487cf755124762", "sha256": "42b05e504674fd5815b20c2c4652d4bc49a2b38af81e7cb9cf97f929a9fb90eb" }, "downloads": -1, "filename": "fringez-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "705133da2df0181aea487cf755124762", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 14071, "upload_time": "2019-10-15T23:10:03", "url": "https://files.pythonhosted.org/packages/cf/39/20e80c8e85c53859bda055910c48242a8aeffb25eede4f1ff68e5067654e/fringez-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fef8594a6897c7a0a8116c6dd70beca4", "sha256": "32306e37bf1c0c51809a5f4dc714498386e5d7de4c881c9f016e8870b439239d" }, "downloads": -1, "filename": "fringez-1.0.3.tar.gz", "has_sig": false, "md5_digest": "fef8594a6897c7a0a8116c6dd70beca4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 11611, "upload_time": "2019-10-15T23:10:05", "url": "https://files.pythonhosted.org/packages/9d/8f/44ed480dc258fe007d8c4cac12c252dc55b7dc666199a29a66a31d261fb3/fringez-1.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "705133da2df0181aea487cf755124762", "sha256": "42b05e504674fd5815b20c2c4652d4bc49a2b38af81e7cb9cf97f929a9fb90eb" }, "downloads": -1, "filename": "fringez-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "705133da2df0181aea487cf755124762", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 14071, "upload_time": "2019-10-15T23:10:03", "url": "https://files.pythonhosted.org/packages/cf/39/20e80c8e85c53859bda055910c48242a8aeffb25eede4f1ff68e5067654e/fringez-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fef8594a6897c7a0a8116c6dd70beca4", "sha256": "32306e37bf1c0c51809a5f4dc714498386e5d7de4c881c9f016e8870b439239d" }, "downloads": -1, "filename": "fringez-1.0.3.tar.gz", "has_sig": false, "md5_digest": "fef8594a6897c7a0a8116c6dd70beca4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 11611, "upload_time": "2019-10-15T23:10:05", "url": "https://files.pythonhosted.org/packages/9d/8f/44ed480dc258fe007d8c4cac12c252dc55b7dc666199a29a66a31d261fb3/fringez-1.0.3.tar.gz" } ] }