Skip to content

Releases: TezosTaqueria/taqueria

v0.16.0

08 Sep 22:51
Compare
Choose a tag to compare

What's Changed

  • Simple view of Sandbox state by @AlirezaHaghshenas in #1121
  • 1200 taq api for dapp jcc by @jchenche in #1224
  • Fix failing tests after TVsCE feature merge by @AlirezaHaghshenas in #1227
  • Doc for ligo taquito and toolkit by @jchenche in #1228
  • Document fix after 0.14 release by @sinapsist in #1225
  • Update originate command to select contract file by @AlirezaHaghshenas in #1231

Full Changelog: v0.14.2...v0.16.0

v0.14.4

02 Sep 23:55
76d04da
Compare
Choose a tag to compare

Full Changelog: v0.14.3...v0.14.4

What's Changed

  • Add updated deno-lock.json file by @hu3man in #1081
  • Nft scaffold initial docs by @hu3man in #1035
  • 528 help menu not aware of new tasks jcc by @jchenche in #1049
  • Display separate artifacts tree view with originate button by @MichalLytek in #1058
  • Format JSON responses from CLI as Table by @AlirezaHaghshenas in #1079
  • Task Documentation by @hu3man in #1056
  • Update Docusaurus by @hu3man in #986
  • avoid calling taq testFromVsCode before all commands by @AlirezaHaghshenas in #1096
  • Add generate types command to the GUI by @AlirezaHaghshenas in #1094
  • added logging for docker container stopping by @alexzbusko in #1097
  • Fix add & remove contract command orders in Contracts tree view by @AlirezaHaghshenas in #1093
  • Add node version check to system health check by @AlirezaHaghshenas in #1091
  • remove strange characters from jest output by @AlirezaHaghshenas in #1095
  • updated tests that use ligo contract to register them first by @alexzbusko in #989
  • updated scaffolding tests to now work with updates to scaffolds by @alexzbusko in #1032
  • fix artifacts treeView for smartpy by @AlirezaHaghshenas in #1099
  • Fix table formatting, remove bad characters for WSL by @AlirezaHaghshenas in #1108
  • Add compile and originate commands to explorer by @AlirezaHaghshenas in #1105
  • moving runners to only use 2 processes by @alexzbusko in #1100
  • chore: add workflow to delete old workflows by @GImbrailo in #1114
  • added wait after running docker stop command to ensure error in clean up isn't triggered by @alexzbusko in #1115
  • Change format of storage so that the value is a filename, which contains the actual storage value, in Michelson expression by @jchenche in #1119
  • 885 tezos client test file split by @alexzbusko in #1132
  • Improved Github Issue Templates and PR Template by @hu3man in #1141
  • Automate adding issues to projects by @hu3man in #1145
  • made version 0.3.0 for issue automation by @alexzbusko in #1152
  • Fix issue automation & add pr automation by @hu3man in #1151
  • Alex pinning issue automation by @hu3man in #1155
  • 🏗️ ➾ Improve Issues, Templates, and Automations by @hu3man in #1161
  • 🏗️ ➾ Fix issues with automations and templates by @hu3man in #1171
  • refactor(ci): automate release workflows by @GImbrailo in #1146
  • 🏗️ PR ➾ LIGO improvements part 1 (compile storage and parameter) by @jchenche in #1185
  • 🏗️ ➾ Houston add idea issue template by @hu3man in #1175
  • Update build dependency documentation by @hu3man in #1158
  • 1113 Fix contract types sub dir by @ricklove in #1140
  • 🏗️ ➾Re-enable Contract Types Plugin Publishing by @hu3man in #1184
  • Metadata Plugin - Contract & Project Metadata by @ricklove in #1045
  • 🏗️ PR ➾ Fix lig-plugin and cli-permission tests by @sinapsist in #1190
  • Fixed problem with ts-jest missing after plugin installation by @mweichert in #1202
  • refactor(ci): Only store the latest binary generated by a PR by @GImbrailo in #1205
  • Implement pin task by @ricklove in #1143
  • Metadata Plugin: Change task command to 'generate-metadata' by @ricklove in #1204
  • 🛠️ PR ➾ Add fix heading type to PR template by @hu3man in #1193
  • Add aliasing in deployment by @jchenche in #1196
  • fix(ci): fixed deploy script packages and prerelease tag by @GImbrailo in #1212

v0.12.0

03 Aug 22:33
13760fe
Compare
Choose a tag to compare

What's Changed

  • Improvements to TVsCE 02 by @AlirezaHaghshenas in #1034
  • docs: fix/update version on installation doc page by @jevonearth in #1054
  • Updates to workflows for build versions by @hu3man in #1073
  • implement a welcome UX by @AlirezaHaghshenas in #1070
  • Taqueria v0.12.0 release by @hu3man in #1076

