gibson-cli 0.5.6__tar.gz → 0.5.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. {gibson_cli-0.5.6/gibson_cli.egg-info → gibson_cli-0.5.8}/PKG-INFO +1 -1
  2. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/api/Cli.py +1 -0
  3. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/new/Project.py +3 -1
  4. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Rewrite.py +1 -0
  5. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Colors.py +4 -0
  6. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Configuration.py +10 -1
  7. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Conversation.py +14 -0
  8. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/tests/test_display_WorkspaceHeader.py +1 -1
  9. {gibson_cli-0.5.6 → gibson_cli-0.5.8/gibson_cli.egg-info}/PKG-INFO +1 -1
  10. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/pyproject.toml +1 -1
  11. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/.gitignore +0 -0
  12. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/.pre-commit-config.yaml +0 -0
  13. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/README.md +0 -0
  14. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/bin/build.sh +0 -0
  15. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/bin/release.sh +0 -0
  16. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/api/BaseApi.py +0 -0
  17. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/api/ProjectApi.py +0 -0
  18. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/bin/gibson.py +0 -0
  19. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/BaseCommand.py +0 -0
  20. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Build.py +0 -0
  21. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Conf.py +0 -0
  22. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Count.py +0 -0
  23. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Dev.py +0 -0
  24. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Forget.py +0 -0
  25. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Help.py +0 -0
  26. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Import.py +0 -0
  27. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Merge.py +0 -0
  28. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Model.py +0 -0
  29. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Modify.py +0 -0
  30. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/OpenApi.py +0 -0
  31. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Question.py +0 -0
  32. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Remove.py +0 -0
  33. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Schema.py +0 -0
  34. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Show.py +0 -0
  35. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Test.py +0 -0
  36. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Tree.py +0 -0
  37. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/Version.py +0 -0
  38. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/WarGames.py +0 -0
  39. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/auth/Auth.py +0 -0
  40. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/auth/Login.py +0 -0
  41. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/auth/Logout.py +0 -0
  42. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/code/Code.py +0 -0
  43. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/code/Entity.py +0 -0
  44. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/list/Entities.py +0 -0
  45. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/list/List.py +0 -0
  46. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/list/Projects.py +0 -0
  47. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/new/Module.py +0 -0
  48. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/new/New.py +0 -0
  49. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rename/Entity.py +0 -0
  50. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rename/Rename.py +0 -0
  51. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Api.py +0 -0
  52. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Base.py +0 -0
  53. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Models.py +0 -0
  54. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Schemas.py +0 -0
  55. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/rewrite/Tests.py +0 -0
  56. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/tests/test_command_BaseCommand.py +0 -0
  57. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/command/tests/test_command_Conf.py +0 -0
  58. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Api.py +0 -0
  59. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Code.py +0 -0
  60. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Custom.py +0 -0
  61. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Datastore.py +0 -0
  62. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Dependencies.py +0 -0
  63. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Dev.py +0 -0
  64. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Frameworks.py +0 -0
  65. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Modeler.py +0 -0
  66. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Paths.py +0 -0
  67. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Platform.py +0 -0
  68. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Project.py +0 -0
  69. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/Version.py +0 -0
  70. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/dev/Api.py +0 -0
  71. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/dev/Base.py +0 -0
  72. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/dev/Model.py +0 -0
  73. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/dev/Schema.py +0 -0
  74. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/tests/test_conf_Dependencies.py +0 -0
  75. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/conf/tests/test_conf_Platform.py +0 -0
  76. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/CommandRouter.py +0 -0
  77. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Completions.py +0 -0
  78. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Env.py +0 -0
  79. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/Memory.py +0 -0
  80. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/PythonPath.py +0 -0
  81. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/TimeKeeper.py +0 -0
  82. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/core/utils.py +0 -0
  83. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/data/bash-completion.tmpl +0 -0
  84. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/data/default-ref-table.tmpl +0 -0
  85. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/data/default-table.tmpl +0 -0
  86. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/db/TableExceptions.py +0 -0
  87. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/db/tests/test_db_TableExceptions.py +0 -0
  88. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/dev/Dev.py +0 -0
  89. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/Header.py +0 -0
  90. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/WorkspaceFooter.py +0 -0
  91. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/WorkspaceHeader.py +0 -0
  92. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/tests/test_display_Header.py +0 -0
  93. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/display/tests/test_display_WorkspaceFooter.py +0 -0
  94. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/lang/Python.py +0 -0
  95. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/lang/tests/test_lang_Python.py +0 -0
  96. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/auth/Server.py +0 -0
  97. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/DataDictionary.py +0 -0
  98. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/EntityKeys.py +0 -0
  99. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/Manager.py +0 -0
  100. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/tests/test_code_context_schema_DataDictionary.py +0 -0
  101. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/tests/test_code_context_schema_EntityKeys.py +0 -0
  102. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/context/schema/tests/test_code_context_schema_Manager.py +0 -0
  103. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/Authenticator.py +0 -0
  104. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/BaseCustomization.py +0 -0
  105. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/CustomizationManager.py +0 -0
  106. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/Index.py +0 -0
  107. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/tests/test_code_customization_Authenticator.py +0 -0
  108. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/services/code/customization/tests/test_code_customization_BaseCustomization.py +0 -0
  109. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/Entity.py +0 -0
  110. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/constraints/ReferenceConstraint.py +0 -0
  111. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/ForeignKey.py +0 -0
  112. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/Index.py +0 -0
  113. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/IndexAttribute.py +0 -0
  114. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/tests/test_ForeignKey.py +0 -0
  115. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/tests/test_Index.py +0 -0
  116. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/keys/tests/test_IndexAttribute.py +0 -0
  117. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/testing.py +0 -0
  118. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/structure/tests/test_Entity.py +0 -0
  119. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/tests/test_Env.py +0 -0
  120. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/tests/test_Memory.py +0 -0
  121. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson/tests/test_utils.py +0 -0
  122. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson_cli.egg-info/SOURCES.txt +0 -0
  123. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson_cli.egg-info/dependency_links.txt +0 -0
  124. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson_cli.egg-info/entry_points.txt +0 -0
  125. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/gibson_cli.egg-info/top_level.txt +0 -0
  126. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/requirements.txt +0 -0
  127. {gibson_cli-0.5.6 → gibson_cli-0.5.8}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gibson-cli
