Repository: conan-io/conan

Issue:
conan search <reference> for recipe without binary packages
In case there is a recipe without binary packages in the local cache, `conan search` with a full reference just prints 
`There are no packages for pattern '<ref>'`
- "pattern" is wrong, should be "reference"
- Something like "Package recipe found" would be nice.
- The same command with a suffixed "*" gives more information, although the request is less specific.

This happens mainly when `conan create` fails between export and package. I was confused about the inconsistent outputs with pattern and reference.

Steps to reproduce:
```
> conan search zlib*
There are no packages matching the zlib* pattern

> conan info zlib/1.2.11@conan/stable
...downloads the recipe

> conan search zlib*
Existing package recipes:
zlib/1.2.11@conan/stable

> conan search zlib/1.2.11@conan/stable*
Existing package recipes:
zlib/1.2.11@conan/stable

> conan search zlib/1.2.11@conan/stable
There are no packages for pattern 'zlib/1.2.11@conan/stable'
```

Conan 1.0.1, Windows 
- [x] I've read the [CONTRIBUTING guide](https://raw.githubusercontent.com/conan-io/conan/develop/.github/CONTRIBUTING.md).
- [x] I've specified the Conan version, operating system version and any tool that can be relevant.
- [x] I've explained the steps to reproduce the error or the motivation/use case of the question/suggestion.




Discussion:
Agree, this output can be improved.
Thanks very much for pointing this out.

Resolving patch:
diff --git a/conans/client/printer.py b/conans/client/printer.py
--- a/conans/client/printer.py
+++ b/conans/client/printer.py
@@ -202,7 +202,11 @@ def print_search_packages(self, packages_props, reference, recipe_hash, packages
                 warn_msg = "There are no packages for reference '%s' matching the query '%s'" % (str(reference),
                                                                                                  packages_query)
             else:
-                warn_msg = "There are no packages for pattern '%s'" % str(reference)
+                warn_msg = "There are no packages for reference '%s'" % str(reference)
+
+            if recipe_hash:
+                warn_msg += ", but package recipe found."
+
             self._out.info(warn_msg)
             return
 


Test patch:
diff --git a/conans/test/integration/private_deps_test.py b/conans/test/integration/private_deps_test.py
--- a/conans/test/integration/private_deps_test.py
+++ b/conans/test/integration/private_deps_test.py
@@ -114,10 +114,10 @@ def consumer_private_test(self):
         self.client.run("remove Hello0* -p -f ")
         self.client.run("remove Hello1* -p -f")
         self.client.run("search Hello0/0.1@lasote/stable")
-        self.assertIn("There are no packages for pattern 'Hello0/0.1@lasote/stable'",
+        self.assertIn("There are no packages for reference 'Hello0/0.1@lasote/stable', but package recipe found.",
                       self.client.user_io.out)
         self.client.run("search Hello1/0.1@lasote/stable")
-        self.assertIn("There are no packages for pattern 'Hello1/0.1@lasote/stable'",
+        self.assertIn("There are no packages for reference 'Hello1/0.1@lasote/stable', but package recipe found.",
                       self.client.user_io.out)
 
         self.client.run('install . --build missing')