PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 3.2.0
Brevo – Email, SMS, Web Push, Chat, and more. v3.2.0
2.9.13 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.2 3.1.20 3.1.21 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.1.29 3.1.3 3.1.30 3.1.31 3.1.32 3.1.33 3.1.34 3.1.35 3.1.36 3.1.37 3.1.38 3.1.39 3.1.4 3.1.40 3.1.41 3.1.42 3.1.43 3.1.44 3.1.45 3.1.46 3.1.47 3.1.48 3.1.49 3.1.5 3.1.50 3.1.51 3.1.52 3.1.53 3.1.54 3.1.55 3.1.56 3.1.57 3.1.58 3.1.59 3.1.6 3.1.60 3.1.61 3.1.62 3.1.63 3.1.64 3.1.65 3.1.66 3.1.67 3.1.68 3.1.69 3.1.7 3.1.70 3.1.71 3.1.72 3.1.73 3.1.74 3.1.75 3.1.76 3.1.77 3.1.78 3.1.79 3.1.8 3.1.80 3.1.81 3.1.82 3.1.83 3.1.84 3.1.85 3.1.86 3.1.87 3.1.88 3.1.89 3.1.9 3.1.90 3.1.91 3.1.92 3.1.93 3.1.94 3.1.95 3.1.96 3.1.97 3.1.98 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 trunk 1.0 1.5 2.0.8 2.9.10 2.9.11 2.9.12
mailin / wonderpush-php-lib / release.php
mailin / wonderpush-php-lib Last commit date
doc 1 year ago lib 1 year ago tests 1 year ago .coveralls.yml 1 year ago .git 1 year ago .gitignore 1 year ago .travis.yml 1 year ago LICENSE.txt 1 year ago README.md 1 year ago build.php 1 year ago composer.json 1 year ago init.php 1 year ago overview.md 1 year ago phpunit.no_autoload.xml 1 year ago phpunit.xml 1 year ago release.php 1 year ago test 1 year ago
release.php
122 lines
1 #!/usr/bin/env php
2 <?php
3
4 const VERSION_FILENAME = 'lib/WonderPush.php';
5 const VERSION_REGEX = '/^(?P<prefix>\s*const\s*VERSION\s*=\s*(?P<quotes>[\'"]))(?P<version>.+)(?P<suffix>(?P=quotes)\s*;.*)$/m';
6 $root = __DIR__;
7
8 //
9 // Check git status
10 //
11
12 echo "Checking the filesystem is clean…\n";
13 $uncleanFiles = system('git status --porcelain');
14 if ($uncleanFiles !== '') {
15 echo "Stash your changes before.\n";
16 exit(1);
17 }
18 echo "\n";
19
20 //
21 // Check tests pass
22 //
23
24 echo "Ensuring tests pass…\n";
25 passthru("$root/test");
26 echo "\n";
27
28 //
29 // Read current version
30 //
31
32 $versionFileContent = file_get_contents(VERSION_FILENAME);
33 if (preg_match(VERSION_REGEX, $versionFileContent, $matches) !== 1) {
34 echo "Cannot find version!\n";
35 exit(1);
36 }
37 $currentVersion = $matches['version'];
38 echo "Current version: $currentVersion\n";
39
40 //
41 // Ask new version
42 //
43
44 /** @noinspection PhpComposerExtensionStubsInspection */
45 $newVersion = readline('Enter new version: ');
46 echo "New version: $newVersion\n";
47 echo "\n";
48
49 //
50 // Release
51 //
52
53 echo "Making release commit…\n";
54
55 // Change version in file
56 $versionFileContent = preg_replace_callback(VERSION_REGEX, function($matches) use ($newVersion) {
57 return $matches['prefix'] . $newVersion . $matches['suffix'];
58 }, $versionFileContent);
59 file_put_contents(VERSION_FILENAME, $versionFileContent);
60
61 // Commit and tag
62 passthru("git commit -m 'Release $newVersion' " . VERSION_FILENAME);
63 passthru("git tag -a -m 'Release $newVersion' v$newVersion");
64
65 echo "\n";
66
67 //
68 // Update documentation
69 //
70
71 echo "Updating documentation site…\n";
72
73 passthru("$root/doc/generate");
74 passthru('git checkout gh-pages');
75 rename("$root/doc/generated", "$root/$newVersion");
76 copy("$root/latest/api.html", "$root/$newVersion/api.html");
77 unlink("$root/latest");
78 symlink($newVersion, "$root/latest");
79 passthru("git add latest $newVersion");
80 passthru("git commit -m \"Documentation site for v$newVersion\"");
81 passthru('git checkout master');
82
83 echo "\n";
84
85 //
86 // Prepare next release
87 //
88
89 echo "Preparing next release…\n";
90
91 if (strpos($newVersion, '-') !== FALSE) {
92 /** @noinspection PhpComposerExtensionStubsInspection */
93 $nextVersion = readline('Enter next version: ');
94 } else {
95 $nextVersion = explode('.', $newVersion);
96 $nextVersion[count($nextVersion)-1] = (int)$nextVersion[count($nextVersion) - 1] + 1;
97 $nextVersion = implode('.', $nextVersion);
98 $nextVersion .= '-dev';
99 }
100
101 // Change version in file
102 $versionFileContent = preg_replace_callback(VERSION_REGEX, function($matches) use ($nextVersion) {
103 return $matches['prefix'] . $nextVersion . $matches['suffix'];
104 }, $versionFileContent);
105 file_put_contents(VERSION_FILENAME, $versionFileContent);
106
107 // Commit and tag
108 passthru("git commit -m 'Prepare next release' " . VERSION_FILENAME);
109
110 echo "\n";
111
112 //
113 // Publish instructions
114 //
115
116 echo "\n";
117 echo "The GitHub Packagist integration will work for you.\n";
118 echo "In order to publish the release, please do:\n";
119 echo "\n";
120 echo " git push origin master gh-pages v$newVersion\n";
121 echo "\n";
122