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

patrick-canterino.de