| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
- Fix a memory leak in MCPResult.m's stringFromCString:
- Display the number of server variables being display when a filter is being applied
|
|
|
|
|
| |
- lastSqlFileEncoding will be stored in the Preference.plist
- to open SPF files not yet supported
|
|
|
|
|
| |
- renamed menu item to Open
- if sql file is selected encoding popup list is enabled otherwise not since spf will be encoded in UTF-8
|
|
|
|
|
|
|
| |
app for sql files) will insert the file content into the Custom Query editor of the current active doc
- this action starts SP and asks for a connection if it is not running
- same for drag&drop a SQL file onto SP's dock icon
|
|
|
|
|
|
|
|
|
| |
- Open/Save menu items are hidden
• initial support for drag&drop files *.spf and *.sql to SP's icon or double-click at *.sql or *.spf files in Finder
- SP starts if not already running
- sql files will be executed in the Custom Query if at least one connection is open
- spf files not yet supported
-
|
|
|
|
|
| |
- set focus to Table List filter field after selecting a database
- TAB key in Table List filter field sets focus to Table List for selection/navigation
|
|
|
|
|
|
| |
- Update the save variables button to save the current filtered variables if necessary
- Remove old/unused NSSplitView code
|
|
|
|
| |
toolbar item to navigate backwards and forwards. TBC!
|
|
|
|
|
|
|
|
| |
position that would hide content
- Store collapse state of table information panel in preferences
- Apply a double fix for BWSplitView/NSSplitView+BWAnchoredButtonBar not informing delegates of resizes - correctly inform original BWSplitView delegates of resizes, and allow BWAnchoredButtonBar registered delegates to recieve the original split view resize notifications. This fixes database menu resizing in synch with splitview resizing for improved/consistent look and feel.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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.
|
|
|
|
|
|
|
| |
- now the gathering of suggestions does not query the MySQL connection, instead it uses the TableList/TableDocument tableView data as a kind of cache
- this approach should improve the speed for slow server connections
TODO: auto-update for TableList and Database List resp. (it could happen that an other user changed the name of a table/db meanwhile)
|
|
|
|
|
|
|
|
|
| |
- Replace the connection sheet with a new connection view
- Provide a tab-based selection system for Standard, Socket, and SSH connections, and show only the necessary fields. This resolves Issue #50.
- Detect when "localhost" is used in error and alert the user (also to address Issue #50)
- Update favorite editing to match connection view
- Move connection methods to a new connection controller and tidy up TableDocument
|
| |
|
|
|
|
|
|
|
|
|
| |
if 127.0.0.1 was retried automatically.
- Store the SSH debug logs and allow viewing on connection error
- Clean up CMMCPConnections on connection failure
- Fix connection keepalive instantiation
|
|
|
|
|
|
|
| |
- Add view and code to support drawing a connection status icon at the left of the titlebar
- Use for SSH tunnels; completes Issue #114.
- Remove reference to an image resource "j" in the DBView - fixes console log errors.
|
|
|
|
|
| |
- Table Info pane is collapsable
- Export Controller code cleanup
|
|
|
|
|
|
|
|
|
| |
statements in the Custom Query editor if necessary
- if statement begins with: use, create, alter, rename, drop
• reload table list, database pull-down menu according to imported statements
• sped up "Import MySQL Dump"
• fixed some tiny issues of the last commit
|
|
|
|
|
|
| |
table list if it was already opened
• commented out the NSLog "not parsed" in SPTableData.m
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bugfixes:
- SSH tunnels can now correctly show dialogs for ssh queries, eg host key mismatches
- SSH tunnels are now correctly closed by the document for connection failures
- Keychain password item name and account generation has been moved to within the keychain class, to centralise generation for consistency
- Keychain item names and accounts now correctly deal with nil values, allowing more keychain items to be read
- "Add to favorites" button and menu item now correctly store passwords and SSH tunnel settings
- Duplicating favorites in preferences now selects the newly created favorite instead of deselecting everything
- Fixes an occasional crasher sometimes encountered in keychain usage
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Implementation of a new SPSSHTunnel class, designed to closely integrate SSH tunnels within Sequel Pro.
- Integration of SPSSHTunnel - new connection methods using callbacks, and CMMCPConnection integration
- Keychain class upgrade to include the new SPSSHTunnel keychain password helper on the trusted access list for new passwords
- Keychain passwords are now held in memory/UI for only as long as necessary, increasing password security
- Updated interface to enable/add SSH tunnel functionality
- Remove old SSHTunnel class
- Addition of new target for the SSH Tunnel password assistant, addition as a dependency of the main target, and addition to build script to copy into resources directory
- Fix a keychain password deletion crash
|
| |
|
| |
|
|
|
|
| |
in online wiki
|
|
|
|
|
|
|
|
| |
- Allow saving the variables to a file in MySQLs config format.
- Truncate variable names and values instead of clipping them.
Expect live filtering as future enhancements.
|
| |
|
|
|
|
|
|
| |
Implementation of copy with column names menu item
Removal of copy column names
|
|
|
|
|
|
| |
Also replaced some NSLog with DLog/ALog
|
|
|
|
|
|
| |
- it shows the MySQL Help TOC of the front most tableDocument mysql connection, i.e. each tableDocument has its own Help window (due to the fact that the Help is version specific), and makes it the keyWindow
- changed the way for getting the mySQLversion into the CustomQuery; now a new tableDocument set it via [customQueryInstance setMySQLversion:foo]; the other way was to unsafe regarding to get the version if MySQL Help was invoked via MainMenu
• Help window and Create Table Syntax window will be released while closing the tableDocument
|
| |
|
|
|
|
| |
NSView.h and DOMCSS.h (via Webkit.h). Fixed by defining the connect sheet's status text to be of type NSTextField as opposed to the generic id type.
|
|
|
|
|
|
|
|
| |
the + and - buttons, and re-enable double-click to connect. This addresses the majority of Issue #232, although the "Edit" button is not yet functioning.
- Fix a bug where if an autoconnection failed, connection was automatically reattempted
- Add a name field to the connection sheet, and display the name in the window title in place of user@host if set
|
|
|
|
|
|
|
| |
directly to pick up updates more quickly
- Improve favouritesAlreadyExists check to respond correctly if the connection database, host or user is blank
|
| |
|
|
|
|
| |
automatic creation methods to only trigger automatic connection (if enabled in prefs) for automatically created windows
|
|
|
|
| |
- committing Source
|
|
|
|
| |
current connection details to your favourites provided it doesn't already exist.
|
|
|
|
| |
renaming a favourite wouldn't update the associated Keychain item. The item is now updated whenever the favourite name is changed.
|
|
|
|
| |
them in sheets instead of modal dialogs. Also performed a general tidy up of TableDocument.[hm].
|
|
|
|
|
|
|
| |
backup-type process and more closely match mysqldump, and correctly drop views
- Consistently set and restore the encoding appropriately for SQL import/export, and export to UTF8 files to correctly store all characters. Goes a good way towards addressing Issue #116.
|
|
|
|
|
|
|
|
| |
invalid log entries
- Set the focus to the custom query text field when appropriate when switching to the custom query tab
- Add the ability to set the custom query editor font, save and load it from preferences, and no longer reset the font on queries
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
text view. This should significantly improve import speed, but most importantly resolves the crashes caused by the drawing that was being performed by the text view. Fixes issue #87 and implements #167.
New console provides the following:
- Live filtering
- Ability to hide message time stamps
- Ability to hide SELECT/SHOW statement messages
- Ability to copy messages to pasteboard, including multiple messages
- Ability to save the current filtered content to a file, with the option to include the message time stamps
|
|
|
|
|
|
|
|
|
| |
panel also adds the ability to save the current console content to a file on disk. Speed up the updating of the text view by removing the re-draw of the view after each message is appended. The console is still very basic, but is a starting point for more functionality to be added now that it is all handled in a single class.
+ Add the ability to specify the encoding when creating a new database. Addresses issue #125. Also improve the usability of the create database sheet by only enabling the 'Add' button if the database name length is greater than zero. This elimates the check that is done and the error panel that is displayed if the name is empty.
|
|
|
|
| |
improves clarity, but also fixes an issue: if a connection with amended details failed, the default favourite details are reloaded in the sheet if a favorite is selected. This change allows a connection to fail and the actual used details to be reshown in the sheet.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Significantly reduce the queries that have to be performed, improving lag - especially over slow connections (Issue #118; see new controller info under headline code changes).
- Fix Issue #117 properly (export numeric quoting - we now have access to column types and so can quote appropriately).
- Fix Issue #145 (loss of unsigned/null/default attributes when reordering columns).
- Fixes Issue #90 (support for filtering DECIMAL column types)
- Improve table scrolling speed when the table contains long items. (Added a NSFormatter to automatically truncate strings > 150 chars for display purposes only)
- Improved SQL compatibility - for example /* C style comments */ are now correctly ignored in imports and custom queries.
- Add text and symbols emphasising that the table info pane / status view row count is an approximation (partially addresses Issue #141)
- Fixes a major memory leak whenever opening or scrolling tables containing text/blob data.
- SQL import is now faster (SQL parsing part is 3x faster).
- Speed up SQL export (1.5x faster for numeric data; 1.1x faster for string data) and slightly speed up CSV export (~1.1x faster).
- Display sizes on the status view using the byte size formatter, as per table info pane.
Headline code changes:
- Add a new NSMutableString subclass, SPSQLParser. See the header file for documentation and overview, but in short it's a centralised place for SQL parsing. Centralises and improves parsing, improves comment support, improves quoting support. Despite the improved featureset this is also faster than the previous distributed implementations - for example, when used to replace the old splitQueries:, > 3x speedup.
- Implement a new controller which handles a structure and status cache for the current table, and provides structure parsing for specified tables. This cache is now used throughout the code, reducing the queries that have to be performed and providing additional information about the table structure for use; I think it also improves column type format slightly.
- The table info pane and the status view now draw all their data from the cache.
Tweaks:
- Table encoding is now detected directly instead of being derived from the collation - increased accuracy and cope with the DEFAULT encoding.
- Comments and formatting cleaned up in bits I was working on, obviously.
- A couple of methods - particularly [tablesListInstance table] and [tableDocument encoding] - have been renamed to avoid conflicts and fix code warnings.
Future improvements now possible:
- As we now have access to column types and other information, we can provide per-type behaviour where desired.
- The table parsing doesn't currently pull out comments or table indices, together with one or two other attributes. Some of this would be useful for display; some, such as indices, could be used to draw the table structure view as long as we're happy discarding a couple of columns (ie cardinality!)
|
|
structure.
|