Cumulusci

Latest version: v4.3.0

Safety actively analyzes 723200 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 23 of 57

3.5.1

Not secure
Issues closed:

- Fixed an issue that was preventing newlines in output.
- Don't show the prompt to create a gist if the user aborts the
process.
- Avoid errors that can happen when trying to store the CumulusCI
encryption key in the system keychain using Python's keyring
library, which can fail on some systems such as CI systems:
- We fixed a regression that caused CumulusCI to try to load the
keychain even for commands where it's not used.
- We fixed a bug that caused CumulusCI to try to load the keychain
key even when using an unencrypted keychain such as the
EnvironmentProjectKeychain.
- Adjusted some keywords in the Salesforce library for Robot Framework
to handle changes in the Spring '20 release.

3.5.0

Not secure
Changes:

- The `load_dataset` task now accepts a `bulk_mode` option which can
be set to `Serial` to load batches serially instead of in parallel.
- CumulusCI now stores the logs from the last five executions under
`~/.cumulusci/logs`
- CumulusCI has a new top-level command: `cci gist`. This command
creates a secret GitHub gist which includes: The user's current
CumulusCI version, current Python version, path to python binary,
sysname (e.g. Darwin), machine (e.g. x86_64), and the most recent
CumulusCI logfile (`~/.cumulusci/logs/cci.log`). The command outputs
a link to the created gist and opens a browser tab with the new
GitHub gist. This can be helpful for sharing information regarding
errors and issues encountered when working with cci. This feature
uses a users GitHub access token for creation of gists. If your
access token does not have the 'gist (Create gists)' scope this
command will result in a 404 error. For more info see:
<https://cumulusci.readthedocs.io/en/latest/features.html#reporting-error-logs>
- Changed `UpdateAdminProfile` so that it only deploys the modified
Admin profile. While it is necessary to retrieve profiles along
their associated metadata objects, we don't need to do that for
deployments.
- Added options to the [](deploy) task: `check_only`,
`test_level`, and `specified_tests`. Run `cci task info deploy` for
details. (1066)

3.4.0

Not secure
Changes:

- Added `activate_flow` task which can be used to activate Flows and
Process Builder processes.
- Added two tasks, `disable_tdtm_trigger_handlers` and
`restore_tdtm_trigger_handlers`, which can be used to disable
trigger handlers for the table-driven trigger management feature of
NPSP and EDA.
- In the `load_dataset` task, added a way to avoid resetting the
Salesforce Id mapping tables by setting the `reset_oids` option to
False. This can be useful when running the task multiple times with
the same org.
- Added support for a few new metadata types from API versions 47 and
48 in the `update_package_xml` task.
- Added a way for Robot Framework libraries to register custom
locators for use by the selenium library.

Issues closed:

- Fixed a bug with freezing the `load_data` task for MetaDeploy where
it would use an invalid option for `database_url`.
- Fixed a bug in the `github_release_notes` task when processing a
pull request with no description. (1444)
- Fixed inaccurate instructions shown at the end of
`cci project init`.

3.3.0

Not secure
Breaking changes:

- Removed tasks which are no longer in use: `mrbelvedere_publish`,
`generate_apex_docs`, and `commit_apex_docs`.

Changes:

- Updated Robot Framework Salesforce library to support the Spring
'20 release.
- Added `remove_metadata_xml_elements` task which can be used to
remove specified XML elements from metadata files.
- Updated references to the NPSP repository to use its new name
instead of Cumulus.

Issues closed:

- Fixed the error message shown when a task config has a bad
`class_path`.
- Fixed a warning when running the command task in Python 3.8.
- When the CumulusCI Robot Framework library calls Salesforce APIs, it
will now automatically retry when it is safe to do so. It will also
avoid reusing old connections that might have been closed.
- Fixed the `-o debug True` option for the `robot` task.

3.2.0

Not secure
Breaking changes:

- We upgraded the SeleniumLibrary for Robot Framework from version
3.3.1 to version 4.1.0. This includes the removal of some deprecated
keywords. See the [SeleniumLibrary
releases](https://github.com/robotframework/SeleniumLibrary/releases)
for links to detailed release notes.

Changes:

- The `Persistent Orgs` table shown by `cci org list` has been renamed
to `Connected Orgs` since scratch orgs will be shown here if they
were connected using `cci org connect` instead of created via the
Salesforce CLI. This table now shows the org's expiration date, if
known.
- Improvements to the `retrieve_changes` task:
- The task now retrieves only the components that actually
changed, not all components listed in `package.xml` in the
target directory.
- Changes can now be retrieved into folders in DX source format.
The target directory defaults to `src` if the project is using
`mdapi` format or the default entry in `packageDirectories` in
`sfdx-project.json` if the project is using `sfdx` format.
(Namespace tokenization is not supported in DX format, since
there isn't currently a way to deploy DX format source
including namespace tokens.)
- Added a task, `load_custom_settings`, to upload Custom Settings
defined in YAML into a target org. See
<https://cumulusci.readthedocs.io/en/latest/bulk_data.html#custom-settings>
for more info.

Issues closed:

- Fixed an issue with how the package upload task logs Apex test
failures to make sure they show up in MetaCI.
- Fixed `KeyError: createdDate` error when trying to get scratch org
info.
- A rare issue where CumulusCI could fail to load the symbol table for
a failed Apex test class is now caught and reported.
- CumulusCI now displays the underlying error if it encounters a
problem with storing its encryption key in the system keychain.

3.1.2

Not secure
Breaking changes:

- We changed the default path for the mapping file created by the
`generate_dataset_mapping` task to `datasets/mapping.yml` so that it
matches the defaults for `extract_dataset` and `load_dataset`
- We changed the `extract_dataset` and `load_dataset` tasks to default
to storing data in an SQL file, `datasets/sample.sql`, instead of a
binary SQLite database file.

Changes:

- `run_tests` can now detect and optionally retry two classes of
concurrency issues with Apex unit tests. `run_tests` should always
report an accurate total of test methods run, in parallel or serial
mode.
- Added the task `generate_data_dictionary`. This task indexes the
fields and objects created in each GitHub release for the project
and generates a data dictionary in CSV format.
- Added a `devhub` service. This can be used to switch a project to a
non-default sfdx Dev Hub using
`cci service connect devhub --project`
- Added a predefined `qa` scratch org. It uses the same scratch org
definition file as the `dev` org, but makes it easier to spin up a
second org for QA purposes without needing to first create it using
`cci org scratch`.
- The `database_url` option for the `extract_dataset` and
`load_dataset` tasks is no longer required. Either `database_url` or
`sql_path` must be specified. If both are specified, the `sql_path`
will be ignored.
- Developers can now directly execute CumulusCI from the Python
command line using `python -m cumulusci` or
`python cumulusci/__main__.py`

Issues closed:

- A problem with how `run_tests` performed Apex test retries when
`retry_always` is set to True has been corrected.

Page 23 of 57

Links

Releases

Has known vulnerabilities

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.