Releases: typedb/typedb-console
Grakn Console 2.0.0-alpha-7
New Features
- Add option to read from any replica in Cluster
We added the--any-replica
flag when opening a transaction in Cluster. When--any-replica
is set, the transaction may read from any database replica, including secondary replicas.
Bugs Fixed
Code Refactors
Other Improvements
Grakn Console 2.0.0-alpha-6
New Features
Bugs Fixed
Code Refactors
Other Improvements
Grakn Console 2.0.0-alpha-5
New Features
Bugs Fixed
Code Refactors
Other Improvements
Grakn Console 2.0.0-alpha-4
New Features
Bugs Fixed
Code Refactors
Other Improvements
-
When no databases are present, say as much on database list
Previously, runningdatabase list
with no databases present on the server gave no output and was difficult to distinguish from the console hanging or the server otherwise failing to respond. We added a more explicit response when no database is present on the server to make it clearer when this case has occurred. -
Reenable remote build caching
Speed up builds by utilizing remote caching provided by BuildBuddy.
Grakn Console 2.0.0-alpha-3
New Features
Bugs Fixed
Code Refactors
Other Improvements
Grakn Console 2.0.0-alpha-2
New Features
Bugs Fixed
Code Refactors
Other Improvements
-
Fix console warnings caused by out of date dependency
FixWARNING: An illegal reflective access operation has occurred
warning caused by an out of date version of protobuf. -
Add Grakn Cluster support
We have added Grakn Cluster support. A user can connect to a cluster of Grakn Cluster instances using the--cluster
flag:./grakn console --cluster 172.0.01:1729
-
Show the number of answers printed and the duration of a query
We added statistic information to the UI about how many answers were printed and how long did the query take. -
Improve type safety by restricting type casting
We've improved the type safety of the code by restricting type casting. To be consistent with a single pattern of performing dynamic casting, we convert all usage ofinstanceof
toisX()
andasX()
. -
Allow pasting multiline input
Allow user to paste multiline input to console and edit as one unit. -
Fix console exitting when trying to open transaction to a database that doesn't exist
We have fixed an issue that caused console to exit when trying to open transaction to a database that doesn't exist.
Grakn Console 2.0.0-alpha
Install & Run: http://dev.docs.grakn.ai/docs/running-grakn/install-and-run
New Grakn Console: powered by PicoCLI
We've also rebuilt the Grakn Console using PicoCLI, which provides much more expressive CLI utilities, allowing us to build a richer and user-friendly console environment for Grakn. This change sets up the ecosystem for us to continue extending our Grakn Console with new features in a cohesive and backwards-compatible way.
The new Grakn Console provides two levels of interaction: database-level and transaction-level interfaces. The database-level interface is the first level of interaction, i.e. first-level REPL. From one of the database-level commands, you can open a transaction to the database. This will open a transaction-level interface, i.e. second-level REPL.
Please refer to full release notes of Grakn 2.0.0-alpha to see the changes in Grakn 2.0.0.
Running Grakn Console in the terminal
Go to the directory when you have your grakn-core-all
or grakn-core-console
distribution unarchived, and run ./grakn console
cd <your_grakn_console_dir>/
./grakn console
Command line arguments
You can provide several command arguments when running console in the terminal.
--server=<address>
: Server address to which the console will connect to.-V, --version
: Print version information and exit.-h, --help
: Show help message.
Console commands
Grakn Console provides two levels of interaction: database-level commands and transaction-level commands. The database-level command is the first level of interaction, i.e. first-level REPL. From one of the database-level commands, you can open a transaction to the database. This will open a transaction-level interface, i.e. second-level REPL.
Database-level commands
database create <db>
: Create a database with name<db>
on the server. For example:> database create my-grakn-database Database 'my-grakn-database' created
database list
: List the databases on the server. For example:> database list my-grakn-database
database delete <db>
: Delete a database with name<db>
on the server. For example:> database delete my-grakn-database Database 'my-grakn-database' deleted
transaction <db> schema|data read|write
: Start a transaction to database<db>
with session typeschema
ordata
, and transaction typewrite
orread
. For example:This will then take you to the transaction-level interface, i.e. the second-level REPL.> transaction my-grakn-database schema write my-grakn-database::schema::write>
help
: Print help menuclear
: Clear console screenexit
: Exit console
Transaction-level commands
<query>
: Once you're in the transaction REPL, the terminal immediately accepts a multi-line Graql query, and will execute it when you hit enter twice. For example:my-grakn-database::schema::write> define name sub attribute, value string; person sub entity, owns name; Concepts have been defined
source <file>
: Run Graql queries in a file, which you can refer to using relative or absolute path. For example:my-grakn-database::schema::write> source ./schema.gql Concepts have been defined
commit
: Commit the transaction changes and close transaction. For example:my-grakn-database::schema::write> commit Transaction changes committed
rollback
: Will remove any uncommitted changes you've made in the transaction, while leaving transaction open. For example:my-grakn-database::schema::write> rollback Rolled back to the beginning of the transaction
close
: Close the transaction without committing changes, and takes you back to the database-level interface, i.e. first-level REPL. For example:my-grakn-database::schema::write> close Transaction closed without committing changes
help
: Print this help menuclear
: Clear console screenexit
: Exit console
Grakn Console 1.0.8
New Features
Bugs Fixed
Code Refactors
-
Utilise release-validate-deps rule instead of script.
Utilise release-validate-deps rule instead of script. -
Update RBE credential location.
Other Improvements
-
Use common 0.2.4 and bump VERSION to 1.0.8 for release.
Use newly released 0.2.4common
which released thegrakn-bin
binaries -
bump dependencies to released tag and bump VERSION.
Bump dependencies to released tag
Grakn Console 1.0.7
New Features
Bugs Fixed
Code Refactors
Other Improvements
-
fix deps for release and bump VERSION.
Fix deps for release to release tags and bump VERSION. -
Depend on testing via grakn core artifact.
Change console to depend on Grakn core artifact for testing. -
Test building with updated @graknlabs_dependencies.
Update@graknlabs_dependencies
to latest version -
Integrate building with BuildBuddy.
Migrate from RBE to BuildBuddy -
Declare most dependencies using maven() rule.
Declare most dependencies usingmaven
rule from@graknlabs_dependencies
-
Fix CI by updating client-java.
Fix CI by updating client-java -
Add deploy-console-distribution.
As part of our move away from building artefacts from other repos using bazel source (which causes subtly different artefacts to be built from the ones that were testing within that repo), we need to add deploy steps to repos that build artefacts that can be depended on.
We are adding a deploy rule to console to deploy the/console
sub-directory of the distribution, complete withlogback.xml
. -
Depend on @graknlabs_dependencies.
Console now uses dependencies that are declared ingraknlabs_dependencies
-
Add console-deps deployment to repo as archive.
Grakn core depends on console in order to create an "all" release package, however, it currently builds console from source (via bazel) which means we have two "releases" of console, one in this repo and one in thegrakn
repo, and they can have different sets of dependencies. This could cause any number of problems, not least being that tests run in this repo do not necessarily reflect the correctness of console ingrakn
. It also causes problems for us locally when using bazel to develop locally, because external workspaces imported in our own repo can leak into console unintended.
In order to fix this "artifact drift" we need to move to a "single true artifact" pattern. Currently, this artifact will only beconsole-deps
, which does not include configuration (onlylogback.xml
right now). At some point, we should move to the fullconsole
release being the distributed artifact and combined into thegrakn
"all" release.
Grakn Console 1.0.6
New Features
Bugs Fixed
Code Refactors
- Update to 1.8 dependencies.
We upgrade console to use the latest grakn core and client-java dependencies, resolving their own build issues induced by circular dependencies.
Other Improvements
-
Remove extra logback inclusion.
Starting console from April 2020 onwards resulted in verbose startup logging. This was due to an extra logback file being included in the JAR, which we remove again. -
Migrate load relative path file in and bump deps.
typedb/typedb#5043 as a part of refactoring test packages in core, we move oneend-to-end test
into console as it should not have been tested in core.
Bump dependencies of core, protocol, client-java, build-tools. Significant change includes usingvalue
instead ofdatatype
.