3
- Version: 0.5.6
3
+ Version: 0.5.8
4
4
  Summary: Gibson Command Line Interface
5
5
  Author-email: GibsonAI <noc@gibsonai.com>
6
6
  Project-URL: Homepage, https://gibsonai.com/
@@ -11,6 +11,7 @@ class Cli(BaseApi):
11
11
  self.configuration = configuration
12
12
  self.configuration.require_login()
13
13
  self.configuration.require_project()
14
+ self.configuration.require_project_key()
14
15
 
15
16
  def code_api(self):
16
17
  return self.post(
@@ -1,7 +1,7 @@
1
1
  from gibson.command.BaseCommand import BaseCommand
2
2
 
3
3
 
4
- class Project(BaseCommand):
4
+ class NewProject(BaseCommand):
5
5
  def execute(self):
6
6
  self.conversation.new_project(self.configuration)
7
7
  project_name = self.conversation.prompt_project()
@@ -13,5 +13,7 @@ class Project(BaseCommand):
13
13
 
14
14
  self.configuration.set_project_env(project_name)
15
15
  self.configuration.append_project_to_conf(project_name, project_description)
16
+ self.configuration.setup_project()
17
+ self.configuration.create_project_memory()
16
18
 
17
19
  self.conversation.configure_new_project(self.configuration)
@@ -38,6 +38,7 @@ class Rewrite(BaseCommand):
38
38
 
39
39
  def write(self, argument=None):
40
40
  self.configuration.require_project()
41
+ self.configuration.require_project_key()
41
42
 
42
43
  if len(self.memory.recall_merged()) == 0:
43
44
  self.conversation.cant_no_entities(self.configuration.project.name)
@@ -74,3 +74,7 @@ def hint(text):
74
74
 
75
75
  def project(text):
76
76
  return colorize(text, Color.BOLD)
77
+
78
+
79
+ def link(text):
80
+ return colorize(colorize(text, Color.BLUE), Color.UNDERLINE)
@@ -301,6 +301,8 @@ class Configuration:
301
301
  self.conversation.pause()
302
302
 
303
303
  section = self.append_project_to_conf(project_name, project_description)
304
+ self.set_project_env(project_name)
305
+ self.setup_project()
304
306
  self.create_project_memory()
305
307
 
306
308
  self.conversation.message_configuration_added(self.paths.config, section)
@@ -365,6 +367,13 @@ class Configuration:
365
367
 
366
368
  return self
367
369
 
370
+ def require_project_key(self):
371
+ if not self.project.api.key or self.project.api.key == "FIXME":
372
+ self.conversation.project_api_key_not_set(self.app_domain())
373
+ exit(1)
374
+
375
+ return self
376
+
368
377
  def set_auth_tokens(self, access_token, refresh_token):
369
378
  try:
370
379
  os.mkdir(self.paths.auth)
@@ -397,7 +406,7 @@ class Configuration:
397
406
  config = list(self.settings.values())[0]
398
407
  self.project = Project()
399
408
  self.project.name = list(self.settings.keys())[0]
400
- else:
409
+ elif self.settings is not None:
401
410
  gibsonai_project = os.environ.get("GIBSONAI_PROJECT")
402
411
  if gibsonai_project is None:
403
412
  # TODO: traverse fs and attempt to find a .gibsonai/config file to use
@@ -213,6 +213,20 @@ class Conversation:
213
213
  self.type(f'\nA project named "{project_name}" already exists.\n')
214
214
  self.newline()
215
215
 
216
+ def project_api_key_not_set(self, domain):
217
+ self.type(
218
+ f"\nYou have not set the API key for your project. Please set the API key by executing:\n"
219
+ )
220
+ self.newline()
221
+ self.type(
222
+ f"{Colors.command('gibson')} {Colors.subcommand('conf')} {Colors.argument('api::key')} {Colors.input('[API key]')}\n"
223
+ )
224
+ self.newline()
225
+ self.type(
226
+ f"If you don't have an API key, you can get one by creating a new project at {Colors.link(domain + '/chat')}\n"
227
+ )
228
+ self.newline()
229
+
216
230
  def prompt_description(self, project_name):
217
231
  while True:
218
232
  self.type(f"Tell me about {project_name}. Don't be shy > ")
@@ -3,6 +3,6 @@ from gibson.display.WorkspaceHeader import WorkspaceHeader
3
3
 
4
4
  def test_render():
5
5
  assert WorkspaceHeader().render("abc def ghi") == (
6
- """Workspace abc def ghi [CONTEXT LOADED]
6
+ """Project abc def ghi [PAIR PROGRAMMER]
7
7
  ==============================================================================="""
8
8
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gibson-cli
3
- Version: 0.5.6
3
+ Version: 0.5.8
4
4
  Summary: Gibson Command Line Interface
5
5
  Author-email: GibsonAI <noc@gibsonai.com>
6
6
  Project-URL: Homepage, https://gibsonai.com/
@@ -14,7 +14,7 @@ classifiers = [
14
14
  "Intended Audience :: Developers",
15
15
  "Programming Language :: Python :: 3.9",
16
16
  ]
17
- version = "0.5.6"
17
+ version = "0.5.8"
18
18
 
19
19
  [tool.setuptools.packages.find]
20
20
  where = ["."]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes