gibson-cli 0.5.0__tar.gz → 0.5.2__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 (123) hide show
  1. {gibson_cli-0.5.0/gibson_cli.egg-info → gibson_cli-0.5.2}/PKG-INFO +2 -1
  2. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/README.md +1 -0
  3. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/api/Cli.py +1 -0
  4. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Help.py +1 -2
  5. gibson_cli-0.5.2/gibson/command/new/Module.py +44 -0
  6. gibson_cli-0.5.2/gibson/command/new/New.py +32 -0
  7. gibson_cli-0.5.0/gibson/command/New.py → gibson_cli-0.5.2/gibson/command/new/Project.py +1 -19
  8. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/CommandRouter.py +1 -4
  9. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Conversation.py +11 -3
  10. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/data/bash-completion.tmpl +2 -5
  11. {gibson_cli-0.5.0 → gibson_cli-0.5.2/gibson_cli.egg-info}/PKG-INFO +2 -1
  12. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson_cli.egg-info/SOURCES.txt +3 -2
  13. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/pyproject.toml +1 -1
  14. gibson_cli-0.5.0/gibson/command/Module.py +0 -40
  15. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/.gitignore +0 -0
  16. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/.pre-commit-config.yaml +0 -0
  17. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/bin/build.sh +0 -0
  18. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/bin/release.sh +0 -0
  19. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/api/BaseApi.py +0 -0
  20. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/bin/gibson.py +0 -0
  21. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/BaseCommand.py +0 -0
  22. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Build.py +0 -0
  23. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Code.py +0 -0
  24. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Conf.py +0 -0
  25. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Count.py +0 -0
  26. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Dev.py +0 -0
  27. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Forget.py +0 -0
  28. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Import.py +0 -0
  29. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/List.py +0 -0
  30. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Merge.py +0 -0
  31. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Model.py +0 -0
  32. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Modify.py +0 -0
  33. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/OpenApi.py +0 -0
  34. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Question.py +0 -0
  35. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Remove.py +0 -0
  36. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Rename.py +0 -0
  37. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Schema.py +0 -0
  38. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Show.py +0 -0
  39. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Test.py +0 -0
  40. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Tree.py +0 -0
  41. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/Version.py +0 -0
  42. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/WarGames.py +0 -0
  43. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/auth/Auth.py +0 -0
  44. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/auth/Login.py +0 -0
  45. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/auth/Logout.py +0 -0
  46. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Api.py +0 -0
  47. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Base.py +0 -0
  48. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Models.py +0 -0
  49. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Rewrite.py +0 -0
  50. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Schemas.py +0 -0
  51. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/rewrite/Tests.py +0 -0
  52. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/tests/test_command_BaseCommand.py +0 -0
  53. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/command/tests/test_command_Conf.py +0 -0
  54. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Api.py +0 -0
  55. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Code.py +0 -0
  56. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Custom.py +0 -0
  57. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Datastore.py +0 -0
  58. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Dependencies.py +0 -0
  59. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Dev.py +0 -0
  60. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Frameworks.py +0 -0
  61. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Modeler.py +0 -0
  62. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Paths.py +0 -0
  63. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Platform.py +0 -0
  64. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Project.py +0 -0
  65. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/Version.py +0 -0
  66. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/dev/Api.py +0 -0
  67. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/dev/Base.py +0 -0
  68. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/dev/Model.py +0 -0
  69. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/dev/Schema.py +0 -0
  70. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/tests/test_conf_Dependencies.py +0 -0
  71. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/conf/tests/test_conf_Platform.py +0 -0
  72. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Colors.py +0 -0
  73. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Completions.py +0 -0
  74. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Configuration.py +0 -0
  75. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Env.py +0 -0
  76. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/Memory.py +0 -0
  77. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/PythonPath.py +0 -0
  78. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/TimeKeeper.py +0 -0
  79. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/core/utils.py +0 -0
  80. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/data/default-ref-table.tmpl +0 -0
  81. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/data/default-table.tmpl +0 -0
  82. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/db/TableExceptions.py +0 -0
  83. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/db/tests/test_db_TableExceptions.py +0 -0
  84. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/dev/Dev.py +0 -0
  85. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/Header.py +0 -0
  86. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/WorkspaceFooter.py +0 -0
  87. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/WorkspaceHeader.py +0 -0
  88. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/tests/test_display_Header.py +0 -0
  89. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/tests/test_display_WorkspaceFooter.py +0 -0
  90. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/display/tests/test_display_WorkspaceHeader.py +0 -0
  91. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/lang/Python.py +0 -0
  92. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/lang/tests/test_lang_Python.py +0 -0
  93. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/auth/Server.py +0 -0
  94. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/DataDictionary.py +0 -0
  95. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/EntityKeys.py +0 -0
  96. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/Manager.py +0 -0
  97. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/tests/test_code_context_schema_DataDictionary.py +0 -0
  98. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/tests/test_code_context_schema_EntityKeys.py +0 -0
  99. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/context/schema/tests/test_code_context_schema_Manager.py +0 -0
  100. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/Authenticator.py +0 -0
  101. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/BaseCustomization.py +0 -0
  102. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/CustomizationManager.py +0 -0
  103. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/Index.py +0 -0
  104. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/tests/test_code_customization_Authenticator.py +0 -0
  105. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/services/code/customization/tests/test_code_customization_BaseCustomization.py +0 -0
  106. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/Entity.py +0 -0
  107. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/constraints/ReferenceConstraint.py +0 -0
  108. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/ForeignKey.py +0 -0
  109. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/Index.py +0 -0
  110. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/IndexAttribute.py +0 -0
  111. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/tests/test_ForeignKey.py +0 -0
  112. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/tests/test_Index.py +0 -0
  113. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/keys/tests/test_IndexAttribute.py +0 -0
  114. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/testing.py +0 -0
  115. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/structure/tests/test_Entity.py +0 -0
  116. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/tests/test_Env.py +0 -0
  117. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/tests/test_Memory.py +0 -0
  118. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson/tests/test_utils.py +0 -0
  119. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson_cli.egg-info/dependency_links.txt +0 -0
  120. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson_cli.egg-info/entry_points.txt +0 -0
  121. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/gibson_cli.egg-info/top_level.txt +0 -0
  122. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/requirements.txt +0 -0
  123. {gibson_cli-0.5.0 → gibson_cli-0.5.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gibson-cli
3
- Version: 0.5.0
3
+ Version: 0.5.2
4
4
  Summary: Gibson Command Line Interface
5
5
  Author-email: GibsonAI <noc@gibsonai.com>
6
6
  Project-URL: Homepage, https://gibsonai.com/
@@ -169,6 +169,7 @@ More languages and frameworks are in active development. If you do not see a ver
169
169
 
170
170
  ### Configuring Your Datastore
171
171
 
172
+ `gibson conf datastore::type mysql`
172
173
  `gibson conf datastore::uri mysql+pymysql://[user]:[password]@[host]/[database name]`
173
174
 
174
175
  Note: Gibson currently only supports MySQL. Let us know if you need something else.
@@ -152,6 +152,7 @@ More languages and frameworks are in active development. If you do not see a ver
152
152
 
153
153
  ### Configuring Your Datastore
154
154
 
155
+ `gibson conf datastore::type mysql`
155
156
  `gibson conf datastore::uri mysql+pymysql://[user]:[password]@[host]/[database name]`
156
157
 
157
158
  Note: Gibson currently only supports MySQL. Let us know if you need something else.
@@ -111,6 +111,7 @@ class Cli(BaseApi):
111
111
  r = self.put(
112
112
  "modeler/entity/modify",
113
113
  {
114
+ "datastore": {"type": self.configuration.project.datastore.type},
114
115
  "entity": entity,
115
116
  "modeler": {"version": modeler_version},
116
117
  "modifications": modifications,
@@ -56,8 +56,7 @@ class Help(BaseCommand):
56
56
  "description": "change an entity using natural language",
57
57
  "memory": "last > stored",
58
58
  },
59
- "module": {"description": "create a new module", "memory": "last"},
60
- "new": {"description": "start something new", "memory": None},
59
+ "new": {"description": "create something new", "memory": None},
61
60
  "openapi": {"description": "build from an OpenAPI spec", "memory": "last"},
62
61
  "remove": {
63
62
  "description": "remove an entity from the project",
@@ -0,0 +1,44 @@
1
+ from gibson.api.Cli import Cli
2
+ from gibson.command.BaseCommand import BaseCommand
3
+ from gibson.core.Colors import argument, arguments, command, hint, subcommand
4
+
5
+
6
+ class Module(BaseCommand):
7
+ def execute(self):
8
+ self.configuration.ensure_project()
9
+ module_name = self.conversation.prompt_module()
10
+
11
+ self.conversation.newline()
12
+ self.conversation.type(f"Generating new module: {argument(module_name)}\n")
13
+
14
+ cli = Cli(self.configuration)
15
+ response = cli.modeler_module(
16
+ self.configuration.project.modeler.version,
17
+ self.configuration.project.description,
18
+ module_name,
19
+ )
20
+
21
+ self.memory.remember_last(response)
22
+
23
+ self.conversation.newline()
24
+ self.conversation.type(
25
+ f"The following entities were created in your {argument('last')} memory:\n"
26
+ )
27
+
28
+ for entity in response["entities"]:
29
+ self.conversation.newline()
30
+ print(entity["definition"])
31
+
32
+ self.conversation.newline()
33
+ self.conversation.type(f"If you want to persist these new entities run:\n")
34
+ self.conversation.type(
35
+ f"{command(self.configuration.command)} {subcommand('merge')}\n"
36
+ )
37
+
38
+ self.conversation.newline()
39
+ self.conversation.type(
40
+ f"Afterwards, you can modify any of these entities by running:\n"
41
+ )
42
+ self.conversation.type(
43
+ f"{command(self.configuration.command)} {subcommand('modify')} {argument('[entity name]')} {input('[instructions]')}\n"
44
+ )
@@ -0,0 +1,32 @@
1
+ import sys
2
+
3
+ from gibson.command.BaseCommand import BaseCommand
4
+ from gibson.command.new.Module import Module
5
+ from gibson.command.new.Project import Project
6
+ from gibson.core.Colors import argument, arguments, command, hint, subcommand
7
+
8
+
9
+ class New(BaseCommand):
10
+ def execute(self):
11
+ if len(sys.argv) != 3:
12
+ self.usage()
13
+ elif sys.argv[2] == "project":
14
+ Project(self.configuration).execute()
15
+ elif sys.argv[2] == "module":
16
+ Module(self.configuration).execute()
17
+ else:
18
+ self.usage()
19
+
20
+ def usage(self):
21
+ self.configuration.display_project()
22
+ self.conversation.type(
23
+ f"usage: {command(self.configuration.command)} {subcommand('new')} {arguments(['project', 'module'])} {hint('create something new')}\n"
24
+ )
25
+ self.conversation.type(
26
+ f" {command(self.configuration.command)} {subcommand('new')} {argument('project')} {hint('create a new project')}\n"
27
+ )
28
+ self.conversation.type(
29
+ f" {command(self.configuration.command)} {subcommand('new')} {argument('module')} {hint('create a new module')}\n"
30
+ )
31
+ self.conversation.newline()
32
+ exit(1)
@@ -1,18 +1,8 @@
1
- import sys
2
-
3
- from gibson.api.Cli import Cli
4
1
  from gibson.command.BaseCommand import BaseCommand
5
- from gibson.core.Colors import argument, command, hint, subcommand
6
2
 
7
3
 
8
- class New(BaseCommand):
4
+ class Project(BaseCommand):
9
5
  def execute(self):
10
- if len(sys.argv) != 3:
11
- self.usage()
12
-
13
- if sys.argv[2] != "project":
14
- self.usage()
15
-
16
6
  self.conversation.new_project(self.configuration)
17
7
  project_name = self.conversation.prompt_project()
18
8
  if project_name in self.configuration.settings:
@@ -25,11 +15,3 @@ class New(BaseCommand):
25
15
  self.configuration.append_project_to_conf(project_name, project_description)
26
16
 
27
17
  self.conversation.configure_new_project(self.configuration)
28
-
29
- def usage(self):
30
- self.configuration.display_project()
31
- self.conversation.type(
32
- f"usage: {command(self.configuration.command)} {subcommand('new')} {argument('project')} {hint('create a new project')}\n"
33
- )
34
- self.conversation.newline()
35
- exit(1)
@@ -13,8 +13,7 @@ from gibson.command.List import List
13
13
  from gibson.command.Merge import Merge
14
14
  from gibson.command.Model import Model
15
15
  from gibson.command.Modify import Modify
16
- from gibson.command.Module import Module
17
- from gibson.command.New import New
16
+ from gibson.command.new.New import New
18
17
  from gibson.command.OpenApi import OpenApi
19
18
  from gibson.command.Question import Question
20
19
  from gibson.command.Remove import Remove
@@ -75,8 +74,6 @@ class CommandRouter:
75
74
  command = Model(self.configuration)
76
75
  elif sys.argv[1] == "modify":
77
76
  command = Modify(self.configuration)
78
- elif sys.argv[1] == "module":
79
- command = Module(self.configuration)
80
77
  elif sys.argv[1] == "new":
81
78
  command = New(self.configuration)
82
79
  elif sys.argv[1] == "openapi":
@@ -55,8 +55,9 @@ class Conversation:
55
55
  self.type(
56
56
  "\nI am so excited that we're building something new together. "
57
57
  + "You probably need\nto execute:\n\n"
58
- + " gibson conf api::key [API key]\n"
59
- + " gibson conf datastore::uri [datastore URI]\n\n"
58
+ + " gibson conf api::key [API key]\n"
59
+ + " gibson conf datastore::type [datastore type]\n"
60
+ + " gibson conf datastore::uri [datastore URI]\n\n"
60
61
  + "To finish setting things up.\n"
61
62
  )
62
63
  self.newline()
@@ -202,7 +203,7 @@ class Conversation:
202
203
  time.sleep(1)
203
204
 
204
205
  def project_already_exists(self, project_name):
205
- self.type(f'\nA project called "{project_name}" already exists.\n')
206
+ self.type(f'\nA project named "{project_name}" already exists.\n')
206
207
  self.newline()
207
208
 
208
209
  def prompt_description(self, project_name):
@@ -212,6 +213,13 @@ class Conversation:
212
213
  if len(user_prompt) > 0:
213
214
  return user_prompt
214
215
 
216
+ def prompt_module(self):
217
+ while True:
218
+ self.type("Module Name [a-z0-9] > ")
219
+ user_prompt = input("")
220
+ if re.search("^[a-z0-9]+$", user_prompt):
221
+ return user_prompt
222
+
215
223
  def prompt_project(self):
216
224
  while True:
217
225
  self.type("Project Name [A-Za-z0-9_-] > ")
@@ -25,7 +25,6 @@ __gibson_commands_and_options() {
25
25
  code
26
26
  conf
27
27
  count
28
- create
29
28
  dev
30
29
  forget
31
30
  help
@@ -36,8 +35,6 @@ __gibson_commands_and_options() {
36
35
  modify
37
36
  new
38
37
  openapi
39
- project
40
- question
41
38
  remove
42
39
  rename
43
40
  rewrite
@@ -65,12 +62,12 @@ __gibson_completions() {
65
62
  gibson) __gibson_commands_and_options ;;
66
63
  auth) __gibson_generate_completion "login logout" ;;
67
64
  code) __gibson_generate_completion "entity" ;;
68
- conf) __gibson_generate_completion "api::key code::custom::model::class code::custom::path datastore::uri" ;;
65
+ conf) __gibson_generate_completion "api::key code::custom::model::class code::custom::path datastore::uri datastore::type" ;;
69
66
  dev) __gibson_generate_completion "on off" ;;
