Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Ruby support #326

Closed
wants to merge 30 commits into from
Closed

[WIP] Ruby support #326

wants to merge 30 commits into from

Conversation

eladb
Copy link
Contributor

@eladb eladb commented Nov 29, 2018

This is a WIP pull request for jsii Ruby support.

Compliance

  • primitiveTypes
  • dates
  • collectionTypes
  • dynamicTypes
  • unionTypes
  • createObjectAndCtorOverloads
  • getSetPrimitiveProperties
  • callMethods
  • unmarshallIntoAbstractType
  • getAndSetNonPrimitiveProperties
  • getAndSetEnumValues
  • useEnumFromScopedModule
  • undefinedAndNull
  • arrays
  • maps
  • dataTypes
  • unionPropertiesWithBuilder (skip)
  • exceptions
  • unionProperties
  • subclassing
  • testJSObjectLiteralToNative
  • testFluentApiWithDerivedClasses
  • creationOfNativeObjectsFromJavaScriptObjects
  • asyncOverrides_callAsyncMethod
  • asyncOverrides_overrideAsyncMethod
  • asyncOverrides_overrideAsyncMethodByParentClass
  • asyncOverrides_overrideCallsSuper
  • asyncOverrides_twoOverrides
  • asyncOverrides_overrideThrows
  • syncOverrides
  • propertyOverrides_get_set
  • propertyOverrides_get_calls_super
  • propertyOverrides_set_calls_super
  • propertyOverrides_get_throws
  • propertyOverrides_set_throws
  • propertyOverrides_interfaces
  • interfaceBuilder
  • syncOverrides_callsSuper
  • fail_syncOverrides_callsDoubleAsync_method
  • fail_syncOverrides_callsDoubleAsync_propertyGetter
  • fail_syncOverrides_callsDoubleAsync_propertySetter
  • testInterfaces
  • testNativeObjectsWithInterfaces
  • testLiteralInterface
  • testInterfaceParameter
  • structs_stepBuilders
  • structs_buildersContainNullChecks
  • structs_serializeToJsii
  • statics
  • consts
  • reservedKeywordsAreSlugifiedInMethodNames
  • nodeStandardLibrary
  • returnAbstract
  • doNotOverridePrivates_method_public
  • doNotOverridePrivates_method_private
  • doNotOverridePrivates_property_by_name_private
  • doNotOverridePrivates_property_by_name_public
  • doNotOverridePrivates_property_getter_public
  • doNotOverridePrivates_property_getter_private
  • classWithPrivateConstructorAndAutomaticProperties
  • nullShouldBeTreatedAsUndefined

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Elad Ben-Israel added 29 commits November 25, 2018 02:07
Includes:
- Module definitions with some attributes such
  as name, version and tarball path
- Basic directory structure
- gemspec

Gems are building and integrated with tests
Round-trip objrefs
Needed to add class hierarchy
Invoke methods
Required dynamic creation of objects
- Enum support
- Method result
deserialize method output
- idiomatic toString
datatype.to_jsii
Initial support for async callbacks
Almost fully implement overrides
@eladb eladb changed the title WIP: Ruby support [WIP] Ruby support Dec 6, 2018
@floehopper
Copy link
Contributor

@eladb Are you still working on this branch? I'd be willing to contribute to the Ruby implementation, but I'm struggling to get a development environment setup so I can run the relevant tests. Do you have any advice?

@eladb
Copy link
Contributor Author

eladb commented Feb 4, 2019

@floehopper I've been working on this on the back burner, and would love contributions!

Ideally our contribution guide should explain how to setup an environment, but it might be outdated. What are the specific issues you are running into?

@eladb eladb requested a review from a team as a code owner February 4, 2019 14:05
@floehopper
Copy link
Contributor

@eladb Thanks for the encouragement. Since my setup woes are orthogonal to this PR, I've created a new issue to ask for help.

@floehopper
Copy link
Contributor

@eladb

Also, would you like to set up some time to chat over video on this work? The repo documentation is very scarce and I'd love to give you some context and pointers on how to tackle this... It's quite hairy...

Yeah, I'd be up for that. Although I think I'd like to dig into the code a little bit first just to orient myself and make any chat as useful as possible. Also I should mention that my experience is more in the Ruby end of things than the TypeScript end!

@eladb
Copy link
Contributor Author

eladb commented Feb 6, 2019

@floehopper no worries. hit me up here or on Gitter and we'll set up some time

@RomainMuller RomainMuller force-pushed the master branch 3 times, most recently from 1315be5 to 8552b7a Compare July 16, 2019 12:54
@rix0rrr
Copy link
Contributor

rix0rrr commented Sep 2, 2019

I'm going to close this PR until we have room to pick it up again. Feel free to reopen if someone thinks this was closed in error.

@rix0rrr rix0rrr closed this Sep 2, 2019
@mergify
Copy link
Contributor

mergify bot commented Sep 2, 2019

The title of this Pull Request does not conform with [Conventional Commits] guidelines. It will need to be adjusted before the PR can be merged.
[Conventional Commits]: https://www.conventionalcommits.org

@skorfmann skorfmann mentioned this pull request Mar 6, 2020
8 tasks
@RomainMuller RomainMuller deleted the benisrae/jsii-ruby branch March 11, 2020 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants