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

Create a subproject for sljit #282

Open
zherczeg opened this issue Aug 10, 2023 · 9 comments
Open

Create a subproject for sljit #282

zherczeg opened this issue Aug 10, 2023 · 9 comments

Comments

@zherczeg
Copy link
Collaborator

This is just opening a discussion. Updating the jit compiler by hand creates huge patches in pcre2. When it was an svn project, this was the only option. However, we now use git. Would it be a good idea to use git subprojects for sljit?

@PhilipHazel
Copy link
Collaborator

I wasn't aware of Git subprojects (or submodules) but I've just had a quick look at some web pages. It looks as though it could be a better way of managing the integration of sljit into PCRE2. I am happy to go along with whatever you think is best, Zoltan.

@MatthewVernon
Copy link
Contributor

I'd avoid submodules because they're mis-designed, but a subtree might be suitable?

@addisoncrump
Copy link
Contributor

Even if it is mis-designed, it would likely be better than the current solution. Since very few people touch sljit, it likely wouldn't increase the overhead from e.g. new contributors not knowing how to use submodule, and would prevent situations like #407.

This also makes the relationship between the projects more clear. Should sljit be under PCRE2Project?

@zherczeg
Copy link
Collaborator Author

Sljit is an independent jit compiler used by various projects.

@minipli-oss
Copy link

I'm also in strong favor of getting a better change history for JIT related changes than the sometimes huge and often just big non-describing "JIT compiler update" commits. A git submodule feels just like a natural fit.

@zherczeg
Copy link
Collaborator Author

It looks like to me that the subproject way is preferred. The next thing is deciding where the subproject should be, since src/sljit is inside the primary code base, and that is not a usual place for external dependencies.

I would prefer third_party/sljit or just sljit. What do you think?

@minipli-oss
Copy link

Either its old place src/sljit or a move to sljit sounds good to me.

@PhilipHazel
Copy link
Collaborator

I have no preference.

@zherczeg
Copy link
Collaborator Author

Finally I decided to use deps/sljit since it make things clear. Alpine Linux tried to stop me, but I was able to figure out the CI config as well. Proposed patch #443

git submodule update --init --recursive will be needed after checkout.

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

No branches or pull requests

5 participants