Comments (6)
Agree that the name is unfortunate, but the lfs API has been there for a long time, it would break lots of stuff if it was changed. What's being proposed here exactly?
from luafilesystem.
You could add a new (preferred) name, and mark the existing one as deprecated.
from luafilesystem.
I agree the name is a bit odd and I wouldn't have chosen it myself, but IMO I don't think the change is worth the hassle: people would write code with the new name, and then users with existing installs of lfs are forced to upgrade just because of that one string, but not after some breakage and headscratching (especially in a dynamically typed language, where things fail at runtime, often silently).
from luafilesystem.
Thats why you transition it over a number of versions... the alternative is not to change anything (the other thing thats ugly is the iterator spec for directory traversal which looks like it was developed for an earlier version of Lua and adapted).
The problem is that these older projects (luasocket, luaposix and this one) are copied as APIs by newer stuff too (eg openresty copies the luasocket interface) as models for how Lua interfaces should be. So we should be trying to improve them, and defining a specification.
One model would be that they could change in sync with core language changes, so there could be a release for 5.3 with changes, as people will need to update their code then anyway, as the language does not have full compatibility.
from luafilesystem.
We should rename 'mode' in lfs 2.0 and leave the old name supported but deprecated. What's the preferred new name, 'filetype' or just 'type'?
from luafilesystem.
i don't know, but for me, on archlinux, and installed by luarocks, attributes functions doesn't return nothing (mode or not). empty table for file or for directory entry.
I find why... i follow the doc, but in fact the doc doesn't said that the option of attribute should be a string: 'mode'. I'm newbie on lua. I think the doc should maybe give options surrounded by '' for be almost clear for everybody.
from luafilesystem.
Related Issues (20)
- Fatal Error - /usr/include/features.h:461:12: fatal error: sys/cdefs.h: No such file or directory HOT 2
- lfs.chdir Changes current working directory to volume without end slash wont work
- lfs.link (symlink, new[, symlink]) always create a symbolic link
- Why is luarocks saying : Error: unknown option '-e' when installing luacheck? HOT 4
- load on windows fails HOT 2
- Upload new dev-rockspec to LuaRocks.org HOT 4
- Update homepage link on this GitHub project HOT 1
- performance in windows of lfs.attributes inside lfs.dir loop
- lfs.link unsupported on windows even in developper mode HOT 1
- keep got warning message with openresty
- Function lfs.mkdir() is not idempotent and hence not thread safe
- error when retrieve symlinkatrributes at directory symlink HOT 1
- Copying/moving files HOT 5
- Documentation site 404 error? HOT 1
- Update homepage HOT 5
- error while installing HOT 3
- missing prototypes warnings when building on windows using msys2
- Error when installing on windows via luarocks HOT 3
- Does not compile in Windows in Unicode (WCHAR) mode
- pl.Path.isdir doesn't work properly if the path prefix start by "~" HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from luafilesystem.