Skip to content

Commit

Permalink
Merge pull request #1 from Riimu/next
Browse files Browse the repository at this point in the history
Implement next version changes
  • Loading branch information
Riimu authored Jul 9, 2017
2 parents 5145afa + d04e2b9 commit 8ad2656
Show file tree
Hide file tree
Showing 14 changed files with 215 additions and 98 deletions.
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ tests export-ignore
.gitignore export-ignore
.php_cs export-ignore
.travis.yml export-ignore
apigen.neon export-ignore
phpunit.xml export-ignore
sami_config.php export-ignore
7 changes: 3 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
.idea
api
coverage
vendor
build/
vendor/
composer.lock
118 changes: 94 additions & 24 deletions .php_cs
Original file line number Diff line number Diff line change
@@ -1,31 +1,101 @@
<?php

$finder = Symfony\CS\Finder\DefaultFinder::create()
$finder = \PhpCsFixer\Finder::create()
->in(__DIR__ . '/src')
->in(__DIR__ . '/tests');

return Symfony\CS\Config\Config::create()
->fixers([
'align_double_arrow',
'concat_with_spaces',
'ereg_to_preg',
'multiline_spaces_before_semicolon',
'newline_after_open_tag',
'ordered_use',
'php4_constructor',
'php_unit_construct',
'php_unit_strict',
'short_array_syntax',
'strict',
'strict_param',
return \PhpCsFixer\Config::create()
->setRules([
'@PSR2' => true,

'-concat_without_spaces',
'-linefeed',
'-phpdoc_no_empty_return',
'-phpdoc_params',
'-phpdoc_separation',
'-pre_increment',
'-unalign_double_arrow',
'-unary_operators_spaces',
'array_syntax' => [
'syntax' => 'short'
],
'binary_operator_spaces' => [
'align_double_arrow' => null,
'align_equals' => false,
],
'blank_line_after_opening_tag' => true,
'cast_spaces' => true,
'combine_consecutive_unsets' => true,
'concat_space' => [
'spacing' => 'one'
],
'declare_equal_normalize' => true,
'dir_constant' => true,
'ereg_to_preg' => true,
'function_to_constant' => true,
'function_typehint_space' => true,
'hash_to_slash_comment' => true,
'heredoc_to_nowdoc' => true,
'include' => true,
'is_null' => true,
'lowercase_cast' => true,
'magic_constant_casing' => true,
'method_separation' => true,
'modernize_types_casting' => true,
'native_function_casing' => true,
'new_with_braces' => true,
'no_alias_functions' => true,
'no_blank_lines_after_class_opening' => true,
'no_blank_lines_after_phpdoc' => true,
'no_empty_comment' => true,
'no_empty_phpdoc' => true,
'no_empty_statement' => true,
'no_extra_consecutive_blank_lines' => true,
'no_leading_import_slash' => true,
'no_leading_namespace_whitespace' => true,
'no_mixed_echo_print' => true,
'no_multiline_whitespace_around_double_arrow' => true,
'no_multiline_whitespace_before_semicolons' => true,
'no_php4_constructor' => true,
'no_short_bool_cast' => true,
'no_singleline_whitespace_before_semicolons' => true,
'no_spaces_around_offset' => true,
'no_trailing_comma_in_list_call' => true,
'no_trailing_comma_in_singleline_array' => true,
'no_unneeded_control_parentheses' => true,
'no_unused_imports' => true,
'no_useless_return' => true,
'no_whitespace_before_comma_in_array' => true,
'no_whitespace_in_blank_line' => true,
'non_printable_character' => true,
'normalize_index_brace' => true,
'object_operator_without_whitespace' => true,
'ordered_class_elements' => [
'order' => ['use_trait', 'constant', 'property', 'construct', 'method'],
],
'ordered_imports' => true,
'php_unit_construct' => true,
'php_unit_dedicate_assert' => true,
'php_unit_strict' => true,
'phpdoc_add_missing_param_annotation' => true,
'phpdoc_annotation_without_dot' => true,
'phpdoc_indent' => true,
'phpdoc_inline_tag' => true,
'phpdoc_no_access' => true,
'phpdoc_no_alias_tag' => true,
'phpdoc_no_package' => true,
'phpdoc_scalar' => true,
'phpdoc_single_line_var_spacing' => true,
'phpdoc_summary' => true,
'phpdoc_trim' => true,
'phpdoc_types' => true,
'phpdoc_var_without_name' => true,
'pow_to_exponentiation' => true,
'psr4' => true,
'return_type_declaration' => true,
'self_accessor' => true,
'short_scalar_cast' => true,
'single_blank_line_before_namespace' => true,
'single_quote' => true,
'space_after_semicolon' => true,
'standardize_not_equals' => true,
'strict_comparison' => true,
'strict_param' => true,
'ternary_operator_spaces' => true,
'trailing_comma_in_multiline_array' => true,
'trim_array_spaces' => true,
'whitespace_after_comma_in_array' => true,
])
->finder($finder);
->setFinder($finder);
22 changes: 13 additions & 9 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
language: php
sudo: false
dist: trusty

php:
- 5.6
- 5.5
- 5.4
- 7.0
- 7.1
- hhvm

cache:
directories:
- vendor
- vendor

before_install:
- composer self-update
- export XDEBUG="/home/travis/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini"
- is_hhvm () { [[ $TRAVIS_PHP_VERSION =~ ^hhvm ]]; }
- is_hhvm || mv -v "$XDEBUG" "$XDEBUG.disabled"

install:
- composer require --no-update --no-interaction "phpunit/phpunit:4.*" "squizlabs/php_codesniffer:2.*" "fabpot/php-cs-fixer:1.*"
- travis_retry composer install --no-interaction
- travis_retry composer update -a --no-interaction
- travis_retry wget https://scrutinizer-ci.com/ocular.phar

script:
- vendor/bin/phpunit --coverage-clover=coverage.clover
- vendor/bin/phpcs --standard=PSR2 src tests
- vendor/bin/php-cs-fixer fix --dry-run --diff
- vendor/bin/php-cs-fixer fix -v --dry-run --allow-risky=yes --using-cache=no
- if is_hhvm; then echo "xdebug.enable = On" >> /etc/hhvm/php.ini; else mv -v "$XDEBUG.disabled" "$XDEBUG"; fi
- vendor/bin/phpunit --coverage-clover=coverage.clover --coverage-text

after_script:
- php ocular.phar code-coverage:upload --format=php-clover coverage.clover
- is_hhvm || php ocular.phar code-coverage:upload --format=php-clover coverage.clover
8 changes: 8 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog #

## v1.2.0 (2017-07-09) ##

* Minor changes to path joining logic
* Increased minimum required PHP version to 5.6
* Updated tests to work with PHPUnit 6
* Updated travis build
* Slightly improved the bundled autoloader

## v1.1.2 (2015-08-22) ##

* Slightly reworked how the paths are built
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2014 - 2015 Riikka Kalliomäki
Copyright (c) 2014-2017 Riikka Kalliomäki

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
Expand Down
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,18 @@ case since it works by using the file system. This library simply combines and
normalizes the paths using string handling. There is no requirement for the
files or directories to be readable or even exist.

The API documentation, which can be generated using Apigen, can be read online
at: http://kit.riimu.net/api/pathjoin/
The API documentation is available at: http://kit.riimu.net/api/pathjoin/

[![Build Status](https://img.shields.io/travis/Riimu/Kit-PathJoin.svg?style=flat)](https://travis-ci.org/Riimu/Kit-PathJoin)
[![Code Coverage](https://img.shields.io/scrutinizer/coverage/g/Riimu/Kit-PathJoin.svg?style=flat)](https://scrutinizer-ci.com/g/Riimu/Kit-PathJoin/)
[![Scrutinizer Code Quality](https://img.shields.io/scrutinizer/g/Riimu/Kit-PathJoin.svg?style=flat)](https://scrutinizer-ci.com/g/Riimu/Kit-PathJoin/)
[![Travis](https://img.shields.io/travis/Riimu/Kit-PathJoin.svg?style=flat-square)](https://travis-ci.org/Riimu/Kit-PathJoin)
[![Scrutinizer](https://img.shields.io/scrutinizer/g/Riimu/Kit-PathJoin.svg?style=flat-square)](https://scrutinizer-ci.com/g/Riimu/Kit-PathJoin/)
[![Scrutinizer Coverage](https://img.shields.io/scrutinizer/coverage/g/Riimu/Kit-PathJoin.svg?style=flat-square)](https://scrutinizer-ci.com/g/Riimu/Kit-PathJoin/)
[![Packagist](https://img.shields.io/packagist/v/riimu/kit-pathjoin.svg?style=flat-square)](https://packagist.org/packages/riimu/kit-pathjoin)

## Requirements ##

In order to use this library, the following requirements must be met:

* PHP version 5.4
* PHP version 5.6

## Installation ##

Expand Down Expand Up @@ -131,6 +131,6 @@ echo Path::normalize('/foo/bar', false) . PHP_EOL; // outputs '\foo\Bar'

## Credits ##

This library is copyright 2014 - 2015 to Riikka Kalliomäki.
This library is Copyright (c) 2014-2017 Riikka Kalliomäki.

See LICENSE for license and copying information.
12 changes: 0 additions & 12 deletions apigen.neon

This file was deleted.

56 changes: 36 additions & 20 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,23 +1,39 @@
{
"name": "riimu/kit-pathjoin",
"type": "library",
"description": "Cross-platform library for normalizing and joining file system paths",
"homepage": "http://kit.riimu.net",
"keywords": ["normalize", "join", "file", "system", "path"],
"license": "MIT",
"authors": [
{
"name": "Riikka Kalliomäki",
"email": "[email protected]",
"homepage": "http://riimu.net"
}
],
"require": {
"php": ">=5.4.0"
},
"autoload": {
"psr-4": {
"Riimu\\Kit\\PathJoin\\": "src/"
}
"name": "riimu/kit-pathjoin",
"type": "library",
"description": "Cross-platform library for normalizing and joining file system paths",
"homepage": "http://kit.riimu.net",
"keywords": [
"normalize",
"join",
"file",
"system",
"path"
],
"license": "MIT",
"authors": [
{
"name": "Riikka Kalliomäki",
"email": "[email protected]",
"homepage": "http://riimu.net"
}
],
"require": {
"php": ">=5.4.0"
},
"require-dev": {
"phpunit/phpunit": "^5.7 || ^6.2",
"squizlabs/php_codesniffer": "^3.0",
"friendsofphp/php-cs-fixer": "^2.3"
},
"autoload": {
"psr-4": {
"Riimu\\Kit\\PathJoin\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"Riimu\\Kit\\PathJoin\\": "tests/tests/"
}
}
}
26 changes: 26 additions & 0 deletions sami_config.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?php

use Sami\RemoteRepository\GitHubRemoteRepository;
use Sami\Sami;
use Symfony\Component\Finder\Finder;

$iterator = Finder::create()
->files()
->name('*.php')
->in(__DIR__ . '/src');

$theme = getenv('SAMI_THEME');
$settings = [];

if ($theme) {
$settings['theme'] = basename($theme);
$settings['template_dirs'] = [dirname($theme)];
}

return new Sami($iterator, $settings + [
'title' => 'Kit PathJoin API',
'build_dir' => __DIR__ . '/build/doc',
'cache_dir' => __DIR__ . '/build/cache',
'remote_repository' => new GitHubRemoteRepository('Riimu/Kit-PathJoin', __DIR__),
'default_opened_level' => 3,
]);
Loading

0 comments on commit 8ad2656

Please sign in to comment.