Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • v3.1.30
    [Docs] new layout, new site - https://docs.apiscp.com
    [Migrations] prefer "documentroot" value from cPanel backup metadata instead of /var/www/<DOMAIN>
    [cpcmd] errors/warnings use stderr
    [Mailing Lists] correct pathing in /etc/majordomo.cf
    [License] dev-only licenses. Free license class identical to a Pro license with the exception only .test TLDs may be hosted
    [web] add_subdomain(), remove_subdomain() support alternative fallthrough subdomain naming scheme "*.domain.com"
    
  • v3.1.29
    [DNS] cache invalidation throws unhandled exception when a hostname has children
    [CP] change Apache mutex to posixsem
    [MySQL] fix issue where advanced permissions formatted as plain-text
    [Bootstrapper] apache.php-version will always force a rebuild of PHP
    [phpMyAdmin] fallback to account password, if available, when SSO'ing into phpMyAdmin. cPanel migrations share account and database password, which for security, shall not be stored in ~/.my.cnf
    [Synchronizer] set a reasonable ceiling for TimescaleDB memory usage. Previous ceiling was server memory that slowly grows over time.
    
  • v3.1.28
    [PHP] zip compile flag changed from --enable-zip to --with-zip in PHP 7.4. Correct type check that prevented apache.php-version from changing version in major or major.minor versions
    [cpcmd] Restore -l, --list-commands usage
    
  • v3.1.27
    [UI] theme components namespaced into "theme::" namespace. @extends("layout") now becomes @extends("theme::layout"). Modal converted into component, @modal
    [Web Apps] snapshot reversion applies correct commit value. Blocking database export cleared prior to snapshot
    [Quota] an over-quota user would generate a fatal error during site:get-account-quota call
    [File Manager] "New" actions now work as expected in Firefox
    [UI] Laravel router support. See "template" app for sample usage
    [Debug] exception types now prefixed to unhandled exception messages
    [Core] deduplicate account metadata. Jobs require ~2.3x less storage
    [UI] bump jQuery to 3.4.1
    
  • v3.1.26
    [Web Apps] snapshot support
    [Bootstrapper] apply Ansible #65136 fix to templated aliases
    [Process] processes spawned from backend incorrectly report 0 exit status in non-zero conditions
    [Migration] mailman, path relocation support
    [apnscpd] DEBUG environment controls backend debugging. Previously frontend/cpcmd relied on "DEBUG" and backend used "DEVELOPMENT". env DEBUG=1 ./apnscpd -f restart restarts panel in foreground with debugging.
    
  • v3.1.25
    [NaiveCrypt] resolve case in which certain initialization vectors may be improperly parsed as bogus UTF-8 during serialization
    
  • v3.1.24
    763a3462 · CHG: update (migrations) ·
    [Telemetry] apply extension upgrade on package update. Reapply optimizations as well. [telemetry]unless [telemetry] => autotune is disabled.
    [multiPHP] resolve various edge cases
    [Web Apps] prefer stable releases. Backport MaxMind CCPA compliance changes
    [PowerDNS] fix Bootstrapper failure when enabled and firewalld disabled
    [sysctl] raise fs.inotify.max_user_instances. A high count of crond processes create an excessive number of watchers
    [auth] set_temp_password() fails to reapply previous password
    [PowerDNS] module update. Do not follow API redirections.
    [apnscpd] truncate logfile if size exceeds RLIMIT_FSIZE
    [PHP-FPM] DOCUMENT_ROOT no longer reflects unjailed path
    [admin] edit_site(), add_site(), delete_site()- support flags (--since=now --force is '[since:now,force:true]', -n --reset '[n:true,reset:true]', etc)
    [EditDomain] -c siteinfo,plan=NEWPLAN without --reset applies plan differences retaining any overrides. Plan switch with --reset resets all modified values - except lists such as aliases,aliases - with the plan settings. --backup backs up metadata prior to edit.
    [Migrations] various improvements to cPanel migrations. Apply secondary migration check on invalid home locations for email. Import SquirrelMail when --unsafe-sources provided. Convert incompatible responders to local delivery. Apply o+x on all document roots to allow initial reading.
    
  • v3.1.23
    [multiPHP] extension directory may incorrectly pickup ApisCP extensions
    [Rampart] fail2ban prefix overwritten
    [Databases] clone() copies MySQL, PostgreSQL databases
    [Auth] forward Cloudflare IP
    [Discourse] disable mini profiler
    
  • v3.1.22
    [PHP] Remi + native multiPHP builds. Remi is simpler package-based at the cost of performance. Native builds have similar throughput to system PHP version (+10-15% over Remi) at the added cost of compilation. apache.php-multi Scope facilitates native builds. See PHP-FPM.md in release documentation.
    [PHP] correct PHP 7.4 configuration flag for GD
    [SpamAssassin] add X-Envelope-From header for SPF/DKIM checks which occur after SRS rewrite
    [CLI] errors always report to STDERR
    [Scopes] info() includes default Scope value
    [License] add support for network restrictions, domain limits
    
  • v3.1.21
    [Scopes] system.kernel sets kernel type (system, stable, experimental)
    [Branding] rename APNSCP to ApisCP
    [mysql] recover-innodb-from-disk(), given a directory import all data files (.ibd) for which database lacks but has .frm
    [CLI] EditDomain new flags: --all applies edit operation to all sites, previous "--all" flag (edit all services) renamed to "--reconfig". --dry-run shows proposed changes. --reset resets the account to plan defaults.
    [Scopes] apache.ports sets HTTP/HTTPS ports for Apache to facilitate placing other services upstream. A non-SSL instance must always be active.
    [PowerDNS] update module, add "native" support (lithiumhosting/apnscp-powerdns@6ba5681)
    [CloudFlare] update module, trim certain RRs in accordance with API formatting. URI formatting (apisnetworks/apnscp-dns-cloudflare@65132b3)
    [AWS] update module, fix condition where an empty RR set on modificaiton fails (apisnetworks/apnscp-dns-aws@6b99a0f)
    [Laravel] fix installer version reference, misc installation bugs
    [Web Apps] update look and feel
    [CLI] YAML_INLINE environment var controls folding depth (default: 2)
    [PHP-FPM] correct cyclic socket dependency
    [Debugging] add documentation. common:purge-preferences() deletes user prefs in debug. misc:debug-session() enables debugging for named session
    [misc] jobify() enqueues an API command as a job. Optional third argument binds to a Site Administrator role, which could be possible to call pman_run() as a secondary user
    [artisan] opcenter:plan accepts --base and -c svc,var=val flags to optionally derive from an existing plan and service overrides
    [Scopes] apache.strict-directives controls how Apache treats unrecognized directives - 550 (default, strict enabled) or ignores (strict disabled)
    [Web Apps] installer errors do not bubble up in try/catch if ER messages upconverted to exceptions
    
  • v3.1.20
    [DAPHNIE] passive metrics collection when [telemetry] => enabled = 1
    [apnscpd] resolve when waitpid() syscalls in housekeeping fail to collect exit code
    [Bootstrapper] resolve conditions in which Mitogen cannot activate. FLARE prematurely checks for /etc/sysconfig/apnscp
    
  • v3.1.19
    [Logs] fix condition in which xfs-based mounts can trigger an Apache reload failure if a site goes over quota due to idiosyncrasies in how quota enforcement operates compared to ext4
    [Scopes] cp.flare-check, cp.update-schedule
    [UI] job runner status now available as admin
    [scripts] htrebuild implies systemctl reload httpd
    [Metrics] materialized views properly refresh
    [Opcenter] fix condition where editing all attributes of a domain results in dropping the domain from mapping and subequently fails to regenerate session
    
  • v3.1.18
    [UI] Toolbox domain clones within Manage Mailboxes, Subdomains, and DNS Manager
    [PHP] drop dentry/inode cache on PHP-FPM update
    [Opcenter] invalidating metacache on certain service reconfigurations triggers session ghost
    [UI] update styles
    [SSL] AcmePHP supports GET-as-POST
    [Opcenter] DeleteDomain, EditDomain support invoice grouping
    
  • v3.1.17
    [System] force-update mod_security package; optionally require module configuration
    
  • v3.1.16
    [Migrations] update cPanel shadow location
    [Scopes] ftp.enabled toggles FTP on server
    [Web Apps] restrict .git/
    
  • v3.1.15
    [Migration] --late-quota flag applies storage amnesty during migration (see Migrations.md)
    [Settings] blank page on full name change
    [Migration] transform symlink'd docroot to their platform equivalent
    [auth] set_temp_password() now works as site administrator. First parameter becomes target user, e.g. cpcmd -d site1 auth:set-temp-password foobar 480 (assign random password to user foobar, valid for 480 seconds)
    [Web Apps] early enrollment to snapshots
    
  • v3.1.14
    [Hooks] new! Copy bin/hooks to config/custom/hooks to get started
    [Web Apps] version sort breaks next version upgrade
    [apnscpd] fix "php_version insufficient privileges to call" error
    [Impersonation] restore session on app that initiated impersonation
    
  • v3.1.13
    [admin] get_site_storage()- list storage for all domains
    [user] getpwnam cache clobbers non-system user list
    
  • v3.1.12
    [Migrations] --apply-fortification=MODE applies Fortification profile to detected Web Apps
    [cpcmd] cpcmd --help command:name invokes introspection
    [mod_security] update baseline configuration, use Lua for filtering
    [File Manager] add "Date Modified" column
    [web] status() method reports mod_systemd on Apache 2.4.41-7+ releases
    
  • v3.1.11
    [Migrations] multiple improvements to cPanel imports
    [Apps] new PHP Pool management
    [Apps] application manifest accepts Yamlf ormat
    [SSL] wait 5 seconds to confirm TXT record during DNS validations
    [Rampart] flush() allows for emergency flushing of all or named jails. whitelist() assumes authenticated address when $ip omitted