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
15 - New file_hash option to eventually speed-up file identification process
16 - one_time_download is now optional
17 - Litespeed workaround for large files
18 - Admin interface can compute data folder size
19 - REUSE compliance test
20 - multiple docker features: mcrypt support, daily cleanup, unprivilidged user
21 - Add upload password capability in script options
22 - Various bugfixes around retries and error management
23 - Automatically lower chunk size sent to server refusing large chunks
24 - Romanian lang support and other various lang support
25 - Upgrade from 4.1.1: in-place upgrade
29 - Fix lang sanity check
30 - Upgrade from 4.1.0: in-place upgrade
34 - Fix upload password and allowed ip (#201)
35 - Code refactorisation of IP checking
36 - Fix expiration dates
37 - Add better support for Accept-Language
39 - More languages supported and language fixes
40 - Upgrade from 4.0.0: in-place upgrade
44 - Removed plain-text password support for admin auth (breaking change).
45 - Default folder sub-division to 8 characters (breaking change).
46 - New option `upload_ip_nopassword` to allow a list of IP to access Jirafeau without password
48 - Other minor bug fixes
49 - More languages supported
51 ## Upgrade from 3.4.1 to 4.0.0
53 You may have to change your administrator password in your config file as admin password are only stored using sha256 (SHA2).
54 To do so, edit `lib/config.local.php` and update `admin_password` option using `echo -n MyNewPassw0rd | sha256sum` command.
56 Subfolder division changed in Jirafeau storage. You can either start from a fresh `var-` folder or you need to migrate your data.
58 In order to migrate your existing data:
59 1. Be sure to have a working backup of your Jirafeau instance and/or the rest of your hosting before any operation
60 2. Go to `var-` folder
61 3. Be sure you have read and write permissions on files and folders with your current user
62 4. Run the following commands:
64 # Migrate files folder
65 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 {} \;
66 # Migrate links folder
67 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 {} \;
72 - Security fixes, thanks [Bishopfox Team](https://www.bishopfox.com/)
75 - Advertise javascript license for LibreJS compatibility
77 - Upgrade from 3.4.0: in-place upgrade
81 - Add encryption support in bash script
82 - Refactoring of lang system for simpler management
83 - Removed installation step asking for language
84 - Merged weblate contributions
85 - Fixed some spelling issues
86 - Upgrade from 3.3.0 : in-place upgrade
90 - Added Docker Support
91 - Added a copy button next to links to copy URLs in clipboard
92 - Now use a delete page to confirm file deletion (#136)
93 - Fixed object ProgressEvent Error (#127)
94 - Added configuration tips for web servers
97 - Removed useless alias API support (some old toy)
98 - Upgrade from 3.2.1 : in-place upgrade
102 - fix download view after an upload
103 - Upgrade from 3.2.0 : in-place upgrade
107 - Update translations from Update translations from weblate
109 - Fix regression on admin password setting
110 - Upgrade from 3.1.0 : in-place upgrade
114 - Fix regression on user authentication (see #113)
115 - Some cosmetic change
116 - Upgrade from 3.0.0 : in-place upgrade
120 - Remove XHTML doctype, support HTML5 only → breaking change for older browsers
121 - Remove redundant code
122 - Remove baseurl usage and set absolute links instead, which for example fixes SSL issues
123 - Extend contribution guide
124 - Switch to PSR-2 code style (fix line endings, indentations, whitespaces, etc)
125 - Declare system requirements
126 - Catch API errors in upload form
127 - Allow clients to upload files depending on IP or password
128 - Set UTC as timezone to prevent date/time issues
129 - Show readable date & time information
130 - Fix UI glitches in admin panel and upload form
131 - Upgrade from 2.0.0 : in-place upgrade
135 - Various documentation improvements
136 - Simplify automatic generation of local configuration file
138 - Bash Script: Enhanced help, show version, return link to web view as well
139 - »Terms of Service« refactored - Enable admin to overwrite the ToS, without changing existing source code → breaking, see upgrade notes
141 ## Upgrade from version 1.2.0 to 2.0.0
143 The "Terms of Service" text file changed.
144 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.
148 - Link on API page to generate bash script
149 - More informative error codes for API
150 - Security Fix: Prevent authentication bypass for admin interface
151 - CLI script to remove expired files automatically with a cronjob
152 - SHA-256 hash the admin password
153 - New theme "elegantish"
154 - Fix for JavaScript MIME-Type, prevents blocking the resource on some servers
155 - Show download link for a file in admin interface
156 - Default time for expiration (set to 'month' by default)
157 - New expiration time: 'quarter'
158 - A lof of translation contributions
160 - Upgrade from 1.1: in-place upgrade
165 - Add optional server side encryption
166 - Unlimited file size upload using HTML5 file API
167 - Show speed and estimated time during upload
169 - A lot of new langages
170 - Small API to upload files
171 - Limit access to Jirafeau using IP, mask, passwords
172 - Manage (some) proxy headers
173 - Configure your maximal upload size
174 - Configure file's lifetime durations
176 - Get Jirafeau's version in admin interface
178 ### From version 1.0 to 1.1
180 - 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-
181 - The default theme changed. Optionally change the theme in ```lib/config.local.php``` to "courgette"
185 The very first version of Jirafeau after the fork of Jyraphe.
189 - Delete link for each upload
190 - No more clear text password storage
191 - Simple langage support
192 - Add an admin interface
195 - New path system to manage large number of files
196 - New option to show a page at download time
197 - Add option to activate or not preview mode