HN user

xjia

267 karma

http://xiao-jia.com/

Posts35
Comments112
View on HN
www.lummis.senate.gov 1y ago

Lummis Announces Revolutionary Proposal to Supercharge the Dollar

xjia
1pts0
learn.microsoft.com 2y ago

SDV Deprecation Announcement

xjia
1pts0
www.crowdstrike.com 2y ago

Technical Details on Today's Outage

xjia
124pts131
en.wikipedia.org 2y ago

867-5309/Jenny

xjia
3pts1
github.com 2y ago

Show HN: DimeRun v2 – Run GitHub Actions on AWS EC2

xjia
5pts6
github.com 2y ago

NaiveSystems Analyze – FOSS static analyzer for MISRA C/C++, AUTOSAR C++14, etc.

xjia
45pts13
www.windowscentral.com 2y ago

Intel's Core i7-14700K and Core i9-14900K mistakenly go on sale early

xjia
6pts0
dime.run 2y ago

Faster and 50% cheaper GitHub Actions with managed runners

xjia
16pts2
le.qun.ch 2y ago

Potentials of Multitenancy Fine-Tuned LLM Serving

xjia
3pts0
github.com 2y ago

Show HN: Code Review Mode for ChatGPT

xjia
1pts0
github.com 2y ago

NewHope: Harnessing 99% of GPT-4's Programming Capabilities

xjia
2pts0
arxiv.org 4y ago

DrawnApart: A Device Identification Technique Based on Remote GPU Fingerprinting

xjia
4pts0
www.reviewpatch.org 4y ago

Show HN: Reviewpatch is a code review tool based on the patch workflow

xjia
1pts1
www.tomshardware.com 6y ago

New AMD Side Channel Attacks Discovered, Impacts Zen Architecture

xjia
5pts0
en.wikipedia.org 7y ago

Sixel

xjia
3pts0
news.ycombinator.com 7y ago

Ask HN: Issue tracker for startups – does it sound like a good idea?

xjia
2pts3
www.glassdoor.com 7y ago

Brits' most hated office jargon revealed in new glassdoor survey (2017)

xjia
1pts1
emojipedia.org 7y ago

Random Emoji

xjia
1pts0
news.ycombinator.com 8y ago

Ask HN: What are you using as an issue tracker in 2018?

xjia
36pts45
arxiv.org 8y ago

Scaling Nakamoto Consensus to Thousands of Transactions per Second

xjia
2pts0
github.com 8y ago

Modular visual interface for GDB in Python

xjia
3pts0
www.kertgartner.com 9y ago

Making High Quality Mixed Reality VR Trailers and Videos

xjia
2pts0
petapixel.com 9y ago

Algorithm Turns First Person Videos into Incredibly Smooth Hyperlapses (2014)

xjia
2pts0
news.nationalgeographic.com 9y ago

Human-Pig Hybrid Created in the Lab–Here Are the Facts

xjia
2pts0
uploadvr.com 9y ago

‘Envelop VR Has Closed’: Virtual Reality Productivity App Shuts Down

xjia
2pts0
blogs.microsoft.co.il 9y ago

Compile-Time and Runtime-Safe Replacement for “printf” (2015)

xjia
3pts1
tools.ietf.org 9y ago

RFC 5424 – The Syslog Protocol

xjia
4pts0
getspace.io 9y ago

Show HN: SPACE 16.12 with redesigned UI – multi-tasking with your VR headset

xjia
3pts1
www.reuters.com 9y ago

Apple to set up R&D center in Shenzhen, bolster China ties

xjia
2pts0
techcrunch.com 10y ago

SPACE wants to move your office into VR space

xjia
3pts0

Persistent disks are implemented as EBS snapshots, so the process is something like:

1. Create EC2 instance for runner #1. Find out there is no existing snapshot, so an empty volume is created and attached.

2. Runner #1 runs exactly 1 job and shuts down. A snapshot is taken for the persistent volume. That's going to be used by later runners.

3. Create EC2 instance for runner #2. Create a new volume based on the last snapshot.

