Open Rich2k opened 10 years ago
This "dup" was the first reference of adLdap on github, and is used by many people. To avoid making all existing dev based on it, many things need to be done on the original (yours).
Even, if all modification won't be integrated, some must be.
The current packagist package is here : https://packagist.org/packages/adldap/adldap Forks : https://github.com/ztec/adLDAP/network
You should add an upstream and contribute to the original library rather than split the code base into two incompatible libraries
yes, I know. I will make pull request. But this "copy" will be removed when both original and copy will be compatible.
I didn't make many modification. Only modification required for psr-2 based code.
@Rich2k I hadn't realised that adLdap was on Github. Thanks for doing so. I assume the old bug tracker http://sourceforge.net/apps/trac/adldap/ is not to be used any more -- would it be possible to put a note on that site somehow? I had it bookmarked and hadn't been to the main adldap.sf.net site for a while, and was rather thinking that development had ground to a halt. :-( Glad that it hasn't!
Oh, and have you added it to https://packagist.org/ ? Because I can't find it there... :(
At a minimum, it would probably make sense to change the name in your composer file to something other than "adldap/adldap". Perhaps "ztec/adldap"? Case in point: I originally had a custom repository entry defined in my composer.json with the name defined as "adldap/adldap" and pointed to the .zip file to the official library on SourceForce. When you added your project to packagist it pulled in your fork instead of the zip file (since it has the name you would expect of the official library, adldap/adldap). It was pretty confusing to figure out what broke when that happened.
Unfortunately the name change will break things for people with your fork defined in their composer.json file, but it's something that should really be done.
I think the only thing that will break will be the use of the namespace in this fork. At least, that's all I've had to change so far in switching back to the proper repo.
Yeah, that's what I meant. If the names get swapped (this repo uses a name like ztec/adldap) and Rich's repo takes over as the new adldap/adldap on packagist, then someone doing php composer.phar update
would immediately have issues until they account for the namespace difference (assuming namespacing doesn't make it upstream in time).
However, more problematic is that you cannot actually delete or rename your package once it's entered into packagist: https://github.com/composer/packagist/issues/115 At least not without contacting the maintainer of the site and asking them to delete it.
The name adldap/adldap will be released for the "real" official adldap repository. But only when some steps will be done
I will make the work & PR this week end.
I forgot :
I just saw that a minute ago Good job. you are fast ;-)
I'm glad to hear the Packagist name will be united with the correct repository. Thanks @ztec.
In order to have a clean reference and don't rely on the dev-master version, a tag need to be pushed on the official Repo'. Once it's done, package on packagist will be redirected.
Until then, can one of you add a release on Packagist for 4.0.4? I'm trying to switch my project to Packagist for this dependency, but I need the updates in 4.0.3 and 4.0.4.
Nevermind. This fork doesn't have the one change I need (ldapSlashes.) argh,
Yea this library either needs to be removed, or united with official library (with the official library taking precedence). This package is severely out of date and contains some extremely limiting bugs that were fixed years ago!
For example on line Line 328 in adLdap/adLdap.php.
Released updated fork on packagist:
"stevebauman/adldap-fork": "4.0.*"
This fork will be consistently updated to the main repo.
FYI, this issue has been raised in a Stack Overflow question.
Guys, will it be solved? I read this discussion but I still see that adldap/adldap
on Packagist points to this "fork", not to @Rich2k's repo (or "master" repo), so there is only v4.0.2
version available. Like @halfer said, there is Stackoverflow thread on this issue and it would be great to clean up this mess...
And there is v5 in different organization/repo..
@Wirone, this won't be cleaned up. Both @ztec and @Rich2k have been inactive for close to a year, and @Rich2k has also left the Adldap organization he's created.
I'd suggest using Aldap2 https://github.com/adldap2/adldap2, or @ChadSikorra's LDAP Tools https://github.com/ldaptools/ldaptools
@stevebauman but v4.0.4
does not have composer.json
and can't be installed while v4.0.5
has namespaces and requires additional changes in our project. I just wanted to clean up our project and move some libraries to Composer's vendors. Lack of composer.json
for v4.0.4
relates to all repos (https://github.com/adldap/adldap, https://github.com/Rich2k/adLDAP). How to install exactly v4.0.4?
adldap2 has been sync'd into adldap main repo and @stevebauman I've invited you to the team. composer.json is now active in master and packageist should be pointing adldap/adldap to https://github.com/adldap/adLDAP.git
I never left the org
@Rich2k @stevebauman I ended up with own fixed fork which installs correctly via Composer.
Note: tags can be removed from Github so the best solution would be to add composer.json
to the code to adldap/adldap@v4.0.4
and update tag in main repo, so that version could be used without side repos and without bumping version.
This fork should not be used anymore. I should ad a big "DEPRECATED" warning in the README.
I created this fork when needed, now it's not needed as the official maintainer handle it in github. If this is not the case anymore, maybe we can decide for a new fork, or have multiple maintainer in the adldap organisation ? (If the author allow it)
@Rich2k Well if it isn't the man himself! Thanks for the invite, as well as the Adldap2 merge!
Also, unless you've changed your visibility in the organization, you can see from the google web cache that there was indeed no one listed inside the Adldap organization:
Even still, if people visibly see no one in an organization, they're going to assume a dead package (hence the massive amount of forks).
Does this PR help ? #10
@ztec, I could swear I saw adldap/adldap
on Packagist was pointing here (as I wrote 1 hour ago) and now I see it's properly pointing to main repo... How's that possible?
@Wirone you're not wrong, it was pointing to this repo, it was changed a moment ago to the proper repository.
@stevebauman Good, I thought I was crazy ;-)
Anyway, v4.0.4
in adldap/adldap
still does not have composer.json
and can't be installed properly.
When i created this repository, packagist created some versions. When @Rich2k asked @Seldaek to gain ownership of the project, it pointed to the new repository (the one of @Rich2k ) BUT, all previous version were still there ! With references to this repository.
I think @Rich2k removed some stuff in Packagist, or maybe it's the new version that behave differently.
Even the cache google display some version few days ago :-) http://webcache.googleusercontent.com/search?q=cache%3Ahttps%3A%2F%2Fpackagist.org%2Fpackages%2Fadldap%2Fadldap&oq=cache%3Ahttps%3A%2F%2Fpackagist.org%2Fpackages%2Fadldap%2Fadldap&aqs=chrome..69i57j69i58.985j0j4&sourceid=chrome&es_sm=122&ie=UTF-8
@ztec Yea I don't really agree with the way @Rich2k synced the Adldap2 repo. Not only did it remove the existing v4.0.2
version from packagist, but it also removed all Adldap2 contribution history from the community (@wunc, @strebl, @samwilson) and I. The Adldap2 repo should have been merged into a separate branch, with the commit history.
@stevebauman feel free to git rebase the last merge and pull the entire history across if you have the time
Hey folks I haven't read everything and I don't have time to right now but in case you come to an agreement and need me to do something packagist-wise please mention me and explain clearly :)
I would suggest using the adldap/adldap repo as the main for this project, as long as there is someone (or more than one) who can actively maintain and manage PRs.
I'm not a git guru, but it seems like the something like the following needs to happen in adldap/adldap:
I agree with @wunc We should have some version (v4.0.4 for example) in packagist. A branch/tag to a commit that contain the composer.json and the version that is goo should be enough. @Rich2k If you make all version required appeared in the official repository, then i will remove this one.
@all, what are the version we need to see in the official adldap repository ? (for my part, v4.0-stable or anythings close enough. I will update package that depend on it https://packagist.org/packages/ztec/security-active_directory)
@ztec we've been using copypasted adLDAP v4.0.4 in one of crucial projects and now, when I want change it to Composer, from our point of view tag v4.0.4
with proper composer.json
is required.
For now, as I said, we're using fixed fork, but I think it should be done in main repo.
https://github.com/adldap/adLDAP has the tag for 4.0.4, pretty sure if you just make this available via packagist then you'll have a bunch of consumers satisfied. Especially those of us that using them for enterprise apps. I know it will keep my boss of my back...
Apologies for the long response here.
@wunc I completely agree with this, and this is definitely the path that should be taken. However my only hesitation with using the actual Adldap repository right now, is that I don't have Administrator privileges. This means that if @Rich2k disappears for another while, I cannot add or manage contributors in the future, and I'm the sole developer who has to manage PR's and Issues, not to mention continue Adldap v5 development. I also don't have permission to manage Adldap through packagist, so unfortunately I'm hesitant to drop everything and run to the original repository.
@stevebauman I totally understand that. I think you should get administrator privileges...
Please fork and pull request to https://github.com/Rich2k/adLDAP not releasing a separate library