Comments (9)
First download:
$ unzip -v hello-world.zip
Archive: hello-world.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
0 Stored 0 0% 2020-10-19 16:08 00000000 hello-world/
1302 Stored 1302 0% 2020-10-19 16:08 568c16b8 hello-world/index.html
21630 Stored 21630 0% 2020-10-19 16:08 3e06b2d4 hello-world/wave.png
-------- ------- --- -------
22932 22932 0% 3 files
Later download:
$ unzip -v hello-world\ \(1\).zip
Archive: hello-world (1).zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
0 Stored 0 0% 2020-10-19 16:15 00000000 hello-world/
1302 Stored 1302 0% 2020-10-19 16:15 568c16b8 hello-world/index.html
21630 Stored 21630 0% 2020-10-19 16:15 3e06b2d4 hello-world/wave.png
-------- ------- --- -------
22932 22932 0% 3 files
SHA256 checksums:
$ sha256sum hello-world*.zip
6b1a69ea5e0e0cd1ffa40741a5641271d42a54854904cbc85b7f4907cc510073 hello-world (1).zip
daa2a471e3800fa0af1d85cc30b3e636e9685376ef8802a48026e96a5667db1a hello-world.zip
from slingcode.
It would probably require modifying jszip and setting dosTime
and dosDate
to zero.
from slingcode.
@jsarenik good idea. I probably won't have time to implement this soon but would certainly merge a PR.
from slingcode.
I would love to, but not able to make
slingcode so far:
$ echo $RANDOM > src/slingcode/revision.txt
$ make
npx shadow-cljs release app --debug
shadow-cljs - config: /home/username/src/slingcode/shadow-cljs.edn
[:app] Compiling ...
------ ERROR -------------------------------------------------------------------
File: /home/username/src/slingcode/src/slingcode/main.cljs:388:3
--------------------------------------------------------------------------------
385 | (set-main-window-content! state (-> run-frame .-document) files file))))
386 |
387 | (defn update-refs! [{:keys [state store] :as app-data} files app-id file-index]
388 | (go
---------^----------------------------------------------------------------------
Error in phase :compilation
StackOverflowError:
java.lang.ClassLoader.defineClass1 (ClassLoader.java:-2)
java.lang.ClassLoader.defineClass (ClassLoader.java:1017)
java.security.SecureClassLoader.defineClass (SecureClassLoader.java:174)
jdk.internal.loader.BuiltinClassLoader.defineClass (BuiltinClassLoader.java:800)
jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull (BuiltinClassLoader.java:698)
jdk.internal.loader.BuiltinClassLoader.loadClassOrNull (BuiltinClassLoader.java:621)
jdk.internal.loader.BuiltinClassLoader.loadClass (BuiltinClassLoader.java:579)
jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass (ClassLoaders.java:178)
java.lang.ClassLoader.loadClass (ClassLoader.java:522)
clojure.core/elide-top-frames (core.clj:4779)
clojure.core/ex-info (core.clj:4783)
clojure.core/ex-info (core.clj:4783)
cljs.analyzer/error (analyzer.cljc:756)
cljs.analyzer/error (analyzer.cljc:752)
cljs.analyzer/analyze (analyzer.cljc:4217)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze (analyzer.cljc:4213)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze (analyzer.cljc:4211)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze-do-statements*/fn--1957 (analyzer.cljc:2243)
clojure.core/mapv/fn--8445 (core.clj:6912)
clojure.lang.ArrayChunk.reduce (ArrayChunk.java:58)
clojure.core.protocols/fn--8154 (protocols.clj:136)
clojure.core.protocols/fn--8154 (protocols.clj:124)
clojure.core.protocols/fn--8114/G--8109--8123 (protocols.clj:19)
clojure.core.protocols/seq-reduce (protocols.clj:31)
clojure.core.protocols/fn--8144 (protocols.clj:75)
clojure.core.protocols/fn--8144 (protocols.clj:75)
clojure.core.protocols/fn--8088/G--8083--8101 (protocols.clj:13)
clojure.core/reduce (core.clj:6828)
clojure.core/mapv (core.clj:6903)
clojure.core/mapv (core.clj:6903)
cljs.analyzer/analyze-do-statements* (analyzer.cljc:2243)
cljs.analyzer/analyze-do-statements* (analyzer.cljc:2242)
cljs.analyzer/analyze-do-statements (analyzer.cljc:2246)
cljs.analyzer/analyze-do-statements (analyzer.cljc:2245)
cljs.analyzer/fn--1962 (analyzer.cljc:2250)
cljs.analyzer/fn--1962 (analyzer.cljc:2248)
clojure.lang.MultiFn.invoke (MultiFn.java:252)
cljs.analyzer/analyze-seq* (analyzer.cljc:3934)
cljs.analyzer/analyze-seq* (analyzer.cljc:3932)
cljs.analyzer/analyze-seq*-wrap (analyzer.cljc:3939)
cljs.analyzer/analyze-seq*-wrap (analyzer.cljc:3937)
cljs.analyzer/analyze-seq (analyzer.cljc:3963)
cljs.analyzer/analyze-seq (analyzer.cljc:3941)
cljs.analyzer/analyze-form (analyzer.cljc:4150)
cljs.analyzer/analyze-form (analyzer.cljc:4147)
cljs.analyzer/analyze* (analyzer.cljc:4200)
cljs.analyzer/analyze* (analyzer.cljc:4191)
cljs.analyzer/analyze (analyzer.cljc:4220)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze (analyzer.cljc:4213)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze (analyzer.cljc:4211)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze-let-body* (analyzer.cljc:2330)
cljs.analyzer/analyze-let-body* (analyzer.cljc:2329)
cljs.analyzer/analyze-let-body (analyzer.cljc:2335)
cljs.analyzer/analyze-let-body (analyzer.cljc:2332)
cljs.analyzer/analyze-let (analyzer.cljc:2371)
cljs.analyzer/analyze-let (analyzer.cljc:2337)
cljs.analyzer/fn--1994 (analyzer.cljc:2391)
cljs.analyzer/fn--1994 (analyzer.cljc:2389)
clojure.lang.MultiFn.invoke (MultiFn.java:252)
cljs.analyzer/analyze-seq* (analyzer.cljc:3934)
cljs.analyzer/analyze-seq* (analyzer.cljc:3932)
cljs.analyzer/analyze-seq*-wrap (analyzer.cljc:3939)
cljs.analyzer/analyze-seq*-wrap (analyzer.cljc:3937)
cljs.analyzer/analyze-seq (analyzer.cljc:3963)
cljs.analyzer/analyze-seq (analyzer.cljc:3941)
cljs.analyzer/analyze-form (analyzer.cljc:4150)
cljs.analyzer/analyze-form (analyzer.cljc:4147)
cljs.analyzer/analyze* (analyzer.cljc:4200)
cljs.analyzer/analyze* (analyzer.cljc:4191)
cljs.analyzer/analyze (analyzer.cljc:4220)
cljs.analyzer/analyze (analyzer.cljc:4203)
cljs.analyzer/analyze-seq (analyzer.cljc:3964)
cljs.analyzer/analyze-seq (analyzer.cljc:3941)
cljs.analyzer/analyze-form (analyzer.cljc:4150)
--------------------------------------------------------------------------------
389 | (let [run-frame (get-run-frame-reference @state app-id)
390 | frame (when run-frame (-> run-frame .-document (.getElementById "slingcode-frame")))
391 | [index-file updated-references] (<! (update-html-references files (get-index-file files)))
392 | links (get-in @state [:editing :references :tags])
--------------------------------------------------------------------------------
make: *** [Makefile:56: build/js/main.js] Error 1
This is on Ubuntu 20.04 LTS (x86_64) with OpenJDK 11 (and tried also with OpenJDK 8 with no success either)
ii openjdk-11-jdk:amd64 11.0.9+11-0ubuntu1~20.04 amd64 OpenJDK Development Kit (JDK)
ii openjdk-11-jdk-headless:amd64 11.0.9+11-0ubuntu1~20.04 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-11-jre:amd64 11.0.9+11-0ubuntu1~20.04 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-11-jre-headless:amd64 11.0.9+11-0ubuntu1~20.04 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
from slingcode.
NPM is this (from nvm
)
$ npm --version
6.14.8
from slingcode.
@jsarenik thanks for reporting this. I'm stumped but I will ask around.
from slingcode.
Now I can compile a working slingcode.html
. EDIT: Actually no 'clj' is needed (contrary to what I originally experimented with also).
Also node
is now in this working state v15.2.0
(installed by nvm
).
The steps to build are:
- make the required
src/slingcode/revision.txt
git describe --always --dirty=-modded --abbrev=7 --tags > src/slingcode/revision.txt
- make missing empty Makefile
echo "# empty" > src/site/Makefile
- run
make
Now there are files in build
directory and I can run a busybox httpd there with everything working:
There is the empty artificially-created (see-above) Makefile
in build/Makefile
.
cd public
mkdir js
cp ../build/js/* js/
busybox httpd -p 8000 -fvv
In menu → About, there is whatever was put into file 'src/slingcode/revision.txt` earlier.
Now I can have a look at this jszip…
from slingcode.
And the result in directory slingcode.net
is usable right after make
with no additional steps (just those two before make
).
from slingcode.
There are two things:
- make the zip files the same when downloaded (by setting
dosDate
anddosTime
to0
innode_modules/jszip/lib/...
) - make the code written by paper airplane icon the same
I think I am done with this one. It is actually OK as it is without any change. Most of all, the compilation works for me now.
Thank you for slingcode!!! It's amazing!
from slingcode.
Related Issues (20)
- Ability to export apps as a single-file distribution like Slingcode itself by inlining assets
- "New app" button(s) can't be clicked outside the words
- Fix font in 8-bit interface demo
- Trigger re-scroll after changing tap to ensure correct position in file is reached
- In editor mode remove the branding
- Better support for video and audio tags and file types
- When run tab is open the "load/create" menu is off the screen.
- It is unclear which file tab is selected.
- When switching from app list to editor the "cloned" modal persists
- File/tree list view next to code pane
- Configure iOS PWA support
- Please add an option to switch key bindings HOT 2
- Integrate nextjournal/clojure-mode for CodeMirror HOT 1
- Chromebook run button is not functioning
- Add templates for React, Vue, and SVG live-code demos
- Investigate real-time collaboration
- Font display on Chrome, Firefox for nes.css HOT 1
- Makefile bugs for new developers
- Add i18n support HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slingcode.