4. Assuming #2 is still running while a new job comes in. Create EC2 instance for runner #3. Create volume based on the same last snapshot.

5. Whenever a runner finishes, its persistent volume gets a snapshot taken. Outdated snapshots are automatically removed.

And yes we manage the AMI that the runner uses. We try out best to follow https://github.com/actions/runner-images and will automate this process very soon so it's always up-to-date.

Edit: formatting

IIUC the actual computation (e.g. compiling, linking, ...) happens on client (CI or developer) machines and the results are written to the server-side cache.

By spoofing I meant to say that an authenticated but malicious client (intentionally or not, e.g. a clueless intern) may be able to write malicious contents to the cache. For example, their build toolchain could be contaminated and the resulting build outputs are contaminated. The "action" per se and its hash is still legit, but the hash is only used as the lookup key -- their corresponding value is "spoofed."

The only safe way I can imagine to use such a remote cache is for CI to publish its build results so that they could be reused by developers. The direction from developers to developers or even to CI seems difficult to handle and has less value. But I might be missing some important insights here so my conclusion could be wrong.

But if that's the case, is the most valuable use case to just configure the CI to read from / write to the remote cache, and developers to only read from the remote cache? And given such an assumption, is it much easier to design/implememt a remote cache product?

What is the benefit of using a remote cache instead of a local ~/.cache directory? Is it only for sharing build results among team members? How do you make sure the build results are not spoofed?

Misra C++:2023 3 years ago

I'm not sure about the timeline because that depends on a lot of things. In the meantime I guess you could start with AUTOSAR C++14. MISRA C++:2023 is essentially built on top of that.

For enterprise edition simply email to hello[AT]naivesystems.com as noted in the README on GitHub

Misra C++:2023 3 years ago

Clang has its own limitations. And it takes more effort than just writing the checkers. We open sourced our previously proprietary static analyzer (mostly based on Clang but also integrated other useful tools) but the commercial/enterprise edition still has its own value in stability, quality assurance, and technical support. It's more like building a Linux distro (e.g. RHEL) from various FOSS components.

Misra C++:2023 3 years ago

2023 is supported in the enterprise edition but not in the community edition yet. We gradually move features from EE to CE as new features added to EE. So you can expect 2023 support in CE in the future :-)

Misra C++:2023 3 years ago

If you are interested in this, take a look at NaiveSystems Analyze [0] which is a free and open source static analyzer for checking MISRA compliance etc.

Disclaimer: I'm the founder.

It has been battle tested with real customers in automotive, medical devices, and semiconductors. AFAIK this is the first FOSS tool that achieves commercial use standards (extensive ruleset coverage, low false positives based symbolic execution (which Coverity relies heavily on) and SMT solver, ...)

[0] https://github.com/naivesystems/analyze

Yes I totally understand the concern. We are actively working on SOC 2 and other compliance stuff to help with this. But honestly I feel the compliance requirements are weaker than what we actually implemented. For example proper secure boot and whole disk encryption (without sacrificing performance) are mandatory in our mindset but these specific things don't get reflected in compliance.

Instead of being a service, I'm also open to sell the software+hardware solution behind it, so you can have it on-prem. Do you think that's something you would consider given the constraints on supply chain security?

I had a similar experience with ARC (actions-runner-controller).

One of the machines in the fleet failed to sync its clock via NTP. Once a job X got scheduled to it, the runner pod failed authentication due to incorrect clock time, and then the whole ARC system started to behave incorrectly: job X was stuck without runners, until another workflow job Y was created, and then X got run but Y became stuck. There were also other wierd behaviors like this so I eventually rebuilt everything based on VMs and stopped using ARC.

Using VMs also allowed me to support the use of the official runner images [0], which is good for compatibility.

I feel more people would benefit from managed "self-hosted" runners, so I started DimeRun [1] to provide cheaper GHA runners for people who don't have the time/willingness to troubleshoot low-level infra issues.

[0] https://github.com/actions/runner-images [1]: https://dime.run