text:
[[JUST ADDED!]] How To REDEEM a V-Bucks Gift Card! (2024)

Epic Games Fortnite is an enhanced version of the popular Battle Royal Fortnite. A standout feature of Epic Games Fortnite is its daily redemption codes, which add excitement and urgency to the player experience.
►🔴👉👉CLICK HERE TO FREE GENERATOR
►🔴👉👉CLICK HERE TO FREE GENERATOR
Post Update: Daily in June 2024
Regularly, Epic Games joins forces with prominent celebrities, brands, and unexpected personalities to introduce fresh content to Fortnite. Acquiring these items can be costly and challenging. Fortunately, Epic Games has integrated a code system into the game that allows players to claim complimentary in-game rewards such as V-Bucks and cosmetics. Fortnite is still one of my favorite battle royale experiences because it’s addictive and fun to play with friends. A myriad of challenges, items to complete, and exciting rotating events prove that the game won its popularity for a reason.
Look no further! This article lays out everything you need to know about Fortnite codes, including the currently active ones for June 2024, how to redeem them, and some insider tips for grabbing those elusive rewards.
All ways to get free V-Bucks in Fortnite
Daily Quests. Daily Quests provides you with around 50 V-Bucks every day.
Login Rewards. Daily Login Rewards include V-Bucks on certain days and the amounts are huge.
Timed Missions. You may find Timed Missions with 25-40 V-Buck rewards.
Main Questline.
Side Quests.
Events.
Predicted Outfits
The following Outfits are predicted to return to the Item Shop within the next week of rotations:
Ariana Grande
Commander Zavala
Ikora Rey
Exo Stranger
Starflare
Ragsy
Slumber
Masked Fury
Metal Mouth
Zadie
Rift Warden Stellan
Jungle Scout
Bronto
Crimson Elite
Swamp Stalker
Headhunter Prime
Wildstreak One
Vintage Ramirez
Vanguard Banshee
Sagan
Tomatohead
Pulse
Flow
Tsuki
Toy Trooper
Plastic Patroller
Predicted Emotes
The following Emotes are predicted to return to the Item Shop within the next week of rotations:
Ma-Ya-Hi
Sizzlin'
Rollie
My World
Goated
Predicted Pickaxes
The following Pickaxes are predicted to return to the Item Shop within the next week of rotations:
Vibe Axe
Spiked Mace
Glow Stick
Demolisher
Hi-Octane
Updated Fortnite V Bucks Codes In 2024
PAX7N-79CGE-NMW6T-C6NZG
FRT6P-PPE2E-4WQKV-UXP93
U2429-69CD3-WMYNS-Y64V8
8Z35X-3ZWAB-BC57H-EQTQR
P2XY4-QB7Z8-Y6GVZ-KZZBY
C64MD-U62R2-2B6ZM-6EQ4G
YNQJ7-4EVUP-RJDMT-ENRK9
Z4A33-NLKR2-V9X34-G3688
How To Redeem Codes In Fortnite
By following these instructions, you'll swiftly progress towards acquiring your desired free rewards:
Go to the official Fortnite website.
Log into your Epic Games account.
Look at your username in the top right corner of the screen.
Click on the 'Redeem Code' option from the list.
Copy your desired code and enter it.
Click the 'Redeem' button and activate the code in your account to claim your free reward.
If you're a dedicated fan of Fortnite, then you're certainly eager to get your hands on a variety of redemption codes for the game. These codes will provide rewards such as V-bucks, emotes, actions, items, and more. If you're looking for Fortnite redeem codes, don't miss out on this guide, where we have gathered the latest codes for you.
It's worth mentioning that most Fortnite redemption codes are time-limited, so when you come across the latest codes, be sure to redeem them promptly and check that you have entered them correctly. If the redemption is unsuccessful, it likely means the code has expired. Keep an eye on this page, as we will regularly update it with the newest codes we collect.
Fortnite Codes
Unfortunately, as of June 2024, there are no new Fortnite redemption codes available for use. Please bookmark this page, and we will update it with the latest codes as soon as they become available.
How to Use Fortnite Redeem Codes?
For Fortnite players, using these codes is a simple process:
Visit the official game website.
Log into your account.
Navigate to the "Redeem Code" tab.
Enter each code individually in the designated "Access Code" box.
How to Fix Fortnite High Ping?
Optimizing network performance in Fortnite is crucial due to its competitive nature. Common issues like latency and packet loss can disrupt gameplay. Thankfully, GearUP Booster, a professional gaming network optimization tool, offers a simple solution. Its exclusive technology, endorsed by influencers, prioritizes gaming traffic exceptionally well and intelligently selects the best routes for stable data transmission. With real-time dynamic network adjustments across globally deployed nodes, GearUP Booster certainly stands out from traditional game boosters and VPNs.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

.
.
.
.
.
.
.
.
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks
.
.
.
.
.
.
.
.

🔴📺📱👉 Click here Free V Bucks
🔴📺📱👉 Click here Free V Bucks

repo: foundation/foundation-sites


text:
Hardhat-compatible artifacts (directory structure)

Component
Forge
Describe the feature you would like
Foundry has a hardhat-compatibility flag (which from my understanding, sets libs and src config values)
It also seems to detect existing hardhat projects. When calling forge init --force in an existing hardhat repo, I noticed it filled out those same configs as --hh would. But it also set out = 'artifacts', which is the directory used by hardhat.
When seeing that, I took it as having the ability to share compilation artifacts with hardhat. Which is a great thing to have, since it means I could do a single compilation, and run both forge test and hardhat test
However, the artifacts generated by foundry are apparently not compatible, due to the directory structure generated. It flattens all contracts into a subdir of artifacts, whereas hardhat mimics the structure of contracts
So for the following project:
root
|-- contracts
|   |-- libs
|   |   `-- MyLib.sol
|   `-- MyToken.sol
`-- node_modules
    `-- @openzeppelin

Hardhat would give me:
root
|-- artifacts
|   |-- contracts
|   |   |-- mylib
|   |   |   `-- MyLib.sol
|   |   `-- MyToken.sol
|   `-- @openzeppelin

but apparently foundry gives me:
root
|-- artifacts
|   |-- Context.sol
|   |-- ERC20.sol
|   |-- ...
|   |-- MyLib.sol
|   `-- MyToken.sol

Besides breaking the original expectation (which would be very cool to have, if possible), it also means that forge init --force actually creates a broken setup, since artifacts will end up duplicated inside the artifacts directory. If hardhat is using typechain to infer typings from those, compilation errors will be thrown due to all the duplicates
Additional context
This is the PR where I tried adding foundry to an existing project: https://github.com/subvisual/discoveryDAO/pull/149
I had to explicitly remove out = 'artifacts' due to the described issues. CI is currently set to run two independent compilations

See also https://github.com/foundry-rs/foundry/issues/73

@naps62 Let us know if using the Foundry Hardhat plugin solves this for you :)

@onbjerg sorry for taking so long. I am mostly away from the project where this was an issue, so didn't have time to check until now.
I'm still interested in figuring this out though, regardless of the project
So here's where I'm at: I tested that plugin. but maybe I misunderstood it's functionality, or didn't find some configuration I should add.
Running hardhat test seems to now runs forge test only. What I actually wanted was to keep both test suites in place, but sharing compilation artifacts, so as not to cause conflicting artifacts, and to keep CI times where they are

Seems like this was on the roadmap and then removed? I really don't want to go back to Hardhat at this point but there's legacy tooling that still utilizes HH artifact files so this would be a great add.

source: gharchive/issue

authors: hlauinfo naps62 onbjerg

repo: foundry-rs/foundry

license_type: permissive

license_source: github-api


text:
Decoding array of structs when calling a function with fails

Component
Cast
Have you ensured that all of these are up to date?

[X] Foundry
[X] Foundryup

