All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
0.10.1 - 2019-10-04
- Fixed default arguments in commands not being overridable.
0.10.0 - 2019-09-13
- Concurrent commands and jobs. Command and jobs now run concurrently by default. You can modify the maximum number of concurrent events using the
maxThreads
property on the config object, by default its value is 4. To opt out of this feature you can set the value of the config key to1
and the old syncrhonous behaviour will remain. - Hot reload functionality. If phial detects a file has changed it will reload the file and restart the bot. Enable this using the
hotReload
key in the phial config (Valid valuesTrue
andFalse
. Defaults toFalse
) - Type hint validation. If you use inline type hints to specify the type of a command's parameter phial will now validate the users input and convert it to the specified type. for use in your command function.
- Scheduled jobs now will reschedule if the job's function errors.
- Python 3.5 support
0.9.1 - 2019-06-19
- Error when phial logged an error
0.9.0 - 2019-05-31
- Added 'loopDelay' config option. Specifes how to long to sleep for in the main loop, this helps to prevent super high CPU usage while phial is doing nothing. Defaults to 0.001
- Added
hide_from_help_command
argument to command creation. This hides the command from the list generated by inbuilt help command.
- Python 3.6.1 is now marked as incompatible due to an issue with the
NoReturn
type
- Deprecated Python 3.5 Support. This is intended to be the last phial release to support Python 3.5
- Removed the optional
logger
paramater when constructing Phial instance. Now useslogging.getLogger(__name__)
all the time.
0.8.3 - 2019-05-02
- Restrict python-slackclient support the 1.x series
0.8.2 - 2019-03-08
- Project Metadata
0.8.0 - 2019-02-25
phial has undergone a major internal rewrite and while the public API has largely stayed the same this version should not be seen as a drop in replacement.
__version__
module attribute to be PEP 396 compliant
- Set minimum Python version to 3.5 (this has been the case since 0.3.0).
- The global
command
variable is now of typeMessage
.
- MessageAttachment and MessageAttachmentField classes. Message attachments can still be sent by using dictionaries that match the JSON that Slack expects.
0.7.1 - 2019-02-03
- Allow consumers of the pacakge to use phial's type hints
0.7.0 - 2018-11-13
- Add
team
attribute toMessage
andCommand
models. This stores the ID of the Slack Team that the call originated from.
- Allow configuration to be partially updated (@RealOrangeOne in #81)
- Scheduled events using
every().day().at()
, now run on the day that the program is started on (@runz0rd in #90) - Help command now allows commands to have no docstring, or override help text, specified.
0.6.0 - 2018-10-10
- SlackClient now attempts to auto reconnect by default. This can be turned off in the settings
- Logs outputted using the default logger no longer duplicate
- SlackClient no longer asks for team state as phial does not use this. Should speed up connection times espically in larger teams
0.5.0 - 2018-09-14
- Help command now works better with multiline doc strings. The command now ignores single new lines and converts double new lines into single new lines, similar to markdown
- Parameters of commands can now be wrapped in double quotation marks to allow for values containing whitespace
0.4.0 - 2018-08-30
- Built-in help command. Uses docstrings as help text unless overridden
- Added the ability to specify a 'fallback' command for when a user attempts to use an invalid command
- Default logger level changed to INFO
0.3.0 - 2018-08-05
- Scheduled functions
- Send Message Attachments
- Send ephemeral messages
- Type hints
- Support for logging
0.2.1 - 2018-04-09
- Upgraded to slackclient 1.2.1
- Lowered minimum Python version to 3.4
0.2.0 - 2018-04-05
- Optional Case Sensitivity for commands. Commands are now no longer case sensitive by default, they have an optional parameter to turn on case sensitivity if desired
- Minimum Python version now 3.4
0.1.3 - 2018-04-05
- Changed f-strings to
.format()
to prepare for supporting Python 3.4
0.1.0 - 2018-04-04
- Initial release of project