Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[STICKY] Changelog of 3.0 #541

Closed
panique opened this issue Dec 29, 2014 · 4 comments
Closed

[STICKY] Changelog of 3.0 #541

panique opened this issue Dec 29, 2014 · 4 comments

Comments

@panique
Copy link
Owner

panique commented Dec 29, 2014

Maybe not a perfect idea to put this in here as an ticket, but anyway. You can find all this in the develop-branch, but please note that this is just hardcore in-development stuff that might be broken.

Changelog of 3.0 (compared to 2.0)

Important: The new version is 3.0, not 2.1! The reasons are:

  • changes are massive, most lines of code have been touched
  • totally new architecture
  • look is different
  • new name

In consequence it's definitly a new major version :)

CHANGE LOG

3.0

January 2015

  • [panique] added static Text class (gets the messages etc)
  • [panique] added static Environment class (get the environment)
  • [panique] added static Config class (gets config easily and according to environment)
  • [panique] new styling of the entire project: login/index has new look now
  • [panique] massive refactoring of all model classes: lots of methods have been organized into other model classes
  • [panique] massive refactoring of all model classes: all methods are static now
  • [panique] EXPERIMENTAL: added static database call / DatabaseFactory, rebuild NoteModel with static methods
  • [panique] massive refactoring of mail sending, (chose between PHPMailer, SwiftMailer, native / SMTP or no SMTP)

December 2014

  • [panique] lots of refactorings
  • [panique] refactored LoginModel'S login() method / LoginController's login() method
  • [panique] removed COOKIE_DOMAIN (cookie is now valid on the domain/IP it has been created on)
  • [panique] Abstracting super-globals like $_POST['x'] into Request::post('x')
  • [panique] entirely removed all the Facebook stuff [will be replaced by new proper Oauth2 solution soon]
  • [panique] lots of code refactorings and cleaning, deletions of duplicate code
  • [panique] moving nearly all hardcoded values to config
  • [panique] new View handling: you'll have to pass vars to the view renderer now
  • [panique] completely removed Facebook login process from controller (incomplete) [will be replaced by new solution]
  • [panique] less config, URL/IP is auto-detected now
  • [panique] added loadConfig() to load a specific config according to environment setting (fallback: development)
  • [panique] added getEnvironment() to fetch (potential) environment setting
  • [panique] replaced native super-globals access by wrapper access (Session:get instead of $_SESSION)
  • [panique] complete frontend rebuilding (incomplete yet)
  • [panique] massive cleaning of all controllers
  • [panique] added Session::add() to allow stacking of elements (useful for collecting feedback, errors etc)
  • [panique] complete rebuild of model handling
  • [panique] View can now render(), renderWithoutHeaderFooter() and renderJSON
  • [panique] using Composer's PSR-4 autoloader (in a very basic way currently)
  • [panique] DB construction needs now port by default
  • [panique] removed (semi-optional) hashing cost factor (as it's redundant usually)
  • [panique] email max limit increased to 254/255 (official number)
  • [panique] simpler and improved core
  • [panique] improved architecture, controllers are now named like "IndexController"
  • [panique] moved index.php to /public folder, new .htaccess, new installation guideline
  • [panique] MVC naming fixes
  • [nerdalertdk] betters paths, automatic paths
  • [panique] removed legacy PHP stuff: 5.5.x is now the minimum
  • PR [Malkleth] allow users to request password reset by inputting email as well as user names
  • PR [pein0119] cookie runtime calculation fix
@panique panique changed the title CHANGELOG OF 2.1 [STICKY] CHANGELOG OF 2.1 Jan 2, 2015
@panique panique changed the title [STICKY] CHANGELOG OF 2.1 [STICKY] CHANGELOG OF 3.0 Jan 25, 2015
@panique panique added the v3.0 label Jan 25, 2015
@panique panique changed the title [STICKY] CHANGELOG OF 3.0 [STICKY] Changelog of 3.0 Jan 25, 2015
@Raoul9
Copy link

Raoul9 commented Feb 1, 2015

Hi @panique

Thanks for the hard work. Do you have an ETA or plan on the Oauth2 stuff? I am not sure about others -- But the Facebook login stuff was a huge draw card for me on php-login 2, and really that was the major broken feature of version 2 (if you ignore improvements to code quality etc. in version 3). In my opinion it should be a priority to fix/update before major release. I was disappointed to see it removed and not updated/fixed for version 3, though I do understand time constraints!

Keep up the good work.

EDIT: I should also ask, I notice you said you are thinking about making future versions built with Slim, is this version easily added to Slim if someone chooses? Reason I ask is that I'd like to keep routing as streamlined as possible and I am pretty used to and comfortable to the way Slim handles it! :) I might do some testing over the next few days if I get the chance :)

@panique
Copy link
Owner Author

panique commented Feb 1, 2015

@Raoul9 Thanks too! The 2.x Facebook integration was via the Facebook PHP SDK, the new one will be with OAuth2, which is quite different. OAuth is the correct way to go these days, and I don't want to deliver a broken or messy thing :)

No time-plan yet, maybe in mid of 2015 ? If somebody else could do this is would be cool too.

Regarding Slim: Not sure yet! My experience with slim is quite low so i cannot say anything here. Maybe Laravel or symfony is even a better choice... hmmm...

@Raoul9
Copy link

Raoul9 commented Feb 1, 2015

Thanks for the update!

I am not sure we need to reinvent the wheel on OAuth2 -- There seems to be heaps of people using and and the bulk of work is handled by quite a few projects. One I've been keeping an eye on is: https://github.com/hybridauth/hybridauth seems quite nice and is well maintained and updated. Also appears quite simple to use. I might see if I can slap something together.

RE: The framework, Laravel might be worth considering. Personally I prefer the micro frameworks as I don't use everything the big ones offer, though I do know that they're very popular. My vote will be for Slim :)

@panique
Copy link
Owner Author

panique commented Feb 1, 2015

@Raoul9 this project does not want to create another version of OAuth2, it just wants to implement it for easy out-of-the-box usage! There is an official Oauth2 package and this will just be used (it's the most simple and most "correct" way to do this afaik).

@panique panique closed this as completed Jul 9, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants