text: """
  Heavily inspired from https://github.com/huggingface/transformers
  
  Simple check list from AllenNLP repo: https://github.com/allenai/allennlp/blob/master/setup.py
  
  To create the package for pypi.
  
  1. Change the version in __init__.py, setup.py as well as docs/source/conf.py.
  
  2. Unpin specific versions from setup.py (like isort).
  
  2. Commit these changes with the message: "Release: VERSION"
  
  3. Add a tag in git to mark the release: "git tag VERSION -m'Adds tag VERSION for pypi' "
     Push the tag to git: git push --tags origin master
  
  4. Build both the sources and the wheel. Do not change anything in setup.py between
     creating the wheel and the source distribution (obviously).
  
     For the wheel, run: "python setup.py bdist_wheel" in the top level directory.
     (this will build a wheel for the python version you use to build it).
  
     For the sources, run: "python setup.py sdist"
     You should now have a /dist directory with both .whl and .tar.gz source versions.
     
     Usualy run: "python setup.py sdist bdist_wheel"
  
  5. Check that everything looks correct by uploading the package to the pypi test server:
  
     twine upload dist/* -r pypitest
     (pypi suggest using twine as other methods upload files via plaintext.)
     You may have to specify the repository url, use the following command then:
     twine upload dist/* -r pypitest --repository-url=https://test.pypi.org/legacy/
  
     Check that you can install it in a virtualenv by running:
     pip install -i https://testpypi.python.org/pypi transformers
  
  6. Upload the final version to actual pypi:
     twine upload dist/* -r pypi
  
  7. Copy the release notes from RELEASE.md to the tag in github once everything is looking hunky-dory.
  
  8. Add the release version to docs/source/_static/js/custom.js and .circleci/deploy.sh
  
  9. Update README.md to redirect to correct documentation.
  """
  
  from setuptools import setup, find_packages
  
  extras = {}
  
  setup(
      name="ml_things",
      version="0.0.1",
      author="George Mihaila",
      author_email="georgemihaila@my.unt.edu",
      description="Useful functions when working with Machine Learning in Python",
      long_description=open("README.md", "r", encoding="utf-8").read(),
      long_description_content_type="text/markdown",
      keywords="NLP deep learning pytorch tensorflow numpy",
      license="Apache",
      url="https://github.com/gmihaila/ml_things",
      package_dir={"": "src"},
      packages=find_packages("src"),
      install_requires=[
          "scikit-learn",
          "numpy",
          "requests",
          "tqdm >= 4.27",
          "ftfy >= 5.8",
          "matplotlib",
      ],
      extras_require=extras,
      python_requires=">=3.6.0",
      classifiers=[
          "Development Status :: 5 - Production/Stable",
          "Intended Audience :: Developers",
          "Intended Audience :: Education",
          "Intended Audience :: Science/Research",
          "License :: OSI Approved :: Apache Software License",
          "Operating System :: OS Independent",
          "Programming Language :: Python :: 3",
          "Programming Language :: Python :: 3.6",
          "Programming Language :: Python :: 3.7",
          "Topic :: Scientific/Engineering :: Artificial Intelligence",
      ],
  )
  