Submitting Bug Reports and Feature Requests

Please read this document before submitting an issue or pull request the CI-Bonfire project.
It really helps us out and lets us know that you respect our time.
In return, we will show the same respect in addressing your issue.

If you think this guide can be improved, please let us know.

Types of issues

The GitHub issue tracker should only be used for one of the following:

  • Bugs - when a feature of the project has been identified as
    broken
    .
  • Feature requests - when you ask for a new feature to be added to a
    Bonfire.
  • Contribution enquiries - when you want to discuss whether a new
    feature
    or change would be accepted in Bonfire before you begin
    development work on it.

These are some things that don't belong in the issue tracker:

  • Please avoid personal support requests. We try to provide the best support
    we can, while maintaining a free project that helps you code faster. We have forums,
    user guides, API doc's, CodeIgniter has great user doc's and a execellent forum.

  • Please avoid derailing issues. Keep the discussion on topic and respect the
    opinions of others.

Bugs

A bug is a demonstrable problem that is caused by the code in the
repository.

If you've come across a problem with the code and you're letting us know about
it, thank you. We appreciate your time and the effort you're making to help
improve the code for everyone else!

Please read the following guidelines for reporting bugs:

  1. Use the GitHub issue search - check if the issue has already been
    reported. If it has been, please comment on the existing issue.

  2. Check if the issue has been fixed - the latest master or
    development branch may already contain a fix.

  3. Isolate the demonstrable problem - make sure that the code in the
    project's repository is definitely responsible for the issue. Create a
    reduced test case - an
    extremely simple and immediately viewable example of the issue.

  4. Include a live example - provide a link to your reduced test case
    when appropriate (e.g. if the issue is related to frond-end technologies).
    Please use jsFiddle to host examples.

Please try to be as detailed as possible in your report too. What is your
environment? What steps will reproduce the issue? What browser(s) and OS
experience the problem? What would you expect to be the outcome? All these
details will help me and others to assess and fix any potential bugs.

Example of a good bug report:

Short and descriptive title

A summary of the issue and the browser/OS environment in which it occurs. If
suitable, include the steps required to reproduce the bug.

  1. This is the first step
  2. This is the second step
  3. Further steps, etc.

<url> - a link to the reduced test case

Any other information you want to share that is relevant to the issue being
reported. This might include the lines of code that you have identified as
causing the bug, and potential solutions (and your opinions on their
merits).

A good bug report shouldn't leave us needing to chase you up to get further
information that is required to assess or fix the bug.

Feature requests

Feature requests are welcome! Please provide links to examples or articles that
help to illustrate the specifics of a feature you're requesting. The more
detail, the better. It will help us to decide whether the feature is something we
agree should become part of the project.

Contribution enquiries

Contribution enquiries should take place before any significant pull request,
otherwise you risk spending a lot of time working on something that we might not
want to pull into the repository.

In this regard, some contribution enquires may be feature requests that you
would like to have a go at implementing yourself if they are wanted. Other
enquiries might revolve around refactoring code or porting a project to
different languages.

Pull requests

Good pull requests - patches, improvements, new features - are a fantastic
help.

If you've spotted any small, obvious errors and want to help out by patching it,
that will be much appreciated.

If your contribution involves a significant amount of work or substantial
changes to any part of the project, please open a "contribution enquiry" issue
first to check that the work is wanted or matches the goals of the project.

All pull requests should remain focused in scope and avoid containing unrelated
commits.

