Upcoming changes to Clojars

2019-12-23 Thread Toby Crawley
Howdy folks! We're in the process of making some changes to the
Clojars infrastructure to make it more robust, reliable, and easier to
maintain. One of those changes will be to provide a single canonical
repository instead of serving artifacts from two locations.


## A Tale of Two Repositories

You can currently access the Clojars repository in two ways:

- via the "on-disk" repository at https://clojars.org/repo/
- via the "cdn-fronted" repository at https://repo.clojars.org/

The artifacts for these two repositories are stored in different
places. The on-disk repository serves from the disk of the clojars.org
server. The cdn-fronted repository serves from a Rackspace Cloudfiles
repository. When a deploy occurs, it is first written to disk, then
uploaded to Cloudfiles. The intent was for the repositoriesitories to
be identical, but that hasn't always been the case - we would
occasionally fail to upload artifacts to the Cloudfiles repository,
leaving the two repositories out of sync. We've done recent work[1] to
mitigate that, but would like to move to having a single,
Cloudfiles/blobstore-based repository.


## The proposed changes

In order to have a single repository, we plan to make the following
changes:

- Any GET requests to the on-disk repository at
  https://clojars.org/repo/ will be redirected to the
  cdn-fronted repository at https://repo.clojars.org/
- Deploys will no longer write to the on-disk repository, just to the
  cdn-fronted one


## Timeline

We would like to make these changes within the next few weeks, but may
delay that based on your feedback (see below).


## How this will affect you

If you are using a modern version of lein (2.8.0 or newer), boot
(2.7.0 or newer), or tools.deps.alpha (0.5.425 or newer), you are
already using the cdn-fronted repository, and should see no issues
with dependency resolution or deployment.

The cdn-fronted repository uses some TLS features that aren't
supported by older java versions by default. If you are using an older
version of Java (pre-Java 8), you may be using older build tools or
have configured newer versions of the tools to point to the on-disk
repository to avoid this. With this change, you may no longer be able
to resolve dependencies. If this affects you, we would love to hear
about it!  Please comment on the issue where this change is being
discussed[2].

Once we remove the on-disk repository, rsync'ing a copy of the
repository will no longer be a supported feature. Based on our rsync
logs, it looks like we've had ~100k rsync connections over the last
month from ~100 ip addresses. But the bulk of those requests were over
a few scattered days where a single ip would connect every 2-5
*seconds*. If you are using the rsync feature to maintain a copy of
the repository, please comment on the issue where this change is being
discussed[3] to let us know your use case and we'll see if we can come
up with an alternate solution.

[1]: https://groups.google.com/forum/#!topic/clojars-maintainers/FXcV6O-FjiA
[2]: https://github.com/clojars/clojars-web/issues/734
[3]: https://github.com/clojars/clojars-web/issues/735

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/clojure/CAA3HuyZtb1jOmNgYA%2BcLpvcxk-Yce74G4KRGKctbA6xuc-x19w%40mail.gmail.com.


Re: Upcoming changes to Clojars

2019-12-23 Thread Sean Corfield
Will the upload URL or process be changing?

On Mon, Dec 23, 2019 at 9:51 AM Toby Crawley  wrote:

> Howdy folks! We're in the process of making some changes to the
> Clojars infrastructure to make it more robust, reliable, and easier to
> maintain. One of those changes will be to provide a single canonical
> repository instead of serving artifacts from two locations.
>
>
> ## A Tale of Two Repositories
>
> You can currently access the Clojars repository in two ways:
>
> - via the "on-disk" repository at https://clojars.org/repo/
> - via the "cdn-fronted" repository at https://repo.clojars.org/
>
> The artifacts for these two repositories are stored in different
> places. The on-disk repository serves from the disk of the clojars.org
> server. The cdn-fronted repository serves from a Rackspace Cloudfiles
> repository. When a deploy occurs, it is first written to disk, then
> uploaded to Cloudfiles. The intent was for the repositoriesitories to
> be identical, but that hasn't always been the case - we would
> occasionally fail to upload artifacts to the Cloudfiles repository,
> leaving the two repositories out of sync. We've done recent work[1] to
> mitigate that, but would like to move to having a single,
> Cloudfiles/blobstore-based repository.
>
>
> ## The proposed changes
>
> In order to have a single repository, we plan to make the following
> changes:
>
> - Any GET requests to the on-disk repository at
>   https://clojars.org/repo/ will be redirected to the
>   cdn-fronted repository at https://repo.clojars.org/
> - Deploys will no longer write to the on-disk repository, just to the
>   cdn-fronted one
>
>
> ## Timeline
>
> We would like to make these changes within the next few weeks, but may
> delay that based on your feedback (see below).
>
>
> ## How this will affect you
>
> If you are using a modern version of lein (2.8.0 or newer), boot
> (2.7.0 or newer), or tools.deps.alpha (0.5.425 or newer), you are
> already using the cdn-fronted repository, and should see no issues
> with dependency resolution or deployment.
>
> The cdn-fronted repository uses some TLS features that aren't
> supported by older java versions by default. If you are using an older
> version of Java (pre-Java 8), you may be using older build tools or
> have configured newer versions of the tools to point to the on-disk
> repository to avoid this. With this change, you may no longer be able
> to resolve dependencies. If this affects you, we would love to hear
> about it!  Please comment on the issue where this change is being
> discussed[2].
>
> Once we remove the on-disk repository, rsync'ing a copy of the
> repository will no longer be a supported feature. Based on our rsync
> logs, it looks like we've had ~100k rsync connections over the last
> month from ~100 ip addresses. But the bulk of those requests were over
> a few scattered days where a single ip would connect every 2-5
> *seconds*. If you are using the rsync feature to maintain a copy of
> the repository, please comment on the issue where this change is being
> discussed[3] to let us know your use case and we'll see if we can come
> up with an alternate solution.
>
> [1]:
> https://groups.google.com/forum/#!topic/clojars-maintainers/FXcV6O-FjiA
> [2]: https://github.com/clojars/clojars-web/issues/734
> [3]: https://github.com/clojars/clojars-web/issues/735
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/clojure/CAA3HuyZtb1jOmNgYA%2BcLpvcxk-Yce74G4KRGKctbA6xuc-x19w%40mail.gmail.com
> .
>


