- 🐛 Fixes error that occured when subject doesn't have time info. Fixes issue #11
- 🐛 Fix issue where some compounded days format (eg:
TWTH
) could not be parse. See #8, #10 - ✏️ Update some classes documentation
- ⬆️ Upgrade package http to
1.1.0
(upgrade major version, might be breaking changes)
- ⬆️ Upgrade to Dart 3
- ✨ The
.fetch()
method now returns a records of list of Subjects & total pages available. #6 - 🐛 Added new case for rare day parsing. #1
- 🐛 Fixed another bug related to parsing subject day & time. Refer #1 (Comment)
- 🐛 Fixed issue where albiruni cannot parse some day format. Refer #1 (Comment)
- ⬆️ Bump intl to
^0.18.0
- 📝 Add some dartdoc
- 🐛 Fixed the parser to parse days like
MTWTHF
andMTWTH
. Refer #1. - ✅ Add more tests
- ✨ Added support for fetching postgraduate studies. Just set the
studyGrade
parameter inAlbiruni
toStudyGrade.pg
.
- 🔧 Hide internal classes. eg:
TempDayTime
- ✅ Add test files
- 🚚 Migrate proxy server to another provider. This is due to Heroku is planned to end its free plan that were use to host the cors-anywhere proxy instance.
- 📝 Changed to MIT license
- ☕ Added funding
- 📝 Update README to provide a clearer documentation.
- 🐛 Fix
sesShort
formatting that wrongly return semester value.
- ✏️ Rename Albiruni parameter
semShort
tosesShort
.
- 💥 BREAKING CHANGES -
.read
(on DayTime) and.data
(on Subject) getter is removed. Added.toString()
overrides on both. - Added
.toJson()
and.fromJson()
on both Subject and DayTime class.
- 💥 BREAKING CHANGES - Kuliyyah parameter now is seperated from the albiruni constructor.
- Before:
var albiruni = Albiruni(kulliyah: "AED", semester: 2, session: "2021/2022"); var subjects = await albiruni.fetch();
- After:
var albiruni = Albiruni(semester: 2, session: "2021/2022"); var subjects = await albiruni.fetch("AED");
- 🙈 When fetching subject, you now can set
useProxy
totrue
. This will proxy the connection from albiruni origin site. Useful when dealing with CORS error in web application. - 🚸 Exposes
DayTime
class. - ✨ Introduce String extension method
toAlbiruniFormat()
. Useful to properly format a user input. Eg: It will convertnurc2411
toNURC 2411
. - 🥅 Added
Exception
typeEmptyBodyException
. Usually happen when subject is not offered for the kuliyyah/session semester. Eg: You search forMECH 2344
in Semester 3, but course is only available in long semester. Therefore, error is thrown.NoSubjectsException
. Usually happens whenpage
is over it total pages.
- ✨ For
Subject
object:- Added
.semShort
value. A short version of year session. Eg:2021/2022
will be21/22
. .dayTime
now will be return a sorted session according to its day. Ie: Monday should come first and so on.
- Added
- 📝 Update docs.
- 🎉 Initial release.