PyXA 0.1.2
Additions
- Added ability to instantiate application objects by calling their title-case name (with whitespace removed) on the PyXA module, e.g. PyXA.Calendar() and PyXA.Safari()
- Added Additions.UI.XAHUD — A class for displaying momentary messages to the user via a HUD window in the center of their screen.
- Added SystemEvents.XASystemEventsProcessList.by_displayed_name(str)
- Added bulk methods to XASoundList.
- Added by_property methods to XAApplicationList.
- Added XABase.XAURLList.
- Added XAList.index(element), which functions the same as the index method of standard list objects.
- Added ability to quit menu bar apps from the terminal with control+C
Bug Fixes/Changes
- XAMenuBar now automatically hides the dock icon of the application.
- XANotesAttachment.url now return an XAURL instance.
- Fixed bulk getter methods on XAList objects sometimes attempting to operate on empty lists and causing a TypeError. Bulk getter methods should now always return a list, even if empty.
- Fixed XAFinderContainerList.entire_contents not returning anything. Now returns an instance of XAFinderItemList.
- Fixed XAFinderListViewOptions.colums() returning instance of XAFinderColumn instead of XAFinderColumnList.
- Fixed XAFinderContainerList.container_window() failing to return a list of windows due to inaccessible object property.
- XANoteList.by_creation_date(), XANoteList.by_modification_date(), XANotesAttachmentList.by_creation_date(), and XANotesAttachmentList.by_modification_date() always returning None.
- Fixed XANoteList.by_container() failing due to AttributeError.
- Fixed XANotesAccountList.by_default_folder() failing due to AttributeError.
- Fixed XANotesFolderList.by_container() failing due to AttributeError.
- Fixed XANotesAttachmentList.by_container() failing due to AttributeError.
- Fixed Reminders.XARemindersReminderList.container returning creation dates instead of containers (Now returns list of Reminders lists).
- Fixed setting XAVLCDocument.path not working due to infinite recursion.
- Fixed XARemindersApplication.new_list() failing due to trying to access ID property of proxy element.
- Fixed XARemindersApplication.new_reminder() failing due to trying to set an unknown property key.
- Fixed XARemindersAccountList.by_properties(), XARemindersListList.by_properties(), and XARemindersReminderList.by_properties() failing due to accessing unknown property key.
- Fixed XARemindersListList.by_container() and XARemindersReminderList.by_container() always returning None.
- Fixed XACalendarCalendarList.properties() returning a list of None elements.
- Fixed XACalendarCalendarList.by_properties() failing due to AttributeError.
- Fixed XACalendarCalendarList.description() returning a list of None elements.
- Fixed XACalendarCalendarList.by_description() failing due to slight differences in memory locations.
- Fixed XACalendarEventList.properties() returning a list of None elements.
- Fixed XACalendarEventList.by_properties() failing due to AttributeError.
- Fixed XACalendarEventList.by_description() always returning None.
- Fixed XACalendarEvent.properties always returning None.
- Fixed XACalendarEventList.duplicate(), XACalendarEventList.duplicate_to(), and XACalendarEventList.move_to() not saving events.
- Fixed XACalendarAttachmentList.uuid() having a typo in its declaration.
Deprecations
- Importing various classes from the core PyXA module is now deprecated in favor of submodule imports
- These classes are still available via PyXA.[class_name] for now, but importing them from their respective submodule will be necessary in the future. This is to minimize memory usage and load time when importing PyXA.
- XAFinderApplication.delete_items() — Use delete_item() instead.
- XAFinderApplication.duplicate_items() — Use duplicate_item() instead.
- XAFinderApplication.recycle_items() — Use recycle_item() instead.
- XACalendarCalendar.week_events() — Use events_in_range() instead.
Removals
- Removed logging using the Python logging module as it was causing issues with PyXA scripts bundled as Mac apps via py2app. NSLog is (minimally) used instead.
- XACalendarCalendarList.calendar_identifier(), XACalendarCalendarList.by_calendar_identifier(), and XACalendarCalendar.calendar_identifier; these methods/attributes have never worked correctly and cannot currently be fixed.