4881 Commits

Author SHA1 Message Date
payonel
28e312d0f1 adding dangranos as a contributor in the ru_RU author list 2017-11-23 23:16:56 -08:00
payonel
8a9f8ca205 russion translation contribution thanks to makkarpov 2017-11-23 23:14:10 -08:00
payonel
81722cc7cd change FIleSystem.checkHandle() to also check for a table parameter
thanks to @Pwootage, who explained this change as such:

Previously, checkHandle was not "language safe" (or at least, not JSON-safe):

open() returns a HandleValue (which is a type not exposed by the oc-api jar)
checkHandle() checks for either a integer, or a HandleValue object

When calling through a custom architecture, HandleValue may or may not be preserved, as the underlying language, unless it can attach the original Java object, may not be able to represent the HandleValue class, and so convert it to a table, which checkHandle() did not check for.
2017-11-23 22:47:08 -08:00
payonel
56a4973e2b npe protection for ae buses 2017-11-23 22:10:55 -08:00
payonel
7ec85999da saving more memory and improving the vt100 library
move all vt100 code to vt100 library
delay load event rare code
fix shell parse for %d>&%d not followed by whitespace
remove weird tty blink code and use vt100 codes
bump openos patch version
2017-11-23 13:05:54 -08:00
SquidDev
5b0c085c2d Miscellaneous tweaks to OpenOS (#2636)
* Parse Lua REPL inputs with an implicit "return "

If an input does not start with a leading "=", this will parse the input
with "return " appended and, if that fails, will parse as a normal
statement.

This allows for normal expressions to be entered into the repl (such as
`2 + 2`) but does mean the parse errors for malformed inputs are
confusing. For instance, `3 + ` will error at '3' rather than '<eof>'.

* Do not insert into history if a duplicate

This mimics the behaviour of shells such as bash or zsh, where
whitespace-only lines are not entered into history, nor are ones equal
to the previous input. This makes history navigation slightly easier.
2017-11-22 11:19:33 -08:00
payonel
e742af6112 fs.size loads more fs lib, should keep using exists 2017-11-17 14:09:21 -08:00
payonel
f26cb54c28 allow .shrc to use tty stdin 2017-11-16 18:40:58 -08:00
payonel
5107afb176 fixes for bind remove and cleanup 2017-11-15 23:53:22 -08:00
payonel
7200990048 mount bind cleanup 2017-11-15 23:08:08 -08:00
payonel
5f3088c489 more efficient autorun 2017-11-15 22:57:53 -08:00
payonel
89abb6f30b mount bind point support 2017-11-15 21:24:12 -08:00
payonel
ebb7dcc0d2 fix missing dev bug for install and let mount use existing dirs 2017-11-14 23:05:42 -08:00
payonel
a9c4529372 bump openos version string to 1.7.0
probably should have done this back when OC updated to 1.7
2017-11-13 13:49:29 -08:00
payonel
355a520977 allow custom error objects to print to stderr 2017-11-11 10:50:01 -08:00
payonel
e07954a02f link to IDEA instructions for 1.7.10 2017-11-10 11:29:26 -08:00
payonel
e62113de41 thaumcraft api version update 2017-11-05 17:25:31 -08:00
payonel
dafd15367a better chip diamond recipe 2017-11-05 15:47:46 -08:00
payonel
234554a060 protect slow boots from timeouts 2017-11-01 18:02:36 -07:00
payonel
868c101772 remove boot safe guard for boot on slow servers, it broke stuff. maybe revist another time 2017-10-31 00:17:00 -07:00
payonel
07791b9851 fix ic2-classic mod incompatibility
additionally:
remove dead code in openos transforms
safe guard openos boot from slow server tick

closes #2487
2017-10-30 23:14:54 -07:00
ChristoCoder
c930ec329e Allow getting yaw of player through tablet component 2017-10-26 14:09:13 -07:00
Fingercomp
73c642dee8 Fix the Russian translation 2017-10-25 23:42:50 -07:00
payonel
2f1332f605 rename ru_RU.lang back to english path 2017-10-25 08:47:45 -07:00
S0ZDATEL
89bd057782 Fix a translation mistake.
Fixed wrong translation of "hover boots" that was like "rocket boots" or "jet boots".

Close #2579.
2017-10-24 08:14:39 -07:00
payonel
5288efaa6a check correct index on file handle
always worked before because all callers were checking 0 anyways

closes #2442
2017-10-16 18:04:31 -07:00
payonel
4075d6f16b ignore vscode, and some build fixes 2017-10-16 18:03:06 -07:00
payonel
0123dce575 preserve original exception thrown for machine arch ctors
to not "eat" the original exception, we can just set it in the IllegalArgumentException's cause, see https://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html#getCause()

closes: #2146
2017-10-14 16:30:25 -07:00
Vexatos
fd5fd98c84 Subversion no more. v1.7.0 2017-10-14 18:43:25 +02:00
Vexatos
4fffcccd98 Version bump. 2017-10-14 18:34:12 +02:00
/Fox --develop
30e05b9c4f Updated link to Lua code conventions 2017-10-04 14:52:43 -07:00
payonel
f1b953c7aa introduce screens to gpus in robot components
GPUs have neighbor visibility, and screens have network visibility. But in a robot the gpu and screen are sibling components, with edges to the machine, but without edges to each other. Thus during load they are not connected to each other (regardless of load order). Robots already have a provision for this issue for connecting screens to keyboards and keyboards to screens, but lacked a custom screen->gpu connection. This code change simply adds that search and connects all screens to all gpus.

closes #2302
2017-10-03 12:31:38 -07:00
payonel
066fc4b784 protect dispatch from callbacks that unregister handlers
closes #2528
2017-09-21 13:49:16 +02:00
payonel
2abd8b3134 closes #2507
/bin/less and /bin/more were able to lock up the system if they call string.gsub(string, function) on a very large string (~144k chars long).
The machine layer intercepts expensive strings calls by checking the length of the string, but it does not intercept gsub calls when the replace action is a function

The fix is to intercept all long string actions, not just non-function replacement gsub calls

Note that /bin/more is now more efficient and doesn't call string.gsub, but this is still the right fix to keep the sandbox from being able to lock up the system with string methods
2017-09-17 11:30:19 +02:00
payonel
47c67a119f term fixes, scroll methods was moved 2017-09-16 08:19:49 +02:00
payonel
5c9760cf77 thread code cleanup for clarity, no api change 2017-09-13 10:46:17 -07:00
payonel
6190d75c37 more cats
improve cat io by directly feeding stream data to output and optimize more to not use line parsing
2017-09-12 15:26:25 -07:00
payonel
0b767e6c7c fix cat when input is tty 2017-09-11 08:09:08 -07:00
payonel
9d544b3731 tty and term fixes and correctness
* term.pull fix, the tty stream no longer needs a cursor object
* buffer reads now pass the original result and reason all the way back. this allows /bin/sh to distinguish ^c from ^d
* /bin/sh cleanup to not show prompt when there is no input tty
2017-09-10 23:33:13 -07:00
payonel
d8033669eb optimizations and fixes
* /bin/cat chunk based [huge performance and memory savings, can handle enormous files now]
* /bin/sleep blinks now
* removed unnecessary methods from tty
* cursor blinking and scrolling terminal improvements
* fixed bad term call to tty write
2017-09-10 00:58:54 -07:00
payonel
8af5c0d056 further serialization cleanup 2017-09-08 20:01:25 -07:00
payonel
1bc6e84af2 use a growing vector of string parts to serialize a string, returning table.concat when done 2017-09-08 20:01:25 -07:00
payonel
eaf2b0cf8a ignore the robot magic filesystem with install, and small /bin/sleep fix
/bin/sleep ^c was printing an error because it was returning the event data, which prompts was interpretting as error details [unexpected]
use a .prop file to have the robot component magic fs be ignored when running `install`
2017-09-08 00:49:50 -07:00
payonel
81ffb2187b Merged contribution from BillyJimson
https://github.com/MightyPirates/OpenComputers/pull/2324
2017-09-07 18:13:15 -07:00
payonel
ae501a859d return true from thread method as per documented specification 2017-09-07 10:34:47 -07:00
payonel
fc486d4bd2 openos 1.6.8 update
Changes

* thread: fix coma state issue where thread would not resume
* thread: add thread.current(), returns current thread [ the init thread is still technically not a thread ]
* tty: simplify the api with read, and separate all stream methods from the library
* sleep: /bin/sleep will now show blinking cursor and can be interrupted
* echo: use io.write instead of print. print loads slightly more resources
2017-09-07 08:40:30 -07:00
payonel
a1512451fe support s and u vt100 codes
strangely, the real terminal appears to treat [su] the exact same as [78] even though the specification says [su] is position only
2017-08-23 12:24:05 -07:00
payonel
c4c3811376 revert removal of process.running -- some scripts still use it 2017-08-22 11:22:06 -07:00
payonel
2a178f6d41 fix quiet /bin/source
quiet mode in /bin/source was a mess -- making .shrc scripts not able to print. Also, a lot of the /bin/sh arg parsing code has traditionally been over complicated. cleaned that up as well thanks to old code that expected strings in the args having been removed some time ago
2017-08-08 18:45:36 -07:00
payonel
f00c2dd6a2 simplify tty check slightly and add comment that tty should not be used directly by user code
maybe i should just move tty to /lib/core
2017-08-08 18:45:36 -07:00