Cumulusci

Latest version: v3.87.0

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

Scan your dependencies

Page 13 of 39

3.34.0

Not secure
Critical Changes:

- If you have custom flows that utilize the `github_release` task,
they will need to be updated to include the `package_type` option
(which is required). (\2546)

Changes:

- The `github_release` task now has a `package_type` option which
is included in the information written to GitHub release tags.
The following standard library "release" flows have been updated
with hardcoded values (either `1GP` or `2GP`) for this option:

- `release_beta` (1GP)
- `release_production` (1GP)
- `release_2gp_beta` (2GP)
- `release_2gp_production` (2GP)

(2546)

- The `update_dependencies` task now supports a `packages_only`
option, which suppresses the installation of unpackaged metadata
dependencies. This option is intended to support building
update-only or idempotent installers. (\2587)

- The `github_automerge_main` task has a new option,
`skip_future_releases`, which can be set to `False` to disable the
default behavior of skipping branches that are numeric (and thus
considered release branches) but not the lowest number. (\2582)

- Added an new option `set_recently_viewed` to the `load_dataset` task
that sets newly inserted data as recently viewed. This changes the
default behavior. By default (if you do not specify the option), the
first 1000 records inserted via the Bulk API will be set as recently
viewed. If fewer than 1000 records are inserted, existing objects of
the same type being inserted will also be set as recently viewed.
(\2578)

- The `update_dependencies` task can now consume 2GP releases in
upstream repositories, provided they're stored in release tags as
generated by CumulusCI. (\2557)

- The `extract_dataset` and `load_datast` tasks now support adding or
removing a namespace from a mapping file to match the target org for
sObjects and not just fields. (\2532)

- The `create_package_version` task can now increment package version
numbers when the package is not in a released state. (\2547)

