Skip to content

Commit d64d6ae

Browse files
committed
Merge branch 'develop' into response-setHeaderLink
2 parents e90e66a + cd8eba1 commit d64d6ae

751 files changed

Lines changed: 58705 additions & 28425 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
5+
---
6+
7+
---
8+
name: Bug report
9+
about: Help us improve the framework by reporting bugs!
10+
11+
---
12+
13+
**Direction**
14+
We use github issues to track bugs, not for support.
15+
If you have a support question, or a feature request, raise these as threads on our
16+
[forum](https://forum.codeigniter.com/index.php).
17+
18+
**Describe the bug**
19+
A clear and concise description of what the bug is.
20+
21+
**CodeIgniter 4 version**
22+
Which version (and branch, if applicable) the bug is in.
23+
24+
**Affected module(s)**
25+
Which package or class is the bug in, if known.
26+
27+
**Expected behavior, and steps to reproduce if appropriate**
28+
A clear and concise description of what you expected to happen,
29+
and how you got there.
30+
Feel free to include a text/log extract, but use a pastebin facility for any
31+
screenshots you deem necessary.
32+
33+
**Context**
34+
- OS: [e.g. Windows 99]
35+
- Web server [e.g. Apache 1.2.3]
36+
- PHP version [e.g. 6.5.4]

.gitignore

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,20 @@ writable/logs/*
5757
!writable/logs/index.html
5858
!writable/logs/.htaccess
5959

60+
writable/session/*
61+
!writable/session/index.html
62+
!writable/session/.htaccess
63+
6064
writable/uploads/*
6165
!writable/uploads/index.html
6266
!writable/uploads/.htaccess
6367

68+
writable/debugbar/*
69+
70+
application/Database/Migrations/2*
71+
72+
php_errors.log
73+
6474
#-------------------------
6575
# User Guide Temp Files
6676
#-------------------------
@@ -120,3 +130,5 @@ nb-configuration.xml
120130
.vscode/
121131

122132
/results/
133+
/phpunit*.xml
134+

.nojekyll

Whitespace-only changes.

.travis.yml

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,30 @@
11
language: php
22

33
php:
4-
- 7
54
- 7.1
5+
- 7.2
6+
- 7.3
7+
- nightly
8+
9+
matrix:
10+
fast_finish: true
11+
allow_failures:
12+
- php: 7.3
13+
- php: nightly
614

715
global:
816
- CI=true
917
- CI_ENVIRONMENT=testing
1018

1119
# Recommended by Travis support
1220
sudo: required
13-
dist: precise
21+
dist: trusty
22+
group: edge
1423

1524
env:
1625
- DB=mysqli
1726
- DB=postgres
27+
- DB=sqlite
1828

1929
services:
2030
- memcached
@@ -36,4 +46,4 @@ before_script:
3646
- composer install --prefer-source
3747

3848
after_success:
39-
- travis_retry php tests/bin/coveralls.phar
49+
- travis_retry php tests/bin/php-coveralls.phar -v

CODE_OF_CONDUCT.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6+
7+
## Our Standards
8+
9+
Examples of behavior that contributes to creating a positive environment include:
10+
11+
* Using welcoming and inclusive language
12+
* Being respectful of differing viewpoints and experiences
13+
* Gracefully accepting constructive criticism
14+
* Focusing on what is best for the community
15+
* Showing empathy towards other community members
16+
17+
Examples of unacceptable behavior by participants include:
18+
19+
* The use of sexualized language or imagery and unwelcome sexual attention or advances
20+
* Trolling, insulting/derogatory comments, and personal or political attacks
21+
* Public or private harassment
22+
* Publishing others' private information, such as a physical or electronic address, without explicit permission
23+
* Other conduct which could reasonably be considered inappropriate in a professional setting
24+
25+
## Our Responsibilities
26+
27+
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
28+
29+
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
30+
31+
## Scope
32+
33+
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34+
35+
## Enforcement
36+
37+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at admin@codeigniter.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38+
39+
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
40+
41+
## Attribution
42+
43+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
44+
45+
[homepage]: http://contributor-covenant.org
46+
[version]: http://contributor-covenant.org/version/1/4/

PULL_REQUEST_TEMPLATE.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Each pull request should address a single issue, and have a meaningful title.
2+
3+
**Description**
4+
Explain what you have changed, and why.
5+
6+
**Checklist:**
7+
- [ ] Securely signed commits
8+
- [ ] Component(s) with PHPdocs
9+
- [ ] Unit testing, with >80% coverage
10+
- [ ] User guide updated
11+
- [ ] Conforms to style guide
12+
13+
---------Remove from here down in your description----------
14+
15+
**Notes**
16+
- Pull requests must be in English
17+
- If the PR solves an issue, reference it with a suitable verb and the issue number
18+
(e.g. fixes <hash>12345
19+
- Unsolicited PRs will be considered, but there is no guarantee of acceptance
20+
- Pull requests should be from a feature branch in the contributor's fork of the repository
21+
to the develop branch of the project repository
22+

README.md

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# CodeIgniter 4 Development
22

3-
[![Build Status](https://travis-ci.org/bcit-ci/CodeIgniter4.svg?branch=develop)](https://travis-ci.org/bcit-ci/CodeIgniter4)
4-
[![Coverage Status](https://coveralls.io/repos/github/bcit-ci/CodeIgniter4/badge.svg?branch=develop)](https://coveralls.io/github/bcit-ci/CodeIgniter4?branch=develop)
3+
[![Build Status](https://travis-ci.org/codeigniter4/CodeIgniter4.svg?branch=develop)](https://travis-ci.org/codeigniter4/CodeIgniter4)
4+
[![Coverage Status](https://coveralls.io/repos/github/codeigniter4/CodeIgniter4/badge.svg?branch=develop)](https://coveralls.io/github/codeigniter4/CodeIgniter4?branch=develop)
55
<br>
66

77
## What is CodeIgniter?
@@ -18,7 +18,9 @@ More information about the plans for version 4 can be found in [the announcement
1818

1919
### Documentation
2020

21-
The current documentation can be found [here](https://bcit-ci.github.io/CodeIgniter4/). As with the rest of the framwork, it is currently a work in progress, and will see changes over time to structure, explanations, etc.
21+
The current in-progress documentation can be found [here](https://codeigniter4.github.io/CodeIgniter4/).
22+
As with the rest of the framework, it is currently a work in progress, and will see changes over time to structure, explanations, etc.
23+
2224

2325
## Important Change with index.php
2426

@@ -63,13 +65,20 @@ if you want to take the lead for one of them.
6365

6466
We are not looking for out-of-scope contributions, only those that would be considered part of our controlled evolution!
6567

66-
Please read the *Contributing to CodeIgniter* section in the user guide
68+
Please read the [*Contributing to CodeIgniter*](https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing.md) section in the user guide
6769

6870
## Server Requirements
69-
PHP version 7 or higher is required, with the following extensions installed:
71+
PHP version 7.1 or higher is required, with the following extensions installed:
72+
73+
- [intl](http://php.net/manual/en/intl.requirements.php)
74+
- [libcurl](http://php.net/manual/en/curl.requirements.php) if you plan to use the HTTP\CURLRequest library
7075

71-
- intl
76+
Additionally, make sure that the following extensions are enabled in your PHP:
7277

78+
- json (enabled by default - don't turn it off)
79+
- [mbstring](http://php.net/manual/en/mbstring.installation.php)
80+
- [mysqlnd](http://php.net/manual/en/mysqlnd.install.php)
81+
- xml (enabled by default - don't turn it off)
7382

7483
## Running CodeIgniter Tests
7584
Information on running CodeIgniter test suite can be found in the [README.md](tests/README.md) file in the tests directory.

admin/README.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
#CodeIgniter 4 Admin
2+
3+
This folder contains tools or docs useful for project maintainers.
4+
5+
##Repositories Organization, inside https://github.com/codeigniter4
6+
7+
- **CodeIgniter4** is the main development repository.
8+
It supports issues and pull requests, and has a rule to enforce GPG-signed commits.
9+
In addition to the framework source, it includes unit testing and documentation source.
10+
The three repositories following are built from this one as part of the release workflow.
11+
This repo is meant to be forked by contributors.
12+
13+
- **framework** is the released developer repository.
14+
It contains all the main pieces of the framework that developers would use to
15+
build their apps, but not the framework unit testing or the user guide source.
16+
It is meant to be downloaded by developers, or composer-installed.
17+
This is a read-only repository.
18+
- **appstarter** is the released application starter repository.
19+
It is derived from the framework's `application` and `public` folders, with
20+
a composer requirement dependency to pull in the framework itself.
21+
It is meant to be downloaded or composer-installed.
22+
This is a read-only repository.
23+
- **userguide** is released documentation publishing repository.
24+
It contains built versions of the user guide, corresponding to the
25+
framework releases.
26+
It could be downloaded, forked or composer-installed.
27+
This is a read-only repository.
28+
29+
- **coding-standard** is the coding style standards repository.
30+
It contains PHP CodeSniffer rules to ensure consistent code style
31+
within the framework itself.
32+
It is meant to be composer-installed.
33+
- **translations** is the repository holding official translations of
34+
the locale-dependent system messages.
35+
It is community-maintained, and accepts issues and pull requests.
36+
It could be downloaded, forked or composer-installed.
37+
38+
##Contributor Scripts
39+
40+
- **setup.sh** installs a git pre-commit hook into a contributor's
41+
local clone of their fork of the `CodeIgniter4` repository.
42+
- **pre-commit** runs PHP Lint and PHP CodeSniffer on any files
43+
to be added as part of a git commit, ensuring that they conform to the
44+
framework coding style standards, and automatically fixing what can be.
45+
46+
##Maintainer Scripts
47+
48+
- **docbot** re-builds the user guide from the RST source for it,
49+
and optionally deploys it to the `gh-pages` branch of the main
50+
repository (if the user running it has maintainer rights on that repo).
51+
See the [writeup](./docbot.md).
52+
53+
##Release Building Scripts
54+
55+
The release workflow is detailed in its own writeup; these are the main
56+
scripts used by the release manager:
57+
58+
- **pre-release** builds a new release branch in the main repo, for vetting.
59+
This includes updating version dependencies or constants,
60+
generating version(s) of the user guide; and possibly
61+
moving or ignoring stuff, distinguishing release from development.
62+
If successful, it will leave a `releasing` file, with the version number
63+
in it.
64+
- **release** builds release branches for the derived repositories
65+
(framework, appstarter and userguide).
66+
These are pushed to the respective repositories (if the user has maintainer
67+
rights), but the actual associated releases are created on github.com manually, so
68+
that additional binaries can be added to the release if appropriate.
69+
- **post-release** cleans up after a release, eg. setting up the changelog for
70+
the next release.
71+
72+
73+
##Other Stuff
74+
75+
- **release-notes.bb** is a boilerplate for forum announcements of a new release.
76+
It is marked up using [BBcode](https://en.wikipedia.org/wiki/BBCode).

admin/docbot

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#!/bin/bash
2+
3+
# Rebuild and deploy CodeIgniter4 user guide
4+
5+
UPSTREAM=https://github.com/codeigniter4/CodeIgniter4.git
6+
7+
# Prepare the nested repo clone folder
8+
cd user_guide_src
9+
rm -rf build/*
10+
mkdir build/html
11+
12+
# Get ready for git
13+
cd build/html
14+
git init
15+
git remote add origin $UPSTREAM
16+
git fetch
17+
git checkout gh-pages
18+
git reset --hard origin/gh-pages
19+
rm -r *
20+
21+
# Make the new user guide
22+
cd ../..
23+
make html
24+
25+
# All done?
26+
if [ $# -lt 1 ]; then
27+
exit 0
28+
fi
29+
30+
# Optionally update the remote repo
31+
if [ $1 = "deploy" ]; then
32+
cd build/html
33+
git add .
34+
git commit -S -m "Docbot synching"
35+
git push -f origin gh-pages
36+
fi

admin/docbot.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# docbot
2+
3+
Builds & deploys user guide.
4+
5+
The in-progress CI4 user guide, warts & all, is rebuilt in a nested
6+
repository clone (`user_guide_src/build/html`), with the result
7+
optionally pushed to the `gh-pages` branch of the repo.
8+
That would then be publically visible as the in-progress
9+
version of the [User Guide](https://codeigniter4.github.io/CodeIgniter4/).
10+
11+
## Audience
12+
13+
This script is intended for use by framework maintainers,
14+
i.e. someone with commit rights on the CI4 repository.
15+
16+
This script wraps the conventional user guide building,
17+
i.e. `user_guide_src/make html`, with additional
18+
steps.
19+
20+
You will be prompted for your github credentials and
21+
GPG-signing key as appropriate.
22+
23+
## Usage
24+
25+
Inside a shell prompt, in the project root:
26+
27+
`admin/docbot [deploy]`
28+
29+
If "deploy" is not added, the script execution is considered
30+
a trial run, and nothing is pushed to the repo.
31+
32+
Whether or not deployed, the results are left inside
33+
user_guide_src/build (which is git ignored).

0 commit comments

Comments
 (0)