# srcml_caller
Simple python bindings for [srcML](https://www.srcml.org/).
Provides:
````python
from typing import Optional
import enum
class CodeLanguage(enum.Enum):
c = enum.auto() # (= 0)
c_sharp = enum.auto() # (= 1)
c_plus_plus = enum.auto() # (= 2)
java = enum.auto() # (= 3)
objective_c = enum.auto() # (= 4)
def to_code(
xml_str: str,
encoding_src: str = "utf-8",
encoding_xml: str = "utf-8"
) -> Optional[str]:
pass
def to_srcml(
code: str,
language: CodeLanguage,
include_positions: bool = True,
encoding_src: str = "utf-8",
encoding_xml: str = "utf-8"
) -> Optional[str]:
pass
def cpp_to_srcml(
code: str,
include_positions: bool = True,
encoding_src: str = "utf-8",
encoding_xml: str = "utf-8"
) -> Optional[str]:
pass
````
# Example usage
```
>>> import srcml_caller
>>> srcml_caller.to_srcml("void foo(int v);", srcml_caller.CodeLanguage.c_plus_cplus)
'<unit revision="1.0.0" language="C++" pos:tabs="8"><function_decl pos:start="1:1" pos:end="1:16"><type pos:start="1:1" pos:end="1:4"><name pos:start="1:1" pos:end="1:4">void</name></type> <name pos:start="1:6" pos:end="1:8">foo</name><parameter_list pos:start="1:9" pos:end="1:15">(<parameter pos:start="1:10" pos:end="1:14"><decl pos:start="1:10" pos:end="1:14"><type pos:start="1:10" pos:end="1:12"><name pos:start="1:10" pos:end="1:12">int</name></type> <name pos:start="1:14" pos:end="1:14">v</name></decl></parameter>)</parameter_list>;</function_decl></unit>'
```
# Install instructions (from pypi)
```bash
pip install -v srcml_caller
```
# Install instructions (from source)'
````
git clone https://github.com/pthom/srcml_caller.git
cd srcml_caller
git submodule update --init # will fetch srcML submodule
pip install -v .
````
Note: on windows, you need to first install libxml2 and libxslt with vcpkg, see below:
```bash
# inside the srcml_caller directory:
git clone https://github.com/Microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat
.\vcpkg\vcpkg install libxml2:x64-windows-static libxslt:x64-windows-static
.\vcpkg\vcpkg install libxml2:x86-windows-static libxslt:x86-windows-static
```
# Development build instructions
## Install requirements
### Linux
#### Download and install a newer binary version of cmake (cmake 3.24 is required)
For example:
````
# This is where cmake will be put
MY_BIN_DIR=~/bin
# (select your arch below)
CMAKE_BIN_URL=https://cmake.org/files/v3.25/cmake-3.25.0-linux-x86_64.tar.gz
# CMAKE_BIN_URL=https://cmake.org/files/v3.25/cmake-3.25.0-linux-aarch64.tar.gz
curl -L $CMAKE_BIN_URL > cmake_new.tgz
tar xvfz cmake_new.tgz
rm cmake_new.tgz
echo "export PATH=$MY_BIN_DIR/cmake-3.25.0-linux-aarch64/bin:$PATH" >> ~/.bashrc
echo "export PATH=$MY_BIN_DIR/cmake-3.25.0-linux-aarch64/bin:$PATH" >> ~/.zshrc
````
#### Install requirements
Follow instructions on srcML repo: https://github.com/srcML/srcML/blob/master/BUILD.md
#### Install requirements for Ubuntu
From https://github.com/srcML/Docker/blob/ubuntu_latest/base/Dockerfile
````
sudo apt-get update && sudo apt-get install --no-install-recommends -y \
curl \
zip \
g++ \
make \
ninja-build \
libxml2-dev \
libxml2-utils \
libxslt1-dev \
libarchive-dev \
libssl-dev \
libcurl4-openssl-dev \
cpio \
man \
file \
dpkg-dev
````
You can also run ci_scripts/install_requirements_ubuntu.sh, which does exactly this.
# Build
````bash
git submodule update --init
````
### Unix and MacOS
````bash
python3 -m venv venv
source venv/bin/activate
pip install pybind11
mkdir build
cd build
cmake .. -DPYTHON_EXECUTABLE=../venv/bin/python
````
### Windows
Please clone vcpkg in the same directory as this project, then install libxml2 and libxslt like this:
```bash
git clone https://github.com/Microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat
.\vcpkg\vcpkg install libxml2:x64-windows-static libxslt:x64-windows-static
.\vcpkg\vcpkg install libxml2:x86-windows-static libxslt:x86-windows-static
```
````bash
python3 -m venv venv
venv\Scripts\activate
pip install pybind11
mkdir build
cd build
cmake .. -DPYTHON_EXECUTABLE=c:\FULL\PATH\TO\venv\Scripts\python.exe
````
Raw data
{
"_id": null,
"home_page": "https://github.com/pthom/srcml_caller",
"name": "srcml-caller",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Pascal Thomet",
"author_email": "pthomet@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/51/a5/5b79424e1055aa84148e7b32ca7bf9dcf2aa0dfb06e1133e15f346ab49d6/srcml-caller-0.3.0.tar.gz",
"platform": null,
"description": "# srcml_caller\n\nSimple python bindings for [srcML](https://www.srcml.org/).\n\nProvides:\n\n````python\nfrom typing import Optional\nimport enum\n\n\nclass CodeLanguage(enum.Enum):\n c = enum.auto() # (= 0)\n c_sharp = enum.auto() # (= 1)\n c_plus_plus = enum.auto() # (= 2)\n java = enum.auto() # (= 3)\n objective_c = enum.auto() # (= 4)\n\n\ndef to_code(\n xml_str: str,\n encoding_src: str = \"utf-8\",\n encoding_xml: str = \"utf-8\"\n) -> Optional[str]:\n pass\n\n\ndef to_srcml(\n code: str,\n language: CodeLanguage,\n include_positions: bool = True,\n encoding_src: str = \"utf-8\",\n encoding_xml: str = \"utf-8\"\n) -> Optional[str]:\n pass\n\n\ndef cpp_to_srcml(\n code: str,\n include_positions: bool = True,\n encoding_src: str = \"utf-8\",\n encoding_xml: str = \"utf-8\"\n) -> Optional[str]:\n pass\n````\n\n# Example usage\n\n```\n>>> import srcml_caller\n>>> srcml_caller.to_srcml(\"void foo(int v);\", srcml_caller.CodeLanguage.c_plus_cplus)\n\n'<unit revision=\"1.0.0\" language=\"C++\" pos:tabs=\"8\"><function_decl pos:start=\"1:1\" pos:end=\"1:16\"><type pos:start=\"1:1\" pos:end=\"1:4\"><name pos:start=\"1:1\" pos:end=\"1:4\">void</name></type> <name pos:start=\"1:6\" pos:end=\"1:8\">foo</name><parameter_list pos:start=\"1:9\" pos:end=\"1:15\">(<parameter pos:start=\"1:10\" pos:end=\"1:14\"><decl pos:start=\"1:10\" pos:end=\"1:14\"><type pos:start=\"1:10\" pos:end=\"1:12\"><name pos:start=\"1:10\" pos:end=\"1:12\">int</name></type> <name pos:start=\"1:14\" pos:end=\"1:14\">v</name></decl></parameter>)</parameter_list>;</function_decl></unit>'\n```\n\n# Install instructions (from pypi)\n\n```bash\npip install -v srcml_caller\n```\n\n\n# Install instructions (from source)'\n\n````\ngit clone https://github.com/pthom/srcml_caller.git\ncd srcml_caller\ngit submodule update --init # will fetch srcML submodule\npip install -v .\n````\n\nNote: on windows, you need to first install libxml2 and libxslt with vcpkg, see below:\n```bash\n# inside the srcml_caller directory:\ngit clone https://github.com/Microsoft/vcpkg.git\n.\\vcpkg\\bootstrap-vcpkg.bat\n.\\vcpkg\\vcpkg install libxml2:x64-windows-static libxslt:x64-windows-static \n.\\vcpkg\\vcpkg install libxml2:x86-windows-static libxslt:x86-windows-static\n``` \n\n\n# Development build instructions\n\n## Install requirements\n\n\n### Linux\n\n#### Download and install a newer binary version of cmake (cmake 3.24 is required)\n\nFor example:\n````\n# This is where cmake will be put\nMY_BIN_DIR=~/bin\n\n# (select your arch below)\nCMAKE_BIN_URL=https://cmake.org/files/v3.25/cmake-3.25.0-linux-x86_64.tar.gz\n# CMAKE_BIN_URL=https://cmake.org/files/v3.25/cmake-3.25.0-linux-aarch64.tar.gz\ncurl -L $CMAKE_BIN_URL > cmake_new.tgz\ntar xvfz cmake_new.tgz\nrm cmake_new.tgz\necho \"export PATH=$MY_BIN_DIR/cmake-3.25.0-linux-aarch64/bin:$PATH\" >> ~/.bashrc\necho \"export PATH=$MY_BIN_DIR/cmake-3.25.0-linux-aarch64/bin:$PATH\" >> ~/.zshrc\n````\n\n#### Install requirements\n\nFollow instructions on srcML repo: https://github.com/srcML/srcML/blob/master/BUILD.md\n\n#### Install requirements for Ubuntu\n\nFrom https://github.com/srcML/Docker/blob/ubuntu_latest/base/Dockerfile\n\n````\nsudo apt-get update && sudo apt-get install --no-install-recommends -y \\\n curl \\\n zip \\\n g++ \\\n make \\\n ninja-build \\\n libxml2-dev \\\n libxml2-utils \\\n libxslt1-dev \\\n libarchive-dev \\\n libssl-dev \\\n libcurl4-openssl-dev \\\n cpio \\\n man \\\n file \\\n dpkg-dev\n````\n\nYou can also run ci_scripts/install_requirements_ubuntu.sh, which does exactly this.\n\n\n# Build\n````bash\ngit submodule update --init\n````\n\n### Unix and MacOS\n````bash\npython3 -m venv venv\nsource venv/bin/activate\npip install pybind11\nmkdir build\ncd build\ncmake .. -DPYTHON_EXECUTABLE=../venv/bin/python\n````\n\n### Windows\n\nPlease clone vcpkg in the same directory as this project, then install libxml2 and libxslt like this:\n\n```bash\ngit clone https://github.com/Microsoft/vcpkg.git\n.\\vcpkg\\bootstrap-vcpkg.bat\n.\\vcpkg\\vcpkg install libxml2:x64-windows-static libxslt:x64-windows-static \n.\\vcpkg\\vcpkg install libxml2:x86-windows-static libxslt:x86-windows-static\n``` \n\n````bash\npython3 -m venv venv\nvenv\\Scripts\\activate\npip install pybind11\nmkdir build\ncd build\ncmake .. -DPYTHON_EXECUTABLE=c:\\FULL\\PATH\\TO\\venv\\Scripts\\python.exe\n````\n",
"bugtrack_url": null,
"license": "",
"summary": "srcml_caller, simple python bindings for srcML",
"version": "0.3.0",
"project_urls": {
"Homepage": "https://github.com/pthom/srcml_caller"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "503837f205f05918c0f2c8ca8d5e710e2bbd8f76596ad137ec23b7df557aadb8",
"md5": "ba1a334fbcb8eeb5d3008422ef28e1e7",
"sha256": "d562f9955dc1e5851aa0564bd292b3675340dcb8f9ec0995ce57189b9dd6866e"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "ba1a334fbcb8eeb5d3008422ef28e1e7",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 4805635,
"upload_time": "2024-01-20T13:33:22",
"upload_time_iso_8601": "2024-01-20T13:33:22.081103Z",
"url": "https://files.pythonhosted.org/packages/50/38/37f205f05918c0f2c8ca8d5e710e2bbd8f76596ad137ec23b7df557aadb8/srcml_caller-0.3.0-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0370ad7129336dfb870bf7a7f9bb88a1da16af8ce3820fe967336bfd242ded3d",
"md5": "5f50827a6471074342e5aa401c9c2c02",
"sha256": "d326120540205e02f43f9f67295aa3b4ae3389223e8ccb98d6faef5ff16cce82"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "5f50827a6471074342e5aa401c9c2c02",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 4279196,
"upload_time": "2024-01-20T13:33:24",
"upload_time_iso_8601": "2024-01-20T13:33:24.825588Z",
"url": "https://files.pythonhosted.org/packages/03/70/ad7129336dfb870bf7a7f9bb88a1da16af8ce3820fe967336bfd242ded3d/srcml_caller-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "14aed34fe0c5875bc5b4f10d3183def031f9ff3dc2f9c6ab5901124b7fd78680",
"md5": "b841323cbe39a80607169b422f992dbb",
"sha256": "a04199dfd7bd7516eb81a4c2d8bf5f27a430d0455e15aedee593b4a99045b5a1"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "b841323cbe39a80607169b422f992dbb",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 4781167,
"upload_time": "2024-01-20T13:33:27",
"upload_time_iso_8601": "2024-01-20T13:33:27.354224Z",
"url": "https://files.pythonhosted.org/packages/14/ae/d34fe0c5875bc5b4f10d3183def031f9ff3dc2f9c6ab5901124b7fd78680/srcml_caller-0.3.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "17c5a62a8d63fed578be5e0b7ba2b60a0e7083d4a525fb080ce9aca4d5ab1a57",
"md5": "1dca297ca83d7dca929b5ee7689d726d",
"sha256": "90fc8cab49880b5007f41e18094a570c9e882cdb934ce901b1cfbc06ad90d1c6"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "1dca297ca83d7dca929b5ee7689d726d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 5965741,
"upload_time": "2024-01-20T13:33:32",
"upload_time_iso_8601": "2024-01-20T13:33:32.183208Z",
"url": "https://files.pythonhosted.org/packages/17/c5/a62a8d63fed578be5e0b7ba2b60a0e7083d4a525fb080ce9aca4d5ab1a57/srcml_caller-0.3.0-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a0c5a6b0fd5e1d8bc74164663b1fb30702e5bde5b1a12692b00a4fb79a77b810",
"md5": "6186151ada0c07e2e3a11b64297afd7f",
"sha256": "920b2ada580e86a051606a7144e98f03227c52cb8772f994d46615489658bb8d"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "6186151ada0c07e2e3a11b64297afd7f",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 4807255,
"upload_time": "2024-01-20T13:33:33",
"upload_time_iso_8601": "2024-01-20T13:33:33.868616Z",
"url": "https://files.pythonhosted.org/packages/a0/c5/a6b0fd5e1d8bc74164663b1fb30702e5bde5b1a12692b00a4fb79a77b810/srcml_caller-0.3.0-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "86dc944199b8c857ab0b945dd30a48515602d0123a33a6e2b55f2dbff4ef02b3",
"md5": "48ca2dd047db7a7a10498d1fd6dccb20",
"sha256": "1b328148bb24f7a9500304b19acfcc57209d843ae29b690b8ac4e653d52a4d70"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "48ca2dd047db7a7a10498d1fd6dccb20",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 4281385,
"upload_time": "2024-01-20T13:33:36",
"upload_time_iso_8601": "2024-01-20T13:33:36.477565Z",
"url": "https://files.pythonhosted.org/packages/86/dc/944199b8c857ab0b945dd30a48515602d0123a33a6e2b55f2dbff4ef02b3/srcml_caller-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b438785497a412006392f87d91189dc19ab898da44dbf415334bb500f1d8d5e9",
"md5": "bb59fa5003dabeb75b2340cc67c4d11e",
"sha256": "fe45c57dc3df032705e9218ce5a1d3ccb45f8112af99acbc2de46cf353724731"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "bb59fa5003dabeb75b2340cc67c4d11e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 4782525,
"upload_time": "2024-01-20T13:33:38",
"upload_time_iso_8601": "2024-01-20T13:33:38.935585Z",
"url": "https://files.pythonhosted.org/packages/b4/38/785497a412006392f87d91189dc19ab898da44dbf415334bb500f1d8d5e9/srcml_caller-0.3.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b4e9b5f9c9e5cb419dd6ea2a7e092e1db2d682803b0ccfd43e14defe87f8c271",
"md5": "824ae5b00061eb812bd8420ca91349cd",
"sha256": "fdac7ac38abe5a8a846583e679a47cf976cdefaad0de9fd76b7ee3aa77fb3bad"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "824ae5b00061eb812bd8420ca91349cd",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.6",
"size": 5967569,
"upload_time": "2024-01-20T13:33:40",
"upload_time_iso_8601": "2024-01-20T13:33:40.942906Z",
"url": "https://files.pythonhosted.org/packages/b4/e9/b5f9c9e5cb419dd6ea2a7e092e1db2d682803b0ccfd43e14defe87f8c271/srcml_caller-0.3.0-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7e55de0d4d235ae7ba85a5f6f2702906819520960c648b61edd30379fbdd8163",
"md5": "71142bf3775043b25ef944918b8c1b20",
"sha256": "58c3449ef15905379db5df923d1147cfa5a105452c4d483ee4166b93fccea5b8"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "71142bf3775043b25ef944918b8c1b20",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 4806171,
"upload_time": "2024-01-20T13:33:43",
"upload_time_iso_8601": "2024-01-20T13:33:43.255131Z",
"url": "https://files.pythonhosted.org/packages/7e/55/de0d4d235ae7ba85a5f6f2702906819520960c648b61edd30379fbdd8163/srcml_caller-0.3.0-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1d89d4856e12e3d070fa1ae4a8cdc32b04ca8680a21e2c14f37aa7a6590823ce",
"md5": "3112bf8d76533e93faa97570c4746760",
"sha256": "579cfad04891dc4b723a8d2bf16195e6bb17a07a126ec3367104e3132b53786b"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "3112bf8d76533e93faa97570c4746760",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 4278667,
"upload_time": "2024-01-20T13:33:45",
"upload_time_iso_8601": "2024-01-20T13:33:45.634553Z",
"url": "https://files.pythonhosted.org/packages/1d/89/d4856e12e3d070fa1ae4a8cdc32b04ca8680a21e2c14f37aa7a6590823ce/srcml_caller-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "397d8cfb758c4f7091c8aeaab1bb578c9db94bfb0626c79d4062020425b346ee",
"md5": "7fccb51d4c1a8fe4f0282b4dc8b90c5f",
"sha256": "1b35dc0c8e9a11edb348e617524628fcf0b3c28b9e5577ed3b4aa183f79d1785"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp312-cp312-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "7fccb51d4c1a8fe4f0282b4dc8b90c5f",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 4779134,
"upload_time": "2024-01-20T13:33:47",
"upload_time_iso_8601": "2024-01-20T13:33:47.430942Z",
"url": "https://files.pythonhosted.org/packages/39/7d/8cfb758c4f7091c8aeaab1bb578c9db94bfb0626c79d4062020425b346ee/srcml_caller-0.3.0-cp312-cp312-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5d435c85746d6136150deccedefb1fd93facb4aca49d1728f19c36cfd68d74b6",
"md5": "7aae82a7a5afec9edfca41d3499e6cc3",
"sha256": "38e5e1845c9299280cd70c9afe48150b22f0af7b3a4bc597dd8b28a7eec4f322"
},
"downloads": -1,
"filename": "srcml_caller-0.3.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "7aae82a7a5afec9edfca41d3499e6cc3",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.6",
"size": 5966525,
"upload_time": "2024-01-20T13:33:49",
"upload_time_iso_8601": "2024-01-20T13:33:49.170025Z",
"url": "https://files.pythonhosted.org/packages/5d/43/5c85746d6136150deccedefb1fd93facb4aca49d1728f19c36cfd68d74b6/srcml_caller-0.3.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "51a55b79424e1055aa84148e7b32ca7bf9dcf2aa0dfb06e1133e15f346ab49d6",
"md5": "e558c3884624fa741fd5beff8d307fd9",
"sha256": "2c3ed9bd540b50b2d41a92fc3f3b8fbcc81a1194f0e73d3f40d085aa8ac8da9f"
},
"downloads": -1,
"filename": "srcml-caller-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "e558c3884624fa741fd5beff8d307fd9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 603696,
"upload_time": "2024-01-20T13:33:50",
"upload_time_iso_8601": "2024-01-20T13:33:50.831476Z",
"url": "https://files.pythonhosted.org/packages/51/a5/5b79424e1055aa84148e7b32ca7bf9dcf2aa0dfb06e1133e15f346ab49d6/srcml-caller-0.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-20 13:33:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pthom",
"github_project": "srcml_caller",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "srcml-caller"
}