We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
[request] stb/20210818
### Package Details
  * Package Name/Version: **stb/20210818**

There has been +1800 commits added to stb since Feb 2 of 2020, I greatly suggest updating it.

The above mentioned version is newly released by the upstream project and not yet available as a recipe. Please add this version.


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `recipes/stb/all/conanfile.py`
Content:
```
1 from conans import ConanFile, tools
2 import os
3 
4 class StbConan(ConanFile):
5     name = "stb"
6     description = "single-file public domain libraries for C/C++"
7     topics = ("conan", "stb", "single-file")
8     url = "https://github.com/conan-io/conan-center-index"
9     homepage = "https://github.com/nothings/stb"
10     license = ("Unlicense", "MIT")
11     no_copy_source = True
12     _source_subfolder = "source_subfolder"
13 
14     def source(self):
15         commit = os.path.splitext(os.path.basename(self.conan_data["sources"][self.version]["url"]))[0]
16         tools.get(**self.conan_data["sources"][self.version])
17         extracted_dir = self.name + "-" + commit
18         os.rename(extracted_dir, self._source_subfolder)
19 
20     def package(self):
21         self.copy("LICENSE", src=self._source_subfolder, dst="licenses")
22         self.copy("*.h", src=self._source_subfolder, dst="include")
23         self.copy("stb_vorbis.c", src=self._source_subfolder, dst="include")
24         tools.rmdir(os.path.join(self.package_folder, "include", "tests"))
25 
26     def package_id(self):
27         self.info.header_only()
28     
29     def package_info(self):
30         self.cpp_info.defines.append('STB_TEXTEDIT_KEYTYPE=unsigned')
31
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/recipes/stb/all/conanfile.py b/recipes/stb/all/conanfile.py
--- a/recipes/stb/all/conanfile.py
+++ b/recipes/stb/all/conanfile.py
@@ -1,27 +1,53 @@
 from conans import ConanFile, tools
 import os
 
+required_conan_version = ">=1.33.0"
+
+
 class StbConan(ConanFile):
     name = "stb"
     description = "single-file public domain libraries for C/C++"
-    topics = ("conan", "stb", "single-file")
+    topics = ("stb", "single-file")
     url = "https://github.com/conan-io/conan-center-index"
     homepage = "https://github.com/nothings/stb"
     license = ("Unlicense", "MIT")
     no_copy_source = True
-    _source_subfolder = "source_subfolder"
+
+    options = {
+        "with_deprecated": [True, False]
+    }
+
+    default_options = {
+        "with_deprecated": True
+    }
+
+    @property
+    def _source_subfolder(self):
+        return "source_subfolder"
+
+    @property
+    def _version(self):
+        # HACK: Used to circumvent the incompatibility
+        #       of the format cci.YYYYMMDD in tools.Version
+        return str(self.version)[4:]
+
+    def config_options(self):
+        if tools.Version(self._version) < "20210713":
+            del self.options.with_deprecated
 
     def source(self):
-        commit = os.path.splitext(os.path.basename(self.conan_data["sources"][self.version]["url"]))[0]
-        tools.get(**self.conan_data["sources"][self.version])
-        extracted_dir = self.name + "-" + commit
-        os.rename(extracted_dir, self._source_subfolder)
+        tools.get(**self.conan_data["sources"][self.version], strip_root=True, destination=self._source_subfolder)
 
     def package(self):
         self.copy("LICENSE", src=self._source_subfolder, dst="licenses")
         self.copy("*.h", src=self._source_subfolder, dst="include")
         self.copy("stb_vorbis.c", src=self._source_subfolder, dst="include")
         tools.rmdir(os.path.join(self.package_folder, "include", "tests"))
+        if tools.Version(self._version) >= "20210713":
+            tools.rmdir(os.path.join(self.package_folder, "include", "deprecated"))
+        if self.options.get_safe("with_deprecated", False):
+            self.copy("*.h", src=os.path.join(self._source_subfolder, "deprecated"), dst="include")
+            self.copy("stb_image.c", src=os.path.join(self._source_subfolder, "deprecated"), dst="include")
 
     def package_id(self):
         self.info.header_only()

{"golden_diff": "diff --git a/recipes/stb/all/conanfile.py b/recipes/stb/all/conanfile.py\n--- a/recipes/stb/all/conanfile.py\n+++ b/recipes/stb/all/conanfile.py\n@@ -1,27 +1,53 @@\n from conans import ConanFile, tools\n import os\n \n+required_conan_version = \">=1.33.0\"\n+\n+\n class StbConan(ConanFile):\n     name = \"stb\"\n     description = \"single-file public domain libraries for C/C++\"\n-    topics = (\"conan\", \"stb\", \"single-file\")\n+    topics = (\"stb\", \"single-file\")\n     url = \"https://github.com/conan-io/conan-center-index\"\n     homepage = \"https://github.com/nothings/stb\"\n     license = (\"Unlicense\", \"MIT\")\n     no_copy_source = True\n-    _source_subfolder = \"source_subfolder\"\n+\n+    options = {\n+        \"with_deprecated\": [True, False]\n+    }\n+\n+    default_options = {\n+        \"with_deprecated\": True\n+    }\n+\n+    @property\n+    def _source_subfolder(self):\n+        return \"source_subfolder\"\n+\n+    @property\n+    def _version(self):\n+        # HACK: Used to circumvent the incompatibility\n+        #       of the format cci.YYYYMMDD in tools.Version\n+        return str(self.version)[4:]\n+\n+    def config_options(self):\n+        if tools.Version(self._version) < \"20210713\":\n+            del self.options.with_deprecated\n \n     def source(self):\n-        commit = os.path.splitext(os.path.basename(self.conan_data[\"sources\"][self.version][\"url\"]))[0]\n-        tools.get(**self.conan_data[\"sources\"][self.version])\n-        extracted_dir = self.name + \"-\" + commit\n-        os.rename(extracted_dir, self._source_subfolder)\n+        tools.get(**self.conan_data[\"sources\"][self.version], strip_root=True, destination=self._source_subfolder)\n \n     def package(self):\n         self.copy(\"LICENSE\", src=self._source_subfolder, dst=\"licenses\")\n         self.copy(\"*.h\", src=self._source_subfolder, dst=\"include\")\n         self.copy(\"stb_vorbis.c\", src=self._source_subfolder, dst=\"include\")\n         tools.rmdir(os.path.join(self.package_folder, \"include\", \"tests\"))\n+        if tools.Version(self._version) >= \"20210713\":\n+            tools.rmdir(os.path.join(self.package_folder, \"include\", \"deprecated\"))\n+        if self.options.get_safe(\"with_deprecated\", False):\n+            self.copy(\"*.h\", src=os.path.join(self._source_subfolder, \"deprecated\"), dst=\"include\")\n+            self.copy(\"stb_image.c\", src=os.path.join(self._source_subfolder, \"deprecated\"), dst=\"include\")\n \n     def package_id(self):\n         self.info.header_only()\n", "issue": "[request] stb/20210818\n### Package Details\r\n  * Package Name/Version: **stb/20210818**\r\n\r\nThere has been +1800 commits added to stb since Feb 2 of 2020, I greatly suggest updating it.\r\n\r\nThe above mentioned version is newly released by the upstream project and not yet available as a recipe. Please add this version.\r\n\n", "before_files": [{"content": "from conans import ConanFile, tools\nimport os\n\nclass StbConan(ConanFile):\n    name = \"stb\"\n    description = \"single-file public domain libraries for C/C++\"\n    topics = (\"conan\", \"stb\", \"single-file\")\n    url = \"https://github.com/conan-io/conan-center-index\"\n    homepage = \"https://github.com/nothings/stb\"\n    license = (\"Unlicense\", \"MIT\")\n    no_copy_source = True\n    _source_subfolder = \"source_subfolder\"\n\n    def source(self):\n        commit = os.path.splitext(os.path.basename(self.conan_data[\"sources\"][self.version][\"url\"]))[0]\n        tools.get(**self.conan_data[\"sources\"][self.version])\n        extracted_dir = self.name + \"-\" + commit\n        os.rename(extracted_dir, self._source_subfolder)\n\n    def package(self):\n        self.copy(\"LICENSE\", src=self._source_subfolder, dst=\"licenses\")\n        self.copy(\"*.h\", src=self._source_subfolder, dst=\"include\")\n        self.copy(\"stb_vorbis.c\", src=self._source_subfolder, dst=\"include\")\n        tools.rmdir(os.path.join(self.package_folder, \"include\", \"tests\"))\n\n    def package_id(self):\n        self.info.header_only()\n    \n    def package_info(self):\n        self.cpp_info.defines.append('STB_TEXTEDIT_KEYTYPE=unsigned')\n", "path": "recipes/stb/all/conanfile.py"}], "after_files": [{"content": "from conans import ConanFile, tools\nimport os\n\nrequired_conan_version = \">=1.33.0\"\n\n\nclass StbConan(ConanFile):\n    name = \"stb\"\n    description = \"single-file public domain libraries for C/C++\"\n    topics = (\"stb\", \"single-file\")\n    url = \"https://github.com/conan-io/conan-center-index\"\n    homepage = \"https://github.com/nothings/stb\"\n    license = (\"Unlicense\", \"MIT\")\n    no_copy_source = True\n\n    options = {\n        \"with_deprecated\": [True, False]\n    }\n\n    default_options = {\n        \"with_deprecated\": True\n    }\n\n    @property\n    def _source_subfolder(self):\n        return \"source_subfolder\"\n\n    @property\n    def _version(self):\n        # HACK: Used to circumvent the incompatibility\n        #       of the format cci.YYYYMMDD in tools.Version\n        return str(self.version)[4:]\n\n    def config_options(self):\n        if tools.Version(self._version) < \"20210713\":\n            del self.options.with_deprecated\n\n    def source(self):\n        tools.get(**self.conan_data[\"sources\"][self.version], strip_root=True, destination=self._source_subfolder)\n\n    def package(self):\n        self.copy(\"LICENSE\", src=self._source_subfolder, dst=\"licenses\")\n        self.copy(\"*.h\", src=self._source_subfolder, dst=\"include\")\n        self.copy(\"stb_vorbis.c\", src=self._source_subfolder, dst=\"include\")\n        tools.rmdir(os.path.join(self.package_folder, \"include\", \"tests\"))\n        if tools.Version(self._version) >= \"20210713\":\n            tools.rmdir(os.path.join(self.package_folder, \"include\", \"deprecated\"))\n        if self.options.get_safe(\"with_deprecated\", False):\n            self.copy(\"*.h\", src=os.path.join(self._source_subfolder, \"deprecated\"), dst=\"include\")\n            self.copy(\"stb_image.c\", src=os.path.join(self._source_subfolder, \"deprecated\"), dst=\"include\")\n\n    def package_id(self):\n        self.info.header_only()\n    \n    def package_info(self):\n        self.cpp_info.defines.append('STB_TEXTEDIT_KEYTYPE=unsigned')\n", "path": "recipes/stb/all/conanfile.py"}]}