What version of Foundry are you on?
forge 0.2.0 (903a073 2022-11-15T00:06:12.539932Z)
What command(s) is the bug in?
cast call 0xB4319947947781FFe91dDf96A32aF2D4693FEf64 "getAssets()([(address,uint256,string)])"
Operating System
macOS (Apple Silicon)
Describe the bug
Trying to call a function which has an array of structs as an output fails with UnrecognisedToken 12:13 [ error. I opened the issue as a reaction to this conversation on Telegram.

@benesjan the proper way to specify the array types would be type[]

authors: benesjan rkrasiuk


text:
Core dumped with looping recursion

Component
Forge
Have you ensured that all of these are up to date?

[X] Foundry
[X] Foundryup

What version of Foundry are you on?
forge 0.2.0 (04e6c91 2023-03-19T00:12:01.130238347Z)
What command(s) is the bug in?
forge test
Operating System
Linux
Describe the bug
When calling a contract that calls itself recursively an unbounded number of time, forge crashes with the following message:

This bug happens when running forge test in the following repository: https://github.com/QGarchery/infinite-loop-oracle. I understand that the code is buggy because of the infinite recursion, but I assume that a different error message should be shown instead, such as a revert from the EVM.

this looks like a similar issue to this
https://github.com/foundry-rs/foundry/issues/2106
you have recursion in your test
on my system
you can try this by experimenting with the --gas-limit value. on my system --gas-limit 1400000000 results in a SO but --gas-limit 1400000000 reverts

Oh ok, thanks for the link I couldn't find the other issue. The conclusion is very similar and it's left open, so I'll close this one

authors: QGarchery mattsse


text:
Ability to remove the return value from the console output when executing a script

Component
Forge
Describe the feature you would like
my tool forge-deploy is currently using the return value of forge scripts (the value returned from the run function call) to export the data it need to synchronise deployments data via the broadcast files.
The amount of data returned can be quite big and this can obfuscate the console output forge generate normally.
Having an option to not display such return data  (which ends up in the broadcast file anyway) in the console (irrespective of the verbose flag) would be great
Additional context
No response

Hi @wighawag
forge script includes the --json flag but it currently outputs the JSON result https://github.com/foundry-rs/foundry/issues/7817 amongst all kinds of other output (which is incorrect behavior)
Does your request aim to achieve the same thing? In that case I suggest we move the conversation to https://github.com/foundry-rs/foundry/issues/7817

authors: wighawag zerosnacks


text:
Incorporate Forgotten Adventures creature tokens packs 33, 34, and 35

Pack 33: https://www.patreon.com/posts/creature-tokens-68483730
Pack 34: https://www.patreon.com/posts/creature-tokens-68483902
Pack 35: https://www.patreon.com/posts/creature-tokens-69830449

i'll start to work on this.

authors: Kulkodar aaclayton

license: MIT


text:
Booming blade Greenflame blade

Proficiency bonus is not being added to attacks when using BB or GFB once a weapon is requested for selection. Instead it is only using the base attribute, DEX, STR, ETC.

Neither Booming Blade nor Green-Flame Blade are SRD items included with the system. You seem to be describing behavior from a module.

Well it's related to https://github.com/foundryvtt/dnd5e/issues/2420 probably and it seems that it will be resolved soonish ™


text:
Starting a drag-and-drop on an item's icon to the macro hotbar does not create a macro

If you start your drag-and-drop on an item's icon, to drag it to the macro hotbar to create a quick dnd5e.documents.macro.rollItem macro, it fails. Starting it on the title of the item makes it work as usual.
fvtt 12.331
dnd5e 4.0.4
no modules

Seems like dragging from the image doesn't result in any of the correct drag data from being stored, so drops anywhere that would normally work for items don't.

Also, only happens for the actor sheet inventory, not container inventories.

Okay, looks like this is happening because images default to draggable="true" in browsers, causing it to trigger a drag event even though the system sheet hasn't defined it as a draggable element.

authors: Krigsmaskine arbron


text:
Respect phtosensitivity mode for RBV effects

The Photosensitivity Mode is a foundryvtt core feature

Anyone know a way I can remove this effect without applying deafened? One of my players has a photosensitivity disability and this effect can trigger actual blindness for them. The deafness condition gets rid of it but also has other negative effects for that player character so we dont want to do that in game. If there's a way I can swap this effect out or create a custom condition it would be amazing

There is currently no good workaround for this when unconscious

The Photosensitivity Mode is a foundryvtt core feature

authors: Drental stwlam


text:
Hide merchant coins and empty loot sections from players

GM view

Player View

Coins in containers are purposefully not hidden as it would cause strange behavior if the container itself as sold (and if it also sold what was inside the container, which it should.....)

I still see coins at the top

I'm ok with hiding those too if you prefer, my goal was more that gold coins are not for sale.

yeah let's hide those too

The coinage section is now hidden from non-owners unless its not a merchant

Total bulk, too :)

Done. I will have you imagine how bare this sheet is now.

I cannot wait to see!

source: gharchive/pull-request

authors: CarlosFdez stwlam


text:
Fix Blast Resistance Note RE label

It used to be the same as Undine's Tide Hardened.
Added both to re-en.json
Also, I'm not sure that this Blast Resistance RE even works properly. Is there anything that even uses condition:deafened as a roll option? Maybe it's better to remove this part of the predicate, so that the note still pops up at times?

Also, I'm not sure that this Blast Resistance RE even works properly. Is there anything that even uses condition:deafened as a roll option? Maybe it's better to remove this part of the predicate, so that the note still pops up at times?

We typically use inflicts:condition-slug as an educated guess on what roll options for such things might look like in the future. You could make that change while you're doing this if you want. But yeah, either way, the Note will not typically show up under most circumstances currently.

authors: Cuingamehtar pedrogrullada


text:
Added functionality of dynamic lowercase links

thanks to 1um6okote

Proposal from lajamerr:
cpp const QString tempstring1 =         "^"         // Identifier for http and ftp         "(?:(?:https?|ftps?)://)?"         // user:pass authentication         "(?:\\S+(?::\\S*)?@)?"         "(?:"         // IP address dotted notation octets         // excludes loopback network 0.0.0.0         // excludes reserved space >= 224.0.0.0         // excludes network & broacast addresses         // (first & last IP address of each class)         "(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])"         "(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}"         "(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))"         "|"         // host name         "(?:(?:[_a-z\\x{00a1}-\\x{ffff}0-9]-*)*[a-z\\x{00a1}-\\x{ffff}0-9]+)"         // domain name         "(?:\\.(?:[a-z\\x{00a1}-\\x{ffff}0-9]-*)*[a-z\\x{00a1}-\\x{ffff}0-9]+)*"         // TLD identifier         "(?:\\.(?:[a-z\\x{00a1}-\\x{ffff}]{2,}))"         "\\.?"         ")"         // port number         "(?::\\d{2,5})?"; QRegularExpression getDomain(tempstring1, QRegularExpression::CaseInsensitiveOption); QString tempString = string; QString domain = getDomain.match(tempString).captured(0); QString lowercaseLinkString = string; lowercaseLinkString.replace(domain, domain.toLower());

Here's a list of example URLs to test during testing.

http://www.google.com/search?q=GooGle.com
http://www.google.com/search?q=GooGle.com
HTTPS://www.google.com/search?q=GooGle.com
HTTPS://www.google.com/search?q=GooGle.com
www.google.com/search?q=GooGle.com
google.com/search?q=GooGle.com
GOOGLE.cOm/search?q=https://www.google.com
HTTP://10.0.0.1/
HTTP://10.0.0.1:21334/TESTuRl?s=wWw.goOgle.com/

license: mit

license_source: bigquery


text:
🛑 Advantage Print Solutions is down

