Skip to content
This repository has been archived by the owner on Nov 17, 2023. It is now read-only.

import Julia binding #10149

Merged
merged 736 commits into from
Oct 5, 2018
Merged

import Julia binding #10149

merged 736 commits into from
Oct 5, 2018

Conversation

iblislin
Copy link
Member

@iblislin iblislin commented Mar 18, 2018

I imported it via git subtree to keep all git history.
About the ci, I added a entry in runtime_function.sh: unittest_ubuntu_cpu_julia06.
Please check it in commit b7d9731 .

See also #8727.

cc @marcoabreu, @pluskid, @vchuravy

TODO

  • add license header to .jl file: 63ffca3
  • add releasing instruction to wiki
  • Jenkins doc build

JockLawrie and others added 30 commits December 8, 2016 12:25
Bug fix updating the ACE loss function. Included a test case. Also pr…
* Added implementation of RMSProp, AdaGrad, AdaDelta

* Added AdaMax and Nadam
* Fixed string conversion bug

* Smaller eps for Float16

* Changed rand_tensors in julian way
* Fix build error in travis

Another string conversion fix

* Fixed JSON and added testsets

* Fixed errors in julia 0.4
* Fix deprecation warning on v0.6

* drop support for v0.4
wget was failing to download mxnet.json , so replaced them with
Invoke-WebRequest
Using WebRequest function to download the JSON file
Disable Travis testing on v0.6 until apache#170 is addressed.
fix use of Symbol in symbolic-node.jl, fixes apache#189
remove BaseTestNext and bump Compat
remove usr/setupenv.cmd because it is too invasive
@gigasquid gigasquid self-requested a review September 26, 2018 12:34
@eric-haibin-lin
Copy link
Member

eric-haibin-lin commented Sep 26, 2018

@iblis17 could you create an account on confluence and send me your email and id? I'll add you

@gigasquid
Copy link
Member

There is a discussion on the dev list about how best to merge https://lists.apache.org/thread.html/26b31e8f75f0f5e5427e4dffca5e697a02db41689df7f731865393e1@%3Cdev.mxnet.apache.org%3E - please feel free to join in

@iblislin
Copy link
Member Author

@gigasquid
Copy link
Member

Going to wait to merge 24 more hours to make sure we have consensus on the dev list about the best merge method to use

@mjwall
Copy link
Member

mjwall commented Sep 27, 2018 via email

@pluskid
Copy link
Contributor

pluskid commented Sep 27, 2018

Although this is a branch with long history, there is no direct overlap between the julia binding code and the main MXNet code. The branch is imported as a sub-tree, so I feel there might not be merge conflicts.

@gigasquid
Copy link
Member

Unfortunately, @mjwall was right in regards to the conflicts. I tried to merge this morning and got this
import_julia_binding_by_iblis17_ pull_request__10149 _apache_incubator-mxnet

@iblis17 or @pluskid could you help resolve so we can get it merged?

@pluskid
Copy link
Contributor

pluskid commented Sep 28, 2018

I did the followings and found the conflicts in the rebase are mostly in README and travis updates. Those seem to be easy to fix. @iblis17 Can you do a rebase on your branch and fix those conflicts of your PR branch to enable proper rebase-merging? Thanks a lot!

git clone https://github.com/apache/incubator-mxnet.git
cd incubator-mxnet
git remote add iblis17 https://github.com/iblis17/incubator-mxnet.git
git fetch iblis17
git checkout -b iblis17/julia-pkg
git rebase master

...
Auto-merging appveyor.yml
CONFLICT (add/add): Merge conflict in appveyor.yml
Auto-merging README.md
CONFLICT (add/add): Merge conflict in README.md
Auto-merging .travis.yml
CONFLICT (add/add): Merge conflict in .travis.yml
Auto-merging .gitignore
CONFLICT (add/add): Merge conflict in .gitignore
error: Failed to merge in the changes.

@iblislin
Copy link
Member Author

seems the rebasing of subtree is quite tricky.
I re-imported the subtree manually.

@iblislin
Copy link
Member Author

Ok, I figured out that we need to do the 'rebase and merge' process manually, due to subtree's property.(ref: https://stackoverflow.com/questions/12858199/how-to-rebase-after-git-subtree-add)

Here is my process

$ git remote -v
mxnetjl [email protected]:dmlc/MXNet.jl.git (fetch)
mxnetjl [email protected]:dmlc/MXNet.jl.git (push)
origin  https://github.com/apache/incubator-mxnet.git (fetch)
origin  https://github.com/apache/incubator-mxnet.git (push)

$ git checkout master
$ git pull
$ git checkout -b julia-pkg-2
$ git subtree add -P julia mxnetjl master
$ git cherry-pick bcd53c7   # CI stuffs, license headers, etc...
$ git push -f myfork julia-pkg-2:julia-pkg

If the master changes, I need to do this process again.

@gigasquid
Copy link
Member

Thanks @iblis17 - I'll keep a close watch on CI and try to push the button as soon as it finishes :)

@iblislin
Copy link
Member Author

iblislin commented Sep 28, 2018

and ... git rebase command won't work properly for subtree.
(The github button will not work, I think)
Runing the previous mensioned process and merging this branch into master with
--ff-only is an easier way to keep history clean.

@gigasquid
Copy link
Member

Unfortunately, we still can't merge through the web page. I brought this up on the dev list too, but I feel since the merging task is going to be a bit more complicated through the command line, I'd prefer to hand this task off to someone with more context to make sure it gets in properly. @pluskid would you be willing to take the lead?

@gigasquid
Copy link
Member

We're investigating a simple merge option now on the dev list. Sorry @iblis17 that it's taking so long to get in... we are working on it.

@gigasquid
Copy link
Member

@iblis17 Hopefully one last thing - On the dev list we are thinking of submitting a request to Apache Infra to merge the PR. @marcoabreu had the idea to test this on another repo first and post it to the mailing list so everyone knows exactly how it will turn out.

I have updated my master branch here to reflect the latest https://github.com/gigasquid/incubator-mxnet/commits/master - Do you think you could make a copy of your branch and submit it as a PR to my repo as a test?

I will document the steps to merge it and share the result - and with luck it will get us unstuck on the technical details of the merge.

Thanks!

git-subtree-dir: julia
git-subtree-mainline: c595f2d
git-subtree-split: 224ae96
- enable Jenkins CI build for Julia
- add license headers to Julia source code
- update links for Julia README
@iblislin
Copy link
Member Author

iblislin commented Oct 2, 2018

okay, ref: gigasquid#1

@iblislin
Copy link
Member Author

iblislin commented Oct 5, 2018

🎉

@pluskid
Copy link
Contributor

pluskid commented Oct 5, 2018

Thanks @iblis17 and @gigasquid !

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Julia pr-awaiting-merge Review and CI is complete. Ready to Merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.