Git Product home page Git Product logo

Comments (4)

timrowledge avatar timrowledge commented on August 16, 2024

The message provided by the installer was

"This package depends on the following classes:
PackageManifest
You must resolve these dependencies before you will be able to load these definitions:
ManifestJavascriptCore
ManifestJavascriptCore class>>ruleTempsReadBeforeWrittenRuleV1FalsePositive"

The package/version in the debugger at this point was Javascript-Core-cypress.1
I've been making good use of Seaside in a Squeak 5.3 image for the last several years and I'd like to update.

The potentially interesting side-news is that the overall system works reasonably well but there seems to be no 'style' - ie the displayed web pages look as if they're missing any css stuff. Maybe that's a consequence, maybe it's a separate thing.

Screen Shot 2023-10-28 at 11 34 36 AM

from seaside.

theseion avatar theseion commented on August 16, 2024

The missing styles are due to a missing method on Integer in Squeak. See #1383.

from seaside.

theseion avatar theseion commented on August 16, 2024

The issue here is that Pharo uses a subclass of PackageManifest to store linting information, such as rule bans. Banning a rule from the UI will cause a (possibly new) subclass to be compiled in the category Manifest of the respective package, named Manifest<PackageName>.

My suggestion: create a separate package for Pharo to hold the manifest classes. Lookup of linting information works reliably (tested). The only caveat is that manipulation of the linting information (e.g., banning a rule) will move the class back to the respective package.

@jbrichau, what do you think?

from seaside.

jbrichau avatar jbrichau commented on August 16, 2024

@theseion You could also fix it by adding PackageManifest class to a Squeak-Seaside-Compatibility package (or whatever name is more appropriate) and have it loaded first. This would not break how it works in our main development environment (Pharo). At some point, we also considered adding these classes to Grease but we did not. In the end, these classes will also disappear in Pharo as the general understanding is that this is not a good way to store this meta-information.

I think adding the superclass to a Squeak-only package to make sure it can get loaded is the cleanest solution.
Thanks for picking this up!

from seaside.

Related Issues (20)

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.