In 64a1388, Advantage Print Solutions (https://www.advantageprintsolutions.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Advantage Print Solutions is back up in e412a17.

repo: fourthfloor/uptime


text:
🛑 Advantage Print Solutions is down

In eeefc88, Advantage Print Solutions (https://www.advantageprintsolutions.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Advantage Print Solutions is back up in 2f64021 after 10 minutes.


text:
Reactions are not added slowly, causing them to not add as it gets ratelimited.

Hello,
I've found(?) a bug which is that the paginator only adds one reaction. then poof, you're ratelimited.
Setting the runmode to RunMode.Async doesn't affect anything. Except that the error "you're being rate limited" does not appears.

An old build didn't retry anything (regardless what RetryMode was set to), it seems this is a consequence of that, and not relevant

license: isc


text:
Update app-f4b0e3a0f6630c6c049a2b7b18921024.css

application-header z-index changed to 1001 to fix overlapping Google Maps
application-header background color changed to #FFF
application-header .sticky-naved box-shadow alpha changed from 0.6 to 0.1
navbar-logo font size and weight changed

bro, I really appreciate you contributing, and your changes are actually really good stuff, but since you're editing css, please edit the scss files it in the apiv1/app/styles folder (the application header scss is in _header.scss).
This is because all the files in dist/ are rebuilt by the framework (ember-cli) with each change, so making changes to files in the dist folder can't be persisted and altered upstream.

Ahh, gotcha. I'll do that going forward. Should I add the previous changes
to a new pull request?
On Thu, Jan 1, 2015 at 10:13 PM, Thomas Chen notifications@github.com
wrote:

bro, I really appreciate you contributing, and your changes are actually
really good stuff, but since you're editing css, please edit the scss files
it in the apiv1/app/styles folder (the application header scss is in
_header.scss).
This is because all the files in dist/ are rebuilt by the framework
(ember-cli) with each change, so making changes to files in the dist folder
can't be persisted and altered upstream.
—
Reply to this email directly or view it on GitHub
https://github.com/foxnewsnetwork/amagami/pull/7#issuecomment-68510363.

yes please.

authors: danbosketch foxnewsnetwork

repo: foxnewsnetwork/amagami


text:
Inline peek/poke functions in Data.Store.Core.

This gave me a speedup of roughly 20% in one of my benchmarks.

The build failures are unrelated to the pull request, so I'm going ahead merging this.

repo: fpco/store


text:
Improve OverwriteNotAllowedError error messages

Those are sometimes very long strings (due to absolute paths), and the relevant information is hidden at the end.

This is how things look in version 0.11.0a2 in fractal-web (as of #515). There is still room for improvement, but at least the "Hint" sentence is now visible:

That's a good start! :)

authors: jluethi tcompa


text:
update credit_card_validations

Hello, just to make things updated.
credit_card_validation.gem was updated to 2.0.0 included fixes in brand detections (new brands and old brands like switch as well ), new brands support , etc..

Sorry I was away at the time you submitted this PR so I missed it.
Thanks!

authors: Fivell franckverrot

repo: franckverrot/activevalidators


text:
Create and maintain distribution packages

There is only one for Arch Linux. It would be nice to have packages for other popular distributions like Gentoo, Void and others.
Links to current packages are located in README.

Happy to package for Fedora.

I've packaged it for Nix(OS) but initially missed this ticket :o Thanks for writing this tool :)
Regarding the README: You could also include a badge from Repology if you want: https://repology.org/project/wob/badges ;)
And Repology should also help tracking which distributions provide a package.

I'd like to package wob for Debian. Unfortunately I cannot build the package from your release tarball as it doesn't contain the wlr-protocols subdirectory. Would you mind to vendor wlr-protocols in the release tarball?
Besides, it would be super nice if you could sign the release tarballs and the git tags in order to cryptographically verify that the files have not been tampered with in the supply chain.

Sorry, been busy lately :crying_cat_face:
I'll look into this during holidays.

No worries. I'll wait for your feedback and/or a new release with vendored wlr-protocols before continuing with the packaging effort.

There is some work being done regarding the package for openSUSE: https://github.com/openSUSE/openSUSEway/issues/17

There's now a package for openSUSE: https://build.opensuse.org/package/show/openSUSE:Factory/wob
It can simply be installed with sudo zypper in wob.

Here is a working ebuild for Gentoo if anyone is interested: wob-0.10.ebuild

I think it's time to close this now.
Thank you, everyone :slightly_smiling_face:

authors: StephenCoady francma freijon m-rey mejo- primeos

repo: francma/wob

license: ISC


text:
Apple Air Tag detection?

Can this library be used to detect Apple Air Tags?

I think it can, but you would need a plug-in to decode things

This is how we parse it in BLE monitor
https://github.com/Ernst79/bleparser/blob/master/package/bleparser/ibeacon.py

Apple AirTags is not iBeacons, unfortunately - https://www.beaconzone.co.uk/blog/are-apple-airtags-ibeacons/

repo: frawau/aioblescan


text:
🛑 EC is down

In 3886709, EC (https://ec.tut.ac.za) was down:

HTTP code: 0
Response time: 0 ms

Resolved: EC is back up in 1979820.

repo: fredre/ecMonitor


text:
maint: build wheels for macos arm64 in Cirrus CI

This adds Cirrus CI configuration that can build macOS arm64 wheels.
Cirrus CI needs to be enabled on the repo before this will work.

@fredrik-johansson can you enable Cirrus CI on this repo?
The link is here:
https://github.com/marketplace/cirrus-ci
Only the "public repositories" (free) level is needed. After it asks for a name and address and some access to your github account to see your repos. It's possible to enable it only on one repo though.

Cirrus CI seems to be installed now.

Thanks. Looks like it's working. It should take about 15 minutes to produce the wheels.

It's working. I've tested one of the wheels locally.
Next what is needed is to patch gap:
https://github.com/aleaxit/gmpy/issues/352#issuecomment-1360941902
I want to try to reproduce this issue first so that I can confirm the fix:
https://github.com/aleaxit/gmpy/issues/350

I want to try to reproduce this issue

Actually I'm really not sure how I would reproduce that because obviously I've compiled python_flint rather than gmpy. The equivalent code for python_flint doesn't have any problem but that doesn't really prove anything. I think it's clear that GMP needs to be patched though (various other environments apply this patch for macos arm64).

I've added the patch for OSX arm64 and tested the wheel from Cirrus CI locally and it works.

Okay, I think this is good to go.

authors: fredrik-johansson oscarbenjamin

repo: fredrik-johansson/python-flint


text:
Merge refs/heads/temp-branch-6404255505 into alpha

Merge refs/heads/temp-branch-6404255505 into alpha

This PR has not been merged into alpha. Please fix the issues and re-open the PR.

repo: fredyk/westack-go


text:
Free-RTで新機能として作った機能の移動

本家のRTからforkした後に追加した機能を移行する計画

gom-botの機能として再利用する

今あと何が残ってるんだろう
わかんないから一旦closeでいいや

authors: yaakiyu ysmreg

repo: free-RT/gom-bot


text:
Support double precision processing

If supprotsDoublePrecision in the processor is true, advertise FLOAT64 audio ports and adjust the processing loop.
Tested by running Airwindows Consolidated as CLAP in reaper (which supports double) and Bitwig (which does not) and seeing appropriate behavior.

@jatinchowdhury18 if you wouldn't mind a peek I would appreciate it!

repo: free-audio/clap-juce-extensions


text:
Create a placeholder project view until multi-tab editor is ready

Currently @benmcmahon100 is working on updating our UI and creating a multi-file editor. This will enable campers to build non-backend projects right on freeCodeCamp instead of having to use CodePen.
We are eliminating videos from our projects views and replacing them with static images. I've added imgur links already as the challenge seed for each of the non-backend projects:
      "challengeSeed": [
        "G6iPE6W"
      ],

This should translate to http://i.imgur.com/G6iPE6W.png as the image source.
Currently the project views look pretty terrible:

On a semi-related note, it appears the tests for these challenges specifically require you to ignore the best practices taught up until this point. Will there be updated tests soon/eventually?
(In the mean time, do we just follow what the tests need to get by?)

I cannot view the video either, and there is no image. What exactly am I supposed to create with this survey? Is it supposed to go somewhere specific, or are you simply looking at the design?

@berkeleytrue is almost done with the new project UI so I'm going to go ahead and close this issue.

We have open PR for this which implements this. Let's keep this open, while the PR is accepted.

authors: Bamcrab KoniKodes QuincyLarson raisedadead

repo: freeCodeCamp/freeCodeCamp


text:
Most common incorrect answers for step-1

Describe the Issue
Here is the list of the most common incorrect answers for learn-html-by-building-a-cat-photo-app/step-1

editable_file_contents
unique_user_count

Hello World

57672

<CatPhotoApp>Hello World</CatPhotoApp>
4829

<CatPhotoApp>Hello World

3114

CatPhotoApp

1988

Cat Photo App

1829

Hello World

CatPhotoApp

857

<CatPhotoApp>Hello World<CatPhotoApp>
825

Hello World</CatPhotoApp>
823

Hello World

479

CatPhotoAppp

389

To see the indentations and line breaks: https://docs.google.com/spreadsheets/d/1P4a1kfRIVk5Q9pfuIqsoF3cQc6ehQiMST4ISArtbvSc/edit?usp=sharing
Considerations:

The right answer is also included in the failed variations. Either google analytics is misfiring, or there is an issue with our evaluations logic extensions, tests, browser extensions, etc.
It seems like a lot of users are confused about the placement of CatPhotoApp
Adding a copy button feature for the code blocks might help with reducing the misspellings of CatPhotoApp
Having the default seed as the wrong answer could mean users are just testing the UI. I could AB test disabling the button if seed does not change and see if there is an improvement in user behaviour.

Goals:
Reducing the bounce rate ( people leaving the platform ) on the entry challenges is highly critical. Increasing the percentage of the people who go to the next challenge would significantly increase all of our metrics.
Suggestions
Oliver suggested changing the instructions to say 'change its text from "Hello World" to "CatPhotoApp"' should clarify it a bit further.
Other suggestions? I am all hears.
Affected Page
https://www.freecodecamp.org/learn/2022/responsive-web-design/learn-html-by-building-a-cat-photo-app/step-1
### Tasks
- [ ] update instruction
- [ ] investigate why correct answers are failing
- [ ] write tests for common variations (after the new instrucstions are in)

Thanks, Ahmad. One thing we can do with this information is tailor the hints to the most common mistakes.
For example, given <CatPhotoApp>Hello World</CatPhotoApp> we could say

The type of tags should be h1. You should replace <CatPhotoApp> with
 and </CatPhotoApp> with

also, if they've not modified the code at all, it could say something like

You need to modify the code. To get started, click on the line
Hello World
 above and start typing.

Also, playing with it now, I noticed that the editor doesn't automatically get focused when the learn clicks "Start Coding". Was that intentional? It seems like it would help if a user could immediately start typing and see things change.

The code below contains an HTML `h1` element. The element has an opening tag, `<h1>`,
a closing tag, `</h2>`, and the text that the element will display goes in between the tags.
You can see `Hello World` displayed in the browser preview.

Change the text of the `h1` element below from `Hello World` to `CatPhotoApp` and watch
the browser preview update to display the new text.

Great feedback there is some more context.

What's the difference between the two?

Hello World
 57672
Hello World
 479

There is a spacing difference. Refer to the link in the description for spacing and indentation.

There are 2218 misspellings of CatPhotoApp, mostly due to spaces, so not sure how effective a copy button feature is.

If we allow users to copy the text, it would remove the variations.

I want to alter the initial text as little as possible so we could associate the changes in text to changes in user behaviour easier.
How about only changing this:
Find the h1 element and change its text to:

CatPhotoApp

to this:
Change the text of the `h1` element below from `Hello World` to `CatPhotoApp` and watch
the change in the preview.

When you are done, press the "check your code button" to see if it's correct.

I would be fine with that @ahmaxed 👍 So the full instructions would look like this:
HTML elements have opening tags like
 and closing tags like
.

The text for an element goes between its opening and closing tags.

Change the text of the `h1` element below from `Hello World` to `CatPhotoApp` and watch
the change in the preview.

When you are done, press the "check your code button" to see if it's correct.

Here's a suggestion with some minor adjustments that I like a little better:
HTML elements have opening tags like
 and closing tags like
. The text an element will display goes between its opening and closing tags.

Change the text of the `h1` element below from `Hello World` to `CatPhotoApp` and watch
the change in the browser preview.

When you are done, press the "check your code button" to see if it's correct.

^-combined first two paragraphs into one
-changed "The text for an element" to "The text an element will display"
-changed "preview" to "browser preview"
I'm just guessing, but I think that a lot of the issues might have to do with information overload. There's instructions, and the preview, and code editors, and nav bars, and more. The user is not familiar with most of it, and the instructions don't really explain any of it. So I think the more clear we can make things for users on the first step, the better. That's why I keep making suggestions that somewhat explain the things and are as explicit as possible - e.g. "the code below", "the browser preview", "the text an element will display", etc.

Wonderful, let's go with your last suggestion.
I assume once the new instruction is in, the new failed challenges will look different.
As a result, writing tests for the current variations might not be necessary.
I will double check if there are overlaps. We could write tests for those.

I haven't check the analytics since the changes were merged in. But looking at the forum it looks like there is still some confusion on how to go about the first step
It looks like campers are either not sure what to do, so they don't write anything. Or they are writing <catPhotoApp> like the results show.
Here are a few postings from the forum within the last week and a half
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-1/683131
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-1/684136
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-1/683382
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-1/683480
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-1/684804
This tells me there is still a high volume of guessing going on.
IMO, I think it would be better to start with a blank page instead of giving them the h1 element and asking them to change the text. That might be leading to some of the confusion.
By having them write the h1 element, then they will get to see the result appear on the page instead of just the text changing. So it might be a better learning experience overall.
Something like this might work
HTML elements have an opening and closing tag with content in between.

Here is the basic syntax:

```html
<openingTag>content</closingTag>
```

Notice how the syntax of the closing tag includes a forward slash `/` before the element name.

The first element you will learn about is the `h1` element. The `h1` element is a heading element and is used for the main heading of a webpage.

```html
<h1>This is a main heading</h1>
```

Create an `h1` element and give it the text `CatPhotoApp`.

When you are done, press the "Check Your Code" button to see if it's correct.

Mentioned earlier about a visualisation for the required code.

.. animation guiding the learner through the step
https://supravisor.github.io/TestPod/
QUOTE EDITED

Starting with a blank page is also a good idea.  However, may lead to lots of syntax errors for beginners to navigate.
One of the things Campers who post on the forum for RWD is that they do not understand the hints or error messages.
Catch-22: you have to understand code syntax to recognise syntax errors displayed in the hint message.
Here is a selection from the last ten days or so:

https://forum.freecodecamp.org/t/learn-the-css-box-model-by-building-a-rothko-painting-step-11/684853
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-60/684760
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-48/684613/2
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-57/684289/10
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-50/684286
https://forum.freecodecamp.org/t/learn-accessibility-by-building-a-quiz-step-67/683822/10
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-38/682998
https://forum.freecodecamp.org/t/learn-basic-css-by-building-a-cafe-menu-step-44-got-stuck-here-help-would-be-greatly-apprecciated/683648
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-33/683393
https://forum.freecodecamp.org/t/learn-html-forms-by-building-a-registration-form-step-52/683363
https://forum.freecodecamp.org/t/stucked-in-step-14-of-learn-html-by-building-a-cat-photo-app/683298
https://forum.freecodecamp.org/t/learn-html-by-building-a-cat-photo-app-step-3/683218
https://forum.freecodecamp.org/t/learn-css-variables-by-building-a-city-skyline-step-112/683183

The new changes have been in for a week. I will put together another document for the most common mistakes to see if anything has changes. The analytics does not show a considerable change.

@Supravisor

Mentioned earlier about a visualisation for the required code.

The visualization looks cool but I haven't seen any animations or links for any of the steps.
So that might not be an option for the curriculum

I wonder if it's possible to make little info icons that explain some of the hint text in the event it's potentially confusing.

I just had a thought. What if and hear me out, that last one (the one with CatPhotoApp in h1) failed because of an indentation issue. Is there a way to double check this?

just wondering how this went? (was there an improvement?)
I'm still having to explain to people what an element is vs what is a tag.
But I haven't seen all that much step 1 issues.

Here is a sample of the failed challenges after the initial changes took place:

all_editable_file_contents
unique_user_count

Hello World

53744

Cat Photo App

2888

CatPhotoApp

1922

This is a main heading

756

Hello World

CatPhotoApp

563

      <CatPhotoApp>Hello World</CatPhotoApp>
508

cat photo app

424

CatPhotoApp

382

Cat PhotoApp

334

CatPhotApp

333

Hello World

294

Cat photo app

261

Hello World

Hello World

255

Hello World CatPhotoApp

250

Hello World

245

CarPhotoApp

219

CatPhotoAppp

218

Hello World

CatPhotoApp

215

CatPhotoApp/h1>
207

CatPhotoApp

Hello World

199

      <CatPhotoApp>Hello World

198

Hello World

CatPhotoApp

189

Hello World

179

CatPhoto App

172

CatPhotosApp

154

CatPhotoAp

149

144

Hello World</CatPhotoApp>
141

Hello world

140

Hello World

135

      <h1CatPhotoApp

135

Cat Photo

135

Hello

132

CAT PHOTO APP

128

CatPhotoApp

126

Hello World

Hello World

125

CatPhotoApp

Hello World

116

 CatPhotoApp

116

CatPhoto

114

Check Your Code

113

cat photo

109

hello world

107

Hello World
CatPhotoApp
103

Hello World

100

Many might just clicking the button to see what happens.

Considering we are working on the new stuff, and step 1 will not be the first things they see anymore, should I try to implement any changes from this? cc/ @jdwilkin4

Let us go with this:
HTML elements have opening tags like
 and closing tags like
. The text an element will display goes between its opening and closing tags.

Change the text of the `h1` element below from `Hello World` to `CatPhotoApp` and watch
the change in the browser preview.

When you are done, press the "check your code button" to see if it's correct.

@ilenia-magoni
Sorry, I missed this comment from earlier.
I think what we ended up going with for the new cert works well 👍
So we don't need to apply any additional changes to that first step of the workshop.


text:
Fixed and Modified Test in Trigger Click Events with JavaScript

Pre-Submission Checklist

[✓] Your pull request targets the staging branch of freeCodeCamp.
[✓] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[✓] You have only one commit (if not, squash them into one commit).
[✓] All new and existing tests pass the command npm test. Use git commit --amend to amend any fixes.

Type of Change

[✓] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[✓] Tested changes locally.
[✓] Closes currently open issue: Closes #13571

Description

Modified the test for the challenge Trigger Click Events with JavaScript under JSON APIs and Ajax in the Data Visualization track. Removed regex match method and replaced with typeof === 'function' so it passes for both ES5 function(){} and ES6 ()=>{} notations. first commit/PR & closes #13571

@Ethan-Arrowood Just a quick tip for the next time: You can check the boxes by using [x] :blush:

authors: Ethan-Arrowood Greenheart


text:
add element, and find size of Array-list

[x] I have read freeCodeCamp's contribution guidelines.
[ ] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the master branch of freeCodeCamp.
[ ] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Please make it fit the rest of the document.

Hey @vaibhavs2
Thanks for opening the PR but I feel this change isn't adding to the content of the page. It seems out of place and isn't really explaining the concept.
Please read the Article Style Guide on how to use Markdown codeblocks for better formatting.

authors: Asjas lynxlynxlynx vaibhavs2


text:
Add a section on Introduction to lists

[x ] I have read freeCodeCamp's contribution guidelines.
[x ] My pull request has a descriptive title (not a vague title like Update index.md)
[x ] My pull request targets the master branch of freeCodeCamp.
[x ] None of my changes are plagiarized from another source without proper attribution.
[x ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Always happy to help :)


text:
Added More examples

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

All coded examples should used 2 space indentation.  Please correct on a new PR.
Thank you.


text:
Fix WebStorm section

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

@thecodingaviator This PR has gone stale.

authors: RandellDawson kermopajula


text:
revert: chinese curriculum updates break structure

This reverts commit d7cd3f7777778067a931ac2dad7aedb5aa406b3e via PR #38901
This reverts commit f35e7de03e32d5a7a3e0155b3b776a8401049ba1 via PR #38908
This reverts commit 432625344002f6c946cdcdea4114a739723c9da0 via PR #38945
This reverts commit ce2085d240fae8b81c3ea6c302bfffa0ad13b90c via PR #38946

This commit should remove the conflict I introduced in #38040. Once that's landed, I should be able to re-apply the same commits, resolve conflicts and get past this structuring issue.
If not, @ZhichengChen we would need to revisit this and apply the changes manually with fresh set of PRs. I will keep you posted.
/cc @RandellDawson @ojeytonwilliams

@raisedadead All set.
It looks to me that there are bunch of updates in "Advanced Node and Express", where I spent more time than expected.
Several things that I noticed:

It looks to me that all <a> are equipped w/ target="_blank". Is this mandatory?
I noticed that there many files under chinese have isHidden: false in TOC (i.e. top of the markdown file). Should we remove that as well?
In this challenge, there is a link to another challenge, Falsy Bouncer. Would you mind letting me know what is the expected URL for the linked challenge in Chinese?

Hi @RandellDawson please remond me to discuss these queries when you are up. Thanks.


text:
fix(client): remove JS comments from user code for tests

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] All the files I changed are in the same world language, for example: only English changes, or only Chinese changes, etc.

Closes #41448

I am just learning the codebase, please let me know if I did something wrong or didn't do something right, I will make changes.

Nice work @Dzheky this is exactly what we were looking for.
Now that you've done this, we can do two things. Firstly, we don't need to expose __helpers.removeJSComments any more, since it's being applied during the build. Secondly, we can remove __helpers.removeJSComments from the challenges.
Would you be interested in implementing these changes? They make sense to be part of this PR.

Thank you! Sure I can look into it, I am not 100% sure what you are asking, but I will figure it out!

I am not 100% sure what you are asking,

Ah, sorry about that, let me try and clarify.  Since you've applied removeJSComments in build.js there should be no need to call it in challenges.  That means we can export removeJSComments separately
export const removeJSComments = codeStr => {

and remove it from the __helpers by doing this
const curriculumHelpers = {
  removeHtmlComments,
  removeCssComments,
  removeWhiteSpace
};

@ojeytonwilliams Hello, I have finished what you have requested.

since this affects espanol and chinese, do we need to do anything special?

I am of the opinion that we add the changes to the files for CI to pass as a one-off.

@Dzheky don't worry if the bot complains about changes to the espanol and chinese. It's not our usual workflow, but it's fine in this case.

I am of the opinion that we add the changes to the files for CI to pass as a one-off.

Yep, this is a weird edge case where we'd want to ignore the no-translate check and merge anyway. That specific CI doesn't run on push or on our deployment branches, so there's no issue with merging 🙂

So is there anything I need to do? 😃

So is there anything I need to do?

Could you add the removeComments: false frontmatter to the espanol and chinese files?  Once that's done the bot will complain, but the Localize tests should pass.  Then we'll give it a final review before merging.

@ojeytonwilliams, @nhcarrigan Thank you for review, I think now all the tests pass. Well except one

That's the one we expected to fail, so no worries there 🙂

So can this be merged? 😄

So can this be merged?

Yes - when we get more approvals. Thanks for your patience with this. Meanwhile, you are welcome to work on other things if that interests you.

I'm just gonna merge this. Thanks for contributing to freeCodeCamp @Dzheky 🎉

authors: Dzheky moT01 nhcarrigan ojeytonwilliams raisedadead


text:
fix(curriculum): Learn CSS Variables by Building a City Skyline Step 40

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #47568
Changes made:

Add a note about the DRY principle due to redundant properties (i.e., background-color and background) in a single rule.
Update the first hint to indicate the recommended definition of the background property.
Add an empty newline after the definition of the background-color property to imply the recommended location to define the background property.

@raisedadead if some of the checks are failing in the PR branch, merging the updates from the main branch is the way to resolve it, right?

Not usually @arantebw. It looks like something was added here to fix a broken test, so updating this branch brought in those changes so they could pass. Typically you need to look at why the test is failing. Sometimes it's just a random failure and re-running them will fix it, sometimes something is broken and needs fixing.


text:
fix(curriculum): typo error on css file

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #56284

Fixed all the semicolon typo errors on the css files of learn-basic-css-by-building-a-cafe-menu

Hi @brunades. Congrats on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We are happy to accept these changes and look forward to future contributions. 📝

authors: brunades ilenia-magoni


text:
fix:#56353

Removed Todo#56353

I am closing this PR.
A new issue was created to remove the TODO.
Please make sure to follow the instructions in the PR guide on how to contribute to freeCodeCamp if you are interested in opening a new PR 👍


text:
fix(curriculum): intro for basic HTML quiz

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #56867

Hi @samantha-t28 . Congrats on your first pull request (PR)! 🎉
Thank you for your contribution to the page! 👍
We are happy to accept these changes and look forward to future contributions. 📝


text:
refactor ReplaceFrom()

In relation to #100, prepared PR with refactor of ReplaceFrom() to enclose all changes in single BeginEdit-EndEdit frame to be able to enclose it with transaction.
Had to do small enhancements to reflect.go to be able to reuse existing TestReplaceFrom() test. Reflect-based Node did not tolerate request flags.
Also, please pay attention to changed payload structure in test, please ensure that such change is not breaking any existing contracts. I found several usecases where payload structure is not compatible with RESTCONF rfc8040 spec. I'll try to fix that in future PRs.
And finally, list cleanup code might be not optimal, but it is baseline for optimizations. Please, give feedback if you see a easy way to improve that.
Hope this PR is good enough for this project. I've put a lot of effort to understand this edit strategy but still intuition is a big part of this PR :)

thanks for the PR, i will take a deeper look soon.

authors: dhubler sibuk-harabudjasim

repo: freeconf/yang


text:
Problem with map saving

The conga starts to create the map fine, but when it is finishing, the map changes and an offset map with horizontal lines appears.
In addition, neither the position of the conga nor its path can be seen.

This issue should be open in the valetudo repo,
Anyhow, do you test with the original cecotec app if the problem persists?
https://github.com/freeconga/Valetudo

repo: freeconga/congatudo-add-on


text:
issues bizgenerator 2

branch: development_fixoct8b

employees need to be put in same collection under employees/...

see introduced name in employee object
uses name (with only _ and underscore) as name of page of employee
only generate if it doesn't exist yet

we should have more checks, if errors then we should not generate mdbook, just show the errors

see if we can do a trick where we serve the mdbook over v webserver,
we use https://modules.vlang.io/os.notify.html to see if change of file at source
then use some injected javascript trick (when serving mdbook) to reload the open page when there is change of file at source, this would hugely help the development time.

repo: freeflowuniverse/crystallib


text:
Implement CRUD pipelines

As specified in https://github.com/freme-project/technical-discussion/issues/62

Implemented.

authors: ghsnd jnehring

repo: freme-project/pipelines


text:
Added render all menu item

I added a menu item that will allow regenerating all templates at once.
I'm new to this codebase (and vs plugin's!), any feedback would be greatly appreciated.

Hi @Michael-Tajmajer-Emrsn, thanks for contributing!

authors: Michael-Tajmajer-Emrsn frhagn

repo: frhagn/Typewriter


text:
Support typed and private Google SpreadSheets

Overview
We could do something like this:

Stream(url) - use Export API [implemented]
Stream(url, api_key) - use Sheet API
Stream(url, token_creds) - use Sheet API with private docs access

Also consider typed/force_strings flag (could be useful also for excel, json etc).
PS.
Get typed data without API Key may be will be possible after this - https://github.com/burnash/gspread/issues/175 (but we don't really want to use non-official drivers)

@roll
I wonder if this should be two different issues.

Typed data means using the XML feed for data in a Google Spreadsheet. This issue is unrelated to public / private access from what I remember. This is very useful, and we should have it on the backlog, but it might also be a rabbit hole (mapping to table schema, dealing with type edge cases, integrating with sheets data validation - I'm not sure but there are lots of considerations)
Supporting private sheets via the export API. This is the exact same implementation as current (getting a stream of CSV per sheet), with the addition of providing keys/tokens for API access. This has little to no relation to the above point, and should be easy to implement.

What do you think? If you agree, I'll split issues, as the 2nd point is a blocker for us on some other work.

@pwalsh
I'd like to split but I can't find how we could access not shared (not publicly available) sheets without OAuth2. And OAuth2 means usage of Sheet API (and one of gsheets libs from PyPi).
So from my understanding this issue means updating gsheet parser to use Stream API if token/api_key is provided. Doing it we'll get:

support for private documents/sheets
support for typed data for free (like we have for Excel) - we have force_strings options to stringify output but yes additional type edge cases check is needed

upd.
I've found out that there is also Drive API - https://developers.google.com/drive/v3/web/manage-downloads - we could get csv using Drive API if an user has Oauth2 creds. But here is a question if there is a reason to write first implementation based on Drive API and then compliment it with implementation based on Stream API (for typed data). Instead of using Stream API for everything.

cc
@akariv
@amercader

Based on the info above, I would go with the Stream API implementation route.

ref accessing private Google Sheets:
Instead of tabulator providing the authentication logic itself, how about tabulator modules that make external requests can accept an http object as a parameter, and it's used to make the request. That way, the user of the module can pass in an http object that is setup correctly for authentication for their specific requirements.
I have some util code for the Measure project that returns an authenticated http object, that is subsequently used to make an API request, without requiring the Service API lib.
google_utils. get_authorized_http_object()
used in code here

@brew sounds useful. I think you should do a PR so we can all see specifics.

authors: akariv brew pwalsh roll

repo: frictionlessdata/tabulator-py


text:
FError pattern is a potential leak

I noticed today while spelunking around that most frida operations return GError. Which we then wrap with FError. I noticed that the only time GError in this case is freed is when it's .Error() func is called. In many cases it's reasonable to not always called .Error() for instance (the reverse is also true here when calling Error twice we end up with an empty string):
func main() {
	d := frida.NewDeviceManager()
	d.EnumerateDevices()
	fridaDevice, err := d.FindDeviceByID("00008101-0005190C3EA0001E")
	if err != nil {
		log.Fatal(err)
	}
	_, err = fridaDevice.Attach(0, nil)
	fmt.Println(err.Error())
	fmt.Println(err.Error())

	err = errors.New("hello")
	fmt.Println(err.Error())
	fmt.Println(err.Error())
}

FError: The Frida system session is not available on jailed iOS
FError:
hello
hello

I have many patterns where I just check if err != nil and then I handle the error without ever calling .Error(). I think if this is the pattern that will be supported in the future it would need some better documentation. FError would need to provide a Clean func which could lead to some pretty nasty code for the caller. Something like:
	_, err = fridaDevice.Attach(0, nil)
	if err, ok := err.(frida.FError); ok {
		err.Clean()
	}

Or whatever flavor of errors.Is/As works best here.
I personally think the bindings should handle the copying of the error into a GoString and freeing it for the caller, and the caller should just receive a regular golang error so they aren't concerned with freeing anything. For instance much of the bindings code would turn into:
func handleGError(gErr *C.GError) error {
	defer clean(unsafe.Pointer(gErr), unrefGError)
	return fmt.Errorf("FError: %s", C.GoString(gErr.message))
}

...
                s := C.frida_device_attach_sync(d.device, C.guint(pid), opt, nil, &err)
		return &Session{s}, handleGError(err)
...

Another large lift. This is also would be an implicit api change. What are your thoughts? If you like this. I would tackle it.
Cheers!

Hey there @dylanhitt, another great idea and thank you for digging into this. I will say that I absolutely love the idea and the handleGError function you have here.

Nice, I'll start on it sometime this week.

authors: NSEcho dylanhitt

repo: frida/frida-go


text:
Shallow Routing calls getInitialProps if not using named route + params

Heads up for people using shallow routing:
I notice that if I stick a console log in my getInitialProps, it gets hit if I use normal URL routing instead of route name + params.
Router.pushRoute('/a/:slug') - calls getInitialProps
Router.pushRoute('aName', { slug: 'aSlug' }) - does not call getInitialProps

Have you had success with shallow routing? I'm finding two issues:

If I navigate back out of a shallow route (e.g. back from /about#test to /about), getInitialProps is still called even though it's the same page component being viewed.
If I navigate back from a deep route into a shallow route (e.g. back from /blog to /about#test), I get an error and the back navigation does not occur.

authors: kennandavison mherodev

repo: fridays/next-routes


text:
Release new version to npm?

It looks like you all have tagged up to 2.0.5 on the repo but the latest released version on npm is 2.0.5. Would you mind bumping the npm version? Thanks!

Looking into this thanks!

FYI, I'm still getting 2.0.5 from npm.

authors: Panman8201 artsmc drapergeek

repo: froala/ember-froala


text:
Fix analytics component

-Adding events to the Analytics component
-Change Readme.md
-Adding test to the Analytics component
-Removing key from Google Analytics

Pull Request Test Coverage Report for Build 28

3 of 5 (60.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 52.081%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/components/Analytics/Analytics.jsx
3
5
60.0%

Totals

Change from base Build 27:
0.1%

Covered Lines:
296

Relevant Lines:
482

💛  - Coveralls


text:
能否设立一个discussion区，方便大家分享js脚本——代码小白的一点建议

参考文献阅读软件zotero中的一个插件大佬的GitHub中的discussion区：https://github.com/windingwind/zotero-actions-tags/discussions
大佬开发的sy-run-js插件跟zotero-actions-tags或者浏览器油猴脚本很类似，对于我们不会开发插件的小白来说它的功能特别牛，我们只需要用GPT帮忙写几行代码就能解决自己软件使用中的大问题，而不是干等着别人开发插件。个人非常看好这个插件👍👍👍👍👍👍👍❤❤❤❤❤❤
如下图，参考里面别人的脚本示例或者想法，小白也能写一些自己的脚本啦，很受启发

不是很会用 github 的 discussion，姑且开了一个版面，https://github.com/frostime/sy-run-js/discussions。
下个版本更新的时候我把这个链接放到 readme 里面吧。

repo: frostime/sy-run-js


text:
MF-All-2 Check the number of files reflected on the lists is correct - Not working properly for My Documents

Tested on: Android 7 and 6
FrostWire for Android version 1.9.6 (Build 390)
Screen: Library
Test: Check the number of files reflected on the lists is correct
Ref. MF-All-2
Observations:
Reported by @marcelinkaaa
The number of files 'My Documents' scanned does not match with the files that appear on the list. Not even after installing FrostWire from scratch.
To reproduce:

Open FrostWire and go to My Files > My Documents

Check the number of files on the list and see this number does not match with the number on top 'My Documents (number)'

If you select all files then you can see the real number of files showed on the list of 'My Documents'

Sorry, I just opened the issue on 'frostwire' by mistake without previous notice... the issue is reported on https://github.com/frostwire/qa-android/issues/126
Let me know If you want to keep it here too.

repo: frostwire/frostwire


text:
[android] When 3G/4G savings is on, Bittorrent is not stopping automatically when we leave WiFi network.

The BitTorrent connectivity button is not showing the real connection status of BitTorrents on FrostWire.
This is what happen when loosing connectivity:
NO WiFi - NO 3G/4G --> Connection status should be OFF but remains ON

Go to FW Settings and check 'BitTorrent connection status is 'On' and within Torrent Settings the option 'Use 3G/4G for BitTorrent is inactive

Then turn off your device WiFi connection

Go back to FW main menu Settings and see if the BitTorrent connection status is still "On" it should be  Off since '3G/4G for BitTorrent' is inactive and there is no WiFi.

Just performed multiple tests with my phone, Android 5.x lollypop, One Plus 1. It worked absolutely perfect.
It would leave wifi and automatically pause all torrent downloads and when it came back from wifi it would start them again.
I did tests both manually disconnecting from WiFi, and also walking away from my home WiFi network  by walking 2 blocks away from my house, it worked as expected.
I'm guessing this is either a false positive, as it does take a while to go from "Downloading" to "Paused", you will see the speed dropping, and then once there's absolutely no wifi, it switches.
And it's not a false positive, then it's a fragmentation issue on which I suspect different versions of android report the network status intents differently.

Testing this on Android 6 and Android 5 pre-launch 1.7.4 (build 249):
NO WiFi - NO 3G/4G --> Connection status should remains OFF but I can turn it ON

Go to FW Settings and check 'BitTorrent connection status is 'On' and within Torrent Settings the option 'Use 3G/4G for BitTorrent is inactive

Then turn off your device WiFi connection (and I checked Mobile Data is Off)

Go back to FW main menu Settings and see if the BitTorrent connection status is now 'OFF', However, I can turn it ON manually and it will remain like that... It should say to users "Please check internet connection", otherwise FW has an inconsistency saying 'BitTorrent connection is ON', the app is not working according to the real status of the connection.

Please let me know if you want to keep this issue closed so I will close it on qa-repo too but leaving the same comment.

Re-opening here on public repo...
Gubatron comment on qa ticket:
"hmm, this is debatable. Your Bittorrent engine is effectively on, it's just that there's no internet, but everything inside remains working. I'll see what I can do. I guess it makes sense in that case because you told it to only use it on Wifi. Thanks, will try fixing."

so what do you think we should do here guys, I'm happy with both how it is and @muckachina's suggestion.
Bittorrent is working internally, it's just not connected, and once a connection is available it should continue to work as it starts to get packets.
However, I can see that this could confuse some users, "how can bittorrent be on if there's no internet?"
but addressing this I think will lead to greater complexity, you have to know somehow the following when the internet is unavailable:
Bittorrent is on, I'm going to turn it off for the user, but I will turn it back on when the internet gets back on. So this means saving yet another state somewhere in settings, and monitoring more closely connectivity status. Then once the internet is on and bittorrent is on, we should delete that setting/note from the system. Otherwise, if the user purposefully turned off Bittorrent, we're going to be turning it on for her whenever she reconnects to the internet.
Another simpler option is to still show it as "On", but have a note somewhere on the Setting screen that internet is not reachable.
CC: @marcelinkaaa @kad3mlia @alejandroarturom @aldenml

So just checked it on my phone. Bittorrent connection switches to off if there is no 3G/4G or internet. The downloads pause with a connectivity message. Great.
However - when you first install the app 'Bittorrent connection' status is off (although the app still downloads torrents just fine - which I guess is a bug too), than I manually turn it on and than go to torrent settings to make 'Use 3g/4g for Bittorrent' inactive so I only download torrents over wifi. This works but when I disable my wifi the downloads still continue. I can download our promos, as well as music as torrents. They download slow but they do download.
I think we can leave the Bittorrent on, but with a suggested no wifi message underneath.

then*

👍

agree. maybe we need to brainstorm

Maybe we need to brainstorm a set of icon connection status - internet on/off, BitTorrent core on/off, vpn on /off ...
but let's leave that for later - it's more important to make sure FrostWire behaves in accordance to the settings, eg. it does not download from BitTorrent when BitTorrent is off after update..

authors: gubatron kad3mlia marcelinkaaa muckachina


text:
Provide FSharpEntity.EnclosingEntity

In https://github.com/Microsoft/visualfsharp/pull/3803 I do the following:

get an open declaration (which is now available as a property in FSharpFileCheckResults and presented as FSharpEntity [])
check if any of symbols defined in each of the modules / namespaces above is used in the scope this particular open declaration is open

Currently I call FSharpEntity.MembersFunctionsAndValues for each namespace/module and it's the bottleneck - on middle sized files the analyzer takes several seconds to finish, on TypeChecker.fs it takes ~2 minutes, which is too slow.
So I'm trying to use different approach: get enclosing entity of each symbol uses and check if it corresponds to a module/ns from open declarations, which eliminates calling MembersFunctionsAndValues entirely. Unfortunately, only values, functions and members have EnclosingEntity (that is, modules for my purpose). I need this property for FSharpEntity too.
This approach is indeed a lot faster. Ignoring FSharpEntity and checking only vals and functions via EnclosingEntity processes TypeChecker.fs in 4 seconds, smaller files in tens of milliseconds.
I tried to add this here https://github.com/vasily-kirichenko/visualfsharp/commit/39173f6d2844175277e675b5e8f9a4ca804fa342, but I've completely lost.
EnclosingEntity should contain proper value for both F# and IL types and modules and namespaces (None - for root namespaces).
@dsyme could you please suggest a proper way to add this functionality?

Yes, it's not there because of a bit of a flaw in the TAST.  I've put it on my TODO list to try to root this problem out.  We will need it for other reasons too

Thanks a lot!

@auduchinok I managed to improve the performance of unused opens https://github.com/Microsoft/visualfsharp/pull/4497/ without implementing this.  I'd still like to get it implemented though, it would make things simpler and faster

@dsyme I've checked the new unused opens implementation and it's indeed works much faster on an average solution/files, however getting children of something like JetBrains.Util still takes several seconds on a small file and works longer than the file type check. The good news is tweaking unused imports to use the new DeclaredEntity made performance great on this file.
I'm looking into opening a PR with usage of DeclaredEntity, but will try to fix https://github.com/Microsoft/visualfsharp/issues/4658 before.

authors: auduchinok dsyme vasily-kirichenko


text:
fsi should support checking syntax w/o running

It would be handy if we could run fsi with an option to report compiler errors but not run the script.
We would use this in our build environment to check our maintenance scripts which aren't always updated when some related compiled code changes.

@lzybkr You can normally just compile the scripts using fsc script.fsx
The main limitation is that this won't work if the scripts are phased/multi-stage (e.g. using ;; where the side-effects of one phase affects the type checking of the next)

authors: dsyme lzybkr

repo: fsharp/fsharp


text:
Cleanup and Fix Framework restrictions

Intro
Framework restrictions are a feature to handle NuGet dependency groups. That is their primary responsibility. Sadly we leak that implementation detail in the paket.dependency and paket.references files with confusing effects for the user.
Description
There is no user definition on what >= netstandard1.3 or <= net45 means. But both are allowed in all paket files, with a wide range of unexpected effects.
Paket internally uses >= and <= to define special operations which are not easily explained and have nothing to do with "compatible with" (as one might assume).
For example ">= netstandard13" currently means "a NetStandard framework with a higher version than 1.3" and NOT "any target framework compatible with netstandard 1.3", because that would include some net-frameworks, see https://github.com/fsprojects/Paket/blob/654b2393ecbc6cdb35f7f25b30d0746d21ef1f8e/src/Paket.Core/Versioning/Requirements.fs#L502-L535
Possible actions

We need to define >= and <= or mark them invalid
We need to define > and < or mark them invalid
We need to change the implementation to handle the definition accordingly
In that process we might need to cleanup some internal data structures in paket to make this part more understandable.
We need to ensure that we do not strongly couple any definition with the original goal of framework restrictions (of the definitions are slightly different). So we might need different operators in the lock-file or have multiple meanings of >=...

Disclaimer
I really think stuff is working quite well. So any change in this needs to be really carefully reviewed. As we don't have any documentation on >= and <= I don't think breaking stuff there is quite as important. I know that since the early netstandard hacks some people use >= net45 to get rid of netstandard dependencies.

About the last statement: I don't think it matters if we break anything. They probably won't notice because a lot of libraries provide only a netstandard target and then netstandard packages are pulled anyway..
And breaking changes there won't/shouldn't even affect compilation. So I think redefining >= and <= is quite safe.
Here is my suggestion:

We leave the definition of framework restrictions itself untouched (they are for the TARGET framework you are compiling for). Everything else is way more confusing as it is already. You tell paket what you compile for to improve the resolution process. This is an easy definition. If you set = netstandard13 in the deps file and compile for net46 its a user error.
>= in user files means compatible with (> is the same but without the actual given framework). So this defines a set of frameworks. So >= is equivalent to listing all those frameworks.
<= in itself is not defined. It is only an addition to a >= set, to reduce it

<= net45 <- syntax error.
>= netstandard13 <= net45 the set >= netstandard13 without the set of >= net45

Suggestion 2:
Get rid of the >= and <= notations and make them syntax errors. They are much harder to understand than a simple framework list we target.

This is now kind of implemented, we only have ==, >= and <, see #2336

repo: fsprojects/Paket


text:
try to cache proxy

for a couple of users it seems to be very very slow to calc the proxy. see https://gitter.im/fsprojects/Paket discussion with @alexeyzimarev

//cc @vasily-kirichenko could you please take a look?

Looks like an ordinary thread safe memoization. Maybe it is worth to extract memoze into some core module.

the question is more: do you think it's enough to cache proxy per HTTP host?

No idea.

fair enough ;-)

I released this as 2.16.0-alpha001.
ypu can get it with paket.bootstrapper.exe prerelease
@alexeyzimarev, @alistair please check if it improves things
@vasily-kirichenko  could you please verify that we don't break you
thanks everbody.

@dnauck you are also behind proxy, right?

I am at home now and have no proxy. Will be able to check tomorrow if I would reach my machine at work, I will be at another office for three days.

So I have just updated to the latest,  cleaned cache and packages directory and run the following
https://gist.github.com/alistair/65cba5d92556e6f0457c
Time taken has dropped from 7 minutes to 1.

@forki no .. not with my dev machine, cannot test

I tested with 2.16.0 and it works splendidly :+1: 46 seconds instead of seven minutes.

Awesome. Thanks for all the help here.

Tested paket outdated on 2.16.0. Works OK, but I'm not sure it's faster.

It's only faster for a handful of people where the proxy detection was
super slow. Most people (like myself) will not have perf gains. But I was
worried that caching might break things.
On Oct 23, 2015 8:55 AM, "Vasily Kirichenko" notifications@github.com
wrote:

Tested paket outdated on 2.16.0. Works OK, but I'm not sure it's faster.
—
Reply to this email directly or view it on GitHub
https://github.com/fsprojects/Paket/pull/1153#issuecomment-150491935.

authors: alexeyzimarev alistair dnauck forki vasily-kirichenko