Skip to content

Releases: wvanderp/iwf

Time to Snak & Roll

24 Dec 01:42
Compare
Choose a tag to compare

🐍 Time to Snak & Roll! Version 2.3.0 πŸŽ‰

Get ready for a game-changing update with a powerhouse of features and enhancements! This release is packed with versatility, polish, and smarter tools to elevate your projects. Let's dive into what makes this release exceptional:

πŸš€ Features & Enhancements

  • 🐍 Three New Snak Classes!
    • Introducing EntitySchemaSnak, WikibaseLexemeSnak, and WikibaseSenseSnak. These additions supercharge your toolkit for handling complex data with finesse.
  • 🎯 Consistent dataType Constants
    • Improved consistency across all snak classes with sleek, new constants.
  • πŸ§ͺ Enhanced Browser Testing!
    • πŸ“¦ Library builds tested for perfection.
    • πŸ” Upgraded login tests for added robustness.
    • πŸš€ Multi-stage upload tests to validate end-to-end workflows.
  • πŸ›‘οΈ Type Guard Upgrades!
    • Enhanced checks for new snak classes to safeguard your code. πŸ’ͺ

🧹 Refactoring & Polish

  • πŸ”’ Hash Function Overhaul
    • Sleek, new hexadecimal strings replace outdated buffers. Say hello to streamlined data handling!
  • ✨ Snak Class Facelift
    • Refactored JSON outputs for consistent and clean formatting across all classes.
  • πŸ“š Better Documentation
    • Polished FUTURE.md for readability and upgraded DEPLOY.md with clear instructions.

πŸ§ͺ Tests Galore!

  • πŸŽ‰ New Unit Tests
    • Thoroughly tested the new snak classes for reliability.
  • 🌐 Integration Tests
    • Validated EntitySchemaSnak with ID prefixes and Commons integration for smooth functionality.
  • βœ… Full Coverage Confidence
    • Increased test coverage ensures rock-solid performance.

πŸ”„ Workflow Magic

  • πŸ€– GitHub Actions Boost
    • Upgraded codeql-action to version 3 and expanded Node.js compatibility with a broader test matrix.
    • Streamlined workflows for speedier development cycles.
  • 🎯 Codecov Upgrade
    • Now using version 5 with improved reporting. Added CODECOV_TOKEN for seamless integration.

🧩 Miscellaneous

  • πŸ“¦ Dependency Mastery
    • Introduced .npm-upgrade.json for better dependency management and clarity.
  • πŸ”— URL Encoding Fixes
    • Improved origin handling in API utilities for smoother operations.
  • πŸ› οΈ Token Utilities Polished
    • Enhanced for easier integration and testing.

πŸ‘Ύ Fun Bugs (Squashed) πŸ›

  • ⚑ Flaky Tests Disabled
    • Bid farewell to unreliable tests. May they rest in peace. πŸ™ƒ

This release is all about making your development experience smoother, faster, and smarter. Ready to dive in? Let’s snak and roll! πŸš€

This fun change log is brought to you by AI

Where is the time going?

07 Jan 18:47
Compare
Choose a tag to compare

In this release, we fix the TimeSnak. The main reason for this change is that the date was wrongly formatted. This is now fixed.

We introduce a braking change that changes the signature of the TimeSnak.fromDate to use numbers instead of JS dates.

The JS date API is now available as TimeSnak.fromDateObject.
The JS date API works for current dates but is a bit broken for some things, including time zones and dates before 1970.

We also reenabled the upload unit tests.

v2.1.2

31 Dec 12:54
Compare
Choose a tag to compare

Fixed a bug in my other library. now the set-cookies array is accepted as string array or string

v2.1.1

31 Dec 00:49
Compare
Choose a tag to compare

There is a check when you try to use this lib in a browser and update wikidata. This is not possible because wikidata does not accept cors.

When you use a workaround for this error, it still blocks you from achieving your dreams.

So I downgraded the error to a warning and I did not throw it.

v2.1.0

31 Dec 00:31
Compare
Choose a tag to compare

Full Changelog: v2.0.0...v2.1.0

Some highlights:

  • added more tests, including integration test on test.wikidata.org and browser tests
  • added the ability to use different wikidata servers
  • worked on the GitHub ci

Bring your own Axios

It's not possible to directly edit wikidata from the browser. So you would always need to proxy the request through something of a server.

I made this possible by letting you provide your own custom Axios implementation.

I've made https://github.com/wvanderp/axios-over-http to simplified this if you are using node and express on the backend

v2.0.0

21 Sep 21:19
Compare
Choose a tag to compare

In this release, I added the removal of statements. I thought this would work, but it didn't.

  • fixed removing statements
  • added diffing for items
    • to support this, I also added:
    • stable internal ids for some entries
    • updated all equals functions to include property
  • Label, description, alias and sitelink from string function
  • solved all lining errors
  • made isQstring and isPString typescript guards
  • added many tests

known possible issues

There may be issues with deleting other things. More testing is needed to determine this

v1.1.0

26 Jun 09:44
Compare
Choose a tag to compare

this release fixes errors surrounding the quantitySnak and adds new QString and PString for typescript types

Another big change is dropping the support for version 15 of the node.

why QString

The QString is a big part of wikidata because it is used to refer to all items. We wanted to ensure that we always work with a QString in the library. And the best way to do this is to check that at the borders. so we started doing that by setting these types

all the changes

here are the changes in alphabetical order:

  • committed .vscode to make spellcheck portable
  • upgrade codeql-action to V2
  • dropped node 15 from support
  • ignored ts-node 10.8.1 because there is a bug around the code coverage
  • updated dependencies
  • updated jsdoc blocks
  • added the QString and PString type and type guards
  • use QString and PString internally
  • the parameters of QuantitySnak are optional, so the output should also be optional
  • added the ability to create QuantitySnak from numbers
  • added lining to the test files
  • added to the test coverage

v1.0.2

14 Jun 19:36
Compare
Choose a tag to compare

this is a maintenance release. the main part of this release is dependency updates and fixing of lint errors

v1.0.1

19 Jan 16:11
Compare
Choose a tag to compare

the big change in this release is the addition of findLabel on item. you can use it to easily find a label of an item.

  • updated dependencies
  • add findLabel to item
  • updated axios and others
  • add examples to the documentation

v1.0.0

04 Jan 14:30
Compare
Choose a tag to compare

πŸŽ‰πŸŽ‰πŸŽ‰ initial release πŸŽ‰πŸŽ‰πŸŽ‰