Releases: RaSan147/pyrobox
Releases · RaSan147/pyrobox
pyrobox-0.6.5
NOTE: next release will be 0.7.0 with server file split into 2 parts pyroboxCore and server for the ease of development and creating webapps.
Version 0.6.5
Client-side Changes:
- Folder info view now recieved a huge speed boost
- Any file can be downloaded via R-Click -> Download
- Updated some emojis
Server-side Changes:
- moving towards pyroboxCore for future updates
- Using os.scandir() instead of os.listdir() for speed boost
- Post request handling is now done more cleanly, like how form data works
Fixes:
- Nothing to notice since 0.6.4
pyrobox-0.6.4
Client-side Changes:
- Nothing to notice
Server-side Changes:
- HOTFIX: run_update is using
--user
flag due to permission issues
Fixes:
- fixed update not working due to permission issues
pyrobox-0.6.3
note: since i don't have tester, and i often forget to combine multiple files (working in multiple dimensions uh i mean branches is a pain) and this happened.
Client-side Changes:
- Nothing to notice
Server-side Changes:
- HOTFIX: log_message now works like print funtion (*args), not like logger.log(format, *args)
Fixes:
- fixed log_message not working
pyrobox-0.6.2
Client-side Changes:
- Nothing to notice
Server-side Changes:
- HOTFIX: added
action="?upload"
to upload form
Fixes:
- fixed upload form not working due to missing
action="?upload"
which is required for POST requests
pyrobox-0.6.1
Client-side Changes:
- Nothing to notice
Server-side Changes:
- Completely changed server structure, now using
@SimpleHTTPRequestHandler.on_req
decorator to handle requests.@SimpleHTTPRequestHandler.on_req(request_type, conditions)
- request_type: GET, POST, HEAD # use HEAD instead of GET since it will be called in get anyway must
- conditions: url, query, fragment
- sends
return func(self, url_path=url_path, query=query, fragment=fragment, path=path, spathsplit=spathsplit)
to the function.- self: SimpleHTTPRequestHandler
- url_path: url path (no query, no fragment)
- query: query dict (custom_dict)
- fragment: fragment (excluding #)
- path: Translated path (the actual path on OS file system)
- spathsplit: path split (list)
- Improved POST request handling (maybe)
- IMPROVED update with pip on server
- Server prints ==== request_id ==== on every request
==
: start++
: request handling--
: end##
: separator
- Update will print log on console
Fixes:
- zip download now works (used to keep reloading and downloading)
- Removed New folder creation with '../' in name Security concern
- maybe some more that I forgot
pyrobox-0.5.0
Changes:
- Fixed port bug.
- Published to pip
- updated readme
- life got more painful
v0.5
Change log:
Improvements:
- Improved Zip speed
- Improved Folder property checking my using xhr on folder size
- Improver server side request handling (using query string)
- Using string template with better support for dev mode
- natort and send2trash optional, means will work without internet (send to trash will be disabled if not installed)
- Added server update feature in
Admin page
at bottom (if available on this repo)
Fixes:
- Stopped Flashing of no-script version of folder list
- Fixed every file was being downloaded on click instead of opening in browser
- Fixed no-script mode upload
- Fixed Selected File list style and functionality. (if 2 files with same name is selected, remove previous one and replace with new one, because, when uploading last file will remain in host server, so we need to replace it with new one)
Changes:
- Reload server is moved to admin page
- Made r_u_sure popup and toaster
local_server v0.4
ChangeLog:
- Bug fix
- More CSS
- Video player improvement
- Removed
prev dir
link for no js mode - many more
local_server v0.3 is here with Updated UI and more.
Now you can use right click context menu
- UI massive improvement
- Upload progress bar added
- Back-end massive improvement, uses url query. Ease of development.
- Front-end No more %3F hack, using query URL
- More css more effects
- Right click menu close asap and keep watching for responce from server.
- Video player improved
- Zip feature no longer needa 7z, and sudo apt bla bla bla on linux, using python zipfile with zipfly
- Folders and files are sorted like os file manager.
- Clone_dir.py added. Open the file and make changes to use as you wish. (Will improve docs and command-line feature)
New requirement: natsort
local_server v0.2 [DEPRICATED]
py_httpserver_Ult 🌐🌟☁
Note
UPLOAD PASSWORD: SECret
Requesting for more suggesions and ideas
Server side requirement
- Python 3.7 or higher (need to test lower versions)
- Basic knowledge about Python
send2trash
pip package (will be auto installed when the code runs)- (for windows) no need to download 7z (from here), it will be automatically downloaded
Installation
- Download the
local_server.py
- yes, only the
local_Server.py
. Other files are not necessary. - Install Python 3.7 or higher and run the
local_server.py
- The server will show your ip and port, use that with and local device browser under the same network
- Like this
192.168.0.100:6969/
- Like this
On Linux
On Linux give permissions by :
$sudo chmod +x local_Server.py
run like a script with :
$./local_Server.py
Customization
-
Simply running the code will create a server on
G:\ Drive
for windows onPort: 6969
-
On browser (same device as server), go to
localhost:port_number
to see the output -
To change the server running directory,
- i) either edit the code
- ii) or add
-d
or--directory
command line argument when launching the programlocal_server.py -d .
to launch the server in current directory (where the file is)local_server.py -d "D:\Server\Public folder\"
(Use Double-Quotation while directory has space)local_server.py -d "D:/Server/Public folder"
(Forward or backward slash really doesn't matter)
-
To change port number
- i) just edit the code for permanent change
- ii) or add the port number at the end of the command line arg
local_server.py 45678
local_server.py -d . 45678
-
To specify alternate bind address
- Add bind add
-bind {address}
- Add bind add
Basic FEATURES
- File Hosting system (Serve files from local Storage system)
- Access Shared File System from Multiple Devices
Extra FEATURES
- 🔽 DOWNLOAD AND VIDEO STREAM WITH PAUSE AND RESUME
- 🔼 UPLOAD WITH PASSWORD
- 📈 MULTIPLE FILE UPLOAD
- 📝 RENAME
- 📁 FOLDER DOWNLOAD as ZIP (uses temp folder)
- ⏯ VIDEO PLAYER
- 🔁 DELETE FILE (MOVE TO RECYCLE BIN)
- 🔥 PERMANENTLY DELETE
- ⛓
File manager
likeNAVIGATION BAR
- 🧨 RELOAD SERVER FROM REMOTE [DEBUG PURPOSE]
- 🆕 FOLDER CREATION
- 💬 Pop-up messages UI(from my Web leach repo)
- 🌐 If you are using REAL IP AND ALLOW PYTHON TO USE PUBLIC NETWORK, YOUR SERVER CAN BE VISIBLE AROUND THE GLOBE. (also vulnerable, since you can't control access yet)
- 🔜 More comming soon