Patent attributes
A method implemented by at least one server for pushing managed package upgrades comprises receiving a dependency graph from an operating entity via an API call that expresses relationships between a set of software packages. A subscriber set is ingested for subscribers of the software packages via an API call to the operating entity that owns the software packages. A per-subscriber dependency graph is constructed expressing relationships between the individual subscriber's delivery operations. The set of packages is delivered based on dependency order of the per-subscriber dependency graph, while applying one or more rules including: i) push schedule rules that allow the first operating entity to specify time-based gates for the deliveries; ii) subscriber exclusion rules that allow the operating entity to exclude specific subscribers; iii) rules for automatic retries of failed operations; and iv) rules to chunk the push upgrade operations.