3 "in-place upgrade" refers to this general procedure:
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/mojo42/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.
15 - Even more new translation, thanks a lot to all contributors!
16 - Support for automatic dark theme
17 - Fixed wobling admin buttons (light and dark default themes)
18 - Disable file deduplication by default
19 - Fix side effects of setting too high values in php configuration for async upload
20 - Add support for X-Sendfile
21 - Retry on more type of possible errors
22 - Move docker image to PHP 8.1
23 - Print more error details in case of issue
24 - Few more little fixes
25 - IRC channel to discuss :)
27 New configuration items:
28 - `max_upload_chunk_size_bytes` option
30 - Defaulting `file_hash` option from `md5` to `random`
35 - Admin pannel can output informations for bug opening
37 - Fix autocomplete field for passwords
39 - Disallow file preview for image/svg+xml files
40 - Expiry after a fortnight (2 weeks)
41 - Typo and spelling mistakes
42 - Upgrade from 4.3.0: in-place upgrade
44 New configuration items:
45 - `fortnight` value in `availabilities` array (default to `true`)
49 - Fix various docker errors
50 - Fix various upload errors
51 - Add composer (useful for CI)
53 - Add option 'store_uploader_ip' to avoid uploaders ip logging
54 - Upgrade from 4.2.0: in-place upgrade
56 New configuration items:
57 - `store_uploader_ip` (default to `true`)
61 - New file_hash option to eventually speed-up file identification process
62 - one_time_download is now optional
63 - Litespeed workaround for large files
64 - Admin interface can compute data folder size
65 - REUSE compliance test
66 - multiple docker features: mcrypt support, daily cleanup, unprivileged user
67 - Add upload password capability in script options
68 - Various bugfixes around retries and error management
69 - Automatically lower chunk size sent to server refusing large chunks
70 - Romanian lang support and other various lang support
71 - Upgrade from 4.1.1: in-place upgrade
75 - Fix lang sanity check
76 - Upgrade from 4.1.0: in-place upgrade
80 - Fix upload password and allowed ip (#201)
81 - Code refactorisation of IP checking
82 - Fix expiration dates
83 - Add better support for Accept-Language
85 - More languages supported and language fixes
86 - Upgrade from 4.0.0: in-place upgrade
90 - Removed plain-text password support for admin auth (breaking change).
91 - Default folder sub-division to 8 characters (breaking change).
92 - New option `upload_ip_nopassword` to allow a list of IP to access Jirafeau without password
94 - Other minor bug fixes
95 - More languages supported
97 ## Upgrade from 3.4.1 to 4.0.0
99 You may have to change your administrator password in your config file as admin password are only stored using sha256 (SHA2).
100 To do so, edit `lib/config.local.php` and update `admin_password` option using `echo -n MyNewPassw0rd | sha256sum` command.
102 Subfolder division changed in Jirafeau storage. You can either start from a fresh `var-` folder or you need to migrate your data.
104 In order to migrate your existing data:
105 1. Be sure to have a working backup of your Jirafeau instance and/or the rest of your hosting before any operation
106 2. Go to `var-` folder
107 3. Be sure you have read and write permissions on files and folders with your current user
108 4. Run the following commands:
110 # Migrate files folder
111 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 {} \;
112 # Migrate links folder
113 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 {} \;
118 - Security fixes, thanks [Bishopfox Team](https://www.bishopfox.com/)
121 - Advertise JavaScript license for LibreJS compatibility
123 - Upgrade from 3.4.0: in-place upgrade
127 - Add encryption support in bash script
128 - Refactoring of lang system for simpler management
129 - Removed installation step asking for language
130 - Merged weblate contributions
131 - Fixed some spelling issues
132 - Upgrade from 3.3.0 : in-place upgrade
136 - Added Docker Support
137 - Added a copy button next to links to copy URLs in clipboard
138 - Now use a delete page to confirm file deletion (#136)
139 - Fixed object ProgressEvent Error (#127)
140 - Added configuration tips for web servers
143 - Removed useless alias API support (some old toy)
144 - Upgrade from 3.2.1 : in-place upgrade
148 - fix download view after an upload
149 - Upgrade from 3.2.0 : in-place upgrade
153 - Update translations from Update translations from weblate
155 - Fix regression on admin password setting
156 - Upgrade from 3.1.0 : in-place upgrade
160 - Fix regression on user authentication (see #113)
161 - Some cosmetic change
162 - Upgrade from 3.0.0 : in-place upgrade
166 - Remove XHTML doctype, support HTML5 only → breaking change for older browsers
167 - Remove redundant code
168 - Remove baseurl usage and set absolute links instead, which for example fixes SSL issues
169 - Extend contribution guide
170 - Switch to PSR-2 code style (fix line endings, indentations, whitespaces, etc)
171 - Declare system requirements
172 - Catch API errors in upload form
173 - Allow clients to upload files depending on IP or password
174 - Set UTC as timezone to prevent date/time issues
175 - Show readable date & time information
176 - Fix UI glitches in admin panel and upload form
177 - Upgrade from 2.0.0 : in-place upgrade
181 - Various documentation improvements
182 - Simplify automatic generation of local configuration file
184 - Bash Script: Enhanced help, show version, return link to web view as well
185 - »Terms of Service« refactored - Enable admin to overwrite the ToS, without changing existing source code → breaking, see upgrade notes
187 ## Upgrade from version 1.2.0 to 2.0.0
189 The "Terms of Service" text file changed.
190 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.
194 - Link on API page to generate bash script
195 - More informative error codes for API
196 - Security Fix: Prevent authentication bypass for admin interface
197 - CLI script to remove expired files automatically with a cron job
198 - SHA-256 hash the admin password
199 - New theme "elegantish"
200 - Fix for JavaScript MIME-Type, prevents blocking the resource on some servers
201 - Show download link for a file in admin interface
202 - Default time for expiration (set to 'month' by default)
203 - New expiration time: 'quarter'
204 - A lot of translation contributions
206 - Upgrade from 1.1: in-place upgrade
211 - Add optional server side encryption
212 - Unlimited file size upload using HTML5 file API
213 - Show speed and estimated time during upload
215 - A lot of new languages
216 - Small API to upload files
217 - Limit access to Jirafeau using IP, mask, passwords
218 - Manage (some) proxy headers
219 - Configure your maximal upload size
220 - Configure file's lifetime durations
222 - Get Jirafeau's version in admin interface
224 ### From version 1.0 to 1.1
226 - 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-
227 - The default theme changed. Optionally change the theme in ```lib/config.local.php``` to "courgette"
231 The very first version of Jirafeau after the fork of Jyraphe.
235 - Delete link for each upload
236 - No more clear text password storage
237 - Simple language support
238 - Add an admin interface
241 - New path system to manage large number of files
242 - New option to show a page at download time
243 - Add option to activate or not preview mode