Commit Graph

353 Commits

Author SHA1 Message Date
Godfrey Chan 33df62d90e
[RIP] Add deprecation message 2020-10-23 15:27:47 -07:00
Peter Wagenet dee30aa4fd
Merge pull request #168 from tildeio/upgrade-dependencies
Update dependencies
2019-07-30 12:17:52 -07:00
Peter Wagenet 8b5b55d9b0 Update dependencies 2019-07-30 11:25:43 -07:00
Peter Wagenet 4a8e52cb56
Merge pull request #165 from tildeio/revert-148-split_out_init
Revert "Allow calling init seperately"
2019-07-30 11:15:00 -07:00
Peter Wagenet ed7a3bb730 Bump Bundler version 2019-07-30 10:52:19 -07:00
Peter Wagenet ca60150948
Revert "Allow calling init seperately" 2019-07-29 13:12:56 -07:00
Yehuda Katz 73e0534a17
Merge pull request #148 from konstin/split_out_init
Allow calling init seperately
2019-07-29 11:17:25 -07:00
Godfrey Chan 239f1de54b
Merge pull request #155 from tildeio/spike
Various improvements
2018-06-19 15:44:31 -04:00
Godfrey Chan 750be7995d [BREAKING] Allow arbitrary attributes for classes
We no longer automatically derive Clone and Debug on the structs.

Fixes #143
2018-06-16 09:24:04 -04:00
Godfrey Chan a8e1f37362 Allow arbitrary attributes for methods 2018-06-16 09:23:54 -04:00
Godfrey Chan 358f12ae18 Remove unused file 2018-06-16 09:00:44 -04:00
Godfrey Chan af2042154e give better error messages
Fixes #144 (somewhat)
2018-06-16 09:00:35 -04:00
Godfrey Chan cdbe494ecf
Merge pull request #154 from konstin/fix_workspaces
Fix cargo workspaces
2018-06-15 19:41:09 -04:00
konstin 151b7ac68f Use cargo metadata to determine the target directory
The command otherwise failed when used with cargo workspaces
2018-06-14 20:35:37 +02:00
konstin 538a1c9fa9 Add an option to pass extra arguments to cargo
This is e.g. useful for conditional compilation with features
2018-06-14 17:43:32 +02:00
konstin f5840040ef Fixes for the the examples 2018-06-14 17:43:32 +02:00
konstin 6733f74b0d Use cargo metadata to determine the target directory
The command otherwise failed when used with cargo workspaces
2018-06-14 17:43:32 +02:00
konstin f148ac0d62 Move class intialization to method
This allows generating the init function from class names alone
2018-06-14 17:43:32 +02:00
Godfrey Chan 0baf995e04
Merge pull request #153 from tildeio/ruby_visibility
Ruby visibility (part 1)
2018-06-14 03:19:23 -04:00
Terence Lee 088a636192 allow private constructor. also add docopt example
You can do this by setting:

```
def initialize(helix, ...) {
}
```