70
67
  forget) __gibson_generate_completion "stored last all" ;;
71
68
  import) __gibson_generate_completion "api datastore" ;;
72
69
  list) __gibson_generate_completion "entities" ;;
73
- new) __gibson_generate_completion "project" ;;
70
+ new) __gibson_generate_completion "project module" ;;
74
71
  rewrite) __gibson_generate_completion "api base models schemas tests" ;;
75
72
  # create) __gibson_generate_completion "project module entity" ;;
76
73
  # project) __gibson_generate_completion "create delete list" ;;
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gibson-cli
3
- Version: 0.5.0
3
+ Version: 0.5.2
4
4
  Summary: Gibson Command Line Interface
5
5
  Author-email: GibsonAI <noc@gibsonai.com>
6
6
  Project-URL: Homepage, https://gibsonai.com/
@@ -169,6 +169,7 @@ More languages and frameworks are in active development. If you do not see a ver
169
169
 
170
170
  ### Configuring Your Datastore
171
171
 
172
+ `gibson conf datastore::type mysql`
172
173
  `gibson conf datastore::uri mysql+pymysql://[user]:[password]@[host]/[database name]`
173
174
 
174
175
  Note: Gibson currently only supports MySQL. Let us know if you need something else.
@@ -21,8 +21,6 @@ gibson/command/List.py
21
21
  gibson/command/Merge.py
