Unverified Commit 7c9857e3 authored by Armando Lüscher's avatar Armando Lüscher Committed by GitHub

Merge pull request #972 from noplanman/housekeeping_git_meta_and_tests

Housekeeping git meta and tests, custom issue templates
No related merge requests found
/.* export-ignore
/composer.lock export-ignore
/phpcs.xml.dist export-ignore
/phpunit.xml.dist export-ignore
/tests export-ignore
github: noplanman, akalongman, jacklul
tidelift: packagist/longman%2Ftelegram-bot
patreon: phptelegrambot
liberapay: PHP-Telegram-Bot
......
<!-- If this is a feature request or idea, please remove all the text below this line before writing. -->
<!-- If this is a bug report or support request, please fill in the info below as accurately as you can. -->
### Required Information
<!-- Please enter exact version numbers, not just "latest" etc.! -->
- Operating system:
- PHP version:
- PHP Telegram Bot version:
- Using MySQL database: yes / no
- MySQL version:
- Update Method: Webhook / getUpdates
- Self-signed certificate: yes / no
- RAW update (if available):
### Expected behaviour
<!-- What SHOULD be happening? -->
### Actual behaviour
<!-- What IS happening? -->
### Steps to reproduce
<!-- Explain how to reproduce the issue -->
### Extra details
<!-- Please post any extra details that might help solve the issue (e.g. logs) -->
---
name: 💥 BC Break
about: Have you encountered an issue during an upgrade? 💣
---
<!--
Before reporting a BC break, please consult the changelog and wiki entry for the particular version to make sure it's not an expected change:
- https://github.com/php-telegram-bot/core/blob/master/CHANGELOG.md
- https://github.com/php-telegram-bot/core/wiki/Breaking-backwards-compatibility
-->
### BC Break Report
<--
❗ NEVER put your Telegram API key or any other private details here. (like passwords, user IDs, etc.)
Substitute them like <API_KEY> or <USER_ID> etc.
-->
#### Required Information
<!-- Fill in the relevant information below to help triage your pull request. -->
<!-- Please enter exact version numbers, not just "latest" etc.! -->
| ? | !
| --- | ---
| Operating system | Name and version
| PHP Telegram Bot version | x.y.z
| PHP version | x.y.z
| MySQL version | x.y.z / none
| Update Method | Webhook / getUpdates
| Self-signed certificate | yes / no
| RAW update (if available) | `{...}`
#### Summary
<!-- Provide a summary describing the problem you are experiencing. -->
#### Previous behaviour
<!-- What was the previous (working) behaviour? -->
#### Current behaviour
<!-- What is the current (broken) behaviour? -->
#### How to reproduce
<!--
Provide steps to reproduce the bug.
If possible, also add any relevant code snippet.
-->
#### Expected behaviour
<!-- What was the expected (correct) behaviour? -->
---
name: 🐞 Bug Report
about: Something is broken? 🔨
---
### Bug Report
<--
❗ NEVER put your Telegram API key or any other private details here. (like passwords, user IDs, etc.)
Substitute them like <API_KEY> or <USER_ID> etc.
-->
#### Required Information
<!-- Fill in the relevant information below to help triage your pull request. -->
<!-- Please enter exact version numbers, not just "latest" etc.! -->
| ? | !
| --- | ---
| Operating system | Name and version
| PHP Telegram Bot version | x.y.z
| PHP version | x.y.z
| MySQL version | x.y.z / none
| Update Method | Webhook / getUpdates
| Self-signed certificate | yes / no
| RAW update (if available) | `{...}`
#### Summary
<!-- Provide a summary describing the problem you are experiencing. -->
### Current behaviour
<!-- What is the current (buggy) behaviour? -->
#### How to reproduce
<!--
Provide steps to reproduce the bug.
If possible, also add any relevant code snippet.
-->
#### Expected behaviour
<!-- What was the expected (correct) behaviour? -->
---
name: 🎉 Feature Request
about: You have a neat idea that should be implemented? 🎩
---
### Feature Request
#### Summary
<!-- Provide a summary of the feature you would like to see implemented. -->
---
name: ❓ Support Question
about: Have a problem that you can't figure out? 🤔
---
### Support Question
<!--
Before asking a question here, please try asking in the support group first.
https://telegram.me/PHP_Telegram_Bot_Support
Keep in mind that GitHub is primarily an issue tracker.
-->
<--
❗ NEVER put your Telegram API key or any other private details here. (like passwords, user IDs, etc.)
Substitute them like <API_KEY> or <USER_ID> etc.
-->
#### Required Information
<!-- Fill in the relevant information below to help triage your pull request. -->
<!-- Please enter exact version numbers, not just "latest" etc.! -->
| ? | !
| --- | ---
| Operating system | Name and version
| PHP Telegram Bot version | x.y.z
| PHP version | x.y.z
| MySQL version | x.y.z / none
| Update Method | Webhook / getUpdates
| Self-signed certificate | yes / no
| RAW update (if available) | `{...}`
#### Summary
<!-- Describe the issue you are facing here. -->
<!-- Important: If this pull request is not related to any issue and contains a new feature, please create an issue first for discussion. -->
<!--
Important:
If this pull request is not related to any issue and contains a new feature, please create an issue first for discussion.
https://github.com/php-telegram-bot/core/issues/new?template=Feature_Request.md
<!-- Make sure this pull request is pointed towards the "develop" branch and refers to any issue that it's related to! -->
Make sure this pull request is pointed towards the "develop" branch and refers to any issue that it's related to!
-->
<!-- Explain in detail what this pull request contains. -->
<!-- Fill in the relevant information below to help triage your pull request. -->
| ? | !
|--- | ---
| Type | bug / feature / improvement
| BC Break | yes / no
| Fixed issues | <!-- use #NUM format to reference an issue -->
#### Summary
<!-- Provide a summary of your change. -->
......@@ -5,28 +5,20 @@
.DS_Store
.idea
.phpintel
composer.phar
# Local System Files (i.e. cache, logs, etc.) #
/cache
/build/logs
/build/coverage
/tmp
# Test Related Files #
/phpunit.xml
#Exception output
TelegramException.log
# Composer
vendor/
/composer.phar
/vendor
# Test-Related Files
/clover.xml
/phpcs.xml
/phpunit.xml
# phpDocumentor Logs #
# phpDocumentor Logs
phpdoc-*
# OSX #
# OSX
._*
.Spotlight-V100
.Trashes
......@@ -38,4 +38,4 @@ checks:
tools:
external_code_coverage:
timeout: 120
timeout: 300
dist: trusty
sudo: required
language: php
sudo: required
dist: trusty
addons:
mariadb: 10.1
cache:
directories:
- "$HOME/.composer/cache"
- vendor
- $HOME/.composer/cache
php:
- 5.5
- 5.6
- 7.0
- 7.1
- 7.2
- 7.3
- 7.2
- 7.1
- 7.0
- 5.6
- 5.5
- nightly
- hhvm
......@@ -44,7 +45,7 @@ before_script:
script:
- composer check-code
- if [ "$TRAVIS_PHP_VERSION" == "7.2" ] ; then composer test-cov; else composer test; fi
- if [ "$TRAVIS_PHP_VERSION" == "7.3" ]; then composer test-cov; else composer test; fi
after_script:
- if [ "$TRAVIS_PHP_VERSION" == "7.2" ]; then composer test-cov-upload; fi
- if [ "$TRAVIS_PHP_VERSION" == "7.3" ]; then composer test-cov-upload; fi
Contributing
-------------
# Contributing
The easiest way to contribute is to work on a checkout of your own fork.
When working on the `core` repository, it makes sense to rename your fork to `php-telegram-bot`.
Before you contribute code, please make sure it conforms to the PSR-2 coding standard and that the unit tests still pass.
Before you contribute code, please make sure it conforms to the PSR-12 coding standard and that the unit tests still pass.
You can run the following commands to check if everything is ready to submit:
cd php-telegram-bot
composer install
composer check-code
```bash
cd php-telegram-bot
composer install
composer check-code
```
Which should give you no output, indicating that there are no coding standard errors.
And then (remember to set up your test database!):
composer test
```bash
composer test
```
Which should give you no failures or errors. You can ignore any skipped tests as these are for external tools.
Pushing
-------
## Pushing
Development is based on the git flow branching model (see http://nvie.com/posts/a-successful-git-branching-model/)
If you fix a bug please push in hotfix branch.
If you develop a new feature please create a new branch.
Version
-------
## Version
Version number: 0.#version.#hotfix
Further code convention adopted
-------------------------------
## Further code convention adopted
- Each method and class is documented with a docblock
......
<img src="assets/logo/512px/logo_plain.png" title="PHP Telegram Bot" alt="PHP Telegram Bot logo">
# PHP Telegram Bot
A Telegram Bot based on the official [Telegram Bot API][Telegram-Bot-API]
[![Join the bot support group on Telegram](https://img.shields.io/badge/telegram-@PHP__Telegram__Bot__Support-32a2da.svg)](https://telegram.me/PHP_Telegram_Bot_Support)
[![Donate](https://img.shields.io/badge/%F0%9F%92%99-Donate-blue.svg)](#donate)
[![Build Status](https://travis-ci.org/php-telegram-bot/core.svg?branch=master)](https://travis-ci.org/php-telegram-bot/core)
[![Dependencies](https://tidelift.com/badges/github/php-telegram-bot/core)][Tidelift]
[![Code Coverage](https://img.shields.io/scrutinizer/coverage/g/php-telegram-bot/core/develop.svg?style=flat-square)](https://scrutinizer-ci.com/g/php-telegram-bot/core/?b=develop)
[![Code Quality](https://img.shields.io/scrutinizer/g/php-telegram-bot/core/develop.svg?style=flat-square)](https://scrutinizer-ci.com/g/php-telegram-bot/core/?b=develop)
[![Latest Stable Version](https://img.shields.io/packagist/v/Longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Total Downloads](https://img.shields.io/packagist/dt/Longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Downloads Month](https://img.shields.io/packagist/dm/Longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Code Coverage](https://img.shields.io/scrutinizer/coverage/g/php-telegram-bot/core/master.svg?style=flat-square)](https://scrutinizer-ci.com/g/php-telegram-bot/core/?b=master)
[![Code Quality](https://img.shields.io/scrutinizer/g/php-telegram-bot/core/master.svg?style=flat-square)](https://scrutinizer-ci.com/g/php-telegram-bot/core/?b=master)
[![Latest Stable Version](https://img.shields.io/packagist/v/longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Total Downloads](https://img.shields.io/packagist/dt/longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Downloads Month](https://img.shields.io/packagist/dm/longman/telegram-bot.svg)](https://packagist.org/packages/longman/telegram-bot)
[![Minimum PHP Version](http://img.shields.io/badge/php-%3E%3D5.6-8892BF.svg)](https://php.net/)
[![License](https://img.shields.io/packagist/l/longman/telegram-bot.svg)](https://github.com/php-telegram-bot/core/LICENSE)
......@@ -23,10 +27,11 @@ A Telegram Bot based on the official [Telegram Bot API][Telegram-Bot-API]
- [Create your first bot](#create-your-first-bot)
- [Require this package with Composer](#require-this-package-with-composer)
- [Choose how to retrieve Telegram updates](#choose-how-to-retrieve-telegram-updates)
- [Webhook installation](#webhook-installation)
- [Webhook installation](#webhook-installation)
- [Self Signed Certificate](#self-signed-certificate)
- [Unset Webhook](#unset-webhook)
- [getUpdates installation](#getupdates-installation)
- [getUpdates installation](#getupdates-installation)
- [getUpdates without database](#getupdates-without-database)
- [Support](#support)
- [Types](#types)
- [Inline Query](#inline-query)
......@@ -39,14 +44,15 @@ A Telegram Bot based on the official [Telegram Bot API][Telegram-Bot-API]
- [Send message to all active chats](#send-message-to-all-active-chats)
- [Utils](#utils)
- [MySQL storage (Recommended)](#mysql-storage-recommended)
- [External Database connection](#external-database-connection)
- [Channels Support](#channels-support)
- [Commands](#commands)
- [Predefined Commands](#predefined-commands)
- [Custom Commands](#custom-commands)
- [Commands Configuration](#commands-configuration)
- [Admin Commands](#admin-commands)
- [Set Admins](#set-admins)
- [Channel Administration](#channel-administration)
- [Admin Commands](#admin-commands)
- [Set Admins](#set-admins)
- [Channel Administration](#channel-administration)
- [Upload and Download directory path](#upload-and-download-directory-path)
- [Logging](doc/01-utils.md)
- [Documentation](#documentation)
......@@ -180,7 +186,7 @@ composer require longman/telegram-bot
### Choose how to retrieve Telegram updates
The bot can handle updates with **Webhook** or **getUpdates** method:
The bot can handle updates with [**Webhook**](#webhook-installation) or [**getUpdates**](#getupdates-installation) method:
| | Webhook | getUpdates |
| ---- | :----: | :----: |
......@@ -188,7 +194,6 @@ The bot can handle updates with **Webhook** or **getUpdates** method:
| Host with https | Required | Not required |
| MySQL | Not required | ([Not](#getupdates-without-database)) Required |
## Webhook installation
Note: For a more detailed explanation, head over to the [example-bot repository][example-bot-repository] and follow the instructions there.
......@@ -444,9 +449,9 @@ $telegram->enableExternalMySql($external_pdo_connection)
All methods implemented can be used to manage channels.
With [admin commands](#admin-commands) you can manage your channels directly with your bot private chat.
### Commands
## Commands
#### Predefined Commands
### Predefined Commands
The bot is able to recognise commands in a chat with multiple bots (/command@mybot).
......@@ -472,14 +477,14 @@ Here's the list:
- Favourite colour? */black, /red*
- Favourite number? */1, /134*
#### Custom Commands
### Custom Commands
Maybe you would like to develop your own commands.
There is a guide to help you [create your own commands][wiki-create-your-own-commands].
Also, be sure to have a look at the [example commands][ExampleCommands-folder] to learn more about custom commands and how they work.
#### Commands Configuration
### Commands Configuration
With this method you can set some command specific parameters, for example:
......@@ -548,7 +553,7 @@ $telegram->setCommandConfig('sendtochannel', [
```
- Enjoy!
### Upload and Download directory path
## Upload and Download directory path
To use the Upload and Download functionality, you need to set the paths with:
```php
......@@ -580,7 +585,11 @@ If you like living on the edge, please report any bugs you find on the
## Contributing
See [CONTRIBUTING](.github/CONTRIBUTING.md) for more information.
See [CONTRIBUTING](CONTRIBUTING.md) for more information.
## Security
See [SECURITY](SECURITY.md) for more information.
## Security
......@@ -599,7 +608,7 @@ Thank you for keeping this project alive :pray:
- [![OpenCollective](https://user-images.githubusercontent.com/9423417/59235978-a561d500-8be3-11e9-89be-82ec54be1546.png) OpenCollective.com/php-telegram-bot][OpenCollective]
- [![Ko-fi](https://user-images.githubusercontent.com/9423417/59235976-a561d500-8be3-11e9-911d-b1908c3e6a33.png) Ko-fi.com/phptelegrambot][Ko-fi]
- [![Tidelift](https://user-images.githubusercontent.com/9423417/59235982-a6930200-8be3-11e9-8ac2-bfb6991d80c5.png) Tidelift.com/longman/telegram-bot][Tidelift]
- [![Liberapay](https://user-images.githubusercontent.com/9423417/59235977-a561d500-8be3-11e9-9d16-bc3b13d3ceba.png) Liberapay.com/PHP-Telegram-Bot][liberapay]
- [![Liberapay](https://user-images.githubusercontent.com/9423417/59235977-a561d500-8be3-11e9-9d16-bc3b13d3ceba.png) Liberapay.com/PHP-Telegram-Bot][Liberapay]
- [![PayPal](https://user-images.githubusercontent.com/9423417/59235981-a5fa6b80-8be3-11e9-9761-15eb7a524cb0.png) PayPal.me/noplanman][PayPal-noplanman] (account of @noplanman)
- [![Bitcoin](https://user-images.githubusercontent.com/9423417/59235974-a4c93e80-8be3-11e9-9fde-260c821b6eae.png) 166NcyE7nDxkRPWidWtG1rqrNJoD5oYNiV][Bitcoin]
- [![Ethereum](https://user-images.githubusercontent.com/9423417/59235975-a4c93e80-8be3-11e9-8762-7a47c62c968d.png) 0x485855634fa212b0745375e593fAaf8321A81055][Ethereum]
......@@ -636,7 +645,7 @@ Credit list in [CREDITS](CREDITS)
[OpenCollective]: https://opencollective.com/php-telegram-bot "Support us on Open Collective"
[Ko-fi]: https://ko-fi.com/phptelegrambot "Support us on Ko-fi"
[Tidelift]: https://tidelift.com/subscription/pkg/packagist-longman-telegram-bot?utm_source=packagist-longman-telegram-bot&utm_medium=referral&utm_campaign=readme "Support us on Tidelift"
[liberapay]: https://liberapay.com/PHP-Telegram-Bot "Donate with Liberapay"
[Liberapay]: https://liberapay.com/PHP-Telegram-Bot "Donate with Liberapay"
[PayPal-noplanman]: https://paypal.me/noplanman "Donate with PayPal"
[Bitcoin]: https://www.blockchain.com/btc/address/166NcyE7nDxkRPWidWtG1rqrNJoD5oYNiV "Donate with Bitcoin"
[Ethereum]: https://etherscan.io/address/0x485855634fa212b0745375e593fAaf8321A81055 "Donate with Ethereum"
......@@ -47,16 +47,16 @@
},
"scripts": {
"check-code": [
"\"vendor/bin/phpcs\" --standard=phpcs.xml -snp src/ tests/"
"\"vendor/bin/phpcs\" -snp src/ tests/"
],
"test": [
"\"vendor/bin/phpunit\""
],
"test-cov": [
"\"vendor/bin/phpunit\" --coverage-clover build/logs/clover.xml"
"\"vendor/bin/phpunit\" --coverage-clover clover.xml"
],
"test-cov-upload": [
"wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover build/logs/clover.xml"
"wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover clover.xml"
]
}
}
File moved
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment