5425 Commits

Author SHA1 Message Date
Florian "Sangar" Nücke
ee620aeacd Merge pull request #2010 from Fingercomp/bit32-rotate-fix
Fix bit32.lrotate and bit32.rrotate
2016-09-18 20:17:28 +02:00
Florian "Sangar" Nücke
fc56f31116 Merge pull request #2060 from joserobjr/patch-1
Check if the world is remote before killing the drone
2016-09-18 20:16:45 +02:00
Florian Nücke
c9060930dd Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9
# Conflicts:
#	src/main/scala/li/cil/oc/common/tileentity/Rack.scala
#	src/main/scala/li/cil/oc/util/FluidUtils.scala
2016-09-18 20:07:18 +02:00
Florian Nücke
e1ad0f6663 Avoid NPE that I don't know how it comes to be. Closes #2024.
Lazy fix, because I'm lazy.
2016-09-18 19:52:01 +02:00
Florian Nücke
c2a79a19eb Power mountables without requiring them to be connected to the outside. Closes #2020. 2016-09-18 19:39:35 +02:00
Florian Nücke
7d6da949de Fix NPE when other mods request tooltips before font renderer is available. Closes #2016. 2016-09-18 18:47:50 +02:00
Florian Nücke
f702949d48 Allow draining dynamic liquid blocks if they're "full" and work around the fluid registry not knowing dynamic liquid blocks... fixes ##2015. Should also fix #2023. 2016-09-18 18:42:28 +02:00
Florian Nücke
884842b843 Hmm, I wonder why that was there. Oh well. Fixes #2001. 2016-09-18 17:24:24 +02:00
joserobjr
7ea20602b7 Check if the world is remote before killing the drone
Drones were getting invisible when a player attempts to drop it (wrench + sneak + right click) and a server mod cancels the interaction.
2016-09-17 05:04:46 -03:00
payonel
917befcd0e memory, sandbox, devfs, signals, log, rc, terminal, oppm
A big update final push before 1.6 release. Here is the detailed rundown of the changes

/lib/term.lua
1. delay calling gpu.getViewport() when creating a terminal window. this fixes scenarios where the gpu could be a proxy object that doesn't have a viewport defined yet.
2. big blink cleanup to minimize the potential number of gpu calls during blink, and simplify the code

/lib/sh.lua, /lib/process.lua
1. moving shell sandboxing code to process library. This actually simplifies creating the sandbox for processes and handling process crash (process lib and sh lib shared common crash code)

/bin/rc.lua
1. found a bug in restart, fixed

/lib/pipes.lua
1. required update to be compatible with internal(private) methods to the sh library

/lib/package.lua
1. just aesthetic cleanup of error reporting

/bin/mktmp.lua
1. use existing os.tmpname() helper method

/init.lua and (added) /lib/tools/boot.lua
1. moving all the code I can to tools file to allow the memory to unload after boot completes.

/bin/ls.lua
1. fixing symbolic links to directory display (had extra /)

/lib/event.lua
1. refactor listeners and timers into common registers (fully backwards compatible). Provides a mechanism for drivers to know about ALL events without stealing them from the main process. Will document it later when the api is hardened (new api, event.register)
2. memory savings due to refactor
3. protecting computer.pullSignal! this is critical, user scripts that were previously pulling diirection from the computer api were able to put the kernel in a bad state. computer.pullSignal is still available, but it calls the event api to correctly dispatch events as drivers expect.

devfs
1. eeprom and eeprom-data are now dynamically available. This is significant, now when a user removes the eeprom, it will not be listed in /dev
2. devfs upgrade, support built for future dynamic folders (such as /dev/filesystems/)

autorun
1. code cleanup

oppm
1. fixing cwd expected by oppm.lua during initial install (if using .install via `install oppm`)
2016-08-26 23:33:20 -07:00
payonel
9dcc6070e0 minor bug fix: disable fs.remove of devfs files
Allowing removal of dev points can have unintended side effects because the dev points cannot be recreated without a reboot

For example, `cp -f /tmp/eeprom /dev/eeprom` breaks because cp first removes the target file - and then is not allowed to create it with io.write(path, 'w')
2016-08-11 23:39:22 -07:00
Fingercomp
b95cf7cae9
fix bit32.lrotate and bit32.rrotate
If any of two arguments were too big, those functions returned 0 instead
of an expected value.

