diff options
Diffstat (limited to 'dev-python')
-rw-r--r-- | dev-python/sqlglot/Manifest | 1 | ||||
-rw-r--r-- | dev-python/sqlglot/sqlglot-22.1.1.ebuild | 121 |
2 files changed, 122 insertions, 0 deletions
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest index 4280d1b72a24..b23529af60ff 100644 --- a/dev-python/sqlglot/Manifest +++ b/dev-python/sqlglot/Manifest @@ -22,6 +22,7 @@ DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c42 DIST sqlglot-21.2.1.tar.gz 17682954 BLAKE2B 63b03ee6640c1cb88fffc04442198971add9a04afede2712fb1a55b0f77252f0b9d76a67f364d4cf6c2959bafd4690606de1be31cc173f4e04dffccb3de98713 SHA512 800348c61470f77d844e551c2536e2d74645087c6591a460eaa5bebfff78538655863c861c2c817cc543374b24b6c6334c7d1050168157ba3cb92c01d4b16fa5 DIST sqlglot-22.0.1.tar.gz 17713150 BLAKE2B ad0b4e83744afdc8f32a2127d22c13462eaa8778c56f162bcf8bf62c50abd076952fd2bac18817226bb38a10bbe557196062a092698a9df5680a7594c3cef8ef SHA512 15a3078dba7c072dd41f73dae71e36560a41de43e9493050d2e62a3e43f22583bc3879535fcee19f7f8b98c027f667ec75301ffe80d8df957b4030a98c99ebd1 DIST sqlglot-22.1.0.tar.gz 17745401 BLAKE2B 58e805a7f0d2b6c9899c931f279f124a38e1c50ec76f849b0cca00d8cbe29e01275fc5250dc00277ccb52c8b32ced276b9e70e288ed1121ab00bf20860d99d56 SHA512 af284e7d2ddc5b25f5535e9a615d1e2f9c3b0c18b80246250b1324ad626d3550d7b12cb3a02d944f765eb51d16f58c669509967873dda00c9d1da94aac05b13b +DIST sqlglot-22.1.1.tar.gz 17752039 BLAKE2B 96c152a199c989d2b5675745d1faeabd6b4ae0ffda531204eaab078d76929baaf04c23f5808a2e3b10305b1b5645657e4c55a76bf85823f481366aa08feebb3d SHA512 1584cbb92bea54808938ed7c08985bc68ef581f38479201be968364609acc106422de3abb4d75f765d20dace949485400ec149f71bbec7e34dee6e2983a77019 DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920 diff --git a/dev-python/sqlglot/sqlglot-22.1.1.ebuild b/dev-python/sqlglot/sqlglot-22.1.1.ebuild new file mode 100644 index 000000000000..058fa81df816 --- /dev/null +++ b/dev-python/sqlglot/sqlglot-22.1.1.ebuild @@ -0,0 +1,121 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} ) + +CARGO_OPTIONAL=1 +CRATES=" + autocfg@1.1.0 + bitflags@1.3.2 + cfg-if@1.0.0 + heck@0.4.1 + indoc@2.0.4 + libc@0.2.150 + lock_api@0.4.11 + memoffset@0.9.0 + once_cell@1.19.0 + parking_lot@0.12.1 + parking_lot_core@0.9.9 + proc-macro2@1.0.70 + pyo3-build-config@0.20.0 + pyo3-ffi@0.20.0 + pyo3-macros-backend@0.20.0 + pyo3-macros@0.20.0 + pyo3@0.20.0 + quote@1.0.33 + redox_syscall@0.4.1 + scopeguard@1.2.0 + smallvec@1.11.2 + syn@2.0.41 + target-lexicon@0.12.12 + unicode-ident@1.0.12 + unindent@0.2.3 + windows-targets@0.48.5 + windows_aarch64_gnullvm@0.48.5 + windows_aarch64_msvc@0.48.5 + windows_i686_gnu@0.48.5 + windows_i686_msvc@0.48.5 + windows_x86_64_gnu@0.48.5 + windows_x86_64_gnullvm@0.48.5 + windows_x86_64_msvc@0.48.5 +" + +inherit cargo distutils-r1 pypi optfeature + +DESCRIPTION="An easily customizable SQL parser and transpiler" +HOMEPAGE=" + https://sqlglot.com/ + https://github.com/tobymao/sqlglot/ + https://pypi.org/project/sqlglot/ +" +SRC_URI+=" + native-extensions? ( + ${CARGO_CRATE_URIS} + ) +" + +LICENSE="MIT" +LICENSE+=" native-extensions? (" +# Dependent crate licenses +LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016" +LICENSE+=" )" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+native-extensions" + +BDEPEND=" + native-extensions? ( + ${RUST_DEPEND} + dev-util/maturin[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so" + +src_unpack() { + cargo_src_unpack +} + +src_prepare() { + # remove fragile timing check + sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + + if use native-extensions; then + local DISTUTILS_USE_PEP517=maturin + cd sqlglotrs || die + distutils-r1_python_compile + cd - >/dev/null || die + fi +} + +python_test() { + local EPYTEST_IGNORE=( + # Tests require pyspark or duckdb which aren't in the tree. + # Pandas would be a requirement normally, but it gets ignored by proxy. + "tests/dataframe/integration/test_dataframe.py" + "tests/dataframe/integration/test_grouped_data.py" + "tests/dataframe/integration/test_session.py" + "tests/test_executor.py" + "tests/test_optimizer.py" + ) + + # make sure not to use an earlier installed version + local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0) + rm -rf sqlglotrs || die + epytest +} + +pkg_postinst() { + optfeature "simplifying timedelta expressions" dev-python/python-dateutil +} |