Skip to content

Conversation

@ehfd
Copy link
Member

@ehfd ehfd commented Feb 2, 2025

Checklist

  • Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • License file is packaged (see here for an example).
  • Source is from official source.
  • Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • If static libraries are linked in, the license of the static library is packaged.
  • Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • Build number is 0.
  • A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • When in trouble, please check our knowledge base documentation before pinging a team.

Closes #19578

@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2025

Hi! This is the staged-recipes linter and your PR looks excellent! 🚀

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found some lint.

Here's what I've got...

For recipes/tensorflow-text/meta.yaml:

  • ❌ The home item is expected in the about section.
  • ❌ The license item is expected in the about section.
  • ❌ The summary item is expected in the about section.
  • ❌ The recipe could do with some maintainers listed in the extra/recipe-maintainers section.
  • ❌ pin_compatible should be used instead of pin_subpackage for tensorflow-base because it is not a known output of this recipe: ['tensorflow-text'].
  • ❌ pin_compatible should be used instead of pin_subpackage for tensorflow-base because it is not a known output of this recipe: ['tensorflow-text'].
  • ❌ This recipe is using a compiler, which now requires adding a build dependence on {{ stdlib("c") }} as well. Note that this rule applies to each output of the recipe using a compiler. For further details, please see META: {{ stdlib("c") }} migration conda-forge.github.io#2102.

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13100468903. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13100528322. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Feb 2, 2025

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found some lint.

Here's what I've got...

For recipes/tensorflow-text/meta.yaml:

  • ❌ Non noarch packages should have python requirement without any version constraints.
  • ❌ Non noarch packages should have python requirement without any version constraints.

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13100628010. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13100856685. Examine the logs at this URL for more detail.

@ehfd
Copy link
Member Author

ehfd commented Feb 2, 2025

@conda-forge/tensorflow @Anselmoo