Please follow this process; it's the best way to get your work merged into the
project:

  1. Fork the project.
  2. Clone your fork ( git clone [email protected]:<your-username>/<repo-name>git).
  3. Add an upstream remote (git remote add upstream git://github.com/<upsteam-owner>/<repo-name>.git).
  4. Get the latest changes from upstream (e.g. git pull upstream <dev-branch>).
  5. Create a new topic branch to contain your feature, change, or fix ( git checkout -b <topic-branch-name> ).
  6. Make sure that your changes adhere to the current coding conventions used
    throughout the project - indentation, accurate comments, etc.
  7. Commit your changes in logical chunks. Please adhere to these git commit
    message guidelines

    or your pull request is unlikely be merged into the main project.
  8. Push the branch up to your fork ( git push origin <topic-branch-name> ).
  9. Open a Pull Request with a
    clear title and description. Please mention which browsers you tested in.
Profiler
Profiler Console 0 Load Time 86ms Memory Used 0.9 MB Database 4 Queries vars & Config Files 87

Console

Memory Usage

Benchmarks

11 ms Loading Time: Base Classes
59 ms Controller Execution Time ( Docs / Index )
86 ms Total Execution Time

Queries

0.0002 SELECT GET_LOCK('u6gtvm840q8arv9v9cjec4i2q6', 300) AS ci_session_lockSpeed: 0.0002 - Possible keys: - Key Used: - Type: - Rows: - Extra: No tables used
0.0004 SELECT `data` FROM `ap_ci3_sessions` WHERE `id` = 'u6gtvm840q8arv9v9cjec4i2q6'Speed: 0.0004 - Possible keys: - Key Used: - Type: - Rows: - Extra: Impossible WHERE noticed after reading const tables
0.0006 SHOW TABLES FROM `artiweb_db`
0.0002 SELECT * FROM `ap_settings`Speed: 0.0002 - Possible keys: - Key Used: - Type: ALL - Rows: 40 - Extra:
0.0014 Total Query Execution Time

Session User Data

__ci_last_regenerate 1732782617
requested_page https://104854.21dyvlrb.asia/docs/developer/issue_tracking_and_pull_requests
previous_page https://104854.21dyvlrb.asia/docs/developer/issue_tracking_and_pull_requests

GET DATA

No GET data exists

POST DATA

No POST data exists

URI STRING

docs/developer/issue_tracking_and_pull_requests

CLASS/METHOD

docs/index

HTTP HEADERS

HTTP_ACCEPT */*
HTTP_USER_AGENT Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
HTTP_CONNECTION close
SERVER_PORT 80
SERVER_NAME 104854.21dyvlrb.asia
REMOTE_ADDR 172.71.255.110
SERVER_SOFTWARE Apache
HTTP_ACCEPT_LANGUAGE
SCRIPT_NAME /index.php
REQUEST_METHOD GET
HTTP_HOST
REMOTE_HOST
CONTENT_TYPE
SERVER_PROTOCOL HTTP/1.1
QUERY_STRING
HTTP_ACCEPT_ENCODING gzip, br
HTTP_X_FORWARDED_FOR 3.14.250.187

CONFIG VARIABLES

base_url https://104854.21dyvlrb.asia/
index_page
uri_protocol AUTO
url_suffix
language english
charset UTF-8
enable_hooks true
subclass_prefix MY_
composer_autoload false
permitted_uri_chars a-z 0-9~%.:_-
allow_get_array true
enable_query_strings false
controller_trigger c
function_trigger m
directory_trigger d
log_threshold 0
log_path /var/www/vhosts/artiplayer.com/httpdocs/application/logs/
log_file_extension
log_file_permissions 420
log_date_format Y-m-d H:i:s
error_views_path
cache_path /var/www/vhosts/artiplayer.com/httpdocs/application/cache/
cache_query_string false
encryption_key d0680639b7b72a248f62d947aed47f62
sess_cookie_name bf_session
sess_expiration 7200
sess_time_to_update 300
sess_match_ip false
sess_expire_on_close false
sess_encrypt_cookie false
sess_use_database false
sess_table_name sessions
sess_match_useragent true
sess_driver database
sess_regenerate_destroy false
sess_save_path ci3_sessions
cookie_prefix
cookie_domain
cookie_path /
cookie_secure false
cookie_httponly false
standardize_newlines false
global_xss_filtering false
csrf_protection true
csrf_token_name ci_csrf_token
csrf_cookie_name ci_csrf_token
csrf_expire 7200
csrf_regenerate true
csrf_exclude_uris Array ( )
compress_output false
time_reference utc
rewrite_short_tags false
proxy_ips
bonfire.installed 1
site.default_user_timezone UM8
modules_locations Array ( [/var/www/vhosts/artiplayer.com/httpdocs/application/modules/] =&gt; ../../application/modules/ [/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/] =&gt; ../../bonfire/modules/ )
site.backup_folder archives/
contexts Array ( [0] =&gt; content [1] =&gt; reports [2] =&gt; settings [3] =&gt; developer )
enable_activity_logging true
sparks_path ../sparks/
template.site_path /var/www/vhosts/artiplayer.com/httpdocs/public/
template.theme_paths Array ( [0] =&gt; themes )
template.default_layout index
template.ajax_layout ajax
template.use_mobile_themes false
template.default_theme default/
template.admin_theme admin
template.message_template &lt;div class=&quot;alert alert-{type} alert-dismissable&quot;&gt; &lt;button type=&quot;button&quot; class=&quot;close&quot; data-dismiss=&quot;alert&quot; aria-hidden=&quot;true&quot;&gt;&amp;times;&lt;/button&gt; &lt;div&gt;{message}&lt;/div&gt; &lt;/div&gt;
template.breadcrumb_symbol :
template.parse_views false
assets.directories Array ( [base] =&gt; assets [cache] =&gt; cache [css] =&gt; css [image] =&gt; images [js] =&gt; js [module] =&gt; module )
assets.js_opener $(document).ready(function() {
assets.js_closer });
assets.css_combine false
assets.js_combine false
assets.css_minify true
assets.js_minify true
assets.encrypt_name false
assets.encode false
assets.base_folder assets
assets.asset_folders Array ( [css] =&gt; css [js] =&gt; js [image] =&gt; images )
ui.current_shortcuts Array ( [form_save] =&gt; Array ( [description] =&gt; Save any form in the admin area. [action] =&gt; $(&quot;input[name=save]&quot;).click();return false; ) [create_new] =&gt; Array ( [description] =&gt; Create a new record in the module. [action] =&gt; window.location.href=$(&quot;a#create_new&quot;).attr(&quot;href&quot;); ) [select_all] =&gt; Array ( [description] =&gt; Select all records in an index page. [action] =&gt; $(&quot;table input[type=checkbox]&quot;).click();return false; ) [delete] =&gt; Array ( [description] =&gt; Delete the record(s). [action] =&gt; $(&quot;#delete-me.btn-danger&quot;).click(); ) [module_index] =&gt; Array ( [description] =&gt; Return to the index of the current module. [action] =&gt; window.location.href=$(&quot;a#list&quot;).attr(&quot;href&quot;); ) [goto_content] =&gt; Array ( [description] =&gt; Jump to the Content context. [action] =&gt; window.location.href=$(&quot;#tb_content&quot;).attr(&quot;href&quot;) ) [goto_reports] =&gt; Array ( [description] =&gt; Jump to the Reports context. [action] =&gt; window.location.href=$(&quot;#tb_reports&quot;).attr(&quot;href&quot;) ) [goto_settings] =&gt; Array ( [description] =&gt; Jump to the Settings context. [action] =&gt; window.location.href=$(&quot;#tb_settings&quot;).attr(&quot;href&quot;) ) [goto_developer] =&gt; Array ( [description] =&gt; Jump to the Developer context. [action] =&gt; window.location.href=$(&quot;#tb_developer&quot;).attr(&quot;href&quot;) ) )
emailer.write_to_file false
migrate.auto_core false
migrate.auto_app false
commonmark.valid_drivers Array ( [0] =&gt; Parsedown [1] =&gt; Markdown [2] =&gt; MarkdownExtra [3] =&gt; LeagueCommonMark )
commonmark.driver MarkdownExtended
docs.theme docs
docs.default_group developer
docs.show_dev_docs true
docs.show_app_docs true
docs.toc_file _toc.ini
docs.permitted_environments Array ( [0] =&gt; development [1] =&gt; testing [2] =&gt; production )

Files

application.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/application.php
autoload.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/autoload.php
config.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/config.php
constants.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/constants.php
database.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/database.php
events.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/events.php
hooks.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/hooks.php
mimes.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/mimes.php
profiler.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/profiler.php
routes.php
/var/www/vhosts/artiplayer.com/httpdocs/application/config/routes.php
Base_Controller.php
/var/www/vhosts/artiplayer.com/httpdocs/application/core/Base_Controller.php
MY_Model.php
/var/www/vhosts/artiplayer.com/httpdocs/application/core/MY_Model.php
App_hooks.php
/var/www/vhosts/artiplayer.com/httpdocs/application/hooks/App_hooks.php
application_lang.php
/var/www/vhosts/artiplayer.com/httpdocs/application/language/english/application_lang.php
Profiler.php
/var/www/vhosts/artiplayer.com/httpdocs/application/libraries/Profiler.php
Base.php
/var/www/vhosts/artiplayer.com/httpdocs/application/third_party/MX/Base.php
Config.php
/var/www/vhosts/artiplayer.com/httpdocs/application/third_party/MX/Config.php
Controller.php
/var/www/vhosts/artiplayer.com/httpdocs/application/third_party/MX/Controller.php
Lang.php
/var/www/vhosts/artiplayer.com/httpdocs/application/third_party/MX/Lang.php
Loader.php
/var/www/vhosts/artiplayer.com/httpdocs/application/third_party/MX/Loader.php
Benchmark.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Benchmark.php
CodeIgniter.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/CodeIgniter.php
Common.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Common.php
Config.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Config.php
Controller.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Controller.php
Hooks.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Hooks.php
Input.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Input.php
Lang.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Lang.php
Loader.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Loader.php
Log.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Log.php
Model.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Model.php
Output.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Output.php
Router.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Router.php
Security.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Security.php
URI.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/URI.php
Utf8.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/Utf8.php
hash.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/compat/hash.php
mbstring.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/compat/mbstring.php
password.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/compat/password.php
standard.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/core/compat/standard.php
DB.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/DB.php
DB_driver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/DB_driver.php
DB_query_builder.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/DB_query_builder.php
DB_result.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/DB_result.php
mysqli_driver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/drivers/mysqli/mysqli_driver.php
mysqli_result.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/database/drivers/mysqli/mysqli_result.php
directory_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/helpers/directory_helper.php
form_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/helpers/form_helper.php
language_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/helpers/language_helper.php
url_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/helpers/url_helper.php
profiler_lang.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/language/english/profiler_lang.php
Cache.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Cache/Cache.php
Cache_dummy.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Cache/drivers/Cache_dummy.php
Driver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Driver.php
Session.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Session/Session.php
Session_driver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Session/Session_driver.php
Session_database_driver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/ci3/libraries/Session/drivers/Session_database_driver.php
BF_Lang.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/core/BF_Lang.php
BF_Loader.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/core/BF_Loader.php
BF_Model.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/core/BF_Model.php
BF_Router.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/core/BF_Router.php
BF_Security.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/core/BF_Security.php
BF_directory_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/BF_directory_helper.php
BF_form_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/BF_form_helper.php
application_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/application_helper.php
config_file_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/config_file_helper.php
markdown_extended_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/markdown_extended_helper.php
markdown_helper.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/helpers/markdown_helper.php
Assets.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Assets.php
CommonMark.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/CommonMark.php
CommonMarkDriver.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/CommonMark/CommonMarkDriver.php
CommonMark_MarkdownExtended.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/CommonMark/drivers/CommonMark_MarkdownExtended.php
Console.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Console.php
Events.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Events.php
Modules.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Modules.php
Route.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Route.php
Template.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/libraries/Template.php
docs.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/config/docs.php
routes.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/config/routes.php
Docs.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/controllers/Docs.php
docs_lang.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/language/english/docs_lang.php
_sidebar.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/views/_sidebar.php
index.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/docs/views/index.php
Settings_lib.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/settings/libraries/Settings_lib.php
Settings_model.php
/var/www/vhosts/artiplayer.com/httpdocs/bonfire/modules/settings/models/Settings_model.php
index.php
index.php
index.php
themes/docs/index.php