Code Monkey home page Code Monkey logo

Comments (14)

dunn avatar dunn commented on May 18, 2024

The Homebrew formula still has the url as https://google-js-test.googlecode.com/files/gjstest-1.0.8.tar.bz2, which 404s now. There'll need to be a tagged release here before the formula can be updated, though.

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

@dunn: I'll be honest and say I don't know what all needs to be done to get homebrew working again. Is it just tagging a release? Are you able to carry it through to completion if I do so?

from gjstest.

dunn avatar dunn commented on May 18, 2024

Yeah, I can open a pull request over at the Homebrew repository.

I just noticed that the google-js-test formula was moved to the 'head-only' tap a while ago because the re2 dependency didn't have a stable release at the time. Now re2 does, so if you also have a stable release here, I can ask that google-js-test.rb be moved back into core Homebrew. If you don't have a stable release ready, then I can just update the existing 'head-only' formula to point to this repository instead of the old Google Code tarball.

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

Thanks. I've (arbitrarily) tagged v1.0 at HEAD.

from gjstest.

dunn avatar dunn commented on May 18, 2024

Testing the updated formula; you might need to walk me through this build error:

In file included from gjstest/internal/cpp/typed_arrays.cc:18:
/usr/local/include/v8.h:3915:36: error: 'v8::PropertyHandlerFlags' is not a class, namespace, or scoped enumeration
      PropertyHandlerFlags flags = PropertyHandlerFlags::kNone)
                                   ^
/usr/local/include/v8.h:3943:36: error: 'v8::PropertyHandlerFlags' is not a class, namespace, or scoped enumeration
      PropertyHandlerFlags flags = PropertyHandlerFlags::kNone)
                                   ^
./scripts/cc_library_make_header_deps_file.sh  base/macros base/type_traits.header_deps Makefile base/macros.h scripts/cc_library_make_header_deps_file.sh
2 errors generated.
make: *** [gjstest/internal/cpp/typed_arrays.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from gjstest/internal/cpp/gjstest.cc:42:
In file included from ./gjstest/internal/cpp/typed_arrays.h:25:
/usr/local/include/v8.h:3915:36: error: 'v8::PropertyHandlerFlags' is not a class, namespace, or scoped enumeration
      PropertyHandlerFlags flags = PropertyHandlerFlags::kNone)
                                   ^
/usr/local/include/v8.h:3943:36: error: 'v8::PropertyHandlerFlags' is not a class, namespace, or scoped enumeration
      PropertyHandlerFlags flags = PropertyHandlerFlags::kNone)
                                   ^
2 errors generated.
make: *** [gjstest/internal/cpp/gjstest.o] Error 1

Happens with clang and gcc.

Full logs with config

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

Sigh, welcome to the wonderful world of being a V8 embedder. :-( Unfortunately, the V8 team regularly breaks backwards compatibility for its C++ API. The only version that will work is the one I have most recently spent the annoyingly-long amount of time necessary to make work. In this case it appears to be version 3.28.71, with the fix in a610799.

I suppose we could find an old commit in the gjstest repo that works with the version of v8 in homebrew (this is not guaranteed to exist), then tag a release there.

from gjstest.

dunn avatar dunn commented on May 18, 2024

Homebrew is keeping v8 up to date with Chrome stable, which looks like 4.1.0.27 right now.

The other option would be to vendor 3.28.71 for this formula. But I'm not sure I'll be able to do that right; the Homebrew install process for v8 is pretty finicky.

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

Oh wow, last time I looked homebrew's version of v8 was ancient. Then the work necessary is to overcome yet another round of incompatible v8 changes. I don't have the bandwidth for that at this moment, but will likely need to do it for Google-internal reasons at some point in the medium-term future.

from gjstest.

dunn avatar dunn commented on May 18, 2024

Sounds good; thanks for the help!

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

I've almost got this working at 28ebcef, but am stymied by dynamic linking issues with re2. Any help with Homebrew/legacy-homebrew#39198 would be greatly appreciated.

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

Again almost working at 4b3c9f4, but now blocked on link errors that I simply can't figure out (see Homebrew/legacy-homebrew#41091).

from gjstest.

pierredelisle7 avatar pierredelisle7 commented on May 18, 2024

Installation via brew still seems broken:
$ brew install google-js-test
Error: No available formula for google-js-test
Searching formulae...
Searching taps...

Is there an easy workaround?

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

@pierredelisle7: This is still blocked on Homebrew/legacy-homebrew#41091, which causes the libv8 installed by homebrew to be incorrectly built. There is no easy workaround, chiefly because building v8 is a pain in the ass.

from gjstest.

jacobsa avatar jacobsa commented on May 18, 2024

Updated the installation instructions. You should now be able to brew install gjstest.

from gjstest.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.