Could use some substantial help... on where to go from here (especially regarding Bazel https://github.com/tensorflow/text).

This is a package with millions of monthly downloads on PyPi (https://pypistats.org/packages/tensorflow-text) yet not in Conda.
This is also a key dependency and blocker to keras-hub (successor to keras-nlp).

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found some lint.

Here's what I've got...

For recipes/tensorflow-text/meta.yaml:

  • ❌ If python is a host requirement, it should be a run requirement.

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13100934111. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Feb 2, 2025

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13101023927. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I failed to even lint the recipe, probably because of a conda-smithy bug 😢. This likely indicates a problem in your meta.yaml, though. To get a traceback to help figure out what's going on, install conda-smithy and run conda smithy recipe-lint --conda-forge . from the recipe directory. You can also examine the workflow logs for more detail.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13101116245. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Feb 2, 2025

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/tensorflow-text/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipes/tensorflow-text/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.
  • ℹ️ top-level output has some malformed specs:
  • In section host: tensorflow-base *=cuda*, tensorflow-base =cpu
  • In section run: tensorflow-base *=cuda*, tensorflow-base =cpu
    Requirements spec fields should always be space-separated to avoid known issues in conda-build. For example, instead of name =version=build, use name version build.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/13622010968. Examine the logs at this URL for more detail.

Co-authored-by: Mark Harfouche <[email protected]>
Co-authored-by: Mark Harfouche <[email protected]>
@ehfd
Copy link
Member Author

ehfd commented Feb 2, 2025

Someone who could decrypt the Bazel scripts in the https://github.com/tensorflow/text repository would be instrumental.

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Feb 2, 2025

@hmaarrfk Yeah, thank you for your service here! I'll wait for someone else to pitch in or learn my way into Bazel.

lol this just subscribes me again.

Copy link
Member

@h-vetinari h-vetinari left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure I can be much help here, beyond pointing out that you can try to copy the build setup from the tensorflow feedstock. The person most intimately familiar (Uwe; "xhochy") with the whole custom toolchain setup is unfortunately not available for the next ~month or so.

bazel is just enormously hostile to the kind of things we need to do in packaging (use a toolchain from a non-default location, use system libraries, cross-compilation, etc.). I just experienced this again yesterday in conda-forge/tensorflow-feedstock#415, but the trail of bodies is long (e.g. #16888, bazelbuild/bazel#20947). I spend way too much time on conda-forge as it is, but my mind recoils at engaging with a build system that is designed to make my tasks impossible.

@ehfd
Copy link
Member Author

ehfd commented Feb 4, 2025

INFO: Analyzed target //oss_scripts/pip_package:requirements.update (74 packages loaded, 3703 targets configured).
 checking cached actions
INFO: Found 1 target...
[0 / 2] [Prepa] Expanding template oss_scripts/pip_package/_requirements.update
Target //oss_scripts/pip_package:requirements.update up-to-date:
  bazel-bin/oss_scripts/pip_package/_requirements.update
[7 / 7] checking cached actions
INFO: Elapsed time: 55.570s, Critical Path: 0.64s
INFO: 7 processes: 7 internal.
INFO: Build completed successfully, 7 total actions
INFO: Running command line: bazel-bin/oss_scripts/pip_package/requirements.update release_or_nightly/requirements.in org_tensorflow_text/oss_scripts/pip_package/requirements_lock_3_10.txt None None None //oss_scripts/pip_package:requirements.update '--resolver=backtracking' --allow-unsafe --generate-hashes --allow-unsafe --build-isolation --rebuild --upgrade
/home/conda/staged-recipes/build_artifacts/tensorflow-text_1738652198037/_build_env/share/bazel/bd11b0728c32dbf4240de4504de30432/execroot/org_tensorflow_text/bazel-out/k8-opt-ST-eff9b1c97e51/bin/oss_scripts/pip_package/requirements.update.runfiles/python_x86_64-unknown-linux-gnu/bin/python3: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory

On track, except that Hermetic Python needs to get rid of.

@ehfd
Copy link
Member Author

ehfd commented Feb 5, 2025

@hmaarrfk Was the decision from the TensorFlow feedstock to get rid of Hermetic Python, or embrace it?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Feb 5, 2025

I’m honestly not sure what hermetic python is.

I’m just trying to survive.

My guess is that conda forge already has the tooling needed to deal with what hermetic python was doing so it might be safe to delete it.

@ehfd
Copy link
Member Author

ehfd commented Mar 2, 2025

@h-vetinari @hmaarrfk
Appreciate some guidance here...

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Mar 3, 2025

My guess is that conda forge already has the tooling needed to deal with what hermetic python was doing so it might be safe to delete it.

a little followup on this.

We found that we needed to use hermetic cuda, and that we had to patch out a few things in tensorflow to get it to work.

Tensorflow gives me nightmares btw, everyday i wish i never have to use it again....

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Mar 3, 2025

Running this locally, the first thing i see is that it is trying to download the tensorflow archive.... this seems suspect...

 --copt=-DAUTOLOAD_DYNAMIC_KERNELS
Loading:
    Fetching repository @org_tensorflow; starting 5s
    Fetching https://github.com/tensorflow/tensorflow/archive/v2.17.0.zip; 44.3 MiB (46,442,141B) 4s
INFO: Repository org_tensorflow instantiated at:

this seems really suspect....

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Mar 3, 2025

Unfortunately, most of this script is simply not applicable to conda-forge

https://github.com/tensorflow/text/blob/master/oss_scripts/run_build.sh

I'm sorry to say, but you will have to go through
https://github.com/conda-forge/tensorflow-feedstock/blob/main/recipe/build.sh

in detail and see what is applicable instead of trying to decipher tensorflow's way.

It may need a combination of the two.

Hopefully this is enough guidance.

@ehfd
Copy link
Member Author

ehfd commented Mar 3, 2025

Tensorflow gives me nightmares btw, everyday i wish i never have to use it again....

Yeah, I currently have legacy code running in Keras-NLP and seriously considering to eventually migrate to PyTorch Lightning...

Anyways, great thanks for the information. @hmaarrfk

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Mar 3, 2025

Tensorflow gives me nightmares btw, everyday i wish i never have to use it again....

Yeah, I currently have legacy code running in Keras-NLP and seriously considering to eventually migrate to PyTorch Lightning...

Anyways, great thanks for the information. @hmaarrfk

If you aren’t deploying your code to others, pip might work….

@ehfd
Copy link
Member Author

ehfd commented Mar 7, 2025

@hmaarrfk I guess it's necessary to have CUDA builds if this package depends on TensorFlow during build-time?

@hmaarrfk
Copy link
Contributor

hmaarrfk commented Mar 7, 2025

Very likely.

@ehfd ehfd mentioned this pull request Jul 26, 2025
10 tasks
@stale
Copy link

stale bot commented Sep 20, 2025

Hi friend!

We really, really, really appreciate that you have taken the time to make a PR on conda-forge/staged-recipes! conda-forge only exists because people like you donate their time to build and maintain conda recipes for use by the community.

In an effort to maintain this repository and increase the signal-to-noise for open PRs, the maintainers of staged-recipes close excessively old PRs after six months. This PR will remain open for another month, and then will be closed.

If you'd like to keep it open, please comment/push and we will be happy to oblige! Note that very old PRs will likely need to be rebased on main so that they can be rebuilt with the most recent CI scripts. If you have any trouble, or we missed reviewing this PR in the first place (sorry!), feel free to ping the team using a special command in a comment on the PR to get the attention of the staged-recipes team.

Cheers and thank you for contributing to this community effort!

@stale stale bot added the stale will be closed in 30 days label Sep 20, 2025
@stale
Copy link

stale bot commented Oct 28, 2025

Hi again! About a month ago, we commented on this PR saying it would be closed in another month if it was still inactive. It has been a month and so now it is being closed. Thank you so much for making it in the first place and contributing to the community project that is conda-forge. If you'd like to reopen this PR, please feel free to do so at any time!

Cheers and have a great day!

@stale stale bot closed this Oct 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stale will be closed in 30 days

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Package request: tensorflow-text

4 participants