Full Changelog: v0.10.0...v0.12.0

v0.10.0

26 Jul 22:55
2e12b16
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.8.0...v0.10.0

v0.8.0

16 Jul 04:44
4f9fab9
Compare
Choose a tag to compare

What's Changed

  • Updating tests to make sure npm package.json is available in all test projects by @alexzbusko in #899
  • Implement missing functionality in TVsCE by @AlirezaHaghshenas in #947
  • adding An to the allowlist for the CLA check by @alexzbusko in #952
  • fix: changed partition's config file to use relative path and updated e2e test accordingly by @hui-an-yang in #951
  • added test for all michelson types and have taqueria point to taquito 13.0.1 by @alexzbusko in #919
  • Refactor scaffold task to use setup script by @hu3man in #953
  • Alex refactor cli commands into separate files by @alexzbusko in #909
  • Show error for all contracts that lack storage by @AlirezaHaghshenas in #950
  • Enable all commands when config cannot be loaded by @AlirezaHaghshenas in #955
  • change extension type to workspace by @AlirezaHaghshenas in #971
  • Fixes #906, Added ability to register contracts by @mweichert in #908
  • Fixes #915, adds template construct by @mweichert in #946
  • Ipfs Pinata Plugin by @ricklove in #938
  • FIX taq runtime bug by @ricklove in #983
  • Adjust compiler plugins to use registered contracts by @mweichert in #981
  • Refactor Scaffold Task by @hu3man in #966
  • Add contract template for Archetype by @jchenche in #984
  • Call scaffold.json's postInit script when setting up scaffold by @mweichert in #993
  • refactor: remove testing from release creation workflows by @GImbrailo in #992
  • chore: add deno-lock and deno package caching by @GImbrailo in #982
  • Skip running test that uses esm modules by @mweichert in #994
  • Adjust jest plugin to return appropriate exit code by @mweichert in #995
  • Don't look for scaffold.json file in .taq folder by @mweichert in #996
  • Fix scaffold verbosity by @mweichert in #1001
  • Lock parcel to v2.6.1 by @mweichert in #1007
  • implement a GUI by @AlirezaHaghshenas in #972
  • SDK's getContracts method not honoring regex pattern by @mweichert in #1011
  • Taqueria v0.8.0 by @hu3man in #999

New Contributors

Full Changelog: v0.6.5...v0.8.0

v0.6.5

01 Jul 06:47
2f6f39c
Compare
Choose a tag to compare

Taqueria v0.6.5

Details
Release Date June 30, 2022
Release Type Minor
Release Page v0.6.5

Summary of Impactful Changes

  • The Taqueria VS Code Extension now dynamically shows and hides available tasks based on project context
  • Optional usage analytics added to the CLI
  • Added support for more plugins and supported tasks in the VS Code Extension

Bug Fixes

  • Fixed a docker image permission issue
  • Fixed the failing assertion when test project initialized
  • Fixed issue where config.json content would be trimmed

Other Improvements

  • Logging for the VS Code Extension
  • Support for provisioning stateful operations added under the hood
  • Migrated automated tests to use ghostnet

v0.4.2

08 Jun 22:14
0296b6f
Compare
Choose a tag to compare

Taqueria v0.4.2

Details
Release Date June 8, 2022
Release Type Patch
Release Page v0.4.2

Summary of Impactful Changes

  • [Bug Fix] VS Code Extension doesn't update config.json with installed plugin when installing from NPM

v0.4.0

08 Jun 19:37
866e834
Compare
Choose a tag to compare

Taqueria v0.4.0

Details
Release Date June 6, 2022
Release Type Major
Release Page v0.4.0

Summary of Impactful Changes

  • Taqueria State functionality
  • A new JS/TS library @taqueria/state to interact with Taqueria State (access data persisted to state and reference accounts by name)
  • A new plugin @taqueria/plugin-jest that allows you to test your smart contracts and dapps with Jest in creative and powerful ways
  • Implicit accounts and desired balances are declared at the root of the config.json file Note: Breaking Change!
  • Robust data integrity checks following the "parse; don't validate" practice
  • @taqueria/plugin-taquito - The originate task is now stateful and persists the contract address
  • @taqueria/plugin-tezos-client - Added support for invoking endpoints by annotation

New features

Taqueria State

Message from the Taqueria team:
We've made many under-the-hood changes to give Taqueria a wide array of capabilities when it comes to persisting the state of your project. Although they're not visible on the surface, you'll soon have the ability to provision on-chain and off-chain operations which produce outputs that persist across the project lifecycle and environments These operations can link to and depend on one-another.
Internally they are represented as a directed acyclic graph (DAG) which will ultimately provide much flexibility and powerful capabilities. We don't want to spoil this for you, but just know that we've put all the things in place to start making this visible very shortly!