22
22
  gibson/command/Model.py
23
23
  gibson/command/Modify.py
24
- gibson/command/Module.py
25
- gibson/command/New.py
26
24
  gibson/command/OpenApi.py
27
25
  gibson/command/Question.py
28
26
  gibson/command/Remove.py
@@ -36,6 +34,9 @@ gibson/command/WarGames.py
36
34
  gibson/command/auth/Auth.py
37
35
  gibson/command/auth/Login.py
38
36
  gibson/command/auth/Logout.py
37
+ gibson/command/new/Module.py
38
+ gibson/command/new/New.py
39
+ gibson/command/new/Project.py
39
40
  gibson/command/rewrite/Api.py
40
41
  gibson/command/rewrite/Base.py
41
42
  gibson/command/rewrite/Models.py
@@ -14,7 +14,7 @@ classifiers = [
14
14
  "Intended Audience :: Developers",
15
15
  "Programming Language :: Python :: 3.9",
16
16
  ]
17
- version = "0.5.0"
17
+ version = "0.5.2"
18
18
 
19
19
  [tool.setuptools.packages.find]
20
20
  where = ["."]
@@ -1,40 +0,0 @@
1
- import re
2
- import sys
3
-
4
- from gibson.api.Cli import Cli
5
- from gibson.command.BaseCommand import BaseCommand
6
- from gibson.core.Colors import command, hint, input, subcommand
7
-
8
-
9
- class Module(BaseCommand):
10
- def execute(self):
11
- if len(sys.argv) != 3:
12
- self.usage()
13
-
14
- self.configuration.ensure_project()
15
- if not re.search("^[a-z0-9]+$", sys.argv[2]):
16
- self.configuration.display_project()
17
- self.conversation.type("[module name] should only contain ^[a-z0-9]+$.\n\n")
18
- return True
19
-
20
- cli = Cli(self.configuration)
21
-
22
- response = cli.modeler_module(
23
- self.configuration.project.modeler.version,
24
- self.configuration.project.description,
25
- sys.argv[2],
26
- )
27
-
28
- self.memory.remember_last(response)
29
-
30
- for entity in response["entities"]:
31
- print(entity["definition"])
32
- self.conversation.newline()
33
-
34
- def usage(self):
35
- self.configuration.display_project()
36
- self.conversation.type(
37
- f"usage: {command(self.configuration.command)} {subcommand('module')} {input('[module name]')} {hint('create a new module for this project')}\n"
38
- )
39
- self.conversation.newline()
40
- exit(1)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes