| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
| |
b2d798ba9282d3acf1a2d65de30849e529d4d255)
* Fix an exception that could occur when trying to view a damaged table
* Fix a theoretical use-after-free issue by a wrongly structured retain/release in a setter
|
| |
|
|
|
|
| |
This does not entirely fix the bug of SP sometimes displaying the wrong collation, but should work in >= 99% of cases.
|
|
|
|
|
| |
Take this commit as a proposal to formalize our existing "[x release], x = nil;" convention by introducing a macro for it.
Feel free to revert this commit if you see issues with the approch or implementation.
|
|
|
|
|
|
| |
* [NSDictionary dictionary] → @{}
* [NSDictionary dictionaryWithObject:forKey:] can safely be replaced. object==nil would have already thrown a NPE in the past.
* Also replaced some (hopefully safe) NSArray initializers (ie. their objects should always exist).
|
|
|
|
| |
Note: [NSArray arrayWithObjects:...,nil] is left unchanged as that could possibly cause a NPE if converted to @[]
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
support character sets/collations, addressing Issue #1629
- Fix needless collation queries on those servers
- Disable field enums and table encoding dropdown on those servers
|
| |
|
|
|
|
| |
* Move a bit of redundant code into a method
|
| |
|
|
|
|
|
|
|
|
| |
database encoding
- Clean up the database creation logic and remove redundant selection logic
- Correctly reset and detect the database encoding when creating and switching databases
|
| |
|
| |
|
|
|
|
| |
structure view. Implements issue #1355.
|
|
|
|
|
|
|
|
|
| |
- Make the default sheet width wider
- Change "Default" encoding to "Inherit from database" to clarify the action of the menu item
- Fix retrieval of default table type on recent MySQL versions
- Fix retain of default server table type
This should address Issue #1377.
|
|
|
|
| |
fixing overrelease crashing on exit
|
|
|
|
| |
new table sheet. Implements issue #1245.
|
|
|
|
|
| |
- If a table has no rows, don't show the data loss warning when altering table engine
|
|
|
|
|
|
|
| |
fix nightly builds
- Fix warnings
|
| |
|
|
|
|
|
|
|
|
| |
- Add a ping keepalive managing object to prevent retain cycles from the NSTimer
- Add -[SPMySQLConnection copy] support
- Refactor Hans-Jörg Bibiko's database structure retrieval, moving it out of the MySQL framework and building it around a copy of the connection. This reduces the amount of connections-over-time used by Sequel Pro to two constant connections (addressing Issue #1097) and improves robustness.
- Use the database structure retrieval connection for faster query cancellation without an extra connection required, if possible
|
|
|
|
|
|
|
|
|
|
|
|
| |
exceptions as database structure retrieval is currently missing!
Further work on SPMySQLFramework integration:
- Improve SPMySQL framework build settings including correct ppc builds and a Distribution configuration for the build distributions to match
- Add new convenience querying and result methods to the framework
- Amend Sequel Pro source to use the new SPMySQL.framework methods everywhere, replacing MCPKit methods where they differ and improving some functions
- Remove MCPKit from the source
- Fix a number of warnings on Release-style builds
|
| |
|
|
|
|
|
|
|
|
| |
- Prepare for the implementation of PDF and HTML export by hiding the export options box for export types that don't need it.
- Fix some spacing issues on the export dialog.
- Create a new SPCategoryAdditions header that is included in the apps precompiled header, making all additions available to all classes.
- Update strings files.
|
|
|
|
| |
into SPDatabaseCharacterSets. The struct is now returned by calling SPGetDatabaseCharacterSets().
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add a new ServerSupport class, for which an instance is created upon each new connection and is then subsequently accessible via SPDatabaseDocument.
- Replace the majority of manual version checking with calls to properties in the above new class.
- Improve the user manager's compatibility with MySQL 3 and 4 servers. Fixes issue #811
Other changes include:
- Disable the encoding popup button when adding a new table or database to servers running pre MySQL 4.1 as it only contains one option, 'Default'.
- Fix various potential memory leaks discovered during static analysis.
- General tidy up and comments.
|
|
|
|
|
|
|
|
| |
reduce the querying of info_schema
- this fixes the querying of each reloadData in [SPTableStructure objectValueFor:]
• autoreleased mutableCopy in [SPTableStructure loadTable]
• fixed drag&drop query in SPTableStructure to copy charset and collation as well
|
|
|
|
|
|
|
|
|
|
| |
localisation errors
- Add database encoding retrieval support for MySQL 4.1
- Convert the add table and add database sheets to use encoding menus derived from server supported encodings
- Re-layout preferences with larger labels to aid localisation
- Fix preference resizing in non-Favorite tabs
|
|
|
|
| |
is set to prevent multiple calls everytime the list of available storange engines, etc. is requested.
|
|
|
|
|
|
|
| |
returning nil if no error occurred (previously a blank string was returned most of the time)
- Add a new (BOOL)[MCPConnection queryErrored] method, changing all error message checks to use it for clarity
|
|
|
|
| |
SPConstants.h/m.
|
|
|
|
| |
variables, a few leaks, and additional nil setting/checking to prevent overreleases or releases of random areas of memory.
|
|
|
|
| |
getDatabaseCollationsForEncoding is equal to NULL
|
|
|
|
|
|
|
| |
release builds, including a large number of 64bit compatibility upgrades and tweaks
- Upgrade RegexKitLite to 3.3
|
|
|
|
| |
version < 5 - this speeds up SP esp. for slow connections
|
|
|
|
|
|
|
| |
to avoid binary-mode result issues with certain versions of MySQL (including 4.1.14). This should address Issue #509.
- TableDocument now requests the server version string from MCPConnection, aiding caching
|
|
|
|
|
|
|
|
| |
data *after* the scroll
- Quote timestamp and connection when copying rows from the table console
- Reduce queries when fetching database collations or encodings by removing an additional check and adapting logic to match
|
| |
|
|
|
|
| |
information_schema database, use its exact name case-wise, to avoid problems on case sensitive filesystems (i.e. linux).
|
|
|
|
|
|
|
|
|
|
|
|
| |
• fixed issue while retrieving possible encodings/collations from information_schema
- in many cases
"SHOW TABLES IN information_schema LIKE 'character_sets'"
returns NULL whereby
"SELECT * FROM `information_schema`.`character_sets`"
returns the correct list
- change the test query to the latter syntax
- if the retrieving of possible encodings fails return an array of the hard-coded list with dictionaries containing the keys for name AND description
-- [this fix solves i400 due to the fact that the chosen encoding title from the popup list must be of the format: "description (name)"; otherwise the following regexp returns (null) because it's looking for the content of parentheses]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Includes all custom code from subclasses CMMCPConnection and CMMCPResult, meaning they have subsequently been removed from the project.
- All previous Sequel Pro specific code in the above subclasses has been removed in favour of the delegate (currently set to TableDocumet) informing the framework of such information.
- All references to CMMCPConnection and CMMCPResult have subsequently been changed to MCPConnection and MCPResult.
- Framework includes MySQL 5.1.36 client libraries and source headers.
- Framework is now built as a 4-way (32/64 bit, i386/PPC arch) binary.
- All import references to <MCPKit_bundled/MCPKit_bundled.h> have been changed to <MCPKit/MCPKit.h>.
- New script 'build-mysql-client.sh' can be used to build the MySQL client libraries from the MySQL source. See the script's header for a list of available options or run it with no arguments to display it's usage.
Note that there are still a few changes to be made to the framework with regard to removing Sequel Pro specific calls to the delegate. These however can be made later on as they have no effect on functionality and are merely design changes.
Also, note that any future development done on the framework should be made to be as 'generic' as possible, with no Sequel Pro specific references. This should allow the framework to be integrated into another project without the need for SP specific code.
|
| |
|
|
|
|
| |
remove the depdendency on the information_schema database when its not available or accessible.
|
| |
|
| |
|
| |
|