Taqueria now keeps a record of the stateful tasks and operations executed, along with the values in the resulting state

In the initial implementation, @taqueria/plugin-taquito has been refactored so the taq originate task is now stateful. When run, a record is created which includes the deployed contract address

This data is stored in a new auto-generated file named development-state.json. This file is JSON encoded and is stored in the ./.taq directory of the project

Note: This file is not generated until the first time you run a supported task or operation. Currently, this will occur the first time you run taq originate in the project

Records follow the format shown below:

        "@taqueria/plugin-taquito.deploy.1654212273655": {
            "time": 1654212273655,
            "output": [
                {
                    "contract": "test.tz",
                    "address": "KT1ShFinJPuXqdAUXomKAB8t6s3q6JGjAN2G",
                    "destination": "local"
                }
            ]
        }

Note: At this time, only the originate task is supported but full support for operations and additional plugin tasks is coming soon!

The @taqueria/state Library

Included in this release is a new NPM package @taqueria/state. This is an abstraction library which provides an easy way to interact with Taqueria State

To install the library on your project, run:

taq install @taqueria/state

To use the package in your front end code or tests, you can import it into any JS or TS file:

import loadProject from "@taqueria/state"

Once imported, you can retrieve the list of originations like this:

const {getOriginations} = await loadProject()
const results = getOriginations("increment.tz")
console.log(results)

To retrieve the most recently deployed version of a contract and the address:

const [latest] = getOriginations("increment.tz")

To retrieve a list of all contracts deployed to the sandbox local:

const results = getOriginations()
     .filter(contract => contract.destination === "local")

Jest Plugin

pluginName: @taqueria/plugin-jest

Note: The Taqueria team is excited to include the first version of the Jest plugin @taqueria/plugin-jest in this release. This plugin allows you to partition your tests in powerful and flexible ways while easing the burden of managing Jest configuration files. The next feature already under active development is automatic test stub generation from Michelson files using generated types

The @taqueria/plugin-jest plugin provides the taq test task which provides a means to instantiate test directories and run Jest tests

Installation

To install the Jest plugin on a Taqueria project, run:

taq install @taqueria/plugin-jest

Usage

The Jest plugin will automatically initialize a Jest test directory when you run taq test <test-directory>

The easiest way to start using the plugin is to:

  1. Create a new directory in the root of your project /tests
  2. Add one or more tests to the directory
  3. Run taq test tests

Initializing Partitions

The Jest plugin uses partitions. These are just directories with their own JEST config but allow you to group and manage your tests with great flexibility. This allows you to segment and run tests in different buckets such as:

  • By type (unit tests, integration tests, acceptance tests, e2e tests)
  • Structural (dapp, smart contract, serverless functions)

To create a new partition (initialized test directory), run:

taq test --init

This will do several things:

  • Create a new directory (in this case it uses the default directory /tests)
  • Create a Jest configuration in the directory
  • Create a global Jest configuration file in ./.taq/jest.config.js

Note: You can create any number of partitions. By default there are no partitions

To create additional partitions, simply run:

taq test [partitionName]`

Running Jest tests

The taq test [partitionName] task will run the Jest tests associated with a particular partition

Create tests in that folder tests/example.spec.ts

Jest Configuration

A Global Config for Jest is created in the project's Taq directory: ./.taq/jest.config.js

Each partition will have it's own Jest configuration file (./tests/jest.config.js)

The Jest configurations cascade down from the global config. If you want to override a value in the global config, simply define it in the partition config. The partition config will override the global config

Note: The default root directory for Jest can be overridden by setting "jestTestsRootDir" in taqueria.config.js

Implicit accounts

WARNING: This release makes a breaking change to the schema of config.json. If you use Taqueria v0.4.0 on an existing project, you will need to make minor adjustments to your config.json file

Taqueria now allows you to be declarative when naming your implicit accounts and the desired balance for each. These accounts are declared at the root level in config.json. Previously, accounts were defined in each sandbox configuration

The default configuration for Taqueria projects includes five pre-defined accounts as shown here:

{
    "language": "en",
    "plugins": [ ],
    "contractsDir": "contracts",
    "testsDir": "tests",
    "artifactsDir": "artifacts",
    "environment": {
        "default": "development",
        "development": {
            "networks": [],
            "sandboxes": [
                "local"
            ],
        }
    },
    "sandbox": {
        "local": {
            "label": "Local Tezos Sandbox",
            "protocol": "Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",
            "rpcUrl": "http://localhost:20000"
        }
    },
    "network": {},
    "accounts": {
        "bob": "3_000_000_000",
        "alice": "3_000_000_000",
        "john": "3_000_000_000",
        "jane": "3_000_000_000",
        "joe": "3_000_000_000"
    }
}

You may define as many accounts as you need. Taqueria imposes no limits on how many accounts you would like to reference in your project

These accounts will be created and funded automatically when a sandbox starts. After starting a sandbox, you will see the defined accounts appear in the configuration:

{
    "sandbox": {
        "local": {
            "accounts": {
                "bob": {
                    "encryptedKey": "edpkurPsQ8eUApnLUJ9ZPDvu98E8VNj4KtJa1aZr16Cr5ow5VHKnz4",
                    "publicKeyHash": "tz1aSkwEot3L2kmUvcoxzjMomb9mvBNuzFK6",
                    "secretKey": "unencrypted:edsk3RFfvaFaxbHx8BMtEW1rKQcPtDML3LXjNqMNLCzC3wLC1bWbAt"
                },
                "alice": {
                    "encryptedKey": "edpkvGfYw3LyB1UcCahKQk4rF2tvbMUk8GFiTuMjL75uGXrpvKXhjn",
                    "publicKeyHash": "tz1VSUr8wwNhLAzempoch5d6hLRiTh8Cjcjb",
                    "secretKey": "unencrypted:edsk3QoqBuvdamxouPhin7swCvkQNgq4jP5KZPbwWNnwdZpSpJiEbq"
                }
            },
            "label": "Local Tezos Sandbox",
            "protocol": "Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",
            "rpcUrl": "http://localhost:20000"
        }
    },
    "network": {},
    "accounts": {
        "bob": "3_000_000_000",
        "alice": "3_000_000_000"
    }
}

Note: Future improvements will extend implicit account provisioning to testnets

To set a default account for a sandbox, you must now define it explicitly in the sandbox config:

    "sandbox": {
        "local": {
            "accounts": {
                "default": "bob",
                "bob": {
                    "encryptedKey": "edpkurPsQ8eUApnLUJ9ZPDvu98E8VNj4KtJa1aZr16Cr5ow5VHKnz4",
                    "publicKeyHash": "tz1aSkwEot3L2kmUvcoxzjMomb9mvBNuzFK6",
                    "secretKey": "unencrypted:edsk3RFfvaFaxbHx8BMtEW1rKQcPtDML3LXjNqMNLCzC3wLC1bWbAt"
                },
                "alice": {
                    "encr...
Read more

v0.3.1

13 May 16:42
Compare
Choose a tag to compare

May 13, 2022


Taqueria

CLI

To download and see our installation instructions, please click here

VS Code

To download and install, please search for Taqueria in the Visual Studio Marketplace.

  • Version dump

SDKs

Node SDK

To download and install please run npm install @taqueria/node-sdk@latest


Plugins

Contract Types plugin

To download and install, please run taq install @taqueria/plugin-contract-types@latest

  • (#718) - Add support for chest in contract type plugin (@jchenche)

Ligo plugin

To download and install, please run taq install @taqueria/plugin-ligo@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

SmartPy plugin

To download and install, please run taq install @taqueria/plugin-smartpy@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

Archetype plugin

To download and install, please run taq install @taqueria/plugin-archetype@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

Taquito plugin

To download and install, please run taq install @taqueria/plugin-taquito@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

Flextesa Plugin

To download and install, please run taq install @taqueria/plugin-flextesa@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

Tezos Client Plugin

To download and install, please run taq install @taqueria/plugin-flextesa@latest

  • Adjusted to use the latest version of the Taqueria Node SDK

Full Changelog: v0.3.0...v0.3.1

v0.2.1

20 Apr 18:01
Compare
Choose a tag to compare

Apr 20, 2022


Taqueria

CLI

To download and see our installation instructions, please click here

VS Code

To download and install, please search for Taqueria in the Visual Studio Marketplace.


SDKs

Node SDK

To download and install please run npm install @taqueria/node-sdk@latest

  • Version bump

Plugins

Contract Types plugin

To download and install, please run taq install @taqueria/plugin-contract-types@latest

Ligo plugin

To download and install, please run taq install @taqueria/plugin-ligo@latest

  • Version bump

SmartPy plugin

To download and install, please run taq install @taqueria/plugin-smartpy@latest

  • Version bump

Archetype plugin

To download and install, please run taq install @taqueria/plugin-archetype@latest

Taquito plugin

To download and install, please run taq install @taqueria/plugin-taquito@latest

  • Version bump

Flextesa Plugin

To download and install, please run taq install @taqueria/plugin-flextesa@latest

  • Version bump

New Contributors

Full Changelog: v0.2.0...v0.2.1