Right now this only works on the constructor and only unexported is
supported.
2018-06-14 00:09:09 -07:00
Terence Lee 7dbc5cf3e9 refactor parser to support more method attributes 2018-06-14 00:01:46 -07:00
Godfrey Chan 68b9daeeee v0.7.5 2018-06-04 16:15:00 -04:00
Godfrey Chan c6c0011b4b
Merge pull request #152 from tildeio/usize_isize_coercions
Add missing coercions for `usize` and `isize`
2018-06-04 06:43:19 -07:00
Godfrey Chan 6fa52887c9 Add game of life example 2018-06-04 09:22:38 -04:00
Godfrey Chan 16eb12ca98 Add missing coercions for `usize` and `isize` 2018-06-03 10:32:52 +09:00
Godfrey Chan 98b003c5bb v0.7.4 2018-06-02 10:43:45 +09:00
Godfrey Chan be0cffa442
Merge pull request #151 from tildeio/fix-build
Don't run tests (etc) if the build fails
2018-06-01 18:03:31 -07:00
Godfrey Chan b6a3e5acc9
Merge pull request #150 from tildeio/safer-strings
Safer string coercions
2018-06-01 17:13:19 -07:00
Godfrey Chan 0dbe9d5b4f Don't run tests (etc) if the build fails 2018-06-02 09:02:10 +09:00
Godfrey Chan faaa6b1b26 Safer string coercions
Previously, we blindly assume Ruby strings are UTF-8 and turn them
into Rust Strings (which *are* assumed to be UTF-8). This is clearly
unsafe so this commit adds some checks to cofirm that and generate
type errors appropiately.
2018-06-02 08:42:12 +09:00
Godfrey Chan 32d6a67b11
Merge pull request #149 from tildeio/tuples
Add coercions for tuples
2018-05-11 16:27:23 -07:00
Godfrey Chan fca1620cf8 Add coercions for tuples 2018-04-26 17:57:56 -07:00
Godfrey Chan 7e2ca2f418 Ensure classes with a struct implements initialize 2018-04-25 13:45:04 -07:00
Godfrey Chan bda5141f37 v0.7.3 2018-03-06 11:38:04 -08:00
Yehuda Katz 6265a62c8d
Merge pull request #139 from sgrif/sg-more-random-functions
Export another smattering of random functions/constants
2018-02-04 22:05:37 -06:00
Sean Griffin 3a24bf2124 Export another smattering of random functions/constants 2018-01-25 16:27:09 -07:00
Yehuda Katz 07d1e01647
Merge pull request #136 from sgrif/sg-nil-p
Expose `RB_NIL_P` and `RTEST` in libcruby
2018-01-10 18:48:20 -08:00
Godfrey Chan 05e5dda6de
Merge pull request #141 from dsh0416/dsh0416/fix-typo
Fix typo
2017-12-31 23:58:24 -08:00
Delton Ding b00d9ad0d4 Fix typo 2018-01-01 00:22:53 +08:00
Sean Griffin 91fe2c5828 Use `NIL_P` instead of `RB_NIL_P`
`RB_NIL_P` is new in Ruby 2.4. Even though we're linking to the older
name, I think it still makes sense to expose the newer name to Rust.
2017-12-04 13:30:38 -07:00
Godfrey Chan 8ea2f0573a
Merge pull request #135 from sgrif/sg-sync-id
impl `Sync` for `ID`
2017-12-04 10:39:14 -08:00
Sean Griffin b5965c87d1 Expose `RB_NIL_P` and `RTEST` in libcruby
These seem to be the appropriate way to check for `nil` and truthiness
of an object using the C API. I would assume that additional changes
have to happen since this touches the runtime extension, but I'm not
sure what to do.
2017-11-30 06:19:27 -07:00
Yehuda Katz 60cb64d615
Merge pull request #138 from sgrif/sg-random-functions
Expose a smattering of functions in libcruby
2017-11-28 10:22:41 -05:00
Yehuda Katz 7436ff6624
Merge pull request #137 from sgrif/sg-t-data
Expose `T_DATA` in libcruby
2017-11-28 10:21:17 -05:00
Sean Griffin ca7184e180 Expose a smattering of functions in libcruby
There's no real logical grouping to these additions, they just happen to
be functions I needed in my library which uses libcruby
2017-11-08 11:10:50 -07:00
Sean Griffin 0eb962e44a Expose `T_DATA` in libcruby
This is already re-exported by the runtime, but was missing a Rust
binding.
2017-11-08 11:10:15 -07:00
Sean Griffin 8b97e143ff impl `Sync` for `ID`
While we may be treating the representation of this type as opaque, I
think we can reasonably assume that it will never change to anything
that isn't `Sync`.

I think it may be worth considering making `VALUE` be `Sync` as well.
Even though it is effectively a pointer, it's a pointer to a *Ruby*
object, and therefore subject to the GVL.
2017-11-08 11:08:46 -07:00
Godfrey Chan 4216a3a758 Remove coercion docs for now
I'll try to bring this back ASAP. However they are currently quite outdated and causing confusion.
2017-10-17 23:33:44 -07:00
Godfrey Chan fed2e7889d Merge pull request #129 from tildeio/upgrade-thor
Upgrade thor and other cleanup
2017-10-11 10:36:51 -07:00
Peter Wagenet a7ad6e826e Improve Vagrant release tests 2017-10-10 20:02:36 -07:00