-- 
Sean A Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
World Singles Networks, LLC. -- https://worldsinglesnetworks.com/

"Perfection is the enemy of the good."
-- Gustave Flaubert, French realist novelist (1821-1880)

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails fro

Re: Upcoming changes to Clojars

2019-12-23 Thread Toby Crawley
Thanks for asking Sean. The upload URL and process will *not* be
changing. This change should have no impact for 99% of Clojars users.

- Toby

On Mon, Dec 23, 2019 at 4:43 PM Sean Corfield  wrote:
>
> Will the upload URL or process be changing?
>
> On Mon, Dec 23, 2019 at 9:51 AM Toby Crawley  wrote:
>>
>> Howdy folks! We're in the process of making some changes to the
>> Clojars infrastructure to make it more robust, reliable, and easier to
>> maintain. One of those changes will be to provide a single canonical
>> repository instead of serving artifacts from two locations.
>>
>>
>> ## A Tale of Two Repositories
>>
>> You can currently access the Clojars repository in two ways:
>>
>> - via the "on-disk" repository at https://clojars.org/repo/
>> - via the "cdn-fronted" repository at https://repo.clojars.org/
>>
>> The artifacts for these two repositories are stored in different
>> places. The on-disk repository serves from the disk of the clojars.org
>> server. The cdn-fronted repository serves from a Rackspace Cloudfiles
>> repository. When a deploy occurs, it is first written to disk, then
>> uploaded to Cloudfiles. The intent was for the repositoriesitories to
>> be identical, but that hasn't always been the case - we would
>> occasionally fail to upload artifacts to the Cloudfiles repository,
>> leaving the two repositories out of sync. We've done recent work[1] to
>> mitigate that, but would like to move to having a single,
>> Cloudfiles/blobstore-based repository.
>>
>>
>> ## The proposed changes
>>
>> In order to have a single repository, we plan to make the following
>> changes:
>>
>> - Any GET requests to the on-disk repository at
>>   https://clojars.org/repo/ will be redirected to the
>>   cdn-fronted repository at https://repo.clojars.org/
>> - Deploys will no longer write to the on-disk repository, just to the
>>   cdn-fronted one
>>
>>
>> ## Timeline
>>
>> We would like to make these changes within the next few weeks, but may
>> delay that based on your feedback (see below).
>>
>>
>> ## How this will affect you
>>
>> If you are using a modern version of lein (2.8.0 or newer), boot
>> (2.7.0 or newer), or tools.deps.alpha (0.5.425 or newer), you are
>> already using the cdn-fronted repository, and should see no issues
>> with dependency resolution or deployment.
>>
>> The cdn-fronted repository uses some TLS features that aren't
>> supported by older java versions by default. If you are using an older
>> version of Java (pre-Java 8), you may be using older build tools or
>> have configured newer versions of the tools to point to the on-disk
>> repository to avoid this. With this change, you may no longer be able
>> to resolve dependencies. If this affects you, we would love to hear
>> about it!  Please comment on the issue where this change is being
>> discussed[2].
>>
>> Once we remove the on-disk repository, rsync'ing a copy of the
>> repository will no longer be a supported feature. Based on our rsync
>> logs, it looks like we've had ~100k rsync connections over the last
>> month from ~100 ip addresses. But the bulk of those requests were over
>> a few scattered days where a single ip would connect every 2-5
>> *seconds*. If you are using the rsync feature to maintain a copy of
>> the repository, please comment on the issue where this change is being
>> discussed[3] to let us know your use case and we'll see if we can come
>> up with an alternate solution.
>>
>> [1]: https://groups.google.com/forum/#!topic/clojars-maintainers/FXcV6O-FjiA
>> [2]: https://github.com/clojars/clojars-web/issues/734
>> [3]: https://github.com/clojars/clojars-web/issues/735
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com
>> Note that posts from new members are moderated - please be patient with your 
>> first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/clojure/CAA3HuyZtb1jOmNgYA%2BcLpvcxk-Yce74G4KRGKctbA6xuc-x19w%40mail.gmail.com.
>
>
>
> --
> Sean A Corfield -- (904) 302-SEAN
> An Architect's View -- http://corfield.org/
> World Singles Networks, LLC. -- https://worldsinglesnetworks.com/
>
> "Perfection is the enemy of the good."
> -- Gustave Flaubert, French realist novelist (1821-1880)
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
>