| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
- Fix display of the overflow menu
- Improve tab spacing and internal layout
- Improve tab names for documents to correctly show the database for background documents in additional cases
- Update strings files
|
| |
|
|
|
|
| |
corresponding db doc switches to Custom Query editor to be able eg to drag a query from one tab to another one
|
|
|
|
|
|
|
| |
drawing glitches, improved spacing, improved edge drawing
- Enable tab switch commands even when documents are working
|
|
|
|
| |
fixes a number of issues including http://spbug.com/l/13
|
|
|
|
| |
(still hidden)
|
|
|
|
| |
addresses crashes http://spbug.com/l/540 and http://spbug.com/l/106
|
|
|
|
|
| |
- Change line 373 of PSMTabBarControl to "SequelPro" to see new tabs.
- The drawing of the tab edges needs to be redone on the very edge of each tab instead of being inset by a number pixels to resolve a few issues.
|
|
|
|
| |
dependency, in preparation for future code and style changes
|
|
|
|
|
|
|
| |
the interface being updated from the wrong thread on listeners
- Add a "Support Files" folder to MCPKit, containing NSNotificationAdditions to support main thread notifications from within MCPKit
|
| |
|
|
|
|
|
|
|
|
| |
- Addition of PSMTabBar framework
- Rework away from a document-based TableDocument
- Support tabs throughout the application
- Add menu items for creating tabs, and add support for dragging tabs to different windows
|
|
|
|
|
|
|
|
| |
- Remove extra call when changing databases, avoiding double calls
- Fix an error if the document has had no encoding set yet (addresses http://spbug.com/l/200)
- Tweak db struture querying to work on MySQL 3 and 4.0
- Rework function to remove duplicated logic, and to address a number of valueForUndefinedKey: exceptions logged via the bug tracker
|
|
|
|
| |
addresses http://spbug.com/l/250
|
|
|
|
|
|
|
| |
- Change MCPConnection.m to no longer use a reference to tableWindow to attach sheets - instead use a delate error display method if available
- Rework TableSource and TableContent sheetDidEnd methods into per-task methods rather than overloading contextInfo
- Rework SPAlertSheets to perform actions on the main thread, with the loss of (unused) support for a didDismissSelector. This addresses a number of crashes logged by the crash reporter
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Details as follows:
* altered MCPConnection listTablesFromDB:like: to return NSArray
* altered MCPConnection listFieldsFromTable:like: to use backtick quoted
strings for table and fieldnames
* added MCPConnection listTablesFromDB for a complete table list
* added SPStringAdditions.h to various files to prevent warnings
* added sheets for duplicate/rename DB in DBView.xib
* added duplicate/rename menu items to MainMenu.xib
* added outlets in TableDocument: databaseNewSheet databaseRenameSheet
databaseCopyNameField databaseRenameNameField copyOnlyStructureButton
copyDatabaseButton renameDatabaseButton
* added methods in TableDocument: getConnection, copyDatabase, renameDatabase,
_copyDatabase, _renameDatabase
* added OCMock Framework for object mocking in tests
* added group Others/DatabaseActions
|
|
|
|
|
| |
- Alter build scripts to use --enable-local-infile as a configuration option; this addresses http://spbug.com/644
|
|
|
|
| |
process list. Fixes http://spbug.com/l/152.
|
|
|
|
| |
of them.
|
|
|
|
|
|
|
|
|
|
| |
- MCPKit's listProcesses (mysql_list_processes) method is now used, instead of running the query ourselves.
- The ability to set whether or not the list is auto refreshed.
- The ability to set the autorefresh interval, either via the presets or by entering a custom value (the interface for this might need updating).
- Get the process list is now performed on a background thread.
This completes the implementation of issue #607.
|
|
|
|
| |
connection as well as only displaying dialogs when there is a window visible. Fixes http://spbug.com/l/113.
|
|
|
|
|
|
|
|
| |
safe. From now on, always use [self lockConnection] rather than [queryLock lock], independent of what thread you are running on
- A warning is written to the console when the connection is unlocked multiple times (to identify potential race conditions)
- modified MCPStreamingResult to ensure it only closes the connection once
- added a check to prevent arrow key navigation past the last row
|
|
|
|
|
|
|
| |
- Add more calls to deregister watchers to fix crashes to closing threads or objects
- Fix a couple of memory leaks
- Alter a few calls to be performed on main thread (afterDelay: operates on the thread is is called on) - this fixed database reloading after import and field/index deletion error sheets
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
background thread, and integrate for SQL import:
- Implement streaming reading of gzip-compressed files for SQL import
- Support exporting SQL dumps into a gzip-compressed file
- SPFileHandle supports the most-used subset of NSFileHandle commands for easy integration
- Integrate zlib 1.2.4 for improved gzip streaming performance (and support for custom buffer sizes and file offset positions)
This implements Issue #571 .
|
|
|
|
| |
- distinguish between any update tables list invoked by SP which causes a weak and quick refresh if nothing was changed and if the user pressed Table List Refresh button explicitly which will cancel any current db querying and pending ones
|
|
|
|
|
|
| |
- improved encoding handling while querying
- if SET NAMES ... fails bail to avoid exceptions
- this should fix http://log.sequelpro.com/view/101
|
|
|
|
| |
thread to allow the UI to update and handle events on 10.6. Also clean up the logic in MCPConnection waiting for a proxy discoonect to handle more cases and simplify code.
|
|
|
|
|
|
|
|
| |
by switching from NSCondition blocking to NSLock blocking
- Improve behaviour of SSH tunnels with no password in keychain - prompt appropriately
- Set MXPConnection to check the proxy state when attempting to reconnect a dropped connection, extending the timer when an auth UI is up. This prevents a multiple-dialogs misbehaviour (or sometimes deadlock), addressing the last part of http://log.sequelpro.com/view/86 .
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
'overlapping' access to global variables
• after querying db structure write back data on main thread
• completion list displays animated sync images if connection is just querying db structure data
• fixed some minor issue for completion list
• make sure that if last window of a connection is closed all relevant data will be removed from global variables
Note: please test!
|
|
|
|
| |
resulting from merge of our updates, increased stack depth, fix problems logging exceptions on a large number of machines)
|
|
|
|
|
|
|
|
| |
• some speed improvements for navigator
- pre-calculate display string for type info to avoid doing it all the time while refreshing the outline view
• suppress double-clicking at a not yet queried db structure if the same connection is querying another structure to avoid accessing the same storage objects from different threads (test)
• reload outline view after filtering in navigator runs in its own thread to avoid blocking SP
• fixed memory leaks while returning [obj copy]
|
|
|
|
|
|
| |
• avoid making the completion key list unique since it's possible to insert unique items only
• added trigger to query db structure after SQL import
• some work to avoid http://log.sequelpro.com/view/90 (not yet ideally - WIP)
|
|
|
|
|
| |
- collection classes as NSMutableSet are NOT thread safe!
• further tiny speed improvements for navigator
|
| |
|
|
|
|
|
|
|
|
| |
- if user typed "foo." and there's an unique schema path regardless cases (like there's an item Foo) show the content of the path Foo
- now getUniqueDbIdentifierFor:term returns an array of found type (db or table) and the found string to handle case better for completion
• tried to speed up the search in the navigator by using a NSPredicate
• [MCPConennection allKeysofDbStructure]
- fixed issue while returning if allKeysofDbStructure == nil
|
|
|
|
|
|
|
| |
• improved gathering and caching of structure data coming from connection windows with the same connection
• made the structure querying more stable against threading issues
• moved getUniqueDbIdentifierFor from MCPConnection to SPNavigatorController to be up-to-date in all connection windows
• improved detection if db structure querying should be performed or not (not yet finished)
|
|
|
|
|
|
|
|
|
|
|
| |
statements
- completion now works for server versions < 5 as well
- proc/func info will be queried by using information_schema for mysql >= 5
- changed completion logic to handle new format
- completion will get the info from SPNavigator since this controller caches all information about db structure
- optimization and fine-tuning will follow very soon
|
|
|
|
|
|
|
| |
improving both proxy disconnection and reconnection after dropped connections
- Slightly tweak SPSSHTunnel to improve proxy behaviour
|
|
|
|
|
|
|
|
|
| |
dialogs and related crashes
- Move connection error sheet close method to the connection delegate
- Tweak the information_schema db schema building query to be much faster on busy servers by amending the VIEW part
- Set the connection lock to nil after releasing, coping with connection unlocks deferred on the main thread until after dealloc
|
|
|
|
|
| |
- fixed issue if different connection windows are connected to the same connection
- prepared structure querying method to be able to add user info containing which table/db was changed if we know it to reduce the future parsing cost
|
|
|
|
|
|
| |
- fixed issues for deletion of a db like remove all relevant items and refresh the navigator
- simplified and minimized code and memory usage while querying the connection structure
- whether a schema name is an unique db or table will be evaluated on run-time via allKeysofDbStructure
|
|
|
|
|
|
|
| |
- now it accumulates the data and caches them db by db, ie one has to select a db before using its structure for completion and navigator
- next step is to avoid querying info_schema as much as possible
- it will only query the structure if something was changed
- next steps follows as soon as possible
|
|
|
|
| |
unlockConnection on the main thread.
|
|
|
|
| |
during static analysis.
|
|
|
|
|
|
|
|
| |
main thread. This cleans up calls, results in small speed improvements when making lots of queries (no more stopping/starting of keepalives), and ensures only the main thread handles the initial keepalives.
- Move connection unlocking to a blocking call to fix http://log.sequelpro.com/view/73
- Fix memory leaks caused by non-detached pthreads
|
|
|
|
| |
are listed in `information_schema`.`COLUMNS` for now which is a 'quick-fix' for i608. In the near future the gathering routine will do it db/table by db/table to minimize the traffic starting from the current selected db.
|
|
|
|
|
|
|
| |
- first implementation of a search functionality, workable but tiny issues have to be improved
- up to now the only search implemented is 'contains', regexp/fuzzy search will come soon
- the search is only performed in the main outline view, the upper one is static
- for the new search store all available schema paths uniquely in an array which will be set during queryDbStructure (this avoids re-parsing of a dict structure)
|