v3.0.0
版本发布时间: 2022-01-04 12:50:10
darkain/pudl最新发布版本:v3.1.0(2022-07-11 02:47:15)
FINALLY releasing PUDL 3.0
The most important difference with this update is that it is no longer tied directly to the Altaform release schedule, meaning the PUDL and Altaform version numbers will no longer match. This means that both can be worked on, updated, and published entirely independent of one another!
Major changes:
- Tons of compatibility fixes for PHP 7.x, 8.0 and 8.1 (all officially supported now!)
- $order and $group arguments no longer accept raw string values. Use pudl::raw() instead to show intent: https://github.com/darkain/pudl/commit/ace095eb94ac419dd3e9857f12425bc51b18609f
- $column values may now express quality: https://github.com/darkain/pudl/commit/76851d91befff091e7c6c71b1408248bbf5a898b
- Simplified Altaform ingegration: https://github.com/darkain/pudl/commit/85e07cb2bdbd55be3867f18f053479003b540bc7
- Added $db->ping() methos: https://github.com/darkain/pudl/commit/603d72b3dd712131ee25f437f9c72452ac1abcb7
- Transaction "chunk"ing may now be committed based on time, not just the number of inserted rows: https://github.com/darkain/pudl/commit/ed1337abe08e7cbbd96b6bc8eee2de2dc4b8f017
- MySQLi interface can now auto-reconnect: https://github.com/darkain/pudl/commit/4735a13744a15bd64acd41f7e21be3fc21d4313d
- You can now get the parent pudl object from a pudlResult: https://github.com/darkain/pudl/commit/aba69801ecb44fb9514503e48d35175af440b688
- You can now get the parent pudl object from a pudlSession: https://github.com/darkain/pudl/commit/c296d88bd77176de71cf4390daf9b544831b76e0
- pudlSession: Forcing SameSite restriction on PHP 7.3+: https://github.com/darkain/pudl/commit/3924f682d5160223928f2adcdc0588d9af5c4da0
- Removed current HHVM version from testing suite, as 4.0 is no longer compatible: https://github.com/darkain/pudl/commit/b54c0f23897561714a0eab21de1a357b9df9788c
- Added ability to update auth information on the fly: https://github.com/darkain/pudl/commit/75fff837474a8792d4f43e69a76ea400c49f4609
- SQLite: can now get list of tables: https://github.com/darkain/pudl/commit/ab71c8041e0d2fd95fd1762f194f986e1056a9d1
- SQLite & PostgreSQL: transaction support: https://github.com/darkain/pudl/commit/24615b4a0808324752c1ff2151813108b723d479
- $autoconnect removed, replaced with "offline" configuration option: https://github.com/darkain/pudl/commit/3ca10e4844748df8218c727e99363c25abd164a7
- Added $pudl->tableStatus() method: https://github.com/darkain/pudl/commit/2bd03591d87b17184f4e9e3ff750a154cefa6c44
- Added pudl->estimate() - similar to pudl->count() but less accurate: https://github.com/darkain/pudl/commit/d5ffb107276eb7fc8735d7c4b2903f37829c7801
- Added transaction savepoint support: https://github.com/darkain/pudl/commit/bafe7337c6f312e9f98d04be4180c0207a25fdc1
- Converted hard to read error messages into JSON: https://github.com/darkain/pudl/commit/96c56766fcbfa2af6f2533613bca7e77832d22f2
- Tons of default parameter values changed from false to NULL: https://github.com/darkain/pudl/commit/cd07443bf6d5f1db738ab7dc3540675bc59fbda9
- More pudlObject functions: https://github.com/darkain/pudl/commit/f3207e83d4345498ff824ae4faf54e739e147202
- Session status variables are now fully configurable: https://github.com/darkain/pudl/commit/68911a0e65d4b8597a230f0fa79ab563d74587f0
- Session cookies are now secure by default: https://github.com/darkain/pudl/commit/376b8f1a2904914d59d8c80e25140ab59eb653c4
- More CREATE TABLE support: https://github.com/darkain/pudl/commit/adbf3c2ed9303584b9bf8febb97dd26d160314a0
- SQLite: Added exception handling: https://github.com/darkain/pudl/commit/c9ef4c46740bb6d17ab1b50d058fcf4ed16e489b
- pudlSession: add exception handling: https://github.com/darkain/pudl/commit/332d6efb8cde66ff398e209df60fe364b3f94a89
- Exceptions within exceptions no longer create infinite loops: https://github.com/darkain/pudl/commit/8ac9891e2d50ce2c4592dcf7d8d9cb2f957d0430
- Field names are now all lower-case: https://github.com/darkain/pudl/commit/25ef1d199cafeeaec0d86fda6e4368319b27b2b3
- Better compatibility with generated columns: https://github.com/darkain/pudl/commit/ce79278f4907d3f241e3283f2b2f84c7e8c04888
- PUDL configuration options may now be a JSON string instead of PHP Array: https://github.com/darkain/pudl/commit/79479ceea47ab3881ee714608d9ed953d650f849
- Adding $pudl->exsert(): Similar to upsert, but wont update anything, and wont error on duplicate (but other errors will persist): https://github.com/darkain/pudl/commit/de8c4b542a5a91ad9436049697fc8f79bc378421
- Added pudl->check(table): https://github.com/darkain/pudl/commit/3456a9f9ee50642507eeb1320d116406794b93ae
- Added pudl->optimize(table): https://github.com/darkain/pudl/commit/a2d0c92fb3c8cd791d9551aa8835d1b788a5a799
- Added pudl->analyze(table): https://github.com/darkain/pudl/commit/5e455dd961fa102f926341b53a2e04c54d5e9a3c
- Added pudl->histogram*(): https://github.com/darkain/pudl/commit/a38eb9e91e18b97d4c4df6467d2f91850ee425e8
- Added pudl->hostname(): https://github.com/darkain/pudl/commit/b26fce6c84095a7ab422592a69aa8d0bb64d1342
- Unit test can now optionally connect to a server: https://github.com/darkain/pudl/commit/a051aee6b3294d4a6418aa56dc808b1eb9b0503b
- sql_mode is now optional and configurable: https://github.com/darkain/pudl/commit/a7cc72bafa94e01b4244318609563b6d327cb7ed
- $value now accepts a "callable" and uses its returned value: https://github.com/darkain/pudl/commit/466390cb0c46535ef7b4a51c3f198d5a35837cee
- pudl can now accept another pudl instance for instantiation, copying its auth data: https://github.com/darkain/pudl/commit/b666dca1dd68c1a039f7db4227be780a78ecace4
- Table prefix changed to a more advanced "name replacer": https://github.com/darkain/pudl/commit/06e30e812f3f3750ef3c4105eb6140dc770d38ad
- Added pudl->errors() and pudl->warnings() to query the database and have it return that data: https://github.com/darkain/pudl/commit/0bd5272abdd9ecc4c7d5d17fc75a77057ecd76d5
- Allow a 0 timeout value to disable timeouts entirely: https://github.com/darkain/pudl/commit/1cf5b1593300b72b0d1497c7aa39c0733a89610c
- pudl::inSet() and pudl::notInSet() removed: https://github.com/darkain/pudl/commit/1d0542850d503afa0c57d574525e3895ed83fbe5
- "connected" value now contains what server pudl is currently connected to (instead of true/false): https://github.com/darkain/pudl/commit/2353ab8eefea115aaf5273b15b8a3e72ad948c13