Closed NathanReb closed 6 months ago
Hello, I'm Munga from Kenya. I saw the project from Outreachy and it caught my eye. I just got OCaml installed, read the project scope from Outreachy and it's interesting to build tools for developers. Going through OCaml resources and will contribute to the OCaml community. Happy to be here.
@MungaSoftwiz It depends on how you installed the required packages. You can read more on https://ocaml.org/docs/opam-switch-introduction to understand why a forked version might not need extra setup. Feel free to ask more questions if not clear on anything
Thankyou @dinakajoy for the resource. I see that I have to create another directory specific switch for this. I have a global switch but not the OCaml version needed.
Yes I would recommend to use local (directory specific) switches to work on this project as it requires a specific version of OCaml and that might conflict with other projects.
In general it is recommend to use local switches for each project you are working on as it makes it easier to manage their respective dependencies this way.
Hi, I'm Amanda from Seattle, US, and an Outreachy participant. I've been drawn to this project and have already set up OCaml. I'm now going through tutorials and hoping to contribute to the community shortly.
Hello , I'm Mridul from India. The OCaml project under Outreachy seemed quite fascinating to work upon and I truly am excited for all the learnings that are to come with this project. Looking forward to contributing to this project.
rename C:\Users\HP\AppData\Local\Programs\DiskuvOCaml\bin\bos-ba00d2.tmp to C:\Users\HP\AppData\Local\Programs\DiskuvOCaml\bin\opam-real.exe: Permission denied
dkml-package.bc: [ERROR] FATAL [5f927a8b].
A transient failure occurred.
Root cause: The command had exit code 20:
C:\Users\HP\AppData\Local\Temp\7zE9FF4AE4\bin\dkml-install-user-runner.exe
install-user-offline-opamshim --verbosity=info --color=always
--prefix C:\Users\HP\AppData\Local\Programs\DiskuvOCaml
--staging-files C:\Users\HP\AppData\Local\Temp\7zE9FF4AE4\sg
>>> A transient failure occurred. <<<
I am not able to install OCaml. Facing the above error and am not able to rectify this.
@mridulsrivastavaa what Operating System please
Hi, @mridulsrivastavaa! It looks like you may be hitting https://github.com/diskuv/dkml-installer-ocaml/issues/87
Please try the fix described at https://github.com/diskuv/dkml-installer-ocaml/issues/87#issuecomment-1837115174
Protip: I found this issue by searching for the first line of your error. That can often help point the way to fixes :)
Happy to meet you @amandaguan-ag and @mridulsrivastavaa. Welcome to this amazing OCaml community.
Hi @MungaSoftwiz please I love to contribute to this project but there are no issues
Welcome to the community @Payne680. Please check on the issues section and tag one of our mentors for an issue you would like to contribute to. If no issue is available please contact a mentor. The mentor will advice you on the way forward.
Alright @MungaSoftwiz, I will reach out to a mentor asap
Hi, @mridulsrivastavaa! It looks like you may be hitting diskuv/dkml-installer-ocaml#87
Please try the fix described at diskuv/dkml-installer-ocaml#87 (comment)
Protip: I found this issue by searching for the first line of your error. That can often help point the way to fixes :)
I tried this but still it shows the same error.
@mridulsrivastavaa what Operating System please
Windows
@mridulsrivastavaa what Operating System please
Windows
I see you tried renaming a file hence the no permission error. Things to think about:
Run as administrator
.Contributor
I tried turning off the microsoft windows defender and also checked for running powershell as administrator but didn't work. How should I proceed further ?
Can you please provide the updated error logs? We might be able to deduce something @mridulsrivastavaa .
Can you please provide the updated error logs? We might be able to deduce something @mridulsrivastavaa .
2024-03-06T16:45:23.801Z [Win32] C:\Program Files\Git\cmd\git.exe -C C:\Users\HP\AppData\Local\Temp\PA19DC~1\0 clone https://github.com/thekid/inotify-win.git Cloning into 'inotify-win'... 2024-03-06T16:45:26.480Z [Win32] C:\Program Files\Git\cmd\git.exe -C C:\Users\HP\AppData\Local\Temp\PA19DC~1\0\inotify-win -c advice.detachedHead=false checkout 36d18f3dfe042b21d7136a1479f08f0d8e30e2f9 HEAD is now at 36d18f3 Merge branch 'master' of github.com:thekid/inotify-win 2024-03-06T16:45:26.568Z [Win32] C:\WINDOWS\system32\cmd.exe /c call "C:\Users\HP\AppData\Local\Temp\PA19DC~1\0\inotify-win\compile.bat"
C:\Users\HP\AppData\Local\Temp\7z5822BFA0>"C:\DiskuvOCaml\BuildTools\Common7\Tools\vsdevcmd.bat" -no_logo -vcvars_ver=14.26 -winsdk=10.0.18362.0 && csc.exe /nologo /target:exe "/out:C:\Users\HP\AppData\Local\Temp\PA19DC~1\0\inotify-win\inotifywait.exe" "C:\Users\HP\AppData\Local\Temp\PA19DC~1\0\inotify-win\src*.cs" The system cannot find the path specified.
The above is the log file.
Can you please provide the updated error logs? We might be able to deduce something @mridulsrivastavaa .
As I am absolutely new to open source, do let me know if I haven't understood your question well.
Setup did not complete because an error occurred. Win32 command failed! Exited with 1. Command was: C:\WINDOWS\system32\cmd.exe /c call "C:\Users\HP\AppData\Local\Temp\PA19DC~1\0\inotify-win\compile.bat".
at Invoke-Win32CommandWithProgress, C:\Users\HP\AppData\Local\Temp\7z5822BFA0\sg\network-ocamlcompiler\windows_x86_64\setup-userprofile.ps1: line 771
at
Bug Reports can be filed at https://github.com/diskuv/dkml-installer-ocaml/issues Please copy the error message and attach the log file available at C:\Users\HP\AppData\Local\Programs\DISKUV~1\setup-userprofile.full.log
FATAL [a0d16230]. A transient failure occurred.
Root cause: The conformant command had exit code 1: C:\Users\HP\AppData\Local\Temp\7z5822BFA0\sg\network-ocamlcompiler\windows_x86_64\setup-userprofile.bat -AllowRunAsAdmin -InstallationPrefix C:\Users\HP\AppData\Local\Programs\DISKUV~1 -MSYS2Dir C:\Users\HP\AppData\Local\Programs\DISKUV~1\tools\MSYS2 -OpamExe C:\Users\HP\AppData\Local\Programs\DISKUV~1\bin\OPAM-R~1.EXE -DkmlPath C:\Users\HP\AppData\Local\Temp\7Z5822~1\sg\NETWOR~1\WINDOW~1\dkmldir -GlobalCompileDir C:\Users\HP\AppData\Local\Temp\7Z5822~1\sg\STAGIN~1\generic -NoDeploymentSlot -DkmlHostAbi windows_x86_64 -TempParentPath C:\Users\HP\AppData\Local\Temp\PA19DC~1 -SkipProgress -SkipMSYS2Update
A transient failure occurred. <<<
dkml-package.bc: [ERROR] FATAL [5f927a8b]. A transient failure occurred.
Root cause: The command had exit code 20:
C:\Users\HP\AppData\Local\Temp\7z5822BFA0\bin\dkml-install-user-runner.exe
install-user-network-ocamlcompiler --verbosity=info
--color=always --prefix
C:\Users\HP\AppData\Local\Programs\DiskuvOCaml
--staging-files C:\Users\HP\AppData\Local\Temp\7z5822BFA0\sg
>>> A transient failure occurred. <<<
This is the error message
@mridulsrivastavaa are you running WSL on your machine?
@mridulsrivastavaa are you running WSL on your machine?
Yes, I installed it as the requirements for the project stated windows users to have WSL
@mridulsrivastavaa are you running WSL on your machine?
Yes, I installed it as the requirements for the project stated windows users to have WSL
Then you can install an Ubuntu version from Microsoft Store. This will enable you to work in a Linux environment in windows. Install Ubuntu from Microsoft Store:
Ubuntu
and select Ubuntu
from the search results.
Click on Install
to download and install Ubuntu on your system. We have several version but go with the latest 22.04
Launch Ubuntu: After installation, launch Ubuntu from the start menu or by searching for it.
Initial Configuration: Upon first launch, ubuntu will prompt you to set up a new user account. Follow the on-screen instructions to create your username and password. Select one you won't forget because it will be used for privileged actions/commands.
Update Packages (Optional): The run the following commands in the Ubuntu terminal to update the package lists and upgrade existing packages:
sudo apt update
sudo apt upgrade
If you have not used a linux environment before I would suggest going to YouTube and watch some videos of LearnLinuxTv. Here is a the playlist: https://www.youtube.com/watch?v=lvSoxOMg5_c&list=PLT98CRl2KxKHaKA9-4_I38sLzK134p4GJ
Then you can go to the contributions page and install OCaml on your linux environment.
Personally I think working in a Linux environment would be easier for the project compared to windows.
Hello everyone! This is Siddhi from India. I am an Outreachy participant and am very excited to work on this project. I have started studying up on OCaml and have set up this project repository in my local machine. Looking forward to interacting and contributing!
@NathanReb Please there are no free issues for me to contribute
@mridulsrivastavaa are you running WSL on your machine?
Yes, I installed it as the requirements for the project stated windows users to have WSL
Then you can install an Ubuntu version from Microsoft Store. This will enable you to work in a Linux environment in windows. Install Ubuntu from Microsoft Store:
- Open the Microsoft Store on your Windows machine.
- Search for
Ubuntu
and selectUbuntu
from the search results. Click onInstall
to download and install Ubuntu on your system. We have several version but go with the latest22.04
Launch Ubuntu: After installation, launch Ubuntu from the start menu or by searching for it.
Initial Configuration: Upon first launch, ubuntu will prompt you to set up a new user account. Follow the on-screen instructions to create your username and password. Select one you won't forget because it will be used for privileged actions/commands.
Update Packages (Optional): The run the following commands in the Ubuntu terminal to update the package lists and upgrade existing packages:
sudo apt update sudo apt upgrade
If you have not used a linux environment before I would suggest going to YouTube and watch some videos of LearnLinuxTv. Here is a the playlist: https://www.youtube.com/watch?v=lvSoxOMg5_c&list=PLT98CRl2KxKHaKA9-4_I38sLzK134p4GJ
Then you can go to the contributions page and install OCaml on your linux environment.
Personally I think working in a Linux environment would be easier for the project compared to windows.
Thank you, the issue got resolved.
@NathanReb Please there are no free issues for me to contribute
@Payne680 I'm sorry we closed, at least temporarily, the project to new applicant as we already have a lot more than we initially expected. I can only advise you to look for other projects in the meantime.
I'll let you know if we re-open it and have issues opened for new contributors.
Alright @NathanReb, I will look for another project in the meantime
@NathanReb @shonfeder I've been considering an alternative approach for implementing the api-watch project, and I wanted to suggest the idea of using the OCaml parse tree. This approach uses the parse tree to analyze modifications, deletions, or additions. While I'm not very experienced in parsing and syntax trees, I had been reading about crafting interpreters, and it occurred to me that this approach might offer a solution to our problem. However, I also acknowledge that I might be mistaken and need to be corrected about this suggestion.
@harshey1103 The parsetree is a mere abstract representation of the source code in .ml
or .mli
files.
The .cmi
files are interface files, built by the compiler from .mli
files. Their content is very similar to the parsetree but is simplified to be strictly what we care about here and has already been partially interpreted by the compiler.
By using the .cmi
files, i.e. the Types.signature
type, we ensure that we agree with the compiler on what the actual interface of a module is.
Hello @NathanReb @shonfeder. I have been working on the final application and could not help but notice the statement below:
You have not provided answers to community-specific questions. Please double check with your mentor and coordinator if you need to provide additional information.
Do we have any community specific questions for this project please? I wanted to ask early because of the fast approaching Easter celebrations.
We do not have any Communtiy-specific questions!
I'm closing this as the application period has ended!
Hi all,
here's some information about the Outreachy application period. First of all: welcome! 🥳
For applicants
Thanks for contributing to ocaml-api-watch! Here's some information that's additional to the project description on the Outreachy site.
Contributions
Where to find issues
You can look for issues in the issue tracker of this project. In particular look for issues labelled with good first issue
First Steps
First of all, to contribute you'll need to get OCaml up and running. If you haven't already done that, you can have a look at the Installing OCaml page on the ocaml.org site.
How to Contribute
Once you got OCaml up and running, you can head to the CONTRIBUTING.md guide on how to setup the project, building it, running the test suites and everything you need to know to make your first contribution.
Where to ask for help
You should not hesitate to ask questions if you need help. You can ask directly on this issue if you need help with this project, how to contribute, etc... If you need help with a particular issue, you can ask directly on that issue.
We'll add links to other communication channels here later on.
Mentors
The mentors for the application period and for the internship are @NathanReb, @dinakajoy and @shonfeder. We're all very excited about having Outreachy applicants and later an Outreachy intern contributing to this project!
On weekends we tend to be non or less available.
For Non-applicants
Outreachy is an initiative to give folks from under-represented groups in open-source the opportunity to do a remote internship in an open-source project. So for open-source communities, Outreachy is a great opportunity to work together with folks from lots of different backgrounds and maybe even grow the community and become more diverse! Outreachy provides the infrastructure for the internships and application process, and the open-source communities need to provide projects and mentoring. One of the projects we -i.e. the OCaml community- is participating with in this Outreachy round consists in writing the core of our API diffing system in
ocaml-api-watch
. We might get some Outreachy applicants contributing to this repo from March 4th until April 2nd 2024 as part of the application process to that project :)