The Welkin Suite is ready to be updated! We have been working intensively for the last two month and now there are so many news for you in the 0.29.7 version of the IDE.
Our team has implemented such great features as the Wave projects support, Data Loader, Ant support, and OAuth authentication. Now you can open several projects in one solution; the structure of projects is changed. In addition, you can ask any your question related to your code in Twitter directly from the IDE. We promised you to improve the Code Completion functionality, and we did it also.
And this is not all! See these features and improvements in details and other ones below.
Wave projects support
Surf the Wave with The Welkin Suite! Now you can operate all your datasets, lenses, dashboards, and apps directly from the IDE.
Wave Analytics is the Salesforce unique application that allows you to explore and visualize data from not only your org but also external databases and log files. To use all its possibilities, first of all, you need to enable this app for your org. Open Wave Analytics application from the app menu and click the 'Enable Analytics' button.
The Welkin Suites provides you with the special type of projects for working on the Wave apps. During the creation of a project select 'Salesforce Analytics project' as a type of a new project. On the next step, you will be redirected to the login page where you need to enter your credentials: the authentication uses OAuth to avoid storing your security data in a project file. When authentication is successfully finished, you can select the necessary components. Wave Analytics app operates four types of components:
- dataset — a set of source data, in CSV or JSON format, currently, it's unavailable in The Welkin Suite,
- lens — a saved exploration, it's present as a file in TWS,
- dashboard — a curated set of charts, metrics, and tables, it's present as a file in TWS,
- app — a folder that contains a group of datasets, lenses, and dashboards.
So, in the Download Wizard, you'll see a set of folders (apps) that you can expand to see the lenses and dashboards they include. Here are all the shared folders and your private one — My Private App; it's default and can't be deleted. You can select which components will be downloaded: for example, you are able to download an app with only one lens, leave the rest lenses and dashboards unselected.
Now you can change lenses and dashboard right from The Welkin Suite. Open any file, and you'll see the SOQL query that creates this lens or dashboard: all search parameters, grouping, and filtering if they're present, and a visualization. Below the editor here is a built-in browser where you can preview how your item looks like. When you make some changes in a file, to see them in a previewer, built these changes first and then click the 'Reload' button.
Also, you have an ability to pull changes from org to be up-to-date with all the newest versions of your Wave Analytics app. The option to create a new item is currently available only on an org.
Tweet about the code right from the IDE
New capabilities that make your working process easier and more interesting! The newly release of The Welkin Suite offers you an incredible ability to tweet about the code in just a few clicks! If you want to consult with the TWS or Salesforce communities about some code or share your opinion, please select a necessary part of the code, right-click and select the '#askforce about the code' option from the context menu. You will get the window with the screenshot of your selected code.
Click the 'Login' button to give TWS access to your Twitter account, for the first time. In the field below you can write your tweet. At the same time, the predefined hashtags are already present: #askforce and #askwelkin. If you do not want to include the screen, just uncheck the box 'Include image'.
Click 'Tweet', and Twitter community will get your question.
Authentication using OAuth
The newly version of The Welkin Suite helps you to strengthen the security of your projects. Now you are able not to store the credentials in the project file inside the IDE — you can get access to an orgusing OAuth for authentication. OAuth allows you to log in without sharing your login and password; it provides to the IDE a secure delegated access to server resources on your behalf. For example, you use this standard for authentication, when you log in to websites via Facebook, Twitter, Google, etc. accounts.
This method is available during the creation of a new project. In the 'Download Salesforce Project' window, please check the box 'Use OAuth for authentication' and the fields for credentials will disappear.
The next action is to select the Salesforce environment that you're going to work on and click the 'Next' button. You will be redirected to the Salesforce login page, where you need to enter your credentials.
When the authentication is successfully finished, you will be asked to allow access for The Welkin Suite to your org. This is actual during only the first connection to your organization using OAuth authentication. Click the 'Allow' button. Now you can back to The Welkin Suite and continue your work without being disturbed by any needed authorization.
You're also able to share your OAuth project with colleagues. When your co-worker opens your OAuth project, he will get an opened Salesforce login page, where he will need to enter his credentials.
The Welkin Suite now allows you to instantly load, update, or delete a huge amount of data to your org. With the help of the new Data Loader feature, it's available just in a few clicks!
Data Loader provides you with such handy options:
- an easy-to-use wizard,
- a batch mode interface with database connectivity,
- support for large files with up to millions of rows,
- drag-and-drop field mapping,
- support for all objects, including custom objects,
- detailed success and error log files in CSV format,
- a built-in CSV file viewer.
When importing data, Data Loader reads, extracts, and loads data from comma separated values (CSV) files. For this purpose, it uses Bulk API, which allows making it simple to process data from a few thousand to millions of records.
This new feature is now available from the Main Menu -> Data Loader -> Import data to the org. Also, you can get access to this functionality from the context menu of a project. Click on this option, and you'll get the list of the available actions within the Data Loader functionality:
- Insert — add new data,
- Update — rewrite existing data,
- Upsert — rewrite existing data and insert new data,
- Delete — delete data.
Once you've selected an action, you'll see all the main objects present in your org's database. Select the type that you want to fill in with data. If you didn't find a necessary object, for this case here is the checkbox 'Show all Salesforce objects'. On this step, you also need to select on your PC a CSV file with all necessary information. The next stage is selecting a necessary field on your object to use for matching. Finally, you'll see the mapping window. The Welkin Suite offers you two option: to fill the fields manually by drag-and-drop, or to make it automatically by clicking the 'Auto-Match Fields to Columns' button. Also, you can clear mapping, choose an existing map, and save mapping for future using.
When the loading process is finished, you will see the appropriate message with all the success and error records. In addition, The Welkin Suite gives you the ability to save the results as a CSV file.
Compatible project structure
One of the greatest feature released in this version of The Welkin Suite is the changed project structure that now is acceptable for building CI. Beginning from the 0.29.7 version of TWS, you are able to develop faster and more efficient, bringing collaboration with your colleagues on a higher level.
This innovation means that now a project's folder in your file system contains two sub-folders with all the metadata files from an org:
- src — all the metadata components, such as classes, triggers, pages, etc.,
- resource-bundles — all the static resources in an unzipped state.
In addition, there are also 'AnonymousApex' and 'Soql' folders that are empty by default. These files you create locally during your working process.
In the Solution Explorer of the IDE, the structure folder changes aren't visible. You get the list of the folders according to the metadata types of your custom structure. All 'service' folders, such as 'src', are hidden. At the same time, the difference from the previous versions is that the uppercase at the beginning of a folder name is converted to lowercase.
All your already created projects will be migrated to the new structure automatically: while opening an existing project, The Welkin Suite will modify its structure to make it compatible with the new version.
Related to this feature, we also removed the option to modify the File System by Drag&Drop actionwhen you use it in the Solution Explorer.
The new approach for handling the project structure also helps you to open your TWS's projects in another IDE.
Thanks to this new project structure, you can use all the benefits of building CI: test and build your code as much often as it's possible, quickly reveal the issues caused by simultaneous work and quickly fix them.
Apache Ant Support
Our team has added an ability of Apache Ant Support to The Welkin Suite. This option will help you to make your build and deploy process more comprehensive, quick and robust. You can set this option during the creation of the project — just check the box 'Ant box' in the 'Download Salesforce Project'. If you want to change the settings for the Apache Ant support in the existing project, you can do it in the 'Properties' window for the project.
After you create a project with Apache Ant support, you will get the 'ant' folder in you project's folder. It contains the .xml, .jar, and .properties files that further will be used within the execution build and deploy.
This is only the first step on the way of development the Apache Ant support. Future plans for this feature includes supporting different build tasks, such as compilation, packaging with the documentation and source code, committing to version control and much more.
We implemented one more important feature that helps you to instantly analyze the performance of your code — the Apex Profiler.
The Apex Profiler gives you the ability to run a test as many times as you need and to get information about the execution time. During this process, The Welkin Suite backups your log levels, sets them as needed, executes the tests and reset the log levels.
You can start profiling any unit test in two ways when your caret is placed within the unit test:
- Main Menu -> Profiler -> Profile using Unit Test,
- context menu in the editor -> Start profiling.
You will get the window where you can enter the necessary number of profiler iteration. By default, it's set as '3', the range is 1-100. Please set it and click the 'Start' button.
The results of profiling are displayed in the Profiler window that is opened in the editor:
- Entry — the code Units / Methods name,
- Time (ms) — time in milliseconds spent on the item's execution itself (without child nodes) and its percentage relatively to the all execution time,
- Cumulative time (ms) — time in milliseconds spent on the method's execution (including all child nodes) and its percentage relatively to the all execution time,
- SOQL Queries — the number of SOQL Queries performed in the item itself (without child nodes),
- DML Operations — the number of DML operations performed in the item itself (without child nodes).
All the items in the Profiler window are displayed in the call stack view — you can easily trace the way of the execution.
The new way of Code Assistance
The new version of The Welkin Suite introduces you the totally updated Code Assistance for the Apex code (with the help of the Apex Parser Manager). In other words, the Code Assistance feature in the newly version of TWS is refactored at all: we fixed the issues mentioned by our users, added a big amount of new possibilities, and changed an approach of execution. Though a lot of work have been done and we will introduce all these changes in deep details in the related blog post soon, we will continue improving this essential feature to make your developing process as much cosy as possible.
Currently, in frame of the made changes we want to highlight some of the new abilities.
Now you can see the code map of your class next to the code in the editor. It includes all the variables that are present in this class; they are displayed in a tree view of dependencies. You can easily navigate to a necessary property by double-clicking on it. You are also able to collapse the code map: click on the double arrow next to the map or double-click on the map's header. In addition, you can disable the code map at all: go to the Main Menu -> Tools -> Options... -> Text Editor -> Code Assistance -> Apex and unselect the 'Show Code Map' item.
The Code Outlining tool now recognizes not only test methods but also multiline comments. You can collapse comments in a code by double-clicking on a highlighted part of the code outlining tool, clicking on a 'minus' on the code outlining tool, or placing a cursor in a necessary code block and pressing the Ctrl+M+M hotkey. The selected code block will be collapsed and instead of it, you will see the /* multiline comment */ tooltip. Hover a cursor on it, and you will see the hidden block.
The Code Completion feature now filters all the scope of list members by their types. Below the list of possible variants to insert a list of types is present. Click on a necessary one, and the list members will be filtered to the matching items. You can select several types at the same time.
In addition, the work of the TWS parser was changed, so now the missed keywords are included in the Code Completion list; the issues related to this functionality are resolved.
We will appreciate all your feedbacks about this changes or reports about the issues you are faced with during your work with the code.
Multiple projects in one solution
Beginning from the 0.29.7 version of The Welkin Suite, you have an ability to work on several projects simultaneously. Usually, to have only one project in a solution is quite enough — it contains all you need for developing some functionality. But in cases when you need different feature blocks to work together in one application, or you need sandbox and production projects, different sandboxes of one org to test them, the feature of multiple projects in one solution helps you to solve all these issues.
This essential option affects almost all the main features of The Welkin Suite:
- build Solution / Selection,
- view Pending Changes,
- run Tests and view Test Results,
- view Code Coverage,
- explore Logs,
- Debug unit tests,
- create Lightning Bundles,
- track the Local history.
Now all these actions are available for several projects at the same time.
You can add a project to a solution in two ways:
- right-click on your solution in the Solution Explorer and select Add -> New Project / Existing Project,
- navigate to the Main Menu -> File -> Add -> New Project / Existing Project.
The next time when you open this solution, it will contain all the opened and added projects.
Among the great features, we have prepared for you a lot of improvements.
Also, you have an ability to explore the Local History Details right from the file: right-click on the editor's tab and select the 'Show Local History Details' option from the context menu.
The appropriate panel will appear in your TWS UI.
The option 'Open execution logs' in Anonymous Apex now remembers its last state that you have selected previously. This is actual for the one TWS session.
We added an ability to show / hide *-meta.xml files in the Solution Explorer. To do this, please go to the Main Menu -> Tools -> Options... -> Projects -> Presentation and check the box 'Hide project items metadata'. After this action, all the metadata will be hidden and any class will be expanded in the Solution Explorer when you open it.
We have found the reason for the incorrect position of an underlined text in a code with the error and resolved this issue. Furthermore, a red error underline after the failed Build process won't worry you after the successful one. We have fixed it also.
Beginning from the newly released version of the IDE, the TWS pop-up windows won't be located above all you other windows.
Several more fixes that we made are related to the errors during opening a log file and the navigation to the file from search results.
If your default email service isn't set (for example, on Windows 7) you could be faced with the issue when TWS crashed by the clicking on the email@example.com email in the 'About' window. Currently, this works properly and without errors.
In addition, our team has fixed the issue when a failed test doesn't have the 'Open log' option in the Details area till you open the context menu of the test.
A few more fixes are done related to the rare crashes of TWS caused by test runs.
All these features, improvements, and fixes are available for you in the 0.29.7 version of The Welkin Suite.
Your opinion about these changes is very important for us, so if you have any suggestions or comments related to the new functionality, please let us know.
Of course, we will be glad to get any questions or notes about previously present options also.
In addition, if you are faced with any issues, your report about it will help us to solve them and make The Welkin Suite better.
Full list of changes
- Implemented the Wave projects support
- Added the Data Loader feature
- Implemented an ability to use the OAuth authentication during the creation of a project
- Added an ability to have a compatible project structure and migrate old projects
- Implemented an ability to tweet about a code right from TWS
- Added the Apache Ant support
- Added an ability to use the Apex Profiler to analyze the code performance
- Added the Code Map for Apex classes
- Improved the Code Assistance feature for the Apex code with the help of the Apex Parser Manager
- Removed the option to modify the file system by drag&drop action in the Solution Explorer
- Added an ability to open the Local History Details panel from the context menu of the editor's tab
- Added an ability to save the state of the 'Open execution logs' option in the Anonymous Apex file
- Added an ability to hide / show the metadata files in the Solution Explorer
- Fixed the issue related to the ability open several projects in one solution
- Fixed the location of TWS pop-up windows above all the other windows
- Fixed the issue when red error underline doesn't disappear after the successful build
- Fixed the incorrect position of an underlined text in a code with the error
- Fixed the issue related to the navigation to the file from search results
- Fixed the incorrect behavior by clicking on the email in Help / About if the default email client isn't set
- Fixed the rare crashes of TWS caused by test runs
- Fixed the issue related to the ability to open a log of a failed test
- Fixed the issue related to an error during opening any log file