E.g., bit32.lrotate(11111111111111111,2222222222222) --> 0
Expected return value: 3340540761.
2016-08-09 21:19:50 +07:00
Maxim Karpov
e21992c0e9 Added SignChangeEvent to sign upgrade 2016-07-31 16:10:19 +03:00
Maxim Karpov
537b8c20f6 Added whitelisting of debug card owners. 2016-07-31 13:46:20 +03:00
Florian Nücke
b68d87855f Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-31 10:30:06 +02:00
payonel
2a5de6868a some fixes learned from btm for term, grep, and devfs
using buffers for term stream string (used in devfs)
simulate enter key and split clipboards on multiline paste
delay proxy calls to eeprom until actually using /dev/eeprom
all reads on /dev/null (returns nil)
fix grep using ^
2016-07-30 22:33:28 -07:00
Florian Nücke
4e257186bf Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9
# Conflicts:
#	src/main/scala/li/cil/oc/common/PacketBuilder.scala
2016-07-30 17:23:54 +02:00
Florian Nücke
f388340dd0 Make packet builder use buffering. 2016-07-30 17:19:20 +02:00
Florian Nücke
a0128f5c9c Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-30 09:40:54 +02:00
Florian Nücke
97b1313531 math.pow compat in Lua 5.3 (#1992). 2016-07-30 09:38:00 +02:00
Florian Nücke
b503b947e4 Huh, still had this lying around. Can't remember what it was trying to fix, but it doesn't seem to make things more broken so eh. 2016-07-30 09:37:34 +02:00
Florian Nücke
9012d0ea3b Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-27 20:44:02 +02:00
Florian Nücke
954613081a Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.7.10 2016-07-27 20:43:40 +02:00
Florian Nücke
aa103349d0 Try to prevent nodes loading into an illegal state. 2016-07-27 20:43:27 +02:00
payonel
49666dee0c safer install on low memory 2016-07-25 23:32:41 -07:00
payonel
a4850a5ff1 allow soft interrupts to stop cp 2016-07-24 21:55:10 -07:00
payonel
aa422bf21a fix /bin/touch 2016-07-24 21:37:40 -07:00
payonel
367f268662 reduce RAM costs by delaying part of /lib/buffer 2016-07-24 21:22:54 -07:00
Florian Nücke
ca5fa481fe Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9
# Conflicts:
#	src/main/scala/li/cil/oc/server/component/traits/WorldAware.scala
2016-07-24 20:10:40 +02:00
Florian Nücke
03947ebc02 Avoid event handlers throwing up making inv controller not work. 2016-07-24 20:06:23 +02:00
Florian Nücke
05b7aa994c Merge branch 'master-MC1.8.9' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-24 18:21:23 +02:00
Florian Nücke
67d595196c Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-24 18:21:04 +02:00
payonel
f4c18cc266 small fixes for term, cp, df, mv, rm, and init
make term resize event handler safer by adding it to each window. this will have the same memory cost, but is more reliable

fix cp path check for copying dirs into themselves. there was a bug where /path/a_dir looked like a parent of /path/a_dir_2

cleanup df format by not adding padding on the far right side of the table

make init event handler slightly more efficient by waiting specifically for the init signal, rather than a specified amount of time

mv had some weird problems with missing files or empty quoted args - fix and added unit tests

rm force should have no prompt and always return success
2016-07-24 08:14:18 -07:00
payonel
192c545d1c Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-22 22:43:54 -07:00
payonel
66d7337568 fix ^c for lua prompt
term.read() ^c now returns false broke lua prompt on ^c
any false return from a stream read should be indicative of a broken or ended stream to be more compliant with io.read behavior
2016-07-22 18:28:18 -07:00
payonel
05ded1a4bc match real bash behavior and limit user defined io fds to 3-9 2016-07-21 20:51:01 -07:00
payonel
35d93e2a93 fix piping of redirected stdout
e.g.
Assume you have a script that print to stdout as well as stderr:
[test.lua]
print("foo")
io.stderr:write("bar")

Then run this script, redirecting [2] to stdout, and [1] to dev null, then piping to grep

./test.lua 2>&1 >/dev/null | grep baz

This test should print NOTHING to the terminal, "foo" went to dev null, "bar" when to stdout, and grep matched on "baz", thus should not print. But the bug I found was that [2] was redirected to terminal tty stdout and then AFTER that the piping code added a pipe on [1], but [2] was already pointing to tty. The fix is to move the piping before redirections are created, so that when [2] redirects to stdout, stdout is already the pipe.
2016-07-21 09:38:16 -07:00
payonel
5be3dc5ad2 Merge pull request #1984 from payonel/soft-term-available
act like closed pipe when terminal becomes unavailable
2016-07-19 01:22:38 -07:00
payonel
5f8fd43586 oops, i shouldn't assert if the terminal becomes unavailable 2016-07-19 00:56:52 -07:00
Florian Nücke
d0524587c9 Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-18 20:09:03 +02:00
Florian Nücke
74e88ee33c Fixes #1972. 2016-07-18 20:08:46 +02:00
Florian Nücke
744d8f9f58 Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-18 19:59:15 +02:00
Florian Nücke
4c80160f28 Merge branch 'move-programs' of https://github.com/Vexatos/OpenComputers into master-MC1.7.10 2016-07-18 19:54:58 +02:00
payonel
ecbce30f09 improved terminal interruptions with smart shell support
Also:

Fixed a bug with command substitution not concatenating strings
Split /bin/ls for ultra simple formatting for low mem systems
Remove all instances of absolute paths to lib/tools and use package searching
2016-07-17 20:38:26 -07:00
Florian "Sangar" Nücke
e2a4b9d75f Merge pull request #1970 from Vexatos/jei-handler-fix
Fixed Callback Doc Handler for a very long last page.
2016-07-16 16:00:36 +02:00
Vexatos
08695e1233 Fixed Callback Doc Handler for a very long last page. 2016-07-16 15:22:17 +02:00
Florian Nücke
2c4c627ff5 Merge branch 'jei-handlers' of https://github.com/Vexatos/OpenComputers into master-MC1.8.9 2016-07-16 14:40:39 +02:00
Vexatos
b2e06800fd Partially added item highlighting for JEI. 2016-07-16 14:18:28 +02:00
Florian Nücke
82970cc92f Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.8.9 2016-07-16 12:37:07 +02:00
Florian Nücke
450924d6f2 Merge branch 'master-MC1.7.10' of github.com:MightyPirates/OpenComputers into master-MC1.7.10 2016-07-16 12:36:01 +02:00