- Includes [Snowfakery 1.10](https://github.com/SFDO-Tooling/Snowfakery/releases/tag/v1.10) with upgrades to its Fake data functions.

Issues Closed

- Fixed an error in the `github_automerge_main` task when using a
branch prefix that doesn't contain a slash. (\2582)
- Fixed logic in the `push_sandbox` and `push_all` tasks which was
selecting the wrong package versions. (\2577)
- Improved logging of errors from sfdx while converting sfdx format
metadata to deploy via the Metadata API, so that they are not lost
when CumulusCI is embedded in another system like MetaCI or Metecho.
(\2574)

3.33.1

Not secure
Changes:

- The ``create_package_version`` task now accepts an ``--ancestor-id`` option to specify the 04t Id of the package version that should be considered the ancestor of a new managed package version. The option can also be set to ``latest_github_release`` to look up the 04t Id of the project's most recent release on GitHub. (2540)

Issues closed:

- Fixed a regression where the ``release_beta`` flow would throw an error if the project has unmanaged github dependencies. (2566)

- Fixed a regression where the ``cci service connect`` command could no longer connect a service without giving it a name. Now a default name will be assigned. (2568)

- Fixed a regression when resolving unpackaged dependencies from GitHub releases. (2571)

- Fixed a regression with creating a scratch org if the devhub service was configured but not set as the default. (2570)

- Improved the formatting of ``cumulusci.yml`` validation warnings. (2567)

3.33.0

Not secure
Critical Changes:

- CumulusCI's dependency management modules have been rewritten. This grants new capabilities and removes some existing features. (\2456)
- All package installations now perform retries if the package is not yet available.
- Package installations are also retried on common row locking errors.
- You can now obtain fine-grained control over how your projects resolve dependencies. It's much easier to control where your application uses beta managed packages and second-generation packages to satisfy dependencies.
- You can now execute 2GP builds that use 2GPs from upstream feature branches matching your current branch, not just release branches.
- The `update_dependencies` task no longer supports uninstalling managed packages in a persistent org as part of the dependency installation process.
- The `update_dependencies` task no longer supports the `allow_newer` option, which is always True.
- The install order of `update_dependencies` changes slightly where multiple levels of upstream dependency have `unpackaged/pre` metadata. Where previously one package's `unpackaged/pre` might be installed prior to its own upstream dependency, `unpackaged/pre` will now always be installed immediately prior to the repo's package.
- Projects using unmanaged dependencies that reference GitHub subfolders will see a change in resolution behavior. Previously, a dependency specified like this:

dependencies:
- github: https://github.com/SalesforceFoundation/NPSP
subfolder: unpackaged/config/trial

would always deploy from the latest commit on the default branch. Now, this dependency will be resolved to a GitHub commit just like a dependency without a subfolder, selecting the latest beta or production release as determined by the chosen resolution strategy.
- The `project__dependencies` section in `cumulusci.yml` no longer supports nested dependencies specified like this:

dependencies:
- namespace: "test"
version: "1.0"
dependencies:
- namespace: "parent"
version: "2.2"

All dependencies should be listed in install order.

Changes:

- CumulusCI now supports named services! This means you can configure multiple services of the same *type* under different names. If you run `cci service list` you will note that your existing global services will have the name `global`, and any project-specific services will have the name `project_name`. (\2499)
- You must now specify both a service type and a service name when connecting a new service using `cci service connect`.
- CumulusCI has a new command: `cci service default`. This command sets the default service for a given type.
- CumulusCI has a new command: `cci service rename`. This command renames a given service.
- CumulusCI has a new command: `cci service remove`. This command removes a given service.
- A validator now checks `cumulusci.yml` and shows warnings about values that are not expected. (\1624)
- Added a friendly error message when a GitHub repository cannot be found when set as a dependency or cross-project source. (\2535)
- Task option command line arguments can now be specified with either an underscore or a dash: e.g. `clean_meta_xml` can be specified as either `--clean_meta_xml` or `--clean-meta-xml` or `-o clean-meta-xml` (\2504)
- Adjustments to existing tasks:
- The `update_package_xml` task now supports additional metadata types. (\2549)
- The `push_sandbox` and `push_all` tasks now use the Bulk API to query for subscriber orgs. (\2338)
- The `push_sandbox` and `push_all` tasks now default to including all orgs whose status is not Inactive, rather than only orgs with a status of Active. This means that sandboxes, scratch orgs, and Developer Edition orgs are included. (\2338)
- The `user_alias` option for the `assign_permission_sets`, `assign_permission_set_groups`, and `assign_permission_set_licenses` tasks now accepts a list of user aliases, and can now create permission assignments for multiple users with a single task invocation. (\2483)
- The `command` task now sets the `return_values` to a dictionary that contains the return code of the command that was run. (\2453)
- Data generation with Snowfakery:
- Updated to [Snowfakery 1.9] (https://github.com/SFDO-Tooling/Snowfakery/releases/tag/v1.9)(\#2538)
- Robot Framework:
- The `run task` keyword now includes all task output in the robot log instead of printing it to stdout. (\2453)
- Documented the use of the options/options section of CumulusCI for the `robot` task. (\2536)
- Changes for CumulusCI developers:
- Tasks now get access to the `--debug-mode` option and can output debugging information conditional on it. (\2481)
- `cci org connect` can now connect to orgs running in an internal build environment with a different port. (\2501, with thanks to force2b)

Issues Closed:

- The `load_custom_settings` task now resolves a relative `settings_path` correctly when used in a cross-project flow. (\2523)
- Fixed the `min_version` option for the `push_sandbox` and `push_all` tasks to include the `min_version` and not only versions greater than it. (\2338)

3.32.1

Not secure
April Fool's! This is the real new release, because there was a packaging problem with 3.32.0.

3.32.0

Not secure
Changes:

- A new task, `create_network_member_groups`, creates
NetworkMemberGroup records to grant specified Profiles or
Permissions Sets access to an Experience Cloud site (community).
(\2460, thanks ClayTomerlin)
- A new preflight check task, `get_existing_sites`, returns a list of
existing Experience Cloud site names in the org. (\2493)
- It is now possible to create a flow which runs the same sub-flow
multiple times, as long as they don't create a self-referential
cycle. (\2494)
- Improvements to support for releasing 2nd-generation (2GP) packages:
- The `github_release` task now includes the package version's 04t
id in the message of the tag that is created. (\2485)
- The `promote_package_version` task now defaults to promoting the
package version corresponding to the most recent beta tag in the
repository, if `version_id` is not specified explicitly.
(\2485)
- Added a new flow, `release_2gp_beta`, which creates a beta
package version of a 2GP managed package and a corresponding tag
and release in GitHub. (\2509)
- Added a new flow, `release_2gp_production`, which promotes a 2gp
managed package version to released status and creates a
corresponding tag and release in GitHub. (\2510)
- Data generation with Snowfakery:
- Updated to [Snowfakery 1.8.1][] (\2516)
- Snowfakery can now use "load files" to provide hints about how
objects should be loaded.
- Values for the `bulk_mode`, `api`, and `action` parameters in
mapping files are now case insensitive.
- Robot Framework:
- Added a new keyword, `Input Form Data`, for populating form
fields of many different types. This keyword is considered
experimental but is intended to eventually replace
`Populate Form`. (\2496)
- Added a new keyword, `Locate Element by Label`, for finding form
inputs using their label. (\2496)
- Added a custom locator strategy called `label` which uses
`Locate Element By Label` (e.g. `label:First Name`). (\2496)
- Added two new options to the robot task: `ordering` and
`testlevelsplit`. These only have an effect when combined with
the `processes` option to run tests in parallel.

Issues Closed:

- The `cci org import` command now shows a clearer error message if
you try to import an org that is not a locally created scratch org.
(\2482)

3.31.0

Not secure
Changes:

- It is now possible to pass the `--noancestors` flag to sfdx when creating a scratch org by setting `noancestors: True` in the scratch org config in `cumulusci.yml`. Thanks lionelarmanet (2452)
- The `robot_outputdir` return value from the `robot` task is now an absolute path. (2442)
- New tasks:
- `get_available_permission_sets`: retrieves the list of available permission sets from an org. (2455)
- `promote_2gp_package`: will promote a `Package2Version` to the "IsReleased" state, making it available for installation in production orgs. (2454)

Page 13 of 39

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.