]> git.p6c8.net - jirafeau_project.git/blob - CHANGELOG.md
c228ab4b811a0aeea6464813f90afbf22c08db71
[jirafeau_project.git] / CHANGELOG.md
1 # Note about upgrading
2
3 "in-place upgrade" refers to this general procedure:
4
5 1. Backup your Jirafeau installation!
6 2. Block access to Jirafeau
7 3. Checkout the new version with Git using the [tagged release](https://gitlab.com/pcanterino/Jirafeau/tags)
8 * If you have installed Jirafeau just by uploading files on your server, you can download the desired version, overwrite/remove all files and chown/chmod files if needed. Keep a backup of your local configuration file tough.
9 4. With you browser, go to your Jirafeau root page
10 5. Follow the installation wizard, it should propose you the same data folder or even update automatically
11 6. Check your `/lib/config.local.php` and compare it with the `/lib/config.original.php` to see if new configuration items are available. If a new item is missing in your `config.local.php`, this may trigger some errors as Jirafeau may expect to have them.
12
13 # version 4.6.0 (not yet released)
14
15 - New configuration options for allowing to require, check or generate file download passwords
16 - Re-implemented server side encryption using PHP's `Sodium` extension (the formerly used `mcrypt` extension is deprecated)
17 - Keep and show basic download stats
18 - Removed Lighttpd's `mod_usertrack` from Docker config
19 - Added `<meta name="viewport"…` to template header to support responsive themes
20 - Removed usage of deprecated `strftime()` function
21 - Few more little fixes
22 - Typo and spelling mistakes
23
24 New configuration items:
25 - `download_password_requirement`, `download_password_gen_len`, `download_password_gen_chars`, `download_password_policy` and `download_password_policy_regex` for configuring file download passwords
26 - `admin_ip` for limiting access to the admin interface to certain IP addresses
27 - `admin_http_auth_user` is now an array (the possibility to use a string is preserved for backward compatibility)
28
29 # version 4.5.0
30
31 - Even more new translation, thanks a lot to all contributors!
32 - Support for automatic dark theme
33 - Fixed wobling admin buttons (light and dark default themes)
34 - Disable file deduplication by default
35 - Fix side effects of setting too high values in php configuration for async upload
36 - Add support for X-Sendfile
37 - Retry on more type of possible errors
38 - Move docker image to PHP 8.1
39 - Print more error details in case of issue
40 - Few more little fixes
41 - IRC channel to discuss :)
42
43 New configuration items:
44 - `max_upload_chunk_size_bytes` option
45 - `dark_style` option
46 - Defaulting `file_hash` option from `md5` to `random`
47
48 # version 4.4.0
49
50 - Add docker options
51 - Admin pannel can output informations for bug opening
52 - Fixes for PHP 8
53 - Fix autocomplete field for passwords
54 - Fix file previewing
55 - Disallow file preview for image/svg+xml files
56 - Expiry after a fortnight (2 weeks)
57 - Typo and spelling mistakes
58 - Upgrade from 4.3.0: in-place upgrade
59
60 New configuration items:
61 - `fortnight` value in `availabilities` array (default to `true`)
62
63 # version 4.3.0
64
65 - Fix various docker errors
66 - Fix various upload errors
67 - Add composer (useful for CI)
68 - Code cleaning
69 - Add option 'store_uploader_ip' to avoid uploaders ip logging
70 - Upgrade from 4.2.0: in-place upgrade
71
72 New configuration items:
73 - `store_uploader_ip` (default to `true`)
74
75 # version 4.2.0
76
77 - New file_hash option to eventually speed-up file identification process
78 - one_time_download is now optional
79 - Litespeed workaround for large files
80 - Admin interface can compute data folder size
81 - REUSE compliance test
82 - multiple docker features: mcrypt support, daily cleanup, unprivileged user
83 - Add upload password capability in script options
84 - Various bugfixes around retries and error management
85 - Automatically lower chunk size sent to server refusing large chunks
86 - Romanian lang support and other various lang support
87 - Upgrade from 4.1.1: in-place upgrade
88
89 # Version 4.1.1
90
91 - Fix lang sanity check
92 - Upgrade from 4.1.0: in-place upgrade
93
94 # Version 4.1.0
95
96 - Fix upload password and allowed ip (#201)
97 - Code refactorisation of IP checking
98 - Fix expiration dates
99 - Add better support for Accept-Language
100 - Cosmetic fixes
101 - More languages supported and language fixes
102 - Upgrade from 4.0.0: in-place upgrade
103
104 # Version 4.0.0
105
106 - Removed plain-text password support for admin auth (breaking change).
107 - Default folder sub-division to 8 characters (breaking change).
108 - New option `upload_ip_nopassword` to allow a list of IP to access Jirafeau without password
109 - Bugfix with LibreJS
110 - Other minor bug fixes
111 - More languages supported
112
113 ## Upgrade from 3.4.1 to 4.0.0
114
115 You may have to change your administrator password in your config file as admin password are only stored using sha256 (SHA2).
116 To do so, edit `lib/config.local.php` and update `admin_password` option using `echo -n MyNewPassw0rd | sha256sum` command.
117
118 Subfolder division changed in Jirafeau storage. You can either start from a fresh `var-` folder or you need to migrate your data.
119
120 In order to migrate your existing data:
121 1. Be sure to have a working backup of your Jirafeau instance and/or the rest of your hosting before any operation
122 2. Go to `var-` folder
123 3. Be sure you have read and write permissions on files and folders with your current user
124 4. Run the following commands:
125 ```bash
126 # Migrate files folder
127 find files -type f ! -name "*_count" | while read f; do bn="$(basename "$f")"; dst="files/${bn:0:8}/${bn:8:8}/${bn:16:8}/${bn:24:8}/"; mkdir -p "$dst"; mv "$f" "$dst" ; mv "${f}_count" "$dst"; done; find files -maxdepth 1 -type d -iname "?" -exec rm -rf {} \;
128 # Migrate links folder
129 find links -type f | while read link; do bn="$(basename "$link")"; mkdir "links/$bn"; mv "$link" "links/$bn/"; done; find links -maxdepth 1 -type d -iname "?" -exec rm -rf {} \;
130 ```
131
132 # Version 3.4.1
133
134 - Security fixes, thanks [Bishopfox Team](https://www.bishopfox.com/)
135 - Translation fixes
136 - Docker fix
137 - Advertise JavaScript license for LibreJS compatibility
138 - other minor fixes
139 - Upgrade from 3.4.0: in-place upgrade
140
141 # Version 3.4.0
142
143 - Add encryption support in bash script
144 - Refactoring of lang system for simpler management
145 - Removed installation step asking for language
146 - Merged weblate contributions
147 - Fixed some spelling issues
148 - Upgrade from 3.3.0 : in-place upgrade
149
150 # Version 3.3.0
151
152 - Added Docker Support
153 - Added a copy button next to links to copy URLs in clipboard
154 - Now use a delete page to confirm file deletion (#136)
155 - Fixed object ProgressEvent Error (#127)
156 - Added configuration tips for web servers
157 - More translations
158 - Style fixes
159 - Removed useless alias API support (some old toy)
160 - Upgrade from 3.2.1 : in-place upgrade
161
162 # Version 3.2.1
163
164 - fix download view after an upload
165 - Upgrade from 3.2.0 : in-place upgrade
166
167 # Version 3.2.0
168
169 - Update translations from Update translations from weblate
170 - Better style
171 - Fix regression on admin password setting
172 - Upgrade from 3.1.0 : in-place upgrade
173
174 # Version 3.1.0
175
176 - Fix regression on user authentication (see #113)
177 - Some cosmetic change
178 - Upgrade from 3.0.0 : in-place upgrade
179
180 # Version 3.0.0
181
182 - Remove XHTML doctype, support HTML5 only → breaking change for older browsers
183 - Remove redundant code
184 - Remove baseurl usage and set absolute links instead, which for example fixes SSL issues
185 - Extend contribution guide
186 - Switch to PSR-2 code style (fix line endings, indentations, whitespaces, etc)
187 - Declare system requirements
188 - Catch API errors in upload form
189 - Allow clients to upload files depending on IP or password
190 - Set UTC as timezone to prevent date/time issues
191 - Show readable date & time information
192 - Fix UI glitches in admin panel and upload form
193 - Upgrade from 2.0.0 : in-place upgrade
194
195 # Version 2.0.0
196
197 - Various documentation improvements
198 - Simplify automatic generation of local configuration file
199 - Set a custom title
200 - Bash Script: Enhanced help, show version, return link to web view as well
201 - »Terms of Service« refactored - Enable admin to overwrite the ToS, without changing existing source code → breaking, see upgrade notes
202
203 ## Upgrade from version 1.2.0 to 2.0.0
204
205 The "Terms of Service" text file changed.
206 To reuse a custom version of your ToS, move your ```/tos_text.php``` file to ```/lib/tos.local.txt``` and remove all HTML und PHP Tags, leaving a regular text file.
207
208 # Version 1.2.0
209
210 - Link on API page to generate bash script
211 - More informative error codes for API
212 - Security Fix: Prevent authentication bypass for admin interface
213 - CLI script to remove expired files automatically with a cron job
214 - SHA-256 hash the admin password
215 - New theme "elegantish"
216 - Fix for JavaScript MIME-Type, prevents blocking the resource on some servers
217 - Show download link for a file in admin interface
218 - Default time for expiration (set to 'month' by default)
219 - New expiration time: 'quarter'
220 - A lot of translation contributions
221 - Code cleanups
222 - Upgrade from 1.1: in-place upgrade
223
224 # Version 1.1
225
226 - New skins
227 - Add optional server side encryption
228 - Unlimited file size upload using HTML5 file API
229 - Show speed and estimated time during upload
230 - A lot of fixes
231 - A lot of new languages
232 - Small API to upload files
233 - Limit access to Jirafeau using IP, mask, passwords
234 - Manage (some) proxy headers
235 - Configure your maximal upload size
236 - Configure file's lifetime durations
237 - Preview URL
238 - Get Jirafeau's version in admin interface
239
240 ### From version 1.0 to 1.1
241
242 - Download URL changed. Add a rewrite rule in your web server configuration to rename ```file.php``` to ```f.php``` to make older, still existing links work again-
243 - The default theme changed. Optionally change the theme in ```lib/config.local.php``` to "courgette"
244
245 ## Version 1.0
246
247 The very first version of Jirafeau after the fork of Jyraphe.
248
249 - Security fix
250 - Keep uploader's ip
251 - Delete link for each upload
252 - No more clear text password storage
253 - Simple language support
254 - Add an admin interface
255 - New Design
256 - Add term of use
257 - New path system to manage large number of files
258 - New option to show a page at download time
259 - Add option to activate or not preview mode

patrick-canterino.de